https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67643
Bug ID: 67643 Summary: [SH] ICE with ISR and -mfmovd Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: olegendo at gcc dot gnu.org Target Milestone: --- Target: sh*-*-* The following ... extern void foo (void); void __attribute__((interrupt_handler)) isr2 (void) { foo (); } compiled with -m4a -ml -mfmovd -O2 results in: sh_tmp2.cpp: In function 'isr2': sh_tmp2.cpp:11:1: error: unrecognizable insn: } ^ (insn 15 14 16 2 (parallel [ (set (reg:SI 151 ) (mem/c:SI (reg:SI 1 r1) [2 __fpscr_values+4 S4 A32])) (set (reg:SI 155 fpscr1) (unspec_volatile:SI [ (const_int 0 [0]) ] UNSPECV_FPSCR_STAT)) (set (reg:SI 154 fpscr0) (unspec_volatile:SI [ (const_int 0 [0]) ] UNSPECV_FPSCR_MODES)) ]) sh_tmp2.cpp:9 -1 (expr_list:REG_UNUSED (reg:SI 155 fpscr1) (expr_list:REG_UNUSED (reg:SI 151 ) (nil)))) sh_tmp2.cpp:11:1: internal compiler error: in extract_insn, at recog.c:2297 0xa18333 _fatal_insn(char const*, rtx_def const*, char const*, int, char const*) ../../gcc-trunk2/gcc/rtl-error.c:109 0xa18369 _fatal_insn_not_found(rtx_def const*, char const*, int, char const*) ../../gcc-trunk2/gcc/rtl-error.c:117 0x9e0c0f extract_insn(rtx_insn*) ../../gcc-trunk2/gcc/recog.c:2297 0x9e1d28 extract_constrain_insn(rtx_insn*) ../../gcc-trunk2/gcc/recog.c:2198 0x9e540e copyprop_hardreg_forward_1 ../../gcc-trunk2/gcc/regcprop.c:778 0x9e618d execute ../../gcc-trunk2/gcc/regcprop.c:1268 Please submit a full bug report,