On Sat, Jun 9, 2012 at 10:40 AM, Richard Henderson <r...@twiddle.net> wrote:

> Nope.  I do see the obvious mistake in the atomic_load pattern though:
> The mode iterator should have been INT1 not INT.

Did you want to commit the fix for the iterator?

> ... and for extra credit we ought to implement DImode atomic load/store
> via the FPU, like we do for i386.

Yes, however the PPC embedded community used to complain about FP
loads and stores generated by the movdi pattern in 32 bit mode. "Why
is this function using FPRs when it does not contain any floating
point operations?". This is for a processor with an FPU, but the
developer does not want extraneous FPR usage that will force a lazy FP
save in the kernel. In other words, one can use FPRs if the function
already explicitly uses FP operations in user code, but the compiler
should not introduce it. This seems to require scanning each function
for floating point usage before allowing FPRs for DImode load/store
operations.

I like your suggestion, but the PowerPC developer community does not
uniformly appreciate that behavior.

Thanks, David

Reply via email to