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

--- Comment #16 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Richard Earnshaw <[email protected]>:

https://gcc.gnu.org/g:c4d53bc3c96770438d63a0d35a638beabad67c65

commit r16-7323-gc4d53bc3c96770438d63a0d35a638beabad67c65
Author: Richard Earnshaw <[email protected]>
Date:   Wed Feb 4 14:14:37 2026 +0000

    compare-elim: arm: enable compare-elimination on Arm [PR123604]

    The Arm port has never had the compare elimination pass enabled by
    adding a definition of TARGET_FLAGS_REGNUM.  But just adding this is
    insufficient because the target uses COND_EXEC and compare-elim is not
    yet set up to handle this.

    This seems to be quite simple, since we just need to recognize
    COND_EXEC in insns when scanning for uses of the condition code
    register.

    This is a partial mitigation for the code quality regression
    reported in PR target/123604.

    gcc/ChangeLog:

            PR target/123604
            * compare-elim.cc (find_flags_uses_in_insn): Handle COND_EXEC.
            * config/arm/arm.cc (TARGET_FLAGS_REGNUM): Define.

Reply via email to