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

Wilco <wilco at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|REOPENED                    |RESOLVED
         Resolution|---                         |FIXED

--- Comment #21 from Wilco <wilco at gcc dot gnu.org> ---
Fixed by r276887 and other recent multiply improvements. The only CPU that can
still trigger stack pushes is cortex-a8 with -O2/O3 both for Arm and Thumb:

        mov     ip, r0
        mul     r3, ip, r3
        mla     r1, r2, r1, r3
        push    {lr}
        umull   r0, lr, r0, r2
        add     r1, r1, lr
        ldr     pc, [sp], #4

All other CPUs and optimization options generate the optimal:

        muls    r3, r0, r3
        mla     r1, r2, r1, r3
        umull   r0, r2, r0, r2
        add     r1, r1, r2
        bx      lr

So I consider this fixed.

Reply via email to