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

--- Comment #14 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The trunk branch has been updated by Andrew Pinski <[email protected]>:

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

commit r16-5897-ge148a21f38327f7c0e1040bf28c676dd0d13ca38
Author: Andrew Pinski <[email protected]>
Date:   Thu Oct 23 21:20:24 2025 -0700

    x86/aarch64: Fix compile time hog with ccmp [PR99782]

    With ccmp, right now with TER, we hit an O(n^2) explosion in
    compile time. This can be stopped by returning NULL early in
    ix86_gen_ccmp_next before we expand the operands which will expand
seperately
    at that point.

    A similar change aarch64's aarch64_gen_ccmp_next is done.

    Changes since v1:
     * v2: Change how cmp_mode is assigned in ix86_gen_ccmp_next.
           Reworded commit message about aarch64.

    Bootstrapped and tested on x86_64-linux-gnu and aarch64-linux-gnu.

            PR middle-end/99782
    gcc/ChangeLog:

            * config/i386/i386-expand.cc (ix86_gen_ccmp_next): Move the check
            for mode earlier before expand_operands.
            * config/aarch64/aarch64.cc (aarch64_gen_ccmp_next): Likewise.

    gcc/testsuite/ChangeLog:

            * gcc.dg/torture/pr99782-1.c: New test.

    Signed-off-by: Andrew Pinski <[email protected]>

Reply via email to