LLVM API Documentation

llvm::MSchedGraphNode Class Reference

#include <MSchedGraph.h>

Collaboration diagram for llvm::MSchedGraphNode:

Collaboration graph
[legend]
List of all members.

Public Types

typedef std::vector< MSchedGraphNode
* >::iterator 
pred_iterator
typedef std::vector< MSchedGraphNode
* >::const_iterator 
pred_const_iterator
typedef MSchedGraphNodeIterator<
std::vector< MSchedGraphEdge
>::const_iterator, const MSchedGraphNode
succ_const_iterator
typedef MSchedGraphNodeIterator<
std::vector< MSchedGraphEdge
>::iterator, MSchedGraphNode
succ_iterator

Public Member Functions

 MSchedGraphNode (const MachineInstr *inst, MSchedGraph *graph, unsigned index, unsigned late=0, bool isBranch=false)
 MSchedGraphNode (const MSchedGraphNode &N)
pred_iterator pred_begin ()
pred_iterator pred_end ()
unsigned pred_size ()
pred_const_iterator pred_begin () const
pred_const_iterator pred_end () const
succ_const_iterator succ_begin () const
succ_const_iterator succ_end () const
succ_iterator succ_begin ()
succ_iterator succ_end ()
unsigned succ_size ()
void setPredecessor (unsigned index, MSchedGraphNode *dest)
MSchedGraphNodegetPredecessor (unsigned index)
MSchedGraphEdgegetSuccessor (unsigned index)
void deleteSuccessor (MSchedGraphNode *node)
void addOutEdge (MSchedGraphNode *destination, MSchedGraphEdge::MSchedGraphEdgeType type, unsigned deptype, unsigned diff=0)
const MachineInstrgetInst ()
MSchedGraphgetParent ()
bool hasPredecessors ()
bool hasSuccessors ()
unsigned getLatency ()
unsigned getLatency () const
unsigned getIndex ()
unsigned getIteDiff (MSchedGraphNode *succ)
MSchedGraphEdge getInEdge (MSchedGraphNode *pred)
unsigned getInEdgeNum (MSchedGraphNode *pred)
bool isSuccessor (MSchedGraphNode *)
bool isPredecessor (MSchedGraphNode *)
bool isBranch ()
void print (std::ostream &os) const
void setParent (MSchedGraph *p)

Detailed Description

Definition at line 69 of file MSchedGraph.h.


Member Typedef Documentation

typedef std::vector<MSchedGraphNode*>::const_iterator llvm::MSchedGraphNode::pred_const_iterator

Definition at line 92 of file MSchedGraph.h.

typedef std::vector<MSchedGraphNode*>::iterator llvm::MSchedGraphNode::pred_iterator

Definition at line 87 of file MSchedGraph.h.

typedef MSchedGraphNodeIterator<std::vector<MSchedGraphEdge>::const_iterator, const MSchedGraphNode> llvm::MSchedGraphNode::succ_const_iterator

Definition at line 97 of file MSchedGraph.h.

typedef MSchedGraphNodeIterator<std::vector<MSchedGraphEdge>::iterator, MSchedGraphNode> llvm::MSchedGraphNode::succ_iterator

Definition at line 102 of file MSchedGraph.h.


Constructor & Destructor Documentation

MSchedGraphNode::MSchedGraphNode ( const MachineInstr inst,
MSchedGraph graph,
unsigned  index,
unsigned  late = 0,
bool  isBranch = false 
)

Definition at line 35 of file MSchedGraph.cpp.

References llvm::MSchedGraph::addNode().

MSchedGraphNode::MSchedGraphNode ( const MSchedGraphNode N  ) 

Definition at line 46 of file MSchedGraph.cpp.

References index, Inst, isBranchInstr, latency, and Parent.


Member Function Documentation

void llvm::MSchedGraphNode::addOutEdge ( MSchedGraphNode destination,
MSchedGraphEdge::MSchedGraphEdgeType  type,
unsigned  deptype,
unsigned  diff = 0 
) [inline]

Definition at line 130 of file MSchedGraph.h.

References Predecessors.

void llvm::MSchedGraphNode::deleteSuccessor ( MSchedGraphNode node  )  [inline]

Definition at line 120 of file MSchedGraph.h.

References Predecessors.

unsigned llvm::MSchedGraphNode::getIndex (  )  [inline]

Definition at line 144 of file MSchedGraph.h.

MSchedGraphEdge MSchedGraphNode::getInEdge ( MSchedGraphNode pred  ) 

Definition at line 64 of file MSchedGraph.cpp.

References abort(), E, I, succ_begin(), and succ_end().

unsigned MSchedGraphNode::getInEdgeNum ( MSchedGraphNode pred  ) 

Definition at line 88 of file MSchedGraph.cpp.

References abort(), E, I, succ_begin(), and succ_end().

const MachineInstr* llvm::MSchedGraphNode::getInst (  )  [inline]

