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]>
