https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82795
Bug ID: 82795 Summary: [8 Regression] ICE in predicate_mem_writes, at tree-if-conv.c:2251 Product: gcc Version: 8.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: asolokha at gmx dot com Target Milestone: --- Target: x86_64-unknown-linux-gnu gcc-8.0.0-alpha20171029 snapshot (r254205) ICEs when compiling the following snippet w/ -mavx2 -O3 or -mavx2 -Ofast: void sj (int qh, int rn, int *by) { for (;;) if (qh != 0) { int dc; for (dc = 0; dc < 17; ++dc) { int nn; nn = (rn != 0) ? qh : dc; if (nn != 0) qh = nn; else qh = (qh != 0) ? *by : dc; } } } % gcc-8.0.0-alpha20171029 -mavx2 -O3 -w -c w6osxlfx.c during GIMPLE pass: ifcvt w6osxlfx.c: In function 'sj': w6osxlfx.c:2:1: internal compiler error: in predicate_mem_writes, at tree-if-conv.c:2251 sj (int qh, int rn, int *by) ^~ 0x5dd228 predicate_mem_writes /var/tmp/portage/sys-devel/gcc-8.0.0_alpha20171029/work/gcc-8-20171029/gcc/tree-if-conv.c:2251 0x5dd228 combine_blocks /var/tmp/portage/sys-devel/gcc-8.0.0_alpha20171029/work/gcc-8-20171029/gcc/tree-if-conv.c:2377 0xcd7337 tree_if_conversion(loop*) /var/tmp/portage/sys-devel/gcc-8.0.0_alpha20171029/work/gcc-8-20171029/gcc/tree-if-conv.c:2885 0xcd810e execute /var/tmp/portage/sys-devel/gcc-8.0.0_alpha20171029/work/gcc-8-20171029/gcc/tree-if-conv.c:2963