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;