LLVM 20.0.0git
|
#include "Target/AMDGPU/GCNRegPressure.h"
Public Types | |
using | LiveRegSet = DenseMap< unsigned, LaneBitmask > |
Public Member Functions | |
void | reset (const MachineRegisterInfo &MRI_, const LiveRegSet &LiveRegs_) |
const decltype(LiveRegs) & | getLiveRegs () const |
const MachineInstr * | getLastTrackedMI () const |
void | clearMaxPressure () |
GCNRegPressure | getPressure () const |
decltype(LiveRegs) | moveLiveRegs () |
Protected Member Functions | |
GCNRPTracker (const LiveIntervals &LIS_) | |
void | reset (const MachineInstr &MI, const LiveRegSet *LiveRegsCopy, bool After) |
void | bumpDeadDefs (ArrayRef< RegisterMaskPair > DeadDefs) |
Mostly copy/paste from CodeGen/RegisterPressure.cpp. | |
LaneBitmask | getLastUsedLanes (Register RegUnit, SlotIndex Pos) const |
Mostly copy/paste from CodeGen/RegisterPressure.cpp. | |
Protected Attributes | |
const LiveIntervals & | LIS |
LiveRegSet | LiveRegs |
GCNRegPressure | CurPressure |
GCNRegPressure | MaxPressure |
const MachineInstr * | LastTrackedMI = nullptr |
const MachineRegisterInfo * | MRI = nullptr |
Definition at line 156 of file GCNRegPressure.h.
Definition at line 158 of file GCNRegPressure.h.
|
inlineprotected |
Definition at line 167 of file GCNRegPressure.h.
|
protected |
Mostly copy/paste from CodeGen/RegisterPressure.cpp.
|
inline |
Definition at line 184 of file GCNRegPressure.h.
References llvm::GCNRegPressure::clear(), and MaxPressure.
|
inline |
Definition at line 182 of file GCNRegPressure.h.
References LastTrackedMI.
Referenced by llvm::GCNIterativeScheduler::getRegionPressure().
|
protected |
Mostly copy/paste from CodeGen/RegisterPressure.cpp.
Definition at line 423 of file GCNRegPressure.cpp.
References llvm::SlotIndex::getBaseIndex(), getLanesWithProperty(), llvm::LaneBitmask::getNone(), LIS, and MRI.
Referenced by llvm::GCNDownwardRPTracker::bumpDownwardPressure().
Definition at line 181 of file GCNRegPressure.h.
References LiveRegs.
Referenced by llvm::GCNRegPressurePrinter::runOnMachineFunction().
|
inline |
Definition at line 186 of file GCNRegPressure.h.
References CurPressure.
Referenced by getRegisterPressures(), and llvm::GCNRegPressurePrinter::runOnMachineFunction().
|
inline |
Definition at line 188 of file GCNRegPressure.h.
References LiveRegs.
|
protected |
Definition at line 398 of file GCNRegPressure.cpp.
References After, CurPressure, llvm::getLiveRegsAfter(), llvm::getLiveRegsBefore(), llvm::MachineFunction::getRegInfo(), llvm::getRegPressure(), LIS, LiveRegs, MaxPressure, MI, and MRI.
Referenced by llvm::GCNDownwardRPTracker::reset(), and llvm::GCNUpwardRPTracker::reset().
void GCNRPTracker::reset | ( | const MachineRegisterInfo & | MRI_, |
const LiveRegSet & | LiveRegs_ | ||
) |
Definition at line 414 of file GCNRegPressure.cpp.
References CurPressure, llvm::getRegPressure(), LastTrackedMI, LiveRegs, MaxPressure, and MRI.
|
protected |
Definition at line 163 of file GCNRegPressure.h.
Referenced by llvm::GCNDownwardRPTracker::advanceBeforeNext(), llvm::GCNDownwardRPTracker::advanceToNext(), llvm::GCNDownwardRPTracker::bumpDownwardPressure(), getPressure(), llvm::GCNUpwardRPTracker::isValid(), llvm::GCNUpwardRPTracker::recede(), reset(), and llvm::GCNUpwardRPTracker::resetMaxPressure().
|
protected |
Definition at line 164 of file GCNRegPressure.h.
Referenced by llvm::GCNDownwardRPTracker::advanceBeforeNext(), llvm::GCNDownwardRPTracker::advanceToNext(), llvm::GCNDownwardRPTracker::bumpDownwardPressure(), getLastTrackedMI(), llvm::GCNUpwardRPTracker::recede(), llvm::GCNDownwardRPTracker::reset(), and reset().
|
protected |
Definition at line 161 of file GCNRegPressure.h.
Referenced by llvm::GCNDownwardRPTracker::advanceBeforeNext(), llvm::GCNDownwardRPTracker::bumpDownwardPressure(), getLastUsedLanes(), llvm::GCNUpwardRPTracker::isValid(), llvm::GCNUpwardRPTracker::recede(), reset(), and llvm::GCNUpwardRPTracker::reset().
|
protected |
Definition at line 162 of file GCNRegPressure.h.
Referenced by llvm::GCNDownwardRPTracker::advanceBeforeNext(), llvm::GCNDownwardRPTracker::advanceToNext(), llvm::GCNDownwardRPTracker::bumpDownwardPressure(), getLiveRegs(), llvm::GCNUpwardRPTracker::isValid(), moveLiveRegs(), llvm::GCNUpwardRPTracker::recede(), and reset().
|
protected |
Definition at line 163 of file GCNRegPressure.h.
Referenced by llvm::GCNDownwardRPTracker::advanceBeforeNext(), llvm::GCNDownwardRPTracker::advanceToNext(), clearMaxPressure(), llvm::GCNUpwardRPTracker::getMaxPressure(), llvm::GCNUpwardRPTracker::getMaxPressureAndReset(), llvm::GCNDownwardRPTracker::moveMaxPressure(), llvm::GCNUpwardRPTracker::recede(), reset(), and llvm::GCNUpwardRPTracker::resetMaxPressure().
|
mutableprotected |
Definition at line 165 of file GCNRegPressure.h.
Referenced by llvm::GCNDownwardRPTracker::advanceBeforeNext(), llvm::GCNDownwardRPTracker::advanceToNext(), llvm::GCNDownwardRPTracker::bumpDownwardPressure(), getLastUsedLanes(), llvm::GCNUpwardRPTracker::isValid(), llvm::GCNUpwardRPTracker::recede(), llvm::GCNDownwardRPTracker::reset(), reset(), and llvm::GCNUpwardRPTracker::reset().