Thanks to visit codestin.com
Credit goes to llvm.org

LLVM 22.0.0git
DXContainer.h File Reference
#include "llvm/ADT/BitmaskEnum.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/DXILABI.h"
#include "llvm/Support/Error.h"
#include "llvm/Support/SwapByteOrder.h"
#include "llvm/TargetParser/Triple.h"
#include <stdint.h>
#include "DXContainerConstants.def"
#include "llvm/BinaryFormat/DXContainerConstants.def"

Go to the source code of this file.

Classes

struct  llvm::dxbc::Hash
struct  llvm::dxbc::ShaderHash
struct  llvm::dxbc::ContainerVersion
struct  llvm::dxbc::Header
struct  llvm::dxbc::PartHeader
 Use this type to describe the size and type of a DXIL container part. More...
struct  llvm::dxbc::BitcodeHeader
struct  llvm::dxbc::ProgramHeader
struct  llvm::dxbc::VertexPSVInfo
struct  llvm::dxbc::HullPSVInfo
struct  llvm::dxbc::DomainPSVInfo
struct  llvm::dxbc::GeometryPSVInfo
struct  llvm::dxbc::PixelPSVInfo
struct  llvm::dxbc::MeshPSVInfo
struct  llvm::dxbc::AmplificationPSVInfo
union  llvm::dxbc::PipelinePSVInfo
struct  llvm::dxbc::PSV::ResourceFlags
struct  llvm::dxbc::PSV::ResourceFlags::FlagsBits
struct  llvm::dxbc::PSV::v0::RuntimeInfo
struct  llvm::dxbc::PSV::v0::ResourceBindInfo
struct  llvm::dxbc::PSV::v0::SignatureElement
struct  llvm::dxbc::PSV::v1::MeshRuntimeInfo
union  llvm::dxbc::PSV::v1::GeometryExtraInfo
struct  llvm::dxbc::PSV::v1::RuntimeInfo
struct  llvm::dxbc::PSV::v2::RuntimeInfo
struct  llvm::dxbc::PSV::v2::ResourceBindInfo
struct  llvm::dxbc::PSV::v3::RuntimeInfo
struct  llvm::dxbc::ProgramSignatureHeader
struct  llvm::dxbc::ProgramSignatureElement
struct  llvm::dxbc::RTS0::v1::StaticSampler
struct  llvm::dxbc::RTS0::v1::DescriptorRange
struct  llvm::dxbc::RTS0::v1::RootDescriptor
struct  llvm::dxbc::RTS0::v1::RootConstants
struct  llvm::dxbc::RTS0::v1::RootParameterHeader
struct  llvm::dxbc::RTS0::v1::RootSignatureHeader
struct  llvm::dxbc::RTS0::v2::RootDescriptor
struct  llvm::dxbc::RTS0::v2::DescriptorRange

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
namespace  llvm::dxbc
namespace  llvm::dxbc::PSV
namespace  llvm::dxbc::PSV::v0
namespace  llvm::dxbc::PSV::v1
namespace  llvm::dxbc::PSV::v2
namespace  llvm::dxbc::PSV::v3
namespace  llvm::dxbc::RTS0
namespace  llvm::dxbc::RTS0::v1
namespace  llvm::dxbc::RTS0::v2

Macros

#define CONTAINER_PART(Part)
#define SHADER_FEATURE_FLAG(Num, DxilModuleNum, Val, Str)
#define ROOT_SIGNATURE_FLAG(Num, Val)
#define ROOT_DESCRIPTOR_FLAG(Num, Enum, Flag)
#define DESCRIPTOR_RANGE_FLAG(Num, Enum, Flag)
#define ROOT_PARAMETER(Val, Enum)
#define ROOT_PARAMETER(Val, Enum)
#define SHADER_VISIBILITY(Val, Enum)
#define SHADER_VISIBILITY(Val, Enum)
#define FILTER(Val, Enum)
#define FILTER(Val, Enum)
#define TEXTURE_ADDRESS_MODE(Val, Enum)
#define TEXTURE_ADDRESS_MODE(Val, Enum)
#define COMPARISON_FUNC(Val, Enum)
#define COMPARISON_FUNC(Val, Enum)
#define STATIC_BORDER_COLOR(Val, Enum)
#define STATIC_BORDER_COLOR(Val, Enum)
#define SEMANTIC_KIND(Val, Enum)
#define COMPONENT_TYPE(Val, Enum)
#define INTERPOLATION_MODE(Val, Enum)
#define RESOURCE_TYPE(Val, Enum)
#define RESOURCE_KIND(Val, Enum)
#define RESOURCE_FLAG(Index, Enum)
#define COMPONENT_PRECISION(Val, Enum)
#define D3D_SYSTEM_VALUE(Val, Enum)
#define COMPONENT_TYPE(Val, Enum)

Enumerations

