From 687e03b2fa6b08fcd59c4f2f0c4aababdd91a71a Mon Sep 17 00:00:00 2001 From: Devang Patel Date: Mon, 30 Jun 2008 17:32:58 +0000 Subject: [PATCH] Move dominator info printer into tool/opt/GraphPrinters.cpp git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52907 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/VMCore/Dominators.cpp | 30 ------------------------------ tools/opt/GraphPrinters.cpp | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 32 insertions(+), 30 deletions(-) diff --git a/lib/VMCore/Dominators.cpp b/lib/VMCore/Dominators.cpp index 452b59d2181..6f1de466043 100644 --- a/lib/VMCore/Dominators.cpp +++ b/lib/VMCore/Dominators.cpp @@ -287,33 +287,3 @@ 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(); - AU.addRequired(); - - } - - virtual bool runOnFunction(Function &F) { - DominatorTree &DT = getAnalysis(); - DT.dump(); - DominanceFrontier &DF = getAnalysis(); - DF.dump(); - return false; - } - }; -} - -char DomInfoPrinter::ID = 0; -static RegisterPass -DIP("print-dom-info", "Dominator Info Printer", true, true); diff --git a/tools/opt/GraphPrinters.cpp b/tools/opt/GraphPrinters.cpp index 867e3348087..7f1199a1e3d 100644 --- a/tools/opt/GraphPrinters.cpp +++ b/tools/opt/GraphPrinters.cpp @@ -18,6 +18,7 @@ #include "llvm/Pass.h" #include "llvm/Value.h" #include "llvm/Analysis/CallGraph.h" +#include "llvm/Analysis/Dominators.h" #include #include using namespace llvm; @@ -81,3 +82,34 @@ namespace { RegisterPass P2("print-callgraph", "Print Call Graph to 'dot' file"); } + +//===----------------------------------------------------------------------===// +// DomInfoPrinter Pass +//===----------------------------------------------------------------------===// + +namespace { + class 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(); + AU.addRequired(); + + } + + virtual bool runOnFunction(Function &F) { + DominatorTree &DT = getAnalysis(); + DT.dump(); + DominanceFrontier &DF = getAnalysis(); + DF.dump(); + return false; + } + }; + + char DomInfoPrinter::ID = 0; + static RegisterPass + DIP("print-dom-info", "Dominator Info Printer", true, true); +}