[LLVMdev] Why I cannot use PgmDependenceGraph?

xia_yimin xia_yimin at sina.com
Fri Aug 6 00:21:07 PDT 2004


I want to use PgmDependenceGraph pass , but my pass cannot work with PgmDependenceGraph.
I tried again in Hello2 pass, and it could not work also. 
The following is I did with llvm/lib/Transforms/Hello.cpp:
	1.insert #include "llvm/Analysis/PgmDependenceGraph.h" in Hello.cpp.
	2.insert AU.addRequired<PgmDependenceGraph>() in the getAnalysisUsage(AnalysisUsage &AU) of Hello2.
        3.made the hello pass, it passed.
        4.do "opt -load /llvm/lib/Debug/libhello.so -hello2 helloTheWorld.bc", and opt gives me:

opt[0x85aaab8]
opt[0x85aacc4]
/lib/tls/libc.so.6[0x420275c8]
opt(std::vector<__gnu_cxx::_Hashtable_node<std::pair<llvm::Value* const, llvm::]
opt(__gnu_cxx::hashtable<std::pair<llvm::Value* const, llvm::DSNodeHandle>, llv]
opt(__gnu_cxx::hashtable<std::pair<llvm::Value* const, llvm::DSNodeHandle>, llv]
opt(__gnu_cxx::hash_map<llvm::Value*, llvm::DSNodeHandle, __gnu_cxx::hash<llvm:]
opt(llvm::DSScalarMap::find(llvm::Value*)+0x1a)[0x84a998e]
opt(llvm::DSGraph::removeDeadNodes(unsigned)+0x3e1)[0x847def5]
opt(llvm::IPModRef::getFuncInfo(llvm::Function const&, bool)+0xf3)[0x85db297]
opt(llvm::IPModRef::run(llvm::Module&)+0xaf)[0x85db189]
opt(llvm::PassManagerTraits<llvm::Module>::runPass(llvm::Pass*, llvm::Module*)+]
opt(llvm::PassManagerT<llvm::Module>::runOnUnit(llvm::Module*)+0x5e4)[0x857fd5c]
opt(llvm::PassManagerTraits<llvm::Module>::run(llvm::Module&)+0x1b)[0x857f3c3]
opt(llvm::PassManager::run(llvm::Module&)+0x1f)[0x85371ad]
opt(main+0x8c0)[0x8358b00]
/lib/tls/libc.so.6(__libc_start_main+0xe4)[0x42015574]
opt(dlopen+0x41)[0x83581b1]
Segmentation fault


Has anybody tell me the reason and what should I do?

Thanks.

Xia


______________________________________

×¢²áÐÂÀË30Õ×Ãâ·ÑÓÊÏ䣨 http://mail.sina.com.cn/chooseMode.html £©

===================================================================
×¢²áÓС°Àñ¡±£¬¾ªÏ²½±ÉϽ±£¡ (http://ad4.sina.com.cn/wx/ads/zhuiyu_hprefresh.html)




More information about the llvm-dev mailing list