https://gcc.gnu.org/bugzilla/show_bug.cgi?id=49721
--- Comment #30 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to H.J. Lu from comment #29) > This is related to PR 55142. The problem I reported is worked around in the i386 backend though: (insn:TI 19 18 22 3 (set (mem:SI (plus:DI (reg/f:DI 0 ax [94]) (const_int -1073742592 [0xffffffffbffffd00])) [2 *_9+0 S4 A32]) (reg:SI 1 dx [orig:91 d ] [91])) t1234.c:5 90 {*movsi_internal} (expr_list:REG_DEAD (reg:SI 1 dx [orig:91 d ] [91]) (expr_list:REG_DEAD (reg/f:DI 0 ax [94]) (nil)))) Produces: movl %edx, -1073742592(%eax) We cannot work around this in the AARCH64 back-end since we don't have instruction which does memory addresses in 32bit.