enum class  llvm::dxbc::HashFlags : uint32_t { llvm::dxbc::None = 0 , llvm::dxbc::IncludesSource = 1 }
enum class  llvm::dxbc::PartType { llvm::dxbc::Unknown = 0 }
enum class  llvm::dxbc::FeatureFlags : uint64_t
enum class  llvm::dxbc::RootFlags : uint32_t
enum class  llvm::dxbc::RootDescriptorFlags : uint32_t
enum class  llvm::dxbc::DescriptorRangeFlags : uint32_t
enum class  llvm::dxbc::RootParameterType : uint32_t
enum class  llvm::dxbc::ShaderVisibility : uint32_t
enum class  llvm::dxbc::SamplerFilter : uint32_t
enum class  llvm::dxbc::TextureAddressMode : uint32_t
enum class  llvm::dxbc::ComparisonFunc : uint32_t
enum class  llvm::dxbc::StaticBorderColor : uint32_t
enum class  llvm::dxbc::PSV::SemanticKind : uint8_t
enum class  llvm::dxbc::PSV::ComponentType : uint8_t
enum class  llvm::dxbc::PSV::InterpolationMode : uint8_t
enum class  llvm::dxbc::PSV::ResourceType : uint32_t
enum class  llvm::dxbc::PSV::ResourceKind : uint32_t
enum class  llvm::dxbc::SigMinPrecision : uint32_t
enum class  llvm::dxbc::D3DSystemValue : uint32_t
enum class  llvm::dxbc::SigComponentType : uint32_t
enum class  llvm::dxbc::RootSignatureVersion { llvm::dxbc::V1_0 = 0x1 , llvm::dxbc::V1_1 = 0x2 }

Functions

 llvm::dxbc::LLVM_ENABLE_BITMASK_ENUMS_IN_NAMESPACE ()
Triple::EnvironmentType llvm::dxbc::getShaderStage (uint32_t Kind)
LLVM_ABI ArrayRef< EnumEntry< RootFlags > > llvm::dxbc::getRootFlags ()
LLVM_ABI ArrayRef< EnumEntry< RootDescriptorFlags > > llvm::dxbc::getRootDescriptorFlags ()
LLVM_ABI ArrayRef< EnumEntry< DescriptorRangeFlags > > llvm::dxbc::getDescriptorRangeFlags ()
LLVM_ABI ArrayRef< EnumEntry< RootParameterType > > llvm::dxbc::getRootParameterTypes ()
bool llvm::dxbc::isValidParameterType (uint32_t V)
bool llvm::dxbc::isValidRangeType (uint32_t V)
LLVM_ABI ArrayRef< EnumEntry< ShaderVisibility > > llvm::dxbc::getShaderVisibility ()
bool llvm::dxbc::isValidShaderVisibility (uint32_t V)
bool llvm::dxbc::isValidSamplerFilter (uint32_t V)
LLVM_ABI ArrayRef< EnumEntry< SamplerFilter > > llvm::dxbc::getSamplerFilters ()
LLVM_ABI ArrayRef< EnumEntry< TextureAddressMode > > llvm::dxbc::getTextureAddressModes ()
bool llvm::dxbc::isValidAddress (uint32_t V)
LLVM_ABI ArrayRef< EnumEntry< ComparisonFunc > > llvm::dxbc::getComparisonFuncs ()
bool llvm::dxbc::isValidComparisonFunc (uint32_t V)
bool llvm::dxbc::isValidBorderColor (uint32_t V)
LLVM_ABI ArrayRef< EnumEntry< StaticBorderColor > > llvm::dxbc::getStaticBorderColors ()
LLVM_ABI PartType llvm::dxbc::parsePartType (StringRef S)
LLVM_ABI ArrayRef< EnumEntry< SemanticKind > > llvm::dxbc::PSV::getSemanticKinds ()
LLVM_ABI ArrayRef< EnumEntry< ComponentType > > llvm::dxbc::PSV::getComponentTypes ()
LLVM_ABI ArrayRef< EnumEntry< InterpolationMode > > llvm::dxbc::PSV::getInterpolationModes ()
LLVM_ABI ArrayRef< EnumEntry< ResourceType > > llvm::dxbc::PSV::getResourceTypes ()
LLVM_ABI ArrayRef< EnumEntry< ResourceKind > > llvm::dxbc::PSV::getResourceKinds ()
LLVM_ABI ArrayRef< EnumEntry< SigMinPrecision > > llvm::dxbc::getSigMinPrecisions ()
LLVM_ABI ArrayRef< EnumEntry< D3DSystemValue > > llvm::dxbc::getD3DSystemValues ()
LLVM_ABI ArrayRef< EnumEntry< SigComponentType > > llvm::dxbc::getSigComponentTypes ()

Macro Definition Documentation

◆ COMPARISON_FUNC [1/2]

#define COMPARISON_FUNC ( Val,
Enum )
Value:
Enum = Val,

