[LLVMdev] Pool Allocation Segfaulting with opt
John Criswell
criswell at cs.uiuc.edu
Mon Jul 6 07:08:32 PDT 2009
Patrick Alexander Simmons wrote:
> Hi,
>
> I'm trying to run the pool allocation pass through opt, and I'm running
> into problems. It segfaults frequently; for example, it does this when
> the input is a simple Hello World program:
>
Can you email me the bitcode file that is causing the problem?
> [simmon12 at apoc testcases]$ opt -load
> /home/vadve/simmon12/llvm/llvm/projects/llvm-poolalloc/Debug/lib/libLLVMDataStructure.so
> -load
> /home/vadve/simmon12/llvm/llvm/projects/llvm-poolalloc/Debug/lib/poolalloc.so
> -poolalloc hello.bc > hello.pool
> 0 opt 0x08469ccb
> 1 libLLVMDataStructure.so 0x0022f5a4
> llvm::ConstantArray::classof(llvm::Value const*) + 30
> 2 libLLVMDataStructure.so 0x0022f57a bool
> llvm::isa_impl<llvm::ConstantArray, llvm::Constant>(llvm::Constant
> const&) + 30
> 3 libLLVMDataStructure.so 0x0022e942
> llvm::isa_impl_wrap<llvm::ConstantArray, llvm::Constant const,
> llvm::Constant const>::doit(llvm::Constant const&) + 30
> 4 libLLVMDataStructure.so 0x0022e22a bool
> llvm::isa_impl_cl<llvm::Constant>::isa<llvm::ConstantArray>(llvm::Constant
> const&) + 30
> 5 libLLVMDataStructure.so 0x0022e032 bool
> llvm::isa_impl_cl<llvm::Constant*>::isa<llvm::ConstantArray>(llvm::Constant*)
> + 30
> 6 libLLVMDataStructure.so 0x0022dd82 bool
> llvm::isa<llvm::ConstantArray, llvm::Constant*>(llvm::Constant* const&) + 32
> 7 libLLVMDataStructure.so 0x0022d9dc
> llvm::cast_retty<llvm::ConstantArray,
> llvm::Constant*>::ret_typellvm::dyn_cast<llvm::ConstantArray,
> llvm::Constant*>(llvm::Constant* const&) + 30
> 8 libLLVMDataStructure.so 0x0022bc71 (anonymous
> namespace)::GraphBuilder::MergeConstantInitIntoNode(llvm::DSNodeHandle&,
> llvm::Type const*, llvm::Constant*) + 229
> 9 libLLVMDataStructure.so 0x0022bfb7 (anonymous
> namespace)::GraphBuilder::mergeInGlobalInitializer(llvm::GlobalVariable*)
> + 149
> 10 libLLVMDataStructure.so 0x0022c08c
> llvm::LocalDataStructures::runOnModule(llvm::Module&) + 190
> 11 opt 0x083fdf4e
> llvm::MPPassManager::runOnModule(llvm::Module&) + 270
> Segmentation fault
>
> I'm using the latest SVN checkouts for both LLVM and llvm-poolalloc.
> Should I perhaps use the 2.5 branch of LLVM instead?
>
> Oh, also, what's the name of the DSA pass that pool allocation runs?
> I'd like to structure my passes to go
> "DSA-MyAnalysis-PoolAllocation-MyTransform".
>
You can use the -debug-pass=Arguments option to opt to print out which
DSA passes it is using.
-- John T.
> Thanks,
> --Patrick
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
More information about the llvm-dev
mailing list