https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93974
Bug ID: 93974
Summary: [9/10 Regression] ICE in decompose_normal_address, at
rtlanal.c:6403 on powerpc64le-linux-gnu
Product: gcc
Version: 9.2.1
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: rtl-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: doko at debian dot org
Target Milestone: ---
seen with trunk 20200228, on powerpc64le-linux-gnu, hardening flags and -fPIE
turned on by default.
$ cat lpe-extrude.ii
class a {
double b[2];
public:
a();
};
class c {
public:
typedef a d;
d m_fn1() {
a e;
return e;
}
};
template <typename f> void operator+(f, typename f::d);
void g() {
c connector;
for (;;) {
c cut;
a h = cut.m_fn1();
connector + h;
}
}
$ g++ -c -O3 lpe-extrude.ii
during RTL pass: reload
lpe-extrude.ii: In function ‘void g()’:
lpe-extrude.ii:23:1: internal compiler error: in decompose_normal_address, at
rtlanal.c:6384
23 | }
| ^
0x109c511f decompose_normal_address
../../src/gcc/rtlanal.c:6384
0x109c511f decompose_address(address_info*, rtx_def**, machine_mode, unsigned
char, rtx_code)
../../src/gcc/rtlanal.c:6461
0x1084499f process_address_1
../../src/gcc/lra-constraints.c:3363
0x10846d1b process_address
../../src/gcc/lra-constraints.c:3637
0x10846d1b curr_insn_transform
../../src/gcc/lra-constraints.c:3952
0x1084c7af lra_constraints(bool)
../../src/gcc/lra-constraints.c:5025
0x1083537f lra(_IO_FILE*)
../../src/gcc/lra.c:2437
0x107da43b do_reload
../../src/gcc/ira.c:5523
0x107da43b execute
../../src/gcc/ira.c:5709
Please submit a full bug report,
with preprocessed source if appropriate.