diff options
author | Chris Lattner <sabre@nondot.org> | 2003-10-22 16:02:58 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2003-10-22 16:02:58 +0000 |
commit | 3b39537e71f1b4bdf7dd49244e39e0a585951f1e (patch) | |
tree | eacd5eda781bbb0ccc7f55d3923b02bd00107307 /tools/opt/GraphPrinters.cpp | |
parent | 4d37c7b830f05169d1e56e24e78cc9ef065a45f6 (diff) | |
download | external_llvm-3b39537e71f1b4bdf7dd49244e39e0a585951f1e.zip external_llvm-3b39537e71f1b4bdf7dd49244e39e0a585951f1e.tar.gz external_llvm-3b39537e71f1b4bdf7dd49244e39e0a585951f1e.tar.bz2 |
Delete the -print-cfg pass from this file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9372 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/opt/GraphPrinters.cpp')
-rw-r--r-- | tools/opt/GraphPrinters.cpp | 69 |
1 files changed, 2 insertions, 67 deletions
diff --git a/tools/opt/GraphPrinters.cpp b/tools/opt/GraphPrinters.cpp index 9a8c067..34c937f 100644 --- a/tools/opt/GraphPrinters.cpp +++ b/tools/opt/GraphPrinters.cpp @@ -16,55 +16,10 @@ #include "Support/GraphWriter.h" #include "llvm/Pass.h" -#include "llvm/iTerminators.h" +#include "llvm/Value.h" #include "llvm/Analysis/CallGraph.h" -#include "llvm/Support/CFG.h" -#include <sstream> #include <fstream> -//===----------------------------------------------------------------------===// -// Control Flow Graph Printer -//===----------------------------------------------------------------------===// - -template<> -struct DOTGraphTraits<Function*> : public DefaultDOTGraphTraits { - static std::string getGraphName(Function *F) { - return "CFG for '" + F->getName() + "' function"; - } - - static std::string getNodeLabel(BasicBlock *Node, Function *Graph) { - std::ostringstream Out; - Out << Node; - std::string OutStr = Out.str(); - if (OutStr[0] == '\n') OutStr.erase(OutStr.begin()); - - // Process string output to make it nicer... - for (unsigned i = 0; i != OutStr.length(); ++i) - if (OutStr[i] == '\n') { // Left justify - OutStr[i] = '\\'; - OutStr.insert(OutStr.begin()+i+1, 'l'); - } else if (OutStr[i] == ';') { // Delete comments! - unsigned Idx = OutStr.find('\n', i+1); // Find end of line - OutStr.erase(OutStr.begin()+i, OutStr.begin()+Idx); - --i; - } - - return OutStr; - } - - static std::string getNodeAttributes(BasicBlock *N) { - return "fontname=Courier"; - } - - static std::string getEdgeSourceLabel(BasicBlock *Node, succ_iterator I) { - // Label source of conditional branches with "T" or "F" - if (BranchInst *BI = dyn_cast<BranchInst>(Node->getTerminator())) - if (BI->isConditional()) - return (I == succ_begin(Node)) ? "T" : "F"; - return ""; - } -}; - template<typename GraphType> static void WriteGraphToFile(std::ostream &O, const std::string &GraphName, const GraphType >) { @@ -80,26 +35,6 @@ static void WriteGraphToFile(std::ostream &O, const std::string &GraphName, } -namespace { - struct CFGPrinter : public FunctionPass { - virtual bool runOnFunction(Function &Func) { - WriteGraphToFile(std::cerr, "cfg."+Func.getName(), &Func); - return false; - } - - void print(std::ostream &OS) const {} - - virtual void getAnalysisUsage(AnalysisUsage &AU) const { - AU.setPreservesAll(); - } - }; - - RegisterAnalysis<CFGPrinter> P1("print-cfg", - "Print CFG of function to 'dot' file"); -}; - - - //===----------------------------------------------------------------------===// // Call Graph Printer //===----------------------------------------------------------------------===// @@ -112,7 +47,7 @@ struct DOTGraphTraits<CallGraph*> : public DefaultDOTGraphTraits { static std::string getNodeLabel(CallGraphNode *Node, CallGraph *Graph) { if (Node->getFunction()) - return Node->getFunction()->getName(); + return ((Value*)Node->getFunction())->getName(); else return "Indirect call node"; } |