https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99216
Bug ID: 99216 Summary: ICE in aarch64_sve::function_expander::expand() with LTO Product: gcc Version: 11.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: acoplan at gcc dot gnu.org Target Milestone: --- The following fails: $ cat test.cc #include <arm_sve.h> bool a; int main() { a = svaddv(svptrue_b8(), svdup_s8(0)); } $ aarch64-linux-gnu-gcc -march=armv8.2-a+sve -flto test.cc during RTL pass: expand test.cc: In function ‘main’: test.cc:3:24: internal compiler error: in operator[], at vec.h:890 3 | int main() { a = svaddv(svptrue_b8(), svdup_s8(0)); } | ^ 0x11a1562 vec<rtx_def*, va_heap, vl_embed>::operator[](unsigned int) /home/alecop01/toolchain/src/gcc/gcc/vec.h:890 0x11a1562 vec<rtx_def*, va_heap, vl_ptr>::operator[](unsigned int) /home/alecop01/toolchain/src/gcc/gcc/vec.h:1461 0x11a1562 expand /home/alecop01/toolchain/src/gcc/gcc/config/aarch64/aarch64-sve-builtins-base.cc:237 0x1196101 aarch64_sve::function_expander::expand() /home/alecop01/toolchain/src/gcc/gcc/config/aarch64/aarch64-sve-builtins.cc:3318 0x1197242 aarch64_sve::expand_builtin(unsigned int, tree_node*, rtx_def*) /home/alecop01/toolchain/src/gcc/gcc/config/aarch64/aarch64-sve-builtins.cc:3607 0x10f62eb aarch64_expand_builtin /home/alecop01/toolchain/src/gcc/gcc/config/aarch64/aarch64.c:13568 0x74b79a expand_builtin(tree_node*, rtx_def*, rtx_def*, machine_mode, int) /home/alecop01/toolchain/src/gcc/gcc/builtins.c:9518 0x8c51cc expand_expr_real_1(tree_node*, rtx_def*, machine_mode, expand_modifier, rtx_def**, bool) /home/alecop01/toolchain/src/gcc/gcc/expr.c:11276 0x8c6779 expand_expr_real(tree_node*, rtx_def*, machine_mode, expand_modifier, rtx_def**, bool) /home/alecop01/toolchain/src/gcc/gcc/expr.c:8513 0x8cfc1c store_expr(tree_node*, rtx_def*, int, bool, bool) /home/alecop01/toolchain/src/gcc/gcc/expr.c:5886 0x8d1927 expand_assignment(tree_node*, tree_node*, bool) /home/alecop01/toolchain/src/gcc/gcc/expr.c:5622 0x780d7c expand_call_stmt /home/alecop01/toolchain/src/gcc/gcc/cfgexpand.c:2838 0x780d7c expand_gimple_stmt_1 /home/alecop01/toolchain/src/gcc/gcc/cfgexpand.c:3844 0x780d7c expand_gimple_stmt /home/alecop01/toolchain/src/gcc/gcc/cfgexpand.c:4008 0x78a5a7 expand_gimple_basic_block /home/alecop01/toolchain/src/gcc/gcc/cfgexpand.c:6045 0x78bc61 execute /home/alecop01/toolchain/src/gcc/gcc/cfgexpand.c:6729 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. lto-wrapper: fatal error: aarch64-linux-gnu-gcc returned 1 exit status compilation terminated. /home/alecop01/toolchain/build-aarch64-linux-gnu/install/bin/../lib/gcc/aarch64-linux-gnu/11.0.0/../../../../aarch64-linux-gnu/bin/ld: error: lto-wrapper failed collect2: error: ld returned 1 exit status