[LLVMbugs] [Bug 4052] New: ICE: This is not a truncating conversion!
bugzilla-daemon at cs.uiuc.edu
bugzilla-daemon at cs.uiuc.edu
Fri Apr 24 08:44:26 PDT 2009
http://llvm.org/bugs/show_bug.cgi?id=4052
Summary: ICE: This is not a truncating conversion!
Product: new-bugs
Version: unspecified
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P2
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: regehr at cs.utah.edu
CC: llvmbugs at cs.uiuc.edu
Seen using r69856 on Ubuntu Hardy on x86.
regehr at john-home:~/volatile/tmp152$ llvm-gcc -O2 -Wall -c small.c
cc1: ScalarEvolution.cpp:651: llvm::SCEVHandle
llvm::ScalarEvolution::getTruncateExpr(const llvm::SCEVHandle&, const
llvm::Type*): Assertion `getTypeSizeInBits(Op->getType()) >
getTypeSizeInBits(Ty) && "This is not a truncating conversion!"' failed.
small.c:22: internal compiler error: Aborted
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://llvm.org/bugs/> for instructions.
regehr at john-home:~/volatile/tmp152$ cat small.c
char safe_sub_func_int32_t_s_s (int _si1, char _si2)
{
return ((_si1 ^ _si2) & _si1 << ((1 * 8) - 1 - _si2)) < 0;
}
int safe_sub_func_uint64_t_u_u (int _ui1, int _ui2)
{
return _ui1 - 1;
}
volatile int x;
void int87 (char p_48, char p_49)
{
unsigned l_52;
for (; l_52; l_52 = safe_sub_func_int32_t_s_s (l_52, 1)) {
x;
for (l_52 = 0; l_52 <= 0; l_52 = safe_sub_func_uint64_t_u_u (l_52, 1))
{
}
}
}
--
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