[Bug target/22453] New: reload uses FLOAT_REGS class eagerly even if -mfpmath=sse
bonzini at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Wed Jul 13 08:34:00 GMT 2005
The following code
extern double f(double, double);
void g (double x)
{
double z, y;
z = 0.0;
y = 1.0 - x;
again:
z = y - z;
f(z, 1.0);
if (z == 0.0)
goto again;
}
has a fld1 instruction when compiled with "-mfpmath=sse -msse2 -msseregparm
-mtune=pentiumpro -O2".
This instruction is caused by a reload into a FLOAT_REGS register, and moving
the value to a SSE register needs secondary memory.
--
Summary: reload uses FLOAT_REGS class eagerly even if -
mfpmath=sse
Product: gcc
Version: 4.1.0
Status: UNCONFIRMED
Keywords: missed-optimization, ra
Severity: normal
Priority: P2
Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: bonzini at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org,rguenth at gcc dot gnu
dot org
GCC target triplet: i686-pc-linux-gnu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22453
More information about the Gcc-bugs
mailing list