- 
                Notifications
    
You must be signed in to change notification settings  - Fork 15.1k
 
Description
| Bugzilla Link | 4055 | 
| Resolution | FIXED | 
| Resolved on | Apr 30, 2009 01:31 | 
| Version | unspecified | 
| OS | Linux | 
Extended Description
Seen using r69856 on Ubuntu Hardy on x86.
regehr@john-home:~/volatile/tmp149$ llvm-gcc -O2 small.c -c -w
cc1: /home/regehr/z/tmp/llvm-r69856/include/llvm/ADT/APInt.h:1049: uint64_t llvm::APInt::getZExtValue() const: Assertion `getActiveBits() <= 64 && "Too many bits for uint64_t"' failed.
small.c:64: internal compiler error: Aborted
Please submit a full bug report,
with preprocessed source if appropriate.
See URL:http://llvm.org/bugs/ for instructions.
regehr@john-home:~/volatile/tmp149$ cat small.c
struct S0
{
int f1;
short f2;
short f3;
};
struct S1
{
int f0;
};
struct S2
{
int f0;
};
struct S3
{
struct S2 f0;
struct S1 f1;
short f2;
struct S0 f3;
struct S1 f4;
};
struct S6
{
short f0;
};
struct S7
{
struct S2 f0;
struct S3 f1;
};
struct S9
{
int f0;
struct S7 f1;
};
struct S1 g_149 = {
1
};
struct S6 func_120 (struct S9 p_123, struct S1 p_125)
{
if (p_123.f1.f1.f3.f3)
{
struct S6 l_129 = {
1
};
return l_129;
}
}
struct S1 func (struct S0 p_144)
{
struct S9 l_148 = {
1L, 0L, 1L, 0L, -2L, -1L, 0L, 8L, 1
};
p_144.f1 = func_58 (func_120 (l_148, g_149));
}