LLVM  8.0.1
Classes | Namespaces | Typedefs | Enumerations | Functions | Variables
AMDGPUMetadata.h File Reference

AMDGPU metadata definitions and in-memory representations. More...

#include <cstdint>
#include <string>
#include <system_error>
#include <vector>
Include dependency graph for AMDGPUMetadata.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  llvm::AMDGPU::HSAMD::Kernel::Attrs::Metadata
 In-memory representation of kernel attributes metadata. More...
 
struct  llvm::AMDGPU::HSAMD::Kernel::Arg::Metadata
 In-memory representation of kernel argument metadata. More...
 
struct  llvm::AMDGPU::HSAMD::Kernel::CodeProps::Metadata
 In-memory representation of kernel code properties metadata. More...
 
struct  llvm::AMDGPU::HSAMD::Kernel::DebugProps::Metadata
 In-memory representation of kernel debug properties metadata. More...
 
struct  llvm::AMDGPU::HSAMD::Kernel::Metadata
 In-memory representation of kernel metadata. More...
 
struct  llvm::AMDGPU::HSAMD::Metadata
 In-memory representation of HSA metadata. More...
 

Namespaces

 llvm
 This class represents lattice values for constants.
 
 llvm::AMDGPU
 
 llvm::AMDGPU::HSAMD
 
 llvm::AMDGPU::HSAMD::Kernel
 
 llvm::AMDGPU::HSAMD::Kernel::Attrs
 
 llvm::AMDGPU::HSAMD::Kernel::Attrs::Key
 
 llvm::AMDGPU::HSAMD::Kernel::Arg
 
 llvm::AMDGPU::HSAMD::Kernel::Arg::Key
 
 llvm::AMDGPU::HSAMD::Kernel::CodeProps
 
 llvm::AMDGPU::HSAMD::Kernel::CodeProps::Key
 
 llvm::AMDGPU::HSAMD::Kernel::DebugProps
 
 llvm::AMDGPU::HSAMD::Kernel::DebugProps::Key
 
 llvm::AMDGPU::HSAMD::Kernel::Key
 
 llvm::AMDGPU::HSAMD::Key
 
 llvm::AMDGPU::HSAMD::V3
 
 llvm::AMDGPU::PALMD
 

Typedefs

typedef std::vector< uint32_tllvm::AMDGPU::PALMD::Metadata
 PAL metadata represented as a vector. More...
 

Enumerations

enum  llvm::AMDGPU::HSAMD::AccessQualifier : uint8_t {
  llvm::AMDGPU::HSAMD::AccessQualifier::Default = 0, llvm::AMDGPU::HSAMD::AccessQualifier::ReadOnly = 1, llvm::AMDGPU::HSAMD::AccessQualifier::WriteOnly = 2, llvm::AMDGPU::HSAMD::AccessQualifier::ReadWrite = 3,
  llvm::AMDGPU::HSAMD::AccessQualifier::Unknown = 0xff
}
 Access qualifiers. More...
 
enum  llvm::AMDGPU::HSAMD::AddressSpaceQualifier : uint8_t {
  llvm::AMDGPU::HSAMD::AddressSpaceQualifier::Private = 0, llvm::AMDGPU::HSAMD::AddressSpaceQualifier::Global = 1, llvm::AMDGPU::HSAMD::AddressSpaceQualifier::Constant = 2, llvm::AMDGPU::HSAMD::AddressSpaceQualifier::Local = 3,
  llvm::AMDGPU::HSAMD::AddressSpaceQualifier::Generic = 4, llvm::AMDGPU::HSAMD::AddressSpaceQualifier::Region = 5, llvm::AMDGPU::HSAMD::AddressSpaceQualifier::Unknown = 0xff
}
 Address space qualifiers. More...
 
