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

Reply via email to