Definition at line 260 of file DXContainer.h.

◆ COMPARISON_FUNC [2/2]

#define COMPARISON_FUNC ( Val,
Enum )
Value:
case Val: \
return true;

Definition at line 260 of file DXContainer.h.

◆ COMPONENT_PRECISION

#define COMPONENT_PRECISION ( Val,
Enum )
Value:
Enum = Val,

Definition at line 615 of file DXContainer.h.

◆ COMPONENT_TYPE [1/2]

#define COMPONENT_TYPE ( Val,
Enum )
Value:
Enum = Val,

Definition at line 427 of file DXContainer.h.

◆ COMPONENT_TYPE [2/2]

#define COMPONENT_TYPE ( Val,
Enum )
Value:
Enum = Val,

Definition at line 427 of file DXContainer.h.

◆ CONTAINER_PART

#define CONTAINER_PART ( Part)
Value:
Part,

Definition at line 148 of file DXContainer.h.

◆ D3D_SYSTEM_VALUE

#define D3D_SYSTEM_VALUE ( Val,
Enum )
Value:
Enum = Val,

Definition at line 622 of file DXContainer.h.

◆ DESCRIPTOR_RANGE_FLAG

#define DESCRIPTOR_RANGE_FLAG ( Num,
Enum,
Flag )
Value:
Enum = Num,

Definition at line 179 of file DXContainer.h.

◆ FILTER [1/2]

#define FILTER ( Val,
Enum )
Value:
Enum = Val,

Definition at line 226 of file DXContainer.h.

◆ FILTER [2/2]

#define FILTER ( Val,
Enum )
Value:
case Val: \
return true;

Definition at line 226 of file DXContainer.h.

◆ INTERPOLATION_MODE

#define INTERPOLATION_MODE ( Val,
Enum )
Value:
Enum = Val,

Definition at line 434 of file DXContainer.h.

◆ RESOURCE_FLAG

#define RESOURCE_FLAG ( Index,
Enum )
Value:
bool Enum = false;

Definition at line 455 of file DXContainer.h.

◆ RESOURCE_KIND

#define RESOURCE_KIND ( Val,
Enum )
Value:
Enum = Val,

Definition at line 448 of file DXContainer.h.

◆ RESOURCE_TYPE

#define RESOURCE_TYPE ( Val,
Enum )
Value:
Enum = Val,

Definition at line 441 of file DXContainer.h.

◆ ROOT_DESCRIPTOR_FLAG

#define ROOT_DESCRIPTOR_FLAG ( Num,
Enum,
Flag )
Value:
Enum = Num,

Definition at line 170 of file DXContainer.h.

◆ ROOT_PARAMETER [1/2]

#define ROOT_PARAMETER ( Val,
Enum )
Value:
Enum = Val,

Definition at line 188 of file DXContainer.h.

◆ ROOT_PARAMETER [2/2]

#define ROOT_PARAMETER ( Val,
Enum )
Value:
case Val: \
return true;

Definition at line 188 of file DXContainer.h.

◆ ROOT_SIGNATURE_FLAG

#define ROOT_SIGNATURE_FLAG ( Num,
Val )
Value:
Val = Num,

Definition at line 161 of file DXContainer.h.

◆ SEMANTIC_KIND

#define SEMANTIC_KIND ( Val,
Enum )
Value:
Enum = Val,

Definition at line 420 of file DXContainer.h.

◆ SHADER_FEATURE_FLAG

#define SHADER_FEATURE_FLAG ( Num,
DxilModuleNum,
Val,
Str )
Value:
Val = 1ull << Num,

Definition at line 154 of file DXContainer.h.

◆ SHADER_VISIBILITY [1/2]

#define SHADER_VISIBILITY ( Val,
Enum )
Value:
Enum = Val,

Definition at line 209 of file DXContainer.h.

◆ SHADER_VISIBILITY [2/2]

#define SHADER_VISIBILITY ( Val,
Enum )
Value:
case Val: \
return true;

Definition at line 209 of file DXContainer.h.

◆ STATIC_BORDER_COLOR [1/2]

#define STATIC_BORDER_COLOR ( Val,
Enum )
Value:
Enum = Val,

Definition at line 277 of file DXContainer.h.

◆ STATIC_BORDER_COLOR [2/2]

#define STATIC_BORDER_COLOR ( Val,
Enum )
Value:
case Val: \
return true;

Definition at line 277 of file DXContainer.h.

◆ TEXTURE_ADDRESS_MODE [1/2]

#define TEXTURE_ADDRESS_MODE ( Val,
Enum )
Value:
Enum = Val,

Definition at line 243 of file DXContainer.h.

◆ TEXTURE_ADDRESS_MODE [2/2]

#define TEXTURE_ADDRESS_MODE ( Val,
Enum )
Value:
case Val: \
return true;

Definition at line 243 of file DXContainer.h.