[llvm-commits] [llvm] r52829 - /llvm/trunk/lib/VMCore/Dominators.cpp

Chris Lattner clattner at apple.com
Fri Jun 27 11:23:21 PDT 2008


On Jun 27, 2008, at 9:43 AM, Devang Patel wrote:
> URL: http://llvm.org/viewvc/llvm-project?rev=52829&view=rev
> Log:
> Add dominator info printer pass.

Please put this into tools/opt/GraphPrinters.cpp so that it doesn't  
grow vmcore.  Thanks Devang,

-Chris
>
>
> Modified:
>    llvm/trunk/lib/VMCore/Dominators.cpp
>
> Modified: llvm/trunk/lib/VMCore/Dominators.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/VMCore/Dominators.cpp?rev=52829&r1=52828&r2=52829&view=diff
>
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
> --- llvm/trunk/lib/VMCore/Dominators.cpp (original)
> +++ llvm/trunk/lib/VMCore/Dominators.cpp Fri Jun 27 11:43:21 2008
> @@ -286,3 +286,34 @@
> void DominanceFrontierBase::dump() {
>   print (llvm::cerr);
> }
> +
> +// 
> = 
> = 
> = 
> ----------------------------------------------------------------------= 
> ==//
> +//                            DomInfoPrinter Pass
> +// 
> = 
> = 
> = 
> ----------------------------------------------------------------------= 
> ==//
> +
> +namespace {
> +  class VISIBILITY_HIDDEN DomInfoPrinter : public FunctionPass {
> +  public:
> +    static char ID; // Pass identification, replacement for typeid
> +    DomInfoPrinter() : FunctionPass((intptr_t)&ID) {}
> +
> +    virtual void getAnalysisUsage(AnalysisUsage &AU) const {
> +      AU.setPreservesAll();
> +      AU.addRequired<DominatorTree>();
> +      AU.addRequired<DominanceFrontier>();
> +
> +    }
> +
> +    virtual bool runOnFunction(Function &F) {
> +      DominatorTree &DT = getAnalysis<DominatorTree>();
> +      DT.dump();
> +      DominanceFrontier &DF = getAnalysis<DominanceFrontier>();
> +      DF.dump();
> +      return false;
> +    }
> +  };
> +}
> +
> +char DomInfoPrinter::ID = 0;
> +static RegisterPass<DomInfoPrinter>
> +DIP("print-dom-info", "Dominator Info Printer", true, true);
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits




More information about the llvm-commits mailing list