Eric Botcazou <ebotca...@adacore.com> writes: >> ...trapping on signalling NaNs is enough for the field to be true. > > So what's the point in encoding this? The main distinction, and the only one > relevant for the RTL middle-end, is whether the operator traps on quiet NaNs > since this can change the comparison instruction emitted by the back-end.
AIUI, neither ORDERED nor UNEQ trap on signalling NaNs. Without this, the follow-on patch would fold (and (ordered x y) (uneq x y)) -> (eq x y) which is the same thing for quiet NaNs but not for signalling NaNs. Thanks, Richard