LLVM 20.0.0git
Public Types | Public Member Functions | Public Attributes | List of all members
llvm::DXContainerYAML::PSVInfo Struct Reference

#include "llvm/ObjectYAML/DXContainerYAML.h"

Public Types

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

Public Member Functions

void mapInfoForVersion (yaml::IO &IO)
 
 PSVInfo ()
 
 PSVInfo (const dxbc::PSV::v0::RuntimeInfo *P, uint16_t Stage)
 
 PSVInfo (const dxbc::PSV::v1::RuntimeInfo *P)
 
 PSVInfo (const dxbc::PSV::v2::RuntimeInfo *P)
 
 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 104 of file DXContainerYAML.h.

Member Typedef Documentation

◆ MaskVector

Definition at line 117 of file DXContainerYAML.h.

Constructor & Destructor Documentation

◆ PSVInfo() [1/5]

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

Definition at line 48 of file DXContainerYAML.cpp.

References Info.

◆ PSVInfo() [2/5]

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

Definition at line 52 of file DXContainerYAML.cpp.

References assert(), Info, P, and llvm::dxbc::PSV::v1::RuntimeInfo::ShaderStage.

◆ PSVInfo() [3/5]

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

Definition at line 65 of file DXContainerYAML.cpp.

References Info, and P.

◆ PSVInfo() [4/5]

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

Definition at line 71 of file DXContainerYAML.cpp.

References Info, and P.

◆ PSVInfo() [5/5]

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

Definition at line 77 of file DXContainerYAML.cpp.

References Info, and P.

Member Function Documentation

◆ mapInfoForVersion()

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

Definition at line 277 of file DXContainerYAML.cpp.

References llvm::Triple::Amplification, llvm::dxbc::PipelinePSVInfo::AS, llvm::dxbc::PixelPSVInfo::DepthOutput, llvm::Triple::Domain, llvm::dxbc::PipelinePSVInfo::DS, 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::HullPSVInfo::InputControlPointCount, llvm::dxbc::DomainPSVInfo::InputControlPointCount, llvm::dxbc::GeometryPSVInfo::InputPrimitive, llvm::dxbc::MeshPSVInfo::MaxOutputPrimitives, llvm::dxbc::MeshPSVInfo::MaxOutputVertices, llvm::Triple::Mesh, llvm::dxbc::PipelinePSVInfo::MS, llvm::dxbc::HullPSVInfo::OutputControlPointCount, llvm::dxbc::VertexPSVInfo::OutputPositionPresent, llvm::dxbc::DomainPSVInfo::OutputPositionPresent, llvm::dxbc::GeometryPSVInfo::OutputPositionPresent, llvm::dxbc::GeometryPSVInfo::OutputStreamMask, llvm::dxbc::GeometryPSVInfo::OutputTopology, llvm::dxbc::MeshPSVInfo::PayloadSizeInBytes, llvm::dxbc::AmplificationPSVInfo::PayloadSizeInBytes, llvm::Triple::Pixel, llvm::dxbc::PipelinePSVInfo::PS, llvm::dxbc::PixelPSVInfo::SampleFrequency, llvm::dxbc::HullPSVInfo::TessellatorDomain, llvm::dxbc::DomainPSVInfo::TessellatorDomain, llvm::dxbc::HullPSVInfo::TessellatorOutputPrimitive, llvm::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 124 of file DXContainerYAML.h.

◆ Info

dxbc::PSV::v3::RuntimeInfo llvm::DXContainerYAML::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: