On 17/12/15 09:31, Claudiu Zissulescu wrote:
Please find a new patch that refurbishes and extends the builtin function 
support for ARC. I also added a number of builtins for ARCv2 architecture, and 
a number of tests.

Ok to commit?

gcc/
2015-12-14  Claudiu Zissulescu  <claz...@synopsys.com>
...

(VUNSPEC_DEXCL_NORES, VUNSPEC_LR_HIGH): Remove
Typo: missing a period.
Otherwise, this is OK.

Although, I think the regular builtin part of arc_expand_builtin could be
simpler if you increased the size op xop by one, and put target into xop[0].

This would then lend itself to further simplification if we had something
to common these switches on the number of arguments to pass to GEN_FCN
strewn over various parts and ports of gcc.
Like:

rtx_insn *
apply_GEN_FCN (enum insn_code icode, rtx *arg)
{
  switch (insn_data[icode].n_generator_args)
    {
    case 0:
      return GEN_FCN (icode) ();
    case 1:
      return GEN_FCN (icode) (arg[0]);
...
    }
}

This could be generated by one of the generator programs so that the switch has as many cases
as required to cover the full range of insn_data[icode].n_generator_args .

Reply via email to