[Mesa-dev] [PATCH 03/10] spirv: Import the latest 1.0.12 header and JSON from Khronos

Ian Romanick idr at freedesktop.org
Fri Nov 10 22:32:43 UTC 2017


From: Ian Romanick <ian.d.romanick at intel.com>

Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
---
 src/compiler/spirv/spirv.core.grammar.json | 417 ++++++++++++-----------------
 src/compiler/spirv/spirv.h                 |  56 ++--
 2 files changed, 201 insertions(+), 272 deletions(-)

diff --git a/src/compiler/spirv/spirv.core.grammar.json b/src/compiler/spirv/spirv.core.grammar.json
index e2950dd..f05be1c 100644
--- a/src/compiler/spirv/spirv.core.grammar.json
+++ b/src/compiler/spirv/spirv.core.grammar.json
@@ -26,8 +26,8 @@
   ],
   "magic_number" : "0x07230203",
   "major_version" : 1,
-  "minor_version" : 2,
-  "revision" : 1,
+  "minor_version" : 0,
+  "revision" : 12,
   "instructions" : [
     {
       "opname" : "OpNop",
@@ -2410,7 +2410,7 @@
         { "kind" : "IdResult" },
         { "kind" : "IdScope",        "name" : "'Execution'" },
         { "kind" : "GroupOperation", "name" : "'Operation'" },
-        { "kind" : "IdRef",          "name" : "X" }
+        { "kind" : "IdRef",          "name" : "'X'" }
       ],
       "capabilities" : [ "Groups" ]
     },
@@ -2434,7 +2434,7 @@
         { "kind" : "IdResult" },
         { "kind" : "IdScope",        "name" : "'Execution'" },
         { "kind" : "GroupOperation", "name" : "'Operation'" },
-        { "kind" : "IdRef",          "name" : "X" }
+        { "kind" : "IdRef",          "name" : "'X'" }
       ],
       "capabilities" : [ "Groups" ]
     },
@@ -2446,7 +2446,7 @@
         { "kind" : "IdResult" },
         { "kind" : "IdScope",        "name" : "'Execution'" },
         { "kind" : "GroupOperation", "name" : "'Operation'" },
-        { "kind" : "IdRef",          "name" : "X" }
+        { "kind" : "IdRef",          "name" : "'X'" }
       ],
       "capabilities" : [ "Groups" ]
     },
@@ -2458,7 +2458,7 @@
         { "kind" : "IdResult" },
         { "kind" : "IdScope",        "name" : "'Execution'" },
         { "kind" : "GroupOperation", "name" : "'Operation'" },
-        { "kind" : "IdRef",          "name" : "X" }
+        { "kind" : "IdRef",          "name" : "'X'" }
       ],
       "capabilities" : [ "Groups" ]
     },
@@ -2470,7 +2470,7 @@
         { "kind" : "IdResult" },
         { "kind" : "IdScope",        "name" : "'Execution'" },
         { "kind" : "GroupOperation", "name" : "'Operation'" },
-        { "kind" : "IdRef",          "name" : "X" }
+        { "kind" : "IdRef",          "name" : "'X'" }
       ],
       "capabilities" : [ "Groups" ]
     },
