LLVM 19.0.0git
Public Member Functions | Public Attributes | List of all members
llvm::SIProgramInfo Struct Reference

Track resource usage for kernels / entry functions. More...

#include "Target/AMDGPU/SIProgramInfo.h"

Public Member Functions

 SIProgramInfo ()=default
 
uint64_t getComputePGMRSrc1 (const GCNSubtarget &ST) const
 Compute the value of the ComputePGMRsrc1 register.
 
uint64_t getPGMRSrc1 (CallingConv::ID CC, const GCNSubtarget &ST) const
 
uint64_t getComputePGMRSrc2 () const
 Compute the value of the ComputePGMRsrc2 register.
 
uint64_t getPGMRSrc2 (CallingConv::ID CC) const
 

Public Attributes

uint32_t VGPRBlocks = 0
 
uint32_t SGPRBlocks = 0
 
uint32_t Priority = 0
 
uint32_t FloatMode = 0
 
uint32_t Priv = 0
 
uint32_t DX10Clamp = 0
 
uint32_t DebugMode = 0
 
uint32_t IEEEMode = 0
 
uint32_t WgpMode = 0
 
uint32_t MemOrdered = 0
 
uint32_t RrWgMode = 0
 
uint64_t ScratchSize = 0
 
uint32_t LDSBlocks = 0
 
uint32_t ScratchBlocks = 0
 
uint32_t ScratchEnable = 0
 
uint32_t UserSGPR = 0
 
uint32_t TrapHandlerEnable = 0
 
uint32_t TGIdXEnable = 0
 
uint32_t TGIdYEnable = 0
 
uint32_t TGIdZEnable = 0
 
uint32_t TGSizeEnable = 0
 
uint32_t TIdIGCompCount = 0
 
uint32_t EXCPEnMSB = 0
 
uint32_t LdsSize = 0
 
uint32_t EXCPEnable = 0
 
uint64_t ComputePGMRSrc3GFX90A = 0
 
uint32_t NumVGPR = 0
 
uint32_t NumArchVGPR = 0
 
uint32_t NumAccVGPR = 0
 
uint32_t AccumOffset = 0
 
uint32_t TgSplit = 0
 
uint32_t NumSGPR = 0
 
unsigned SGPRSpill = 0
 
unsigned VGPRSpill = 0
 
uint32_t LDSSize = 0
 
bool FlatUsed = false
 
uint32_t NumSGPRsForWavesPerEU = 0
 
uint32_t NumVGPRsForWavesPerEU = 0
 
uint32_t Occupancy = 0
 
bool DynamicCallStack = false
 
bool VCCUsed = false
 

Detailed Description

Track resource usage for kernels / entry functions.

Definition at line 27 of file SIProgramInfo.h.

Constructor & Destructor Documentation

◆ SIProgramInfo()

llvm::SIProgramInfo::SIProgramInfo ( )
default

Member Function Documentation

◆ getComputePGMRSrc1()

uint64_t SIProgramInfo::getComputePGMRSrc1 ( const GCNSubtarget ST) const

◆ getComputePGMRSrc2()

uint64_t SIProgramInfo::getComputePGMRSrc2 ( ) const

◆ getPGMRSrc1()

uint64_t SIProgramInfo::getPGMRSrc1 ( CallingConv::ID  CC,
const GCNSubtarget ST 
) const

◆ getPGMRSrc2()

uint64_t SIProgramInfo::getPGMRSrc2 ( CallingConv::ID  CC) const

Definition at line 92 of file SIProgramInfo.cpp.

References CC, getComputePGMRSrc2(), and llvm::AMDGPU::isCompute().

Member Data Documentation

◆ AccumOffset

uint32_t llvm::SIProgramInfo::AccumOffset = 0

Definition at line 64 of file SIProgramInfo.h.

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

◆ ComputePGMRSrc3GFX90A

uint64_t llvm::SIProgramInfo::ComputePGMRSrc3GFX90A = 0

Definition at line 59 of file SIProgramInfo.h.

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

◆ DebugMode

uint32_t llvm::SIProgramInfo::DebugMode = 0

Definition at line 35 of file SIProgramInfo.h.

Referenced by getComputePGMRSrc1(), and getPGMRSrc1().

◆ DX10Clamp

uint32_t llvm::SIProgramInfo::DX10Clamp = 0

Definition at line 34 of file SIProgramInfo.h.

Referenced by getComputePGMRSrc1(), and getPGMRSrc1().

◆ DynamicCallStack

bool llvm::SIProgramInfo::DynamicCallStack = false

◆ EXCPEnable

uint32_t llvm::SIProgramInfo::EXCPEnable = 0

Definition at line 57 of file SIProgramInfo.h.

Referenced by EmitPALMetadataCommon(), and getComputePGMRSrc2().

◆ EXCPEnMSB

uint32_t llvm::SIProgramInfo::EXCPEnMSB = 0

Definition at line 55 of file SIProgramInfo.h.

