Don't we want a test without nnan where exceptions are ignored but is not the default FP env?
Ie, this should fold?
%add = call nsz float @llvm.experimental.constrained.fadd.f32(float %a, float 0.0, metadata !"round.downward", metadata !"fpexcept.ignore") #0
Yes, that's a good idea. And, yes, I believe we do want this to fold. The "nsz" flag means (I think) that if "x" is zero the sign of "0 - 0" is insignificant. I think that's what that means, anyway.
As requested, add tests for rounding to negative infinity, exceptions ignored, no sized zeros fast math flag.