https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106339

            Bug ID: 106339
           Summary: [13 Regression] ICE in exact_div, at poly-int.h:2232
           Product: gcc
           Version: 13.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: asolokha at gmx dot com
  Target Milestone: ---
            Target: aarch64-linux-gnu

gcc-13.0.0 20220717 snapshot (g:7bcd7f47359b903bf7a193b95d4450d9d69c60ba) ICEs
when compiling the following testcase w/ -march=armv8-a+sve -O1
-ftree-slp-vectorize -fno-tree-dse:

long int v;

void
foo (void)
{
  v = 0;
  v = 1;
}

% aarch64-linux-gnu-gcc-13.0.0 -march=armv8-a+sve -O1 -ftree-slp-vectorize
-fno-tree-dse -c ilufi874.c
during GIMPLE pass: slp
ilufi874.c: In function 'foo':
ilufi874.c:4:1: internal compiler error: in exact_div, at poly-int.h:2232
    4 | foo (void)
      | ^~~
0x7cd715 poly_int<2u, poly_result<unsigned long, if_nonpoly<int, int,
poly_int_traits<int>::is_poly>::type, poly_coeff_pair_traits<unsigned long,
if_nonpoly<int, int, poly_int_traits<int>::is_poly>::type>::result_kind>::type>
exact_div<2u, unsigned long, int>(poly_int_pod<2u, unsigned long> const&, int)
       
/var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220717/work/gcc-13-20220717/gcc/poly-int.h:2232
0x7ce24a poly_int<2u, poly_result<unsigned long, if_nonpoly<int, int,
poly_int_traits<int>::is_poly>::type, poly_coeff_pair_traits<unsigned long,
if_nonpoly<int, int, poly_int_traits<int>::is_poly>::type>::result_kind>::type>
exact_div<2u, unsigned long, int>(poly_int_pod<2u, unsigned long> const&, int)
       
/var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220717/work/gcc-13-20220717/gcc/tree.h:3631
0x7ce24a can_duplicate_and_interleave_p(vec_info*, unsigned int, tree_node*,
unsigned int*, tree_node**, tree_node**)
       
/var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220717/work/gcc-13-20220717/gcc/tree-vect-slp.cc:413
0x11d590f vect_get_and_check_slp_defs
       
/var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220717/work/gcc-13-20220717/gcc/tree-vect-slp.cc:645
0x11da87a vect_build_slp_tree_2
       
/var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220717/work/gcc-13-20220717/gcc/tree-vect-slp.cc:2177
0x11da0c8 vect_build_slp_tree
       
/var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220717/work/gcc-13-20220717/gcc/tree-vect-slp.cc:1572
0x11dea05 vect_build_slp_instance
       
/var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220717/work/gcc-13-20220717/gcc/tree-vect-slp.cc:3076
0x11dfef5 vect_analyze_slp_instance
       
/var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220717/work/gcc-13-20220717/gcc/tree-vect-slp.cc:3401
0x11e3245 vect_analyze_slp(vec_info*, unsigned int)
       
/var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220717/work/gcc-13-20220717/gcc/tree-vect-slp.cc:3434
0x11eb3b9 vect_slp_analyze_bb_1
       
/var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220717/work/gcc-13-20220717/gcc/tree-vect-slp.cc:5875
0x11eb3b9 vect_slp_region
       
/var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220717/work/gcc-13-20220717/gcc/tree-vect-slp.cc:5977
0x11ecdb3 vect_slp_bbs
       
/var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220717/work/gcc-13-20220717/gcc/tree-vect-slp.cc:6168
0x11ed18c vect_slp_function(function*)
       
/var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220717/work/gcc-13-20220717/gcc/tree-vect-slp.cc:6256
0x11f50d2 execute
       
/var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20220717/work/gcc-13-20220717/gcc/tree-vectorizer.cc:1532

Reply via email to