https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95335
Bug ID: 95335
Summary: [11 Regression] ICE in vectorizable_scan_store at
gcc/tree-vect-stmts.c:7164 since
r11-615-gdc0c0196340f7ac5
Product: gcc
Version: 11.0
Status: UNCONFIRMED
Keywords: ice-on-valid-code
Severity: normal
Priority: P3
Component: tree-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: marxin at gcc dot gnu.org
CC: rguenth at gcc dot gnu.org
Target Milestone: ---
One more for Richi, it's reduced from blender:
$ cat math.i
float *a;
float b;
void
fn1(float p1[][3]) {
float c, d, e, f;
f = a[1] * a[1] * d;
b = a[1] * a[2] * d;
p1[1][1] = f + c;
p1[1][2] = b + e;
}
$ gcc -Ofast math.i -c -march=znver1
during GIMPLE pass: slp
math.i: In function 'fn1':
math.i:4:1: internal compiler error: in operator[], at vec.h:867
4 | fn1(float p1[][3]) {
| ^~~
0x75c330 vec<tree_node*, va_heap, vl_embed>::operator[](unsigned int)
/home/marxin/Programming/gcc/gcc/vec.h:867
0x75c330 vec<tree_node*, va_heap, vl_ptr>::operator[](unsigned int)
/home/marxin/Programming/gcc/gcc/vec.h:1433
0x760a50 vec<tree_node*, va_heap, vl_ptr>::operator[](unsigned int)
/home/marxin/Programming/gcc/gcc/tree.h:3419
0x760a50 vectorizable_scan_store
/home/marxin/Programming/gcc/gcc/tree-vect-stmts.c:7164
0x760a50 vectorizable_store
/home/marxin/Programming/gcc/gcc/tree-vect-stmts.c:7773
0x10a91fe vect_transform_stmt(vec_info*, _stmt_vec_info*,
gimple_stmt_iterator*, _slp_tree*, _slp_instance*)
/home/marxin/Programming/gcc/gcc/tree-vect-stmts.c:11200
0x10d0448 vect_schedule_slp_instance
/home/marxin/Programming/gcc/gcc/tree-vect-slp.c:4235
0x10d9482 vect_schedule_slp(vec_info*)
/home/marxin/Programming/gcc/gcc/tree-vect-slp.c:4359
0x10dc47c vect_slp_bb_region
/home/marxin/Programming/gcc/gcc/tree-vect-slp.c:3318
0x10dc47c vect_slp_bb(basic_block_def*)
/home/marxin/Programming/gcc/gcc/tree-vect-slp.c:3441
0x10dde2f execute
/home/marxin/Programming/gcc/gcc/tree-vectorizer.c:1320
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.