Applies nnan, ninf and nsz. This allows more instructions to be folded
away even with no fast math flags, e.g. (int)x * (b ? 1.0 : 0.0) -> b ? x : 0.0
As a side effect this will propagate fast math flags out of inlined fast
math code into surrounding functions.