LLVM API Documentation

llvm::SchedGraphEdge Class Reference

#include <SchedGraphCommon.h>

Collaboration diagram for llvm::SchedGraphEdge:

Collaboration graph
[legend]
List of all members.

Public Types

 CtrlDep
 MemoryDep
 ValueDep
 MachineRegister
 MachineResource
 TrueDep = 0x1
 AntiDep = 0x2
 OutputDep = 0x4
 NonDataDep = 0x8
enum  SchedGraphEdgeDepType {
  CtrlDep, MemoryDep, ValueDep, MachineRegister,
  MachineResource
}
enum  DataDepOrderType { TrueDep = 0x1, AntiDep = 0x2, OutputDep = 0x4, NonDataDep = 0x8 }

Public Member Functions

 SchedGraphEdge (SchedGraphNodeCommon *_src, SchedGraphNodeCommon *_sink, SchedGraphEdgeDepType _depType, unsigned int _depOrderType, int _minDelay=-1)
 SchedGraphEdge (SchedGraphNodeCommon *_src, SchedGraphNodeCommon *_sink, const Value *_val, unsigned int _depOrderType, int _minDelay=-1)
 SchedGraphEdge (SchedGraphNodeCommon *_src, SchedGraphNodeCommon *_sink, unsigned int _regNum, unsigned int _depOrderType, int _minDelay=-1)
 SchedGraphEdge (SchedGraphNodeCommon *_src, SchedGraphNodeCommon *_sink, ResourceId _resourceId, int _minDelay=-1)
 ~SchedGraphEdge ()
SchedGraphNodeCommongetSrc () const
SchedGraphNodeCommongetSink () const
int getMinDelay () const
SchedGraphEdgeDepType getDepType () const
unsigned int getDepOrderType () const
const ValuegetValue () const
int getMachineReg () const
int getResourceId () const
void setIteDiff (int _iteDiff)
int getIteDiff ()
void print (std::ostream &os) const
void dump (int indent=0) const

Protected Attributes

SchedGraphNodeCommonsrc
SchedGraphNodeCommonsink
SchedGraphEdgeDepType depType
unsigned int depOrderType
int minDelay
int iteDiff
union {
   const Value *   val
   int   machineRegNum
   ResourceId   resourceId
}; 

Detailed Description

Definition at line 107 of file SchedGraphCommon.h.


Member Enumeration Documentation

enum llvm::SchedGraphEdge::DataDepOrderType

Enumerator:
TrueDep 
AntiDep 
OutputDep 
NonDataDep 

Definition at line 112 of file SchedGraphCommon.h.

enum llvm::SchedGraphEdge::SchedGraphEdgeDepType

Enumerator:
CtrlDep 
MemoryDep 
ValueDep 
MachineRegister 
MachineResource 

Definition at line 109 of file SchedGraphCommon.h.


Constructor & Destructor Documentation

llvm::SchedGraphEdge::SchedGraphEdge ( SchedGraphNodeCommon _src,
SchedGraphNodeCommon _sink,
SchedGraphEdgeDepType  _depType,
unsigned int  _depOrderType,
int  _minDelay = -1 
)

Definition at line 27 of file SchedGraphCommon.cpp.

References llvm::SchedGraphNodeCommon::addInEdge(), llvm::SchedGraphNodeCommon::addOutEdge(), iteDiff, sink, and src.

llvm::SchedGraphEdge::SchedGraphEdge ( SchedGraphNodeCommon _src,
SchedGraphNodeCommon _sink,
const Value _val,
unsigned int  _depOrderType,
int  _minDelay = -1 
)

Definition at line 41 of file SchedGraphCommon.cpp.

References llvm::SchedGraphNodeCommon::addInEdge(), llvm::SchedGraphNodeCommon::addOutEdge(), iteDiff, sink, and src.

llvm::SchedGraphEdge::SchedGraphEdge ( SchedGraphNodeCommon _src,
SchedGraphNodeCommon _sink,
unsigned int  _regNum,
unsigned int  _depOrderType,
int  _minDelay = -1 
)

Definition at line 54 of file SchedGraphCommon.cpp.

References llvm::SchedGraphNodeCommon::addInEdge(), llvm::SchedGraphNodeCommon::addOutEdge(), iteDiff, sink, and src.

llvm::SchedGraphEdge::SchedGraphEdge ( SchedGraphNodeCommon _src,
SchedGraphNodeCommon _sink,
ResourceId  _resourceId,
int  _minDelay = -1 
)