@@ -3013,124 +3013,6 @@
       "capabilities" : [ "SparseResidency" ]
     },
     {
-      "opname" : "OpSizeOf",
-      "opcode" : 321,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef",        "name" : "'Pointer'" }
-      ],
-      "capabilities" : [ "Addresses" ]
-    },
-    {
-      "opname" : "OpTypePipeStorage",
-      "opcode" : 322,
-      "operands" : [
-        { "kind" : "IdResult" }
-      ],
-      "capabilities" : [ "PipeStorage" ]
-    },
-    {
-      "opname" : "OpConstantPipeStorage",
-      "opcode" : 323,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "LiteralInteger", "name" : "'Packet Size'" },
-        { "kind" : "LiteralInteger", "name" : "'Packet Alignment'" },
-        { "kind" : "LiteralInteger", "name" : "'Capacity'" }
-      ],
-      "capabilities" : [ "PipeStorage" ]
-    },
-    {
-      "opname" : "OpCreatePipeFromPipeStorage",
-      "opcode" : 324,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef",        "name" : "'Pipe Storage'" }
-      ],
-      "capabilities" : [ "PipeStorage" ]
-    },
-    {
-      "opname" : "OpGetKernelLocalSizeForSubgroupCount",
-      "opcode" : 325,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef",        "name" : "'Subgroup Count'" },
-        { "kind" : "IdRef",        "name" : "'Invoke'" },
-        { "kind" : "IdRef",        "name" : "'Param'" },
-        { "kind" : "IdRef",        "name" : "'Param Size'" },
-        { "kind" : "IdRef",        "name" : "'Param Align'" }
-      ],
-      "capabilities" : [ "SubgroupDispatch" ]
-    },
-    {
-      "opname" : "OpGetKernelMaxNumSubgroups",
-      "opcode" : 326,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef",        "name" : "'Invoke'" },
-        { "kind" : "IdRef",        "name" : "'Param'" },
-        { "kind" : "IdRef",        "name" : "'Param Size'" },
-        { "kind" : "IdRef",        "name" : "'Param Align'" }
-      ],
-      "capabilities" : [ "SubgroupDispatch" ]
-    },
-    {
-      "opname" : "OpTypeNamedBarrier",
-      "opcode" : 327,
-      "operands" : [
-        { "kind" : "IdResult" }
-      ],
-      "capabilities" : [ "NamedBarrier" ]
-    },
-    {
-      "opname" : "OpNamedBarrierInitialize",
-      "opcode" : 328,
-      "operands" : [
-        { "kind" : "IdResultType" },
-        { "kind" : "IdResult" },
-        { "kind" : "IdRef",        "name" : "'Subgroup Count'" }
-      ],
-      "capabilities" : [ "NamedBarrier" ]
-    },
-    {
-      "opname" : "OpMemoryNamedBarrier",
-      "opcode" : 329,
-      "operands" : [
-        { "kind" : "IdRef",             "name" : "'Named Barrier'" },
-        { "kind" : "IdScope",           "name" : "'Memory'" },
-        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
-      ],
-      "capabilities" : [ "NamedBarrier" ]
-    },
-    {
-      "opname" : "OpModuleProcessed",
-      "opcode" : 330,
-      "operands" : [
-        { "kind" : "LiteralString", "name" : "'Process'" }
-      ]
-    },
-    {
-      "opname" : "OpExecutionModeId",
-      "opcode" : 331,
-      "operands" : [
-        { "kind" : "IdRef",           "name" : "'Entry Point'" },
-        { "kind" : "ExecutionMode",   "name" : "'Mode'" }
-      ]
-    },
-    {
-      "opname" : "OpDecorateId",
-      "opcode" : 332,
-      "operands" : [
-        { "kind" : "IdRef",      "name" : "'Target'" },
-        { "kind" : "Decoration" }
-      ]
-    },
-    {
       "opname" : "OpSubgroupBallotKHR",
       "opcode" : 4421,
       "operands" : [
@@ -3223,7 +3105,7 @@
         { "kind" : "IdResult" },
         { "kind" : "IdScope",        "name" : "'Execution'" },
         { "kind" : "GroupOperation", "name" : "'Operation'" },
-        { "kind" : "IdRef",          "name" : "X" }
+        { "kind" : "IdRef",          "name" : "'X'" }
       ],
       "capabilities" : [ "Groups" ]
     },
@@ -3247,7 +3129,7 @@
         { "kind" : "IdResult" },
         { "kind" : "IdScope",        "name" : "'Execution'" },
         { "kind" : "GroupOperation", "name" : "'Operation'" },
-        { "kind" : "IdRef",          "name" : "X" }
+        { "kind" : "IdRef",          "name" : "'X'" }
       ],
       "capabilities" : [ "Groups" ]
     },
@@ -3259,7 +3141,7 @@
         { "kind" : "IdResult" },
         { "kind" : "IdScope",        "name" : "'Execution'" },
         { "kind" : "GroupOperation", "name" : "'Operation'" },
-        { "kind" : "IdRef",          "name" : "X" }
+        { "kind" : "IdRef",          "name" : "'X'" }
       ],
       "capabilities" : [ "Groups" ]
     },
@@ -3271,7 +3153,7 @@
         { "kind" : "IdResult" },
         { "kind" : "IdScope",        "name" : "'Execution'" },
         { "kind" : "GroupOperation", "name" : "'Operation'" },
-        { "kind" : "IdRef",          "name" : "X" }
+        { "kind" : "IdRef",          "name" : "'X'" }
       ],
       "capabilities" : [ "Groups" ]
     },
