https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109093

--- Comment #19 from H.J. Lu <hjl.tools at gmail dot com> ---
.DEFERRED_INIT has

insn 259 261 297 4 (set (reg/f:DI 144) 
        (plus:DI (reg/f:DI 19 frame)
            (const_int -32 [0xffffffffffffffe0]))) 241 {*leadi}
     (expr_list:REG_EQUAL (plus:DI (reg/f:DI 19 frame)
            (const_int -32 [0xffffffffffffffe0]))
        (nil)))

vs explicit __builtin_memset

insn 264 149 153 34 (set (reg/f:DI 144) 
        (plus:DI (reg/f:DI 19 frame)
            (const_int -32 [0xffffffffffffffe0]))) 241 {*leadi}
     (expr_list:REG_EQUIV (plus:DI (reg/f:DI 19 frame)
            (const_int -32 [0xffffffffffffffe0]))
        (nil)))

LRA can eliminate (reg/f:DI 144) with REG_EQUIV, but not with REG_EQUAL.

Reply via email to