LLVM: lib/Target/AMDGPU/GCNRegPressure.cpp File Reference (original) (raw)

This file implements the GCNRegPressure class. More...

Go to the source code of this file.

Macros
#define DEBUG_TYPE "machine-scheduler"
#define PFX " "
Functions
static LaneBitmask getDefRegMask (const MachineOperand &MO, const MachineRegisterInfo &MRI)
static void collectVirtualRegUses (SmallVectorImpl< VRegMaskOrUnit > &VRegMaskOrUnits, const MachineInstr &MI, const LiveIntervals &LIS, const MachineRegisterInfo &MRI)
static LaneBitmask getLanesWithProperty (const LiveIntervals &LIS, const MachineRegisterInfo &MRI, bool TrackLaneMasks, Register Reg, SlotIndex Pos, function_ref< bool(const LiveRange &LR, SlotIndex Pos)> Property)
Mostly copy/paste from CodeGen/RegisterPressure.cpp.
static LaneBitmask findUseBetween (unsigned Reg, LaneBitmask LastUseMask, SlotIndex PriorUseIdx, SlotIndex NextUseIdx, const MachineRegisterInfo &MRI, const SIRegisterInfo *TRI, const LiveIntervals *LIS, bool Upward=false)
Mostly copy/paste from CodeGen/RegisterPressure.cpp Helper to find a vreg use between two indices {PriorUseIdx, NextUseIdx}.
static LaneBitmask getRegLiveThroughMask (const MachineRegisterInfo &MRI, const LiveIntervals &LIS, Register Reg, SlotIndex Begin, SlotIndex End, LaneBitmask Mask=LaneBitmask::getAll())

This file implements the GCNRegPressure class.

Definition in file GCNRegPressure.cpp.

DEBUG_TYPE

#define DEBUG_TYPE "machine-scheduler"

PFX

collectVirtualRegUses()

findUseBetween()

getDefRegMask()

getLanesWithProperty()

getRegLiveThroughMask()

UseDownwardTracker