enum  llvm::AMDGPU::HSAMD::ValueKind : uint8_t {
  llvm::AMDGPU::HSAMD::ValueKind::ByValue = 0, llvm::AMDGPU::HSAMD::ValueKind::GlobalBuffer = 1, llvm::AMDGPU::HSAMD::ValueKind::DynamicSharedPointer = 2, llvm::AMDGPU::HSAMD::ValueKind::Sampler = 3,
  llvm::AMDGPU::HSAMD::ValueKind::Image = 4, llvm::AMDGPU::HSAMD::ValueKind::Pipe = 5, llvm::AMDGPU::HSAMD::ValueKind::Queue = 6, llvm::AMDGPU::HSAMD::ValueKind::HiddenGlobalOffsetX = 7,
  llvm::AMDGPU::HSAMD::ValueKind::HiddenGlobalOffsetY = 8, llvm::AMDGPU::HSAMD::ValueKind::HiddenGlobalOffsetZ = 9, llvm::AMDGPU::HSAMD::ValueKind::HiddenNone = 10, llvm::AMDGPU::HSAMD::ValueKind::HiddenPrintfBuffer = 11,
  llvm::AMDGPU::HSAMD::ValueKind::HiddenDefaultQueue = 12, llvm::AMDGPU::HSAMD::ValueKind::HiddenCompletionAction = 13, llvm::AMDGPU::HSAMD::ValueKind::Unknown = 0xff
}
 Value kinds. More...
 
enum  llvm::AMDGPU::HSAMD::ValueType : uint8_t {
  llvm::AMDGPU::HSAMD::ValueType::Struct = 0, llvm::AMDGPU::HSAMD::ValueType::I8 = 1, llvm::AMDGPU::HSAMD::ValueType::U8 = 2, llvm::AMDGPU::HSAMD::ValueType::I16 = 3,
  llvm::AMDGPU::HSAMD::ValueType::U16 = 4, llvm::AMDGPU::HSAMD::ValueType::F16 = 5, llvm::AMDGPU::HSAMD::ValueType::I32 = 6, llvm::AMDGPU::HSAMD::ValueType::U32 = 7,
  llvm::AMDGPU::HSAMD::ValueType::F32 = 8, llvm::AMDGPU::HSAMD::ValueType::I64 = 9, llvm::AMDGPU::HSAMD::ValueType::U64 = 10, llvm::AMDGPU::HSAMD::ValueType::F64 = 11,
  llvm::AMDGPU::HSAMD::ValueType::Unknown = 0xff
}
 Value types. More...
 
enum  llvm::AMDGPU::PALMD::Key : uint32_t {
  llvm::AMDGPU::PALMD::LS_NUM_USED_VGPRS = 0x10000021, llvm::AMDGPU::PALMD::HS_NUM_USED_VGPRS = 0x10000022, llvm::AMDGPU::PALMD::ES_NUM_USED_VGPRS = 0x10000023, llvm::AMDGPU::PALMD::GS_NUM_USED_VGPRS = 0x10000024,
  llvm::AMDGPU::PALMD::VS_NUM_USED_VGPRS = 0x10000025, llvm::AMDGPU::PALMD::PS_NUM_USED_VGPRS = 0x10000026, llvm::AMDGPU::PALMD::CS_NUM_USED_VGPRS = 0x10000027, llvm::AMDGPU::PALMD::LS_NUM_USED_SGPRS = 0x10000028,
  llvm::AMDGPU::PALMD::HS_NUM_USED_SGPRS = 0x10000029, llvm::AMDGPU::PALMD::ES_NUM_USED_SGPRS = 0x1000002a, llvm::AMDGPU::PALMD::GS_NUM_USED_SGPRS = 0x1000002b, llvm::AMDGPU::PALMD::VS_NUM_USED_SGPRS = 0x1000002c,
  llvm::AMDGPU::PALMD::PS_NUM_USED_SGPRS = 0x1000002d, llvm::AMDGPU::PALMD::CS_NUM_USED_SGPRS = 0x1000002e, llvm::AMDGPU::PALMD::LS_SCRATCH_SIZE = 0x10000044, llvm::AMDGPU::PALMD::HS_SCRATCH_SIZE = 0x10000045,
  llvm::AMDGPU::PALMD::ES_SCRATCH_SIZE = 0x10000046, llvm::AMDGPU::PALMD::GS_SCRATCH_SIZE = 0x10000047, llvm::AMDGPU::PALMD::VS_SCRATCH_SIZE = 0x10000048, llvm::AMDGPU::PALMD::PS_SCRATCH_SIZE = 0x10000049,
  llvm::AMDGPU::PALMD::CS_SCRATCH_SIZE = 0x1000004a
}
 PAL metadata keys. More...
 

Functions

std::error_code llvm::AMDGPU::HSAMD::fromString (std::string String, Metadata &HSAMetadata)
 Converts String to HSAMetadata. More...
 
