Subject: Re: I want to rid ugly float load/stores used only for data
To: David Edelsohn <dje@watson.ibm.com>
From: Richard Earnshaw <rearnsha@arm.com>
List: tech-toolchain
Date: 02/24/2003 11:24:30
> MLR> What I want to do is modify gcc to stop generating code like that, but
> MLR> not shut down generating float instructions entirely, as in
> MLR> "soft_float".
> Your intent cannot be implemented safely in GCC. If GCC knows it
> has FPRs and FPRs hold 64-bit values (which they must), it will use them
> for 64-bit moves. Cannot be avoided safely.
It ought to be possible to severely discourage use of fp registers for non
fp objects by arranging for MEMORY_MOVE_COST to return a large value when
given an FP register class and a non-FP mode.
This won't eliminate the use of such registers but it should cut it down
significantly if the compiler respects this correctly.
R.