LLVM 22.0.0git
RootSignatureMetadata.cpp File Reference

Go to the source code of this file.

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
namespace  llvm::hlsl
namespace  llvm::hlsl::rootsig

Functions

static std::optional< uint32_tllvm::hlsl::rootsig::extractMdIntValue (MDNode *Node, unsigned int OpId)
static std::optional< float > llvm::hlsl::rootsig::extractMdFloatValue (MDNode *Node, unsigned int OpId)
static std::optional< StringRefllvm::hlsl::rootsig::extractMdStringValue (MDNode *Node, unsigned int OpId)
template<typename T, typename = std::enable_if_t< std::is_enum_v<T> && std::is_same_v<std::underlying_type_t<T>, uint32_t>>>
static Expected< Tllvm::hlsl::rootsig::extractEnumValue (MDNode *Node, unsigned int OpId, StringRef ErrText, llvm::function_ref< bool(uint32_t)> VerifyFn)
static Error llvm::hlsl::rootsig::validateDescriptorTableSamplerMixin (const mcdxbc::DescriptorTable &Table, uint32_t Location)
static Error llvm::hlsl::rootsig::validateDescriptorTableRegisterOverflow (const mcdxbc::DescriptorTable &Table, uint32_t Location)

Variables

template<typename T>
char llvm::hlsl::rootsig::RootSignatureValidationError< T >::ID