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

            Bug ID: 86390
           Summary: ICE in output_branch, at config/sh/sh.c:2740 for
                    sh-linux
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: marxin at gcc dot gnu.org
                CC: aoliva at gcc dot gnu.org
  Target Milestone: ---

Following causes ICE:

$ cat ice.c
typedef int a;
int *b;
a c, d;
void e() {
  a f, g;
  while (d)
    while (1) {
      while (1)
        if (g)
          break;
      c = b[f];
      f++;
      if (c)
        break;
      f++;
      while (1) {
        if (f > g)
          break;
        c = b[g];
        if (c) {
          g--;
          continue;
        }
        break;
      }
      if (f > g)
        break;
    }
}

$ /dev/shm/gcc-batch-builds/objs/sh-linux/gcc/xg++ -B
/dev/shm/gcc-batch-builds/objs/sh-linux/gcc/ -O2 -S
/home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/params/blocksort-part.c -o
/tmp/tmp1xxph4eh -falign-jumps=1024
during RTL pass: final
/home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/params/blocksort-part.c: In
function ‘void fallbackQSort3(UInt32*, UInt32*, Int32, Int32)’:
/home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/params/blocksort-part.c:199:1:
internal compiler error: in output_branch, at config/sh/sh.c:2740
 }
 ^
0x7ffff69c311a __libc_start_main
        ../csu/libc-start.c:308
0x862669 ???
        ../sysdeps/x86_64/start.S:120

Reply via email to