Definition at line 69 of file SchedGraphCommon.cpp.

References llvm::SchedGraphNodeCommon::addInEdge(), llvm::SchedGraphNodeCommon::addOutEdge(), iteDiff, sink, and src.

llvm::SchedGraphEdge::~SchedGraphEdge (  )  [inline]

Definition at line 155 of file SchedGraphCommon.h.


Member Function Documentation

void llvm::SchedGraphEdge::dump ( int  indent = 0  )  const

Definition at line 83 of file SchedGraphCommon.cpp.

unsigned int llvm::SchedGraphEdge::getDepOrderType (  )  const [inline]

Definition at line 161 of file SchedGraphCommon.h.

References depOrderType.

SchedGraphEdgeDepType llvm::SchedGraphEdge::getDepType (  )  const [inline]

Definition at line 160 of file SchedGraphCommon.h.

References depType.

int llvm::SchedGraphEdge::getIteDiff (  )  [inline]

Definition at line 179 of file SchedGraphCommon.h.

References iteDiff.

int llvm::SchedGraphEdge::getMachineReg (  )  const [inline]

Definition at line 167 of file SchedGraphCommon.h.

References depType, MachineRegister, and machineRegNum.

int llvm::SchedGraphEdge::getMinDelay (  )  const [inline]

Definition at line 159 of file SchedGraphCommon.h.

References minDelay.

int llvm::SchedGraphEdge::getResourceId (  )  const [inline]

Definition at line 171 of file SchedGraphCommon.h.

References depType, MachineResource, and resourceId.

SchedGraphNodeCommon* llvm::SchedGraphEdge::getSink (  )  const [inline]

Definition at line 158 of file SchedGraphCommon.h.

References sink.

Referenced by llvm::SchedGraphNodeCommon::removeInEdge().

SchedGraphNodeCommon* llvm::SchedGraphEdge::getSrc (  )  const [inline]

Definition at line 157 of file SchedGraphCommon.h.

References src.

Referenced by llvm::SchedGraphNodeCommon::removeOutEdge().

const Value* llvm::SchedGraphEdge::getValue (  )  const [inline]

Definition at line 163 of file SchedGraphCommon.h.

References depType, val, and ValueDep.

void llvm::SchedGraphEdge::print ( std::ostream &  os  )  const

Definition at line 689 of file SchedGraph.cpp.

References CtrlDep, depType, llvm::SchedGraphNodeCommon::getNodeId(), MachineRegister, machineRegNum, MachineResource, MemoryDep, minDelay, resourceId, sink, src, val, and ValueDep.

Referenced by llvm::operator<<().

void llvm::SchedGraphEdge::setIteDiff ( int  _iteDiff  )  [inline]

Definition at line 175 of file SchedGraphCommon.h.

References iteDiff.


Member Data Documentation

union { ... } [protected]

unsigned int llvm::SchedGraphEdge::depOrderType [protected]

Definition at line 120 of file SchedGraphCommon.h.

Referenced by getDepOrderType().

SchedGraphEdgeDepType llvm::SchedGraphEdge::depType [protected]

Definition at line 119 of file SchedGraphCommon.h.

Referenced by getDepType(), getMachineReg(), getResourceId(), getValue(), and print().

int llvm::SchedGraphEdge::iteDiff [protected]

Definition at line 122 of file SchedGraphCommon.h.

Referenced by getIteDiff(), SchedGraphEdge(), and setIteDiff().

int llvm::SchedGraphEdge::machineRegNum [protected]

Definition at line 126 of file SchedGraphCommon.h.

Referenced by getMachineReg(), and print().

int llvm::SchedGraphEdge::minDelay [protected]

Definition at line 121 of file SchedGraphCommon.h.

Referenced by getMinDelay(), and print().

ResourceId llvm::SchedGraphEdge::resourceId [protected]

Definition at line 127 of file SchedGraphCommon.h.

Referenced by getResourceId(), and print().

SchedGraphNodeCommon* llvm::SchedGraphEdge::sink [protected]

Definition at line 118 of file SchedGraphCommon.h.

Referenced by getSink(), print(), and SchedGraphEdge().

SchedGraphNodeCommon* llvm::SchedGraphEdge::src [protected]

Definition at line 117 of file SchedGraphCommon.h.

Referenced by getSrc(), print(), and SchedGraphEdge().

const Value* llvm::SchedGraphEdge::val [protected]

Definition at line 125 of file SchedGraphCommon.h.

Referenced by getValue(), and print().


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