------- Additional Comments From rth at gcc dot gnu dot org 2005-01-14 01:03 ------- I believe the problem you ascribe to this bug is fixed. Note that we do not generate minss for the given example because "<=" is not the operation of the minss instruction; it performs "<". Which is relevant for "+0.0 < -0.0".
We *ought* to emit minss with -ffast-math, but that should happen via noce_try_minmax invoking the sminsf3 pattern, rather than special-casing this in the back-end. Open a separate PR for that if you like. But on the bright side, we at least generate a conditional move sequence: cmpless %xmm1, %xmm0 andps %xmm0, %xmm2 andnps %xmm1, %xmm0 orps %xmm2, %xmm0 -- What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution| |FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19250