https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84178
Bug ID: 84178 Summary: [7/8 Regression] ICE in release_bb_predicate Product: gcc Version: 7.3.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: asolokha at gmx dot com Target Milestone: --- gcc-8.0.0-alpha20180128 snapshot (r257131) and gcc 7.3.0 ICE when compiling the following snippet w/ -O3 -fno-tree-forwprop: int zy, h4; void r8 (long int mu, int *jr, int *fi, short int dv) { do { int tx; tx = !!h4 ? (zy / h4) : 1; mu = tx; *jr = (((unsigned char) mu > (254 >> dv)) ? 0 : (unsigned char) tx) + *fi; } while (*jr == 0); r8 (mu, jr, fi, 1); } % gcc-8.0.0-alpha20180128 -O3 -fno-tree-forwprop -c rhoqpgf1.c during GIMPLE pass: ifcvt rhoqpgf1.c: In function 'r8.constprop': rhoqpgf1.c:4:1: internal compiler error: in release_bb_predicate, at tree-if-conv.c:286 r8 (long int mu, int *jr, int *fi, short int dv) ^~ 0x664d68 release_bb_predicate /var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180128/work/gcc-8-20180128/gcc/tree-if-conv.c:286 0x664d68 free_bb_predicate /var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180128/work/gcc-8-20180128/gcc/tree-if-conv.c:300 0x664d68 tree_if_conversion(loop*) /var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180128/work/gcc-8-20180128/gcc/tree-if-conv.c:2897 0xd092e5 execute /var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180128/work/gcc-8-20180128/gcc/tree-if-conv.c:2962 gcc 7 ICEs w/ different backtrace, though.