LLVM API Documentation

llvm::CompleteBUDataStructures Struct Reference

#include <DataStructure.h>

Inheritance diagram for llvm::CompleteBUDataStructures:

Inheritance graph
[legend]
Collaboration diagram for llvm::CompleteBUDataStructures:

Collaboration graph
[legend]
List of all members.

Public Member Functions

virtual bool runOnModule (Module &M)
bool hasGraph (const Function &F) const
DSGraphgetDSGraph (const Function &F) const
virtual void getAnalysisUsage (AnalysisUsage &AU) const
void print (std::ostream &O, const Module *M) const

Detailed Description

CompleteBUDataStructures - This is the exact same as the bottom-up graphs, but we use take a completed call graph and inline all indirect callees into their callers graphs, making the result more useful for things like pool allocation.

Definition at line 298 of file DataStructure.h.


Member Function Documentation

bool CompleteBUDataStructures::runOnModule ( Module M  )  [virtual]

runOnModule - Virtual method overriden by subclasses to process the module being operated on.

Reimplemented from llvm::BUDataStructures.

Definition at line 37 of file CompleteBottomUp.cpp.

References llvm::BUDataStructures::ActualCallees, llvm::Module::begin(), BU, llvm::DSGraph::DontCloneAuxCallNodes, llvm::DSGraph::DontCloneCallNodes, llvm::BUDataStructures::DSInfo, E, llvm::Module::end(), llvm::BUDataStructures::getActualCallees(), llvm::ReachabilityCloner::getClonedNH(), llvm::BUDataStructures::getGlobalECs(), llvm::DSGraph::getGlobalsGraph(), llvm::BUDataStructures::getGlobalsGraph(), llvm::Module::getMainFunction(), llvm::DSGraph::getNodeForValue(), llvm::DSGraph::getScalarMap(), llvm::BUDataStructures::GlobalECs, llvm::BUDataStructures::GlobalsGraph, llvm::DSGraph::IgnoreGlobals, llvm::Function::isExternal(), M, llvm::DSGraph::MarkFormalArgs, RC, llvm::DSGraph::removeTriviallyDeadNodes(), llvm::DSGraph::setPrintAuxCalls(), and Stack.

bool llvm::CompleteBUDataStructures::hasGraph ( const Function F  )  const [inline]

Reimplemented from llvm::BUDataStructures.

Definition at line 301 of file DataStructure.h.

References llvm::BUDataStructures::DSInfo, and F.

DSGraph& llvm::CompleteBUDataStructures::getDSGraph ( const Function F  )  const [inline]

getDSGraph - Return the data structure graph for the specified function.

Reimplemented from llvm::BUDataStructures.

Definition at line 307 of file DataStructure.h.

References llvm::BUDataStructures::DSInfo, and F.

virtual void llvm::CompleteBUDataStructures::getAnalysisUsage ( AnalysisUsage AU  )  const [inline, virtual]

getAnalysisUsage - This function should be overriden by passes that need analysis information to do their job. If a pass specifies that it uses a particular analysis result to this function, it can then use the getAnalysis<AnalysisType>() function, below.

Reimplemented from llvm::BUDataStructures.

Definition at line 314 of file DataStructure.h.

References llvm::AnalysisUsage::addRequired(), and llvm::AnalysisUsage::setPreservesAll().

void CompleteBUDataStructures::print ( std::ostream &  O,
const Module M 
) const [virtual]

print - Print out the analysis results...

Reimplemented from llvm::BUDataStructures.

Definition at line 344 of file Printer.cpp.

References DontPrintAnything, M, and printCollection().


The documentation for this struct was generated from the following files: