LLVM 20.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 |
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 102 of file RegisterPressure.h.
|
default |
|
inline |
Definition at line 108 of file RegisterPressure.h.
References assert().
LLVM_DUMP_METHOD void PressureChange::dump | ( | ) | const |
Definition at line 138 of file RegisterPressure.cpp.
References llvm::dbgs(), getPSetOrMax(), and getUnitInc().
Referenced by llvm::RegPressureDelta::dump().
|
inline |
Definition at line 114 of file RegisterPressure.h.
References assert(), and isValid().
Referenced by llvm::PressureDiff::dump(), llvm::RegPressureTracker::getMaxUpwardPressureDelta(), and llvm::GenericScheduler::initCandidate().
|
inline |
Definition at line 120 of file RegisterPressure.h.
Referenced by dump(), and llvm::tryPressure().
|
inline |
Definition at line 124 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 112 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(), and llvm::tryPressure().
|
inline |
Definition at line 128 of file RegisterPressure.h.
References RHS.
|
inline |
Definition at line 126 of file RegisterPressure.h.
Referenced by computeExcessPressureDelta(), computeMaxPressureDelta(), llvm::RegPressureTracker::getUpwardPressureDelta(), and llvm::GCNSchedStrategy::initCandidate().