[Bug target/19653] x87 reg allocated for constants for -mfpmath=sse
uros at kss-loka dot si
gcc-bugzilla@gcc.gnu.org
Wed Feb 9 13:11:00 GMT 2005
------- Additional Comments From uros at kss-loka dot si 2005-02-09 07:30 -------
(In reply to comment #4)
> rth hacked the constraints recently to have better ra for some fp cases. Can
> you see if the bug is still there today on mainline?
gcc version 4.0.0 20050209 (experimental)
'-O2 -march=pentium4 -mfpmath=sse -ffast-math -D__NO_MATH_INLINES'
...
comisd .LC2, %xmm0
jb .L2
fld1 <- load of 1 into SSE reg
fstpl -112(%ebp)
movsd -112(%ebp), %xmm2
fldz <- load of 0 into SSE reg
fstl -112(%ebp)
movsd -112(%ebp), %xmm1
movapd %xmm1, %xmm0
.L4:
fldl 32(%ebx) movsd 32(%ebx), %xmm3
fstpl -96(%ebp) movsd %xmm3, -96(%ebp)
movsd -96(%ebp), %xmm3 [ -not needed- ]
mulsd %xmm2, %xmm3
subsd %xmm0, %xmm3
fldl 24(%ebx) <-move to temporary, this is OK
fstpl -88(%ebp)
mulsd -88(%ebp), %xmm2
xorpd .LC4, %xmm2
movsd -88(%ebp), %xmm4
mulsd %xmm1, %xmm4
...
The bug is still there (it manifests itself also in a couple of other places).
Could somebody confirm this bug? A testcase is attached.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19653
More information about the Gcc-bugs
mailing list