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

--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
REG_RETURNED is no longer there.

Looks like there is an extra move which caused the code to be different.

For aarch64 we have:
(insn 18 4 2 2 (set (reg:DI 94)
        (reg:DI 0 x0 [ foo ])) "/app/example.cpp":17:42 47 {*movdi_aarch64}
     (nil))
(insn 2 18 3 2 (set (reg/v/f:DI 90 [ foo ])
        (reg:DI 94)) "/app/example.cpp":17:42 47 {*movdi_aarch64}
     (expr_list:REG_DEAD (reg:DI 94)
        (nil)))
Before the call to memset.

Reply via email to