[LLVMdev] Segmentation Fault of BasicCallGraph?
Shuying Liang
shuying.liang at gmail.com
Wed Oct 6 10:40:05 PDT 2010
Hi,
I did a little experiment, basically to extract implemented CallGraph
to be a "new" pass with different registered name, and run the "new"
pass, but the result always gives out Segmentation Fault... I am
probably missing
sth?
Implemented another new class,
class BasicCallGraph2 : public ModulePass, public CallGraph {
.....
...
}
The inside code is exact same as BasicCallGraph, except registered
passname to be testcgn and the information of the pass. then after
enabling and run the new pass, on a test.bc file, there is always a
segmentation fault.
0 libLLVM-2.7.so.1 0x00007f5cd87b1d2f
1 libLLVM-2.7.so.1 0x00007f5cd87b238d
2 libpthread.so.0 0x00007f5cd7ba38f0
3 MyPass.so 0x00007f5cd6a538d4
llvm::CallGraphNode::addCalledFunction(llvm::CallSite,
llvm::CallGraphNode*) + 100
4 MyPass.so 0x00007f5cd6a519aa
5 MyPass.so 0x00007f5cd6a52dd1
6 libLLVM-2.7.so.1 0x00007f5cd8432e08
llvm::MPPassManager::runOnModule(llvm::Module&) + 376
7 libLLVM-2.7.so.1 0x00007f5cd8432f2b
llvm::PassManagerImpl::run(llvm::Module&) + 107
8 opt 0x0000000000415d53 main + 2003
9 libc.so.6 0x00007f5cd6c75c4d __libc_start_main + 253
10 opt 0x00000000004095c9
Stack dump:
0. Program arguments: opt -load ../../../Release/lib/MyPass.so -testcgn
1. Running pass 'print out the call grpah node contruction process' on
module '<stdin>'.
Segmentation fault
What is going on? what makes the addCalledFunction failed? I would
really appreciate your answers.......
Thanks,
--freezdom
More information about the llvm-dev
mailing list