14#ifndef LLVM_FRONTEND_HLSL_SEMANTICSIGNATURES_H
15#define LLVM_FRONTEND_HLSL_SEMANTICSIGNATURES_H
82 dxbc::PSV::InterpolationMode::Undefined;
117 if (!UseMinPrecision)
118 return dxbc::SigMinPrecision::Default;
121 return dxbc::SigMinPrecision::Float16;
123 return dxbc::SigMinPrecision::SInt16;
125 return dxbc::SigMinPrecision::UInt16;
127 return dxbc::SigMinPrecision::Default;
This file defines the SmallVector class.
Represent a constant reference to an array (0 or more elements consecutively in memory),...
Tagged union holding either a T or a Error.
This is an important class for using LLVM in a threaded context.
This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small.
Represent a constant reference to a string, i.e.
ElementType
The element type of an SRV or UAV resource.
static constexpr uint32_t UnallocatedRow
LLVM_ENABLE_BITMASK_ENUMS_IN_NAMESPACE()
@ PatchConstantOrPrimitive
@ LLVM_MARK_AS_BITMASK_ENUM
LLVM_ABI SemanticInterpretation getInterpretationKind(dxbc::PSV::SemanticKind SemanticKind, Triple::EnvironmentType ShaderStage, IOType IOTy)
LLVM_ABI ArrayRef< SemanticStageInfo > getAvailableStages(dxbc::PSV::SemanticKind SemanticKind)
LLVM_ABI dxbc::PSV::SemanticKind getSemanticKind(StringRef SemanticName)
static constexpr uint8_t UnallocatedCol
This is an optimization pass for GlobalISel generic memory operations.
auto size(R &&Range, std::enable_if_t< std::is_base_of< std::random_access_iterator_tag, typename std::iterator_traits< decltype(Range.begin())>::iterator_category >::value, void > *=nullptr)
Get the size of a range.
uint8_t getAlwaysReadsMask() const
uint8_t getNeverWritesMask() const
dxbc::SigMinPrecision getMinPrecision(bool UseMinPrecision) const
uint8_t getDeclaredMask() const
static LLVM_ABI Expected< SemanticSignatureElement > fromMetadata(const MDNode *Node)
SmallVector< uint32_t > SemanticIndices
dxil::ElementType CompType
SemanticSignatureElement(uint32_t SigId, StringRef SemanticName, dxil::ElementType CompType, dxbc::PSV::SemanticKind SemanticKind, ArrayRef< uint32_t > SemanticIndices, uint8_t Cols)
dxbc::PSV::SemanticKind SemanticKind
SemanticSignatureElement()=default
dxbc::PSV::InterpolationMode InterpMode
LLVM_ABI MDNode * toMetadata(LLVMContext &Ctx) const
SemanticInterpretation Interpretation
IOType AllowedIOTypesMask
Triple::EnvironmentType Stage