https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81747

            Bug ID: 81747
           Summary: [8 Regression] ICE in operator[], at vec.h:749
           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*

At least gcc-8.0.0-alpha20170730 and gcc-8.0.0-alpha20170806 snapshots ICE when
compiling the following snippet w/ -O2 (-O3, -Ofast) -funroll-loops:

int
ij (int pu, int x5)
{
  int u7 = 3;
  unsigned int fa;

  for (fa = 533090919; fa < 1; ++fa)
    {
      pu = 1;
      while (pu != 0)
      {
 ed:
        u7 %= 1;
      }
    }

  if (x5 < 1)
    {
      if (fa != 3062256262 && u7 != 0)
        goto ed;
      return x5;
    }
}

% powerpc-e300c3-linux-gnu-gcc-8.0.0-alpha20170806 -O2 -funroll-loops -c -w
whfolj7o.c   
during RTL pass: cse2
whfolj7o.c: In function 'ij':
whfolj7o.c:23:1: internal compiler error: in operator[], at vec.h:749
 }
 ^
0x135560c vec<edge_def*, va_gc, vl_embed>::operator[](unsigned int)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20170806/work/gcc-8-20170806/gcc/vec.h:749
0x135560c cse_find_path
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20170806/work/gcc-8-20170806/gcc/cse.c:6333
0x135560c cse_main
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20170806/work/gcc-8-20170806/gcc/cse.c:6729
0x13557a6 rest_of_handle_cse2
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20170806/work/gcc-8-20170806/gcc/cse.c:7632
0x13557a6 execute
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20170806/work/gcc-8-20170806/gcc/cse.c:7685

Reply via email to