Squashed 'third_party/SPIRV-Headers/' changes from 20b02de99..6a55fade6
6a55fade6 Implement SPV_INTEL_memory_access_aliasing extension (#265)
b42ba6d92 Merge pull request #262 from mkinsner/mkinsner/allocate_loop_control_bit
bf2809d6f Allocate additional loop control bit for upcoming Intel extension
b8047fbe4 Merge pull request #253 from DragonJoker/add_shader_writer
9dd7c53c7 Merge branch 'master' into add_shader_writer
eddd4dfc9 Merge pull request #259 from KhronosGroup/version-1.6
dcd4752ed Update headers with SPIR-V version 1.6, revision 1.
d53b49635 Merge pull request #256 from jjfumero/tornadovm-generator
29414ae1f Merge pull request #257 from Hardcode84/atomic-float-no-shader
993b82fe6 Merge pull request #258 from kpet/arm-contact
98f12c150 Change contact for Arm
28005d657 Atomic float add should not imply Shader
6d7d2f74c Register TornadoVM SPIRV Beehive Tookit Generator
9b37ebb4a Add ShaderWriter as SPIR-V generation tool.
git-subtree-dir: third_party/SPIRV-Headers
git-subtree-split: 6a55fade62dec6a406a5a721148f88a2211cbefa
diff --git a/include/spirv/spir-v.xml b/include/spirv/spir-v.xml
index 34453f8..6b578a5 100644
--- a/include/spirv/spir-v.xml
+++ b/include/spirv/spir-v.xml
@@ -55,7 +55,7 @@
<id value="2" vendor="Valve" comment="Contact TBD"/>
<id value="3" vendor="Codeplay" comment="Contact Victor Lomuller, victor@codeplay.com"/>
<id value="4" vendor="NVIDIA" comment="Contact Kerch Holt, kholt@nvidia.com"/>
- <id value="5" vendor="ARM" comment="Contact Alexander Galazin, alexander.galazin@arm.com"/>
+ <id value="5" vendor="ARM" comment="Contact Kevin Petit, kevin.petit@arm.com"/>
<id value="6" vendor="Khronos" tool="LLVM/SPIR-V Translator" comment="Contact Yaxun (Sam) Liu, yaxun.liu@amd.com"/>
<id value="7" vendor="Khronos" tool="SPIR-V Tools Assembler" comment="Contact David Neto, dneto@google.com"/>
<id value="8" vendor="Khronos" tool="Glslang Reference Front End" comment="Contact John Kessenich, johnkessenich@google.com"/>
@@ -82,7 +82,9 @@
<id value="29" vendor="Mikkosoft Productions" tool="MSP Shader Compiler" comment="Contact Mikko Rasa, tdb@tdb.fi"/>
<id value="30" vendor="SpvGenTwo community" tool="SpvGenTwo SPIR-V IR Tools" comment="https://github.com/rAzoR8/SpvGenTwo"/>
<id value="31" vendor="Google" tool="Skia SkSL" comment="Contact Ethan Nicholas, ethannicholas@google.com"/>
- <unused start="32" end="0xFFFF" comment="Tool ID range reservable for future use by vendors"/>
+ <id value="32" vendor="TornadoVM" tool="SPIRV Beehive Toolkit" comment="https://github.com/beehive-lab/spirv-beehive-toolkit"/>
+ <id value="33" vendor="DragonJoker" tool="ShaderWriter" comment="Contact Sylvain Doremus, https://github.com/DragonJoker/ShaderWriter"/>
+ <unused start="34" end="0xFFFF" comment="Tool ID range reservable for future use by vendors"/>
</ids>
<!-- SECTION: SPIR-V Opcodes and Enumerants -->
@@ -119,7 +121,7 @@
<!-- Begin reservations of opcode enumerants -->
<ids type="opcode" start="0" end="4095" vendor="Khronos" comment="Reserved opcodes, not available to vendors - see the SPIR-V Specification"/>
<ids type="opcode" start="4096" end="4159" vendor="Mesa" comment="Contact TBD"/>
- <ids type="opcode" start="4160" end="4415" vendor="ARM"/>
+ <ids type="opcode" start="4160" end="4415" vendor="ARM" comment="Contact kevin.petit@arm.com"/>
<ids type="opcode" start="4416" end="4479" vendor="Khronos" comment="SPV_ARB_shader_ballot - contact Neil Henning, neil.henning@amd.com"/>
<ids type="opcode" start="4480" end="4991" vendor="Qualcomm" comment="Contact weifengz@qti.qualcomm.com"/>
<ids type="opcode" start="4992" end="5247" vendor="AMD"/>
@@ -148,7 +150,7 @@
<!-- Begin reservations of non-opcode enumerants -->
<ids type="enumerant" start="0" end="4095" vendor="Khronos" comment="Reserved enumerants, not available to vendors - see the SPIR-V Specification"/>
<ids type="enumerant" start="4096" end="4159" vendor="Mesa" comment="Contact TBD"/>
- <ids type="enumerant" start="4160" end="4415" vendor="ARM"/>
+ <ids type="enumerant" start="4160" end="4415" vendor="ARM" comment="Contact kevin.petit@arm.com"/>
<ids type="enumerant" start="4416" end="4479" vendor="Khronos" comment="SPV_ARB_shader_ballot - contact Neil Henning, neil.henning@amd.com"/>
<ids type="enumerant" start="4480" end="4991" vendor="Qualcomm" comment="Contact weifengz@qti.qualcomm.com"/>
<ids type="enumerant" start="4992" end="5247" vendor="AMD"/>
@@ -190,8 +192,8 @@
<!-- Reserved loop control bits -->
<ids type="LoopControl" start="0" end="15" vendor="Khronos" comment="Reserved LoopControl bits, not available to vendors - see the SPIR-V Specification"/>
- <ids type="LoopControl" start="16" end="24" vendor="Intel" comment="Contact michael.kinsner@intel.com"/>
- <ids type="LoopControl" start="25" end="30" comment="Unreserved bits reservable for use by vendors"/>
+ <ids type="LoopControl" start="16" end="25" vendor="Intel" comment="Contact michael.kinsner@intel.com"/>
+ <ids type="LoopControl" start="26" end="30" comment="Unreserved bits reservable for use by vendors"/>
<ids type="LoopControl" start="31" end="31" vendor="Khronos" comment="Reserved LoopControl bit, not available to vendors"/>
diff --git a/include/spirv/unified1/spirv.core.grammar.json b/include/spirv/unified1/spirv.core.grammar.json
index 21cef63..8b98770 100644
--- a/include/spirv/unified1/spirv.core.grammar.json
+++ b/include/spirv/unified1/spirv.core.grammar.json
@@ -26,8 +26,8 @@
],
"magic_number" : "0x07230203",
"major_version" : 1,
- "minor_version" : 5,
- "revision" : 4,
+ "minor_version" : 6,
+ "revision" : 1,
"instruction_printing_class" : [
{
"tag" : "@exclude"
@@ -1735,7 +1735,8 @@
{ "kind" : "IdRef", "name" : "'x'" },
{ "kind" : "IdRef", "name" : "'y'" }
],
- "capabilities" : [ "Kernel" ]
+ "capabilities" : [ "Kernel" ],
+ "lastVersion" : "1.5"
},
{
"opname" : "OpOrdered",
@@ -4109,7 +4110,7 @@
"SPV_KHR_terminate_invocation"
],
"capabilities" : [ "Shader" ],
- "version" : "None"
+ "version" : "1.6"
},
{
"opname" : "OpSubgroupBallotKHR",
@@ -4261,6 +4262,20 @@
"version" : "None"
},
{
+ "opname" : "OpSDot",
+ "class" : "Arithmetic",
+ "opcode" : 4450,
+ "operands" : [
+ { "kind" : "IdResultType" },
+ { "kind" : "IdResult" },
+ { "kind" : "IdRef", "name" : "'Vector 1'" },
+ { "kind" : "IdRef", "name" : "'Vector 2'" },
+ { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
+ ],
+ "capabilities" : [ "DotProduct" ],
+ "version" : "1.6"
+ },
+ {
"opname" : "OpSDotKHR",
"class" : "Arithmetic",
"opcode" : 4450,
@@ -4272,7 +4287,22 @@
{ "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
],
"capabilities" : [ "DotProductKHR" ],
- "version" : "None"
+ "extensions" : [ "SPV_KHR_integer_dot_product" ],
+ "version" : "1.6"
+ },
+ {
+ "opname" : "OpUDot",
+ "class" : "Arithmetic",
+ "opcode" : 4451,
+ "operands" : [
+ { "kind" : "IdResultType" },
+ { "kind" : "IdResult" },
+ { "kind" : "IdRef", "name" : "'Vector 1'" },
+ { "kind" : "IdRef", "name" : "'Vector 2'" },
+ { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
+ ],
+ "capabilities" : [ "DotProduct" ],
+ "version" : "1.6"
},
{
"opname" : "OpUDotKHR",
@@ -4286,7 +4316,22 @@
{ "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
],
"capabilities" : [ "DotProductKHR" ],
- "version" : "None"
+ "extensions" : [ "SPV_KHR_integer_dot_product" ],
+ "version" : "1.6"
+ },
+ {
+ "opname" : "OpSUDot",
+ "class" : "Arithmetic",
+ "opcode" : 4452,
+ "operands" : [
+ { "kind" : "IdResultType" },
+ { "kind" : "IdResult" },
+ { "kind" : "IdRef", "name" : "'Vector 1'" },
+ { "kind" : "IdRef", "name" : "'Vector 2'" },
+ { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
+ ],
+ "capabilities" : [ "DotProduct" ],
+ "version" : "1.6"
},
{
"opname" : "OpSUDotKHR",
@@ -4300,7 +4345,23 @@
{ "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
],
"capabilities" : [ "DotProductKHR" ],
- "version" : "None"
+ "extensions" : [ "SPV_KHR_integer_dot_product" ],
+ "version" : "1.6"
+ },
+ {
+ "opname" : "OpSDotAccSat",
+ "class" : "Arithmetic",
+ "opcode" : 4453,
+ "operands" : [
+ { "kind" : "IdResultType" },
+ { "kind" : "IdResult" },
+ { "kind" : "IdRef", "name" : "'Vector 1'" },
+ { "kind" : "IdRef", "name" : "'Vector 2'" },
+ { "kind" : "IdRef", "name" : "'Accumulator'" },
+ { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
+ ],
+ "capabilities" : [ "DotProduct" ],
+ "version" : "1.6"
},
{
"opname" : "OpSDotAccSatKHR",
@@ -4315,7 +4376,23 @@
{ "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
],
"capabilities" : [ "DotProductKHR" ],
- "version" : "None"
+ "extensions" : [ "SPV_KHR_integer_dot_product" ],
+ "version" : "1.6"
+ },
+ {
+ "opname" : "OpUDotAccSat",
+ "class" : "Arithmetic",
+ "opcode" : 4454,
+ "operands" : [
+ { "kind" : "IdResultType" },
+ { "kind" : "IdResult" },
+ { "kind" : "IdRef", "name" : "'Vector 1'" },
+ { "kind" : "IdRef", "name" : "'Vector 2'" },
+ { "kind" : "IdRef", "name" : "'Accumulator'" },
+ { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
+ ],
+ "capabilities" : [ "DotProduct" ],
+ "version" : "1.6"
},
{
"opname" : "OpUDotAccSatKHR",
@@ -4330,7 +4407,23 @@
{ "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
],
"capabilities" : [ "DotProductKHR" ],
- "version" : "None"
+ "extensions" : [ "SPV_KHR_integer_dot_product" ],
+ "version" : "1.6"
+ },
+ {
+ "opname" : "OpSUDotAccSat",
+ "class" : "Arithmetic",
+ "opcode" : 4455,
+ "operands" : [
+ { "kind" : "IdResultType" },
+ { "kind" : "IdResult" },
+ { "kind" : "IdRef", "name" : "'Vector 1'" },
+ { "kind" : "IdRef", "name" : "'Vector 2'" },
+ { "kind" : "IdRef", "name" : "'Accumulator'" },
+ { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
+ ],
+ "capabilities" : [ "DotProduct" ],
+ "version" : "1.6"
},
{
"opname" : "OpSUDotAccSatKHR",
@@ -4345,7 +4438,8 @@
{ "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
],
"capabilities" : [ "DotProductKHR" ],
- "version" : "None"
+ "extensions" : [ "SPV_KHR_integer_dot_product" ],
+ "version" : "1.6"
},
{
"opname" : "OpTypeRayQueryKHR",
@@ -4925,12 +5019,18 @@
"version" : "None"
},
{
- "opname" : "OpDemoteToHelperInvocationEXT",
- "class" : "Reserved",
+ "opname" : "OpDemoteToHelperInvocation",
+ "class" : "Control-Flow",
"opcode" : 5380,
- "capabilities" : [ "DemoteToHelperInvocationEXT" ],
- "extensions" : [ "SPV_EXT_demote_to_helper_invocation" ],
- "version" : "None"
+ "capabilities" : [ "DemoteToHelperInvocation" ],
+ "version" : "1.6"
+ },
+ {
+ "opname" : "OpDemoteToHelperInvocationEXT",
+ "class" : "Control-Flow",
+ "opcode" : 5380,
+ "capabilities" : [ "DemoteToHelperInvocation" ],
+ "version" : "1.6"
},
{
"opname" : "OpIsHelperInvocationEXT",
@@ -7770,6 +7870,43 @@
"version" : "None"
},
{
+ "opname" : "OpAliasDomainDeclINTEL",
+ "class" : "@exclude",
+ "opcode" : 5911,
+ "operands" : [
+ { "kind" : "IdResult"},
+ { "kind" : "IdRef", "quantifier" : "?", "name" : "'Name'" }
+ ],
+ "capabilities" : [ "MemoryAccessAliasingINTEL" ],
+ "extensions" : [ "SPV_INTEL_memory_access_aliasing" ],
+ "version" : "None"
+ },
+ {
+ "opname" : "OpAliasScopeDeclINTEL",
+ "class" : "@exclude",
+ "opcode" : 5912,
+ "operands" : [
+ { "kind" : "IdResult"},
+ { "kind" : "IdRef", "name" : "'Alias Domain'"},
+ { "kind" : "IdRef", "quantifier" : "?", "name" : "'Name'" }
+ ],
+ "capabilities" : [ "MemoryAccessAliasingINTEL" ],
+ "extensions" : [ "SPV_INTEL_memory_access_aliasing" ],
+ "version" : "None"
+ },
+ {
+ "opname" : "OpAliasScopeListDeclINTEL",
+ "class" : "@exclude",
+ "opcode" : 5913,
+ "operands" : [
+ { "kind" : "IdResult"},
+ { "kind" : "IdRef", "quantifier" : "*", "name" : "'AliasScope1, AliasScope2, ...'" }
+ ],
+ "capabilities" : [ "MemoryAccessAliasingINTEL" ],
+ "extensions" : [ "SPV_INTEL_memory_access_aliasing" ],
+ "version" : "None"
+ },
+ {
"opname" : "OpFixedSqrtINTEL",
"class" : "@exclude",
"opcode" : 5923,
@@ -8559,6 +8696,11 @@
"version" : "1.4"
},
{
+ "enumerant" : "Nontemporal",
+ "value" : "0x4000",
+ "version" : "1.6"
+ },
+ {
"enumerant" : "Offsets",
"value" : "0x10000",
"parameters" : [
@@ -8985,6 +9127,26 @@
"capabilities" : [ "VulkanMemoryModel" ],
"extensions" : [ "SPV_KHR_vulkan_memory_model" ],
"version" : "1.5"
+ },
+ {
+ "enumerant" : "AliasScopeINTELMask",
+ "value" : "0x10000",
+ "parameters" : [
+ { "kind" : "IdRef" }
+ ],
+ "capabilities" : [ "MemoryAccessAliasingINTEL" ],
+ "extensions" : [ "SPV_INTEL_memory_access_aliasing" ],
+ "version" : "None"
+ },
+ {
+ "enumerant" : "NoAliasINTELMask",
+ "parameters" : [
+ { "kind" : "IdRef" }
+ ],
+ "value" : "0x20000",
+ "capabilities" : [ "MemoryAccessAliasingINTEL" ],
+ "extensions" : [ "SPV_INTEL_memory_access_aliasing" ],
+ "version" : "None"
}
]
},
@@ -10877,12 +11039,12 @@
{
"enumerant" : "Uniform",
"value" : 26,
- "capabilities" : [ "Shader" ]
+ "capabilities" : [ "Shader", "UniformDecoration" ]
},
{
"enumerant" : "UniformId",
"value" : 27,
- "capabilities" : [ "Shader" ],
+ "capabilities" : [ "Shader", "UniformDecoration" ],
"parameters" : [
{ "kind" : "IdScope", "name" : "'Execution'" }
],
@@ -11115,10 +11277,17 @@
"version" : "None"
},
{
+ "enumerant" : "PerVertexKHR",
+ "value" : 5285,
+ "capabilities" : [ "FragmentBarycentricNV", "FragmentBarycentricKHR" ],
+ "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ],
+ "version" : "None"
+ },
+ {
"enumerant" : "PerVertexNV",
"value" : 5285,
- "capabilities" : [ "FragmentBarycentricNV" ],
- "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
+ "capabilities" : [ "FragmentBarycentricNV", "FragmentBarycentricKHR" ],
+ "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ],
"version" : "None"
},
{
@@ -11468,6 +11637,24 @@
"version" : "None"
},
{
+ "enumerant" : "AliasScopeINTEL",
+ "value" : 5914,
+ "parameters" : [
+ { "kind" : "IdRef", "name" : "'Aliasing Scopes List'" }
+ ],
+ "capabilities" : [ "MemoryAccessAliasingINTEL" ],
+ "version" : "None"
+ },
+ {
+ "enumerant" : "NoAliasINTEL",
+ "value" : 5915,
+ "parameters" : [
+ { "kind" : "IdRef", "name" : "'Aliasing Scopes List'" }
+ ],
+ "capabilities" : [ "MemoryAccessAliasingINTEL" ],
+ "version" : "None"
+ },
+ {
"enumerant" : "BufferLocationINTEL",
"value" : 5921,
"parameters" : [
@@ -11980,17 +12167,31 @@
"version" : "None"
},
{
+ "enumerant" : "BaryCoordKHR",
+ "value" : 5286,
+ "capabilities" : [ "FragmentBarycentricNV", "FragmentBarycentricKHR" ],
+ "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ],
+ "version" : "None"
+ },
+ {
"enumerant" : "BaryCoordNV",
"value" : 5286,
- "capabilities" : [ "FragmentBarycentricNV" ],
- "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
+ "capabilities" : [ "FragmentBarycentricNV", "FragmentBarycentricKHR" ],
+ "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ],
+ "version" : "None"
+ },
+ {
+ "enumerant" : "BaryCoordNoPerspKHR",
+ "value" : 5287,
+ "capabilities" : [ "FragmentBarycentricNV", "FragmentBarycentricKHR" ],
+ "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ],
"version" : "None"
},
{
"enumerant" : "BaryCoordNoPerspNV",
"value" : 5287,
- "capabilities" : [ "FragmentBarycentricNV" ],
- "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
+ "capabilities" : [ "FragmentBarycentricNV", "FragmentBarycentricKHR" ],
+ "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ],
"version" : "None"
},
{
@@ -12716,6 +12917,11 @@
"version" : "1.5"
},
{
+ "enumerant" : "UniformDecoration",
+ "value" : 71,
+ "version" : "1.6"
+ },
+ {
"enumerant" : "FragmentShadingRateKHR",
"value" : 4422,
"capabilities" : [ "Shader" ],
@@ -13041,9 +13247,15 @@
"version" : "None"
},
{
+ "enumerant" : "FragmentBarycentricKHR",
+ "value" : 5284,
+ "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ],
+ "version" : "None"
+ },
+ {
"enumerant" : "FragmentBarycentricNV",
"value" : 5284,
- "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
+ "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ],
"version" : "None"
},
{
@@ -13327,11 +13539,17 @@
"version" : "None"
},
{
+ "enumerant" : "DemoteToHelperInvocation",
+ "value" : 5379,
+ "capabilities" : [ "Shader" ],
+ "version" : "1.6"
+ },
+ {
"enumerant" : "DemoteToHelperInvocationEXT",
"value" : 5379,
"capabilities" : [ "Shader" ],
"extensions" : [ "SPV_EXT_demote_to_helper_invocation" ],
- "version" : "None"
+ "version" : "1.6"
},
{
"enumerant" : "BindlessTextureNV",
@@ -13535,6 +13753,12 @@
"version" : "None"
},
{
+ "enumerant" : "MemoryAccessAliasingINTEL",
+ "value" : 5910,
+ "extensions" : [ "SPV_INTEL_memory_access_aliasing" ],
+ "version" : "None"
+ },
+ {
"enumerant" : "FPGABufferLocationINTEL",
"value" : 5920,
"extensions" : [ "SPV_INTEL_fpga_buffer_location" ],
@@ -13571,29 +13795,50 @@
"version" : "None"
},
{
+ "enumerant" : "DotProductInputAll",
+ "value" : 6016,
+ "version" : "1.6"
+ },
+ {
"enumerant" : "DotProductInputAllKHR",
"value" : 6016,
"extensions" : [ "SPV_KHR_integer_dot_product" ],
- "version" : "None"
+ "version" : "1.6"
+ },
+ {
+ "enumerant" : "DotProductInput4x8Bit",
+ "value" : 6017,
+ "capabilities" : [ "Int8" ],
+ "version" : "1.6"
},
{
"enumerant" : "DotProductInput4x8BitKHR",
"value" : 6017,
"capabilities" : [ "Int8" ],
"extensions" : [ "SPV_KHR_integer_dot_product" ],
- "version" : "None"
+ "version" : "1.6"
+ },
+ {
+ "enumerant" : "DotProductInput4x8BitPacked",
+ "value" : 6018,
+ "version" : "1.6"
},
{
"enumerant" : "DotProductInput4x8BitPackedKHR",
"value" : 6018,
"extensions" : [ "SPV_KHR_integer_dot_product" ],
- "version" : "None"
+ "version" : "1.6"
+ },
+ {
+ "enumerant" : "DotProduct",
+ "value" : 6019,
+ "version" : "1.6"
},
{
"enumerant" : "DotProductKHR",
"value" : 6019,
"extensions" : [ "SPV_KHR_integer_dot_product" ],
- "version" : "None"
+ "version" : "1.6"
},
{
"enumerant" : "BitInstructions",
@@ -13604,14 +13849,12 @@
{
"enumerant" : "AtomicFloat32AddEXT",
"value" : 6033,
- "capabilities" : [ "Shader" ],
"extensions" : [ "SPV_EXT_shader_atomic_float_add" ],
"version" : "None"
},
{
"enumerant" : "AtomicFloat64AddEXT",
"value" : 6034,
- "capabilities" : [ "Shader" ],
"extensions" : [ "SPV_EXT_shader_atomic_float_add" ],
"version" : "None"
},
@@ -13630,7 +13873,6 @@
{
"enumerant" : "AtomicFloat16AddEXT",
"value" : 6095,
- "capabilities" : [ "Shader" ],
"extensions" : [ "SPV_EXT_shader_atomic_float16_add" ],
"version" : "None"
},
@@ -13707,10 +13949,15 @@
"kind" : "PackedVectorFormat",
"enumerants" : [
{
+ "enumerant" : "PackedVectorFormat4x8Bit",
+ "value" : 0,
+ "version" : "1.6"
+ },
+ {
"enumerant" : "PackedVectorFormat4x8BitKHR",
"value" : 0,
"extensions" : [ "SPV_KHR_integer_dot_product" ],
- "version" : "None"
+ "version" : "1.6"
}
]
},
diff --git a/include/spirv/unified1/spirv.cs b/include/spirv/unified1/spirv.cs
index 1bb7d61..9e2bccd 100644
--- a/include/spirv/unified1/spirv.cs
+++ b/include/spirv/unified1/spirv.cs
@@ -48,8 +48,8 @@
public static class Specification
{
public const uint MagicNumber = 0x07230203;
- public const uint Version = 0x00010500;
- public const uint Revision = 4;
+ public const uint Version = 0x00010600;
+ public const uint Revision = 1;
public const uint OpCodeMask = 0xffff;
public const uint WordCountShift = 16;
@@ -349,6 +349,7 @@
VolatileTexelKHR = 11,
SignExtend = 12,
ZeroExtend = 13,
+ Nontemporal = 14,
Offsets = 16,
}
@@ -373,6 +374,7 @@
VolatileTexelKHR = 0x00000800,
SignExtend = 0x00001000,
ZeroExtend = 0x00002000,
+ Nontemporal = 0x00004000,
Offsets = 0x00010000,
}
@@ -492,6 +494,7 @@
PerPrimitiveNV = 5271,
PerViewNV = 5272,
PerTaskNV = 5273,
+ PerVertexKHR = 5285,
PerVertexNV = 5285,
NonUniform = 5300,
NonUniformEXT = 5300,
@@ -537,6 +540,8 @@
PrefetchINTEL = 5902,
StallEnableINTEL = 5905,
FuseLoopsInFunctionINTEL = 5907,
+ AliasScopeINTEL = 5914,
+ NoAliasINTEL = 5915,
BufferLocationINTEL = 5921,
IOPipeStorageINTEL = 5944,
FunctionFloatingPointModeINTEL = 6080,
@@ -627,7 +632,9 @@
LayerPerViewNV = 5279,
MeshViewCountNV = 5280,
MeshViewIndicesNV = 5281,
+ BaryCoordKHR = 5286,
BaryCoordNV = 5286,
+ BaryCoordNoPerspKHR = 5287,
BaryCoordNoPerspNV = 5287,
FragSizeEXT = 5292,
FragmentSizeNV = 5292,
@@ -797,6 +804,8 @@
MakePointerVisibleKHR = 4,
NonPrivatePointer = 5,
NonPrivatePointerKHR = 5,
+ AliasScopeINTELMask = 16,
+ NoAliasINTELMask = 17,
}
public enum MemoryAccessMask
@@ -811,6 +820,8 @@
MakePointerVisibleKHR = 0x00000010,
NonPrivatePointer = 0x00000020,
NonPrivatePointerKHR = 0x00000020,
+ AliasScopeINTELMask = 0x00010000,
+ NoAliasINTELMask = 0x00020000,
}
public enum Scope
@@ -925,6 +936,7 @@
GroupNonUniformQuad = 68,
ShaderLayer = 69,
ShaderViewportIndex = 70,
+ UniformDecoration = 71,
FragmentShadingRateKHR = 4422,
SubgroupBallotKHR = 4423,
DrawParameters = 4427,
@@ -973,6 +985,7 @@
FragmentFullyCoveredEXT = 5265,
MeshShadingNV = 5266,
ImageFootprintNV = 5282,
+ FragmentBarycentricKHR = 5284,
FragmentBarycentricNV = 5284,
ComputeDerivativeGroupQuadsNV = 5288,
FragmentDensityEXT = 5291,
@@ -1017,6 +1030,7 @@
FragmentShaderShadingRateInterlockEXT = 5372,
ShaderSMBuiltinsNV = 5373,
FragmentShaderPixelInterlockEXT = 5378,
+ DemoteToHelperInvocation = 5379,
DemoteToHelperInvocationEXT = 5379,
BindlessTextureNV = 5390,
SubgroupShuffleINTEL = 5568,
@@ -1051,15 +1065,20 @@
FPGAMemoryAccessesINTEL = 5898,
FPGAClusterAttributesINTEL = 5904,
LoopFuseINTEL = 5906,
+ MemoryAccessAliasingINTEL = 5910,
FPGABufferLocationINTEL = 5920,
ArbitraryPrecisionFixedPointINTEL = 5922,
USMStorageClassesINTEL = 5935,
IOPipesINTEL = 5943,
BlockingPipesINTEL = 5945,
FPGARegINTEL = 5948,
+ DotProductInputAll = 6016,
DotProductInputAllKHR = 6016,
+ DotProductInput4x8Bit = 6017,
DotProductInput4x8BitKHR = 6017,
+ DotProductInput4x8BitPacked = 6018,
DotProductInput4x8BitPackedKHR = 6018,
+ DotProduct = 6019,
DotProductKHR = 6019,
BitInstructions = 6025,
AtomicFloat32AddEXT = 6033,
@@ -1169,6 +1188,7 @@
public enum PackedVectorFormat
{
+ PackedVectorFormat4x8Bit = 0,
PackedVectorFormat4x8BitKHR = 0,
}
@@ -1530,11 +1550,17 @@
OpConvertUToAccelerationStructureKHR = 4447,
OpIgnoreIntersectionKHR = 4448,
OpTerminateRayKHR = 4449,
+ OpSDot = 4450,
OpSDotKHR = 4450,
+ OpUDot = 4451,
OpUDotKHR = 4451,
+ OpSUDot = 4452,
OpSUDotKHR = 4452,
+ OpSDotAccSat = 4453,
OpSDotAccSatKHR = 4453,
+ OpUDotAccSat = 4454,
OpUDotAccSatKHR = 4454,
+ OpSUDotAccSat = 4455,
OpSUDotAccSatKHR = 4455,
OpTypeRayQueryKHR = 4472,
OpRayQueryInitializeKHR = 4473,
@@ -1574,6 +1600,7 @@
OpCooperativeMatrixLengthNV = 5362,
OpBeginInvocationInterlockEXT = 5364,
OpEndInvocationInterlockEXT = 5365,
+ OpDemoteToHelperInvocation = 5380,
OpDemoteToHelperInvocationEXT = 5380,
OpIsHelperInvocationEXT = 5381,
OpConvertUToImageNV = 5391,
@@ -1783,6 +1810,9 @@
OpArbitraryFloatPowRINTEL = 5881,
OpArbitraryFloatPowNINTEL = 5882,
OpLoopControlINTEL = 5887,
+ OpAliasDomainDeclINTEL = 5911,
+ OpAliasScopeDeclINTEL = 5912,
+ OpAliasScopeListDeclINTEL = 5913,
OpFixedSqrtINTEL = 5923,
OpFixedRecipINTEL = 5924,
OpFixedRsqrtINTEL = 5925,
diff --git a/include/spirv/unified1/spirv.h b/include/spirv/unified1/spirv.h
index 7a0e6ca..3d617da 100644
--- a/include/spirv/unified1/spirv.h
+++ b/include/spirv/unified1/spirv.h
@@ -53,12 +53,12 @@
typedef unsigned int SpvId;
-#define SPV_VERSION 0x10500
-#define SPV_REVISION 4
+#define SPV_VERSION 0x10600
+#define SPV_REVISION 1
static const unsigned int SpvMagicNumber = 0x07230203;
-static const unsigned int SpvVersion = 0x00010500;
-static const unsigned int SpvRevision = 4;
+static const unsigned int SpvVersion = 0x00010600;
+static const unsigned int SpvRevision = 1;
static const unsigned int SpvOpCodeMask = 0xffff;
static const unsigned int SpvWordCountShift = 16;
@@ -357,6 +357,7 @@
SpvImageOperandsVolatileTexelKHRShift = 11,
SpvImageOperandsSignExtendShift = 12,
SpvImageOperandsZeroExtendShift = 13,
+ SpvImageOperandsNontemporalShift = 14,
SpvImageOperandsOffsetsShift = 16,
SpvImageOperandsMax = 0x7fffffff,
} SpvImageOperandsShift;
@@ -381,6 +382,7 @@
SpvImageOperandsVolatileTexelKHRMask = 0x00000800,
SpvImageOperandsSignExtendMask = 0x00001000,
SpvImageOperandsZeroExtendMask = 0x00002000,
+ SpvImageOperandsNontemporalMask = 0x00004000,
SpvImageOperandsOffsetsMask = 0x00010000,
} SpvImageOperandsMask;
@@ -498,6 +500,7 @@
SpvDecorationPerPrimitiveNV = 5271,
SpvDecorationPerViewNV = 5272,
SpvDecorationPerTaskNV = 5273,
+ SpvDecorationPerVertexKHR = 5285,
SpvDecorationPerVertexNV = 5285,
SpvDecorationNonUniform = 5300,
SpvDecorationNonUniformEXT = 5300,
@@ -543,6 +546,8 @@
SpvDecorationPrefetchINTEL = 5902,
SpvDecorationStallEnableINTEL = 5905,
SpvDecorationFuseLoopsInFunctionINTEL = 5907,
+ SpvDecorationAliasScopeINTEL = 5914,
+ SpvDecorationNoAliasINTEL = 5915,
SpvDecorationBufferLocationINTEL = 5921,
SpvDecorationIOPipeStorageINTEL = 5944,
SpvDecorationFunctionFloatingPointModeINTEL = 6080,
@@ -633,7 +638,9 @@
SpvBuiltInLayerPerViewNV = 5279,
SpvBuiltInMeshViewCountNV = 5280,
SpvBuiltInMeshViewIndicesNV = 5281,
+ SpvBuiltInBaryCoordKHR = 5286,
SpvBuiltInBaryCoordNV = 5286,
+ SpvBuiltInBaryCoordNoPerspKHR = 5287,
SpvBuiltInBaryCoordNoPerspNV = 5287,
SpvBuiltInFragSizeEXT = 5292,
SpvBuiltInFragmentSizeNV = 5292,
@@ -799,6 +806,8 @@
SpvMemoryAccessMakePointerVisibleKHRShift = 4,
SpvMemoryAccessNonPrivatePointerShift = 5,
SpvMemoryAccessNonPrivatePointerKHRShift = 5,
+ SpvMemoryAccessAliasScopeINTELMaskShift = 16,
+ SpvMemoryAccessNoAliasINTELMaskShift = 17,
SpvMemoryAccessMax = 0x7fffffff,
} SpvMemoryAccessShift;
@@ -813,6 +822,8 @@
SpvMemoryAccessMakePointerVisibleKHRMask = 0x00000010,
SpvMemoryAccessNonPrivatePointerMask = 0x00000020,
SpvMemoryAccessNonPrivatePointerKHRMask = 0x00000020,
+ SpvMemoryAccessAliasScopeINTELMaskMask = 0x00010000,
+ SpvMemoryAccessNoAliasINTELMaskMask = 0x00020000,
} SpvMemoryAccessMask;
typedef enum SpvScope_ {
@@ -925,6 +936,7 @@
SpvCapabilityGroupNonUniformQuad = 68,
SpvCapabilityShaderLayer = 69,
SpvCapabilityShaderViewportIndex = 70,
+ SpvCapabilityUniformDecoration = 71,
SpvCapabilityFragmentShadingRateKHR = 4422,
SpvCapabilitySubgroupBallotKHR = 4423,
SpvCapabilityDrawParameters = 4427,
@@ -973,6 +985,7 @@
SpvCapabilityFragmentFullyCoveredEXT = 5265,
SpvCapabilityMeshShadingNV = 5266,
SpvCapabilityImageFootprintNV = 5282,
+ SpvCapabilityFragmentBarycentricKHR = 5284,
SpvCapabilityFragmentBarycentricNV = 5284,
SpvCapabilityComputeDerivativeGroupQuadsNV = 5288,
SpvCapabilityFragmentDensityEXT = 5291,
@@ -1017,6 +1030,7 @@
SpvCapabilityFragmentShaderShadingRateInterlockEXT = 5372,
SpvCapabilityShaderSMBuiltinsNV = 5373,
SpvCapabilityFragmentShaderPixelInterlockEXT = 5378,
+ SpvCapabilityDemoteToHelperInvocation = 5379,
SpvCapabilityDemoteToHelperInvocationEXT = 5379,
SpvCapabilityBindlessTextureNV = 5390,
SpvCapabilitySubgroupShuffleINTEL = 5568,
@@ -1051,15 +1065,20 @@
SpvCapabilityFPGAMemoryAccessesINTEL = 5898,
SpvCapabilityFPGAClusterAttributesINTEL = 5904,
SpvCapabilityLoopFuseINTEL = 5906,
+ SpvCapabilityMemoryAccessAliasingINTEL = 5910,
SpvCapabilityFPGABufferLocationINTEL = 5920,
SpvCapabilityArbitraryPrecisionFixedPointINTEL = 5922,
SpvCapabilityUSMStorageClassesINTEL = 5935,
SpvCapabilityIOPipesINTEL = 5943,
SpvCapabilityBlockingPipesINTEL = 5945,
SpvCapabilityFPGARegINTEL = 5948,
+ SpvCapabilityDotProductInputAll = 6016,
SpvCapabilityDotProductInputAllKHR = 6016,
+ SpvCapabilityDotProductInput4x8Bit = 6017,
SpvCapabilityDotProductInput4x8BitKHR = 6017,
+ SpvCapabilityDotProductInput4x8BitPacked = 6018,
SpvCapabilityDotProductInput4x8BitPackedKHR = 6018,
+ SpvCapabilityDotProduct = 6019,
SpvCapabilityDotProductKHR = 6019,
SpvCapabilityBitInstructions = 6025,
SpvCapabilityAtomicFloat32AddEXT = 6033,
@@ -1167,6 +1186,7 @@
} SpvOverflowModes;
typedef enum SpvPackedVectorFormat_ {
+ SpvPackedVectorFormatPackedVectorFormat4x8Bit = 0,
SpvPackedVectorFormatPackedVectorFormat4x8BitKHR = 0,
SpvPackedVectorFormatMax = 0x7fffffff,
} SpvPackedVectorFormat;
@@ -1528,11 +1548,17 @@
SpvOpConvertUToAccelerationStructureKHR = 4447,
SpvOpIgnoreIntersectionKHR = 4448,
SpvOpTerminateRayKHR = 4449,
+ SpvOpSDot = 4450,
SpvOpSDotKHR = 4450,
+ SpvOpUDot = 4451,
SpvOpUDotKHR = 4451,
+ SpvOpSUDot = 4452,
SpvOpSUDotKHR = 4452,
+ SpvOpSDotAccSat = 4453,
SpvOpSDotAccSatKHR = 4453,
+ SpvOpUDotAccSat = 4454,
SpvOpUDotAccSatKHR = 4454,
+ SpvOpSUDotAccSat = 4455,
SpvOpSUDotAccSatKHR = 4455,
SpvOpTypeRayQueryKHR = 4472,
SpvOpRayQueryInitializeKHR = 4473,
@@ -1572,6 +1598,7 @@
SpvOpCooperativeMatrixLengthNV = 5362,
SpvOpBeginInvocationInterlockEXT = 5364,
SpvOpEndInvocationInterlockEXT = 5365,
+ SpvOpDemoteToHelperInvocation = 5380,
SpvOpDemoteToHelperInvocationEXT = 5380,
SpvOpIsHelperInvocationEXT = 5381,
SpvOpConvertUToImageNV = 5391,
@@ -1781,6 +1808,9 @@
SpvOpArbitraryFloatPowRINTEL = 5881,
SpvOpArbitraryFloatPowNINTEL = 5882,
SpvOpLoopControlINTEL = 5887,
+ SpvOpAliasDomainDeclINTEL = 5911,
+ SpvOpAliasScopeDeclINTEL = 5912,
+ SpvOpAliasScopeListDeclINTEL = 5913,
SpvOpFixedSqrtINTEL = 5923,
SpvOpFixedRecipINTEL = 5924,
SpvOpFixedRsqrtINTEL = 5925,
@@ -2183,12 +2213,12 @@
case SpvOpConvertUToAccelerationStructureKHR: *hasResult = true; *hasResultType = true; break;
case SpvOpIgnoreIntersectionKHR: *hasResult = false; *hasResultType = false; break;
case SpvOpTerminateRayKHR: *hasResult = false; *hasResultType = false; break;
- case SpvOpSDotKHR: *hasResult = true; *hasResultType = true; break;
- case SpvOpUDotKHR: *hasResult = true; *hasResultType = true; break;
- case SpvOpSUDotKHR: *hasResult = true; *hasResultType = true; break;
- case SpvOpSDotAccSatKHR: *hasResult = true; *hasResultType = true; break;
- case SpvOpUDotAccSatKHR: *hasResult = true; *hasResultType = true; break;
- case SpvOpSUDotAccSatKHR: *hasResult = true; *hasResultType = true; break;
+ case SpvOpSDot: *hasResult = true; *hasResultType = true; break;
+ case SpvOpUDot: *hasResult = true; *hasResultType = true; break;
+ case SpvOpSUDot: *hasResult = true; *hasResultType = true; break;
+ case SpvOpSDotAccSat: *hasResult = true; *hasResultType = true; break;
+ case SpvOpUDotAccSat: *hasResult = true; *hasResultType = true; break;
+ case SpvOpSUDotAccSat: *hasResult = true; *hasResultType = true; break;
case SpvOpTypeRayQueryKHR: *hasResult = true; *hasResultType = false; break;
case SpvOpRayQueryInitializeKHR: *hasResult = false; *hasResultType = false; break;
case SpvOpRayQueryTerminateKHR: *hasResult = false; *hasResultType = false; break;
@@ -2225,7 +2255,7 @@
case SpvOpCooperativeMatrixLengthNV: *hasResult = true; *hasResultType = true; break;
case SpvOpBeginInvocationInterlockEXT: *hasResult = false; *hasResultType = false; break;
case SpvOpEndInvocationInterlockEXT: *hasResult = false; *hasResultType = false; break;
- case SpvOpDemoteToHelperInvocationEXT: *hasResult = false; *hasResultType = false; break;
+ case SpvOpDemoteToHelperInvocation: *hasResult = false; *hasResultType = false; break;
case SpvOpIsHelperInvocationEXT: *hasResult = true; *hasResultType = true; break;
case SpvOpConvertUToImageNV: *hasResult = true; *hasResultType = true; break;
case SpvOpConvertUToSamplerNV: *hasResult = true; *hasResultType = true; break;
@@ -2432,6 +2462,9 @@
case SpvOpArbitraryFloatPowRINTEL: *hasResult = true; *hasResultType = true; break;
case SpvOpArbitraryFloatPowNINTEL: *hasResult = true; *hasResultType = true; break;
case SpvOpLoopControlINTEL: *hasResult = false; *hasResultType = false; break;
+ case SpvOpAliasDomainDeclINTEL: *hasResult = true; *hasResultType = false; break;
+ case SpvOpAliasScopeDeclINTEL: *hasResult = true; *hasResultType = false; break;
+ case SpvOpAliasScopeListDeclINTEL: *hasResult = true; *hasResultType = false; break;
case SpvOpFixedSqrtINTEL: *hasResult = true; *hasResultType = true; break;
case SpvOpFixedRecipINTEL: *hasResult = true; *hasResultType = true; break;
case SpvOpFixedRsqrtINTEL: *hasResult = true; *hasResultType = true; break;
diff --git a/include/spirv/unified1/spirv.hpp b/include/spirv/unified1/spirv.hpp
index 6ba8169..97a5101 100644
--- a/include/spirv/unified1/spirv.hpp
+++ b/include/spirv/unified1/spirv.hpp
@@ -49,12 +49,12 @@
typedef unsigned int Id;
-#define SPV_VERSION 0x10500
-#define SPV_REVISION 4
+#define SPV_VERSION 0x10600
+#define SPV_REVISION 1
static const unsigned int MagicNumber = 0x07230203;
-static const unsigned int Version = 0x00010500;
-static const unsigned int Revision = 4;
+static const unsigned int Version = 0x00010600;
+static const unsigned int Revision = 1;
static const unsigned int OpCodeMask = 0xffff;
static const unsigned int WordCountShift = 16;
@@ -353,6 +353,7 @@
ImageOperandsVolatileTexelKHRShift = 11,
ImageOperandsSignExtendShift = 12,
ImageOperandsZeroExtendShift = 13,
+ ImageOperandsNontemporalShift = 14,
ImageOperandsOffsetsShift = 16,
ImageOperandsMax = 0x7fffffff,
};
@@ -377,6 +378,7 @@
ImageOperandsVolatileTexelKHRMask = 0x00000800,
ImageOperandsSignExtendMask = 0x00001000,
ImageOperandsZeroExtendMask = 0x00002000,
+ ImageOperandsNontemporalMask = 0x00004000,
ImageOperandsOffsetsMask = 0x00010000,
};
@@ -494,6 +496,7 @@
DecorationPerPrimitiveNV = 5271,
DecorationPerViewNV = 5272,
DecorationPerTaskNV = 5273,
+ DecorationPerVertexKHR = 5285,
DecorationPerVertexNV = 5285,
DecorationNonUniform = 5300,
DecorationNonUniformEXT = 5300,
@@ -539,6 +542,8 @@
DecorationPrefetchINTEL = 5902,
DecorationStallEnableINTEL = 5905,
DecorationFuseLoopsInFunctionINTEL = 5907,
+ DecorationAliasScopeINTEL = 5914,
+ DecorationNoAliasINTEL = 5915,
DecorationBufferLocationINTEL = 5921,
DecorationIOPipeStorageINTEL = 5944,
DecorationFunctionFloatingPointModeINTEL = 6080,
@@ -629,7 +634,9 @@
BuiltInLayerPerViewNV = 5279,
BuiltInMeshViewCountNV = 5280,
BuiltInMeshViewIndicesNV = 5281,
+ BuiltInBaryCoordKHR = 5286,
BuiltInBaryCoordNV = 5286,
+ BuiltInBaryCoordNoPerspKHR = 5287,
BuiltInBaryCoordNoPerspNV = 5287,
BuiltInFragSizeEXT = 5292,
BuiltInFragmentSizeNV = 5292,
@@ -795,6 +802,8 @@
MemoryAccessMakePointerVisibleKHRShift = 4,
MemoryAccessNonPrivatePointerShift = 5,
MemoryAccessNonPrivatePointerKHRShift = 5,
+ MemoryAccessAliasScopeINTELMaskShift = 16,
+ MemoryAccessNoAliasINTELMaskShift = 17,
MemoryAccessMax = 0x7fffffff,
};
@@ -809,6 +818,8 @@
MemoryAccessMakePointerVisibleKHRMask = 0x00000010,
MemoryAccessNonPrivatePointerMask = 0x00000020,
MemoryAccessNonPrivatePointerKHRMask = 0x00000020,
+ MemoryAccessAliasScopeINTELMaskMask = 0x00010000,
+ MemoryAccessNoAliasINTELMaskMask = 0x00020000,
};
enum Scope {
@@ -921,6 +932,7 @@
CapabilityGroupNonUniformQuad = 68,
CapabilityShaderLayer = 69,
CapabilityShaderViewportIndex = 70,
+ CapabilityUniformDecoration = 71,
CapabilityFragmentShadingRateKHR = 4422,
CapabilitySubgroupBallotKHR = 4423,
CapabilityDrawParameters = 4427,
@@ -969,6 +981,7 @@
CapabilityFragmentFullyCoveredEXT = 5265,
CapabilityMeshShadingNV = 5266,
CapabilityImageFootprintNV = 5282,
+ CapabilityFragmentBarycentricKHR = 5284,
CapabilityFragmentBarycentricNV = 5284,
CapabilityComputeDerivativeGroupQuadsNV = 5288,
CapabilityFragmentDensityEXT = 5291,
@@ -1013,6 +1026,7 @@
CapabilityFragmentShaderShadingRateInterlockEXT = 5372,
CapabilityShaderSMBuiltinsNV = 5373,
CapabilityFragmentShaderPixelInterlockEXT = 5378,
+ CapabilityDemoteToHelperInvocation = 5379,
CapabilityDemoteToHelperInvocationEXT = 5379,
CapabilityBindlessTextureNV = 5390,
CapabilitySubgroupShuffleINTEL = 5568,
@@ -1047,15 +1061,20 @@
CapabilityFPGAMemoryAccessesINTEL = 5898,
CapabilityFPGAClusterAttributesINTEL = 5904,
CapabilityLoopFuseINTEL = 5906,
+ CapabilityMemoryAccessAliasingINTEL = 5910,
CapabilityFPGABufferLocationINTEL = 5920,
CapabilityArbitraryPrecisionFixedPointINTEL = 5922,
CapabilityUSMStorageClassesINTEL = 5935,
CapabilityIOPipesINTEL = 5943,
CapabilityBlockingPipesINTEL = 5945,
CapabilityFPGARegINTEL = 5948,
+ CapabilityDotProductInputAll = 6016,
CapabilityDotProductInputAllKHR = 6016,
+ CapabilityDotProductInput4x8Bit = 6017,
CapabilityDotProductInput4x8BitKHR = 6017,
+ CapabilityDotProductInput4x8BitPacked = 6018,
CapabilityDotProductInput4x8BitPackedKHR = 6018,
+ CapabilityDotProduct = 6019,
CapabilityDotProductKHR = 6019,
CapabilityBitInstructions = 6025,
CapabilityAtomicFloat32AddEXT = 6033,
@@ -1163,6 +1182,7 @@
};
enum PackedVectorFormat {
+ PackedVectorFormatPackedVectorFormat4x8Bit = 0,
PackedVectorFormatPackedVectorFormat4x8BitKHR = 0,
PackedVectorFormatMax = 0x7fffffff,
};
@@ -1524,11 +1544,17 @@
OpConvertUToAccelerationStructureKHR = 4447,
OpIgnoreIntersectionKHR = 4448,
OpTerminateRayKHR = 4449,
+ OpSDot = 4450,
OpSDotKHR = 4450,
+ OpUDot = 4451,
OpUDotKHR = 4451,
+ OpSUDot = 4452,
OpSUDotKHR = 4452,
+ OpSDotAccSat = 4453,
OpSDotAccSatKHR = 4453,
+ OpUDotAccSat = 4454,
OpUDotAccSatKHR = 4454,
+ OpSUDotAccSat = 4455,
OpSUDotAccSatKHR = 4455,
OpTypeRayQueryKHR = 4472,
OpRayQueryInitializeKHR = 4473,
@@ -1568,6 +1594,7 @@
OpCooperativeMatrixLengthNV = 5362,
OpBeginInvocationInterlockEXT = 5364,
OpEndInvocationInterlockEXT = 5365,
+ OpDemoteToHelperInvocation = 5380,
OpDemoteToHelperInvocationEXT = 5380,
OpIsHelperInvocationEXT = 5381,
OpConvertUToImageNV = 5391,
@@ -1777,6 +1804,9 @@
OpArbitraryFloatPowRINTEL = 5881,
OpArbitraryFloatPowNINTEL = 5882,
OpLoopControlINTEL = 5887,
+ OpAliasDomainDeclINTEL = 5911,
+ OpAliasScopeDeclINTEL = 5912,
+ OpAliasScopeListDeclINTEL = 5913,
OpFixedSqrtINTEL = 5923,
OpFixedRecipINTEL = 5924,
OpFixedRsqrtINTEL = 5925,
@@ -2179,12 +2209,12 @@
case OpConvertUToAccelerationStructureKHR: *hasResult = true; *hasResultType = true; break;
case OpIgnoreIntersectionKHR: *hasResult = false; *hasResultType = false; break;
case OpTerminateRayKHR: *hasResult = false; *hasResultType = false; break;
- case OpSDotKHR: *hasResult = true; *hasResultType = true; break;
- case OpUDotKHR: *hasResult = true; *hasResultType = true; break;
- case OpSUDotKHR: *hasResult = true; *hasResultType = true; break;
- case OpSDotAccSatKHR: *hasResult = true; *hasResultType = true; break;
- case OpUDotAccSatKHR: *hasResult = true; *hasResultType = true; break;
- case OpSUDotAccSatKHR: *hasResult = true; *hasResultType = true; break;
+ case OpSDot: *hasResult = true; *hasResultType = true; break;
+ case OpUDot: *hasResult = true; *hasResultType = true; break;
+ case OpSUDot: *hasResult = true; *hasResultType = true; break;
+ case OpSDotAccSat: *hasResult = true; *hasResultType = true; break;
+ case OpUDotAccSat: *hasResult = true; *hasResultType = true; break;
+ case OpSUDotAccSat: *hasResult = true; *hasResultType = true; break;
case OpTypeRayQueryKHR: *hasResult = true; *hasResultType = false; break;
case OpRayQueryInitializeKHR: *hasResult = false; *hasResultType = false; break;
case OpRayQueryTerminateKHR: *hasResult = false; *hasResultType = false; break;
@@ -2221,7 +2251,7 @@
case OpCooperativeMatrixLengthNV: *hasResult = true; *hasResultType = true; break;
case OpBeginInvocationInterlockEXT: *hasResult = false; *hasResultType = false; break;
case OpEndInvocationInterlockEXT: *hasResult = false; *hasResultType = false; break;
- case OpDemoteToHelperInvocationEXT: *hasResult = false; *hasResultType = false; break;
+ case OpDemoteToHelperInvocation: *hasResult = false; *hasResultType = false; break;
case OpIsHelperInvocationEXT: *hasResult = true; *hasResultType = true; break;
case OpConvertUToImageNV: *hasResult = true; *hasResultType = true; break;
case OpConvertUToSamplerNV: *hasResult = true; *hasResultType = true; break;
@@ -2428,6 +2458,9 @@
case OpArbitraryFloatPowRINTEL: *hasResult = true; *hasResultType = true; break;
case OpArbitraryFloatPowNINTEL: *hasResult = true; *hasResultType = true; break;
case OpLoopControlINTEL: *hasResult = false; *hasResultType = false; break;
+ case OpAliasDomainDeclINTEL: *hasResult = true; *hasResultType = false; break;
+ case OpAliasScopeDeclINTEL: *hasResult = true; *hasResultType = false; break;
+ case OpAliasScopeListDeclINTEL: *hasResult = true; *hasResultType = false; break;
case OpFixedSqrtINTEL: *hasResult = true; *hasResultType = true; break;
case OpFixedRecipINTEL: *hasResult = true; *hasResultType = true; break;
case OpFixedRsqrtINTEL: *hasResult = true; *hasResultType = true; break;
diff --git a/include/spirv/unified1/spirv.hpp11 b/include/spirv/unified1/spirv.hpp11
index 80990cc..a5de0be 100644
--- a/include/spirv/unified1/spirv.hpp11
+++ b/include/spirv/unified1/spirv.hpp11
@@ -49,12 +49,12 @@
typedef unsigned int Id;
-#define SPV_VERSION 0x10500
-#define SPV_REVISION 4
+#define SPV_VERSION 0x10600
+#define SPV_REVISION 1
static const unsigned int MagicNumber = 0x07230203;
-static const unsigned int Version = 0x00010500;
-static const unsigned int Revision = 4;
+static const unsigned int Version = 0x00010600;
+static const unsigned int Revision = 1;
static const unsigned int OpCodeMask = 0xffff;
static const unsigned int WordCountShift = 16;
@@ -353,6 +353,7 @@
VolatileTexelKHR = 11,
SignExtend = 12,
ZeroExtend = 13,
+ Nontemporal = 14,
Offsets = 16,
Max = 0x7fffffff,
};
@@ -377,6 +378,7 @@
VolatileTexelKHR = 0x00000800,
SignExtend = 0x00001000,
ZeroExtend = 0x00002000,
+ Nontemporal = 0x00004000,
Offsets = 0x00010000,
};
@@ -494,6 +496,7 @@
PerPrimitiveNV = 5271,
PerViewNV = 5272,
PerTaskNV = 5273,
+ PerVertexKHR = 5285,
PerVertexNV = 5285,
NonUniform = 5300,
NonUniformEXT = 5300,
@@ -539,6 +542,8 @@
PrefetchINTEL = 5902,
StallEnableINTEL = 5905,
FuseLoopsInFunctionINTEL = 5907,
+ AliasScopeINTEL = 5914,
+ NoAliasINTEL = 5915,
BufferLocationINTEL = 5921,
IOPipeStorageINTEL = 5944,
FunctionFloatingPointModeINTEL = 6080,
@@ -629,7 +634,9 @@
LayerPerViewNV = 5279,
MeshViewCountNV = 5280,
MeshViewIndicesNV = 5281,
+ BaryCoordKHR = 5286,
BaryCoordNV = 5286,
+ BaryCoordNoPerspKHR = 5287,
BaryCoordNoPerspNV = 5287,
FragSizeEXT = 5292,
FragmentSizeNV = 5292,
@@ -795,6 +802,8 @@
MakePointerVisibleKHR = 4,
NonPrivatePointer = 5,
NonPrivatePointerKHR = 5,
+ AliasScopeINTELMask = 16,
+ NoAliasINTELMask = 17,
Max = 0x7fffffff,
};
@@ -809,6 +818,8 @@
MakePointerVisibleKHR = 0x00000010,
NonPrivatePointer = 0x00000020,
NonPrivatePointerKHR = 0x00000020,
+ AliasScopeINTELMask = 0x00010000,
+ NoAliasINTELMask = 0x00020000,
};
enum class Scope : unsigned {
@@ -921,6 +932,7 @@
GroupNonUniformQuad = 68,
ShaderLayer = 69,
ShaderViewportIndex = 70,
+ UniformDecoration = 71,
FragmentShadingRateKHR = 4422,
SubgroupBallotKHR = 4423,
DrawParameters = 4427,
@@ -969,6 +981,7 @@
FragmentFullyCoveredEXT = 5265,
MeshShadingNV = 5266,
ImageFootprintNV = 5282,
+ FragmentBarycentricKHR = 5284,
FragmentBarycentricNV = 5284,
ComputeDerivativeGroupQuadsNV = 5288,
FragmentDensityEXT = 5291,
@@ -1013,6 +1026,7 @@
FragmentShaderShadingRateInterlockEXT = 5372,
ShaderSMBuiltinsNV = 5373,
FragmentShaderPixelInterlockEXT = 5378,
+ DemoteToHelperInvocation = 5379,
DemoteToHelperInvocationEXT = 5379,
BindlessTextureNV = 5390,
SubgroupShuffleINTEL = 5568,
@@ -1047,15 +1061,20 @@
FPGAMemoryAccessesINTEL = 5898,
FPGAClusterAttributesINTEL = 5904,
LoopFuseINTEL = 5906,
+ MemoryAccessAliasingINTEL = 5910,
FPGABufferLocationINTEL = 5920,
ArbitraryPrecisionFixedPointINTEL = 5922,
USMStorageClassesINTEL = 5935,
IOPipesINTEL = 5943,
BlockingPipesINTEL = 5945,
FPGARegINTEL = 5948,
+ DotProductInputAll = 6016,
DotProductInputAllKHR = 6016,
+ DotProductInput4x8Bit = 6017,
DotProductInput4x8BitKHR = 6017,
+ DotProductInput4x8BitPacked = 6018,
DotProductInput4x8BitPackedKHR = 6018,
+ DotProduct = 6019,
DotProductKHR = 6019,
BitInstructions = 6025,
AtomicFloat32AddEXT = 6033,
@@ -1163,6 +1182,7 @@
};
enum class PackedVectorFormat : unsigned {
+ PackedVectorFormat4x8Bit = 0,
PackedVectorFormat4x8BitKHR = 0,
Max = 0x7fffffff,
};
@@ -1524,11 +1544,17 @@
OpConvertUToAccelerationStructureKHR = 4447,
OpIgnoreIntersectionKHR = 4448,
OpTerminateRayKHR = 4449,
+ OpSDot = 4450,
OpSDotKHR = 4450,
+ OpUDot = 4451,
OpUDotKHR = 4451,
+ OpSUDot = 4452,
OpSUDotKHR = 4452,
+ OpSDotAccSat = 4453,
OpSDotAccSatKHR = 4453,
+ OpUDotAccSat = 4454,
OpUDotAccSatKHR = 4454,
+ OpSUDotAccSat = 4455,
OpSUDotAccSatKHR = 4455,
OpTypeRayQueryKHR = 4472,
OpRayQueryInitializeKHR = 4473,
@@ -1568,6 +1594,7 @@
OpCooperativeMatrixLengthNV = 5362,
OpBeginInvocationInterlockEXT = 5364,
OpEndInvocationInterlockEXT = 5365,
+ OpDemoteToHelperInvocation = 5380,
OpDemoteToHelperInvocationEXT = 5380,
OpIsHelperInvocationEXT = 5381,
OpConvertUToImageNV = 5391,
@@ -1777,6 +1804,9 @@
OpArbitraryFloatPowRINTEL = 5881,
OpArbitraryFloatPowNINTEL = 5882,
OpLoopControlINTEL = 5887,
+ OpAliasDomainDeclINTEL = 5911,
+ OpAliasScopeDeclINTEL = 5912,
+ OpAliasScopeListDeclINTEL = 5913,
OpFixedSqrtINTEL = 5923,
OpFixedRecipINTEL = 5924,
OpFixedRsqrtINTEL = 5925,
@@ -2179,12 +2209,12 @@
case Op::OpConvertUToAccelerationStructureKHR: *hasResult = true; *hasResultType = true; break;
case Op::OpIgnoreIntersectionKHR: *hasResult = false; *hasResultType = false; break;
case Op::OpTerminateRayKHR: *hasResult = false; *hasResultType = false; break;
- case Op::OpSDotKHR: *hasResult = true; *hasResultType = true; break;
- case Op::OpUDotKHR: *hasResult = true; *hasResultType = true; break;
- case Op::OpSUDotKHR: *hasResult = true; *hasResultType = true; break;
- case Op::OpSDotAccSatKHR: *hasResult = true; *hasResultType = true; break;
- case Op::OpUDotAccSatKHR: *hasResult = true; *hasResultType = true; break;
- case Op::OpSUDotAccSatKHR: *hasResult = true; *hasResultType = true; break;
+ case Op::OpSDot: *hasResult = true; *hasResultType = true; break;
+ case Op::OpUDot: *hasResult = true; *hasResultType = true; break;
+ case Op::OpSUDot: *hasResult = true; *hasResultType = true; break;
+ case Op::OpSDotAccSat: *hasResult = true; *hasResultType = true; break;
+ case Op::OpUDotAccSat: *hasResult = true; *hasResultType = true; break;
+ case Op::OpSUDotAccSat: *hasResult = true; *hasResultType = true; break;
case Op::OpTypeRayQueryKHR: *hasResult = true; *hasResultType = false; break;
case Op::OpRayQueryInitializeKHR: *hasResult = false; *hasResultType = false; break;
case Op::OpRayQueryTerminateKHR: *hasResult = false; *hasResultType = false; break;
@@ -2221,7 +2251,7 @@
case Op::OpCooperativeMatrixLengthNV: *hasResult = true; *hasResultType = true; break;
case Op::OpBeginInvocationInterlockEXT: *hasResult = false; *hasResultType = false; break;
case Op::OpEndInvocationInterlockEXT: *hasResult = false; *hasResultType = false; break;
- case Op::OpDemoteToHelperInvocationEXT: *hasResult = false; *hasResultType = false; break;
+ case Op::OpDemoteToHelperInvocation: *hasResult = false; *hasResultType = false; break;
case Op::OpIsHelperInvocationEXT: *hasResult = true; *hasResultType = true; break;
case Op::OpConvertUToImageNV: *hasResult = true; *hasResultType = true; break;
case Op::OpConvertUToSamplerNV: *hasResult = true; *hasResultType = true; break;
@@ -2428,6 +2458,9 @@
case Op::OpArbitraryFloatPowRINTEL: *hasResult = true; *hasResultType = true; break;
case Op::OpArbitraryFloatPowNINTEL: *hasResult = true; *hasResultType = true; break;
case Op::OpLoopControlINTEL: *hasResult = false; *hasResultType = false; break;
+ case Op::OpAliasDomainDeclINTEL: *hasResult = true; *hasResultType = false; break;
+ case Op::OpAliasScopeDeclINTEL: *hasResult = true; *hasResultType = false; break;
+ case Op::OpAliasScopeListDeclINTEL: *hasResult = true; *hasResultType = false; break;
case Op::OpFixedSqrtINTEL: *hasResult = true; *hasResultType = true; break;
case Op::OpFixedRecipINTEL: *hasResult = true; *hasResultType = true; break;
case Op::OpFixedRsqrtINTEL: *hasResult = true; *hasResultType = true; break;
diff --git a/include/spirv/unified1/spirv.json b/include/spirv/unified1/spirv.json
index 4330537..34d157b 100644
--- a/include/spirv/unified1/spirv.json
+++ b/include/spirv/unified1/spirv.json
@@ -54,8 +54,8 @@
]
],
"MagicNumber": 119734787,
- "Version": 66816,
- "Revision": 4,
+ "Version": 67072,
+ "Revision": 1,
"OpCodeMask": 65535,
"WordCountShift": 16
},
@@ -396,6 +396,7 @@
"VolatileTexelKHR": 11,
"SignExtend": 12,
"ZeroExtend": 13,
+ "Nontemporal": 14,
"Offsets": 16
}
},
@@ -521,6 +522,7 @@
"PerPrimitiveNV": 5271,
"PerViewNV": 5272,
"PerTaskNV": 5273,
+ "PerVertexKHR": 5285,
"PerVertexNV": 5285,
"NonUniform": 5300,
"NonUniformEXT": 5300,
@@ -566,6 +568,8 @@
"PrefetchINTEL": 5902,
"StallEnableINTEL": 5905,
"FuseLoopsInFunctionINTEL": 5907,
+ "AliasScopeINTEL": 5914,
+ "NoAliasINTEL": 5915,
"BufferLocationINTEL": 5921,
"IOPipeStorageINTEL": 5944,
"FunctionFloatingPointModeINTEL": 6080,
@@ -659,7 +663,9 @@
"LayerPerViewNV": 5279,
"MeshViewCountNV": 5280,
"MeshViewIndicesNV": 5281,
+ "BaryCoordKHR": 5286,
"BaryCoordNV": 5286,
+ "BaryCoordNoPerspKHR": 5287,
"BaryCoordNoPerspNV": 5287,
"FragSizeEXT": 5292,
"FragmentSizeNV": 5292,
@@ -782,7 +788,9 @@
"MakePointerVisible": 4,
"MakePointerVisibleKHR": 4,
"NonPrivatePointer": 5,
- "NonPrivatePointerKHR": 5
+ "NonPrivatePointerKHR": 5,
+ "AliasScopeINTELMask": 16,
+ "NoAliasINTELMask": 17
}
},
{
@@ -906,6 +914,7 @@
"GroupNonUniformQuad": 68,
"ShaderLayer": 69,
"ShaderViewportIndex": 70,
+ "UniformDecoration": 71,
"FragmentShadingRateKHR": 4422,
"SubgroupBallotKHR": 4423,
"DrawParameters": 4427,
@@ -954,6 +963,7 @@
"FragmentFullyCoveredEXT": 5265,
"MeshShadingNV": 5266,
"ImageFootprintNV": 5282,
+ "FragmentBarycentricKHR": 5284,
"FragmentBarycentricNV": 5284,
"ComputeDerivativeGroupQuadsNV": 5288,
"FragmentDensityEXT": 5291,
@@ -998,6 +1008,7 @@
"FragmentShaderShadingRateInterlockEXT": 5372,
"ShaderSMBuiltinsNV": 5373,
"FragmentShaderPixelInterlockEXT": 5378,
+ "DemoteToHelperInvocation": 5379,
"DemoteToHelperInvocationEXT": 5379,
"BindlessTextureNV": 5390,
"SubgroupShuffleINTEL": 5568,
@@ -1032,15 +1043,20 @@
"FPGAMemoryAccessesINTEL": 5898,
"FPGAClusterAttributesINTEL": 5904,
"LoopFuseINTEL": 5906,
+ "MemoryAccessAliasingINTEL": 5910,
"FPGABufferLocationINTEL": 5920,
"ArbitraryPrecisionFixedPointINTEL": 5922,
"USMStorageClassesINTEL": 5935,
"IOPipesINTEL": 5943,
"BlockingPipesINTEL": 5945,
"FPGARegINTEL": 5948,
+ "DotProductInputAll": 6016,
"DotProductInputAllKHR": 6016,
+ "DotProductInput4x8Bit": 6017,
"DotProductInput4x8BitKHR": 6017,
+ "DotProductInput4x8BitPacked": 6018,
"DotProductInput4x8BitPackedKHR": 6018,
+ "DotProduct": 6019,
"DotProductKHR": 6019,
"BitInstructions": 6025,
"AtomicFloat32AddEXT": 6033,
@@ -1156,6 +1172,7 @@
"Type": "Value",
"Values":
{
+ "PackedVectorFormat4x8Bit": 0,
"PackedVectorFormat4x8BitKHR": 0
}
},
@@ -1520,11 +1537,17 @@
"OpConvertUToAccelerationStructureKHR": 4447,
"OpIgnoreIntersectionKHR": 4448,
"OpTerminateRayKHR": 4449,
+ "OpSDot": 4450,
"OpSDotKHR": 4450,
+ "OpUDot": 4451,
"OpUDotKHR": 4451,
+ "OpSUDot": 4452,
"OpSUDotKHR": 4452,
+ "OpSDotAccSat": 4453,
"OpSDotAccSatKHR": 4453,
+ "OpUDotAccSat": 4454,
"OpUDotAccSatKHR": 4454,
+ "OpSUDotAccSat": 4455,
"OpSUDotAccSatKHR": 4455,
"OpTypeRayQueryKHR": 4472,
"OpRayQueryInitializeKHR": 4473,
@@ -1564,6 +1587,7 @@
"OpCooperativeMatrixLengthNV": 5362,
"OpBeginInvocationInterlockEXT": 5364,
"OpEndInvocationInterlockEXT": 5365,
+ "OpDemoteToHelperInvocation": 5380,
"OpDemoteToHelperInvocationEXT": 5380,
"OpIsHelperInvocationEXT": 5381,
"OpConvertUToImageNV": 5391,
@@ -1773,6 +1797,9 @@
"OpArbitraryFloatPowRINTEL": 5881,
"OpArbitraryFloatPowNINTEL": 5882,
"OpLoopControlINTEL": 5887,
+ "OpAliasDomainDeclINTEL": 5911,
+ "OpAliasScopeDeclINTEL": 5912,
+ "OpAliasScopeListDeclINTEL": 5913,
"OpFixedSqrtINTEL": 5923,
"OpFixedRecipINTEL": 5924,
"OpFixedRsqrtINTEL": 5925,
diff --git a/include/spirv/unified1/spirv.lua b/include/spirv/unified1/spirv.lua
index 6122950..6d512a6 100644
--- a/include/spirv/unified1/spirv.lua
+++ b/include/spirv/unified1/spirv.lua
@@ -44,8 +44,8 @@
spv = {
MagicNumber = 0x07230203,
- Version = 0x00010500,
- Revision = 4,
+ Version = 0x00010600,
+ Revision = 1,
OpCodeMask = 0xffff,
WordCountShift = 16,
@@ -332,6 +332,7 @@
VolatileTexelKHR = 11,
SignExtend = 12,
ZeroExtend = 13,
+ Nontemporal = 14,
Offsets = 16,
},
@@ -355,6 +356,7 @@
VolatileTexelKHR = 0x00000800,
SignExtend = 0x00001000,
ZeroExtend = 0x00002000,
+ Nontemporal = 0x00004000,
Offsets = 0x00010000,
},
@@ -467,6 +469,7 @@
PerPrimitiveNV = 5271,
PerViewNV = 5272,
PerTaskNV = 5273,
+ PerVertexKHR = 5285,
PerVertexNV = 5285,
NonUniform = 5300,
NonUniformEXT = 5300,
@@ -512,6 +515,8 @@
PrefetchINTEL = 5902,
StallEnableINTEL = 5905,
FuseLoopsInFunctionINTEL = 5907,
+ AliasScopeINTEL = 5914,
+ NoAliasINTEL = 5915,
BufferLocationINTEL = 5921,
IOPipeStorageINTEL = 5944,
FunctionFloatingPointModeINTEL = 6080,
@@ -601,7 +606,9 @@
LayerPerViewNV = 5279,
MeshViewCountNV = 5280,
MeshViewIndicesNV = 5281,
+ BaryCoordKHR = 5286,
BaryCoordNV = 5286,
+ BaryCoordNoPerspKHR = 5287,
BaryCoordNoPerspNV = 5287,
FragSizeEXT = 5292,
FragmentSizeNV = 5292,
@@ -762,6 +769,8 @@
MakePointerVisibleKHR = 4,
NonPrivatePointer = 5,
NonPrivatePointerKHR = 5,
+ AliasScopeINTELMask = 16,
+ NoAliasINTELMask = 17,
},
MemoryAccessMask = {
@@ -775,6 +784,8 @@
MakePointerVisibleKHR = 0x00000010,
NonPrivatePointer = 0x00000020,
NonPrivatePointerKHR = 0x00000020,
+ AliasScopeINTELMask = 0x00010000,
+ NoAliasINTELMask = 0x00020000,
},
Scope = {
@@ -883,6 +894,7 @@
GroupNonUniformQuad = 68,
ShaderLayer = 69,
ShaderViewportIndex = 70,
+ UniformDecoration = 71,
FragmentShadingRateKHR = 4422,
SubgroupBallotKHR = 4423,
DrawParameters = 4427,
@@ -931,6 +943,7 @@
FragmentFullyCoveredEXT = 5265,
MeshShadingNV = 5266,
ImageFootprintNV = 5282,
+ FragmentBarycentricKHR = 5284,
FragmentBarycentricNV = 5284,
ComputeDerivativeGroupQuadsNV = 5288,
FragmentDensityEXT = 5291,
@@ -975,6 +988,7 @@
FragmentShaderShadingRateInterlockEXT = 5372,
ShaderSMBuiltinsNV = 5373,
FragmentShaderPixelInterlockEXT = 5378,
+ DemoteToHelperInvocation = 5379,
DemoteToHelperInvocationEXT = 5379,
BindlessTextureNV = 5390,
SubgroupShuffleINTEL = 5568,
@@ -1009,15 +1023,20 @@
FPGAMemoryAccessesINTEL = 5898,
FPGAClusterAttributesINTEL = 5904,
LoopFuseINTEL = 5906,
+ MemoryAccessAliasingINTEL = 5910,
FPGABufferLocationINTEL = 5920,
ArbitraryPrecisionFixedPointINTEL = 5922,
USMStorageClassesINTEL = 5935,
IOPipesINTEL = 5943,
BlockingPipesINTEL = 5945,
FPGARegINTEL = 5948,
+ DotProductInputAll = 6016,
DotProductInputAllKHR = 6016,
+ DotProductInput4x8Bit = 6017,
DotProductInput4x8BitKHR = 6017,
+ DotProductInput4x8BitPacked = 6018,
DotProductInput4x8BitPackedKHR = 6018,
+ DotProduct = 6019,
DotProductKHR = 6019,
BitInstructions = 6025,
AtomicFloat32AddEXT = 6033,
@@ -1115,6 +1134,7 @@
},
PackedVectorFormat = {
+ PackedVectorFormat4x8Bit = 0,
PackedVectorFormat4x8BitKHR = 0,
},
@@ -1475,11 +1495,17 @@
OpConvertUToAccelerationStructureKHR = 4447,
OpIgnoreIntersectionKHR = 4448,
OpTerminateRayKHR = 4449,
+ OpSDot = 4450,
OpSDotKHR = 4450,
+ OpUDot = 4451,
OpUDotKHR = 4451,
+ OpSUDot = 4452,
OpSUDotKHR = 4452,
+ OpSDotAccSat = 4453,
OpSDotAccSatKHR = 4453,
+ OpUDotAccSat = 4454,
OpUDotAccSatKHR = 4454,
+ OpSUDotAccSat = 4455,
OpSUDotAccSatKHR = 4455,
OpTypeRayQueryKHR = 4472,
OpRayQueryInitializeKHR = 4473,
@@ -1519,6 +1545,7 @@
OpCooperativeMatrixLengthNV = 5362,
OpBeginInvocationInterlockEXT = 5364,
OpEndInvocationInterlockEXT = 5365,
+ OpDemoteToHelperInvocation = 5380,
OpDemoteToHelperInvocationEXT = 5380,
OpIsHelperInvocationEXT = 5381,
OpConvertUToImageNV = 5391,
@@ -1728,6 +1755,9 @@
OpArbitraryFloatPowRINTEL = 5881,
OpArbitraryFloatPowNINTEL = 5882,
OpLoopControlINTEL = 5887,
+ OpAliasDomainDeclINTEL = 5911,
+ OpAliasScopeDeclINTEL = 5912,
+ OpAliasScopeListDeclINTEL = 5913,
OpFixedSqrtINTEL = 5923,
OpFixedRecipINTEL = 5924,
OpFixedRsqrtINTEL = 5925,
diff --git a/include/spirv/unified1/spirv.py b/include/spirv/unified1/spirv.py
index f1cc37a..66cde27 100644
--- a/include/spirv/unified1/spirv.py
+++ b/include/spirv/unified1/spirv.py
@@ -44,8 +44,8 @@
spv = {
'MagicNumber' : 0x07230203,
- 'Version' : 0x00010500,
- 'Revision' : 4,
+ 'Version' : 0x00010600,
+ 'Revision' : 1,
'OpCodeMask' : 0xffff,
'WordCountShift' : 16,
@@ -332,6 +332,7 @@
'VolatileTexelKHR' : 11,
'SignExtend' : 12,
'ZeroExtend' : 13,
+ 'Nontemporal' : 14,
'Offsets' : 16,
},
@@ -355,6 +356,7 @@
'VolatileTexelKHR' : 0x00000800,
'SignExtend' : 0x00001000,
'ZeroExtend' : 0x00002000,
+ 'Nontemporal' : 0x00004000,
'Offsets' : 0x00010000,
},
@@ -467,6 +469,7 @@
'PerPrimitiveNV' : 5271,
'PerViewNV' : 5272,
'PerTaskNV' : 5273,
+ 'PerVertexKHR' : 5285,
'PerVertexNV' : 5285,
'NonUniform' : 5300,
'NonUniformEXT' : 5300,
@@ -512,6 +515,8 @@
'PrefetchINTEL' : 5902,
'StallEnableINTEL' : 5905,
'FuseLoopsInFunctionINTEL' : 5907,
+ 'AliasScopeINTEL' : 5914,
+ 'NoAliasINTEL' : 5915,
'BufferLocationINTEL' : 5921,
'IOPipeStorageINTEL' : 5944,
'FunctionFloatingPointModeINTEL' : 6080,
@@ -601,7 +606,9 @@
'LayerPerViewNV' : 5279,
'MeshViewCountNV' : 5280,
'MeshViewIndicesNV' : 5281,
+ 'BaryCoordKHR' : 5286,
'BaryCoordNV' : 5286,
+ 'BaryCoordNoPerspKHR' : 5287,
'BaryCoordNoPerspNV' : 5287,
'FragSizeEXT' : 5292,
'FragmentSizeNV' : 5292,
@@ -762,6 +769,8 @@
'MakePointerVisibleKHR' : 4,
'NonPrivatePointer' : 5,
'NonPrivatePointerKHR' : 5,
+ 'AliasScopeINTELMask' : 16,
+ 'NoAliasINTELMask' : 17,
},
'MemoryAccessMask' : {
@@ -775,6 +784,8 @@
'MakePointerVisibleKHR' : 0x00000010,
'NonPrivatePointer' : 0x00000020,
'NonPrivatePointerKHR' : 0x00000020,
+ 'AliasScopeINTELMask' : 0x00010000,
+ 'NoAliasINTELMask' : 0x00020000,
},
'Scope' : {
@@ -883,6 +894,7 @@
'GroupNonUniformQuad' : 68,
'ShaderLayer' : 69,
'ShaderViewportIndex' : 70,
+ 'UniformDecoration' : 71,
'FragmentShadingRateKHR' : 4422,
'SubgroupBallotKHR' : 4423,
'DrawParameters' : 4427,
@@ -931,6 +943,7 @@
'FragmentFullyCoveredEXT' : 5265,
'MeshShadingNV' : 5266,
'ImageFootprintNV' : 5282,
+ 'FragmentBarycentricKHR' : 5284,
'FragmentBarycentricNV' : 5284,
'ComputeDerivativeGroupQuadsNV' : 5288,
'FragmentDensityEXT' : 5291,
@@ -975,6 +988,7 @@
'FragmentShaderShadingRateInterlockEXT' : 5372,
'ShaderSMBuiltinsNV' : 5373,
'FragmentShaderPixelInterlockEXT' : 5378,
+ 'DemoteToHelperInvocation' : 5379,
'DemoteToHelperInvocationEXT' : 5379,
'BindlessTextureNV' : 5390,
'SubgroupShuffleINTEL' : 5568,
@@ -1009,15 +1023,20 @@
'FPGAMemoryAccessesINTEL' : 5898,
'FPGAClusterAttributesINTEL' : 5904,
'LoopFuseINTEL' : 5906,
+ 'MemoryAccessAliasingINTEL' : 5910,
'FPGABufferLocationINTEL' : 5920,
'ArbitraryPrecisionFixedPointINTEL' : 5922,
'USMStorageClassesINTEL' : 5935,
'IOPipesINTEL' : 5943,
'BlockingPipesINTEL' : 5945,
'FPGARegINTEL' : 5948,
+ 'DotProductInputAll' : 6016,
'DotProductInputAllKHR' : 6016,
+ 'DotProductInput4x8Bit' : 6017,
'DotProductInput4x8BitKHR' : 6017,
+ 'DotProductInput4x8BitPacked' : 6018,
'DotProductInput4x8BitPackedKHR' : 6018,
+ 'DotProduct' : 6019,
'DotProductKHR' : 6019,
'BitInstructions' : 6025,
'AtomicFloat32AddEXT' : 6033,
@@ -1115,6 +1134,7 @@
},
'PackedVectorFormat' : {
+ 'PackedVectorFormat4x8Bit' : 0,
'PackedVectorFormat4x8BitKHR' : 0,
},
@@ -1475,11 +1495,17 @@
'OpConvertUToAccelerationStructureKHR' : 4447,
'OpIgnoreIntersectionKHR' : 4448,
'OpTerminateRayKHR' : 4449,
+ 'OpSDot' : 4450,
'OpSDotKHR' : 4450,
+ 'OpUDot' : 4451,
'OpUDotKHR' : 4451,
+ 'OpSUDot' : 4452,
'OpSUDotKHR' : 4452,
+ 'OpSDotAccSat' : 4453,
'OpSDotAccSatKHR' : 4453,
+ 'OpUDotAccSat' : 4454,
'OpUDotAccSatKHR' : 4454,
+ 'OpSUDotAccSat' : 4455,
'OpSUDotAccSatKHR' : 4455,
'OpTypeRayQueryKHR' : 4472,
'OpRayQueryInitializeKHR' : 4473,
@@ -1519,6 +1545,7 @@
'OpCooperativeMatrixLengthNV' : 5362,
'OpBeginInvocationInterlockEXT' : 5364,
'OpEndInvocationInterlockEXT' : 5365,
+ 'OpDemoteToHelperInvocation' : 5380,
'OpDemoteToHelperInvocationEXT' : 5380,
'OpIsHelperInvocationEXT' : 5381,
'OpConvertUToImageNV' : 5391,
@@ -1728,6 +1755,9 @@
'OpArbitraryFloatPowRINTEL' : 5881,
'OpArbitraryFloatPowNINTEL' : 5882,
'OpLoopControlINTEL' : 5887,
+ 'OpAliasDomainDeclINTEL' : 5911,
+ 'OpAliasScopeDeclINTEL' : 5912,
+ 'OpAliasScopeListDeclINTEL' : 5913,
'OpFixedSqrtINTEL' : 5923,
'OpFixedRecipINTEL' : 5924,
'OpFixedRsqrtINTEL' : 5925,
diff --git a/include/spirv/unified1/spv.d b/include/spirv/unified1/spv.d
index 5ed86eb..c9b443c 100644
--- a/include/spirv/unified1/spv.d
+++ b/include/spirv/unified1/spv.d
@@ -51,8 +51,8 @@
module spv;
enum uint MagicNumber = 0x07230203;
-enum uint Version = 0x00010500;
-enum uint Revision = 4;
+enum uint Version = 0x00010600;
+enum uint Revision = 1;
enum uint OpCodeMask = 0xffff;
enum uint WordCountShift = 16;
@@ -352,6 +352,7 @@
VolatileTexelKHR = 11,
SignExtend = 12,
ZeroExtend = 13,
+ Nontemporal = 14,
Offsets = 16,
}
@@ -376,6 +377,7 @@
VolatileTexelKHR = 0x00000800,
SignExtend = 0x00001000,
ZeroExtend = 0x00002000,
+ Nontemporal = 0x00004000,
Offsets = 0x00010000,
}
@@ -495,6 +497,7 @@
PerPrimitiveNV = 5271,
PerViewNV = 5272,
PerTaskNV = 5273,
+ PerVertexKHR = 5285,
PerVertexNV = 5285,
NonUniform = 5300,
NonUniformEXT = 5300,
@@ -540,6 +543,8 @@
PrefetchINTEL = 5902,
StallEnableINTEL = 5905,
FuseLoopsInFunctionINTEL = 5907,
+ AliasScopeINTEL = 5914,
+ NoAliasINTEL = 5915,
BufferLocationINTEL = 5921,
IOPipeStorageINTEL = 5944,
FunctionFloatingPointModeINTEL = 6080,
@@ -630,7 +635,9 @@
LayerPerViewNV = 5279,
MeshViewCountNV = 5280,
MeshViewIndicesNV = 5281,
+ BaryCoordKHR = 5286,
BaryCoordNV = 5286,
+ BaryCoordNoPerspKHR = 5287,
BaryCoordNoPerspNV = 5287,
FragSizeEXT = 5292,
FragmentSizeNV = 5292,
@@ -800,6 +807,8 @@
MakePointerVisibleKHR = 4,
NonPrivatePointer = 5,
NonPrivatePointerKHR = 5,
+ AliasScopeINTELMask = 16,
+ NoAliasINTELMask = 17,
}
enum MemoryAccessMask : uint
@@ -814,6 +823,8 @@
MakePointerVisibleKHR = 0x00000010,
NonPrivatePointer = 0x00000020,
NonPrivatePointerKHR = 0x00000020,
+ AliasScopeINTELMask = 0x00010000,
+ NoAliasINTELMask = 0x00020000,
}
enum Scope : uint
@@ -928,6 +939,7 @@
GroupNonUniformQuad = 68,
ShaderLayer = 69,
ShaderViewportIndex = 70,
+ UniformDecoration = 71,
FragmentShadingRateKHR = 4422,
SubgroupBallotKHR = 4423,
DrawParameters = 4427,
@@ -976,6 +988,7 @@
FragmentFullyCoveredEXT = 5265,
MeshShadingNV = 5266,
ImageFootprintNV = 5282,
+ FragmentBarycentricKHR = 5284,
FragmentBarycentricNV = 5284,
ComputeDerivativeGroupQuadsNV = 5288,
FragmentDensityEXT = 5291,
@@ -1020,6 +1033,7 @@
FragmentShaderShadingRateInterlockEXT = 5372,
ShaderSMBuiltinsNV = 5373,
FragmentShaderPixelInterlockEXT = 5378,
+ DemoteToHelperInvocation = 5379,
DemoteToHelperInvocationEXT = 5379,
BindlessTextureNV = 5390,
SubgroupShuffleINTEL = 5568,
@@ -1054,15 +1068,20 @@
FPGAMemoryAccessesINTEL = 5898,
FPGAClusterAttributesINTEL = 5904,
LoopFuseINTEL = 5906,
+ MemoryAccessAliasingINTEL = 5910,
FPGABufferLocationINTEL = 5920,
ArbitraryPrecisionFixedPointINTEL = 5922,
USMStorageClassesINTEL = 5935,
IOPipesINTEL = 5943,
BlockingPipesINTEL = 5945,
FPGARegINTEL = 5948,
+ DotProductInputAll = 6016,
DotProductInputAllKHR = 6016,
+ DotProductInput4x8Bit = 6017,
DotProductInput4x8BitKHR = 6017,
+ DotProductInput4x8BitPacked = 6018,
DotProductInput4x8BitPackedKHR = 6018,
+ DotProduct = 6019,
DotProductKHR = 6019,
BitInstructions = 6025,
AtomicFloat32AddEXT = 6033,
@@ -1172,6 +1191,7 @@
enum PackedVectorFormat : uint
{
+ PackedVectorFormat4x8Bit = 0,
PackedVectorFormat4x8BitKHR = 0,
}
@@ -1533,11 +1553,17 @@
OpConvertUToAccelerationStructureKHR = 4447,
OpIgnoreIntersectionKHR = 4448,
OpTerminateRayKHR = 4449,
+ OpSDot = 4450,
OpSDotKHR = 4450,
+ OpUDot = 4451,
OpUDotKHR = 4451,
+ OpSUDot = 4452,
OpSUDotKHR = 4452,
+ OpSDotAccSat = 4453,
OpSDotAccSatKHR = 4453,
+ OpUDotAccSat = 4454,
OpUDotAccSatKHR = 4454,
+ OpSUDotAccSat = 4455,
OpSUDotAccSatKHR = 4455,
OpTypeRayQueryKHR = 4472,
OpRayQueryInitializeKHR = 4473,
@@ -1577,6 +1603,7 @@
OpCooperativeMatrixLengthNV = 5362,
OpBeginInvocationInterlockEXT = 5364,
OpEndInvocationInterlockEXT = 5365,
+ OpDemoteToHelperInvocation = 5380,
OpDemoteToHelperInvocationEXT = 5380,
OpIsHelperInvocationEXT = 5381,
OpConvertUToImageNV = 5391,
@@ -1786,6 +1813,9 @@
OpArbitraryFloatPowRINTEL = 5881,
OpArbitraryFloatPowNINTEL = 5882,
OpLoopControlINTEL = 5887,
+ OpAliasDomainDeclINTEL = 5911,
+ OpAliasScopeDeclINTEL = 5912,
+ OpAliasScopeListDeclINTEL = 5913,
OpFixedSqrtINTEL = 5923,
OpFixedRecipINTEL = 5924,
OpFixedRsqrtINTEL = 5925,
diff --git a/tools/buildHeaders/header.cpp b/tools/buildHeaders/header.cpp
index dc780ef..febc6f2 100644
--- a/tools/buildHeaders/header.cpp
+++ b/tools/buildHeaders/header.cpp
@@ -69,9 +69,9 @@
TPrinter();
static const int DocMagicNumber = 0x07230203;
- static const int DocVersion = 0x00010500;
- static const int DocRevision = 4;
- #define DocRevisionString "4"
+ static const int DocVersion = 0x00010600;
+ static const int DocRevision = 1;
+ #define DocRevisionString "1"
static const std::string DocCopyright;
static const std::string DocComment1;
static const std::string DocComment2;