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: ppc64 floating point usage [was Re: PPC64 Compiler bug !!]



<snip>

> > 
> > Perhaps a similar route could be followed (I.E: -mfpu=none) to
> > support developers that need the "never, ever, for any reason"
> > touch the fp registers.
> 
> Ummm, you already have that, it is spelled -msoft-float.  I don't understand
> what a separate switch buys you.
>
 
<snip>

> Note, at least a few years ago, getting USER space code to use floating 
point
> registers to speed up structure moves (since using the FP registers is the 
only
> way to move 64 bits at a time in a 32 bit environment) was a big deal.  I am
> worried that if we change the compiler, we may be be slowing down these
> programs.
> 

I posted my patch on this issue because I need a solution for a 32-bit 
environment.  I can turn off FP reg use completely with the -msoft-float, or 
I can leave it on, including the default move 64bit ints through the FP 
regs.  

I want to be able to say: "Don't turn off the FPU (because it might be there, 
and if it isn't our emulator will be), but please use all of the GP regs 
first for integer operations". 

Having it optional would not slow down the programs for whom this feature was 
added, as the default behavior would remain the same.  But the behavior that 
was eliminated is sometimes exactly what I want.

To that end I like Alan Modra's patch, with the exception that I would like 
to be able to use this behavior in a 32bit environment based on a command 
line option.  It might make sense to make it optional for 64-bit platforms, 
too, if it turns out that the patch causes gcc to also prefer GP regs when 
doing FP operations (as was cautioned earlier in the thread).

Regards,
GP

> -- 
> Michael Meissner
> email: gnu@the-meissners.org
> http://www.the-meissners.org
> 



-- 




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