https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81906
--- Comment #10 from joseph at codesourcery dot com <joseph at codesourcery dot com> --- A correct (for -frounding-math) SSE sequence would (for arguments with absolute value < 2**52) add and subtract 2**52 for a positive operand, -2**52 for a negative operand. Then it would need to copy the sign of the original operand to the result to ensure zero results get the correct sign in all cases.