llvm::AMDGPU

AMDGPU-specific address-space helpers and DWARF mappings.

Namespaces

NameDescription
DWARFAS
HSAMD
PALMD
impl Implementation details for AMDGPU address-space mapping.

Types

NameDescription
IsaVersion Instruction set architecture version.
TargetID

Type Aliases

Name
AMDGPUFeatureBitset

Enums

NameDescription
Unnamed enum
AMDGPUFeature One enumerator per frontend-visible feature bit; NUM_FEATURES is the count.
ArchFeatureKind
FeatureError
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
TargetIDSetting

Functions

NameDescription
fillAMDGPUFeatureMap Fills Features map with default values for given target GPU. Features contains overriding target features and this function returns default target features with entries overridden by Features.
fillValidArchListAMDGCN Append the valid AMDGCN GPU names to Values. If SubArch is not NoSubArch, only GPUs compatible with that subarch (see isCPUValidForSubArch) are appended.
fillValidArchListR600
getAddressableNumSGPRs
getArchAttrAMDGCN [deprecated]
getArchAttrR600
getArchFamilyNameAMDGCN
getArchNameAMDGCN
getArchNameFromSubArch Returns the canonical GPU name for an AMDGPU subarch, e.g. AMDGPUSubArch1030 -> "gfx1030", AMDGPUSubArch9 -> "gfx9-generic", AMDGPUSubArch6 -> "gfx600". Returns "" for NoSubArch or a non-AMDGPU subarch. The major-only subarches map to their generic/lowest representative, matching the default subtarget for an unspecified -mcpu.
getArchNameR600
getBaseArchNameAMDGCN The canonical GPU name for a variant name.
getCanonicalArchName
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
getIsaVersion
getMajorSubArch
getMaxHWAddressableLocalMemorySize
getMaxWavesPerEU
getMinWavesPerEU
getNullPointerValue Get the null pointer value for the given address space.
getNumWorkGroupSIMDs
getSGPRAllocGranule
getSubArch
getSubArchName Returns the triple subarch name for an AMDGPU subarch, e.g. AMDGPUSubArch900 -> "amdgpu9.00". Returns "amdgpu" for NoSubArch.
getTotalNumSGPRs
isCPUValidForSubArch isCPUValidForSubArch overloads
isConstantAddressSpace
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 Return true if subarch A is compatible with subarch B, i.e. they are equal or one is the major-family subarch of the other (e.g. AMDGPUSubArch9 is compatible with AMDGPUSubArch900). NoSubArch is compatible with anything.
mapToDWARFAddrSpace If LLVMAddressSpace 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
parseArchR600
operator<< Stream insertion operator