https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107830
Bug ID: 107830
Summary: [13 Regression] ICE in gen_aarch64_bitmask_udiv3, at
./insn-opinit.h:813
Product: gcc
Version: 13.0
Status: UNCONFIRMED
Keywords: ice-on-valid-code, openmp
Severity: normal
Priority: P3
Component: testsuite
Assignee: unassigned at gcc dot gnu.org
Reporter: asolokha at gmx dot com
Target Milestone: ---
Target: aarch64-linux-gnu
gcc 13.0.0 20221120 snapshot (g:a16a5460447eaaff0b4468064e4d7b1cc8fc42eb) ICEs
when compiling the following testcase, reduced from
libgomp/testsuite/libgomp.c-c++-common/for-15.c, w/ -march=armv9-a -Os
-fopenmp:
void
f2 (int *a)
{
unsigned int i;
#pragma omp simd
for (i = 0; i < 4; ++i)
a[i / 3] -= 4;
}
% aarch64-linux-gnu-gcc-13 -march=armv9-a -Os -fopenmp -c t3uokd3k.c
during RTL pass: expand
t3uokd3k.c: In function 'f2':
t3uokd3k.c:8:9: internal compiler error: in gen_aarch64_bitmask_udiv3, at
./insn-opinit.h:813
8 | a[i / 3] -= 4;
| ~~^~~
0x7e5c72 gen_aarch64_bitmask_udiv3(machine_mode, rtx_def*, rtx_def*, rtx_def*)
./insn-opinit.h:813
0x7e5c72 gen_aarch64_bitmask_udiv3(machine_mode, rtx_def*, rtx_def*, rtx_def*)
./insn-opinit.h:810
0x7e5c72 aarch64_vectorize_can_special_div_by_constant(tree_code, tree_node*,
generic_wide_int<wide_int_storage>, rtx_def**, rtx_def*, rtx_def*)
/var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20221120/work/gcc-13-20221120/gcc/config/aarch64/aarch64.cc:24339
0xb26cca expand_divmod(int, tree_code, machine_mode, tree_node*, tree_node*,
rtx_def*, rtx_def*, rtx_def*, int, optab_methods)
/var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20221120/work/gcc-13-20221120/gcc/expmed.cc:4383
0xb2a706 expand_expr_divmod
/var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20221120/work/gcc-13-20221120/gcc/expr.cc:9198
0xb349ab expand_expr_real_2(separate_ops*, rtx_def*, machine_mode,
expand_modifier)
/var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20221120/work/gcc-13-20221120/gcc/expr.cc:9868
0xa0eac0 expand_gimple_stmt_1
/var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20221120/work/gcc-13-20221120/gcc/cfgexpand.cc:3983
0xa0eac0 expand_gimple_stmt
/var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20221120/work/gcc-13-20221120/gcc/cfgexpand.cc:4044
0xa14e2e expand_gimple_basic_block
/var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20221120/work/gcc-13-20221120/gcc/cfgexpand.cc:6096
0xa16817 execute
/var/tmp/portage/cross-aarch64-linux-gnu/gcc-13.0.0_p20221120/work/gcc-13-20221120/gcc/cfgexpand.cc:6822