This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c/48146] New: ICE tree check: expected ssa_name, have var_decl in has_zero_uses, at tree-flow-inline.h:342
- 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: Wed, 16 Mar 2011 03:15:17 +0000
- Subject: [Bug c/48146] New: ICE tree check: expected ssa_name, have var_decl in has_zero_uses, at tree-flow-inline.h:342
- Auto-submitted: auto-generated
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48146
Summary: ICE tree check: expected ssa_name, have var_decl in
has_zero_uses, at tree-flow-inline.h:342
Product: gcc
Version: 4.7.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/tmp004$ current-gcc -v
Using built-in specs.
COLLECT_GCC=current-gcc
COLLECT_LTO_WRAPPER=/mnt/z/z/compiler-install/gcc-r171019-install/libexec/gcc/i686-pc-linux-gnu/4.7.0/lto-wrapper
Target: i686-pc-linux-gnu
Configured with: ../configure --with-libelf=/usr/local --enable-lto
--prefix=/mnt/z/z/compiler-install/gcc-r171019-install
--program-prefix=r171019- --enable-languages=c,c++
Thread model: posix
gcc version 4.7.0 20110315 (experimental) (GCC)
regehr@home:~/volatile/bugs/tmp004$ current-gcc -c small.c -O2
small.c: In function âfunc_67â:
small.c:14:1: internal compiler error: tree check: expected ssa_name, have
var_decl in has_zero_uses, at tree-flow-inline.h:342
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
regehr@home:~/volatile/bugs/tmp004$ cat small.c
static unsigned char
safe_sub_func_int_s_s (int si1, unsigned char si2)
{
return si1 ^ si2 & -si2 ^ si2 ? : si1 - si2;
}
int g_2[10] = {
0x90AC204EL
};
volatile unsigned char g_39;
unsigned char
func_67 (unsigned short p_68)
{
unsigned char l_92;
unsigned char l_74;
int *l = &g_2[6];
lbl_90:*l ^= 1;
if (p_68)
goto lbl_93;
for (l_74 = 0;; l_74 = safe_sub_func_int_s_s (l_74, 1))
{
if (l_74)
goto lbl_90;
lbl_93:l_92 ^= 0 != &g_39;
if (0)
{
}
else
*l = 1;
}
}