Referenced by getComputePGMRSrc2().

◆ FlatUsed

bool llvm::SIProgramInfo::FlatUsed = false

Definition at line 70 of file SIProgramInfo.h.

Referenced by llvm::AMDGPUAsmPrinter::emitFunctionBodyEnd().

◆ FloatMode

uint32_t llvm::SIProgramInfo::FloatMode = 0

◆ IEEEMode

uint32_t llvm::SIProgramInfo::IEEEMode = 0

◆ LDSBlocks

uint32_t llvm::SIProgramInfo::LDSBlocks = 0

Definition at line 43 of file SIProgramInfo.h.

◆ LdsSize

uint32_t llvm::SIProgramInfo::LdsSize = 0

Definition at line 56 of file SIProgramInfo.h.

Referenced by EmitPALMetadataCommon(), and getComputePGMRSrc2().

◆ LDSSize

uint32_t llvm::SIProgramInfo::LDSSize = 0

◆ MemOrdered

uint32_t llvm::SIProgramInfo::MemOrdered = 0

Definition at line 38 of file SIProgramInfo.h.

Referenced by EmitPALMetadataCommon(), getComputePGMRSrc1(), and getPGMRSrc1().

◆ NumAccVGPR

uint32_t llvm::SIProgramInfo::NumAccVGPR = 0

◆ NumArchVGPR

uint32_t llvm::SIProgramInfo::NumArchVGPR = 0

Definition at line 62 of file SIProgramInfo.h.

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

◆ NumSGPR

uint32_t llvm::SIProgramInfo::NumSGPR = 0

◆ NumSGPRsForWavesPerEU

uint32_t llvm::SIProgramInfo::NumSGPRsForWavesPerEU = 0

◆ NumVGPR

uint32_t llvm::SIProgramInfo::NumVGPR = 0

◆ NumVGPRsForWavesPerEU

uint32_t llvm::SIProgramInfo::NumVGPRsForWavesPerEU = 0

◆ Occupancy

uint32_t llvm::SIProgramInfo::Occupancy = 0

Definition at line 79 of file SIProgramInfo.h.

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

◆ Priority

uint32_t llvm::SIProgramInfo::Priority = 0

Definition at line 31 of file SIProgramInfo.h.

Referenced by getComputePGMRSrc1(), and getPGMRSrc1().

◆ Priv

uint32_t llvm::SIProgramInfo::Priv = 0

Definition at line 33 of file SIProgramInfo.h.

Referenced by getComputePGMRSrc1(), and getPGMRSrc1().

◆ RrWgMode

uint32_t llvm::SIProgramInfo::RrWgMode = 0

Definition at line 39 of file SIProgramInfo.h.

Referenced by getComputePGMRSrc1(), and getPGMRSrc1().

◆ ScratchBlocks

uint32_t llvm::SIProgramInfo::ScratchBlocks = 0

Definition at line 44 of file SIProgramInfo.h.

◆ ScratchEnable

uint32_t llvm::SIProgramInfo::ScratchEnable = 0

◆ ScratchSize

uint64_t llvm::SIProgramInfo::ScratchSize = 0

◆ SGPRBlocks

uint32_t llvm::SIProgramInfo::SGPRBlocks = 0

◆ SGPRSpill

unsigned llvm::SIProgramInfo::SGPRSpill = 0

Definition at line 67 of file SIProgramInfo.h.

◆ TGIdXEnable

uint32_t llvm::SIProgramInfo::TGIdXEnable = 0

◆ TGIdYEnable

uint32_t llvm::SIProgramInfo::TGIdYEnable = 0

◆ TGIdZEnable

uint32_t llvm::SIProgramInfo::TGIdZEnable = 0

◆ TGSizeEnable

uint32_t llvm::SIProgramInfo::TGSizeEnable = 0

Definition at line 53 of file SIProgramInfo.h.

Referenced by getComputePGMRSrc2().

◆ TgSplit

uint32_t llvm::SIProgramInfo::TgSplit = 0

Definition at line 65 of file SIProgramInfo.h.

◆ TIdIGCompCount

uint32_t llvm::SIProgramInfo::TIdIGCompCount = 0

◆ TrapHandlerEnable

uint32_t llvm::SIProgramInfo::TrapHandlerEnable = 0

◆ UserSGPR

uint32_t llvm::SIProgramInfo::UserSGPR = 0

◆ VCCUsed

bool llvm::SIProgramInfo::VCCUsed = false

Definition at line 86 of file SIProgramInfo.h.

Referenced by llvm::AMDGPUAsmPrinter::emitFunctionBodyEnd().

◆ VGPRBlocks

uint32_t llvm::SIProgramInfo::VGPRBlocks = 0

◆ VGPRSpill

unsigned llvm::SIProgramInfo::VGPRSpill = 0

Definition at line 68 of file SIProgramInfo.h.

◆ WgpMode

uint32_t llvm::SIProgramInfo::WgpMode = 0

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