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