PowerPC Floating Point compare bug?
David Edelsohn
dje@watson.ibm.com
Fri May 18 08:25:00 GMT 2001
>>>>> Geoff Keating writes:
Geoff> I think the code simply has the wrong expansion in the movsfcc
Geoff> define_expand for this (rare) case---the operands need to be
Geoff> interchanged.
The problem is that one cannot tell when the operands should be
treated reversed without doing another max/min pass, so it just isn't
worth it. I have removed the "NE" case from the patterns.
Geoff> That code is bad in other ways, too, it doesn't allow for overflow and
Geoff> NaNs and such.
I agree and I thought that it was conditionalized on fast-math at
one point. I would have expected that movMMcc would be conditionalized on
fast-math or when it knows the operations will be safe (as in this case
with constants and compiler-generated values).
David
More information about the Gcc
mailing list