@@ -3283,9 +3165,118 @@
         { "kind" : "IdResult" },
         { "kind" : "IdScope",        "name" : "'Execution'" },
         { "kind" : "GroupOperation", "name" : "'Operation'" },
-        { "kind" : "IdRef",          "name" : "X" }
+        { "kind" : "IdRef",          "name" : "'X'" }
       ],
       "capabilities" : [ "Groups" ]
+    },
+    {
+      "opname" : "OpFragmentMaskFetchAMD",
+      "opcode" : 5011,
+      "operands" : [
+        { "kind" : "IdResultType" },
+        { "kind" : "IdResult" },
+        { "kind" : "IdRef", "name" : "'Image'" },
+        { "kind" : "IdRef", "name" : "'Coordinate'" }
+      ],
+      "capabilities" : [ "FragmentMaskAMD" ]
+    },
+    {
+      "opname" : "OpFragmentFetchAMD",
+      "opcode" : 5012,
+      "operands" : [
+        { "kind" : "IdResultType" },
+        { "kind" : "IdResult" },
+        { "kind" : "IdRef", "name" : "'Image'" },
+        { "kind" : "IdRef", "name" : "'Coordinate'" },
+        { "kind" : "IdRef", "name" : "'Fragment Index'" }
+      ],
+      "capabilities" : [ "FragmentMaskAMD" ]
+    },
+    {
+      "opname" : "OpSubgroupShuffleINTEL",
+      "opcode" : 5571,
+      "operands" : [
+        { "kind" : "IdResultType" },
+        { "kind" : "IdResult" },
+        { "kind" : "IdRef", "name" : "'Data'" },
+        { "kind" : "IdRef", "name" : "'InvocationId'" }
+      ],
+      "capabilities" : [ "SubgroupShuffleINTEL" ]
+    },
+    {
+      "opname" : "OpSubgroupShuffleDownINTEL",
+      "opcode" : 5572,
+      "operands" : [
+        { "kind" : "IdResultType" },
+        { "kind" : "IdResult" },
+        { "kind" : "IdRef", "name" : "'Current'" },
+        { "kind" : "IdRef", "name" : "'Next'" },
+        { "kind" : "IdRef", "name" : "'Delta'" }
+      ],
+      "capabilities" : [ "SubgroupShuffleINTEL" ]
+    },
+    {
+      "opname" : "OpSubgroupShuffleUpINTEL",
+      "opcode" : 5573,
+      "operands" : [
+        { "kind" : "IdResultType" },
+        { "kind" : "IdResult" },
+        { "kind" : "IdRef", "name" : "'Previous'" },
+        { "kind" : "IdRef", "name" : "'Current'" },
+        { "kind" : "IdRef", "name" : "'Delta'" }
+      ],
+      "capabilities" : [ "SubgroupShuffleINTEL" ]
+    },
+    {
+      "opname" : "OpSubgroupShuffleXorINTEL",
+      "opcode" : 5574,
+      "operands" : [
+        { "kind" : "IdResultType" },
+        { "kind" : "IdResult" },
+        { "kind" : "IdRef", "name" : "'Data'" },
+        { "kind" : "IdRef", "name" : "'Value'" }
+      ],
+      "capabilities" : [ "SubgroupShuffleINTEL" ]
+    },
+    {
+      "opname" : "OpSubgroupBlockReadINTEL",
+      "opcode" : 5575,
+      "operands" : [
+        { "kind" : "IdResultType" },
+        { "kind" : "IdResult" },
+        { "kind" : "IdRef", "name" : "'Ptr'" }
+      ],
+      "capabilities" : [ "SubgroupBufferBlockIOINTEL" ]
+    },
+    {
+      "opname" : "OpSubgroupBlockWriteINTEL",
+      "opcode" : 5576,
+      "operands" : [
+        { "kind" : "IdRef", "name" : "'Ptr'" },
+        { "kind" : "IdRef", "name" : "'Data'" }
+      ],
+      "capabilities" : [ "SubgroupBufferBlockIOINTEL" ]
+    },
+    {
+      "opname" : "OpSubgroupImageBlockReadINTEL",
+      "opcode" : 5577,
+      "operands" : [
+        { "kind" : "IdResultType" },
+        { "kind" : "IdResult" },
+        { "kind" : "IdRef", "name" : "'Image'" },
+        { "kind" : "IdRef", "name" : "'Coordinate'" }
+      ],
+      "capabilities" : [ "SubgroupImageBlockIOINTEL" ]
+    },
+    {
+      "opname" : "OpSubgroupImageBlockWriteINTEL",
+      "opcode" : 5578,
+      "operands" : [
+        { "kind" : "IdRef", "name" : "'Image'" },
+        { "kind" : "IdRef", "name" : "'Coordinate'" },
+        { "kind" : "IdRef", "name" : "'Data'" }
+      ],
+      "capabilities" : [ "SubgroupImageBlockIOINTEL" ]
     }
   ],
   "operand_kinds" : [
@@ -3427,18 +3418,6 @@
         {
           "enumerant" : "DontUnroll",
           "value" : "0x0002"
-        },
-        {
-          "enumerant" : "DependencyInfinite",
-          "value" : "0x0004"
-        },
-        {
-          "enumerant" : "DependencyLength",
-          "value" : "0x0008",
-          "parameters" : [
-            { "kind" : "LiteralInteger" }
-          ]
-
         }
       ]
     },
