|
LLVM 22.0.0git
|
#include "Target/AMDGPU/SIMachineScheduler.h"
Public Member Functions | |
| SIScheduleBlock (SIScheduleDAGMI *DAG, SIScheduleBlockCreator *BC, unsigned ID) | |
| ~SIScheduleBlock ()=default | |
| unsigned | getID () const |
| void | addUnit (SUnit *SU) |
| Functions for Block construction. | |
| void | finalizeUnits () |
| void | addPred (SIScheduleBlock *Pred) |
| void | addSucc (SIScheduleBlock *Succ, SIScheduleBlockLinkKind Kind) |
| const std::vector< SIScheduleBlock * > & | getPreds () const |
| ArrayRef< std::pair< SIScheduleBlock *, SIScheduleBlockLinkKind > > | getSuccs () const |
| unsigned | getNumHighLatencySuccessors () const |
| bool | isHighLatencyBlock () |
| int | getCost () |
| void | fastSchedule () |
| std::vector< SUnit * > | getScheduledUnits () |
| void | schedule (MachineBasicBlock::iterator BeginBlock, MachineBasicBlock::iterator EndBlock) |
| bool | isScheduled () |
| std::vector< unsigned > & | getInternalAdditionalRegUsage () |
| std::set< Register > & | getInRegs () |
| std::set< Register > & | getOutRegs () |
| void | printDebug (bool Full) |
Public Attributes | |
| unsigned | Height = 0 |
| unsigned | Depth = 0 |
Definition at line 58 of file SIMachineScheduler.h.
|
inline |
Definition at line 101 of file SIMachineScheduler.h.
Referenced by addPred(), addSucc(), and printDebug().
|
default |
| void SIScheduleBlock::addPred | ( | SIScheduleBlock * | Pred | ) |
Definition at line 512 of file SIMachineScheduler.cpp.
References assert(), llvm::none_of(), P, and SIScheduleBlock().
| void SIScheduleBlock::addSucc | ( | SIScheduleBlock * | Succ, |
| SIScheduleBlockLinkKind | Kind ) |
Definition at line 530 of file SIMachineScheduler.cpp.
References assert(), getID(), isHighLatencyBlock(), llvm::NoData, llvm::none_of(), P, and SIScheduleBlock().
| void SIScheduleBlock::addUnit | ( | SUnit * | SU | ) |
Functions for Block construction.
Definition at line 176 of file SIMachineScheduler.cpp.
References llvm::SUnit::NodeNum.
| void SIScheduleBlock::fastSchedule | ( | ) |
Definition at line 267 of file SIMachineScheduler.cpp.
Referenced by schedule().
| void SIScheduleBlock::finalizeUnits | ( | ) |
Definition at line 501 of file SIMachineScheduler.cpp.
References llvm::SUnit::NodeNum.
|
inline |
Definition at line 135 of file SIMachineScheduler.h.
|
inline |
Definition at line 107 of file SIMachineScheduler.h.
Referenced by addSucc().
|
inline |
Definition at line 160 of file SIMachineScheduler.h.
|
inline |
Definition at line 156 of file SIMachineScheduler.h.
|
inline |
Definition at line 126 of file SIMachineScheduler.h.
|
inline |
Definition at line 161 of file SIMachineScheduler.h.
|
inline |
Definition at line 119 of file SIMachineScheduler.h.
|
inline |
Definition at line 142 of file SIMachineScheduler.h.
|
inline |
Definition at line 121 of file SIMachineScheduler.h.
|
inline |
Definition at line 130 of file SIMachineScheduler.h.
Referenced by addSucc().
|
inline |
Definition at line 152 of file SIMachineScheduler.h.
| void SIScheduleBlock::printDebug | ( | bool | Full | ) |
Definition at line 553 of file SIMachineScheduler.cpp.
References llvm::dbgs(), P, llvm::printVRegOrUnit(), and SIScheduleBlock().
| void SIScheduleBlock::schedule | ( | MachineBasicBlock::iterator | BeginBlock, |
| MachineBasicBlock::iterator | EndBlock ) |
Definition at line 373 of file SIMachineScheduler.cpp.
References assert(), fastSchedule(), and llvm::SUnit::getInstr().
| unsigned llvm::SIScheduleBlock::Depth = 0 |
Definition at line 124 of file SIMachineScheduler.h.
| unsigned llvm::SIScheduleBlock::Height = 0 |
Definition at line 123 of file SIMachineScheduler.h.