LLVM 17.0.0git
|
Store the effects of a change in pressure on things that MI scheduler cares about. More...
#include "llvm/CodeGen/RegisterPressure.h"
Public Member Functions | |
RegPressureDelta ()=default | |
bool | operator== (const RegPressureDelta &RHS) const |
bool | operator!= (const RegPressureDelta &RHS) const |
void | dump () const |
Public Attributes | |
PressureChange | Excess |
PressureChange | CriticalMax |
PressureChange | CurrentMax |
Store the effects of a change in pressure on things that MI scheduler cares about.
Excess records the value of the largest difference in register units beyond the target's pressure limits across the affected pressure sets, where largest is defined as the absolute value of the difference. Negative ExcessUnits indicates a reduction in pressure that had already exceeded the target's limits.
CriticalMax records the largest increase in the tracker's max pressure that exceeds the critical limit for some pressure set determined by the client.
CurrentMax records the largest increase in the tracker's max pressure that exceeds the current limit for some pressure set determined by the client.
Definition at line 238 of file RegisterPressure.h.
|
default |
void RegPressureDelta::dump | ( | ) | const |
Definition at line 143 of file RegisterPressure.cpp.
References CriticalMax, CurrentMax, llvm::dbgs(), llvm::PressureChange::dump(), and Excess.
|
inline |
Definition at line 249 of file RegisterPressure.h.
References operator==(), and RHS.
|
inline |
Definition at line 245 of file RegisterPressure.h.
References CriticalMax, CurrentMax, Excess, and RHS.
Referenced by operator!=().
PressureChange llvm::RegPressureDelta::CriticalMax |
Definition at line 240 of file RegisterPressure.h.
Referenced by computeMaxPressureDelta(), dump(), llvm::RegPressureTracker::getMaxDownwardPressureDelta(), llvm::RegPressureTracker::getMaxUpwardPressureDelta(), llvm::RegPressureTracker::getUpwardPressureDelta(), llvm::GCNSchedStrategy::initCandidate(), operator==(), llvm::ConvergingVLIWScheduler::SchedulingCost(), llvm::GenericSchedulerBase::traceCandidate(), llvm::GenericScheduler::tryCandidate(), llvm::GCNMaxILPSchedStrategy::tryCandidate(), and llvm::PPCPreRASchedStrategy::tryCandidate().
PressureChange llvm::RegPressureDelta::CurrentMax |
Definition at line 241 of file RegisterPressure.h.
Referenced by computeMaxPressureDelta(), dump(), llvm::RegPressureTracker::getMaxDownwardPressureDelta(), llvm::RegPressureTracker::getMaxUpwardPressureDelta(), llvm::RegPressureTracker::getUpwardPressureDelta(), operator==(), llvm::ConvergingVLIWScheduler::SchedulingCost(), llvm::GenericSchedulerBase::traceCandidate(), llvm::GenericScheduler::tryCandidate(), llvm::GCNMaxILPSchedStrategy::tryCandidate(), and llvm::PPCPreRASchedStrategy::tryCandidate().
PressureChange llvm::RegPressureDelta::Excess |
Definition at line 239 of file RegisterPressure.h.
Referenced by computeExcessPressureDelta(), dump(), llvm::RegPressureTracker::getMaxUpwardPressureDelta(), llvm::RegPressureTracker::getUpwardPressureDelta(), llvm::GCNSchedStrategy::initCandidate(), llvm::GenericScheduler::initCandidate(), operator==(), llvm::ConvergingVLIWScheduler::SchedulingCost(), llvm::GenericSchedulerBase::traceCandidate(), llvm::GenericScheduler::tryCandidate(), llvm::GCNMaxILPSchedStrategy::tryCandidate(), and llvm::PPCPreRASchedStrategy::tryCandidate().