https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96791
Bug ID: 96791
Summary: ICE in convert_mode_scalar, at expr.c:412
Product: gcc
Version: 11.0
Status: UNCONFIRMED
Keywords: ice-on-valid-code
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: asolokha at gmx dot com
Target Milestone: ---
Target: powerpc-*-linux-gnu
gcc-11.0.0-alpha20200823 snapshot (g:87c753ac241f25d222d46ba1ac66ceba89d6a200)
ICEs when compiling the following testcase w/ -mcpu=power10 -O1 -fno-tree-sra:
struct i0 {
int ul;
long long int b5;
int lo;
long long int rc;
};
struct i0 l3;
long int
w1 (long int xi)
{
struct i0 eq = l3;
return eq.rc | xi;
}
% powerpc-e300c3-linux-gnu-gcc-11.0.0 -mcpu=power10 -O1 -fno-tree-sra -c
xwocdp87.c
during RTL pass: dse1
xwocdp87.c: In function 'w1':
xwocdp87.c:16:1: internal compiler error: in convert_mode_scalar, at expr.c:412
16 | }
| ^
0x5ef062 convert_mode_scalar
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/expr.c:412
0xa2da8b convert_modes(machine_mode, machine_mode, rtx_def*, int)
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/expr.c:737
0xa0bde5 extract_low_bits(machine_mode, machine_mode, rtx_def*)
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/expmed.c:2421
0x15b01bd get_stored_val
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/dse.c:1932
0x15b05b1 replace_read
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/dse.c:2000
0x15b1b2e check_mem_read_rtx
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/dse.c:2282
0x15b1b2e check_mem_read_use
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/dse.c:2388
0xd21c0d note_uses(rtx_def**, void (*)(rtx_def**, void*), void*)
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/rtlanal.c:2030
0x15b3609 scan_insn
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/dse.c:2497
0x15b3609 dse_step1
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/dse.c:2762
0x15b3609 rest_of_handle_dse
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/dse.c:3679
0x15b3609 execute
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/dse.c:3740