https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89440
Bug ID: 89440
Summary: [9 Regression] ICE in
vect_create_epilog_for_reduction, at
tree-vect-loop.c:5502
Product: gcc
Version: 9.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: [email protected]
Target Milestone: ---
Changed between 20181111 and 20181118,
with -Ofast or -O3 -ffast-math :
$ cat z1.c
float
f (float x)
{
int i;
float j;
float a = 0;
for (i = 0; i < 4; ++i)
{
for (j = 0; j < 4; ++j)
{
a += 1;
x += a;
}
}
return x;
}
$ gcc-9-20181111 -c z1.c -Ofast
$
$ gcc-9-20190217 -c z1.c -Ofast
during GIMPLE pass: vect
z1.c: In function 'f':
z1.c:2:1: internal compiler error: in vect_create_epilog_for_reduction, at
tree-vect-loop.c:5502
2 | f (float x)
| ^
0x5b2dbd vect_create_epilog_for_reduction
../../gcc/tree-vect-loop.c:5500
0xc865c4 vectorizable_reduction(_stmt_vec_info*, gimple_stmt_iterator*,
_stmt_vec_info**, _slp_tree*, _slp_instance*, vec<stmt_info_for_cost, va_heap,
vl_ptr>*)
../../gcc/tree-vect-loop.c:7088
0xc79390 vect_transform_stmt(_stmt_vec_info*, gimple_stmt_iterator*,
_slp_tree*, _slp_instance*)
../../gcc/tree-vect-stmts.c:9784
0xc7aa3f vect_transform_loop_stmt
../../gcc/tree-vect-loop.c:8139
0xc7d78d vect_transform_loop(_loop_vec_info*)
../../gcc/tree-vect-loop.c:8358
0xca3726 try_vectorize_loop_1
../../gcc/tree-vectorizer.c:979
0xca3fc1 vectorize_loops()
../../gcc/tree-vectorizer.c:1111