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: [RS6000] Fix PR52107, TFmode constant load.


On Sat, Feb 4, 2012 at 12:46 AM, Alan Modra <amodra@gmail.com> wrote:
> http://gcc.gnu.org/ml/gcc-patches/2007-01/msg01835.html changed the
> code I'm tweaking here to use DFmode subregs when loading a TFmode
> constant into regs for e500. ?This just extends that change to all
> rs6000 targets, the simplest fix I found for PR52107, a problem I
> discovered when looking at powerpc64-linux libgcc.

> It would also be possible to fix this in the rs6000.md movdi splitter
> dealing with large constants, at least for this testcase when we know
> we are dealing with a hard float reg. ?However, I think it's better
> not to generate DImode fp values in the first place. ?Bootstrapped and
> regression tested powerpc64-linux. ?OK to apply everywhere?

> ? ? ? ?PR target/52107
> ? ? ? ?* config/rs6000/rs6000.c (rs6000_emit_move): Don't create DImode
> ? ? ? ?subregs of TFmode.

This fix is okay in trunk and 4.6.  I am more reluctant to approve
backporting it to GCC 4.5 at this late date.

Thanks, David


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