class MetadataVerifier
Declaration
class MetadataVerifier { /* full declaration omitted */ };
Description
Verifier for AMDGPU HSA metadata. Operates in two modes: In strict mode, metadata must already be well-typed. In non-strict mode, metadata is coerced into expected types when possible.
Declared at: llvm/include/llvm/BinaryFormat/AMDGPUMetadataVerifier.h:45
Member Variables
- private bool Strict
Method Overview
- public MetadataVerifier(bool Strict)
- public bool verify(msgpack::DocNode & HSAMetadataRoot)
- private bool verifyArray(msgpack::DocNode & Node, function_ref<bool (msgpack::DocNode &)> verifyNode, Optional<size_t> Size = None)
- private bool verifyEntry(msgpack::MapDocNode & MapNode, llvm::StringRef Key, bool Required, function_ref<bool (msgpack::DocNode &)> verifyNode)
- private bool verifyInteger(msgpack::DocNode & Node)
- private bool verifyIntegerEntry(msgpack::MapDocNode & MapNode, llvm::StringRef Key, bool Required)
- private bool verifyKernel(msgpack::DocNode & Node)
- private bool verifyKernelArgs(msgpack::DocNode & Node)
- private bool verifyScalar(msgpack::DocNode & Node, msgpack::Type SKind, function_ref<bool (msgpack::DocNode &)> verifyValue = {})
- private bool verifyScalarEntry(msgpack::MapDocNode & MapNode, llvm::StringRef Key, bool Required, msgpack::Type SKind, function_ref<bool (msgpack::DocNode &)> verifyValue = {})
Methods
¶MetadataVerifier(bool Strict)
MetadataVerifier(bool Strict)
Description
Construct a MetadataVerifier, specifying whether it will operate in \p Strict mode.
Declared at: llvm/include/llvm/BinaryFormat/AMDGPUMetadataVerifier.h:68
Parameters
- bool Strict
¶bool verify(msgpack::DocNode& HSAMetadataRoot)
bool verify(msgpack::DocNode& HSAMetadataRoot)
Description
Verify given HSA metadata.
Declared at: llvm/include/llvm/BinaryFormat/AMDGPUMetadataVerifier.h:73
Parameters
- msgpack::DocNode& HSAMetadataRoot
Returns
True when successful, false when metadata is invalid.
¶bool verifyArray(
msgpack::DocNode& Node,
function_ref<bool(msgpack::DocNode&)>
verifyNode,
Optional<size_t> Size = None)
bool verifyArray(
msgpack::DocNode& Node,
function_ref<bool(msgpack::DocNode&)>
verifyNode,
Optional<size_t> Size = None)
Declared at: llvm/include/llvm/BinaryFormat/AMDGPUMetadataVerifier.h:51
Parameters
- msgpack::DocNode& Node
- function_ref<bool(msgpack::DocNode&)> verifyNode
- Optional<size_t> Size = None
¶bool verifyEntry(
msgpack::MapDocNode& MapNode,
llvm::StringRef Key,
bool Required,
function_ref<bool(msgpack::DocNode&)>
verifyNode)
bool verifyEntry(
msgpack::MapDocNode& MapNode,
llvm::StringRef Key,
bool Required,
function_ref<bool(msgpack::DocNode&)>
verifyNode)
Declared at: llvm/include/llvm/BinaryFormat/AMDGPUMetadataVerifier.h:54
Parameters
- msgpack::MapDocNode& MapNode
- llvm::StringRef Key
- bool Required
- function_ref<bool(msgpack::DocNode&)> verifyNode
¶bool verifyInteger(msgpack::DocNode& Node)
bool verifyInteger(msgpack::DocNode& Node)
Declared at: llvm/include/llvm/BinaryFormat/AMDGPUMetadataVerifier.h:50
Parameters
- msgpack::DocNode& Node
¶bool verifyIntegerEntry(
msgpack::MapDocNode& MapNode,
llvm::StringRef Key,
bool Required)
bool verifyIntegerEntry(
msgpack::MapDocNode& MapNode,
llvm::StringRef Key,
bool Required)
Declared at: llvm/include/llvm/BinaryFormat/AMDGPUMetadataVerifier.h:60
Parameters
- msgpack::MapDocNode& MapNode
- llvm::StringRef Key
- bool Required
¶bool verifyKernel(msgpack::DocNode& Node)
bool verifyKernel(msgpack::DocNode& Node)
Declared at: llvm/include/llvm/BinaryFormat/AMDGPUMetadataVerifier.h:63
Parameters
- msgpack::DocNode& Node
¶bool verifyKernelArgs(msgpack::DocNode& Node)
bool verifyKernelArgs(msgpack::DocNode& Node)
Declared at: llvm/include/llvm/BinaryFormat/AMDGPUMetadataVerifier.h:62
Parameters
- msgpack::DocNode& Node
¶bool verifyScalar(
msgpack::DocNode& Node,
msgpack::Type SKind,
function_ref<bool(msgpack::DocNode&)>
verifyValue = {})
bool verifyScalar(
msgpack::DocNode& Node,
msgpack::Type SKind,
function_ref<bool(msgpack::DocNode&)>
verifyValue = {})
Declared at: llvm/include/llvm/BinaryFormat/AMDGPUMetadataVerifier.h:48
Parameters
- msgpack::DocNode& Node
- msgpack::Type SKind
- function_ref<bool(msgpack::DocNode&)> verifyValue = {}
¶bool verifyScalarEntry(
msgpack::MapDocNode& MapNode,
llvm::StringRef Key,
bool Required,
msgpack::Type SKind,
function_ref<bool(msgpack::DocNode&)>
verifyValue = {})
bool verifyScalarEntry(
msgpack::MapDocNode& MapNode,
llvm::StringRef Key,
bool Required,
msgpack::Type SKind,
function_ref<bool(msgpack::DocNode&)>
verifyValue = {})
Declared at: llvm/include/llvm/BinaryFormat/AMDGPUMetadataVerifier.h:57
Parameters
- msgpack::MapDocNode& MapNode
- llvm::StringRef Key
- bool Required
- msgpack::Type SKind
- function_ref<bool(msgpack::DocNode&)> verifyValue = {}