@@ -3854,60 +3833,14 @@
           "capabilities" : [ "Kernel" ]
         },
         {
-          "enumerant" : "Initializer",
-          "value" : 33,
-          "capabilities" : [ "Kernel" ]
-        },
-        {
-          "enumerant" : "Finalizer",
-          "value" : 34,
-          "capabilities" : [ "Kernel" ]
-        },
-        {
-          "enumerant" : "SubgroupSize",
-          "value" : 35,
-          "capabilities" : [ "SubgroupDispatch" ],
-          "parameters" : [
-            { "kind" : "LiteralInteger", "name" : "'Subgroup Size'" }
-          ]
-        },
-        {
-          "enumerant" : "SubgroupsPerWorkgroup",
-          "value" : 36,
-          "capabilities" : [ "SubgroupDispatch" ],
-          "parameters" : [
-            { "kind" : "LiteralInteger", "name" : "'Subgroups Per Workgroup'" }
-          ]
-        },
-        {
-          "enumerant" : "SubgroupsPerWorkgroupId",
-          "value" : 37,
-          "capabilities" : [ "SubgroupDispatch" ],
-          "parameters" : [
-            { "kind" : "IdRef", "name" : "'Subgroups Per Workgroup'" }
-          ]
-        },
-        {
-          "enumerant" : "LocalSizeId",
-          "value" : 38,
-          "parameters" : [
-            { "kind" : "IdRef", "name" : "'x size'" },
-            { "kind" : "IdRef", "name" : "'y size'" },
-            { "kind" : "IdRef", "name" : "'z size'" }
-          ]
-        },
-        {
-          "enumerant" : "LocalSizeHintId",
-          "value" : 39,
-          "capabilities" : [ "Kernel" ],
-          "parameters" : [
-            { "kind" : "IdRef", "name" : "'Local Size Hint'" }
-          ]
-        },
-        {
           "enumerant" : "PostDepthCoverage",
           "value" : 4446,
           "capabilities" : [ "SampleMaskPostDepthCoverage" ]
+        },
+        {
+          "enumerant" : "StencilRefReplacingEXT",
+          "value" : 5027,
+          "capabilities" : [ "StencilExportEXT" ]
         }
       ]
     },
@@ -3975,7 +3908,8 @@
           "extensions" : [
             "SPV_KHR_storage_buffer_storage_class",
             "SPV_KHR_variable_pointers"
-          ]
+          ],
+          "capabilities" : [ "Shader" ]
         }
       ]
     },
@@ -4612,7 +4546,7 @@
         {
           "enumerant" : "SpecId",
           "value" : 1,
-          "capabilities" : [ "Shader", "Kernel" ],
+          "capabilities" : [ "Shader" ],
           "parameters" : [
             { "kind" : "LiteralInteger", "name" : "'Specialization Constant ID'" }
           ]
@@ -4877,30 +4811,6 @@
           ]
         },
         {
-          "enumerant" : "MaxByteOffset",
-          "value" : 45,
-          "capabilities" : [ "Addresses" ],
-          "parameters" : [
-            { "kind" : "LiteralInteger", "name" : "'Max Byte Offset'" }
-          ]
-        },
-        {
-          "enumerant" : "AlignmentId",
-          "value" : 46,
-          "capabilities" : [ "Kernel" ],
-          "parameters" : [
-            { "kind" : "IdRef", "name" : "'Alignment'" }
-          ]
-        },
-        {
-          "enumerant" : "MaxByteOffsetId",
-          "value" : 47,
-          "capabilities" : [ "Addresses" ],
-          "parameters" : [
-            { "kind" : "IdRef", "name" : "'Max Byte Offset'" }
-          ]
-        },
-        {
           "enumerant" : "ExplicitInterpAMD",
           "value" : 4999
         },
