llvm::AMDGPU

AMDGPU-specific address-space helpers and DWARF mappings.

Namespaces

NameDescription
DWARFAS DWARF address-space encodings for AMDGPU.
HSAMD AMDGPU HSA metadata (HSAMD) definitions and verification.
PALMD PAL (Platform Abstraction Layer) metadata definitions.
impl Implementation details for AMDGPU address-space mapping.

Types

NameDescription
IsaVersion Instruction set architecture version.
TargetID AMDGPU target identity: processor plus optional xnack/sramecc settings.

Type Aliases

NameDescription
AMDGPUFeatureBitset Bitset of enabled AMDGPU frontend-visible features.

Enums

NameDescription
Unnamed enum Constants for GPUs affected by the VI SGPR initialization bug.
AMDGPUFeature One enumerator per frontend-visible feature bit; NUM_FEATURES is the count.
ArchFeatureKind GFX6+ architecture feature flags needed by the frontend driver.
FeatureError Result of validating AMDGPU target feature combinations.
FlatAddrSpace Identifies which FLAT address-space segment an instruction operates on.
FuncInfoFlags Per-function flags packed into INFO_FLAGS entries.
GPUKind GPU kinds supported by the AMDGPU target.
InfoKind Entry kind values for the .amdgpu.info section.
R600FeatureKind R600 feature flags needed by the frontend driver.
TargetIDSetting Setting of an optional TargetID feature such as xnack or sramecc.

Functions

NameDescription
fillAMDGPUFeatureMap Fills Features with default values for the given target GPU.
fillValidArchListAMDGCN Append the valid AMDGCN GPU names to Values.
fillValidArchListR600 Append the valid R600 GPU names to Values.
getAddressableNumSGPRs getAddressableNumSGPRs overloads
getArchAttrAMDGCN [deprecated]getArchAttrAMDGCN overloads
getArchAttrR600 Returns the R600FeatureKind bitfield for GPU kind AK.
getArchFamilyNameAMDGCN Returns the architecture family name for AMDGCN GPU kind AK.
getArchNameAMDGCN Returns the canonical AMDGCN architecture name for GPU kind AK.
getArchNameFromSubArch Returns the canonical GPU name for an AMDGPU subarch.
getArchNameR600 Returns the canonical R600 architecture name for GPU kind AK.
getBaseArchNameAMDGCN The canonical GPU name for a variant name.
getCanonicalArchName Returns the canonical architecture name for Arch under triple T.
getFeatureBitset Returns AK's feature bitset, or an empty bitset if unknown.
getFeatureNames Appends the feature name of each bit set in Features to Names.
getGPUKindFromSubArch Returns the representative GPUKind for subarch SubArch.
getIsaVersion getIsaVersion overloads
getMajorSubArch Returns the major-family subarch for SubArch.
getMaxHWAddressableLocalMemorySize getMaxHWAddressableLocalMemorySize overloads
getMaxWavesPerEU Maximum number of waves per execution unit without any kind of limitation.
getMinWavesPerEU Minimum number of waves per execution unit.
getNullPointerValue Get the null pointer value for the given address space.
getNumWorkGroupSIMDs Number of SIMDs a work-group's waves run on.
getSGPRAllocGranule getSGPRAllocGranule overloads
getSubArch Returns the triple subarch for GPU kind AK.
getSubArchName Returns the triple subarch name for an AMDGPU subarch, e.g. AMDGPUSubArch900 -> "amdgpu9.00". Returns "amdgpu" for NoSubArch.
getTotalNumSGPRs getTotalNumSGPRs overloads
isCPUValidForSubArch isCPUValidForSubArch overloads
isConstantAddressSpace True if AS is an AMDGPU constant address space.
isExtendedGlobalAddrSpace True if AS is an extended global address space.
isFlatGlobalAddrSpace True if AS is flat, global, constant, or an extended global address space.
isPseudoTarget isPseudoTarget overloads
isSubArchCompatible isSubArchCompatible overloads
mapToDWARFAddrSpace If LLVMAddrSpace has a corresponding DWARF encoding, return it; otherwise return the sentinel value -1 to indicate no such mapping exists.
mergeSubArch Returns the effective triple appropriate to use when linking B into A by merging the subarches in case of inexact match.
parseArchAMDGCN Parses an AMDGCN GPU name CPU into a GPUKind.
parseArchR600 Parses an R600 GPU name CPU into a GPUKind.
operator<< Writes TargetID to OS.