LLVM 20.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 240 of file RegisterPressure.h.
|
default |
void RegPressureDelta::dump | ( | ) | const |
Definition at line 142 of file RegisterPressure.cpp.
References CriticalMax, CurrentMax, llvm::dbgs(), llvm::PressureChange::dump(), and Excess.
|
inline |
Definition at line 251 of file RegisterPressure.h.
References operator==(), and RHS.
|
inline |
Definition at line 247 of file RegisterPressure.h.
References CriticalMax, CurrentMax, Excess, and RHS.
Referenced by operator!=().
PressureChange llvm::RegPressureDelta::CriticalMax |
Definition at line 242 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(), llvm::GCNMaxMemoryClauseSchedStrategy::tryCandidate(), and llvm::PPCPreRASchedStrategy::tryCandidate().
PressureChange llvm::RegPressureDelta::CurrentMax |
Definition at line 243 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(), llvm::GCNMaxMemoryClauseSchedStrategy::tryCandidate(), and llvm::PPCPreRASchedStrategy::tryCandidate().
PressureChange llvm::RegPressureDelta::Excess |
Definition at line 241 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(), llvm::GCNMaxMemoryClauseSchedStrategy::tryCandidate(), and llvm::PPCPreRASchedStrategy::tryCandidate().