https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84659
Bug ID: 84659
Summary: [8 Regression] ICE: Segmentation fault (stack overflow
in bb_note) w/ selective scheduling
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
gcc-8.0.0-alpha20180225 snapshot (r257975) ICEs when compiling the following
snippet w/ -O2 -fselective-scheduling -fsel-sched-pipelining
-fno-split-wide-types -fno-strict-aliasing -fno-tree-dce:
void
jk (int **lq, int *k4, long long int qv, int od)
{
while (**lq < 1)
{
int uo;
uo = ((od == 0) ? qv : *k4) != 1;
++**lq;
}
for (;;)
{
}
}
% powerpc-e300c3-linux-gnu-gcc-8.0.0-alpha20180225 -O2 -fselective-scheduling
-fsel-sched-pipelining -fno-split-wide-types -fno-strict-aliasing -fno-tree-dce
-c l87hqbdd.c
powerpc-e300c3-linux-gnu-gcc-8.0.0-alpha20180225: internal compiler error:
Segmentation fault signal terminated program cc1
==12735== Stack overflow in thread #1: can't grow stack to 0x1ffe801000
==12735== Stack overflow in thread #1: can't grow stack to 0x1ffe801000
==12735== Can't extend stack to 0x1ffe801098 during signal delivery for thread
1:
==12735== no stack segment
==12735==
==12735== Process terminating with default action of signal 11 (SIGSEGV)
==12735== Access not within mapped region at address 0x1FFE801098
==12735== Stack overflow in thread #1: can't grow stack to 0x1ffe801000
==12735== at 0x749EC7: bb_note(basic_block_def*) (cfgrtl.c:667)
==12735== If you believe this happened as a result of a stack
==12735== overflow in your program's main thread (unlikely but
==12735== possible), you can try to increase the size of the
==12735== main thread stack using the --main-stacksize= flag.
==12735== The main thread stack size used in this run was 67108864.
==12735== Stack overflow in thread #1: can't grow stack to 0x1ffe801000
==12735==
==12735== Process terminating with default action of signal 11 (SIGSEGV)
==12735== Access not within mapped region at address 0x1FFE801F58
==12735== Stack overflow in thread #1: can't grow stack to 0x1ffe801000
==12735== at 0x4026660: _vgnU_freeres (in
/usr/lib64/valgrind/vgpreload_core-amd64-linux.so)
==12735== If you believe this happened as a result of a stack
==12735== overflow in your program's main thread (unlikely but
==12735== possible), you can try to increase the size of the
==12735== main thread stack using the --main-stacksize= flag.
==12735== The main thread stack size used in this run was 67108864.