https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78610
Bug ID: 78610 Summary: [7 Regression] ICE in rtl_verify_bb_insns, at cfgrtl.c:2656 (error: flow control insn inside a basic block) Product: gcc Version: 7.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* gcc-7.0.0-alpha20161127 snapshot ICEs when compiling the following reduced snippet (copied from PR78342 comment 7) for 32-bit BE powerpc w/ -Os or -O2: unsigned int ao, gl; void ri (void) { for (;;) { if (ao != 1) ao /= 0; gl = 0; } } % powerpc-e300c3-linux-gnu-gcc-7.0.0-alpha20161127 -Os -w -c ygkelvbv.c ygkelvbv.c: In function 'ri': ygkelvbv.c:12:1: error: in basic block 4: } ^ ygkelvbv.c:12:1: error: flow control insn inside a basic block (insn 48 20 29 4 (trap_if (const_int 1 [0x1]) (const_int 0 [0])) 823 {trap} (nil)) ygkelvbv.c:12:1: internal compiler error: in rtl_verify_bb_insns, at cfgrtl.c:2656 0x2bc3f1b85f5 _fatal_insn(char const*, rtx_def const*, char const*, int, char const*) /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-7.0.0_alpha20161127/work/gcc-7-20161127/gcc/rtl-error.c:108 0x2bc3ed7fe87 rtl_verify_bb_insns /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-7.0.0_alpha20161127/work/gcc-7-20161127/gcc/cfgrtl.c:2656 0x2bc3ed7fe87 rtl_verify_flow_info_1 /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-7.0.0_alpha20161127/work/gcc-7-20161127/gcc/cfgrtl.c:2742 0x2bc3ed7fef4 rtl_verify_flow_info /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-7.0.0_alpha20161127/work/gcc-7-20161127/gcc/cfgrtl.c:2984 0x2bc3ed6c08d verify_flow_info() /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-7.0.0_alpha20161127/work/gcc-7-20161127/gcc/cfghooks.c:258 0x2bc3f142ea1 execute_function_todo /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-7.0.0_alpha20161127/work/gcc-7-20161127/gcc/passes.c:1977 0x2bc3f143ceb execute_todo /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-7.0.0_alpha20161127/work/gcc-7-20161127/gcc/passes.c:2015 Applying r242947 doesn't fix it.