https://gcc.gnu.org/bugzilla/show_bug.cgi?id=45980
--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> --- For the original testcase on the trunk we get: ldr r3, .L2 str r3, [r0] add r3, r3, #-2004318072 str r3, [r0, #4] add r3, r3, #-1459617792 sub r3, r3, #1228800 subw r3, r3, #3723 str r3, [r0, #8] sub r3, r3, #-2004318072 str r3, [r0, #12] ldr r3, .L2+4 str r3, [r0, #16] movs r3, #0 strd r3, r3, [r0, #20] bx lr .L3: .align 2 .L2: .word 1732584193 .word -1009589776