https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106963
Bug ID: 106963 Summary: [13 Regression] ICE in vect_gen_perm_mask_checked, at tree-vect-stmts.cc:8606 Product: gcc Version: 13.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: asolokha at gmx dot com CC: liuhongt at gcc dot gnu.org Target Milestone: --- Target: x86_64-unknown-linux-gnu gcc 13.0.0 20220911 snapshot (g:0ea5e3f4542832b8da016b152695e64a2a386309) ICEs when compiling the following testcase, reduced from gcc/testsuite/gcc.target/i386/pr103144-neg-1.c, w/ -mavx -O2: void foo_neg_const (int *a) { int i, b = 1; for (i = 0; i < 1000; i++) { a[i] = b; b = -b; } } % x86_64-unknown-linux-gnu-gcc-13.0.0 -mavx -O2 -c l9k774zu.c during GIMPLE pass: vect l9k774zu.c: In function 'foo_neg_const': l9k774zu.c:2:1: internal compiler error: in vect_gen_perm_mask_checked, at tree-vect-stmts.cc:8606 2 | foo_neg_const (int *a) | ^~~~~~~~~~~~~ 0x86e97b vect_gen_perm_mask_checked(tree_node*, vec_perm_indices const&) /var/tmp/portage/sys-devel/gcc-13.0.0_p20220911/work/gcc-13-20220911/gcc/tree-vect-stmts.cc:8606 0x1177c4b vect_create_nonlinear_iv_init /var/tmp/portage/sys-devel/gcc-13.0.0_p20220911/work/gcc-13-20220911/gcc/tree-vect-loop.cc:8360 0x1177c4b vectorizable_nonlinear_induction /var/tmp/portage/sys-devel/gcc-13.0.0_p20220911/work/gcc-13-20220911/gcc/tree-vect-loop.cc:8803 0x1179a67 vectorizable_induction(_loop_vec_info*, _stmt_vec_info*, gimple**, _slp_tree*, vec<stmt_info_for_cost, va_heap, vl_ptr>*) /var/tmp/portage/sys-devel/gcc-13.0.0_p20220911/work/gcc-13-20220911/gcc/tree-vect-loop.cc:8943 0x1ef3690 vect_transform_stmt(vec_info*, _stmt_vec_info*, gimple_stmt_iterator*, _slp_tree*, _slp_instance*) /var/tmp/portage/sys-devel/gcc-13.0.0_p20220911/work/gcc-13-20220911/gcc/tree-vect-stmts.cc:11319 0x1186e81 vect_transform_loop(_loop_vec_info*, gimple*) /var/tmp/portage/sys-devel/gcc-13.0.0_p20220911/work/gcc-13-20220911/gcc/tree-vect-loop.cc:10643 0x11c99c1 vect_transform_loops /var/tmp/portage/sys-devel/gcc-13.0.0_p20220911/work/gcc-13-20220911/gcc/tree-vectorizer.cc:1007 0x11c9fff try_vectorize_loop_1 /var/tmp/portage/sys-devel/gcc-13.0.0_p20220911/work/gcc-13-20220911/gcc/tree-vectorizer.cc:1153 0x11c9fff try_vectorize_loop /var/tmp/portage/sys-devel/gcc-13.0.0_p20220911/work/gcc-13-20220911/gcc/tree-vectorizer.cc:1183 0x11ca3b4 execute /var/tmp/portage/sys-devel/gcc-13.0.0_p20220911/work/gcc-13-20220911/gcc/tree-vectorizer.cc:1299