[LLVMbugs] [Bug 6489] New: ice: Cannot find live range
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Wed Mar 3 20:35:21 PST 2010
http://llvm.org/bugs/show_bug.cgi?id=6489
Summary: ice: Cannot find live range
Product: new-bugs
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: enhancement
Priority: P5
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: regehr at cs.utah.edu
CC: llvmbugs at cs.uiuc.edu
Seen with clang r97662 on x64 Linux.
[regehr at gamow tmp274]$ clang -O small.c -c
clang: SimpleRegisterCoalescing.cpp:2315: bool
llvm::SimpleRegisterCoalescing::JoinIntervals(llvm::LiveInterval&,
llvm::LiveInterval&, bool&): Assertion `lr && "Cannot find live range"' failed.
0 clang 0x000000000117320f
1 clang 0x00000000011739fd
2 libpthread.so.0 0x00007f2c03fe0190
3 libc.so.6 0x00007f2c032e64b5 gsignal + 53
4 libc.so.6 0x00007f2c032e9f50 abort + 384
5 libc.so.6 0x00007f2c032df481 __assert_fail + 241
6 clang 0x0000000000e4b97c
7 clang 0x0000000000e4eacd
8 clang 0x0000000000e5036f
9 clang 0x0000000000e50e8e
10 clang 0x0000000000e51d6c
11 clang 0x00000000010fd596
12 clang 0x00000000010fd771
13 clang 0x00000000010fd99e
14 clang 0x0000000000413436
15 clang 0x0000000000413a75
16 clang 0x00000000005f8544
17 clang 0x0000000000416c09
18 clang 0x00000000004095ce
19 clang 0x000000000040c36b main + 1771
20 libc.so.6 0x00007f2c032d1abd __libc_start_main + 253
21 clang 0x0000000000407149
Stack dump:
0. Program arguments:
/tmp/z/compiler-install/llvm-gcc-r97662-install/bin/clang -cc1 -triple
x86_64-unknown-linux-gnu -S -disable-free -main-file-name small.c
-mrelocation-model static -mdisable-fp-elim -mconstructor-aliases
-munwind-tables -target-cpu x86-64 -resource-dir
/tmp/z/compiler-install/llvm-gcc-r97662-install/lib/clang/1.1 -O2
-fmessage-length 85 -fgnu-runtime -fdiagnostics-show-option -fcolor-diagnostics
-o /tmp/cc-T2FARQ.s -x c small.c
1. <eof> parser at end of file
2. Code generation
3. Running pass 'Simple Register Coalescing' on function '@func_56'
clang: error: compiler command failed due to signal 6 (use -v to see
invocation)
[regehr at gamow tmp274]$ cat small.c
int qux (int, int);
static short
foo (short left, unsigned int right)
{
return 0;
}
static unsigned char
bar (unsigned char ui1, unsigned char ui2)
{
return (ui2 == 0) ? ((ui1)) : (ui1 / ui2);
}
static unsigned
baz (unsigned ui1, unsigned ui2)
{
return (ui2 == 0) ? ((ui1)) : (ui1 % ui2);
}
struct S0
{
};
int g_4[4][5];
int g_44 = 0xC733F7CFL;
int *g_87 = 0;
int **g_86 = (&g_87);
int ***g_85[1];
int *volatile g_116 = (&g_4[0][1]);
unsigned g_124 = -9L;
int g_140 = 6L;
struct S0 g_158[8] = {
};
struct S0 *g_160 = (&g_158[2]);
short g_306 = 0xFF2FL;
unsigned char g_312 = 1L;
const int func_35 (int ***p_36, unsigned p_37, int p_38, int p_39,
unsigned p_40);
void
func_56 (long p_57, int ***p_58)
{
signed char l_299 = 0xF5L;
const int *l_303 = (&g_4[0][1]);
const int **l_302 = (&l_303);
const int ***l_301[10][3];
int ***l_304[10];
int ***l_305[5];
unsigned l_307 = -3L;
int l_308[3];
int l_309 = -2L;
unsigned short l_310 = 0x04DFL;
int l_311[6][4];
short l_313 = 0x1479L;
unsigned long l_314 = -10L;
int l_315 = 0L;
struct S0 **l_316 = (&g_160);
unsigned long l_317 = 0L;
unsigned char l_318 = 0L;
int i;
for (i = 0; i < 3; i++)
l_308[i] = 9L;
(l_318) =
func_35 (p_58, l_299, (**l_302),
func_35 (l_304[8], (g_4[2][3]),
func_35 (l_305[4],
(((qux ((*g_116), (***l_301[1][1]))) >
0xF8A779C4L) >= func_35 (g_85[0], (g_124),
func_35 ((&g_86),
(g_44),
(p_57),
(*l_303),
(p_57)),
(g_306), (g_140))),
((bar ((qux ((l_307), l_308[0])), 5L)) >=
(baz ((qux ((p_57), (l_309))), -1L))),
(l_310),
((l_311[4][1] | (~(***l_301[1][2]))) ==
(foo (((g_312) & (l_313)), (l_314))))), l_315,
(0 != l_316)), (l_317));
}
[regehr at gamow tmp274]$ clang -v
clang version 1.1 (trunk)
Target: x86_64-unknown-linux-gnu
Thread model: posix
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
More information about the llvm-bugs
mailing list