[LLVMdev] Problems with one pass using another
Prashanth Radhakrishnan
shanth at cs.utah.edu
Sun Mar 25 23:43:32 PDT 2007
Hi,
I have two function passes: AvailOut and HashGVN. AvailOut needs to use
HashGVN. And they're built in the same shared object file.
But addRequired<HashGVN> fails with this error:
# opt -load ../../../build/Release/lib/LLVMGVN.so -hashgvn -availout --debug-pass=Structure <basic.s.bc >basic.out.bc
opt: /proj/tbres/shanth/llvm/llvm-1.9/lib/VMCore/PassManagerT.h:387: void
llvm::PassManagerT<Trait>::markPassUsed(const llvm::PassInfo*,
llvm::Pass*) [withTrait = llvm::MTraits]: Assertion `getAnalysisOrNullUp(P) &&
dynamic_cast<ImmutablePass*>(getAnalysisOrNullUp(P)) && "Pass available
but not found! " "Perhaps this is a module pass requiring a function
pass?"' failed.
opt((anonymous namespace)::PrintStackTrace()+0x14)[0x85ebe6c]
Does anyone see what I'm missing?
Thanks,
Prashanth
More information about the llvm-dev
mailing list