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

--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
GCC 7-10 produced:
        movw    r3, #32896
        tst     r1, r3
        it      ne
        lsrne   r0, r0, #8
        bx      lr

But GCC 11 produces:
        movw    r3, #32896
        tst     r1, r3
        ite     ne
        movne   r3, #1
        moveq   r3, #0
        lsls    r3, r3, #3
        lsrs    r0, r0, r3

Which is definitely worse.

Reply via email to