[Bug tree-optimization/86855] REGRESSON: [8.0] -Ofast optimize away mm_set_ps(0.0f,0.0f,-0.0f,0.0f);
vincenzo.innocente at cern dot ch
gcc-bugzilla@gcc.gnu.org
Sat Aug 4 12:32:00 GMT 2018
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86855
--- Comment #3 from vincenzo Innocente <vincenzo.innocente at cern dot ch> ---
looks more undefined behavior as
const __m128 neg = _mm_set_ps(0.0f,0.0f,-0.0f,-0.0f);
return _mm_xor_ps(_mm_sub_ps(v5, v3), neg);
with -O3 compiles in
xorps .LC0(%rip), %xmm0
ret
.LC0:
.long 2147483648
.long 2147483648
.long 0
.long 0
while -Ofast in
xorps .LC0(%rip), %xmm0
ret
.LC0:
.long 2147483648
.long 2147483648
.long 2147483648
.long 2147483648
needless to say that neither clang nor icc display such a behavior...
More information about the Gcc-bugs
mailing list