https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97965
--- Comment #1 from joseph at codesourcery dot com <joseph at codesourcery dot com> --- I don't think there should be any difference between quiet and signaling NaNs here, since < <= > >= comparisons with either kind of NaN raise "invalid"; it's == != (and the __builtin_is* comparisons) that only raise exceptions for signaling NaN but not quiet.