[LLVMdev] DominatorTree Information required in CallGraphPass
Devang Patel
dpatel at apple.com
Thu Feb 12 10:33:19 PST 2009
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
More information about the llvm-dev
mailing list