https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82692
--- Comment #17 from Segher Boessenkool <segher at gcc dot gnu.org> --- So we have a compare:CCFPU, the resulting flags is used in a GE only, and ix86_cc_mode thinks the best mode to use for that is CCFP. Which is fine, except compare:CCFPU is a different instruction, and GE for the resulting insn means a different thing?! How is this supposed to work? How can generic code know this? Everything worked fine, except the compare insn did not do the side effect of setting a status flag. Perhaps an unspec (or even an unspec_volatile) should have been used for the compare?