LLVM API Documentation

Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

llvm::DependenceGraph Class Reference

#include <DependenceGraph.h>

Collaboration diagram for llvm::DependenceGraph:

Collaboration graph
[legend]
List of all members.

Public Types

typedef std::vector< Dependence
>::iterator 
iterator
typedef std::vector< Dependence
>::const_iterator 
const_iterator

Public Member Functions

 DependenceGraph ()
 ~DependenceGraph ()
DepGraphNodegetNode (Instruction &inst, bool createIfMissing=false)
const DepGraphNodegetNode (const Instruction &inst) const
iterator inDepBegin (DepGraphNode &T)
const_iterator inDepBegin (const DepGraphNode &T) const
iterator inDepEnd (DepGraphNode &T)
const_iterator inDepEnd (const DepGraphNode &T) const
iterator outDepBegin (DepGraphNode &F)
const_iterator outDepBegin (const DepGraphNode &F) const
iterator outDepEnd (DepGraphNode &F)
const_iterator outDepEnd (const DepGraphNode &F) const
void print (const Function &func, std::ostream &O) const
void AddSimpleDependence (Instruction &fromI, Instruction &toI, DependenceType depType)

Detailed Description

DependenceGraph Class - A representation of a dependence graph for a procedure. The primary query operation here is to look up a DepGraphNode for a particular instruction, and then use the in/out dependence iterators for the node.

Definition at line 155 of file DependenceGraph.h.


Member Typedef Documentation

typedef std::vector<Dependence>::const_iterator llvm::DependenceGraph::const_iterator
 

Definition at line 178 of file DependenceGraph.h.

typedef std::vector<Dependence>:: iterator llvm::DependenceGraph::iterator
 

Definition at line 177 of file DependenceGraph.h.


Constructor & Destructor Documentation

llvm::DependenceGraph::DependenceGraph  )  [inline]
 

Definition at line 181 of file DependenceGraph.h.

llvm::DependenceGraph::~DependenceGraph  ) 
 

Definition at line 71 of file DependenceGraph.cpp.

References E, and I.


Member Function Documentation

void llvm::DependenceGraph::AddSimpleDependence Instruction fromI,
Instruction toI,
DependenceType  depType
[inline]
 

AddSimpleDependence - adding and modifying the dependence graph. These should to be used only by dependence analysis implementations.

Definition at line 232 of file DependenceGraph.h.

References llvm::DepGraphNode::outDeps.

const DepGraphNode* llvm::DependenceGraph::getNode const Instruction inst  )  const [inline]
 

Definition at line 191 of file DependenceGraph.h.

DepGraphNode* llvm::DependenceGraph::getNode Instruction inst,
bool  createIfMissing = false
[inline]
 

Get the graph node for an instruction. There will be one if and only if there are any dependences incident on this instruction. If there is none, these methods will return NULL.

Definition at line 188 of file DependenceGraph.h.

Referenced by llvm::DepIterState::DepIterState(), llvm::PgmDependenceGraph::print(), and llvm::DepIterState::SetFirstSSADep().

const_iterator llvm::DependenceGraph::inDepBegin const DepGraphNode T  )  const [inline]
 

Definition at line 199 of file DependenceGraph.h.

References llvm::DepGraphNode::inDeps.

iterator llvm::DependenceGraph::inDepBegin DepGraphNode T  )  [inline]
 

Definition at line 196 of file DependenceGraph.h.

References llvm::DepGraphNode::inDeps.

Referenced by llvm::DepIterState::DepIterState().

const_iterator llvm::DependenceGraph::inDepEnd const DepGraphNode T  )  const [inline]
 

Definition at line 206 of file DependenceGraph.h.

References llvm::DepGraphNode::inDeps.

iterator llvm::DependenceGraph::inDepEnd DepGraphNode T  )  [inline]
 

Definition at line 203 of file DependenceGraph.h.

References llvm::DepGraphNode::inDeps.

Referenced by llvm::DepIterState::SetFirstMemoryDep().

const_iterator llvm::DependenceGraph::outDepBegin const DepGraphNode F  )  const [inline]
 

Definition at line 213 of file DependenceGraph.h.

References llvm::DepGraphNode::outDeps.

iterator llvm::DependenceGraph::outDepBegin DepGraphNode F  )  [inline]
 

Definition at line 210 of file DependenceGraph.h.

References llvm::DepGraphNode::outDeps.

Referenced by llvm::DepIterState::DepIterState().

const_iterator llvm::DependenceGraph::outDepEnd const DepGraphNode F  )  const [inline]
 

Definition at line 220 of file DependenceGraph.h.

References llvm::DepGraphNode::outDeps.

iterator llvm::DependenceGraph::outDepEnd DepGraphNode F  )  [inline]
 

Definition at line 217 of file DependenceGraph.h.

References llvm::DepGraphNode::outDeps.

Referenced by llvm::DepIterState::SetFirstMemoryDep().

void llvm::DependenceGraph::print const Function func,
std::ostream &  O
const
 

Debugging support methods

Definition at line 78 of file DependenceGraph.cpp.

References llvm::Function::begin(), llvm::Function::end(), and llvm::Value::getName().

Referenced by llvm::MemoryDepAnalysis::print().


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