https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105132
Bug ID: 105132
Summary: ICE in in operator[], at vec.h:889 with
-march=skylake-avx512 -O3
Product: gcc
Version: 12.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: tree-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: vsevolod.livinskiy at gmail dot com
Target Milestone: ---
Link to the Compiler Explorer: https://godbolt.org/z/xedcfP338
Reproducer:
short a;
extern int b[];
int c;
void d(long f[][5][5][17], int g[][5][5][17]) {
for (short e = 0; e < 17; e++) {
a = g[19][2][3][e];
b[e] = c & (f[3][2][3][e] && g[19][2][3][e]);
}
}
Error:
>$ g++ -march=skylake-avx512 -c -O3 func.cpp
during GIMPLE pass: slp
func.cpp: In function 'void d(long int (*)[5][5][17], int (*)[5][5][17])':
func.cpp:4:6: internal compiler error: in operator[], at vec.h:889
4 | void d(long f[][5][5][17], int g[][5][5][17]) {
| ^
0x99508e vec<edge_def*, va_gc, vl_embed>::operator[](unsigned int)
/testing/gcc/gcc_src_master/gcc/vec.h:889
0x996d5b vec<tree_node*, va_heap, vl_embed>::operator[](unsigned int)
/testing/gcc/gcc_src_master/gcc/tree-vect-stmts.cc:6108
0x996d5b vec<tree_node*, va_heap, vl_ptr>::operator[](unsigned int)
/testing/gcc/gcc_src_master/gcc/vec.h:1495
0x996d5b vectorizable_operation
/testing/gcc/gcc_src_master/gcc/tree-vect-stmts.cc:6375
0x2123ab8 vect_transform_stmt(vec_info*, _stmt_vec_info*,
gimple_stmt_iterator*, _slp_tree*, _slp_instance*)
/testing/gcc/gcc_src_master/gcc/tree-vect-stmts.cc:11245
0x14c4fc7 vect_schedule_slp_node
/testing/gcc/gcc_src_master/gcc/tree-vect-slp.cc:7320
0x14d6346 vect_schedule_scc
/testing/gcc/gcc_src_master/gcc/tree-vect-slp.cc:7515
0x14d60d9 vect_schedule_scc
/testing/gcc/gcc_src_master/gcc/tree-vect-slp.cc:7496
0x14d60d9 vect_schedule_scc
/testing/gcc/gcc_src_master/gcc/tree-vect-slp.cc:7496
0x14d60d9 vect_schedule_scc
/testing/gcc/gcc_src_master/gcc/tree-vect-slp.cc:7496
0x14d699f vect_schedule_slp(vec_info*, vec<_slp_instance*, va_heap, vl_ptr>
const&)
/testing/gcc/gcc_src_master/gcc/tree-vect-slp.cc:7632
0x14d8163 vect_slp_region
/testing/gcc/gcc_src_master/gcc/tree-vect-slp.cc:5994
0x14d9113 vect_slp_bbs
/testing/gcc/gcc_src_master/gcc/tree-vect-slp.cc:6106
0x14d950c vect_slp_function(function*)
/testing/gcc/gcc_src_master/gcc/tree-vect-slp.cc:6194
0x14e13e2 execute
/testing/gcc/gcc_src_master/gcc/tree-vectorizer.cc:1506
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.
GCC version:
gcc version 12.0.1 20220401 (git://gcc.gnu.org/git/gcc.git:master
15d683d4f0b390b27c54a7c92c6e4f33195bdc93) (GCC)