std::error_code llvm::AMDGPU::HSAMD::toString (Metadata HSAMetadata, std::string &String)
 Converts HSAMetadata to String. More...
 
std::error_code llvm::AMDGPU::PALMD::toString (const Metadata &PALMetadata, std::string &String)
 Converts PALMetadata to String. More...
 

Variables

constexpr uint32_t llvm::AMDGPU::HSAMD::VersionMajor = 1
 HSA metadata major version. More...
 
constexpr uint32_t llvm::AMDGPU::HSAMD::VersionMinor = 0
 HSA metadata minor version. More...
 
constexpr char llvm::AMDGPU::HSAMD::AssemblerDirectiveBegin [] = ".amd_amdgpu_hsa_metadata"
 HSA metadata beginning assembler directive. More...
 
constexpr char llvm::AMDGPU::HSAMD::AssemblerDirectiveEnd [] = ".end_amd_amdgpu_hsa_metadata"
 HSA metadata ending assembler directive. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Attrs::Key::ReqdWorkGroupSize [] = "ReqdWorkGroupSize"
 Key for Kernel::Attr::Metadata::mReqdWorkGroupSize. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Attrs::Key::WorkGroupSizeHint [] = "WorkGroupSizeHint"
 Key for Kernel::Attr::Metadata::mWorkGroupSizeHint. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Attrs::Key::VecTypeHint [] = "VecTypeHint"
 Key for Kernel::Attr::Metadata::mVecTypeHint. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Attrs::Key::RuntimeHandle [] = "RuntimeHandle"
 Key for Kernel::Attr::Metadata::mRuntimeHandle. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Arg::Key::Name [] = "Name"
 Key for Kernel::Arg::Metadata::mName. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Arg::Key::TypeName [] = "TypeName"
 Key for Kernel::Arg::Metadata::mTypeName. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Arg::Key::Size [] = "Size"
 Key for Kernel::Arg::Metadata::mSize. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Arg::Key::Align [] = "Align"
 Key for Kernel::Arg::Metadata::mAlign. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Arg::Key::ValueKind [] = "ValueKind"
 Key for Kernel::Arg::Metadata::mValueKind. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Arg::Key::ValueType [] = "ValueType"
 Key for Kernel::Arg::Metadata::mValueType. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Arg::Key::PointeeAlign [] = "PointeeAlign"
 Key for Kernel::Arg::Metadata::mPointeeAlign. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Arg::Key::AddrSpaceQual [] = "AddrSpaceQual"
 Key for Kernel::Arg::Metadata::mAddrSpaceQual. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Arg::Key::AccQual [] = "AccQual"
 Key for Kernel::Arg::Metadata::mAccQual. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Arg::Key::ActualAccQual [] = "ActualAccQual"
 Key for Kernel::Arg::Metadata::mActualAccQual. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Arg::Key::IsConst [] = "IsConst"
 Key for Kernel::Arg::Metadata::mIsConst. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Arg::Key::IsRestrict [] = "IsRestrict"
 Key for Kernel::Arg::Metadata::mIsRestrict. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Arg::Key::IsVolatile [] = "IsVolatile"
 Key for Kernel::Arg::Metadata::mIsVolatile. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Arg::Key::IsPipe [] = "IsPipe"
 Key for Kernel::Arg::Metadata::mIsPipe. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::CodeProps::Key::KernargSegmentSize [] = "KernargSegmentSize"
 Key for Kernel::CodeProps::Metadata::mKernargSegmentSize. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::CodeProps::Key::GroupSegmentFixedSize [] = "GroupSegmentFixedSize"
 Key for Kernel::CodeProps::Metadata::mGroupSegmentFixedSize. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::CodeProps::Key::PrivateSegmentFixedSize [] = "PrivateSegmentFixedSize"
 Key for Kernel::CodeProps::Metadata::mPrivateSegmentFixedSize. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::CodeProps::Key::KernargSegmentAlign [] = "KernargSegmentAlign"
 Key for Kernel::CodeProps::Metadata::mKernargSegmentAlign. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::CodeProps::Key::WavefrontSize [] = "WavefrontSize"
 Key for Kernel::CodeProps::Metadata::mWavefrontSize. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::CodeProps::Key::NumSGPRs [] = "NumSGPRs"
 Key for Kernel::CodeProps::Metadata::mNumSGPRs. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::CodeProps::Key::NumVGPRs [] = "NumVGPRs"
 Key for Kernel::CodeProps::Metadata::mNumVGPRs. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::CodeProps::Key::MaxFlatWorkGroupSize [] = "MaxFlatWorkGroupSize"
 Key for Kernel::CodeProps::Metadata::mMaxFlatWorkGroupSize. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::CodeProps::Key::IsDynamicCallStack [] = "IsDynamicCallStack"
 Key for Kernel::CodeProps::Metadata::mIsDynamicCallStack. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::CodeProps::Key::IsXNACKEnabled [] = "IsXNACKEnabled"
 Key for Kernel::CodeProps::Metadata::mIsXNACKEnabled. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::CodeProps::Key::NumSpilledSGPRs [] = "NumSpilledSGPRs"
 Key for Kernel::CodeProps::Metadata::mNumSpilledSGPRs. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::CodeProps::Key::NumSpilledVGPRs [] = "NumSpilledVGPRs"
 Key for Kernel::CodeProps::Metadata::mNumSpilledVGPRs. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::DebugProps::Key::DebuggerABIVersion [] = "DebuggerABIVersion"
 Key for Kernel::DebugProps::Metadata::mDebuggerABIVersion. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::DebugProps::Key::ReservedNumVGPRs [] = "ReservedNumVGPRs"
 Key for Kernel::DebugProps::Metadata::mReservedNumVGPRs. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::DebugProps::Key::ReservedFirstVGPR [] = "ReservedFirstVGPR"
 Key for Kernel::DebugProps::Metadata::mReservedFirstVGPR. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::DebugProps::Key::PrivateSegmentBufferSGPR [] = "PrivateSegmentBufferSGPR"
 Key for Kernel::DebugProps::Metadata::mPrivateSegmentBufferSGPR. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::DebugProps::Key::WavefrontPrivateSegmentOffsetSGPR []
 Key for Kernel::DebugProps::Metadata::mWavefrontPrivateSegmentOffsetSGPR. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Key::Name [] = "Name"
 Key for Kernel::Metadata::mName. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Key::SymbolName [] = "SymbolName"
 Key for Kernel::Metadata::mSymbolName. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Key::Language [] = "Language"
 Key for Kernel::Metadata::mLanguage. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Key::LanguageVersion [] = "LanguageVersion"
 Key for Kernel::Metadata::mLanguageVersion. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Key::Attrs [] = "Attrs"
 Key for Kernel::Metadata::mAttrs. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Key::Args [] = "Args"
 Key for Kernel::Metadata::mArgs. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Key::CodeProps [] = "CodeProps"
 Key for Kernel::Metadata::mCodeProps. More...
 
