This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c/47899] New: ICE in get_loop_body, at cfgloop.c:831
- From: "regehr at cs dot utah.edu" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Sat, 26 Feb 2011 03:44:43 +0000
- Subject: [Bug c/47899] New: ICE in get_loop_body, at cfgloop.c:831
- Auto-submitted: auto-generated
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47899
Summary: ICE in get_loop_body, at cfgloop.c:831
Product: gcc
Version: 4.6.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: regehr@cs.utah.edu
CC: chenyang@cs.utah.edu
Host: i686-pc-linux-gnu
Target: i686-pc-linux-gnu
Build: i686-pc-linux-gnu
regehr@home:~/volatile/bugs/tmp351$ current-gcc -v
Using built-in specs.
COLLECT_GCC=current-gcc
COLLECT_LTO_WRAPPER=/mnt/z/z/compiler-install/gcc-r170512-install/libexec/gcc/i686-pc-linux-gnu/4.6.0/lto-wrapper
Target: i686-pc-linux-gnu
Configured with: ../configure --with-libelf=/usr/local --enable-lto
--prefix=/mnt/z/z/compiler-install/gcc-r170512-install
--program-prefix=r170512- --enable-languages=c,c++
Thread model: posix
gcc version 4.6.0 20110226 (experimental) (GCC)
regehr@home:~/volatile/bugs/tmp351$ current-gcc -O -funroll-loops small.c -o
small
small.c: In function âmainâ:
small.c:53:1: internal compiler error: in get_loop_body, at cfgloop.c:831
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
regehr@home:~/volatile/bugs/tmp351$ cat small.c
static unsigned
foo (unsigned ui1, unsigned ui2)
{
return ui1 - ui2;
}
static unsigned g_5[3][1][9] = {
};
static short g_17;
static short *g_80[4] = {
&g_17, &g_17, &g_17, &g_17
};
static short **g_79[5] = {
&g_80[1], &g_80[1], &g_80[1], &g_80[1], &g_80[1]
};
static int g_132;
static short ***volatile g = &g_79[1];
static unsigned g_566;
static void func_1 (void)
{
lbl_777:*g;
for (; g; g += 0)
for (; g; g += 1)
{
for (;;)
{
}
}
lbl_802:if (g_566)
goto lbl_777;
for (g_132 = 0; g_132 >= 0; g_132 = foo (g_132, 1))
{
if (g_5[+3][+1][+9] || **g)
{
for (; g; g += 1)
{
}
}
else
goto lbl_802;
}
}
int main (int argc, char *argv[])
{
func_1 ();
}