@@ -5031,7 +4941,7 @@
         {
           "enumerant" : "SampleMask",
           "value" : 20,
-          "capabilities" : [ "SampleRateShading" ]
+          "capabilities" : [ "Shader" ]
         },
         {
           "enumerant" : "FragDepth",
@@ -5211,6 +5121,11 @@
           "value" : 4998
         },
         {
+          "enumerant" : "FragStencilRefEXT",
+          "value" : 5014,
+          "capabilities" : [ "StencilExportEXT" ]
+        },
+        {
           "enumerant" : "ViewportMaskNV",
           "value" : 5253,
           "capabilities" : [ "ShaderViewportMaskNV" ]
@@ -5579,21 +5494,6 @@
           "capabilities" : [ "Geometry" ]
         },
         {
-          "enumerant" : "SubgroupDispatch",
-          "value" : 58,
-          "capabilities" : [ "DeviceEnqueue" ]
-        },
-        {
-          "enumerant" : "NamedBarrier",
-          "value" : 59,
-          "capabilities" : [ "Kernel" ]
-        },
-        {
-          "enumerant" : "PipeStorage",
-          "value" : 60,
-          "capabilities" : [ "Pipes" ]
-        },
-        {
           "enumerant" : "SubgroupBallotKHR",
           "value" : 4423,
           "extensions" : [ "SPV_KHR_shader_ballot" ]
@@ -5669,14 +5569,14 @@
           "capabilities" : [ "VariablePointersStorageBuffer" ],
           "extensions" : [ "SPV_KHR_variable_pointers" ]
         },
-        {          "enumerant" : "AtomicStorageOps",
-          "value" : 4445,
-          "extensions" : [ "SPV_KHR_shader_atomic_counter_ops" ]
+        {
+            "enumerant": "AtomicStorageOps",
+            "value": 4445,
+            "extensions": [ "SPV_KHR_shader_atomic_counter_ops" ]
         },
         {
           "enumerant" : "SampleMaskPostDepthCoverage",
           "value" : 4447,
-          "capabilities" : [ "SampleRateShading" ],
           "extensions" : [ "SPV_KHR_post_depth_coverage" ]
         },
         {
@@ -5686,6 +5586,24 @@
           "extensions" : [ "SPV_AMD_texture_gather_bias_lod" ]
         },
         {
+          "enumerant" : "FragmentMaskAMD",
+          "value" : 5010,
+          "capabilities" : [ "Shader" ],
+          "extensions" : [ "SPV_AMD_shader_fragment_mask" ]
+        },
+        {
+          "enumerant" : "StencilExportEXT",
+          "value" : 5013,
+          "capabilities" : [ "Shader" ],
+          "extensions" : [ "SPV_EXT_shader_stencil_export" ]
+        },
+        {
+          "enumerant" : "ImageReadWriteLodAMD",
+          "value" : 5015,
+          "capabilities" : [ "Shader" ],
+          "extensions" : [ "SPV_AMD_shader_image_load_store_lod" ]
+        },
+        {
           "enumerant" : "SampleMaskOverrideCoverageNV",
           "value" : 5249,
           "capabilities" : [ "SampleRateShading" ],
@@ -5698,6 +5616,12 @@
           "extensions" : [ "SPV_NV_geometry_shader_passthrough" ]
         },
         {
+          "enumerant" : "ShaderViewportIndexLayerEXT",
+          "value" : 5254,
+          "capabilities" : [ "MultiViewport" ],
+          "extensions" : [ "SPV_EXT_shader_viewport_index_layer" ]
+        },
+        {
           "enumerant" : "ShaderViewportIndexLayerNV",
           "value" : 5254,
           "capabilities" : [ "MultiViewport" ],
@@ -5720,6 +5644,21 @@
           "value" : 5260,
           "capabilities" : [ "MultiView" ],
           "extensions" : [ "SPV_NVX_multiview_per_view_attributes" ]
+        },
+        {
+          "enumerant" : "SubgroupShuffleINTEL",
+          "value" : 5568,
+          "extensions" : [ "SPV_INTEL_subgroups" ]
+        },
+        {
+          "enumerant" : "SubgroupBufferBlockIOINTEL",
+          "value" : 5569,
+          "extensions" : [ "SPV_INTEL_subgroups" ]
+        },
+        {
+          "enumerant" : "SubgroupImageBlockIOINTEL",
+          "value" : 5570,
+          "extensions" : [ "SPV_INTEL_subgroups" ]
         }
       ]
     },
