[Mesa-dev] [PATCH 01/28] spirv: Update SPIR-V json and headers to Khronos master

Samuel Iglesias Gonsálvez siglesias at igalia.com
Wed Dec 5 15:55:16 UTC 2018


This corresponds to commit 17da9f8231f78cf519b4958c2229463a63ead9e2 on GitHub.

Signed-off-by: Samuel Iglesias Gonsálvez <siglesias at igalia.com>
---
 src/compiler/spirv/spirv.core.grammar.json | 316 +++++++++++++++------
 src/compiler/spirv/spirv.h                 |  84 +++---
 2 files changed, 281 insertions(+), 119 deletions(-)

diff --git a/src/compiler/spirv/spirv.core.grammar.json b/src/compiler/spirv/spirv.core.grammar.json
index 034e3ab4446..cd178596594 100644
--- a/src/compiler/spirv/spirv.core.grammar.json
+++ b/src/compiler/spirv/spirv.core.grammar.json
@@ -3825,7 +3825,7 @@
       "version" : "None"
     },
     {
-      "opname" : "OpReportIntersectionNVX",
+      "opname" : "OpReportIntersectionNV",
       "opcode" : 5334,
       "operands" : [
         { "kind" : "IdResultType" },
@@ -3833,25 +3833,25 @@
         { "kind" : "IdRef", "name" : "'Hit'" },
         { "kind" : "IdRef", "name" : "'HitKind'" }
       ],
-      "capabilities" : [ "RaytracingNVX" ],
-      "extensions" : [ "SPV_NVX_raytracing" ]
+      "capabilities" : [ "RayTracingNV" ],
+      "extensions" : [ "SPV_NV_ray_tracing" ]
     },
     {
-      "opname" : "OpIgnoreIntersectionNVX",
+      "opname" : "OpIgnoreIntersectionNV",
       "opcode" : 5335,
 
-      "capabilities" : [ "RaytracingNVX" ],
-      "extensions" : [ "SPV_NVX_raytracing" ]
+      "capabilities" : [ "RayTracingNV" ],
+      "extensions" : [ "SPV_NV_ray_tracing" ]
     },
     {
-      "opname" : "OpTerminateRayNVX",
+      "opname" : "OpTerminateRayNV",
       "opcode" : 5336,
 
-      "capabilities" : [ "RaytracingNVX" ],
-      "extensions" : [ "SPV_NVX_raytracing" ]
+      "capabilities" : [ "RayTracingNV" ],
+      "extensions" : [ "SPV_NV_ray_tracing" ]
     },
     {
-      "opname" : "OpTraceNVX",
+      "opname" : "OpTraceNV",
       "opcode" : 5337,
       "operands" : [
 
@@ -3867,17 +3867,28 @@
         { "kind" : "IdRef", "name" : "'Ray Tmax'" },
         { "kind" : "IdRef", "name" : "'PayloadId'" }
       ],
-      "capabilities" : [ "RaytracingNVX" ],
-      "extensions" : [ "SPV_NVX_raytracing" ]
+      "capabilities" : [ "RayTracingNV" ],
+      "extensions" : [ "SPV_NV_ray_tracing" ]
     },
     {
-      "opname" : "OpTypeAccelerationStructureNVX",
+      "opname" : "OpTypeAccelerationStructureNV",
       "opcode" : 5341,
       "operands" : [
         { "kind" : "IdResult" }
       ],
-      "capabilities" : [ "RaytracingNVX" ],
-      "extensions" : [ "SPV_NVX_raytracing" ]
+      "capabilities" : [ "RayTracingNV" ],
+      "extensions" : [ "SPV_NV_ray_tracing" ]
+    },
+    {
+      "opname" : "OpExecuteCallableNV",
+      "opcode" : 5344,
+      "operands" : [
+
+        { "kind" : "IdRef", "name" : "'SBT Index'" },
+        { "kind" : "IdRef", "name" : "'Callable DataId'" }
+      ],
+      "capabilities" : [ "RayTracingNV" ],
+      "extensions" : [ "SPV_NV_ray_tracing" ]
     },
     {
       "opname" : "OpSubgroupShuffleINTEL",
@@ -4443,34 +4454,34 @@
           "capabilities" : [ "MeshShadingNV" ]
         },
         {
-          "enumerant" : "RayGenerationNVX",
+          "enumerant" : "RayGenerationNV",
           "value" : 5313,
-          "capabilities" : [ "RaytracingNVX" ]
+          "capabilities" : [ "RayTracingNV" ]
         },
         {
-          "enumerant" : "IntersectionNVX",
+          "enumerant" : "IntersectionNV",
           "value" : 5314,
-          "capabilities" : [ "RaytracingNVX" ]
+          "capabilities" : [ "RayTracingNV" ]
         },
         {
-          "enumerant" : "AnyHitNVX",
+          "enumerant" : "AnyHitNV",
           "value" : 5315,
-          "capabilities" : [ "RaytracingNVX" ]
+          "capabilities" : [ "RayTracingNV" ]
         },
         {
-          "enumerant" : "ClosestHitNVX",
+          "enumerant" : "ClosestHitNV",
           "value" : 5316,
-          "capabilities" : [ "RaytracingNVX" ]
+          "capabilities" : [ "RayTracingNV" ]
         },
         {
-          "enumerant" : "MissNVX",
+          "enumerant" : "MissNV",
           "value" : 5317,
-          "capabilities" : [ "RaytracingNVX" ]
+          "capabilities" : [ "RayTracingNV" ]
         },
         {
-          "enumerant" : "CallableNVX",
+          "enumerant" : "CallableNV",
           "value" : 5318,
-          "capabilities" : [ "RaytracingNVX" ]
+          "capabilities" : [ "RayTracingNV" ]
         }
       ]
     },
@@ -4762,6 +4773,56 @@
           "extensions" : [ "SPV_KHR_post_depth_coverage" ],
           "version" : "None"
         },
+{
+          "enumerant" : "DenormPreserve",
+          "value" : 4459,
+          "capabilities" : [ "DenormPreserve"],
+          "extensions" : [ "SPV_KHR_float_controls" ],
+          "parameters" : [
+            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
+          ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "DenormFlushToZero",
+          "value" : 4460,
+          "capabilities" : [ "DenormFlushToZero"],
+          "extensions" : [ "SPV_KHR_float_controls" ],
+          "parameters" : [
+            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
+          ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "SignedZeroInfNanPreserve",
+          "value" : 4461,
+          "capabilities" : [ "SignedZeroInfNanPreserve"],
+          "extensions" : [ "SPV_KHR_float_controls" ],
+          "parameters" : [
+            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
+          ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "RoundingModeRTE",
+          "value" : 4462,
+          "capabilities" : [ "RoundingModeRTE"],
+          "extensions" : [ "SPV_KHR_float_controls" ],
+          "parameters" : [
+            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
+          ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "RoundingModeRTZ",
+          "value" : 4463,
+          "capabilities" : [ "RoundingModeRTZ"],
+          "extensions" : [ "SPV_KHR_float_controls" ],
+          "parameters" : [
+            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
+          ],
+          "version" : "None"
+        },
         {
           "enumerant" : "StencilRefReplacingEXT",
           "value" : 5027,
@@ -4878,28 +4939,40 @@
           "version" : "1.3"
         },
         {
-          "enumerant" : "RayPayloadNVX",
+          "enumerant" : "CallableDataNV",
+          "value" : 5328,
+          "extensions" : [ "SPV_NV_ray_tracing" ],
+          "capabilities" : [ "RayTracingNV" ]
+        },
+        {
+          "enumerant" : "IncomingCallableDataNV",
+          "value" : 5329,
+          "extensions" : [ "SPV_NV_ray_tracing" ],
+          "capabilities" : [ "RayTracingNV" ]
+        },
+        {
+          "enumerant" : "RayPayloadNV",
           "value" : 5338,
-          "extensions" : [ "SPV_NVX_raytracing" ],
-          "capabilities" : [ "RaytracingNVX" ]
+          "extensions" : [ "SPV_NV_ray_tracing" ],
+          "capabilities" : [ "RayTracingNV" ]
         },
         {
-          "enumerant" : "HitAttributeNVX",
+          "enumerant" : "HitAttributeNV",
           "value" : 5339,
-          "extensions" : [ "SPV_NVX_raytracing" ],
-          "capabilities" : [ "RaytracingNVX" ]
+          "extensions" : [ "SPV_NV_ray_tracing" ],
+          "capabilities" : [ "RayTracingNV" ]
         },
         {
-          "enumerant" : "IncomingRayPayloadNVX",
+          "enumerant" : "IncomingRayPayloadNV",
           "value" : 5342,
-          "extensions" : [ "SPV_NVX_raytracing" ],
-          "capabilities" : [ "RaytracingNVX" ]
+          "extensions" : [ "SPV_NV_ray_tracing" ],
+          "capabilities" : [ "RayTracingNV" ]
         },
-{
-          "enumerant" : "ShaderRecordBufferNVX",
+        {
+          "enumerant" : "ShaderRecordBufferNV",
           "value" : 5343,
-          "extensions" : [ "SPV_NVX_raytracing" ],
-          "capabilities" : [ "RaytracingNVX" ]
+          "extensions" : [ "SPV_NV_ray_tracing" ],
+          "capabilities" : [ "RayTracingNV" ]
         }
       ]
     },
@@ -5793,6 +5866,18 @@
           ],
           "version" : "1.2"
         },
+        {
+          "enumerant" : "NoSignedWrap",
+          "value" : 4469,
+          "extensions" : [ "SPV_KHR_no_integer_wrap_decoration" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "NoUnsignedWrap",
+          "value" : 4470,
+          "extensions" : [ "SPV_KHR_no_integer_wrap_decoration" ],
+          "version" : "None"
+        },
         {
           "enumerant" : "ExplicitInterpAMD",
           "value" : 4999,
@@ -5919,7 +6004,7 @@
         {
           "enumerant" : "PrimitiveId",
           "value" : 7,
-          "capabilities" : [ "Geometry", "Tessellation", "RaytracingNVX" ]
+          "capabilities" : [ "Geometry", "Tessellation", "RayTracingNV" ]
         },
         {
           "enumerant" : "InvocationId",
@@ -6346,97 +6431,117 @@
           "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
           "version" : "None"
         },
+        {
+          "enumerant" : "FragSizeEXT",
+          "value" : 5292 ,
+          "capabilities" : [ "FragmentDensityEXT", "ShadingRateNV" ],
+          "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ],
+          "version" : "None"
+        },
         {
           "enumerant" : "FragmentSizeNV",
           "value" : 5292 ,
-          "capabilities" : [ "ShadingRateNV" ],
-          "extensions" : [ "SPV_NV_shading_rate" ],
+          "capabilities" : [ "ShadingRateNV", "FragmentDensityEXT" ],
+          "extensions" : [ "SPV_NV_shading_rate", "SPV_EXT_fragment_invocation_density" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "FragInvocationCountEXT",
+          "value" : 5293,
+          "capabilities" : [ "FragmentDensityEXT", "ShadingRateNV" ],
+          "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ],
           "version" : "None"
         },
         {
           "enumerant" : "InvocationsPerPixelNV",
           "value" : 5293,
-          "capabilities" : [ "ShadingRateNV" ],
-          "extensions" : [ "SPV_NV_shading_rate" ],
+          "capabilities" : [ "ShadingRateNV", "FragmentDensityEXT" ],
+          "extensions" : [ "SPV_NV_shading_rate", "SPV_EXT_fragment_invocation_density" ],
           "version" : "None"
         },
         {
-          "enumerant" : "LaunchIdNVX",
+          "enumerant" : "LaunchIdNV",
           "value" : 5319,
-          "capabilities" : [ "RaytracingNVX" ],
-          "extensions" : [ "SPV_NVX_raytracing" ]
+          "capabilities" : [ "RayTracingNV" ],
+          "extensions" : [ "SPV_NV_ray_tracing" ]
         },
         {
-          "enumerant" : "LaunchSizeNVX",
+          "enumerant" : "LaunchSizeNV",
           "value" : 5320,
-          "capabilities" : [ "RaytracingNVX" ],
-          "extensions" : [ "SPV_NVX_raytracing" ]
+          "capabilities" : [ "RayTracingNV" ],
+          "extensions" : [ "SPV_NV_ray_tracing" ]
         },
         {
-          "enumerant" : "WorldRayOriginNVX",
+          "enumerant" : "WorldRayOriginNV",
           "value" : 5321,
-          "capabilities" : [ "RaytracingNVX" ],
-          "extensions" : [ "SPV_NVX_raytracing" ]
+          "capabilities" : [ "RayTracingNV" ],
+          "extensions" : [ "SPV_NV_ray_tracing" ]
         },
         {
-          "enumerant" : "WorldRayDirectionNVX",
+          "enumerant" : "WorldRayDirectionNV",
           "value" : 5322,
-          "capabilities" : [ "RaytracingNVX" ],
-          "extensions" : [ "SPV_NVX_raytracing" ]
+          "capabilities" : [ "RayTracingNV" ],
+          "extensions" : [ "SPV_NV_ray_tracing" ]
         },
         {
-          "enumerant" : "ObjectRayOriginNVX",
+          "enumerant" : "ObjectRayOriginNV",
           "value" : 5323,
-          "capabilities" : [ "RaytracingNVX" ],
-          "extensions" : [ "SPV_NVX_raytracing" ]
+          "capabilities" : [ "RayTracingNV" ],
+          "extensions" : [ "SPV_NV_ray_tracing" ]
         },
         {
-          "enumerant" : "ObjectRayDirectionNVX",
+          "enumerant" : "ObjectRayDirectionNV",
           "value" : 5324,
-          "capabilities" : [ "RaytracingNVX" ],
-          "extensions" : [ "SPV_NVX_raytracing" ]
+          "capabilities" : [ "RayTracingNV" ],
+          "extensions" : [ "SPV_NV_ray_tracing" ]
         },
         {
-          "enumerant" : "RayTminNVX",
+          "enumerant" : "RayTminNV",
           "value" : 5325,
-          "capabilities" : [ "RaytracingNVX" ],
-          "extensions" : [ "SPV_NVX_raytracing" ]
+          "capabilities" : [ "RayTracingNV" ],
+          "extensions" : [ "SPV_NV_ray_tracing" ]
         },
         {
-          "enumerant" : "RayTmaxNVX",
+          "enumerant" : "RayTmaxNV",
           "value" : 5326,
-          "capabilities" : [ "RaytracingNVX" ],
-          "extensions" : [ "SPV_NVX_raytracing" ]
+          "capabilities" : [ "RayTracingNV" ],
+          "extensions" : [ "SPV_NV_ray_tracing" ]
         },
         {
-          "enumerant" : "InstanceCustomIndexNVX",
+          "enumerant" : "InstanceCustomIndexNV",
           "value" : 5327,
-          "capabilities" : [ "RaytracingNVX" ],
-          "extensions" : [ "SPV_NVX_raytracing" ]
+          "capabilities" : [ "RayTracingNV" ],
+          "extensions" : [ "SPV_NV_ray_tracing" ]
         },
         {
-          "enumerant" : "ObjectToWorldNVX",
+          "enumerant" : "ObjectToWorldNV",
           "value" : 5330,
-          "capabilities" : [ "RaytracingNVX" ],
-          "extensions" : [ "SPV_NVX_raytracing" ]
+          "capabilities" : [ "RayTracingNV" ],
+          "extensions" : [ "SPV_NV_ray_tracing" ]
         },
         {
-          "enumerant" : "WorldToObjectNVX",
+          "enumerant" : "WorldToObjectNV",
           "value" : 5331,
-          "capabilities" : [ "RaytracingNVX" ],
-          "extensions" : [ "SPV_NVX_raytracing" ]
+          "capabilities" : [ "RayTracingNV" ],
+          "extensions" : [ "SPV_NV_ray_tracing" ]
         },
         {
-          "enumerant" : "HitTNVX",
+          "enumerant" : "HitTNV",
           "value" : 5332,
-          "capabilities" : [ "RaytracingNVX" ],
-          "extensions" : [ "SPV_NVX_raytracing" ]
+          "capabilities" : [ "RayTracingNV" ],
+          "extensions" : [ "SPV_NV_ray_tracing" ]
         },
         {
-          "enumerant" : "HitKindNVX",
+          "enumerant" : "HitKindNV",
           "value" : 5333,
-          "capabilities" : [ "RaytracingNVX" ],
-          "extensions" : [ "SPV_NVX_raytracing" ]
+          "capabilities" : [ "RayTracingNV" ],
+          "extensions" : [ "SPV_NV_ray_tracing" ]
+        },
+        {
+          "enumerant" : "IncomingRayFlagsNV",
+          "value" : 5351,
+          "capabilities" : [ "RayTracingNV" ],
+          "extensions" : [ "SPV_NV_ray_tracing" ]
         }
       ]
     },
@@ -6998,6 +7103,36 @@
           "extensions" : [ "SPV_KHR_8bit_storage" ],
           "version" : "None"
         },
+        {
+          "enumerant" : "DenormPreserve",
+          "value" : 4464,
+          "extensions" : [ "SPV_KHR_float_controls" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "DenormFlushToZero",
+          "value" : 4465,
+          "extensions" : [ "SPV_KHR_float_controls" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "SignedZeroInfNanPreserve",
+          "value" : 4466,
+          "extensions" : [ "SPV_KHR_float_controls" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "RoundingModeRTE",
+          "value" : 4467,
+          "extensions" : [ "SPV_KHR_float_controls" ],
+          "version" : "None"
+        },
+        {
+          "enumerant" : "RoundingModeRTZ",
+          "value" : 4468,
+          "extensions" : [ "SPV_KHR_float_controls" ],
+          "version" : "None"
+        },
         {
           "enumerant" : "Float16ImageAMD",
           "value" : 5008,
@@ -7181,10 +7316,10 @@
           "version" : "None"
         },
         {
-          "enumerant" : "RaytracingNVX",
+          "enumerant" : "RayTracingNV",
           "value" : 5340,
           "capabilities" : [ "Shader" ],
-          "extensions" : [ "SPV_NVX_raytracing" ],
+          "extensions" : [ "SPV_NV_ray_tracing" ],
           "version" : "None"
         },
         {
@@ -7247,11 +7382,18 @@
           "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
           "version" : "None"
         },
+        {
+          "enumerant" : "FragmentDensityEXT",
+          "value" : 5291,
+          "capabilities" : [ "Shader" ],
+          "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ],
+          "version" : "None"
+        },
         {
           "enumerant" : "ShadingRateNV",
           "value" : 5291,
           "capabilities" : [ "Shader" ],
-          "extensions" : [ "SPV_NV_shading_rate" ],
+          "extensions" : [ "SPV_NV_shading_rate", "SPV_EXT_fragment_invocation_density" ],
           "version" : "None"
         }
       ]
diff --git a/src/compiler/spirv/spirv.h b/src/compiler/spirv/spirv.h
index 2965534566b..503673a2f24 100644
--- a/src/compiler/spirv/spirv.h
+++ b/src/compiler/spirv/spirv.h
@@ -31,13 +31,14 @@
 
 /*
 ** Enumeration tokens for SPIR-V, in various styles:
-**   C, C++, C++11, JSON, Lua, Python
+**   C, C++, C++11, JSON, Lua, Python, C#
 ** 
 ** - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL
 ** - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL
 ** - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL
 ** - Lua will use tables, e.g.: spv.SourceLanguage.GLSL
 ** - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL']
+** - C# will use enum classes in the Specification class located in the "Spv" namespace, e.g.: Spv.Specification.SourceLanguage.GLSL
 ** 
 ** Some tokens act like mask values, which can be OR'd together,
 ** while others are mutually exclusive.  The mask-like ones have
@@ -51,11 +52,11 @@
 typedef unsigned int SpvId;
 
 #define SPV_VERSION 0x10300
-#define SPV_REVISION 1
+#define SPV_REVISION 6
 
 static const unsigned int SpvMagicNumber = 0x07230203;
 static const unsigned int SpvVersion = 0x00010300;
-static const unsigned int SpvRevision = 1;
+static const unsigned int SpvRevision = 6;
 static const unsigned int SpvOpCodeMask = 0xffff;
 static const unsigned int SpvWordCountShift = 16;
 
@@ -79,12 +80,12 @@ typedef enum SpvExecutionModel_ {
     SpvExecutionModelKernel = 6,
     SpvExecutionModelTaskNV = 5267,
     SpvExecutionModelMeshNV = 5268,
-    SpvExecutionModelRayGenerationNVX = 5313,
-    SpvExecutionModelIntersectionNVX = 5314,
-    SpvExecutionModelAnyHitNVX = 5315,
-    SpvExecutionModelClosestHitNVX = 5316,
-    SpvExecutionModelMissNVX = 5317,
-    SpvExecutionModelCallableNVX = 5318,
+    SpvExecutionModelRayGenerationNV = 5313,
+    SpvExecutionModelIntersectionNV = 5314,
+    SpvExecutionModelAnyHitNV = 5315,
+    SpvExecutionModelClosestHitNV = 5316,
+    SpvExecutionModelMissNV = 5317,
+    SpvExecutionModelCallableNV = 5318,
     SpvExecutionModelMax = 0x7fffffff,
 } SpvExecutionModel;
 
@@ -143,6 +144,11 @@ typedef enum SpvExecutionMode_ {
     SpvExecutionModeLocalSizeId = 38,
     SpvExecutionModeLocalSizeHintId = 39,
     SpvExecutionModePostDepthCoverage = 4446,
+    SpvExecutionModeDenormPreserve = 4459,
+    SpvExecutionModeDenormFlushToZero = 4460,
+    SpvExecutionModeSignedZeroInfNanPreserve = 4461,
+    SpvExecutionModeRoundingModeRTE = 4462,
+    SpvExecutionModeRoundingModeRTZ = 4463,
     SpvExecutionModeStencilRefReplacingEXT = 5027,
     SpvExecutionModeOutputLinesNV = 5269,
     SpvExecutionModeOutputPrimitivesNV = 5270,
@@ -166,10 +172,12 @@ typedef enum SpvStorageClass_ {
     SpvStorageClassAtomicCounter = 10,
     SpvStorageClassImage = 11,
     SpvStorageClassStorageBuffer = 12,
-    SpvStorageClassRayPayloadNVX = 5338,
-    SpvStorageClassHitAttributeNVX = 5339,
-    SpvStorageClassIncomingRayPayloadNVX = 5342,
-    SpvStorageClassShaderRecordBufferNVX = 5343,
+    SpvStorageClassCallableDataNV = 5328,
+    SpvStorageClassIncomingCallableDataNV = 5329,
+    SpvStorageClassRayPayloadNV = 5338,
+    SpvStorageClassHitAttributeNV = 5339,
+    SpvStorageClassIncomingRayPayloadNV = 5342,
+    SpvStorageClassShaderRecordBufferNV = 5343,
     SpvStorageClassMax = 0x7fffffff,
 } SpvStorageClass;
 
@@ -418,6 +426,8 @@ typedef enum SpvDecoration_ {
     SpvDecorationMaxByteOffset = 45,
     SpvDecorationAlignmentId = 46,
     SpvDecorationMaxByteOffsetId = 47,
+    SpvDecorationNoSignedWrap = 4469,
+    SpvDecorationNoUnsignedWrap = 4470,
     SpvDecorationExplicitInterpAMD = 4999,
     SpvDecorationOverrideCoverageNV = 5248,
     SpvDecorationPassthroughNV = 5250,
@@ -514,21 +524,24 @@ typedef enum SpvBuiltIn_ {
     SpvBuiltInMeshViewIndicesNV = 5281,
     SpvBuiltInBaryCoordNV = 5286,
     SpvBuiltInBaryCoordNoPerspNV = 5287,
+    SpvBuiltInFragSizeEXT = 5292,
     SpvBuiltInFragmentSizeNV = 5292,
+    SpvBuiltInFragInvocationCountEXT = 5293,
     SpvBuiltInInvocationsPerPixelNV = 5293,
-    SpvBuiltInLaunchIdNVX = 5319,
-    SpvBuiltInLaunchSizeNVX = 5320,
-    SpvBuiltInWorldRayOriginNVX = 5321,
-    SpvBuiltInWorldRayDirectionNVX = 5322,
-    SpvBuiltInObjectRayOriginNVX = 5323,
-    SpvBuiltInObjectRayDirectionNVX = 5324,
-    SpvBuiltInRayTminNVX = 5325,
-    SpvBuiltInRayTmaxNVX = 5326,
-    SpvBuiltInInstanceCustomIndexNVX = 5327,
-    SpvBuiltInObjectToWorldNVX = 5330,
-    SpvBuiltInWorldToObjectNVX = 5331,
-    SpvBuiltInHitTNVX = 5332,
-    SpvBuiltInHitKindNVX = 5333,
+    SpvBuiltInLaunchIdNV = 5319,
+    SpvBuiltInLaunchSizeNV = 5320,
+    SpvBuiltInWorldRayOriginNV = 5321,
+    SpvBuiltInWorldRayDirectionNV = 5322,
+    SpvBuiltInObjectRayOriginNV = 5323,
+    SpvBuiltInObjectRayDirectionNV = 5324,
+    SpvBuiltInRayTminNV = 5325,
+    SpvBuiltInRayTmaxNV = 5326,
+    SpvBuiltInInstanceCustomIndexNV = 5327,
+    SpvBuiltInObjectToWorldNV = 5330,
+    SpvBuiltInWorldToObjectNV = 5331,
+    SpvBuiltInHitTNV = 5332,
+    SpvBuiltInHitKindNV = 5333,
+    SpvBuiltInIncomingRayFlagsNV = 5351,
     SpvBuiltInMax = 0x7fffffff,
 } SpvBuiltIn;
 
@@ -754,6 +767,11 @@ typedef enum SpvCapability_ {
     SpvCapabilityStorageBuffer8BitAccess = 4448,
     SpvCapabilityUniformAndStorageBuffer8BitAccess = 4449,
     SpvCapabilityStoragePushConstant8 = 4450,
+    SpvCapabilityDenormPreserve = 4464,
+    SpvCapabilityDenormFlushToZero = 4465,
+    SpvCapabilitySignedZeroInfNanPreserve = 4466,
+    SpvCapabilityRoundingModeRTE = 4467,
+    SpvCapabilityRoundingModeRTZ = 4468,
     SpvCapabilityFloat16ImageAMD = 5008,
     SpvCapabilityImageGatherBiasLodAMD = 5009,
     SpvCapabilityFragmentMaskAMD = 5010,
@@ -771,6 +789,7 @@ typedef enum SpvCapability_ {
     SpvCapabilityImageFootprintNV = 5282,
     SpvCapabilityFragmentBarycentricNV = 5284,
     SpvCapabilityComputeDerivativeGroupQuadsNV = 5288,
+    SpvCapabilityFragmentDensityEXT = 5291,
     SpvCapabilityShadingRateNV = 5291,
     SpvCapabilityGroupNonUniformPartitionedNV = 5297,
     SpvCapabilityShaderNonUniformEXT = 5301,
@@ -785,7 +804,7 @@ typedef enum SpvCapability_ {
     SpvCapabilityInputAttachmentArrayNonUniformIndexingEXT = 5310,
     SpvCapabilityUniformTexelBufferArrayNonUniformIndexingEXT = 5311,
     SpvCapabilityStorageTexelBufferArrayNonUniformIndexingEXT = 5312,
-    SpvCapabilityRaytracingNVX = 5340,
+    SpvCapabilityRayTracingNV = 5340,
     SpvCapabilityVulkanMemoryModelKHR = 5345,
     SpvCapabilityVulkanMemoryModelDeviceScopeKHR = 5346,
     SpvCapabilityComputeDerivativeGroupLinearNV = 5350,
@@ -1155,11 +1174,12 @@ typedef enum SpvOp_ {
     SpvOpImageSampleFootprintNV = 5283,
     SpvOpGroupNonUniformPartitionNV = 5296,
     SpvOpWritePackedPrimitiveIndices4x8NV = 5299,
-    SpvOpReportIntersectionNVX = 5334,
-    SpvOpIgnoreIntersectionNVX = 5335,
-    SpvOpTerminateRayNVX = 5336,
-    SpvOpTraceNVX = 5337,
-    SpvOpTypeAccelerationStructureNVX = 5341,
+    SpvOpReportIntersectionNV = 5334,
+    SpvOpIgnoreIntersectionNV = 5335,
+    SpvOpTerminateRayNV = 5336,
+    SpvOpTraceNV = 5337,
+    SpvOpTypeAccelerationStructureNV = 5341,
+    SpvOpExecuteCallableNV = 5344,
     SpvOpSubgroupShuffleINTEL = 5571,
     SpvOpSubgroupShuffleDownINTEL = 5572,
     SpvOpSubgroupShuffleUpINTEL = 5573,
-- 
2.19.1



More information about the mesa-dev mailing list