31 YIO.enumCase(EN,
"Default", AccessQualifier::Default);
32 YIO.enumCase(EN,
"ReadOnly", AccessQualifier::ReadOnly);
33 YIO.enumCase(EN,
"WriteOnly", AccessQualifier::WriteOnly);
34 YIO.enumCase(EN,
"ReadWrite", AccessQualifier::ReadWrite);
41 YIO.enumCase(EN,
"Private", AddressSpaceQualifier::Private);
42 YIO.enumCase(EN,
"Global", AddressSpaceQualifier::Global);
43 YIO.enumCase(EN,
"Constant", AddressSpaceQualifier::Constant);
44 YIO.enumCase(EN,
"Local", AddressSpaceQualifier::Local);
45 YIO.enumCase(EN,
"Generic", AddressSpaceQualifier::Generic);
46 YIO.enumCase(EN,
"Region", AddressSpaceQualifier::Region);
53 YIO.enumCase(EN,
"ByValue", ValueKind::ByValue);
54 YIO.enumCase(EN,
"GlobalBuffer", ValueKind::GlobalBuffer);
55 YIO.enumCase(EN,
"DynamicSharedPointer", ValueKind::DynamicSharedPointer);
56 YIO.enumCase(EN,
"Sampler", ValueKind::Sampler);
57 YIO.enumCase(EN,
"Image", ValueKind::Image);
58 YIO.enumCase(EN,
"Pipe", ValueKind::Pipe);
59 YIO.enumCase(EN,
"Queue", ValueKind::Queue);
60 YIO.enumCase(EN,
"HiddenGlobalOffsetX", ValueKind::HiddenGlobalOffsetX);
61 YIO.enumCase(EN,
"HiddenGlobalOffsetY", ValueKind::HiddenGlobalOffsetY);
62 YIO.enumCase(EN,
"HiddenGlobalOffsetZ", ValueKind::HiddenGlobalOffsetZ);
63 YIO.enumCase(EN,
"HiddenNone", ValueKind::HiddenNone);
64 YIO.enumCase(EN,
"HiddenPrintfBuffer", ValueKind::HiddenPrintfBuffer);
65 YIO.enumCase(EN,
"HiddenHostcallBuffer", ValueKind::HiddenHostcallBuffer);
66 YIO.enumCase(EN,
"HiddenDefaultQueue", ValueKind::HiddenDefaultQueue);
67 YIO.enumCase(EN,
"HiddenCompletionAction",
68 ValueKind::HiddenCompletionAction);
69 YIO.enumCase(EN,
"HiddenMultiGridSyncArg",
70 ValueKind::HiddenMultiGridSyncArg);
77 YIO.enumCase(EN,
"Struct", ValueType::Struct);
78 YIO.enumCase(EN,
"I8", ValueType::I8);
79 YIO.enumCase(EN,
"U8", ValueType::U8);
80 YIO.enumCase(EN,
"I16", ValueType::I16);
81 YIO.enumCase(EN,
"U16", ValueType::U16);
82 YIO.enumCase(EN,
"F16", ValueType::F16);
83 YIO.enumCase(EN,
"I32", ValueType::I32);
84 YIO.enumCase(EN,
"U32", ValueType::U32);
85 YIO.enumCase(EN,
"F32", ValueType::F32);
86 YIO.enumCase(EN,
"I64", ValueType::I64);
87 YIO.enumCase(EN,
"U64", ValueType::U64);
88 YIO.enumCase(EN,
"F64", ValueType::F64);
116 std::optional<ValueType> Unused;
122 AddressSpaceQualifier::Unknown);
124 AccessQualifier::Unknown);
126 AccessQualifier::Unknown);
187 std::vector<uint32_t>());
190 if (!MD.
mArgs.empty() || !YIO.outputting())
204 if (!MD.
mKernels.empty() || !YIO.outputting())
215 yaml::Input YamlInput(
String);
216 YamlInput >> HSAMetadata;
217 return YamlInput.error();
222 yaml::Output YamlOutput(YamlStream,
nullptr, std::numeric_limits<int>::max());
223 YamlOutput << HSAMetadata;
224 return std::error_code();
#define LLVM_YAML_IS_SEQUENCE_VECTOR(type)
StringRef - Represent a constant reference to a string, i.e.
A raw_ostream that writes to an std::string.
constexpr char AddrSpaceQual[]
Key for Kernel::Arg::Metadata::mAddrSpaceQual.
constexpr char ValueType[]
Key for Kernel::Arg::Metadata::mValueType. (deprecated)
constexpr char IsVolatile[]
Key for Kernel::Arg::Metadata::mIsVolatile.
constexpr char PointeeAlign[]
Key for Kernel::Arg::Metadata::mPointeeAlign.
constexpr char Size[]
Key for Kernel::Arg::Metadata::mSize.
constexpr char Align[]
Key for Kernel::Arg::Metadata::mAlign.
constexpr char TypeName[]
Key for Kernel::Arg::Metadata::mTypeName.
constexpr char ValueKind[]
Key for Kernel::Arg::Metadata::mValueKind.
constexpr char IsConst[]
Key for Kernel::Arg::Metadata::mIsConst.
constexpr char IsRestrict[]
Key for Kernel::Arg::Metadata::mIsRestrict.
constexpr char ActualAccQual[]
Key for Kernel::Arg::Metadata::mActualAccQual.
constexpr char AccQual[]
Key for Kernel::Arg::Metadata::mAccQual.
constexpr char IsPipe[]
Key for Kernel::Arg::Metadata::mIsPipe.
constexpr char Name[]
Key for Kernel::Arg::Metadata::mName.
constexpr char ReqdWorkGroupSize[]
Key for Kernel::Attr::Metadata::mReqdWorkGroupSize.
constexpr char VecTypeHint[]
Key for Kernel::Attr::Metadata::mVecTypeHint.
constexpr char RuntimeHandle[]
Key for Kernel::Attr::Metadata::mRuntimeHandle.
constexpr char WorkGroupSizeHint[]
Key for Kernel::Attr::Metadata::mWorkGroupSizeHint.
constexpr char NumVGPRs[]
Key for Kernel::CodeProps::Metadata::mNumVGPRs.
constexpr char NumSpilledSGPRs[]
Key for Kernel::CodeProps::Metadata::mNumSpilledSGPRs.
constexpr char IsXNACKEnabled[]
Key for Kernel::CodeProps::Metadata::mIsXNACKEnabled.
constexpr char NumSpilledVGPRs[]
Key for Kernel::CodeProps::Metadata::mNumSpilledVGPRs.
constexpr char KernargSegmentAlign[]
Key for Kernel::CodeProps::Metadata::mKernargSegmentAlign.
constexpr char IsDynamicCallStack[]
Key for Kernel::CodeProps::Metadata::mIsDynamicCallStack.
constexpr char NumSGPRs[]
Key for Kernel::CodeProps::Metadata::mNumSGPRs.
constexpr char KernargSegmentSize[]
Key for Kernel::CodeProps::Metadata::mKernargSegmentSize.
constexpr char WavefrontSize[]
Key for Kernel::CodeProps::Metadata::mWavefrontSize.
constexpr char MaxFlatWorkGroupSize[]
Key for Kernel::CodeProps::Metadata::mMaxFlatWorkGroupSize.
constexpr char GroupSegmentFixedSize[]
Key for Kernel::CodeProps::Metadata::mGroupSegmentFixedSize.
constexpr char PrivateSegmentFixedSize[]
Key for Kernel::CodeProps::Metadata::mPrivateSegmentFixedSize.
constexpr char ReservedFirstVGPR[]
Key for Kernel::DebugProps::Metadata::mReservedFirstVGPR.
constexpr char ReservedNumVGPRs[]
Key for Kernel::DebugProps::Metadata::mReservedNumVGPRs.
constexpr char DebuggerABIVersion[]
Key for Kernel::DebugProps::Metadata::mDebuggerABIVersion.
constexpr char PrivateSegmentBufferSGPR[]
Key for Kernel::DebugProps::Metadata::mPrivateSegmentBufferSGPR.
constexpr char WavefrontPrivateSegmentOffsetSGPR[]
Key for Kernel::DebugProps::Metadata::mWavefrontPrivateSegmentOffsetSGPR.
constexpr char Args[]
Key for Kernel::Metadata::mArgs.
constexpr char CodeProps[]
Key for Kernel::Metadata::mCodeProps.
constexpr char Name[]
Key for Kernel::Metadata::mName.
constexpr char Language[]
Key for Kernel::Metadata::mLanguage.
constexpr char Attrs[]
Key for Kernel::Metadata::mAttrs.
constexpr char LanguageVersion[]
Key for Kernel::Metadata::mLanguageVersion.
constexpr char DebugProps[]
Key for Kernel::Metadata::mDebugProps.
constexpr char SymbolName[]
Key for Kernel::Metadata::mSymbolName.
constexpr char Version[]
Key for HSA::Metadata::mVersion.
constexpr char Printf[]
Key for HSA::Metadata::mPrintf.
constexpr char Kernels[]
Key for HSA::Metadata::mKernels.
std::error_code fromString(StringRef String, Metadata &HSAMetadata)
Converts String to HSAMetadata.
AddressSpaceQualifier
Address space qualifiers.
std::error_code toString(Metadata HSAMetadata, std::string &String)
Converts HSAMetadata to String.
AccessQualifier
Access qualifiers.
This is an optimization pass for GlobalISel generic memory operations.
static void enumeration(IO &YIO, AccessQualifier &EN)
static void enumeration(IO &YIO, AddressSpaceQualifier &EN)
static void enumeration(IO &YIO, ValueKind &EN)
static void enumeration(IO &YIO, ValueType &EN)