diff --git a/src/compiler/spirv/spirv.h b/src/compiler/spirv/spirv.h
index 61559a1..ac38ad7 100644
--- a/src/compiler/spirv/spirv.h
+++ b/src/compiler/spirv/spirv.h
@@ -50,12 +50,12 @@
 
 typedef unsigned int SpvId;
 
-#define SPV_VERSION 0x10200
-#define SPV_REVISION 1
+#define SPV_VERSION 0x10000
+#define SPV_REVISION 12
 
 static const unsigned int SpvMagicNumber = 0x07230203;
-static const unsigned int SpvVersion = 0x00010200;
-static const unsigned int SpvRevision = 1;
+static const unsigned int SpvVersion = 0x00010000;
+static const unsigned int SpvRevision = 12;
 static const unsigned int SpvOpCodeMask = 0xffff;
 static const unsigned int SpvWordCountShift = 16;
 
@@ -126,14 +126,8 @@ typedef enum SpvExecutionMode_ {
     SpvExecutionModeOutputTriangleStrip = 29,
     SpvExecutionModeVecTypeHint = 30,
     SpvExecutionModeContractionOff = 31,
-    SpvExecutionModeInitializer = 33,
-    SpvExecutionModeFinalizer = 34,
-    SpvExecutionModeSubgroupSize = 35,
-    SpvExecutionModeSubgroupsPerWorkgroup = 36,
-    SpvExecutionModeSubgroupsPerWorkgroupId = 37,
-    SpvExecutionModeLocalSizeId = 38,
-    SpvExecutionModeLocalSizeHintId = 39,
     SpvExecutionModePostDepthCoverage = 4446,
+    SpvExecutionModeStencilRefReplacingEXT = 5027,
     SpvExecutionModeMax = 0x7fffffff,
 } SpvExecutionMode;
 
