https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106250
Bug ID: 106250 Summary: [13 Regression] ICE in optab_for_tree_code, at optabs-tree.cc:96 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 Target Milestone: --- Target: aarch64-linux-gnu gcc 13.0.0 20220710 snapshot (g:0587cef3d7962a8b0f44779589ba2920dd3d71e5) ICEs when compiling the following testcase w/ -O1 -ftree-loop-vectorize: int foo (unsigned long int x, int y, int z) { int ret = 0; while (y < 1) { x *= 2; ret = x == z; z = y; ++y; } return ret; } % aarch64-linux-gnu-gcc-13.0.0 -O1 -ftree-loop-vectorize -c ljvzdvet.c during GIMPLE pass: vect ljvzdvet.c: In function 'foo': ljvzdvet.c:2:1: internal compiler error: in optab_for_tree_code, at optabs-tree.cc:96 2 | foo (unsigned long int x, int y, int z) | ^~~ 0x74dfb3 optab_for_tree_code(tree_code, tree_node const*, optab_subtype) /var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220710/work/gcc-13-20220710/gcc/optabs-tree.cc:96 0x139bda4 directly_supported_p(code_helper, tree_node*, optab_subtype) /var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220710/work/gcc-13-20220710/gcc/gimple-match-head.cc:1390 0x11b8174 vectorizable_reduction(_loop_vec_info*, _stmt_vec_info*, _slp_tree*, _slp_instance*, vec<stmt_info_for_cost, va_heap, vl_ptr>*) /var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220710/work/gcc-13-20220710/gcc/tree-vect-loop.cc:7372 0x11bfd1b vect_analyze_loop_operations /var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220710/work/gcc-13-20220710/gcc/tree-vect-loop.cc:1753 0x11bfd1b vect_analyze_loop_2 /var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220710/work/gcc-13-20220710/gcc/tree-vect-loop.cc:2558 0x11c11fb vect_analyze_loop_1 /var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220710/work/gcc-13-20220710/gcc/tree-vect-loop.cc:2899 0x11c19d0 vect_analyze_loop(loop*, vec_info_shared*) /var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220710/work/gcc-13-20220710/gcc/tree-vect-loop.cc:3053 0x11f7aa4 try_vectorize_loop_1 /var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220710/work/gcc-13-20220710/gcc/tree-vectorizer.cc:1067 0x11f7aa4 try_vectorize_loop /var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220710/work/gcc-13-20220710/gcc/tree-vectorizer.cc:1183 0x11f8304 execute /var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220710/work/gcc-13-20220710/gcc/tree-vectorizer.cc:1299