|
LLVM
4.0.0
|
#include <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. More... | |
| void | finalizeUnits () |
| void | addPred (SIScheduleBlock *Pred) |
| void | addSucc (SIScheduleBlock *Succ) |
| const std::vector < SIScheduleBlock * > & | getPreds () const |
| const std::vector < SIScheduleBlock * > & | 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 > & | getInternalAdditionnalRegUsage () |
| std::set< unsigned > & | getInRegs () |
| std::set< unsigned > & | getOutRegs () |
| void | printDebug (bool Full) |
Public Attributes | |
| unsigned | Height |
| unsigned | Depth |
Definition at line 58 of file SIMachineScheduler.h.
|
inline |
Definition at line 100 of file SIMachineScheduler.h.
|
default |
| void SIScheduleBlock::addPred | ( | SIScheduleBlock * | Pred | ) |
Definition at line 531 of file SIMachineScheduler.cpp.
References assert(), getID(), llvm::none_of(), and P.
| void SIScheduleBlock::addSucc | ( | SIScheduleBlock * | Succ | ) |
Definition at line 546 of file SIMachineScheduler.cpp.
References assert(), getID(), isHighLatencyBlock(), llvm::none_of(), and P.
| void SIScheduleBlock::addUnit | ( | SUnit * | SU | ) |
Functions for Block construction.
Definition at line 193 of file SIMachineScheduler.cpp.
References llvm::SUnit::NodeNum.
| void SIScheduleBlock::fastSchedule | ( | ) |
Definition at line 282 of file SIMachineScheduler.cpp.
Referenced by schedule().
| void SIScheduleBlock::finalizeUnits | ( | ) |
Definition at line 520 of file SIMachineScheduler.cpp.
References llvm::SIScheduleDAGMI::IsHighLatencySU, and llvm::SUnit::NodeNum.
|
inline |
Definition at line 134 of file SIMachineScheduler.h.
|
inline |
Definition at line 107 of file SIMachineScheduler.h.
Referenced by addPred(), addSucc(), and llvm::SIScheduleBlockScheduler::SIScheduleBlockScheduler().
|
inline |
Definition at line 159 of file SIMachineScheduler.h.
Referenced by llvm::SIScheduleBlockScheduler::SIScheduleBlockScheduler().
|
inline |
Definition at line 155 of file SIMachineScheduler.h.
|
inline |
Definition at line 125 of file SIMachineScheduler.h.
|
inline |
Definition at line 160 of file SIMachineScheduler.h.
|
inline |
Definition at line 119 of file SIMachineScheduler.h.
Referenced by llvm::SIScheduleBlockScheduler::SIScheduleBlockScheduler().
|
inline |
Definition at line 141 of file SIMachineScheduler.h.
Referenced by llvm::SIScheduler::scheduleVariant().
|
inline |
Definition at line 120 of file SIMachineScheduler.h.
Referenced by llvm::SIScheduleBlockScheduler::SIScheduleBlockScheduler().
|
inline |
Definition at line 129 of file SIMachineScheduler.h.
Referenced by addSucc().
|
inline |
Definition at line 151 of file SIMachineScheduler.h.
| void SIScheduleBlock::printDebug | ( | bool | Full | ) |
Definition at line 563 of file SIMachineScheduler.cpp.
References llvm::dbgs(), llvm::SUnit::dump(), llvm::SIScheduleDAGMI::getSGPRSetID(), llvm::SIScheduleDAGMI::getTRI(), llvm::SIScheduleDAGMI::getVGPRSetID(), P, and llvm::PrintVRegOrUnit().
| void SIScheduleBlock::schedule | ( | MachineBasicBlock::iterator | BeginBlock, |
| MachineBasicBlock::iterator | EndBlock | ||
| ) |
Definition at line 392 of file SIMachineScheduler.cpp.
References llvm::RegPressureTracker::advance(), assert(), fastSchedule(), llvm::SUnit::getInstr(), llvm::RegisterPressure::MaxSetPressure, and llvm::RegPressureTracker::setPos().
| unsigned llvm::SIScheduleBlock::Depth |
Definition at line 123 of file SIMachineScheduler.h.
| unsigned llvm::SIScheduleBlock::Height |
Definition at line 122 of file SIMachineScheduler.h.
1.8.6