This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: [PATCH][ARC] Refurbish and extend builtin function support for ARC


> 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]);
> ...
>      }
> }

Done. Please see the updated attached patch.

> 
> 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 .

I will drop an email to gcc mailing list. Maybe we can gather more steam behind this idea.

I will push the revised patch in a few days if I get no complains.

Thanks,
Claudiu 

Attachment: 0001-ARC-Add-and-refurbish-the-builtins-related-functions.patch
Description: 0001-ARC-Add-and-refurbish-the-builtins-related-functions.patch


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]