https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84206
Bug ID: 84206 Summary: ICE in get_all_loop_exits, at sel-sched-ir.h:1138 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: --- Target: powerpc-*-linux-gnu, powerpcspe-*-linux-gnu gcc-8.0.0-alpha20180204 snapshot (r257367) ICEs when compiling the following snippet w/ -O2 -fselective-scheduling -fsel-sched-pipelining -fsel-sched-pipelining-outer-loops -fno-forward-propagate -fno-tree-fre: long long unsigned int ao; int hk; void b8 (void) { int *w9; c8: ao = 0; w9 = &ao; for (;;) for (hk = 0; hk < 1; ++hk) for (ao = 0; ao < 4; ++ao) { int f4 = (ao != 0) ? *w9 : hk; if (f4 != 0) goto c8; } } % powerpc-e300c3-linux-gnu-gcc-8.0.0-alpha20180204 -O2 -fselective-scheduling -fsel-sched-pipelining -fsel-sched-pipelining-outer-loops -fno-forward-propagate -fno-tree-fre -w -c isyp3qtx.c during RTL pass: sched1 isyp3qtx.c: In function 'b8': isyp3qtx.c:21:1: internal compiler error: in get_all_loop_exits, at sel-sched-ir.h:1138 } ^ 0xbf8740 get_all_loop_exits /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180204/work/gcc-8-20180204/gcc/sel-sched-ir.h:1138 0xbf83ae get_all_loop_exits /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180204/work/gcc-8-20180204/gcc/sel-sched-ir.h:1164 0xbfb7c5 _succ_iter_cond /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180204/work/gcc-8-20180204/gcc/sel-sched-ir.h:1302 0xbfbb2b init_seqno_1 /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180204/work/gcc-8-20180204/gcc/sel-sched.c:6743 0xbfbae9 init_seqno_1 /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180204/work/gcc-8-20180204/gcc/sel-sched.c:6755 0xbfbae9 init_seqno_1 /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180204/work/gcc-8-20180204/gcc/sel-sched.c:6755 0xbfbfd1 init_seqno /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180204/work/gcc-8-20180204/gcc/sel-sched.c:6795 0xc080f1 sel_sched_region_1 /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180204/work/gcc-8-20180204/gcc/sel-sched.c:7529 0xc080f1 sel_sched_region(int) /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180204/work/gcc-8-20180204/gcc/sel-sched.c:7642 0xc08841 run_selective_scheduling() /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180204/work/gcc-8-20180204/gcc/sel-sched.c:7718 0xbdf634 rest_of_handle_sched /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180204/work/gcc-8-20180204/gcc/sched-rgn.c:3715 0xbdf634 execute /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180204/work/gcc-8-20180204/gcc/sched-rgn.c:3825