[Bug target/69909] [6 Regression] wrong code with -Os and vectors @ x86_64
zsojka at seznam dot cz
gcc-bugzilla@gcc.gnu.org
Tue Feb 23 06:25:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69909
--- Comment #2 from Zdenek Sojka <zsojka at seznam dot cz> ---
Actually, there is:
...
mov ecx, 8 # tmp115,
mov r11, QWORD PTR [rsp+160] # v32u128_1D.1763,
v32u128_1D.1763
mov r12, QWORD PTR [rsp+168] # v32u128_1D.1763,
v32u128_1D.1763
lea rdi, [rsp-80] # tmp113,
lea rsi, [rsp+80] # tmp114,
xor eax, 16 # _3,
sub r11, QWORD PTR [rsp-64] # _33,
mov DWORD PTR [rsp+104], eax # v32u32_1D.1761, _3
sbb r12, QWORD PTR [rsp-56] # _33,
xor r10d, r10d #
rep movsd
...
"rep movsd" initialises the values at [rsp-64] and [rsp-56], but they are
loaded to registers too early.
More information about the Gcc-bugs
mailing list