LLVM API Documentation

llvm::InstrSchedule Class Reference

Collaboration diagram for llvm::InstrSchedule:

Collaboration graph
[legend]
List of all members.

Public Types

typedef ScheduleIterator<
SchedGraphNode
iterator
typedef ScheduleIterator<
const SchedGraphNode
const_iterator

Public Member Functions

iterator begin ()
const_iterator begin () const
iterator end ()
const_iterator end () const
 InstrSchedule (unsigned int _nslots, unsigned int _numNodes)
 ~InstrSchedule ()
const SchedGraphNodegetInstr (unsigned int slotNum, CycleCount_t c)
InstrGroupgetIGroup (CycleCount_t c)
const InstrGroupgetIGroup (CycleCount_t c) const
CycleCount_t getStartTime (unsigned int nodeId) const
unsigned int getNumInstructions () const
void scheduleInstr (const SchedGraphNode *node, unsigned int slotNum, CycleCount_t cycle)

Friends

class ScheduleIterator< SchedGraphNode >
class ScheduleIterator< const SchedGraphNode >

Detailed Description

Definition at line 141 of file InstrScheduling.cpp.


Member Typedef Documentation

typedef ScheduleIterator<const SchedGraphNode> llvm::InstrSchedule::const_iterator

Definition at line 152 of file InstrScheduling.cpp.

typedef ScheduleIterator<SchedGraphNode> llvm::InstrSchedule::iterator

Definition at line 151 of file InstrScheduling.cpp.


Constructor & Destructor Documentation

llvm::InstrSchedule::InstrSchedule ( unsigned int  _nslots,
unsigned int  _numNodes 
)

Definition at line 221 of file InstrScheduling.cpp.

llvm::InstrSchedule::~InstrSchedule (  ) 

Definition at line 231 of file InstrScheduling.cpp.

References c.


Member Function Documentation

const_iterator llvm::InstrSchedule::begin (  )  const [inline]

Definition at line 155 of file InstrScheduling.cpp.

References llvm::ScheduleIterator< _NodeType >::begin().

iterator llvm::InstrSchedule::begin (  )  [inline]

Definition at line 154 of file InstrScheduling.cpp.

References llvm::ScheduleIterator< _NodeType >::begin().

Referenced by llvm::RecordSchedule().

const_iterator llvm::InstrSchedule::end (  )  const [inline]

Definition at line 157 of file InstrScheduling.cpp.

References llvm::ScheduleIterator< _NodeType >::end().

iterator llvm::InstrSchedule::end (  )  [inline]

Definition at line 156 of file InstrScheduling.cpp.

References llvm::ScheduleIterator< _NodeType >::end().

Referenced by llvm::RecordSchedule().

const InstrGroup* llvm::InstrSchedule::getIGroup ( CycleCount_t  c  )  const [inline]

Definition at line 179 of file InstrScheduling.cpp.

InstrGroup* llvm::InstrSchedule::getIGroup ( CycleCount_t  c  )  [inline]

Definition at line 171 of file InstrScheduling.cpp.

Referenced by llvm::ChooseOneGroup(), llvm::FindSlotChoices(), llvm::ForwardListSchedule(), getInstr(), and scheduleInstr().

const SchedGraphNode* llvm::InstrSchedule::getInstr ( unsigned int  slotNum,
CycleCount_t  c 
) [inline]

Definition at line 165 of file InstrScheduling.cpp.

References getIGroup().

Referenced by llvm::DelaySlotInfo::scheduleDelayedNode().

unsigned int llvm::InstrSchedule::getNumInstructions (  )  const [inline]

Definition at line 189 of file InstrScheduling.cpp.

Referenced by llvm::SchedulingManager::getNumScheduled(), llvm::SchedulingManager::getNumUnscheduled(), and llvm::RecordSchedule().

CycleCount_t llvm::InstrSchedule::getStartTime ( unsigned int  nodeId  )  const [inline]

Definition at line 184 of file InstrScheduling.cpp.

Referenced by llvm::SchedulingManager::isScheduled().

void llvm::InstrSchedule::scheduleInstr ( const SchedGraphNode node,
unsigned int  slotNum,
CycleCount_t  cycle 
) [inline]

Definition at line 193 of file InstrScheduling.cpp.

References abort(), llvm::InstrGroup::addInstr(), getIGroup(), and llvm::SchedGraphNodeCommon::getNodeId().

Referenced by llvm::SchedulingManager::scheduleInstr().


Friends And Related Function Documentation

friend class ScheduleIterator< const SchedGraphNode > [friend]

Definition at line 209 of file InstrScheduling.cpp.

friend class ScheduleIterator< SchedGraphNode > [friend]

Definition at line 208 of file InstrScheduling.cpp.


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