Chuck Zhao
2010-Jul-06 20:48 UTC
[LLVMdev] runtime assert failure when trying to obtain analysis pass info within a transformation pass
I am having problems passing analysis results to transformation passes, so I reduced my testcase into the following bare bone: Pass1: simple FunctionPass, counting functions Pass2: transformation pass, for now, just trying to obtain a reference of Pass1 using AU.getAnalysis<Pass1>() inside its runOnFunction(). When I run it, I get the following runtime error: opt -load Release/lib/MultiPasses.so -pass2 < ../test/test.bc > /dev/null opt: /autofs/steffan/a/a0/czhao/ResearchTools/LLVM/2.7/llvm-2.7//include/llvm/PassAnalysisSupport.h:53: llvm::AnalysisUsage& llvm::AnalysisUsage::addRequiredID(const llvm::PassInfo*): Assertion `ID && "Pass class not registered!"' failed. 0 opt 0x084d2928 Stack dump: 0. Program arguments: opt -load Release/lib/MultiPasses.so -pass2 /bin/sh: line 1: 6436 Aborted opt -load Release/lib/MultiPasses.so -pass2 <../test/test.bc >/dev/null make: *** [run_pass2] Error 134 Any hints? Thank you Chuck -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: Pass2.cpp URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100706/14256c04/attachment.ksh> -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: Pass1.cpp URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100706/14256c04/attachment-0001.ksh> -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: Pass1.h URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100706/14256c04/attachment.h> -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: Makefile URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100706/14256c04/attachment-0002.ksh>
Reasonably Related Threads
- [LLVMdev] How to force MemoryDependenceAnalysis to run on original module
- [LLVMdev] How to force MemoryDependenceAnalysis to run on original module
- [LLVMdev] How to force MemoryDependenceAnalysis to run on original module
- [LLVMdev] 2.9 pass manager asserts "Unable to handle Pass that requires lower level Analysis pass"
- [LLVMdev] How to force MemoryDependenceAnalysis to run on original module