constexpr char llvm::AMDGPU::HSAMD::Kernel::Key::DebugProps [] = "DebugProps"
 Key for Kernel::Metadata::mDebugProps. More...
 
constexpr char llvm::AMDGPU::HSAMD::Key::Version [] = "Version"
 Key for HSA::Metadata::mVersion. More...
 
constexpr char llvm::AMDGPU::HSAMD::Key::Printf [] = "Printf"
 Key for HSA::Metadata::mPrintf. More...
 
constexpr char llvm::AMDGPU::HSAMD::Key::Kernels [] = "Kernels"
 Key for HSA::Metadata::mKernels. More...
 
constexpr uint32_t llvm::AMDGPU::HSAMD::V3::VersionMajor = 1
 HSA metadata major version. More...
 
constexpr uint32_t llvm::AMDGPU::HSAMD::V3::VersionMinor = 0
 HSA metadata minor version. More...
 
constexpr char llvm::AMDGPU::HSAMD::V3::AssemblerDirectiveBegin [] = ".amdgpu_metadata"
 HSA metadata beginning assembler directive. More...
 
constexpr char llvm::AMDGPU::HSAMD::V3::AssemblerDirectiveEnd [] = ".end_amdgpu_metadata"
 HSA metadata ending assembler directive. More...
 
constexpr char llvm::AMDGPU::PALMD::AssemblerDirective [] = ".amd_amdgpu_pal_metadata"
 PAL metadata assembler directive. More...
 

Detailed Description

AMDGPU metadata definitions and in-memory representations.

Definition in file AMDGPUMetadata.h.