http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58416
--- Comment #3 from Uroš Bizjak <ubizjak at gmail dot com> --- (In reply to Richard Biener from comment #2) > where *movdf_internal simply doesn't properly preserve sNaN. > > It looks wrong for DFmode move instructions to not preserve a IEEE defined > flag. I suppose it would be also wrong to not preserve the exact bit pattern > (think of canonicalizing NaNs). As said in PR57484, comment 11: On an x86 target using the legacy x87 instructions and the 80-bit registers, a load of a 64-bit or 32-bit value in memory into the 80-bit registers counts as a format conversion and an signaling NaN input will turn into a quiet NaN in the register format.