LLVM API Documentation

Public Member Functions
llvm::LatencyPriorityQueue Class Reference

#include <LatencyPriorityQueue.h>

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

List of all members.

Public Member Functions

 LatencyPriorityQueue ()
bool isBottomUp () const
void initNodes (std::vector< SUnit > &sunits)
void addNode (const SUnit *SU)
void updateNode (const SUnit *SU)
void releaseState ()
unsigned getLatency (unsigned NodeNum) const
unsigned getNumSolelyBlockNodes (unsigned NodeNum) const
bool empty () const
virtual void push (SUnit *U)
virtual SUnitpop ()
virtual void remove (SUnit *SU)
virtual void dump (ScheduleDAG *DAG) const
void scheduledNode (SUnit *Node)

Detailed Description

Definition at line 32 of file LatencyPriorityQueue.h.


Constructor & Destructor Documentation

llvm::LatencyPriorityQueue::LatencyPriorityQueue ( ) [inline]

Definition at line 47 of file LatencyPriorityQueue.h.


Member Function Documentation

void llvm::LatencyPriorityQueue::addNode ( const SUnit SU) [inline, virtual]

Implements llvm::SchedulingPriorityQueue.

Definition at line 57 of file LatencyPriorityQueue.h.

void LatencyPriorityQueue::dump ( ScheduleDAG DAG) const [virtual]
bool llvm::LatencyPriorityQueue::empty ( ) const [inline, virtual]

Implements llvm::SchedulingPriorityQueue.

Definition at line 78 of file LatencyPriorityQueue.h.

Referenced by dump(), and pop().

unsigned llvm::LatencyPriorityQueue::getLatency ( unsigned  NodeNum) const [inline]

Definition at line 68 of file LatencyPriorityQueue.h.

Referenced by llvm::latency_sort::operator()().

unsigned llvm::LatencyPriorityQueue::getNumSolelyBlockNodes ( unsigned  NodeNum) const [inline]

Definition at line 73 of file LatencyPriorityQueue.h.

Referenced by llvm::latency_sort::operator()().

void llvm::LatencyPriorityQueue::initNodes ( std::vector< SUnit > &  sunits) [inline, virtual]

Implements llvm::SchedulingPriorityQueue.

Definition at line 52 of file LatencyPriorityQueue.h.

bool llvm::LatencyPriorityQueue::isBottomUp ( ) const [inline, virtual]

Implements llvm::SchedulingPriorityQueue.

Definition at line 50 of file LatencyPriorityQueue.h.

SUnit * LatencyPriorityQueue::pop ( ) [virtual]

Implements llvm::SchedulingPriorityQueue.

Definition at line 119 of file LatencyPriorityQueue.cpp.

References empty(), I, llvm::next(), llvm::prior(), and llvm::swap().

Referenced by dump().

void LatencyPriorityQueue::push ( SUnit U) [virtual]
void llvm::LatencyPriorityQueue::releaseState ( ) [inline, virtual]

Implements llvm::SchedulingPriorityQueue.

Definition at line 64 of file LatencyPriorityQueue.h.

void LatencyPriorityQueue::remove ( SUnit SU) [virtual]

Implements llvm::SchedulingPriorityQueue.

Definition at line 133 of file LatencyPriorityQueue.cpp.

References I, llvm::prior(), and llvm::swap().

void LatencyPriorityQueue::scheduledNode ( SUnit ) [virtual]

scheduledNode - As each node is scheduled, this method is invoked. This allows the priority function to adjust the priority of related unscheduled nodes, for example.

Reimplemented from llvm::SchedulingPriorityQueue.

Definition at line 91 of file LatencyPriorityQueue.cpp.

References llvm::SmallVectorTemplateCommon< T, typename >::begin(), llvm::SmallVectorTemplateCommon< T, typename >::end(), I, and llvm::SUnit::Succs.

void llvm::LatencyPriorityQueue::updateNode ( const SUnit SU) [inline, virtual]

Implements llvm::SchedulingPriorityQueue.

Definition at line 61 of file LatencyPriorityQueue.h.


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