[LLVMdev] Fake Exit node

David Crowe dcrowe at tremor.crhc.uiuc.edu
Sat Nov 30 13:50:01 PST 2002


How do I get this pass to work within my own ModulePass?
I get this error:

Running getAnalysisUsage()
Assertion failed: 0 && "Pass available but not found! " "Perhaps this is a 
module pass requiring a function pass?", file PassManagerT.h, line 395
Abort

Thanks,
Dave

On Fri, 29 Nov 2002, Chris Lattner wrote:

> On Fri, 29 Nov 2002, Anand Shukla wrote:
> 
> > There is a pass "UnifyFunctionExitNodes()" (you can add it to AnalysisUsage
> > of your pass) that does the trick.
> 
> Yup, just like Anand says, this pass will make it so that there is at most
> one exit node from the function, which you can use for your analysis (it
> will even tell you which BB that is too).  Note that a function may _not_
> have an exit node (if it contains an infinite loop, for example), so be
> aware of that, but otherwise it should work for you with no problem.
> 
> -Chris
> 
> 
> > From: "David Crowe" <dcrowe at tremor.crhc.uiuc.edu>
> > To: <llvmdev at cs.uiuc.edu>
> > Sent: Friday, November 29, 2002 4:58 PM
> > Subject: [LLVMdev] Fake Exit node
> >
> >
> > > Is there a facility with which we may automagically create a "fake" exit
> > > node, one that is the target of all BasicBlocks ending in return.  This
> > > would be very helpful to IP dataflow analysis...
> > >
> > > Dave
> > >
> > > _______________________________________________
> > > LLVM Developers mailing list
> > > LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> > > http://mail.cs.uiuc.edu/mailman/listinfo/llvmdev
> > >
> >
> > _______________________________________________
> > LLVM Developers mailing list
> > LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> > http://mail.cs.uiuc.edu/mailman/listinfo/llvmdev
> >
> 
> -Chris
> 
> 




More information about the llvm-dev mailing list