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] Update MIPS DSP madd, maddu, msub, msubu, mult, multu


"Fu, Chao-Ying" <fu@mips.com> writes:
>   Here is the GCC patch to move madd/maddu/msubu/msub/mult/multu from MIPS DSP r2 to DSP r1.
> Note that the Binutils patch has been committed to FSF binutils mainline.
> http://sourceware.org/ml/binutils/2010-10/msg00331.html
> http://sourceware.org/ml/binutils/2010-10/msg00424.html
>[...]
>   Any feedback?

Looks good.  My main concern is that the patch as-is introduces
a dependency on bleeding-edge binutils.  That's not such a problem
for cases where the user has explicitly called a __builtin_*() function
in rev1 code, because that simply didn't work before.  But it is a problem
for cases where the compiler is automatically using these instructions.
You'll get assembler errors when compiling ordinary C code, which never
looks good.

I think we need to add a configure-time check to see whether the
assembler has your patch.  There are quite a few existing examples
of this.  Then we should introduce a new macro such as:

    ISA_HAS_DSP_MULT

This macro can be defined to ISA_HAS_DSP if the assembler has your fix
and ISA_HAS_DSPR2 otherwise.

Richard


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