LLVM API Documentation

Printer.cpp File Reference

#include "llvm/Analysis/DataStructure/DataStructure.h"
#include "llvm/Analysis/DataStructure/DSGraph.h"
#include "llvm/Analysis/DataStructure/DSGraphTraits.h"
#include "llvm/Module.h"
#include "llvm/Constants.h"
#include "llvm/Assembly/Writer.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/GraphWriter.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/Config/config.h"
#include <fstream>
#include <sstream>

Include dependency graph for Printer.cpp:

Go to the source code of this file.

Namespaces

namespace  llvm

Classes

struct  llvm::DOTGraphTraits< const DSGraph * >

Functions

static std::string getCaption (const DSNode *N, const DSGraph *G)
template<typename Collection>
static void printCollection (const Collection &C, std::ostream &O, const Module *M, const std::string &Prefix)

Variables

cl::opt< bool > OnlyPrintMain ("only-print-main-ds", cl::ReallyHidden)
cl::opt< bool > DontPrintAnything ("dont-print-ds", cl::ReallyHidden)
Statistic MaxGraphSize ("dsa","Maximum graph size")
Statistic NumFoldedNodes ("dsa","Number of folded nodes (in final graph)")


Function Documentation

static std::string getCaption ( const DSNode N,
const DSGraph G 
) [static]

Definition at line 40 of file Printer.cpp.

References llvm::DSNode::AllocaNode, llvm::DSNode::DEAD, G, llvm::DSGraph::getGlobalECs(), llvm::DSNode::getGlobalsList(), llvm::DSNode::getNodeFlags(), llvm::DSNode::getParentGraph(), llvm::DSGraph::getScalarMap(), llvm::DSNode::getType(), llvm::DSScalarMap::global_begin(), llvm::DSScalarMap::global_end(), GlobalECs, llvm::DSNode::GlobalNode, llvm::DSNode::HeapNode, llvm::DSNode::Incomplete, llvm::DSNode::isArray(), llvm::DSNode::isNodeCompletelyFolded(), M, llvm::DSNode::Modified, OS, llvm::DSNode::Read, llvm::DSGraph::retnodes_begin(), llvm::DSGraph::retnodes_end(), llvm::DSNode::UnknownNode, llvm::WriteAsOperand(), and llvm::WriteTypeSymbolic().

Referenced by llvm::DOTGraphTraits< const DSGraph * >::getNodeLabel().

template<typename Collection>
static void printCollection ( const Collection &  C,
std::ostream &  O,
const Module M,
const std::string &  Prefix 
) [static]

Definition at line 265 of file Printer.cpp.

References llvm::Module::begin(), E, llvm::Module::end(), llvm::DSGraph::getFunctionCalls(), llvm::DSGraph::getGraphSize(), llvm::Value::getName(), M, MaxGraphSize, NI, NumFoldedNodes, OnlyPrintMain, and llvm::DSGraph::writeGraphToFile().

Referenced by llvm::EquivClassGraphs::print(), llvm::CompleteBUDataStructures::print(), llvm::TDDataStructures::print(), llvm::BUDataStructures::print(), and llvm::LocalDataStructures::print().


Variable Documentation

cl::opt<bool> DontPrintAnything("dont-print-ds", cl::ReallyHidden) [static]

Referenced by llvm::EquivClassGraphs::print(), llvm::CompleteBUDataStructures::print(), llvm::TDDataStructures::print(), llvm::BUDataStructures::print(), and llvm::LocalDataStructures::print().

Statistic MaxGraphSize("dsa","Maximum graph size") [static]

Referenced by printCollection().

Statistic NumFoldedNodes("dsa","Number of folded nodes (in final graph)") [static]

Referenced by printCollection().

cl::opt<bool> OnlyPrintMain("only-print-main-ds", cl::ReallyHidden) [static]

Referenced by printCollection().