http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50485
--- Comment #3 from H.J. Lu <hjl.tools at gmail dot com> 2011-09-22 20:47:01 UTC --- (In reply to comment #0) > > The assignment is translated as a push/pop on the float stack: > ... ... > > So after the push/pop tmp[1] contains a quiet Nan, while the corresponding > part > of dst contains the bit representation of the signalling Nan, the memcmp > returns != 0 and the test aborts. I think it is wrong to convert memcpy to push/pop here.