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

            Bug ID: 69166
           Summary: [6 Regression] ICE in get_initial_def_for_reduction,
                    at tree-vect-loop.c:4188
           Product: gcc
           Version: 6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: doko at gcc dot gnu.org
  Target Milestone: ---

trunk r232077, powerpc64le-linux-gnu, works with -O2

reduced test case:

double a;
int b, c, d;
void fn1();
void fn2() {
  double *e;
  b = 0;
  for (; b < d; b++) {
    c = 0;
    for (; c < d; c++)
      e[b] /= a;
  }
  fn1();
}

$ gcc -c -g -O3 fft.i 
fft.i: In function 'fn2':
fft.i:4:6: internal compiler error: in get_initial_def_for_reduction, at
tree-vect-loop.c:4188
 void fn2() {
      ^~~

0x108e4b83 get_initial_def_for_reduction(gimple*, tree_node*, tree_node**)
        ../../src/gcc/tree-vect-loop.c:4188
0x1015e5ff vect_create_epilog_for_reduction
        ../../src/gcc/tree-vect-loop.c:4347
0x108e6517 vectorizable_reduction(gimple*, gimple_stmt_iterator*, gimple**,
_slp_tree*)
        ../../src/gcc/tree-vect-loop.c:6175
0x108dd16b vect_transform_stmt(gimple*, gimple_stmt_iterator*, bool*,
_slp_tree*, _slp_instance*)
        ../../src/gcc/tree-vect-stmts.c:8232
0x108e1e7f vect_transform_loop(_loop_vec_info*)
        ../../src/gcc/tree-vect-loop.c:6868
0x109005d3 vectorize_loops()
        ../../src/gcc/tree-vectorizer.c:554
0x108167eb execute
        ../../src/gcc/tree-ssa-loop.c:420
Please submit a full bug report,
with preprocessed source if appropriate.

Reply via email to