Definition at line 138 of file MSchedGraph.h.

Referenced by llvm::MSchedGraph::deleteNode().

unsigned MSchedGraphNode::getIteDiff ( MSchedGraphNode succ  ) 

Definition at line 77 of file MSchedGraph.cpp.

References E, and I.

unsigned llvm::MSchedGraphNode::getLatency (  )  const [inline]

Definition at line 143 of file MSchedGraph.h.

unsigned llvm::MSchedGraphNode::getLatency (  )  [inline]

Definition at line 142 of file MSchedGraph.h.

MSchedGraph* llvm::MSchedGraphNode::getParent (  )  [inline]

Definition at line 139 of file MSchedGraph.h.

MSchedGraphNode* llvm::MSchedGraphNode::getPredecessor ( unsigned  index  )  [inline]

Definition at line 112 of file MSchedGraph.h.

MSchedGraphEdge* llvm::MSchedGraphNode::getSuccessor ( unsigned  index  )  [inline]

Definition at line 116 of file MSchedGraph.h.

Referenced by hasPath().

bool llvm::MSchedGraphNode::hasPredecessors (  )  [inline]

Definition at line 140 of file MSchedGraph.h.

bool llvm::MSchedGraphNode::hasSuccessors (  )  [inline]

Definition at line 141 of file MSchedGraph.h.

bool llvm::MSchedGraphNode::isBranch (  )  [inline]

Definition at line 150 of file MSchedGraph.h.

bool MSchedGraphNode::isPredecessor ( MSchedGraphNode  ) 

Definition at line 112 of file MSchedGraph.cpp.

bool MSchedGraphNode::isSuccessor ( MSchedGraphNode  ) 

Definition at line 104 of file MSchedGraph.cpp.

References E, I, succ_begin(), and succ_end().

pred_const_iterator llvm::MSchedGraphNode::pred_begin (  )  const [inline]

Definition at line 93 of file MSchedGraph.h.

pred_iterator llvm::MSchedGraphNode::pred_begin (  )  [inline]

Definition at line 88 of file MSchedGraph.h.

Referenced by llvm::GraphTraits< Inverse< const MSchedGraph * > >::child_begin(), llvm::GraphTraits< Inverse< MSchedGraph * > >::child_begin(), and llvm::MSchedGraph::deleteNode().

pred_const_iterator llvm::MSchedGraphNode::pred_end (  )  const [inline]

Definition at line 94 of file MSchedGraph.h.

pred_iterator llvm::MSchedGraphNode::pred_end (  )  [inline]

Definition at line 89 of file MSchedGraph.h.

Referenced by llvm::GraphTraits< Inverse< const MSchedGraph * > >::child_end(), and llvm::GraphTraits< Inverse< MSchedGraph * > >::child_end().

unsigned llvm::MSchedGraphNode::pred_size (  )  [inline]

Definition at line 90 of file MSchedGraph.h.

Referenced by llvm::MSchedGraph::deleteNode().

void MSchedGraphNode::print ( std::ostream &  os  )  const

Definition at line 58 of file MSchedGraph.cpp.

Referenced by llvm::operator<<(), and llvm::MSchedGraph::print().

void llvm::MSchedGraphNode::setParent ( MSchedGraph p  )  [inline]

Definition at line 154 of file MSchedGraph.h.

void llvm::MSchedGraphNode::setPredecessor ( unsigned  index,
MSchedGraphNode dest 
) [inline]

Definition at line 108 of file MSchedGraph.h.

MSchedGraphNode::succ_iterator llvm::MSchedGraphNode::succ_begin (  )  [inline]

Definition at line 199 of file MSchedGraph.h.

MSchedGraphNode::succ_const_iterator llvm::MSchedGraphNode::succ_begin (  )  const [inline]

Definition at line 193 of file MSchedGraph.h.

Referenced by llvm::GraphTraits< const MSchedGraph * >::child_begin(), llvm::GraphTraits< MSchedGraph * >::child_begin(), llvm::GraphTraits< MSchedGraphNode * >::child_begin(), getInEdge(), getInEdgeNum(), and isSuccessor().

MSchedGraphNode::succ_iterator llvm::MSchedGraphNode::succ_end (  )  [inline]

Definition at line 202 of file MSchedGraph.h.

MSchedGraphNode::succ_const_iterator llvm::MSchedGraphNode::succ_end (  )  const [inline]

Definition at line 196 of file MSchedGraph.h.

Referenced by llvm::GraphTraits< const MSchedGraph * >::child_end(), llvm::GraphTraits< MSchedGraph * >::child_end(), llvm::GraphTraits< MSchedGraphNode * >::child_end(), getInEdge(), getInEdgeNum(), and isSuccessor().

unsigned llvm::MSchedGraphNode::succ_size (  )  [inline]

Definition at line 105 of file MSchedGraph.h.

Referenced by hasPath().


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