LLVM 22.0.0git
|
Capture a change in pressure for a single pressure set. More...
#include "llvm/CodeGen/RegisterPressure.h"
Public Member Functions | |
PressureChange ()=default | |
PressureChange (unsigned id) | |
bool | isValid () const |
unsigned | getPSet () const |
unsigned | getPSetOrMax () const |
int | getUnitInc () const |
void | setUnitInc (int Inc) |
bool | operator== (const PressureChange &RHS) const |
LLVM_ABI void | dump () const |
Capture a change in pressure for a single pressure set.
UnitInc may be expressed in terms of upward or downward pressure depending on the client and will be dynamically adjusted for current liveness.
Pressure increments are tiny, typically 1-2 units, and this is only for heuristics, so we don't check UnitInc overflow. Instead, we may have a higher level assert that pressure is consistent within a region. We also effectively ignore dead defs which don't affect heuristics much.
Definition at line 103 of file RegisterPressure.h.
|
default |
Referenced by operator==().
|
inline |
Definition at line 109 of file RegisterPressure.h.
References assert().
LLVM_DUMP_METHOD void PressureChange::dump | ( | ) | const |
Definition at line 135 of file RegisterPressure.cpp.
References llvm::dbgs(), getPSetOrMax(), and getUnitInc().
|
inline |
Definition at line 115 of file RegisterPressure.h.
References assert(), and isValid().
Referenced by llvm::PressureDiff::dump(), llvm::RegPressureTracker::getMaxUpwardPressureDelta(), and llvm::GenericScheduler::initCandidate().
|
inline |
Definition at line 121 of file RegisterPressure.h.
Referenced by dump(), and llvm::tryPressure().
|
inline |
Definition at line 125 of file RegisterPressure.h.
Referenced by dump(), llvm::PressureDiff::dump(), llvm::RegPressureTracker::getMaxDownwardPressureDelta(), llvm::RegPressureTracker::getMaxUpwardPressureDelta(), llvm::GenericScheduler::initCandidate(), llvm::ConvergingVLIWScheduler::SchedulingCost(), and llvm::tryPressure().
|
inline |
Definition at line 113 of file RegisterPressure.h.
Referenced by llvm::PressureDiffs::addInstruction(), llvm::PressureDiff::addPressureChange(), computeMaxPressureDelta(), llvm::PressureDiff::dump(), llvm::RegPressureTracker::getMaxUpwardPressureDelta(), getPSet(), llvm::RegPressureTracker::getUpwardPressureDelta(), llvm::GenericScheduler::initCandidate(), llvm::tryPressure(), and llvm::ScheduleDAGMILive::updatePressureDiffs().
|
inline |
Definition at line 129 of file RegisterPressure.h.
References PressureChange(), and RHS.
|
inline |
Definition at line 127 of file RegisterPressure.h.
Referenced by computeExcessPressureDelta(), computeMaxPressureDelta(), llvm::RegPressureTracker::getUpwardPressureDelta(), and llvm::GCNSchedStrategy::initCandidate().