[Bug target/100563] New: [10/11/12 Regression] arm: ICE in arm_gen_dicompare_reg, at config/arm/arm.c:15976
acoplan at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed May 12 09:16:22 GMT 2021
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100563
Bug ID: 100563
Summary: [10/11/12 Regression] arm: ICE in
arm_gen_dicompare_reg, at config/arm/arm.c:15976
Product: gcc
Version: 12.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:
$ gcc/xgcc -v
Using built-in specs.
COLLECT_GCC=gcc/xgcc
Target: arm-eabi
Configured with: /home/alecop01/toolchain/src/gcc/configure
--prefix=/data_sdb/toolchain/cc1s/arm --enable-languages=c,c++
--disable-bootstrap --target=arm-eabi
Thread model: single
Supported LTO compression algorithms: zlib
gcc version 12.0.0 20210511 (experimental) (GCC)
$ cat test.c
unsigned long long e(void);
void f(int);
void a() {
short b = -1, c = (int)&b;
unsigned long long d = e();
f(b >= d);
}
$ gcc/xgcc -B gcc -c test.c -Og
during RTL pass: expand
test.c: In function ‘a’:
test.c:6:3: internal compiler error: in arm_gen_dicompare_reg, at
config/arm/arm.c:15976
6 | f(b >= d);
| ^~~~~~~~~
0x112525f arm_gen_dicompare_reg
/home/alecop01/toolchain/src/gcc/gcc/config/arm/arm.c:15976
0x112525f arm_gen_compare_reg(rtx_code, rtx_def*, rtx_def*, rtx_def*)
/home/alecop01/toolchain/src/gcc/gcc/config/arm/arm.c:16189
0x151ab0a gen_cstore_cc(rtx_def*, rtx_def*, rtx_def*, rtx_def*)
/home/alecop01/toolchain/src/gcc/gcc/config/arm/arm.md:7973
0x151aded gen_cstorehf4(rtx_def*, rtx_def*, rtx_def*, rtx_def*)
/home/alecop01/toolchain/src/gcc/gcc/config/arm/arm.md:8192
0xbe5b98 maybe_expand_insn(insn_code, unsigned int, expand_operand*)
/home/alecop01/toolchain/src/gcc/gcc/optabs.c:7813
0x921e51 emit_cstore(rtx_def*, insn_code, rtx_code, machine_mode, machine_mode,
int, rtx_def*, rtx_def*, int, machine_mode)
/home/alecop01/toolchain/src/gcc/gcc/expmed.c:5506
0x922780 emit_store_flag_1
/home/alecop01/toolchain/src/gcc/gcc/expmed.c:5755
0x922cf1 emit_store_flag(rtx_def*, rtx_code, rtx_def*, rtx_def*, machine_mode,
int, int)
/home/alecop01/toolchain/src/gcc/gcc/expmed.c:6015
0x9238f8 emit_store_flag_force(rtx_def*, rtx_code, rtx_def*, rtx_def*,
machine_mode, int, int)
/home/alecop01/toolchain/src/gcc/gcc/expmed.c:6155
0x932be0 do_store_flag
/home/alecop01/toolchain/src/gcc/gcc/expr.c:12655
0x9336b8 expand_expr_real_2(separate_ops*, rtx_def*, machine_mode,
expand_modifier)
/home/alecop01/toolchain/src/gcc/gcc/expr.c:9838
0x93b59c expand_expr_real_1(tree_node*, rtx_def*, machine_mode,
expand_modifier, rtx_def**, bool)
/home/alecop01/toolchain/src/gcc/gcc/expr.c:10386
0x933807 expand_expr
/home/alecop01/toolchain/src/gcc/gcc/expr.h:301
0x933807 expand_expr_real_2(separate_ops*, rtx_def*, machine_mode,
expand_modifier)
/home/alecop01/toolchain/src/gcc/gcc/expr.c:8954
0x93b59c expand_expr_real_1(tree_node*, rtx_def*, machine_mode,
expand_modifier, rtx_def**, bool)
/home/alecop01/toolchain/src/gcc/gcc/expr.c:10386
0x7d71a9 expand_normal
/home/alecop01/toolchain/src/gcc/gcc/expr.h:307
0x7d71a9 precompute_register_parameters
/home/alecop01/toolchain/src/gcc/gcc/calls.c:988
0x7d71a9 expand_call(tree_node*, rtx_def*, int)
/home/alecop01/toolchain/src/gcc/gcc/calls.c:4450
0x939c5b expand_expr_real_1(tree_node*, rtx_def*, machine_mode,
expand_modifier, rtx_def**, bool)
/home/alecop01/toolchain/src/gcc/gcc/expr.c:11408
0x7f27b3 expand_expr
/home/alecop01/toolchain/src/gcc/gcc/expr.h:301
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.
The issue occurs for a wide variety of -march options, including -march=armv8-a
and -march=armv8.1-m.main.
More information about the Gcc-bugs
mailing list