[LLVMdev] Conflicting passes?

Domagoj D domagoj at engineer.com
Tue May 2 18:55:02 PDT 2006

Hi all,

Why are these two passes conflicting: UnifyFunctionExitNodes and LowerSwitch?

AU.addRequired(LowerSwitchID) works, so does AU.addRequired<unifyFunctionExitNodes>(), 
but the two together don't... 

opt: PassManagerT.h:387: void llvm::PassManagerT<Trait>::markPassUsed(const llvm::PassInfo*, llvm::Pass*) [with Trait = 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()+0x18)[0x8706558]
opt((anonymous namespace)::SignalHandler(int)+0xfe)[0x87067e0]
and so on...


Play 100s of games for FREE! http://games.mail.com/

More information about the llvm-dev mailing list