https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83726
Bug ID: 83726
Summary: [8 Regression] ICE: in final_scan_insn, at
final.c:3063
Product: gcc
Version: 8.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: doko at gcc dot gnu.org
Target Milestone: ---
seen with r256272 on aarch64-linux-gnu, building hyphy. worked around with -O2
$ cat HYDialogDefs.ii
typedef struct { long a, b, bottom, c; } d;
class e {
public:
e(d, bool);
};
long f;
void g() {
d h = {};
h.c = 70;
for (; f;)
new e(h, 0);
h.bottom = 0;
}
$ g++ -std=gnu++98 -O3 -c HYDialogDefs.ii
HYDialogDefs.ii: In function 'void g()':
HYDialogDefs.ii:13:1: error: could not split insn
}
^
(insn:TI 20 18 95 (set (reg:TI 1 x1 [101])
(const_wide_int 0x460000000000000000)) "HYDialogDefs.ii":11 50
{*movti_aarch64}
(nil))
during RTL pass: final
HYDialogDefs.ii:13:1: internal compiler error: in final_scan_insn, at
final.c:3063
0x5607bb _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
../../src/gcc/rtl-error.c:108
0x8413bf final_scan_insn(rtx_insn*, _IO_FILE*, int, int, int*)
../../src/gcc/final.c:3063
0x84175f final(rtx_insn*, _IO_FILE*, int)
../../src/gcc/final.c:2065
0x841c6f rest_of_handle_final
../../src/gcc/final.c:4551
0x841c6f execute
../../src/gcc/final.c:4625
Please submit a full bug report,
with preprocessed source if appropriate.