LLVM 20.0.0git
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
llvm::GCNRPTracker Class Reference

#include "Target/AMDGPU/GCNRegPressure.h"

Inheritance diagram for llvm::GCNRPTracker:
Inheritance graph
[legend]

Public Types

using LiveRegSet = DenseMap< unsigned, LaneBitmask >
 

Public Member Functions

void reset (const MachineRegisterInfo &MRI_, const LiveRegSet &LiveRegs_)
 
const decltype(LiveRegs) & getLiveRegs () const
 
const MachineInstrgetLastTrackedMI () const
 
void clearMaxPressure ()
 
GCNRegPressure getPressure () const
 
decltype(LiveRegsmoveLiveRegs ()
 

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 LiveIntervalsLIS
 
LiveRegSet LiveRegs
 
GCNRegPressure CurPressure
 
GCNRegPressure MaxPressure
 
const MachineInstrLastTrackedMI = nullptr
 
const MachineRegisterInfoMRI = nullptr
 

Detailed Description

Definition at line 156 of file GCNRegPressure.h.

Member Typedef Documentation

◆ LiveRegSet

Definition at line 158 of file GCNRegPressure.h.

Constructor & Destructor Documentation

◆ GCNRPTracker()

llvm::GCNRPTracker::GCNRPTracker ( const LiveIntervals LIS_)
inlineprotected

Definition at line 167 of file GCNRegPressure.h.

Member Function Documentation

◆ bumpDeadDefs()

void llvm::GCNRPTracker::bumpDeadDefs ( ArrayRef< RegisterMaskPair DeadDefs)
protected

Mostly copy/paste from CodeGen/RegisterPressure.cpp.

◆ clearMaxPressure()

void llvm::GCNRPTracker::clearMaxPressure ( )
inline

Definition at line 184 of file GCNRegPressure.h.

References llvm::GCNRegPressure::clear(), and MaxPressure.

◆ getLastTrackedMI()

const MachineInstr * llvm::GCNRPTracker::getLastTrackedMI ( ) const
inline

Definition at line 182 of file GCNRegPressure.h.

References LastTrackedMI.

Referenced by llvm::GCNIterativeScheduler::getRegionPressure().

◆ getLastUsedLanes()

LaneBitmask GCNRPTracker::getLastUsedLanes ( Register  RegUnit,
SlotIndex  Pos 
) const
protected

◆ getLiveRegs()

const decltype(LiveRegs) & llvm::GCNRPTracker::getLiveRegs ( ) const
inline

Definition at line 181 of file GCNRegPressure.h.

References LiveRegs.

Referenced by llvm::GCNRegPressurePrinter::runOnMachineFunction().

◆ getPressure()

GCNRegPressure llvm::GCNRPTracker::getPressure ( ) const
inline

◆ moveLiveRegs()

decltype(LiveRegs) llvm::GCNRPTracker::moveLiveRegs ( )
inline

Definition at line 188 of file GCNRegPressure.h.

References LiveRegs.

◆ reset() [1/2]

void GCNRPTracker::reset ( const MachineInstr MI,
const LiveRegSet LiveRegsCopy,
bool  After 
)
protected

◆ reset() [2/2]

void GCNRPTracker::reset ( const MachineRegisterInfo MRI_,
const LiveRegSet LiveRegs_ 
)

Member Data Documentation

◆ CurPressure

GCNRegPressure llvm::GCNRPTracker::CurPressure
protected

◆ LastTrackedMI

const MachineInstr* llvm::GCNRPTracker::LastTrackedMI = nullptr
protected

◆ LIS

const LiveIntervals& llvm::GCNRPTracker::LIS
protected

◆ LiveRegs

LiveRegSet llvm::GCNRPTracker::LiveRegs
protected

◆ MaxPressure

GCNRegPressure llvm::GCNRPTracker::MaxPressure
protected

◆ MRI

const MachineRegisterInfo* llvm::GCNRPTracker::MRI = nullptr
mutableprotected

The documentation for this class was generated from the following files: