13#ifndef LLVM_BINARYFORMAT_DXCONTAINER_H
14#define LLVM_BINARYFORMAT_DXCONTAINER_H
42 "Shader kind out of expected range.");
98 return StringRef(
reinterpret_cast<const char *
>(&
Name[0]), 4);
135static_assert(
sizeof(ProgramHeader) == 24,
"ProgramHeader Size incorrect!");
137#define CONTAINER_PART(Part) Part,
140#include "DXContainerConstants.def"
143#define SHADER_FLAG(Num, Val, Str) Val = 1ull << Num,
145#include "DXContainerConstants.def"
147static_assert((
uint64_t)FeatureFlags::NextUnusedBit <= 1ull << 63,
148 "Shader flag bits exceed enum size.");
271static_assert(
sizeof(PipelinePSVInfo) == 4 *
sizeof(
uint32_t),
272 "Pipeline-specific PSV info must fit in 16 bytes.");
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
StringRef - Represent a constant reference to a string, i.e.
The instances of the Type class are immutable: once they are created, they are never changed.
PartType parsePartType(StringRef S)
Triple::EnvironmentType getShaderStage(uint32_t Kind)
void swapByteOrder(T &Value)
This is an optimization pass for GlobalISel generic memory operations.
uint32_t PayloadSizeInBytes
uint32_t InputControlPointCount
uint32_t TessellatorDomain
uint8_t OutputPositionPresent
uint8_t OutputPositionPresent
uint32_t OutputStreamMask
uint32_t TessellatorOutputPrimitive
uint32_t OutputControlPointCount
uint32_t InputControlPointCount
uint32_t TessellatorDomain
uint32_t PayloadSizeInBytes
uint16_t MaxOutputVertices
uint16_t MaxOutputPrimitives
uint32_t GroupSharedBytesDependentOnViewID
uint32_t GroupSharedBytesUsed
uint32_t MaximumWaveLaneCount
PipelinePSVInfo StageInfo
void swapBytes(Triple::EnvironmentType Stage)
uint32_t MinimumWaveLaneCount
uint8_t MeshOutputTopology
GeometryExtraInfo GeomData
uint8_t SigOutputVectors[4]
void swapBytes(Triple::EnvironmentType Stage)
uint8_t SigPatchConstOrPrimElements
uint8_t SigOutputElements
void swapBytes(Triple::EnvironmentType Stage)
uint8_t OutputPositionPresent
void swapBytes(Triple::EnvironmentType Stage)