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.