[LLVMdev] PassManager and dependencies

Casey Carter ccarter at cs.uiuc.edu
Fri Oct 18 23:54:00 PDT 2002

I can't seem to figure out how to tell the PassManager that one Pass 
requires the results of two other Passes, in such a way that it will not 
crash itself.  Attached file is the simplest possible example of Passes 
A, B, and C, such that C's getAnalysisUsage(AU) method calls 
AU.addRequired<A>() and AU.addRequired<B>().

When I try to run opt -load ... -opt-c, it tells me:

opt: PassManagerT.h:348: void PassManagerT<UnitType>::markPassUsed (const PassInfo *, Pass *) [with UnitType = Module]: Assertion `Parent != 0 && "Pass available but not found!"' failed.

I don't grok this error message. Of course, -opt-a and -opt-b both work 
fine in isolation.

Casey Carter
Casey at Carter.net
ccarter at uiuc.edu
AIM: cartec69

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: duh.cpp
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20021018/5f76155b/attachment.ksh>

More information about the llvm-dev mailing list