https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118487
Bug ID: 118487 Summary: [15 Regression] ICE tree check: expected vector_cst, have ssa_name in vector_cst_encoded_nelts, at tree.h:4683 since r15-5563-g1c4d39ada33d36 Product: gcc Version: 15.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: mjires at gcc dot gnu.org CC: cmuellner at gcc dot gnu.org Target Milestone: --- Compiling reduced testcase gcc.dg/tree-ssa/vector-11.c results in ICE since r15-5563-g1c4d39ada33d36. $ cat vector-11.c typedef int vec __attribute__((vector_size(16))); vec f1_p_v_in, f1_sel00, f1_sel11, f1_sel, f1_v_out_2; void f1() { vec v_1, v_2, v_x, v_y; v_1 = __builtin_shuffle(f1_p_v_in, f1_sel00); v_2 = __builtin_shuffle(f1_p_v_in, f1_sel11); v_x = v_2 - v_1; v_y = v_1 + v_2; f1_v_out_2 = __builtin_shuffle(v_y, v_x, f1_sel); } $ gcc vector-11.c -Ofast during GIMPLE pass: forwprop vector-11.c: In function ‘f1’: vector-11.c:3:6: internal compiler error: tree check: expected vector_cst, have ssa_name in vector_cst_encoded_nelts, at tree.h:4720 3 | void f1() { | ^~ 0x36ef415 internal_error(char const*, ...) /home/mjires/git/GCC/master/gcc/diagnostic-global-context.cc:517 0x1cd0691 tree_check_failed(tree_node const*, char const*, int, char const*, ...) /home/mjires/git/GCC/master/gcc/tree.cc:9044 0xe66065 tree_check(tree_node const*, char const*, int, char const*, tree_code) /home/mjires/git/GCC/master/gcc/tree.h:3975 0xea5f28 vector_cst_encoded_nelts(tree_node const*) /home/mjires/git/GCC/master/gcc/tree.h:4720 0x1cd7a8a vector_cst_elt(tree_node const*, unsigned int) /home/mjires/git/GCC/master/gcc/tree.cc:10419 0x1a51b5a recognise_vec_perm_simplify_seq /home/mjires/git/GCC/master/gcc/tree-ssa-forwprop.cc:3632 0x1a55930 execute /home/mjires/git/GCC/master/gcc/tree-ssa-forwprop.cc:4553 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. $ gcc -v Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/home/mjires/built/master/libexec/gcc/x86_64-pc-linux-gnu/15.0.1/lto-wrapper Target: x86_64-pc-linux-gnu Configured with: /home/mjires/git/GCC/master/configure --prefix=/home/mjires/built/master --disable-bootstrap --enable-languages=c,c++,fortran,lto --disable-multilib --disable-libsanitizer --enable-checking Thread model: posix Supported LTO compression algorithms: zlib zstd gcc version 15.0.1 20250115 (experimental) (GCC)