https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83886
Bug ID: 83886 Summary: [8 Regression] ICE in cfg_layout_redirect_edge_and_branch, at cfgrtl.c:4433 Product: gcc Version: 8.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: --- gcc-8.0.0-alpha20180114 snapshot (r256677) ICEs when compiling the following snippet w/ -O2 -floop-parallelize-all -fmodulo-sched -fno-tree-forwprop -fno-tree-loop-im: int ga, as; void xj (int sm, int vs) { if (0) for (;;) while (sm < 1) for (as = 0; as < 1; ++as) { o3: ; } while (vs < 1) { for (ga = 0; ga < 9; ++ga) { } ++vs; } goto o3; } % gcc-8.0.0-alpha20180114 -O2 -floop-parallelize-all -fmodulo-sched -fno-tree-forwprop -fno-tree-loop-im -c pa4nrhpq.c during RTL pass: sms pa4nrhpq.c: In function 'xj': pa4nrhpq.c:25:1: internal compiler error: in cfg_layout_redirect_edge_and_branch, at cfgrtl.c:4433 } ^ 0x5ce23b cfg_layout_redirect_edge_and_branch /var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180114/work/gcc-8-20180114/gcc/cfgrtl.c:4433 0x8990f8 cfg_layout_redirect_edge_and_branch_force /var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180114/work/gcc-8-20180114/gcc/cfgrtl.c:4443 0x8825b3 redirect_edge_and_branch_force(edge_def*, basic_block_def*) /var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180114/work/gcc-8-20180114/gcc/cfghooks.c:486 0x882fbd make_forwarder_block(basic_block_def*, bool (*)(edge_def*), void (*)(basic_block_def*)) /var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180114/work/gcc-8-20180114/gcc/cfghooks.c:893 0x88b74b merge_latch_edges /var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180114/work/gcc-8-20180114/gcc/cfgloop.c:780 0x88b74b disambiguate_multiple_latches /var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180114/work/gcc-8-20180114/gcc/cfgloop.c:831 0x88b74b disambiguate_loops_with_multiple_latches() /var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180114/work/gcc-8-20180114/gcc/cfgloop.c:844 0xb0aec4 apply_loop_flags /var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180114/work/gcc-8-20180114/gcc/loop-init.c:54 0xb0b8ec loop_optimizer_init(unsigned int) /var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180114/work/gcc-8-20180114/gcc/loop-init.c:123 0x14ce819 sms_schedule /var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180114/work/gcc-8-20180114/gcc/modulo-sched.c:1354 0x14d111f execute /var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180114/work/gcc-8-20180114/gcc/modulo-sched.c:3345