[LLVMbugs] [Bug 4970] New: Verifier segfaults
bugzilla-daemon at cs.uiuc.edu
bugzilla-daemon at cs.uiuc.edu
Sun Sep 13 09:53:31 PDT 2009
http://llvm.org/bugs/show_bug.cgi?id=4970
Summary: Verifier segfaults
Product: libraries
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P2
Component: Common Code Generator Code
AssignedTo: unassignedbugs at nondot.org
ReportedBy: ofv at wanadoo.es
CC: llvmbugs at cs.uiuc.edu
This happened after updating the snv checkout. It was ok with a 20 days-old
checkout.
If the problem is not obvious I can try to bisect.
Stack dump:
#0 0x00007f22d1099142 in llvm::Type::getForwardedType (this=0x31)
at /home/oscar/dev/llvm/head/include/llvm/Type.h:302
No locals.
#1 0x00007f22d19dcfbd in llvm::Type::getForwardedTypeInternal (this=0x3b0f4f0)
at /home/oscar/dev/llvm/head/lib/VMCore/Type.cpp:238
RealForwardedType = (const class llvm::Type *) 0x7fffda7b1680
__PRETTY_FUNCTION__ = "const llvm::Type*
llvm::Type::getForwardedTypeInternal() const"
#2 0x00007f22d109915e in llvm::Type::getForwardedType (this=0x3b0f4f0)
at /home/oscar/dev/llvm/head/include/llvm/Type.h:303
No locals.
#3 0x00007f22d109936a in llvm::PATypeHolder::get (this=0x7fffda7b16f0)
at /home/oscar/dev/llvm/head/include/llvm/Type.h:435
NewTy = (const llvm::Type *) 0x0
#4 0x00007f22d10993af in llvm::PATypeHolder::operator llvm::Type* (
this=0x7fffda7b16f0)
at /home/oscar/dev/llvm/head/include/llvm/AbstractTypeUser.h:151
No locals.
#5 0x00007f22d1a07fdc in std::less<llvm::PATypeHolder>::operator() (
this=0xd168840, __x=@0x7fffda7b16f0, __y=@0xd16b5e0)
at /usr/include/c++/4.3/bits/stl_function.h:230
No locals.
#6 0x00007f22d1a085b0 in std::_Rb_tree<llvm::PATypeHolder, llvm::PATypeHolder,
std::_Identity<llvm::PATypeHolder>, std::less<llvm::PATypeHolder>,
std::allocator<llvm::PATypeHolder> >::_M_insert_unique (this=0xd168840,
__v=@0x7fffda7b16f0)
at /usr/include/c++/4.3/bits/stl_tree.h:1141
__x = (class std::_Rb_tree_node<llvm::PATypeHolder> *) 0xd16b5c0
__y = (class std::_Rb_tree_node<llvm::PATypeHolder> *) 0xd16b5c0
__comp = true
__j = {_M_node = 0x7fffda7b14e0}
#7 0x00007f22d1a0875d in std::set<llvm::PATypeHolder,
std::less<llvm::PATypeHolder>, std::allocator<llvm::PATypeHolder> >::insert
(this=0xd168840,
__x=@0x7fffda7b16f0) at /usr/include/c++/4.3/bits/stl_set.h:381
__p = {first = {_M_node = 0x7fffda7b1530}, second = 168}
#8 0x00007f22d1a087e4 in llvm::SmallSet<llvm::PATypeHolder, 16u>::insert (
this=0xd1687a0, V=@0x7fffda7b16f0)
at /home/oscar/dev/llvm/head/include/llvm/ADT/SmallSet.h:60
I = (const llvm::PATypeHolder *) 0x7fffda7b16f0
#9 0x00007f22d19fecc1 in VerifyType (this=0xd168690, Ty=0x3b0f4f0)
at /home/oscar/dev/llvm/head/lib/VMCore/Verifier.cpp:1462
No locals.
#10 0x00007f22d19ff01b in VerifyType (this=0xd168690, Ty=0x3b0f2c0)
at /home/oscar/dev/llvm/head/lib/VMCore/Verifier.cpp:1499
PTy = (const llvm::PointerType *) 0x3b0f2c0
#11 0x00007f22d1a003ac in visitInstruction (this=0xd168690, I=@0x3b0f4b8)
at /home/oscar/dev/llvm/head/lib/VMCore/Verifier.cpp:1456
BB = (class llvm::BasicBlock *) 0x3ac28b0
#12 0x00007f22d1a00a83 in visitBitCastInst (this=0xd168690, I=@0x3b0f4b8)
at /home/oscar/dev/llvm/head/lib/VMCore/Verifier.cpp:1003
SrcTy = (const class llvm::Type *) 0x2af8ab0
DestTy = (const class llvm::Type *) 0x3b0f2c0
SrcBitSize = 0
DestBitSize = 0
#13 0x00007f22d1a00aab in visitBitCast (this=0xd168690, I=@0x3b0f4b8)
at /home/oscar/dev/llvm/head/include/llvm/Instruction.def:154
No locals.
#14 0x00007f22d1a06262 in visit (this=0xd168690, I=@0x3b0f4b8)
at /home/oscar/dev/llvm/head/include/llvm/Instruction.def:154
No locals.
#15 0x00007f22d1a063c2 in visit (this=0xd168690, I=@0x3b0f4b8)
at /home/oscar/dev/llvm/head/lib/VMCore/Verifier.cpp:360
No locals.
#16 0x00007f22d1a06407 in visit<llvm::ilist_iterator<llvm::Instruction> > (
this=0xd168690, Start=
{<std::iterator<std::bidirectional_iterator_tag, llvm::Instruction, long
int, llvm::Instruction*, llvm::Instruction&>> = {<No data fields>}, NodePtr =
0x3b0f588}, End=
{<std::iterator<std::bidirectional_iterator_tag, llvm::Instruction, long
int, llvm::Instruction*, llvm::Instruction&>> = {<No data fields>}, NodePtr =
0x3ac28b0}) at /home/oscar/dev/llvm/head/include/llvm/Support/InstVisitor.h:89
No locals.
#17 0x00007f22d1a0645c in visit (this=0xd168690, BB=@0x3ac28b0)
at /home/oscar/dev/llvm/head/include/llvm/Support/InstVisitor.h:104
No locals.
#18 0x00007f22d1a064a1 in visit<llvm::ilist_iterator<llvm::BasicBlock> > (
this=0xd168690, Start=
{<std::iterator<std::bidirectional_iterator_tag, llvm::BasicBlock, long
int, llvm::BasicBlock*, llvm::BasicBlock&>> = {<No data fields>}, NodePtr =
0x3ac2780}, End=
{<std::iterator<std::bidirectional_iterator_tag, llvm::BasicBlock, long
int, llvm::BasicBlock*, llvm::BasicBlock&>> = {<No data fields>}, NodePtr =
0x3b21508}) at /home/oscar/dev/llvm/head/include/llvm/Support/InstVisitor.h:89
No locals.
#19 0x00007f22d1a064f6 in visit (this=0xd168690, F=@0x3b214d0)
at /home/oscar/dev/llvm/head/include/llvm/Support/InstVisitor.h:100
No locals.
#20 0x00007f22d1a0654f in runOnFunction (this=0xd168690, F=@0x3b214d0)
at /home/oscar/dev/llvm/head/lib/VMCore/Verifier.cpp:168
No locals.
#21 0x00007f22d19ce22a in llvm::FPPassManager::runOnFunction (this=0xd168f80,
F=@0x3b214d0) at /home/oscar/dev/llvm/head/lib/VMCore/PassManager.cpp:1371
X = {<llvm::PrettyStackTraceEntry> = {
_vptr.PrettyStackTraceEntry = 0x7f22d212fe90, NextEntry = 0x7fffda7b20b0},
P = 0xd168690, V = 0x3b214d0, M = 0x0}
FP = (class llvm::FunctionPass *) 0xd168690
Index = 2
Changed = false
#22 0x00007f22d19ce448 in llvm::FPPassManager::runOnModule (this=0xd168f80,
M=@0x2c6daa0) at /home/oscar/dev/llvm/head/lib/VMCore/PassManager.cpp:1394
I = {<std::iterator<std::bidirectional_iterator_tag, llvm::Function,
long int, llvm::Function*, llvm::Function&>> = {<No data fields>},
NodePtr = 0x3b214d0}
E = {<std::iterator<std::bidirectional_iterator_tag, llvm::Function,
long int, llvm::Function*, llvm::Function&>> = {<No data fields>},
NodePtr = 0x2c6da60}
Changed = false
#23 0x00007f22d19cc93c in llvm::MPPassManager::runOnModule (this=0xd1684b0,
M=@0x2c6daa0) at /home/oscar/dev/llvm/head/lib/VMCore/PassManager.cpp:1447
X = {<llvm::PrettyStackTraceEntry> = {
_vptr.PrettyStackTraceEntry = 0x7f22d212fe90, NextEntry = 0x0},
P = 0xd168f80, V = 0x0, M = 0x2c6daa0}
MP = (llvm::ModulePass *) 0xd168f80
Index = 0
Changed = false
#24 0x00007f22d19d0221 in llvm::PassManagerImpl::run (this=0xd165ca0,
M=@0x2c6daa0) at /home/oscar/dev/llvm/head/lib/VMCore/PassManager.cpp:1528
Index = 0
Changed = false
#25 0x00007f22d19d0283 in llvm::PassManager::run (this=0x7fffda7b21f0,
M=@0x2c6daa0) at /home/oscar/dev/llvm/head/lib/VMCore/PassManager.cpp:1557
No locals.
#26 0x00007f22d19f7a04 in llvm::verifyModule (M=@0x2c6daa0,
action=llvm::AbortProcessAction, ErrorInfo=0x0)
at /home/oscar/dev/llvm/head/lib/VMCore/Verifier.cpp:1853
PM = {<llvm::PassManagerBase> = {
_vptr.PassManagerBase = 0x7f22d212fc10}, PM = 0xd165ca0}
V = ((anonymous namespace)::Verifier *) 0xd168690
#27 0x00007f22d1089ecb in lp0::LlvmCompile (resultTipo=
{static tipoBaseCount = 1397, static tipoBaseMask = 32767, static
kindMask = 983040, static isRefMask = 2147483648, static isConstMask =
1073741824, static hasInitializerMask = 536870912, data = 3665503712},
commands=@0x72963c0,
source=0x8c0be0) at /home/oscar/dev/idb-llvm-head/lp0/llvm.cpp:1243
M = (class llvm::Module *) 0x2c6daa0
coreBe = {
stack = {<std::_Vector_base<llvm::Value*, std::allocator<llvm::Value*> >> = {
_M_impl = {<std::allocator<llvm::Value*>> =
{<__gnu_cxx::new_allocator<llvm::Value*>> = {<No data fields>}, <No data
fields>}, _M_start = 0xb5fac00,
_M_finish = 0xb5fac00,
_M_end_of_storage = 0xb5fb000}}, <No data fields>},
module = 0x2c6daa0, currentFunction = 0xd157390,
scheduledFunctions = {<std::_Vector_base<lp0::ScheduledFunction,
std::allocator<lp0::ScheduledFunction> >> = {
_M_impl = {<std::allocator<lp0::ScheduledFunction>> =
{<__gnu_cxx::new_allocator<lp0::ScheduledFunction>> = {<No data fields>}, <No
data fields>},
_M_start = 0xc12e590, _M_finish = 0xc1893e8,
_M_end_of_storage = 0xc1be590}}, <No data fields>}, functionMap = {
_M_t = {
_M_impl = {<std::allocator<std::_Rb_tree_node<std::pair<lp0::Commands*
const, llvm::Function*> > >> =
{<__gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<lp0::Commands* const,
llvm::Function*> > >> = {<No data fields>}, <No data fields>},
_M_key_compare = {<std::binary_function<lp0::Commands*, lp0::Commands*,
bool>> = {<No data fields>}, <No data fields>}, _M_header = {
_M_color = std::_S_red, _M_parent = 0x2a6bed0, _M_left = 0x9365430,
_M_right = 0x90b4e90}, _M_node_count = 5171}}},
printFunction = false}
EE = (class llvm::ExecutionEngine *) 0x3624ed0
mainF = (class llvm::Function *) 0x3b214d0
t1 = 24440000
be = {
pointerMap = {<std::_Vector_base<lp0::LlvmState::PointerMapItem,
std::allocator<lp0::LlvmState::PointerMapItem> >> = {
_M_impl = {<std::allocator<lp0::LlvmState::PointerMapItem>> =
{<__gnu_cxx::new_allocator<lp0::LlvmState::PointerMapItem>> = {<No data
fields>}, <No data fields>}, _M_start = 0x0, _M_finish = 0x0,
_M_end_of_storage = 0x0}}, <No data fields>},
corebe = @0x7fffda7b2370, commands = @0x72963c0,
jumped = {<std::_Bvector_base<std::allocator<bool> >> = {
_M_impl = {<std::allocator<long unsigned int>> =
{<__gnu_cxx::new_allocator<long unsigned int>> = {<No data fields>}, <No data
fields>},
_M_start = {<std::_Bit_iterator_base> =
{<std::iterator<std::random_access_iterator_tag, bool, long int, bool*, bool&>>
= {<No data fields>},
_M_p = 0x2a3f9f0, _M_offset = 0}, <No data fields>},
_M_finish = {<std::_Bit_iterator_base> =
{<std::iterator<std::random_access_iterator_tag, bool, long int, bool*, bool&>>
= {<No data fields>},
_M_p = 0x2a40008, _M_offset = 29}, <No data fields>},
_M_end_of_storage = 0x2a40010}}, <No data fields>},
cmdInfos = {<std::_Vector_base<lp0::CmdInfo, std::allocator<lp0::CmdInfo> >>
= {
_M_impl = {<std::allocator<lp0::CmdInfo>> =
{<__gnu_cxx::new_allocator<lp0::CmdInfo>> = {<No data fields>}, <No data
fields>}, _M_start = 0x9083200,
_M_finish = 0x90b3fd0,
_M_end_of_storage = 0x90b3fd0}}, <No data fields>}, bb = 0x0,
nextIsReturn = false, bbTerminated = false}
MP = (llvm::ExistingModuleProvider *) 0x698f450
error = {static npos = 18446744073709551615,
_M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> =
{<No data fields>}, <No data fields>}, _M_p = 0x8b54b8 ""}}
mf = (class llvm::Function *) 0x7f22d27b0000
__PRETTY_FUNCTION__ = "lp0::LLVMFunction* lp0::LlvmCompile(lp0::Tipo,
lp0::Commands&, lp0::Source*)"
Context = {pImpl = 0x3d72790}
instructionGenMapReady = true
#28 0x00007f22d10ab7af in LLVMCode (this=0x2a1e390, ee=@0x8c0c20,
code=@0x28463c0, s=0x8c0be0)
at /home/oscar/dev/idb-llvm-head/lp0/api.cpp:691
No locals.
--
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