[LLVMdev] DominatorTree Information required in CallGraphPass

kapil anand kapilanand2 at gmail.com
Thu Feb 12 14:46:27 PST 2009


I have modified my pass to extend Module Pass instead of Call Graph SCCPass.
I insert getAnalyses<CallGraph> and use this explicitly instead of extending
CallGraphSCCPass. So, the above change need not be made to get my pass
work....( as of now)





On Thu, Feb 12, 2009 at 1:33 PM, Devang Patel <dpatel at apple.com> wrote:

>
> On Feb 11, 2009, at 6:05 PM, kapil anand wrote:
>
> > Hi all,
> >
> > I am implementing a new pass for LLVM which extends Call Graph
> > SCCPass. I need DominatorTree Information when I get to individual
> > function. I have added AU.addrequired<DominatorTree>() and
> > AU.addRequired<DominanceFrontier>() in getAnalysisUsage() function.
>
> >
> > But, when I get to the pass,  Pass Manager gives following runtime
> > error
> >
> >
> > Unable to schedule 'Dominator Tree Construction' required by '......'
> >
> > assertion "0 && "Unable to schedule pass"" failed: file "/usr/src/
> > llvm-2.4/llvm-
> > 2.4/lib/VMCore/PassManager.cpp", line 1074
> >
> >
> > Can't I use dominator Tree Information in case of CallGraphSCCPass. I
> > found out from documentation that dominator Info can be used in Module
> > Pass
> >
> > ( http://www.llvm.org/docs/WritingAnLLVMPass.html#getAnalysis )
> >
> > Thus it seemed feasible that Call GraphSCCPass should also be able to
> > use Dominator Info.Do I need to add some flag that I need lower level
> > passes?
>
> Pl. file a bugzilla report. Call graph pass manager is not
> implementing addLowerLevelRequiredPass() to support this. If you copy
> the same method from MPPassManager (see Pasmanager.cpp) then it should
> work. If it works, please send us patch.
>
> Thanks,
> >
> >
> > Thanks
> >
> > Regards,
> > Kapil
> > _______________________________________________
> > LLVM Developers mailing list
> > LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
> -
> Devang
>
>
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090212/f3b6e9ab/attachment.html>


More information about the llvm-dev mailing list