From 05cc486580771e4fa7ddc89f5c9ee1e97382689a Mon Sep 17 00:00:00 2001 From: Jeff Bolz Date: Wed, 14 Feb 2024 11:30:01 -0600 Subject: [PATCH] Add SPV_NV_shader_atomic_fp16_vector (#420) --- include/spirv/unified1/spirv.bf | 1 + include/spirv/unified1/spirv.core.grammar.json | 12 +++++++++--- include/spirv/unified1/spirv.cs | 1 + include/spirv/unified1/spirv.h | 1 + include/spirv/unified1/spirv.hpp | 1 + include/spirv/unified1/spirv.hpp11 | 1 + include/spirv/unified1/spirv.json | 1 + include/spirv/unified1/spirv.lua | 1 + include/spirv/unified1/spirv.py | 1 + include/spirv/unified1/spv.d | 1 + 10 files changed, 18 insertions(+), 3 deletions(-) diff --git a/include/spirv/unified1/spirv.bf b/include/spirv/unified1/spirv.bf index 0994e963d..ea185bfe5 100644 --- a/include/spirv/unified1/spirv.bf +++ b/include/spirv/unified1/spirv.bf @@ -1155,6 +1155,7 @@ namespace Spv ShaderInvocationReorderNV = 5383, BindlessTextureNV = 5390, RayQueryPositionFetchKHR = 5391, + AtomicFloat16VectorNV = 5404, RayTracingDisplacementMicromapNV = 5409, SubgroupShuffleINTEL = 5568, SubgroupBufferBlockIOINTEL = 5569, diff --git a/include/spirv/unified1/spirv.core.grammar.json b/include/spirv/unified1/spirv.core.grammar.json index fc57d6444..03f35957f 100644 --- a/include/spirv/unified1/spirv.core.grammar.json +++ b/include/spirv/unified1/spirv.core.grammar.json @@ -6640,7 +6640,7 @@ { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, { "kind" : "IdRef", "name" : "'Value'" } ], - "capabilities" : [ "AtomicFloat16MinMaxEXT", "AtomicFloat32MinMaxEXT", "AtomicFloat64MinMaxEXT" ], + "capabilities" : [ "AtomicFloat16MinMaxEXT", "AtomicFloat32MinMaxEXT", "AtomicFloat64MinMaxEXT", "AtomicFloat16VectorNV" ], "version" : "None" }, { @@ -6655,7 +6655,7 @@ { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, { "kind" : "IdRef", "name" : "'Value'" } ], - "capabilities" : [ "AtomicFloat16MinMaxEXT", "AtomicFloat32MinMaxEXT", "AtomicFloat64MinMaxEXT" ], + "capabilities" : [ "AtomicFloat16MinMaxEXT", "AtomicFloat32MinMaxEXT", "AtomicFloat64MinMaxEXT", "AtomicFloat16VectorNV" ], "version" : "None" }, { @@ -9627,7 +9627,7 @@ { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, { "kind" : "IdRef", "name" : "'Value'" } ], - "capabilities" : [ "AtomicFloat16AddEXT", "AtomicFloat32AddEXT", "AtomicFloat64AddEXT" ], + "capabilities" : [ "AtomicFloat16AddEXT", "AtomicFloat32AddEXT", "AtomicFloat64AddEXT", "AtomicFloat16VectorNV" ], "extensions" : [ "SPV_EXT_shader_atomic_float_add" ], "version" : "None" }, @@ -16043,6 +16043,12 @@ "extensions" : [ "SPV_KHR_ray_tracing_position_fetch" ], "version" : "None" }, + { + "enumerant" : "AtomicFloat16VectorNV", + "value" : 5404, + "extensions" : [ "SPV_NV_shader_atomic_fp16_vector" ], + "version" : "None" + }, { "enumerant" : "RayTracingDisplacementMicromapNV", "value" : 5409, diff --git a/include/spirv/unified1/spirv.cs b/include/spirv/unified1/spirv.cs index e5a79f540..7922f1827 100644 --- a/include/spirv/unified1/spirv.cs +++ b/include/spirv/unified1/spirv.cs @@ -1154,6 +1154,7 @@ public enum Capability ShaderInvocationReorderNV = 5383, BindlessTextureNV = 5390, RayQueryPositionFetchKHR = 5391, + AtomicFloat16VectorNV = 5404, RayTracingDisplacementMicromapNV = 5409, SubgroupShuffleINTEL = 5568, SubgroupBufferBlockIOINTEL = 5569, diff --git a/include/spirv/unified1/spirv.h b/include/spirv/unified1/spirv.h index cad314eb3..96928b11e 100644 --- a/include/spirv/unified1/spirv.h +++ b/include/spirv/unified1/spirv.h @@ -1154,6 +1154,7 @@ typedef enum SpvCapability_ { SpvCapabilityShaderInvocationReorderNV = 5383, SpvCapabilityBindlessTextureNV = 5390, SpvCapabilityRayQueryPositionFetchKHR = 5391, + SpvCapabilityAtomicFloat16VectorNV = 5404, SpvCapabilityRayTracingDisplacementMicromapNV = 5409, SpvCapabilitySubgroupShuffleINTEL = 5568, SpvCapabilitySubgroupBufferBlockIOINTEL = 5569, diff --git a/include/spirv/unified1/spirv.hpp b/include/spirv/unified1/spirv.hpp index 669890182..012df1f05 100644 --- a/include/spirv/unified1/spirv.hpp +++ b/include/spirv/unified1/spirv.hpp @@ -1150,6 +1150,7 @@ enum Capability { CapabilityShaderInvocationReorderNV = 5383, CapabilityBindlessTextureNV = 5390, CapabilityRayQueryPositionFetchKHR = 5391, + CapabilityAtomicFloat16VectorNV = 5404, CapabilityRayTracingDisplacementMicromapNV = 5409, CapabilitySubgroupShuffleINTEL = 5568, CapabilitySubgroupBufferBlockIOINTEL = 5569, diff --git a/include/spirv/unified1/spirv.hpp11 b/include/spirv/unified1/spirv.hpp11 index 2a00c955b..32f209fbb 100644 --- a/include/spirv/unified1/spirv.hpp11 +++ b/include/spirv/unified1/spirv.hpp11 @@ -1150,6 +1150,7 @@ enum class Capability : unsigned { ShaderInvocationReorderNV = 5383, BindlessTextureNV = 5390, RayQueryPositionFetchKHR = 5391, + AtomicFloat16VectorNV = 5404, RayTracingDisplacementMicromapNV = 5409, SubgroupShuffleINTEL = 5568, SubgroupBufferBlockIOINTEL = 5569, diff --git a/include/spirv/unified1/spirv.json b/include/spirv/unified1/spirv.json index c72d54190..a47a1f6ed 100644 --- a/include/spirv/unified1/spirv.json +++ b/include/spirv/unified1/spirv.json @@ -1127,6 +1127,7 @@ "ShaderInvocationReorderNV": 5383, "BindlessTextureNV": 5390, "RayQueryPositionFetchKHR": 5391, + "AtomicFloat16VectorNV": 5404, "RayTracingDisplacementMicromapNV": 5409, "SubgroupShuffleINTEL": 5568, "SubgroupBufferBlockIOINTEL": 5569, diff --git a/include/spirv/unified1/spirv.lua b/include/spirv/unified1/spirv.lua index a86052275..4a18496ed 100644 --- a/include/spirv/unified1/spirv.lua +++ b/include/spirv/unified1/spirv.lua @@ -1112,6 +1112,7 @@ spv = { ShaderInvocationReorderNV = 5383, BindlessTextureNV = 5390, RayQueryPositionFetchKHR = 5391, + AtomicFloat16VectorNV = 5404, RayTracingDisplacementMicromapNV = 5409, SubgroupShuffleINTEL = 5568, SubgroupBufferBlockIOINTEL = 5569, diff --git a/include/spirv/unified1/spirv.py b/include/spirv/unified1/spirv.py index 08cf11637..cac5f0627 100644 --- a/include/spirv/unified1/spirv.py +++ b/include/spirv/unified1/spirv.py @@ -1112,6 +1112,7 @@ 'ShaderInvocationReorderNV' : 5383, 'BindlessTextureNV' : 5390, 'RayQueryPositionFetchKHR' : 5391, + 'AtomicFloat16VectorNV' : 5404, 'RayTracingDisplacementMicromapNV' : 5409, 'SubgroupShuffleINTEL' : 5568, 'SubgroupBufferBlockIOINTEL' : 5569, diff --git a/include/spirv/unified1/spv.d b/include/spirv/unified1/spv.d index d5969d766..d6cec2dbd 100644 --- a/include/spirv/unified1/spv.d +++ b/include/spirv/unified1/spv.d @@ -1157,6 +1157,7 @@ enum Capability : uint ShaderInvocationReorderNV = 5383, BindlessTextureNV = 5390, RayQueryPositionFetchKHR = 5391, + AtomicFloat16VectorNV = 5404, RayTracingDisplacementMicromapNV = 5409, SubgroupShuffleINTEL = 5568, SubgroupBufferBlockIOINTEL = 5569,