https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106794
Bug ID: 106794 Summary: ice in vect_transform_slp_perm_load_1 Product: gcc Version: 12.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: dcb314 at hotmail dot com Target Milestone: --- Created attachment 53525 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=53525&action=edit gzipped C++ source code For the attached C++ code, recent gcc does this: $ /home/dcb/gcc/results/bin/gcc -c -w -O3 -ansi -march=bdver2 -ffast-math bug839.cc during GIMPLE pass: vect spheremesh.cpp: In member function ‘void SphereMesh::generateNormals()’: spheremesh.cpp:123:6: internal compiler error: in operator[], at vec.h:889 0x137b3fd vect_transform_slp_perm_load_1(vec_info*, _slp_tree*, vec<unsigned int, va_heap, vl_ptr>&, vec<tree_node* , va_heap, vl_ptr> const&, gimple_stmt_iterator*, poly_int<1u, unsigned long>, bool, bool, unsigned int*, unsigned int*, bool) ../../trunk.git/gcc/tree-vect-slp.cc:0 0x137a5c0 vect_optimize_slp_pass::internal_node_cost(_slp_tree*, int, unsigned int) ../../trunk.git/gcc/tree-vect-slp.cc:4490 0x137cf1b vect_optimize_slp_pass::forward_pass() ../../trunk.git/gcc/tree-vect-slp.cc:4951 0x137fe93 vect_optimize_slp_pass::run() ../../trunk.git/gcc/tree-vect-slp.cc:5498 A reduction is currently running. I will try to identify a git hash range.