https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113237
Bug ID: 113237 Summary: [14 Regression] ICE verify_ssa failed when building 500.perlbench_r since r14-6822-g01f4251b8775c8 Product: gcc Version: 14.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: jamborm at gcc dot gnu.org CC: tnfchris at gcc dot gnu.org Blocks: 26163 Target Milestone: --- Host: x86_64-linux Target: x86_64-linux With a compiler configured with --enable-checking=yes and the following testcase derived from 500.perlbench_r with -O3 -march=x86-64-v3 I get a verify_ssa ICE: $ cat test.c long Perl_pp_split_limit; int Perl_block_gimme(); int Perl_pp_split() { char strend; long iters; int gimme = Perl_block_gimme(); while (--Perl_pp_split_limit) { if (gimme) iters++; if (strend) break; } if (iters) return 0; } $ $PREFIX/gcc -O3 -march=x86-64-v3 -S test.c test.c: In function ‘Perl_pp_split’: test.c:3:5: error: definition in block 4 does not dominate use in block 6 3 | int Perl_pp_split() { | ^~~~~~~~~~~~~ for SSA_NAME: vect_iters_12.12_110 in statement: vect_iters_12.12_111 = PHI <vect_iters_12.12_110(6)> PHI argument vect_iters_12.12_110 for PHI node vect_iters_12.12_111 = PHI <vect_iters_12.12_110(6)> during GIMPLE pass: vect test.c:3:5: internal compiler error: verify_ssa failed 0x129673f verify_ssa(bool, bool) /home/mjambor/gcc/mine/src/gcc/tree-ssa.cc:1203 0xf0bcd5 execute_function_todo /home/mjambor/gcc/mine/src/gcc/passes.cc:2095 0xf0c13e execute_todo /home/mjambor/gcc/mine/src/gcc/passes.cc:2142 Please submit a full bug report, with preprocessed source (by using -freport-bug). Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions. I have bisected the failure to r14-6822-g01f4251b8775c8 (middle-end: Support vectorization of loops with multiple exits). I have tried if the patch attached to PR 113137 helps but unfortunately it does not. Referenced Bugs: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=26163 [Bug 26163] [meta-bug] missed optimization in SPEC (2k17, 2k and 2k6 and 95)