https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90007
Bug ID: 90007 Summary: [9 Regression] ICE in extract_constrain_insn_cached, at recog.c:2223 Product: gcc Version: 9.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: rtl-optimization Assignee: unassigned at gcc dot gnu.org Reporter: asolokha at gmx dot com Target Milestone: --- Target: x86_64-pc-linux-gnu gcc-9.0.0-alpha20190407 snapshot (r270192) ICEs when compiling the following testcase w/ -march=bdver1 (=bdver2) -mfpmath=387 -O1 (-O2, -O3, -Ofast) -fschedule-insns -fselective-scheduling: void qj (int b9, int r9, int k4, int k0, int e7) { (void) b9; (void) r9; (void) k4; while (!!k0 == e7 * 1.1) { } } % x86_64-pc-linux-gnu-gcc-9.0.0-alpha20190407 -march=bdver1 -mfpmath=387 -O1 -fschedule-insns -fselective-scheduling -c nhzbpwxv.c nhzbpwxv.c: In function 'qj': nhzbpwxv.c:11:1: error: insn does not satisfy its constraints: 11 | } | ^ (insn 39 0 0 (set (reg:DF 95) (float:DF (reg:SI 36 r8 [ e7 ]))) 172 {*floatsidf2} (expr_list:REG_DEAD (reg:SI 98) (nil))) during RTL pass: sched1 nhzbpwxv.c:11:1: internal compiler error: in extract_constrain_insn_cached, at recog.c:2223 0x66a363 _fatal_insn(char const*, rtx_def const*, char const*, int, char const*) /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190407/work/gcc-9-20190407/gcc/rtl-error.c:108 0x66a389 _fatal_insn_not_found(rtx_def const*, char const*, int, char const*) /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190407/work/gcc-9-20190407/gcc/rtl-error.c:118 0x6685a6 extract_constrain_insn_cached(rtx_insn*) /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190407/work/gcc-9-20190407/gcc/recog.c:2223 0x12b020f get_attr_type(rtx_insn*) /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190407/work/gcc-9-20190407/gcc/config/i386/i386.md:2288 0x12d6805 internal_dfa_insn_code_bdver1(rtx_insn*) /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190407/work/gcc-9-20190407/gcc/config/i386/i386.md:15343 0x12c4100 dfa_insn_code /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190407/work/build/gcc/insn-automata.c:158875 0x12c4100 state_transition(void*, rtx_def*) /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190407/work/build/gcc/insn-automata.c:158890 0xd0b74a estimate_insn_cost /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190407/work/gcc-9-20190407/gcc/sel-sched.c:4293 0xd17aab get_expr_cost /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190407/work/gcc-9-20190407/gcc/sel-sched.c:4324 0xd17aab choose_best_insn /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190407/work/gcc-9-20190407/gcc/sel-sched.c:4353 0xd17aab find_best_expr /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190407/work/gcc-9-20190407/gcc/sel-sched.c:4403 0xd17aab fill_insns /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190407/work/gcc-9-20190407/gcc/sel-sched.c:5550 0xd17aab schedule_on_fences /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190407/work/gcc-9-20190407/gcc/sel-sched.c:7368 0xd17aab sel_sched_region_2 /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190407/work/gcc-9-20190407/gcc/sel-sched.c:7506 0xd185e8 sel_sched_region_1 /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190407/work/gcc-9-20190407/gcc/sel-sched.c:7548 0xd1a111 sel_sched_region(int) /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190407/work/gcc-9-20190407/gcc/sel-sched.c:7649 0xd1a111 sel_sched_region(int) /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190407/work/gcc-9-20190407/gcc/sel-sched.c:7634 0xd1acc8 run_selective_scheduling() /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190407/work/gcc-9-20190407/gcc/sel-sched.c:7735 0xcf915d rest_of_handle_sched /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190407/work/gcc-9-20190407/gcc/sched-rgn.c:3717 0xcf915d execute /var/tmp/portage/sys-devel/gcc-9.0.0_alpha20190407/work/gcc-9-20190407/gcc/sched-rgn.c:3827