Update SPIR-V headers to latest

This commit is contained in:
baldurk
2026-02-13 10:41:59 +00:00
parent a4b8179794
commit f1a57ff64a
12 changed files with 3000 additions and 75 deletions
@@ -129,6 +129,7 @@
5116 BFloat16TypeKHR
5117 BFloat16DotProductKHR
5118 BFloat16CooperativeMatrixKHR
5128 DescriptorHeapEXT
5249 SampleMaskOverrideCoverageNV
5251 GeometryShaderPassthroughNV
5254 ShaderViewportIndexLayerEXT
@@ -142,7 +143,7 @@
5284 FragmentBarycentricKHR
5288 ComputeDerivativeGroupQuadsKHR
5291 FragmentDensityEXT
5297 GroupNonUniformPartitionedNV
5297 GroupNonUniformPartitionedEXT
5301 ShaderNonUniform
5302 RuntimeDescriptorArray
5303 InputAttachmentArrayDynamicIndexing
@@ -172,6 +173,7 @@
5380 DisplacementMicromapNV
5381 RayTracingOpacityMicromapEXT
5383 ShaderInvocationReorderNV
5388 ShaderInvocationReorderEXT
5390 BindlessTextureNV
5391 RayQueryPositionFetchKHR
5394 CooperativeVectorNV
@@ -180,6 +182,8 @@
5414 RawAccessChainsNV
5418 RayTracingSpheresGeometryNV
5419 RayTracingLinearSweptSpheresGeometryNV
5423 PushConstantBanksNV
5425 LongVectorEXT
5426 Shader64BitIndexingEXT
5430 CooperativeMatrixReductionsNV
5431 CooperativeMatrixConversionsNV
@@ -42,11 +42,13 @@ SPV_KHR_workgroup_memory_explicit_layout
SPV_EXT_arithmetic_fence
SPV_EXT_demote_to_helper_invocation
SPV_EXT_descriptor_indexing
SPV_EXT_descriptor_heap
SPV_EXT_float8
SPV_EXT_fragment_fully_covered
SPV_EXT_fragment_invocation_density
SPV_EXT_fragment_shader_interlock
SPV_EXT_image_raw10_raw12
SPV_EXT_long_vector
SPV_EXT_mesh_shader
SPV_EXT_opacity_micromap
SPV_EXT_optnone
@@ -58,7 +60,9 @@ SPV_EXT_shader_atomic_float_add
SPV_EXT_shader_atomic_float_min_max
SPV_EXT_shader_atomic_float16_add
SPV_EXT_shader_image_int64
SPV_EXT_shader_invocation_reorder
SPV_EXT_shader_stencil_export
SPV_EXT_shader_subgroup_partitioned
SPV_EXT_shader_tile_image
SPV_EXT_shader_viewport_index_layer
SPV_ALTERA_arbitrary_precision_fixed_point
@@ -135,6 +139,7 @@ SPV_NV_fragment_shader_barycentric
SPV_NV_geometry_shader_passthrough
SPV_NV_linear_swept_spheres
SPV_NV_mesh_shader
SPV_NV_push_constant_bank
SPV_NV_raw_access_chains
SPV_NV_ray_tracing
SPV_NV_ray_tracing_motion_blur
@@ -6,7 +6,7 @@ unix2dos -q all_exts.txt
# sorted by enum value
sed -n '/kind.*"Capability",$/,/"category"/p' spirv.core.grammar.json |
grep 'enumerant\>\|value' | paste -sd ' \n' | awk '{print $6" "$3}' |
grep 'enumerant\>\|value' | sed -e '{s#": #" : #g}' | paste -sd ' \n' | awk '{print $6" "$3}' |
tr -d '",' | sort -n > all_capabilities.txt
unix2dos -q all_capabilities.txt
@@ -238,6 +238,8 @@ KHR extensions will definitely be implemented at some point, though KHR extensio
## EXT
* `SPV_EXT_descriptor_heap`
* `DescriptorHeapEXT`
* `SPV_EXT_float8`
* `Float8EXT`
* `Float8CooperativeMatrixEXT`
@@ -245,10 +247,16 @@ KHR extensions will definitely be implemented at some point, though KHR extensio
* `FragmentShaderSampleInterlockEXT`
* `FragmentShaderShadingRateInterlockEXT`
* `FragmentShaderPixelInterlockEXT`
* `SPV_EXT_long_vector`
* `LongVectorEXT`
* `SPV_EXT_replicated_composites`
* `ReplicatedCompositesEXT`
* `SPV_EXT_shader_64bit_indexing`
* `Shader64BitIndexingEXT`
* `SPV_EXT_shader_invocation_reorder`
* `ShaderInvocationReorderEXT`
* `SPV_EXT_shader_subgroup_partitioned`
* `GroupNonUniformPartitionedEXT`
* `SPV_EXT_shader_tile_image`
* `TileImageColorReadAccessEXT`
* `TileImageDepthReadAccessEXT`
@@ -432,6 +440,8 @@ KHR extensions will definitely be implemented at some point, though KHR extensio
* `RayTracingLinearSweptSpheresGeometryNV`
* `SPV_NV_mesh_shader`
* `MeshShadingNV`
* `SPV_NV_push_constant_bank`
* `PushConstantBanksNV`
* `SPV_NV_raw_access_chains`
* `RawAccessChainsNV`
* `SPV_NV_ray_tracing_motion_blur`
+6 -2
View File
@@ -140,13 +140,15 @@
<ids type="opcode" start="6592" end="6655" vendor="Saarland University" comment="Contact devillers@cg.uni-saarland.de"/>
<ids type="opcode" start="6656" end="6719" vendor="Meta" comment="Contact dunfanlu@meta.com"/>
<ids type="opcode" start="6720" end="6783" vendor="MediaTek" comment="Contact samuel.huang@mediatek.com"/>
<ids type="opcode" start="6784" end="6911" vendor="Intel" comment="Contact mariusz.merecki@intel.com"/>
<ids type="opcode" start="6912" end="6975" vendor="Valve" comment="Contact michael.blumenkrantz@gmail.com"/>
<!-- Opcode enumerants to reserve for future use. To get a block, allocate
multiples of 64 starting at the lowest available point in this
block and add a corresponding <ids> tag immediately above. Make
sure to fill in the vendor attribute, and preferably add a contact
person/address in a comment attribute. -->
<!-- Example new block: <ids type="opcode" start="XXXX" end="XXXX+64n-1" vendor="Add vendor" comment="Contact TBD"/> -->
<ids type="opcode" start="6784" end="65535" comment="Opcode range reservable for future use by vendors"/>
<ids type="opcode" start="6976" end="65535" comment="Opcode range reservable for future use by vendors"/>
<!-- End reservations of opcodes -->
@@ -174,13 +176,15 @@
<ids type="enumerant" start="6592" end="6655" vendor="Saarland University" comment="Contact devillers@cg.uni-saarland.de"/>
<ids type="enumerant" start="6656" end="6719" vendor="Meta" comment="Contact dunfanlu@meta.com"/>
<ids type="enumerant" start="6720" end="6783" vendor="MediaTek" comment="Contact samuel.huang@mediatek.com"/>
<ids type="enumerant" start="6784" end="6911" vendor="Intel" comment="Contact mariusz.merecki@intel.com"/>
<ids type="enumerant" start="6912" end="6975" vendor="Valve" comment="Contact michael.blumenkrantz@gmail.com"/>
<!-- Enumerants to reserve for future use. To get a block, allocate
multiples of 64 starting at the lowest available point in this
block and add a corresponding <ids> tag immediately above. Make
sure to fill in the vendor attribute, and preferably add a contact
person/address in a comment attribute. -->
<!-- Example new block: <ids type="enumerant" start="XXXX" end="XXXX+64n-1" vendor="Add vendor" comment="Contact TBD"/> -->
<ids type="enumerant" start="6784" end="4294967295" comment="Enumerant range reservable for future use by vendors"/>
<ids type="enumerant" start="6976" end="4294967295" comment="Enumerant range reservable for future use by vendors"/>
<!-- End reservations of enumerants -->
@@ -4085,7 +4085,7 @@
{ "kind" : "IdRef", "name" : "Value" },
{ "kind" : "IdRef", "name" : "ClusterSize", "quantifier" : "?" }
],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedEXT" ],
"version" : "1.3"
},
{
@@ -4100,7 +4100,7 @@
{ "kind" : "IdRef", "name" : "Value" },
{ "kind" : "IdRef", "name" : "ClusterSize", "quantifier" : "?" }
],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedEXT" ],
"version" : "1.3"
},
{
@@ -4115,7 +4115,7 @@
{ "kind" : "IdRef", "name" : "Value" },
{ "kind" : "IdRef", "name" : "ClusterSize", "quantifier" : "?" }
],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedEXT" ],
"version" : "1.3"
},
{
@@ -4130,7 +4130,7 @@
{ "kind" : "IdRef", "name" : "Value" },
{ "kind" : "IdRef", "name" : "ClusterSize", "quantifier" : "?" }
],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedEXT" ],
"version" : "1.3"
},
{
@@ -4145,7 +4145,7 @@
{ "kind" : "IdRef", "name" : "Value" },
{ "kind" : "IdRef", "name" : "ClusterSize", "quantifier" : "?" }
],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedEXT" ],
"version" : "1.3"
},
{
@@ -4160,7 +4160,7 @@
{ "kind" : "IdRef", "name" : "Value" },
{ "kind" : "IdRef", "name" : "ClusterSize", "quantifier" : "?" }
],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedEXT" ],
"version" : "1.3"
},
{
@@ -4175,7 +4175,7 @@
{ "kind" : "IdRef", "name" : "Value" },
{ "kind" : "IdRef", "name" : "ClusterSize", "quantifier" : "?" }
],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedEXT" ],
"version" : "1.3"
},
{
@@ -4190,7 +4190,7 @@
{ "kind" : "IdRef", "name" : "Value" },
{ "kind" : "IdRef", "name" : "ClusterSize", "quantifier" : "?" }
],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedEXT" ],
"version" : "1.3"
},
{
@@ -4205,7 +4205,7 @@
{ "kind" : "IdRef", "name" : "Value" },
{ "kind" : "IdRef", "name" : "ClusterSize", "quantifier" : "?" }
],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedEXT" ],
"version" : "1.3"
},
{
@@ -4220,7 +4220,7 @@
{ "kind" : "IdRef", "name" : "Value" },
{ "kind" : "IdRef", "name" : "ClusterSize", "quantifier" : "?" }
],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedEXT" ],
"version" : "1.3"
},
{
@@ -4235,7 +4235,7 @@
{ "kind" : "IdRef", "name" : "Value" },
{ "kind" : "IdRef", "name" : "ClusterSize", "quantifier" : "?" }
],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedEXT" ],
"version" : "1.3"
},
{
@@ -4250,7 +4250,7 @@
{ "kind" : "IdRef", "name" : "Value" },
{ "kind" : "IdRef", "name" : "ClusterSize", "quantifier" : "?" }
],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedEXT" ],
"version" : "1.3"
},
{
@@ -4265,7 +4265,7 @@
{ "kind" : "IdRef", "name" : "Value" },
{ "kind" : "IdRef", "name" : "ClusterSize", "quantifier" : "?" }
],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedEXT" ],
"version" : "1.3"
},
{
@@ -4280,7 +4280,7 @@
{ "kind" : "IdRef", "name" : "Value" },
{ "kind" : "IdRef", "name" : "ClusterSize", "quantifier" : "?" }
],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedEXT" ],
"version" : "1.3"
},
{
@@ -4295,7 +4295,7 @@
{ "kind" : "IdRef", "name" : "Value" },
{ "kind" : "IdRef", "name" : "ClusterSize", "quantifier" : "?" }
],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedEXT" ],
"version" : "1.3"
},
{
@@ -4310,7 +4310,7 @@
{ "kind" : "IdRef", "name" : "Value" },
{ "kind" : "IdRef", "name" : "ClusterSize", "quantifier" : "?" }
],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedEXT" ],
"version" : "1.3"
},
{
@@ -5695,6 +5695,68 @@
"capabilities" : [ "QuadControlKHR" ],
"version" : "None"
},
{
"opname" : "OpTypeBufferEXT",
"class" : "Type-Declaration",
"opcode" : 5115,
"operands" : [
{ "kind" : "IdResult" },
{ "kind" : "StorageClass" }
],
"capabilities": [ "DescriptorHeapEXT" ],
"version" : "None"
},
{
"opname" : "OpBufferPointerEXT",
"class" : "Memory",
"opcode" : 5119,
"operands" : [
{ "kind" : "IdResultType" },
{ "kind" : "IdResult" },
{ "kind" : "IdRef", "name" : "Buffer" }
],
"capabilities": [ "DescriptorHeapEXT" ],
"version" : "None"
},
{
"opname" : "OpUntypedImageTexelPointerEXT",
"class" : "Memory",
"opcode" : 5126,
"operands" : [
{ "kind" : "IdResultType" },
{ "kind" : "IdResult" },
{ "kind" : "IdRef", "name" : "ImageType" },
{ "kind" : "IdRef", "name" : "Image" },
{ "kind" : "IdRef", "name" : "Coordinate" },
{ "kind" : "IdRef", "name" : "Sample" }
],
"capabilities": [ "DescriptorHeapEXT" ],
"version": "None"
},
{
"opname" : "OpMemberDecorateIdEXT",
"class" : "Annotation",
"opcode" : 5127,
"operands" : [
{ "kind" : "IdRef", "name" : "Structure Type" },
{ "kind" : "LiteralInteger", "name" : "Member" },
{ "kind" : "Decoration" }
],
"capabilities": [ "DescriptorHeapEXT" ],
"version" : "None"
},
{
"opname" : "OpConstantSizeOfEXT",
"class" : "Constant-Creation",
"opcode" : 5129,
"operands" : [
{ "kind" : "IdResultType" },
{ "kind" : "IdResult" },
{ "kind" : "IdRef", "name" : "Type" }
],
"capabilities": [ "DescriptorHeapEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectRecordHitMotionNV",
"class" : "Reserved",
@@ -6168,15 +6230,16 @@
"version" : "None"
},
{
"opname" : "OpTypeCooperativeVectorNV",
"opname" : "OpTypeVectorIdEXT",
"class" : "Type-Declaration",
"opcode" : 5288,
"aliases" : ["OpTypeCooperativeVectorNV"],
"operands" : [
{ "kind" : "IdResult" },
{ "kind" : "IdRef", "name" : "Component Type" },
{ "kind" : "IdRef", "name" : "Component Count" }
],
"capabilities" : [ "CooperativeVectorNV" ],
"capabilities" : [ "CooperativeVectorNV", "LongVectorEXT" ],
"version" : "None"
},
{
@@ -6291,16 +6354,16 @@
"version" : "None"
},
{
"opname" : "OpGroupNonUniformPartitionNV",
"opname" : "OpGroupNonUniformPartitionEXT",
"class" : "Non-Uniform",
"aliases" : ["OpGroupNonUniformPartitionNV"],
"opcode" : 5296,
"operands" : [
{ "kind" : "IdResultType" },
{ "kind" : "IdResult" },
{ "kind" : "IdRef", "name" : "Value" }
],
"capabilities" : [ "GroupNonUniformPartitionedNV" ],
"extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
"capabilities" : [ "GroupNonUniformPartitionedEXT" ],
"version" : "None"
},
{
@@ -6374,6 +6437,411 @@
"capabilities" : [ "CooperativeVectorNV" ],
"version" : "None"
},
{
"opname" : "OpHitObjectRecordFromQueryEXT",
"class" : "Reserved",
"opcode" : 5304,
"operands" : [
{ "kind" : "IdRef", "name" : "Hit Object" },
{ "kind" : "IdRef", "name" : "Ray Query" },
{ "kind" : "IdRef", "name" : "SBT Record Index" },
{ "kind" : "IdRef", "name" : "Hit Object Attributes" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectRecordMissEXT",
"class" : "Reserved",
"opcode" : 5305,
"operands" : [
{ "kind" : "IdRef", "name" : "Hit Object" },
{ "kind" : "IdRef", "name" : "Ray Flags" },
{ "kind" : "IdRef", "name" : "Miss Index" },
{ "kind" : "IdRef", "name" : "Ray Origin" },
{ "kind" : "IdRef", "name" : "Ray Tmin" },
{ "kind" : "IdRef", "name" : "Ray Direction" },
{ "kind" : "IdRef", "name" : "Ray Tmax" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectRecordMissMotionEXT",
"class" : "Reserved",
"opcode" : 5306,
"operands" : [
{ "kind" : "IdRef", "name" : "Hit Object" },
{ "kind" : "IdRef", "name" : "Ray Flags" },
{ "kind" : "IdRef", "name" : "Miss Index" },
{ "kind" : "IdRef", "name" : "Ray Origin" },
{ "kind" : "IdRef", "name" : "Ray Tmin" },
{ "kind" : "IdRef", "name" : "Ray Direction" },
{ "kind" : "IdRef", "name" : "Ray Tmax" },
{ "kind" : "IdRef", "name" : "Current Time" }
],
"capabilities" : [ "ShaderInvocationReorderEXT", "RayTracingMotionBlurNV" ],
"version" : "None"
},
{
"opname" : "OpHitObjectGetIntersectionTriangleVertexPositionsEXT",
"class" : "Reserved",
"opcode" : 5307,
"operands" : [
{ "kind" : "IdResultType"},
{ "kind" : "IdResult"},
{ "kind" : "IdRef", "name" : "Hit Object" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectGetRayFlagsEXT",
"class" : "Reserved",
"opcode" : 5308,
"operands" : [
{ "kind" : "IdResultType"},
{ "kind" : "IdResult"},
{ "kind" : "IdRef", "name" : "Hit Object" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectSetShaderBindingTableRecordIndexEXT",
"class" : "Reserved",
"opcode" : 5309,
"operands" : [
{ "kind" : "IdRef", "name" : "Hit Object" },
{ "kind" : "IdRef", "name" : "SBT Record Index" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectReorderExecuteShaderEXT",
"class" : "Reserved",
"opcode" : 5310,
"operands" : [
{ "kind" : "IdRef", "name" : "Hit Object" },
{ "kind" : "IdRef", "name" : "Payload" },
{ "kind" : "IdRef", "quantifier" : "?", "name" : "Hint" },
{ "kind" : "IdRef", "quantifier" : "?", "name" : "Bits" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectTraceReorderExecuteEXT",
"class" : "Reserved",
"opcode" : 5311,
"operands" : [
{ "kind" : "IdRef", "name" : "Hit Object" },
{ "kind" : "IdRef", "name" : "Acceleration Structure"},
{ "kind" : "IdRef", "name" : "Ray Flags"},
{ "kind" : "IdRef", "name" : "Cull Mask"},
{ "kind" : "IdRef", "name" : "SBT Offset"},
{ "kind" : "IdRef", "name" : "SBT Stride"},
{ "kind" : "IdRef", "name" : "Miss Index"},
{ "kind" : "IdRef", "name" : "Ray Origin"},
{ "kind" : "IdRef", "name" : "Ray Tmin"},
{ "kind" : "IdRef", "name" : "Ray Direction"},
{ "kind" : "IdRef", "name" : "Ray Tmax"},
{ "kind" : "IdRef", "name" : "Payload"},
{ "kind" : "IdRef", "quantifier" : "?", "name" : "Hint" },
{ "kind" : "IdRef", "quantifier" : "?", "name" : "Bits" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectTraceMotionReorderExecuteEXT",
"class" : "Reserved",
"opcode" : 5312,
"operands" : [
{ "kind" : "IdRef", "name" : "Hit Object" },
{ "kind" : "IdRef", "name" : "Acceleration Structure"},
{ "kind" : "IdRef", "name" : "Ray Flags"},
{ "kind" : "IdRef", "name" : "Cull Mask"},
{ "kind" : "IdRef", "name" : "SBT Offset"},
{ "kind" : "IdRef", "name" : "SBT Stride"},
{ "kind" : "IdRef", "name" : "Miss Index"},
{ "kind" : "IdRef", "name" : "Ray Origin"},
{ "kind" : "IdRef", "name" : "Ray Tmin"},
{ "kind" : "IdRef", "name" : "Ray Direction"},
{ "kind" : "IdRef", "name" : "Ray Tmax"},
{ "kind" : "IdRef", "name" : "Current Time"},
{ "kind" : "IdRef", "name" : "Payload"},
{ "kind" : "IdRef", "quantifier" : "?", "name" : "Hint" },
{ "kind" : "IdRef", "quantifier" : "?", "name" : "Bits" }
],
"capabilities" : [ "ShaderInvocationReorderEXT", "RayTracingMotionBlurNV" ],
"version" : "None"
},
{
"opname" : "OpTypeHitObjectEXT",
"class" : "Type-Declaration",
"opcode" : 5313,
"operands" : [
{ "kind" : "IdResult" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpReorderThreadWithHintEXT",
"class" : "Reserved",
"opcode" : 5314,
"operands" : [
{ "kind" : "IdRef", "name" : "Hint" },
{ "kind" : "IdRef", "name" : "Bits" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpReorderThreadWithHitObjectEXT",
"class" : "Reserved",
"opcode" : 5315,
"operands" : [
{ "kind" : "IdRef", "name" : "Hit Object" },
{ "kind" : "IdRef", "quantifier" : "?", "name" : "Hint" },
{ "kind" : "IdRef", "quantifier" : "?", "name" : "Bits" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectTraceRayEXT",
"class" : "Reserved",
"opcode" : 5316,
"operands" : [
{ "kind" : "IdRef", "name" : "Hit Object" },
{ "kind" : "IdRef", "name" : "Acceleration Structure"},
{ "kind" : "IdRef", "name" : "Ray Flags"},
{ "kind" : "IdRef", "name" : "Cull Mask"},
{ "kind" : "IdRef", "name" : "SBT Offset"},
{ "kind" : "IdRef", "name" : "SBT Stride"},
{ "kind" : "IdRef", "name" : "Miss Index"},
{ "kind" : "IdRef", "name" : "Ray Origin"},
{ "kind" : "IdRef", "name" : "Ray Tmin"},
{ "kind" : "IdRef", "name" : "Ray Direction"},
{ "kind" : "IdRef", "name" : "Ray Tmax"},
{ "kind" : "IdRef", "name" : "Payload"}
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectTraceRayMotionEXT",
"class" : "Reserved",
"opcode" : 5317,
"operands" : [
{ "kind" : "IdRef", "name" : "Hit Object" },
{ "kind" : "IdRef", "name" : "Acceleration Structure"},
{ "kind" : "IdRef", "name" : "Ray Flags"},
{ "kind" : "IdRef", "name" : "Cull Mask"},
{ "kind" : "IdRef", "name" : "SBT Offset"},
{ "kind" : "IdRef", "name" : "SBT Stride"},
{ "kind" : "IdRef", "name" : "Miss Index"},
{ "kind" : "IdRef", "name" : "Ray Origin"},
{ "kind" : "IdRef", "name" : "Ray Tmin"},
{ "kind" : "IdRef", "name" : "Ray Direction"},
{ "kind" : "IdRef", "name" : "Ray Tmax"},
{ "kind" : "IdRef", "name" : "Current Time"},
{ "kind" : "IdRef", "name" : "Payload"}
],
"capabilities" : [ "ShaderInvocationReorderEXT", "RayTracingMotionBlurNV" ],
"version" : "None"
},
{
"opname" : "OpHitObjectRecordEmptyEXT",
"class" : "Reserved",
"opcode" : 5318,
"operands" : [
{ "kind" : "IdRef", "name" : "Hit Object" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectExecuteShaderEXT",
"class" : "Reserved",
"opcode" : 5319,
"operands" : [
{ "kind" : "IdRef", "name" : "Hit Object" },
{ "kind" : "IdRef", "name" : "Payload" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectGetCurrentTimeEXT",
"class" : "Reserved",
"opcode" : 5320,
"operands" : [
{ "kind" : "IdResultType"},
{ "kind" : "IdResult"},
{ "kind" : "IdRef", "name" : "Hit Object" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" , "RayTracingMotionBlurNV" ],
"version" : "None"
},
{
"opname" : "OpHitObjectGetAttributesEXT",
"class" : "Reserved",
"opcode" : 5321,
"operands" : [
{ "kind" : "IdRef", "name" : "Hit Object" },
{ "kind" : "IdRef", "name" : "Hit Object Attribute" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectGetHitKindEXT",
"class" : "Reserved",
"opcode" : 5322,
"operands" : [
{ "kind" : "IdResultType"},
{ "kind" : "IdResult"},
{ "kind" : "IdRef", "name" : "Hit Object" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectGetPrimitiveIndexEXT",
"class" : "Reserved",
"opcode" : 5323,
"operands" : [
{ "kind" : "IdResultType"},
{ "kind" : "IdResult"},
{ "kind" : "IdRef", "name" : "Hit Object" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectGetGeometryIndexEXT",
"class" : "Reserved",
"opcode" : 5324,
"operands" : [
{ "kind" : "IdResultType"},
{ "kind" : "IdResult"},
{ "kind" : "IdRef", "name" : "Hit Object" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectGetInstanceIdEXT",
"class" : "Reserved",
"opcode" : 5325,
"operands" : [
{ "kind" : "IdResultType"},
{ "kind" : "IdResult"},
{ "kind" : "IdRef", "name" : "Hit Object" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectGetInstanceCustomIndexEXT",
"class" : "Reserved",
"opcode" : 5326,
"operands" : [
{ "kind" : "IdResultType"},
{ "kind" : "IdResult"},
{ "kind" : "IdRef", "name" : "Hit Object" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectGetObjectRayOriginEXT",
"class" : "Reserved",
"opcode" : 5327,
"operands" : [
{ "kind" : "IdResultType"},
{ "kind" : "IdResult"},
{ "kind" : "IdRef", "name" : "Hit Object" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectGetObjectRayDirectionEXT",
"class" : "Reserved",
"opcode" : 5328,
"operands" : [
{ "kind" : "IdResultType"},
{ "kind" : "IdResult"},
{ "kind" : "IdRef", "name" : "Hit Object" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectGetWorldRayDirectionEXT",
"class" : "Reserved",
"opcode" : 5329,
"operands" : [
{ "kind" : "IdResultType"},
{ "kind" : "IdResult"},
{ "kind" : "IdRef", "name" : "Hit Object" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectGetWorldRayOriginEXT",
"class" : "Reserved",
"opcode" : 5330,
"operands" : [
{ "kind" : "IdResultType"},
{ "kind" : "IdResult"},
{ "kind" : "IdRef", "name" : "Hit Object" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectGetObjectToWorldEXT",
"class" : "Reserved",
"opcode" : 5331,
"operands" : [
{ "kind" : "IdResultType"},
{ "kind" : "IdResult"},
{ "kind" : "IdRef", "name" : "Hit Object" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectGetWorldToObjectEXT",
"class" : "Reserved",
"opcode" : 5332,
"operands" : [
{ "kind" : "IdResultType"},
{ "kind" : "IdResult"},
{ "kind" : "IdRef", "name" : "Hit Object" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectGetRayTMaxEXT",
"class" : "Reserved",
"opcode" : 5333,
"operands" : [
{ "kind" : "IdResultType"},
{ "kind" : "IdResult"},
{ "kind" : "IdRef", "name" : "Hit Object" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpReportIntersectionKHR",
"class" : "Reserved",
@@ -6549,6 +7017,78 @@
"capabilities" : [ "RayTracingClusterAccelerationStructureNV" ],
"version" : "None"
},
{
"opname" : "OpHitObjectGetRayTMinEXT",
"class" : "Reserved",
"opcode" : 5347,
"operands" : [
{ "kind" : "IdResultType"},
{ "kind" : "IdResult"},
{ "kind" : "IdRef", "name" : "Hit Object" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectGetShaderBindingTableRecordIndexEXT",
"class" : "Reserved",
"opcode" : 5348,
"operands" : [
{ "kind" : "IdResultType"},
{ "kind" : "IdResult"},
{ "kind" : "IdRef", "name" : "Hit Object" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectGetShaderRecordBufferHandleEXT",
"class" : "Reserved",
"opcode" : 5349,
"operands" : [
{ "kind" : "IdResultType"},
{ "kind" : "IdResult"},
{ "kind" : "IdRef", "name" : "Hit Object" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectIsEmptyEXT",
"class" : "Reserved",
"opcode" : 5350,
"operands" : [
{ "kind" : "IdResultType"},
{ "kind" : "IdResult"},
{ "kind" : "IdRef", "name" : "Hit Object" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectIsHitEXT",
"class" : "Reserved",
"opcode" : 5351,
"operands" : [
{ "kind" : "IdResultType"},
{ "kind" : "IdResult"},
{ "kind" : "IdRef", "name" : "Hit Object" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpHitObjectIsMissEXT",
"class" : "Reserved",
"opcode" : 5352,
"operands" : [
{ "kind" : "IdResultType"},
{ "kind" : "IdResult"},
{ "kind" : "IdRef", "name" : "Hit Object" }
],
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"opname" : "OpTypeCooperativeMatrixNV",
"class" : "Type-Declaration",
@@ -13124,6 +13664,12 @@
"capabilities" : [ "MeshShadingEXT" ],
"version" : "1.4"
},
{
"enumerant" : "HitObjectAttributeEXT",
"value" : 5411,
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"enumerant" : "CodeSectionINTEL",
"value" : 5605,
@@ -14493,6 +15039,24 @@
"provisional" : true,
"version" : "None"
},
{
"enumerant" : "ArrayStrideIdEXT",
"value" : 5124,
"capabilities": [ "DescriptorHeapEXT" ],
"parameters" : [
{ "kind" : "IdRef", "name" : "Array Stride" }
],
"version" : "None"
},
{
"enumerant" : "OffsetIdEXT",
"value" : 5125,
"capabilities": [ "DescriptorHeapEXT" ],
"parameters" : [
{ "kind" : "IdRef", "name" : "Byte Offset" }
],
"version" : "None"
},
{
"enumerant" : "OverrideCoverageNV",
"value" : 5248,
@@ -14577,12 +15141,36 @@
"extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
"version" : "1.5"
},
{
"enumerant": "MemberOffsetNV",
"value": 5358,
"parameters" : [
{ "kind" : "LiteralInteger", "name" : "memberOffset" }
],
"capabilities": [ "PushConstantBanksNV" ],
"version": "None"
},
{
"enumerant" : "HitObjectShaderRecordBufferNV",
"value" : 5386,
"capabilities" : [ "ShaderInvocationReorderNV" ],
"version" : "None"
},
{
"enumerant" : "HitObjectShaderRecordBufferEXT",
"value" : 5389,
"capabilities" : [ "ShaderInvocationReorderEXT" ],
"version" : "None"
},
{
"enumerant" : "BankNV",
"value" : 5397,
"parameters" : [
{ "kind" : "LiteralInteger", "name" : "Bank" }
],
"capabilities" : [ "PushConstantBanksNV" ],
"version" : "None"
},
{
"enumerant" : "BindlessSamplerNV",
"value" : 5398,
@@ -15639,6 +16227,18 @@
"provisional" : true,
"version" : "None"
},
{
"enumerant" : "SamplerHeapEXT",
"value" : 5122,
"capabilities" : [ "DescriptorHeapEXT" ],
"version" : "None"
},
{
"enumerant" : "ResourceHeapEXT",
"value" : 5123,
"capabilities" : [ "DescriptorHeapEXT" ],
"version" : "None"
},
{
"enumerant" : "ViewportMaskNV",
"value" : 5253,
@@ -16111,24 +16711,24 @@
"version" : "1.3"
},
{
"enumerant" : "PartitionedReduceNV",
"enumerant" : "PartitionedReduceEXT",
"aliases" : ["PartitionedReduceNV"],
"value" : 6,
"capabilities" : [ "GroupNonUniformPartitionedNV" ],
"extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
"capabilities" : [ "GroupNonUniformPartitionedEXT" ],
"version" : "None"
},
{
"enumerant" : "PartitionedInclusiveScanNV",
"enumerant" : "PartitionedInclusiveScanEXT",
"aliases" : ["PartitionedInclusiveScanNV"],
"value" : 7,
"capabilities" : [ "GroupNonUniformPartitionedNV" ],
"extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
"capabilities" : [ "GroupNonUniformPartitionedEXT" ],
"version" : "None"
},
{
"enumerant" : "PartitionedExclusiveScanNV",
"enumerant" : "PartitionedExclusiveScanEXT",
"aliases" : ["PartitionedExclusiveScanNV"],
"value" : 8,
"capabilities" : [ "GroupNonUniformPartitionedNV" ],
"extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
"capabilities" : [ "GroupNonUniformPartitionedEXT" ],
"version" : "None"
}
]
@@ -16963,6 +17563,13 @@
"extensions" : [ "SPV_KHR_bfloat16" ],
"version" : "None"
},
{
"enumerant" : "DescriptorHeapEXT",
"value": 5128,
"capabilities" : [ "UntypedPointersKHR" ],
"extensions" : [ "SPV_EXT_descriptor_heap" ],
"version" : "None"
},
{
"enumerant" : "SampleMaskOverrideCoverageNV",
"value" : 5249,
@@ -17057,9 +17664,10 @@
"version" : "None"
},
{
"enumerant" : "GroupNonUniformPartitionedNV",
"enumerant" : "GroupNonUniformPartitionedEXT",
"aliases" : ["GroupNonUniformPartitionedNV"],
"value" : 5297,
"extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
"extensions" : [ "SPV_NV_shader_subgroup_partitioned", "SPV_EXT_shader_subgroup_partitioned" ],
"version" : "None"
},
{
@@ -17280,6 +17888,13 @@
"extensions" : [ "SPV_NV_shader_invocation_reorder" ],
"version" : "None"
},
{
"enumerant" : "ShaderInvocationReorderEXT",
"value" : 5388,
"capabilities" : [ "RayTracingKHR" ],
"extensions" : [ "SPV_EXT_shader_invocation_reorder" ],
"version" : "None"
},
{
"enumerant" : "BindlessTextureNV",
"value" : 5390,
@@ -17330,6 +17945,19 @@
"extensions" : [ "SPV_NV_linear_swept_spheres" ],
"version" : "None"
},
{
"enumerant" : "PushConstantBanksNV",
"value" : 5423,
"capabilities" : [ "Shader" ],
"extensions" : [ "SPV_NV_push_constant_bank" ],
"version" : "None"
},
{
"enumerant" : "LongVectorEXT",
"value" : 5425,
"extensions" : [ "SPV_EXT_long_vector" ],
"version" : "None"
},
{
"enumerant" : "Shader64BitIndexingEXT",
"value" : 5426,
@@ -18062,11 +18690,13 @@
{
"enumerant" : "RowBlockedInterleavedARM",
"value" : 4202,
"capabilities" : [ "CooperativeMatrixLayoutsARM" ],
"version" : "None"
},
{
"enumerant" : "ColumnBlockedInterleavedARM",
"value" : 4203,
"capabilities" : [ "CooperativeMatrixLayoutsARM" ],
"version" : "None"
}
]
+43 -2
View File
@@ -5142,7 +5142,7 @@ void ThreadState::StepNext(bool useDebugState, const uint32_t steps,
case Op::FragmentMaskFetchAMD:
case Op::FragmentFetchAMD:
case Op::ImageSampleFootprintNV:
case Op::GroupNonUniformPartitionNV:
case Op::GroupNonUniformPartitionEXT:
case Op::WritePackedPrimitiveIndices4x8NV:
case Op::ReportIntersectionKHR:
case Op::IgnoreIntersectionNV:
@@ -5346,6 +5346,44 @@ void ThreadState::StepNext(bool useDebugState, const uint32_t steps,
case Op::CompositeExtractCoopMatQCOM:
case Op::ExtractSubArrayQCOM:
case Op::FmaKHR:
case Op::BufferPointerEXT:
case Op::UntypedImageTexelPointerEXT:
case Op::ConstantSizeOfEXT:
case Op::HitObjectRecordFromQueryEXT:
case Op::HitObjectRecordMissMotionEXT:
case Op::HitObjectGetIntersectionTriangleVertexPositionsEXT:
case Op::HitObjectGetRayFlagsEXT:
case Op::HitObjectSetShaderBindingTableRecordIndexEXT:
case Op::HitObjectReorderExecuteShaderEXT:
case Op::HitObjectTraceMotionReorderExecuteEXT:
case Op::ReorderThreadWithHintEXT:
case Op::ReorderThreadWithHitObjectEXT:
case Op::HitObjectTraceRayEXT:
case Op::HitObjectTraceRayMotionEXT:
case Op::HitObjectRecordEmptyEXT:
case Op::HitObjectExecuteShaderEXT:
case Op::HitObjectGetCurrentTimeEXT:
case Op::HitObjectRecordMissEXT:
case Op::HitObjectTraceReorderExecuteEXT:
case Op::HitObjectGetAttributesEXT:
case Op::HitObjectGetPrimitiveIndexEXT:
case Op::HitObjectGetGeometryIndexEXT:
case Op::HitObjectGetInstanceIdEXT:
case Op::HitObjectGetInstanceCustomIndexEXT:
case Op::HitObjectGetHitKindEXT:
case Op::HitObjectGetObjectRayOriginEXT:
case Op::HitObjectGetObjectRayDirectionEXT:
case Op::HitObjectGetWorldRayDirectionEXT:
case Op::HitObjectGetWorldRayOriginEXT:
case Op::HitObjectGetObjectToWorldEXT:
case Op::HitObjectGetWorldToObjectEXT:
case Op::HitObjectGetRayTMaxEXT:
case Op::HitObjectGetRayTMinEXT:
case Op::HitObjectGetShaderBindingTableRecordIndexEXT:
case Op::HitObjectGetShaderRecordBufferHandleEXT:
case Op::HitObjectIsEmptyEXT:
case Op::HitObjectIsHitEXT:
case Op::HitObjectIsMissEXT:
{
RDCERR("Unsupported extension opcode used %s", ToStr(opdata.op).c_str());
@@ -5415,12 +5453,15 @@ void ThreadState::StepNext(bool useDebugState, const uint32_t steps,
case Op::TypeNodePayloadArrayAMDX:
case Op::ConstantStringAMDX:
case Op::SpecConstantStringAMDX:
case Op::TypeCooperativeVectorNV:
case Op::TypeVectorIdEXT:
case Op::TypeTensorLayoutNV:
case Op::TypeTensorViewNV:
case Op::TypeGraphARM:
case Op::TypeHitObjectNV:
case Op::TypeCooperativeMatrixKHR:
case Op::TypeBufferEXT:
case Op::MemberDecorateIdEXT:
case Op::TypeHitObjectEXT:
{
RDCERR("Encountered unexpected global SPIR-V operation %s", ToStr(opdata.op).c_str());
break;
@@ -765,6 +765,34 @@ void Reflector::CheckDebuggable(bool &debuggable, rdcstr &debugStatus) const
break;
}
// SPV_EXT_shader_invocation_reorder
case Capability::ShaderInvocationReorderEXT:
{
supported = false;
break;
}
// SPV_EXT_shader_subgroup_partitioned
case Capability::GroupNonUniformPartitionedEXT:
{
supported = false;
break;
}
// SPV_EXT_long_vector
case Capability::LongVectorEXT:
{
supported = false;
break;
}
// SPV_EXT_descriptor_heap
case Capability::DescriptorHeapEXT:
{
supported = false;
break;
}
// no plans to support these - mostly Kernel/OpenCL related or vendor extensions
case Capability::Addresses:
case Capability::Linkage:
@@ -792,7 +820,6 @@ void Reflector::CheckDebuggable(bool &debuggable, rdcstr &debugStatus) const
case Capability::PerViewAttributesNV:
case Capability::MeshShadingNV:
case Capability::ImageFootprintNV:
case Capability::GroupNonUniformPartitionedNV:
case Capability::CooperativeMatrixNV:
case Capability::ShaderSMBuiltinsNV:
case Capability::SubgroupShuffleINTEL:
@@ -899,6 +926,7 @@ void Reflector::CheckDebuggable(bool &debuggable, rdcstr &debugStatus) const
case Capability::BindlessImagesINTEL:
case Capability::RayTracingNV:
case Capability::ShaderInvocationReorderNV:
case Capability::PushConstantBanksNV:
case Capability::Max:
case Capability::Invalid:
{
File diff suppressed because it is too large Load Diff
+63 -6
View File
@@ -502,6 +502,7 @@ enum class StorageClass : uint32_t
PhysicalStorageBuffer = 5349,
HitObjectAttributeNV = 5385,
TaskPayloadWorkgroupEXT = 5402,
HitObjectAttributeEXT = 5411,
CodeSectionINTEL = 5605,
DeviceOnlyALTERA = 5936,
HostOnlyALTERA = 5937,
@@ -805,6 +806,8 @@ enum class Decoration : uint32_t
PayloadNodeSparseArrayAMDX = 5099,
PayloadNodeArraySizeAMDX = 5100,
PayloadDispatchIndirectAMDX = 5105,
ArrayStrideIdEXT = 5124,
OffsetIdEXT = 5125,
OverrideCoverageNV = 5248,
PassthroughNV = 5250,
ViewportRelativeNV = 5252,
@@ -816,7 +819,10 @@ enum class Decoration : uint32_t
NonUniform = 5300,
RestrictPointer = 5355,
AliasedPointer = 5356,
MemberOffsetNV = 5358,
HitObjectShaderRecordBufferNV = 5386,
HitObjectShaderRecordBufferEXT = 5389,
BankNV = 5397,
BindlessSamplerNV = 5398,
BindlessImageNV = 5399,
BoundSamplerNV = 5400,
@@ -964,6 +970,8 @@ enum class BuiltIn : uint32_t
FragStencilRefEXT = 5014,
RemainingRecursionLevelsAMDX = 5021,
ShaderIndexAMDX = 5073,
SamplerHeapEXT = 5122,
ResourceHeapEXT = 5123,
ViewportMaskNV = 5253,
SecondaryPositionNV = 5257,
SecondaryViewportMaskNV = 5258,
@@ -1042,9 +1050,9 @@ enum class GroupOperation : uint32_t
InclusiveScan = 1,
ExclusiveScan = 2,
ClusteredReduce = 3,
PartitionedReduceNV = 6,
PartitionedInclusiveScanNV = 7,
PartitionedExclusiveScanNV = 8,
PartitionedReduceEXT = 6,
PartitionedInclusiveScanEXT = 7,
PartitionedExclusiveScanEXT = 8,
Max,
Invalid = ~0U,
};
@@ -1191,6 +1199,7 @@ enum class Capability : uint32_t
BFloat16TypeKHR = 5116,
BFloat16DotProductKHR = 5117,
BFloat16CooperativeMatrixKHR = 5118,
DescriptorHeapEXT = 5128,
SampleMaskOverrideCoverageNV = 5249,
GeometryShaderPassthroughNV = 5251,
ShaderViewportIndexLayerEXT = 5254,
@@ -1204,7 +1213,7 @@ enum class Capability : uint32_t
FragmentBarycentricKHR = 5284,
ComputeDerivativeGroupQuadsKHR = 5288,
FragmentDensityEXT = 5291,
GroupNonUniformPartitionedNV = 5297,
GroupNonUniformPartitionedEXT = 5297,
ShaderNonUniform = 5301,
RuntimeDescriptorArray = 5302,
InputAttachmentArrayDynamicIndexing = 5303,
@@ -1234,6 +1243,7 @@ enum class Capability : uint32_t
DisplacementMicromapNV = 5380,
RayTracingOpacityMicromapEXT = 5381,
ShaderInvocationReorderNV = 5383,
ShaderInvocationReorderEXT = 5388,
BindlessTextureNV = 5390,
RayQueryPositionFetchKHR = 5391,
CooperativeVectorNV = 5394,
@@ -1242,6 +1252,8 @@ enum class Capability : uint32_t
RawAccessChainsNV = 5414,
RayTracingSpheresGeometryNV = 5418,
RayTracingLinearSweptSpheresGeometryNV = 5419,
PushConstantBanksNV = 5423,
LongVectorEXT = 5425,
Shader64BitIndexingEXT = 5426,
CooperativeMatrixReductionsNV = 5430,
CooperativeMatrixConversionsNV = 5431,
@@ -1912,7 +1924,11 @@ struct DecorationAndParamData
Id payloadNodeNameAMDX;
Id payloadNodeBaseIndexAMDX;
Id payloadNodeArraySizeAMDX;
Id arrayStrideIdEXT;
Id offsetIdEXT;
uint32_t secondaryViewportRelativeNV;
uint32_t memberOffsetNV;
uint32_t bankNV;
uint32_t sIMTCallINTEL;
uint32_t funcParamIOKindINTEL;
uint32_t globalVariableOffsetINTEL;
@@ -2437,6 +2453,11 @@ enum class Op : uint16_t
SpecConstantStringAMDX = 5104,
GroupNonUniformQuadAllKHR = 5110,
GroupNonUniformQuadAnyKHR = 5111,
TypeBufferEXT = 5115,
BufferPointerEXT = 5119,
UntypedImageTexelPointerEXT = 5126,
MemberDecorateIdEXT = 5127,
ConstantSizeOfEXT = 5129,
HitObjectRecordHitMotionNV = 5249,
HitObjectRecordHitWithIndexMotionNV = 5250,
HitObjectRecordMissMotionNV = 5251,
@@ -2471,7 +2492,7 @@ enum class Op : uint16_t
ReorderThreadWithHintNV = 5280,
TypeHitObjectNV = 5281,
ImageSampleFootprintNV = 5283,
TypeCooperativeVectorNV = 5288,
TypeVectorIdEXT = 5288,
CooperativeVectorMatrixMulNV = 5289,
CooperativeVectorOuterProductAccumulateNV = 5290,
CooperativeVectorReduceSumAccumulateNV = 5291,
@@ -2479,12 +2500,42 @@ enum class Op : uint16_t
CooperativeMatrixConvertNV = 5293,
EmitMeshTasksEXT = 5294,
SetMeshOutputsEXT = 5295,
GroupNonUniformPartitionNV = 5296,
GroupNonUniformPartitionEXT = 5296,
WritePackedPrimitiveIndices4x8NV = 5299,
FetchMicroTriangleVertexPositionNV = 5300,
FetchMicroTriangleVertexBarycentricNV = 5301,
CooperativeVectorLoadNV = 5302,
CooperativeVectorStoreNV = 5303,
HitObjectRecordFromQueryEXT = 5304,
HitObjectRecordMissEXT = 5305,
HitObjectRecordMissMotionEXT = 5306,
HitObjectGetIntersectionTriangleVertexPositionsEXT = 5307,
HitObjectGetRayFlagsEXT = 5308,
HitObjectSetShaderBindingTableRecordIndexEXT = 5309,
HitObjectReorderExecuteShaderEXT = 5310,
HitObjectTraceReorderExecuteEXT = 5311,
HitObjectTraceMotionReorderExecuteEXT = 5312,
TypeHitObjectEXT = 5313,
ReorderThreadWithHintEXT = 5314,
ReorderThreadWithHitObjectEXT = 5315,
HitObjectTraceRayEXT = 5316,
HitObjectTraceRayMotionEXT = 5317,
HitObjectRecordEmptyEXT = 5318,
HitObjectExecuteShaderEXT = 5319,
HitObjectGetCurrentTimeEXT = 5320,
HitObjectGetAttributesEXT = 5321,
HitObjectGetHitKindEXT = 5322,
HitObjectGetPrimitiveIndexEXT = 5323,
HitObjectGetGeometryIndexEXT = 5324,
HitObjectGetInstanceIdEXT = 5325,
HitObjectGetInstanceCustomIndexEXT = 5326,
HitObjectGetObjectRayOriginEXT = 5327,
HitObjectGetObjectRayDirectionEXT = 5328,
HitObjectGetWorldRayDirectionEXT = 5329,
HitObjectGetWorldRayOriginEXT = 5330,
HitObjectGetObjectToWorldEXT = 5331,
HitObjectGetWorldToObjectEXT = 5332,
HitObjectGetRayTMaxEXT = 5333,
ReportIntersectionKHR = 5334,
IgnoreIntersectionNV = 5335,
TerminateRayNV = 5336,
@@ -2496,6 +2547,12 @@ enum class Op : uint16_t
ExecuteCallableNV = 5344,
RayQueryGetIntersectionClusterIdNV = 5345,
HitObjectGetClusterIdNV = 5346,
HitObjectGetRayTMinEXT = 5347,
HitObjectGetShaderBindingTableRecordIndexEXT = 5348,
HitObjectGetShaderRecordBufferHandleEXT = 5349,
HitObjectIsEmptyEXT = 5350,
HitObjectIsHitEXT = 5351,
HitObjectIsMissEXT = 5352,
TypeCooperativeMatrixNV = 5358,
CooperativeMatrixLoadNV = 5359,
CooperativeMatrixStoreNV = 5360,
File diff suppressed because it is too large Load Diff
@@ -82,11 +82,13 @@ Note: we no longer push the HTML along side the extension.
* [SPV_EXT_arithmetic_fence ]( https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_arithmetic_fence.html)
* [SPV_EXT_demote_to_helper_invocation ]( https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_demote_to_helper_invocation.html)
* [SPV_EXT_descriptor_indexing ]( https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_descriptor_indexing.html)
* [SPV_EXT_descriptor_heap ]( https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_descriptor_heap.html)
* [SPV_EXT_float8 ]( https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_float8.html)
* [SPV_EXT_fragment_fully_covered ]( https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_fragment_fully_covered.html)
* [SPV_EXT_fragment_invocation_density ]( https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_fragment_invocation_density.html)
* [SPV_EXT_fragment_shader_interlock ]( https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_fragment_shader_interlock.html)
* [SPV_EXT_image_raw10_raw12 ]( https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_image_raw10_raw12.html)
* [SPV_EXT_long_vector ]( https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_long_vector.html)
* [SPV_EXT_mesh_shader ]( https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_mesh_shader.html)
* [SPV_EXT_opacity_micromap ]( https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_opacity_micromap.html)
* [SPV_EXT_optnone ]( https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_optnone.html)
@@ -98,7 +100,9 @@ Note: we no longer push the HTML along side the extension.
* [SPV_EXT_shader_atomic_float_min_max ]( https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_shader_atomic_float_min_max.html)
* [SPV_EXT_shader_atomic_float16_add ]( https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_shader_atomic_float16_add.html)
* [SPV_EXT_shader_image_int64 ]( https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_shader_image_int64.html)
* [SPV_EXT_shader_invocation_reorder ]( https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_shader_invocation_reorder.html)
* [SPV_EXT_shader_stencil_export ]( https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_shader_stencil_export.html)
* [SPV_EXT_shader_subgroup_partitioned ]( https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_shader_subgroup_partitioned.html)
* [SPV_EXT_shader_tile_image ]( https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_shader_tile_image.html)
* [SPV_EXT_shader_viewport_index_layer ]( https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_shader_viewport_index_layer.html)
@@ -178,6 +182,7 @@ Note: we no longer push the HTML along side the extension.
* [SPV_NV_geometry_shader_passthrough ]( https://github.khronos.org/SPIRV-Registry/extensions/NV/SPV_NV_geometry_shader_passthrough.html)
* [SPV_NV_linear_swept_spheres ]( https://github.khronos.org/SPIRV-Registry/extensions/NV/SPV_NV_linear_swept_spheres.html)
* [SPV_NV_mesh_shader ]( https://github.khronos.org/SPIRV-Registry/extensions/NV/SPV_NV_mesh_shader.html)
* [SPV_NV_push_constant_bank ]( https://github.khronos.org/SPIRV-Registry/extensions/NV/SPV_NV_push_constant_bank.html)
* [SPV_NV_raw_access_chains ]( https://github.khronos.org/SPIRV-Registry/extensions/NV/SPV_NV_raw_access_chains.html)
* [SPV_NV_ray_tracing ]( https://github.khronos.org/SPIRV-Registry/extensions/NV/SPV_NV_ray_tracing.html)
* [SPV_NV_ray_tracing_motion_blur ]( https://github.khronos.org/SPIRV-Registry/extensions/NV/SPV_NV_ray_tracing_motion_blur.html)
@@ -191,7 +196,7 @@ Note: we no longer push the HTML along side the extension.
* [SPV_NV_stereo_view_rendering ]( https://github.khronos.org/SPIRV-Registry/extensions/NV/SPV_NV_stereo_view_rendering.html)
* [SPV_NV_tensor_addressing ]( https://github.khronos.org/SPIRV-Registry/extensions/NV/SPV_NV_tensor_addressing.html)
* [SPV_NV_viewport_array2 ]( https://github.khronos.org/SPIRV-Registry/extensions/NV/SPV_NV_viewport_array2.html)
* [SPV_NVX_multiview_per_view_attributes ]( https://github.khronos.org/SPIRV-Registry/extensions/NV/SPV_NVX_multiview_per_view_attributes.html)
* [SPV_NVX_multiview_per_view_attributes ]( https://github.khronos.org/SPIRV-Registry/extensions/NVX/SPV_NVX_multiview_per_view_attributes.html)
* [SPV_QCOM_cooperative_matrix_conversion ]( https://github.khronos.org/SPIRV-Registry/extensions/QCOM/SPV_QCOM_cooperative_matrix_conversion.html)
* [SPV_QCOM_image_processing ]( https://github.khronos.org/SPIRV-Registry/extensions/QCOM/SPV_QCOM_image_processing.html)
* [SPV_QCOM_image_processing2 ]( https://github.khronos.org/SPIRV-Registry/extensions/QCOM/SPV_QCOM_image_processing2.html)