https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97104
Bug ID: 97104
Summary: [11 Regression] aarch64, SVE: ICE in
vect_get_loop_mask since r11-3070-g783dc66f9cc
Product: gcc
Version: 11.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: tree-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: acoplan at gcc dot gnu.org
Target Milestone: ---
For the following testcase:
int a, b, c, d;
short e;
void f() {
unsigned g;
for (; d; d++) {
g = c == 0 ? 1 : b / c;
e = a ? g : a;
}
}
AArch64 GCC ICEs at -O1 or -O2 with -ftree-vectorize -march=armv8.2-a+sve since
r11-3070-g783dc66f9ccb0019c3dad2701bb9110286758d70:
commit 783dc66f9ccb0019c3dad2701bb9110286758d70 (HEAD)
Author: Richard Biener <[email protected]>
Date: Wed Sep 9 09:36:46 2020
enable live condition vectorization
To reproduce:
$ aarch64-none-elf-gcc -O2 -ftree-vectorize -march=armv8.2-a+sve test.c
during GIMPLE pass: vect
test.c: In function 'f':
test.c:3:6: internal compiler error: in operator[], at vec.h:880
3 | void f() {
| ^
0x10637d9 vec<rgroup_controls, va_heap, vl_embed>::operator[](unsigned int)
/home/alecop01/toolchain/src/gcc/gcc/vec.h:880
0x10637d9 vec<rgroup_controls, va_heap, vl_ptr>::operator[](unsigned int)
/home/alecop01/toolchain/src/gcc/gcc/vec.h:1451
0x10637d9 vect_get_loop_mask(gimple_stmt_iterator*, auto_vec<rgroup_controls,
0ul>*, unsigned int, tree_node*, unsigned int)
/home/alecop01/toolchain/src/gcc/gcc/tree-vect-loop.c:8487
0x1044e00 vectorizable_condition
/home/alecop01/toolchain/src/gcc/gcc/tree-vect-stmts.c:10216
0x105a73e vect_transform_stmt(vec_info*, _stmt_vec_info*,
gimple_stmt_iterator*, _slp_tree*, _slp_instance*)
/home/alecop01/toolchain/src/gcc/gcc/tree-vect-stmts.c:10859
0x1061099 vect_transform_loop_stmt
/home/alecop01/toolchain/src/gcc/gcc/tree-vect-loop.c:8700
0x107db5d vect_transform_loop(_loop_vec_info*, gimple*)
/home/alecop01/toolchain/src/gcc/gcc/tree-vect-loop.c:9134
0x10a3c34 try_vectorize_loop_1
/home/alecop01/toolchain/src/gcc/gcc/tree-vectorizer.c:1094
0x10a43b6 try_vectorize_loop
/home/alecop01/toolchain/src/gcc/gcc/tree-vectorizer.c:1151
0x10a46f0 vectorize_loops()
/home/alecop01/toolchain/src/gcc/gcc/tree-vectorizer.c:1230
0xf392f7 execute
/home/alecop01/toolchain/src/gcc/gcc/tree-ssa-loop.c:414
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.