@@ -388,9 +382,6 @@ typedef enum SpvDecoration_ {
     SpvDecorationNoContraction = 42,
     SpvDecorationInputAttachmentIndex = 43,
     SpvDecorationAlignment = 44,
-    SpvDecorationMaxByteOffset = 45,
-    SpvDecorationAlignmentId = 46,
-    SpvDecorationMaxByteOffsetId = 47,
     SpvDecorationExplicitInterpAMD = 4999,
     SpvDecorationOverrideCoverageNV = 5248,
     SpvDecorationPassthroughNV = 5250,
@@ -458,6 +449,7 @@ typedef enum SpvBuiltIn_ {
     SpvBuiltInBaryCoordSmoothCentroidAMD = 4996,
     SpvBuiltInBaryCoordSmoothSampleAMD = 4997,
     SpvBuiltInBaryCoordPullModelAMD = 4998,
+    SpvBuiltInFragStencilRefEXT = 5014,
     SpvBuiltInViewportMaskNV = 5253,
     SpvBuiltInSecondaryPositionNV = 5257,
     SpvBuiltInSecondaryViewportMaskNV = 5258,
@@ -481,8 +473,6 @@ typedef enum SpvSelectionControlMask_ {
 typedef enum SpvLoopControlShift_ {
     SpvLoopControlUnrollShift = 0,
     SpvLoopControlDontUnrollShift = 1,
-    SpvLoopControlDependencyInfiniteShift = 2,
-    SpvLoopControlDependencyLengthShift = 3,
     SpvLoopControlMax = 0x7fffffff,
 } SpvLoopControlShift;
 
@@ -490,8 +480,6 @@ typedef enum SpvLoopControlMask_ {
     SpvLoopControlMaskNone = 0,
     SpvLoopControlUnrollMask = 0x00000001,
     SpvLoopControlDontUnrollMask = 0x00000002,
-    SpvLoopControlDependencyInfiniteMask = 0x00000004,
-    SpvLoopControlDependencyLengthMask = 0x00000008,
 } SpvLoopControlMask;
 
 typedef enum SpvFunctionControlShift_ {
@@ -642,9 +630,6 @@ typedef enum SpvCapability_ {
     SpvCapabilityStorageImageReadWithoutFormat = 55,
     SpvCapabilityStorageImageWriteWithoutFormat = 56,
     SpvCapabilityMultiViewport = 57,
-    SpvCapabilitySubgroupDispatch = 58,
-    SpvCapabilityNamedBarrier = 59,
-    SpvCapabilityPipeStorage = 60,
     SpvCapabilitySubgroupBallotKHR = 4423,
     SpvCapabilityDrawParameters = 4427,
     SpvCapabilitySubgroupVoteKHR = 4431,
@@ -661,12 +646,19 @@ typedef enum SpvCapability_ {
     SpvCapabilityAtomicStorageOps = 4445,
     SpvCapabilitySampleMaskPostDepthCoverage = 4447,
     SpvCapabilityImageGatherBiasLodAMD = 5009,
+    SpvCapabilityFragmentMaskAMD = 5010,
+    SpvCapabilityStencilExportEXT = 5013,
+    SpvCapabilityImageReadWriteLodAMD = 5015,
     SpvCapabilitySampleMaskOverrideCoverageNV = 5249,
     SpvCapabilityGeometryShaderPassthroughNV = 5251,
+    SpvCapabilityShaderViewportIndexLayerEXT = 5254,
     SpvCapabilityShaderViewportIndexLayerNV = 5254,
     SpvCapabilityShaderViewportMaskNV = 5255,
     SpvCapabilityShaderStereoViewNV = 5259,
     SpvCapabilityPerViewAttributesNV = 5260,
+    SpvCapabilitySubgroupShuffleINTEL = 5568,
+    SpvCapabilitySubgroupBufferBlockIOINTEL = 5569,
+    SpvCapabilitySubgroupImageBlockIOINTEL = 5570,
     SpvCapabilityMax = 0x7fffffff,
 } SpvCapability;
 
@@ -965,18 +957,6 @@ typedef enum SpvOp_ {
     SpvOpAtomicFlagTestAndSet = 318,
     SpvOpAtomicFlagClear = 319,
     SpvOpImageSparseRead = 320,
-    SpvOpSizeOf = 321,
-    SpvOpTypePipeStorage = 322,
-    SpvOpConstantPipeStorage = 323,
-    SpvOpCreatePipeFromPipeStorage = 324,
-    SpvOpGetKernelLocalSizeForSubgroupCount = 325,
-    SpvOpGetKernelMaxNumSubgroups = 326,
-    SpvOpTypeNamedBarrier = 327,
-    SpvOpNamedBarrierInitialize = 328,
-    SpvOpMemoryNamedBarrier = 329,
-    SpvOpModuleProcessed = 330,
-    SpvOpExecutionModeId = 331,
-    SpvOpDecorateId = 332,
     SpvOpSubgroupBallotKHR = 4421,
     SpvOpSubgroupFirstInvocationKHR = 4422,
     SpvOpSubgroupAllKHR = 4428,
@@ -991,6 +971,16 @@ typedef enum SpvOp_ {
     SpvOpGroupFMaxNonUniformAMD = 5005,
     SpvOpGroupUMaxNonUniformAMD = 5006,
     SpvOpGroupSMaxNonUniformAMD = 5007,
+    SpvOpFragmentMaskFetchAMD = 5011,
+    SpvOpFragmentFetchAMD = 5012,
+    SpvOpSubgroupShuffleINTEL = 5571,
+    SpvOpSubgroupShuffleDownINTEL = 5572,
+    SpvOpSubgroupShuffleUpINTEL = 5573,
+    SpvOpSubgroupShuffleXorINTEL = 5574,
+    SpvOpSubgroupBlockReadINTEL = 5575,
+    SpvOpSubgroupBlockWriteINTEL = 5576,
+    SpvOpSubgroupImageBlockReadINTEL = 5577,
+    SpvOpSubgroupImageBlockWriteINTEL = 5578,
     SpvOpMax = 0x7fffffff,
 } SpvOp;
 
-- 
2.9.5



More information about the mesa-dev mailing list