On 12/23/10 09:02, Dmitry Melnik wrote:
Hi,
We've found that constant splitting on ARM can be very inefficient, if
it's done inside a loop.
For example, the expression
a = a & 0xff00ff00;
will be translated into the following code (on ARM, only 8-bit values
shifted by an even number can b
> 2) Is there any reason we shouldn't prevent GCSE from propagating
> constants that we know will be split?
IIUC this will increase register pressure. i.e. it will probably be a win for
simple loops, but risks catastrophic spills in the inner loop of more
complicated code.
Paul