LLVM 22.0.0git
AMDGPUSetWavePriority.cpp File Reference

Pass to temporarily raise the wave priority beginning the start of the shader function until its last VMEM instructions to allow younger waves to issue their VMEM instructions as well. More...

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "amdgpu-set-wave-priority"

Functions

static bool CanLowerPriorityDirectlyInPredecessors (const MachineBasicBlock &MBB, MBBInfoSet &MBBInfos)
static bool isVMEMLoad (const MachineInstr &MI)

Variables

static cl::opt< unsignedDefaultVALUInstsThreshold ("amdgpu-set-wave-priority-valu-insts-threshold", cl::desc("VALU instruction count threshold for adjusting wave priority"), cl::init(100), cl::Hidden)

Detailed Description

Pass to temporarily raise the wave priority beginning the start of the shader function until its last VMEM instructions to allow younger waves to issue their VMEM instructions as well.

Definition in file AMDGPUSetWavePriority.cpp.

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "amdgpu-set-wave-priority"

Definition at line 26 of file AMDGPUSetWavePriority.cpp.

Function Documentation

◆ CanLowerPriorityDirectlyInPredecessors()

bool CanLowerPriorityDirectlyInPredecessors ( const MachineBasicBlock & MBB,
MBBInfoSet & MBBInfos )
static

Definition at line 93 of file AMDGPUSetWavePriority.cpp.

References MBB, and llvm::MachineBasicBlock::successors().

◆ isVMEMLoad()

bool isVMEMLoad ( const MachineInstr & MI)
static

Definition at line 106 of file AMDGPUSetWavePriority.cpp.

References llvm::SIInstrInfo::isVMEM(), and MI.

Variable Documentation

◆ DefaultVALUInstsThreshold

cl::opt< unsigned > DefaultVALUInstsThreshold("amdgpu-set-wave-priority-valu-insts-threshold", cl::desc("VALU instruction count threshold for adjusting wave priority"), cl::init(100), cl::Hidden) ( "amdgpu-set-wave-priority-valu-insts-threshold" ,
cl::desc("VALU instruction count threshold for adjusting wave priority") ,
cl::init(100) ,
cl::Hidden  )
static