LLVM 22.0.0git
llvm::AMDGPUFunctionArgInfo Struct Reference

#include "Target/AMDGPU/AMDGPUArgumentUsageInfo.h"

Public Types

enum  PreloadedValue {
  PRIVATE_SEGMENT_BUFFER = 0 , DISPATCH_PTR = 1 , QUEUE_PTR = 2 , KERNARG_SEGMENT_PTR = 3 ,
  DISPATCH_ID = 4 , FLAT_SCRATCH_INIT = 5 , LDS_KERNEL_ID = 6 , WORKGROUP_ID_X = 10 ,
  WORKGROUP_ID_Y = 11 , WORKGROUP_ID_Z = 12 , PRIVATE_SEGMENT_WAVE_BYTE_OFFSET = 14 , IMPLICIT_BUFFER_PTR = 15 ,
  IMPLICIT_ARG_PTR = 16 , PRIVATE_SEGMENT_SIZE = 17 , CLUSTER_WORKGROUP_ID_X = 21 , CLUSTER_WORKGROUP_ID_Y = 22 ,
  CLUSTER_WORKGROUP_ID_Z = 23 , CLUSTER_WORKGROUP_MAX_ID_X = 24 , CLUSTER_WORKGROUP_MAX_ID_Y = 25 , CLUSTER_WORKGROUP_MAX_ID_Z = 26 ,
  CLUSTER_WORKGROUP_MAX_FLAT_ID = 27 , WORKITEM_ID_X = 28 , WORKITEM_ID_Y = 29 , WORKITEM_ID_Z = 30 ,
  FIRST_VGPR_VALUE = WORKITEM_ID_X
}

Public Member Functions

std::tuple< const ArgDescriptor *, const TargetRegisterClass *, LLTgetPreloadedValue (PreloadedValue Value) const

Static Public Member Functions

static AMDGPUFunctionArgInfo fixedABILayout ()

Public Attributes

ArgDescriptor PrivateSegmentBuffer
ArgDescriptor DispatchPtr
ArgDescriptor QueuePtr
ArgDescriptor KernargSegmentPtr
ArgDescriptor DispatchID
ArgDescriptor FlatScratchInit
ArgDescriptor PrivateSegmentSize
ArgDescriptor LDSKernelId
ArgDescriptor WorkGroupIDX
ArgDescriptor WorkGroupIDY
ArgDescriptor WorkGroupIDZ
ArgDescriptor WorkGroupInfo
ArgDescriptor PrivateSegmentWaveByteOffset
ArgDescriptor ImplicitArgPtr
ArgDescriptor ImplicitBufferPtr
ArgDescriptor WorkItemIDX
ArgDescriptor WorkItemIDY
ArgDescriptor WorkItemIDZ
SmallDenseMap< int, KernArgPreloadDescriptorPreloadKernArgs {}
Register FirstKernArgPreloadReg

Detailed Description

Definition at line 103 of file AMDGPUArgumentUsageInfo.h.

Member Enumeration Documentation

◆ PreloadedValue

Enumerator
PRIVATE_SEGMENT_BUFFER 
DISPATCH_PTR 
QUEUE_PTR 
KERNARG_SEGMENT_PTR 
DISPATCH_ID 
FLAT_SCRATCH_INIT 
LDS_KERNEL_ID 
WORKGROUP_ID_X 
WORKGROUP_ID_Y 
WORKGROUP_ID_Z 
PRIVATE_SEGMENT_WAVE_BYTE_OFFSET 
IMPLICIT_BUFFER_PTR 
IMPLICIT_ARG_PTR 
PRIVATE_SEGMENT_SIZE 
CLUSTER_WORKGROUP_ID_X 
CLUSTER_WORKGROUP_ID_Y 
CLUSTER_WORKGROUP_ID_Z 
CLUSTER_WORKGROUP_MAX_ID_X 
CLUSTER_WORKGROUP_MAX_ID_Y 
CLUSTER_WORKGROUP_MAX_ID_Z 
CLUSTER_WORKGROUP_MAX_FLAT_ID 
WORKITEM_ID_X 
WORKITEM_ID_Y 
WORKITEM_ID_Z 
FIRST_VGPR_VALUE 

Definition at line 105 of file AMDGPUArgumentUsageInfo.h.

Member Function Documentation

◆ fixedABILayout()

◆ getPreloadedValue()

Member Data Documentation

◆ DispatchID

ArgDescriptor llvm::AMDGPUFunctionArgInfo::DispatchID

◆ DispatchPtr

ArgDescriptor llvm::AMDGPUFunctionArgInfo::DispatchPtr

◆ FirstKernArgPreloadReg

Register llvm::AMDGPUFunctionArgInfo::FirstKernArgPreloadReg

Definition at line 173 of file AMDGPUArgumentUsageInfo.h.

◆ FlatScratchInit

ArgDescriptor llvm::AMDGPUFunctionArgInfo::FlatScratchInit

◆ ImplicitArgPtr

ArgDescriptor llvm::AMDGPUFunctionArgInfo::ImplicitArgPtr

◆ ImplicitBufferPtr

ArgDescriptor llvm::AMDGPUFunctionArgInfo::ImplicitBufferPtr

◆ KernargSegmentPtr

ArgDescriptor llvm::AMDGPUFunctionArgInfo::KernargSegmentPtr

◆ LDSKernelId

ArgDescriptor llvm::AMDGPUFunctionArgInfo::LDSKernelId

◆ PreloadKernArgs

SmallDenseMap<int, KernArgPreloadDescriptor> llvm::AMDGPUFunctionArgInfo::PreloadKernArgs {}

Definition at line 171 of file AMDGPUArgumentUsageInfo.h.

◆ PrivateSegmentBuffer

ArgDescriptor llvm::AMDGPUFunctionArgInfo::PrivateSegmentBuffer

◆ PrivateSegmentSize

ArgDescriptor llvm::AMDGPUFunctionArgInfo::PrivateSegmentSize

◆ PrivateSegmentWaveByteOffset

ArgDescriptor llvm::AMDGPUFunctionArgInfo::PrivateSegmentWaveByteOffset

◆ QueuePtr

ArgDescriptor llvm::AMDGPUFunctionArgInfo::QueuePtr

◆ WorkGroupIDX

ArgDescriptor llvm::AMDGPUFunctionArgInfo::WorkGroupIDX

◆ WorkGroupIDY

ArgDescriptor llvm::AMDGPUFunctionArgInfo::WorkGroupIDY

◆ WorkGroupIDZ

ArgDescriptor llvm::AMDGPUFunctionArgInfo::WorkGroupIDZ

◆ WorkGroupInfo

ArgDescriptor llvm::AMDGPUFunctionArgInfo::WorkGroupInfo

◆ WorkItemIDX

◆ WorkItemIDY

◆ WorkItemIDZ


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