LLVM 22.0.0git
llvm::DXContainerYAML::PSVInfo Struct Reference

#include "llvm/ObjectYAML/DXContainerYAML.h"

Public Types

using MaskVector = SmallVector<llvm::yaml::Hex32>

Public Member Functions

LLVM_ABI void mapInfoForVersion (yaml::IO &IO)
LLVM_ABI PSVInfo ()
LLVM_ABI PSVInfo (const dxbc::PSV::v0::RuntimeInfo *P, uint16_t Stage)
LLVM_ABI PSVInfo (const dxbc::PSV::v1::RuntimeInfo *P)
LLVM_ABI PSVInfo (const dxbc::PSV::v2::RuntimeInfo *P)
LLVM_ABI PSVInfo (const dxbc::PSV::v3::RuntimeInfo *P, StringRef StringTable)

Public Attributes

uint32_t Version
dxbc::PSV::v3::RuntimeInfo Info
uint32_t ResourceStride
SmallVector< ResourceBindInfoResources
SmallVector< SignatureElementSigInputElements
SmallVector< SignatureElementSigOutputElements
SmallVector< SignatureElementSigPatchOrPrimElements
std::array< MaskVector, 4 > OutputVectorMasks
MaskVector PatchOrPrimMasks
std::array< MaskVector, 4 > InputOutputMap
MaskVector InputPatchMap
MaskVector PatchOutputMap
StringRef EntryName

Detailed Description

Definition at line 238 of file DXContainerYAML.h.

Member Typedef Documentation

◆ MaskVector

Definition at line 251 of file DXContainerYAML.h.

Constructor & Destructor Documentation

◆ PSVInfo() [1/5]

llvm::DXContainerYAML::PSVInfo::PSVInfo ( )

Definition at line 264 of file DXContainerYAML.cpp.

References Info, and Version.

◆ PSVInfo() [2/5]

llvm::DXContainerYAML::PSVInfo::PSVInfo ( const dxbc::PSV::v0::RuntimeInfo * P,
uint16_t Stage )

Definition at line 268 of file DXContainerYAML.cpp.

References assert(), Info, P, and Version.

◆ PSVInfo() [3/5]

llvm::DXContainerYAML::PSVInfo::PSVInfo ( const dxbc::PSV::v1::RuntimeInfo * P)

Definition at line 281 of file DXContainerYAML.cpp.

References Info, P, and Version.

◆ PSVInfo() [4/5]

llvm::DXContainerYAML::PSVInfo::PSVInfo ( const dxbc::PSV::v2::RuntimeInfo * P)

Definition at line 287 of file DXContainerYAML.cpp.

References Info, P, and Version.

◆ PSVInfo() [5/5]

llvm::DXContainerYAML::PSVInfo::PSVInfo ( const dxbc::PSV::v3::RuntimeInfo * P,
StringRef StringTable )

Definition at line 293 of file DXContainerYAML.cpp.

References EntryName, llvm::find(), Info, P, substr(), and Version.

Member Function Documentation

◆ mapInfoForVersion()

void llvm::DXContainerYAML::PSVInfo::mapInfoForVersion ( yaml::IO & IO)

Definition at line 671 of file DXContainerYAML.cpp.

References llvm::Triple::Amplification, llvm::dxbc::PipelinePSVInfo::AS, llvm::dxbc::PixelPSVInfo::DepthOutput, llvm::Triple::Domain, llvm::dxbc::PipelinePSVInfo::DS, EntryName, llvm::Triple::Geometry, llvm::dxbc::getShaderStage(), llvm::dxbc::MeshPSVInfo::GroupSharedBytesDependentOnViewID, llvm::dxbc::MeshPSVInfo::GroupSharedBytesUsed, llvm::dxbc::PipelinePSVInfo::GS, llvm::dxbc::PipelinePSVInfo::HS, llvm::Triple::Hull, Info, llvm::dxbc::DomainPSVInfo::InputControlPointCount, llvm::dxbc::HullPSVInfo::InputControlPointCount, llvm::dxbc::GeometryPSVInfo::InputPrimitive, llvm::yaml::IO::mapRequired(), llvm::dxbc::MeshPSVInfo::MaxOutputPrimitives, llvm::dxbc::MeshPSVInfo::MaxOutputVertices, llvm::Triple::Mesh, llvm::dxbc::PipelinePSVInfo::MS, llvm::dxbc::HullPSVInfo::OutputControlPointCount, llvm::dxbc::DomainPSVInfo::OutputPositionPresent, llvm::dxbc::GeometryPSVInfo::OutputPositionPresent, llvm::dxbc::VertexPSVInfo::OutputPositionPresent, llvm::dxbc::GeometryPSVInfo::OutputStreamMask, llvm::dxbc::GeometryPSVInfo::OutputTopology, llvm::dxbc::AmplificationPSVInfo::PayloadSizeInBytes, llvm::dxbc::MeshPSVInfo::PayloadSizeInBytes, llvm::Triple::Pixel, llvm::dxbc::PipelinePSVInfo::PS, llvm::dxbc::PixelPSVInfo::SampleFrequency, llvm::dxbc::DomainPSVInfo::TessellatorDomain, llvm::dxbc::HullPSVInfo::TessellatorDomain, llvm::dxbc::HullPSVInfo::TessellatorOutputPrimitive, Version, llvm::Triple::Vertex, and llvm::dxbc::PipelinePSVInfo::VS.

Referenced by llvm::yaml::MappingTraits< DXContainerYAML::PSVInfo >::mapping().

Member Data Documentation

◆ EntryName

StringRef llvm::DXContainerYAML::PSVInfo::EntryName

Definition at line 258 of file DXContainerYAML.h.

Referenced by mapInfoForVersion(), and PSVInfo().

◆ Info

◆ InputOutputMap

std::array<MaskVector, 4> llvm::DXContainerYAML::PSVInfo::InputOutputMap

◆ InputPatchMap

MaskVector llvm::DXContainerYAML::PSVInfo::InputPatchMap

◆ OutputVectorMasks

std::array<MaskVector, 4> llvm::DXContainerYAML::PSVInfo::OutputVectorMasks

◆ PatchOrPrimMasks

MaskVector llvm::DXContainerYAML::PSVInfo::PatchOrPrimMasks

◆ PatchOutputMap

MaskVector llvm::DXContainerYAML::PSVInfo::PatchOutputMap

◆ Resources

SmallVector<ResourceBindInfo> llvm::DXContainerYAML::PSVInfo::Resources

◆ ResourceStride

uint32_t llvm::DXContainerYAML::PSVInfo::ResourceStride

◆ SigInputElements

SmallVector<SignatureElement> llvm::DXContainerYAML::PSVInfo::SigInputElements

◆ SigOutputElements

SmallVector<SignatureElement> llvm::DXContainerYAML::PSVInfo::SigOutputElements

◆ SigPatchOrPrimElements

SmallVector<SignatureElement> llvm::DXContainerYAML::PSVInfo::SigPatchOrPrimElements

◆ Version

uint32_t llvm::DXContainerYAML::PSVInfo::Version

The documentation for this struct was generated from the following files: