------- 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

Reply via email to