From 22d6b89e395e8cab06cbcbde111e64b613e675b6 Mon Sep 17 00:00:00 2001 From: Bas Nieuwenhuizen Date: Sun, 8 Apr 2018 13:03:06 +0200 Subject: [PATCH] spirv: Update spirv.h to 12f8de9f04327336b699b1b80aa390ae7f9ddbf4 Acked-by: Samuel Pitoiset --- src/compiler/spirv/spirv.core.grammar.json | 169 ++++++++++++++++++++- src/compiler/spirv/spirv.h | 18 +++ 2 files changed, 183 insertions(+), 4 deletions(-) diff --git a/src/compiler/spirv/spirv.core.grammar.json b/src/compiler/spirv/spirv.core.grammar.json index f3994a60358..a03c024335c 100644 --- a/src/compiler/spirv/spirv.core.grammar.json +++ b/src/compiler/spirv/spirv.core.grammar.json @@ -3144,6 +3144,7 @@ { "kind" : "IdRef", "name" : "'Target'" }, { "kind" : "Decoration" } ], + "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ], "version" : "1.2" }, { @@ -3602,7 +3603,9 @@ { "kind" : "IdResult" }, { "kind" : "IdRef", "name" : "'Predicate'" } ], - "capabilities" : [ "SubgroupBallotKHR" ] + "capabilities" : [ "SubgroupBallotKHR" ], + "extensions" : [ "SPV_KHR_shader_ballot" ], + "version" : "None" }, { "opname" : "OpSubgroupFirstInvocationKHR", @@ -3612,7 +3615,9 @@ { "kind" : "IdResult" }, { "kind" : "IdRef", "name" : "'Value'" } ], - "capabilities" : [ "SubgroupBallotKHR" ] + "capabilities" : [ "SubgroupBallotKHR" ], + "extensions" : [ "SPV_KHR_shader_ballot" ], + "version" : "None" }, { "opname" : "OpSubgroupAllKHR", @@ -3666,6 +3671,7 @@ { "kind" : "IdRef", "name" : "'Index'" } ], "capabilities" : [ "SubgroupBallotKHR" ], + "extensions" : [ "SPV_KHR_shader_ballot" ], "version" : "None" }, { @@ -3679,6 +3685,7 @@ { "kind" : "IdRef", "name" : "'X'" } ], "capabilities" : [ "Groups" ], + "extensions" : [ "SPV_AMD_shader_ballot" ], "version" : "None" }, { @@ -3692,6 +3699,7 @@ { "kind" : "IdRef", "name" : "'X'" } ], "capabilities" : [ "Groups" ], + "extensions" : [ "SPV_AMD_shader_ballot" ], "version" : "None" }, { @@ -3705,6 +3713,7 @@ { "kind" : "IdRef", "name" : "'X'" } ], "capabilities" : [ "Groups" ], + "extensions" : [ "SPV_AMD_shader_ballot" ], "version" : "None" }, { @@ -3718,6 +3727,7 @@ { "kind" : "IdRef", "name" : "'X'" } ], "capabilities" : [ "Groups" ], + "extensions" : [ "SPV_AMD_shader_ballot" ], "version" : "None" }, { @@ -3731,6 +3741,7 @@ { "kind" : "IdRef", "name" : "'X'" } ], "capabilities" : [ "Groups" ], + "extensions" : [ "SPV_AMD_shader_ballot" ], "version" : "None" }, { @@ -3744,6 +3755,7 @@ { "kind" : "IdRef", "name" : "'X'" } ], "capabilities" : [ "Groups" ], + "extensions" : [ "SPV_AMD_shader_ballot" ], "version" : "None" }, { @@ -3757,6 +3769,7 @@ { "kind" : "IdRef", "name" : "'X'" } ], "capabilities" : [ "Groups" ], + "extensions" : [ "SPV_AMD_shader_ballot" ], "version" : "None" }, { @@ -3770,6 +3783,7 @@ { "kind" : "IdRef", "name" : "'X'" } ], "capabilities" : [ "Groups" ], + "extensions" : [ "SPV_AMD_shader_ballot" ], "version" : "None" }, { @@ -3782,6 +3796,7 @@ { "kind" : "IdRef", "name" : "'Coordinate'" } ], "capabilities" : [ "FragmentMaskAMD" ], + "extensions" : [ "SPV_AMD_shader_fragment_mask" ], "version" : "None" }, { @@ -3795,6 +3810,7 @@ { "kind" : "IdRef", "name" : "'Fragment Index'" } ], "capabilities" : [ "FragmentMaskAMD" ], + "extensions" : [ "SPV_AMD_shader_fragment_mask" ], "version" : "None" }, { @@ -3911,6 +3927,18 @@ ], "extensions" : [ "SPV_GOOGLE_decorate_string" ], "version" : "None" + }, + { + "opname" : "OpGroupNonUniformPartitionNV", + "opcode" : 5296, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "'Value'" } + ], + "capabilities" : [ "GroupNonUniformPartitionedNV" ], + "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ], + "version" : "None" } ], "operand_kinds" : [ @@ -4541,12 +4569,14 @@ "enumerant" : "PostDepthCoverage", "value" : 4446, "capabilities" : [ "SampleMaskPostDepthCoverage" ], + "extensions" : [ "SPV_KHR_post_depth_coverage" ], "version" : "None" }, { "enumerant" : "StencilRefReplacingEXT", "value" : 5027, "capabilities" : [ "StencilExportEXT" ], + "extensions" : [ "SPV_EXT_shader_stencil_export" ], "version" : "None" } ] @@ -5513,6 +5543,7 @@ { "enumerant" : "ExplicitInterpAMD", "value" : 4999, + "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ], "version" : "None" }, { @@ -5542,6 +5573,11 @@ { "kind" : "LiteralInteger", "name" : "'Offset'" } ] }, + { + "enumerant" : "NonUniformEXT", + "value" : 5300, + "capabilities" : [ "ShaderNonUniformEXT" ] + }, { "enumerant" : "HlslCounterBufferGOOGLE", "value" : 5634, @@ -5728,7 +5764,7 @@ { "enumerant" : "SubgroupSize", "value" : 36, - "capabilities" : [ "Kernel", "GroupNonUniform" ] + "capabilities" : [ "Kernel", "GroupNonUniform", "SubgroupBallotKHR" ] }, { "enumerant" : "SubgroupMaxSize", @@ -5753,7 +5789,7 @@ { "enumerant" : "SubgroupLocalInvocationId", "value" : 41, - "capabilities" : [ "Kernel", "GroupNonUniform" ] + "capabilities" : [ "Kernel", "GroupNonUniform", "SubgroupBallotKHR" ] }, { "enumerant" : "VertexIndex", @@ -5799,101 +5835,119 @@ "enumerant" : "SubgroupEqMaskKHR", "value" : 4416, "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ], + "extensions" : [ "SPV_KHR_shader_ballot" ], "version" : "1.3" }, { "enumerant" : "SubgroupGeMaskKHR", "value" : 4417, "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ], + "extensions" : [ "SPV_KHR_shader_ballot" ], "version" : "1.3" }, { "enumerant" : "SubgroupGtMaskKHR", "value" : 4418, "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ], + "extensions" : [ "SPV_KHR_shader_ballot" ], "version" : "1.3" }, { "enumerant" : "SubgroupLeMaskKHR", "value" : 4419, "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ], + "extensions" : [ "SPV_KHR_shader_ballot" ], "version" : "1.3" }, { "enumerant" : "SubgroupLtMaskKHR", "value" : 4420, "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ], + "extensions" : [ "SPV_KHR_shader_ballot" ], "version" : "1.3" }, { "enumerant" : "BaseVertex", "value" : 4424, "capabilities" : [ "DrawParameters" ], + "extensions" : [ "SPV_KHR_shader_draw_parameters" ], "version" : "1.3" }, { "enumerant" : "BaseInstance", "value" : 4425, "capabilities" : [ "DrawParameters" ], + "extensions" : [ "SPV_KHR_shader_draw_parameters" ], "version" : "1.3" }, { "enumerant" : "DrawIndex", "value" : 4426, "capabilities" : [ "DrawParameters" ], + "extensions" : [ "SPV_KHR_shader_draw_parameters" ], "version" : "1.3" }, { "enumerant" : "DeviceIndex", "value" : 4438, "capabilities" : [ "DeviceGroup" ], + "extensions" : [ "SPV_KHR_device_group" ], "version" : "1.3" }, { "enumerant" : "ViewIndex", "value" : 4440, "capabilities" : [ "MultiView" ], + "extensions" : [ "SPV_KHR_multiview" ], "version" : "1.3" }, { "enumerant" : "BaryCoordNoPerspAMD", "value" : 4992, + "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ], "version" : "None" }, { "enumerant" : "BaryCoordNoPerspCentroidAMD", "value" : 4993, + "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ], "version" : "None" }, { "enumerant" : "BaryCoordNoPerspSampleAMD", "value" : 4994, + "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ], "version" : "None" }, { "enumerant" : "BaryCoordSmoothAMD", "value" : 4995, + "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ], "version" : "None" }, { "enumerant" : "BaryCoordSmoothCentroidAMD", "value" : 4996, + "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ], "version" : "None" }, { "enumerant" : "BaryCoordSmoothSampleAMD", "value" : 4997, + "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ], "version" : "None" }, { "enumerant" : "BaryCoordPullModelAMD", "value" : 4998, + "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ], "version" : "None" }, { "enumerant" : "FragStencilRefEXT", "value" : 5014, "capabilities" : [ "StencilExportEXT" ], + "extensions" : [ "SPV_EXT_shader_stencil_export" ], "version" : "None" }, { @@ -5930,6 +5984,7 @@ "enumerant" : "FullyCoveredEXT", "value" : 5264, "capabilities" : [ "FragmentFullyCoveredEXT" ], + "extensions" : [ "SPV_EXT_fragment_fully_covered" ], "version" : "None" } ] @@ -5984,6 +6039,21 @@ "value" : 3, "capabilities" : [ "GroupNonUniformClustered" ], "version" : "1.3" + }, + { + "enumerant" : "PartitionedReduceNV", + "value" : 6, + "capabilities" : [ "GroupNonUniformPartitionedNV" ] + }, + { + "enumerant" : "PartitionedInclusiveScanNV", + "value" : 7, + "capabilities" : [ "GroupNonUniformPartitionedNV" ] + }, + { + "enumerant" : "PartitionedExclusiveScanNV", + "value" : 8, + "capabilities" : [ "GroupNonUniformPartitionedNV" ] } ] }, @@ -6412,6 +6482,7 @@ { "enumerant" : "DeviceGroup", "value" : 4437, + "extensions" : [ "SPV_KHR_device_group" ], "version" : "1.3" }, { @@ -6538,6 +6609,90 @@ "extensions" : [ "SPV_EXT_fragment_fully_covered" ], "version" : "None" }, + { + "enumerant" : "ShaderNonUniformEXT", + "value" : 5301, + "capabilities" : [ "Shader" ], + "extensions" : [ "SPV_EXT_descriptor_indexing" ], + "version" : "None" + }, + { + "enumerant" : "RuntimeDescriptorArrayEXT", + "value" : 5302, + "capabilities" : [ "Shader" ], + "extensions" : [ "SPV_EXT_descriptor_indexing" ], + "version" : "None" + }, + { + "enumerant" : "InputAttachmentArrayDynamicIndexingEXT", + "value" : 5303, + "capabilities" : [ "InputAttachment" ], + "extensions" : [ "SPV_EXT_descriptor_indexing" ], + "version" : "None" + }, + { + "enumerant" : "UniformTexelBufferArrayDynamicIndexingEXT", + "value" : 5304, + "capabilities" : [ "SampledBuffer" ], + "extensions" : [ "SPV_EXT_descriptor_indexing" ], + "version" : "None" + }, + { + "enumerant" : "StorageTexelBufferArrayDynamicIndexingEXT", + "value" : 5305, + "capabilities" : [ "ImageBuffer" ], + "extensions" : [ "SPV_EXT_descriptor_indexing" ], + "version" : "None" + }, + { + "enumerant" : "UniformBufferArrayNonUniformIndexingEXT", + "value" : 5306, + "capabilities" : [ "ShaderNonUniformEXT" ], + "extensions" : [ "SPV_EXT_descriptor_indexing" ], + "version" : "None" + }, + { + "enumerant" : "SampledImageArrayNonUniformIndexingEXT", + "value" : 5307, + "capabilities" : [ "ShaderNonUniformEXT" ], + "extensions" : [ "SPV_EXT_descriptor_indexing" ], + "version" : "None" + }, + { + "enumerant" : "StorageBufferArrayNonUniformIndexingEXT", + "value" : 5308, + "capabilities" : [ "ShaderNonUniformEXT" ], + "extensions" : [ "SPV_EXT_descriptor_indexing" ], + "version" : "None" + }, + { + "enumerant" : "StorageImageArrayNonUniformIndexingEXT", + "value" : 5309, + "capabilities" : [ "ShaderNonUniformEXT" ], + "extensions" : [ "SPV_EXT_descriptor_indexing" ], + "version" : "None" + }, + { + "enumerant" : "InputAttachmentArrayNonUniformIndexingEXT", + "value" : 5310, + "capabilities" : [ "InputAttachment", "ShaderNonUniformEXT" ], + "extensions" : [ "SPV_EXT_descriptor_indexing" ], + "version" : "None" + }, + { + "enumerant" : "UniformTexelBufferArrayNonUniformIndexingEXT", + "value" : 5311, + "capabilities" : [ "SampledBuffer", "ShaderNonUniformEXT" ], + "extensions" : [ "SPV_EXT_descriptor_indexing" ], + "version" : "None" + }, + { + "enumerant" : "StorageTexelBufferArrayNonUniformIndexingEXT", + "value" : 5312, + "capabilities" : [ "ImageBuffer", "ShaderNonUniformEXT" ], + "extensions" : [ "SPV_EXT_descriptor_indexing" ], + "version" : "None" + }, { "enumerant" : "SubgroupShuffleINTEL", "value" : 5568, @@ -6555,6 +6710,12 @@ "value" : 5570, "extensions" : [ "SPV_INTEL_subgroups" ], "version" : "None" + }, + { + "enumerant" : "GroupNonUniformPartitionedNV", + "value" : 5297, + "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ], + "version" : "None" } ] }, diff --git a/src/compiler/spirv/spirv.h b/src/compiler/spirv/spirv.h index 012f886e2dd..e0a0330ba63 100644 --- a/src/compiler/spirv/spirv.h +++ b/src/compiler/spirv/spirv.h @@ -397,6 +397,7 @@ typedef enum SpvDecoration_ { SpvDecorationPassthroughNV = 5250, SpvDecorationViewportRelativeNV = 5252, SpvDecorationSecondaryViewportRelativeNV = 5256, + SpvDecorationNonUniformEXT = 5300, SpvDecorationHlslCounterBufferGOOGLE = 5634, SpvDecorationHlslSemanticGOOGLE = 5635, SpvDecorationMax = 0x7fffffff, @@ -576,6 +577,9 @@ typedef enum SpvGroupOperation_ { SpvGroupOperationInclusiveScan = 1, SpvGroupOperationExclusiveScan = 2, SpvGroupOperationClusteredReduce = 3, + SpvGroupOperationPartitionedReduceNV = 6, + SpvGroupOperationPartitionedInclusiveScanNV = 7, + SpvGroupOperationPartitionedExclusiveScanNV = 8, SpvGroupOperationMax = 0x7fffffff, } SpvGroupOperation; @@ -692,6 +696,19 @@ typedef enum SpvCapability_ { SpvCapabilityShaderStereoViewNV = 5259, SpvCapabilityPerViewAttributesNV = 5260, SpvCapabilityFragmentFullyCoveredEXT = 5265, + SpvCapabilityGroupNonUniformPartitionedNV = 5297, + SpvCapabilityShaderNonUniformEXT = 5301, + SpvCapabilityRuntimeDescriptorArrayEXT = 5302, + SpvCapabilityInputAttachmentArrayDynamicIndexingEXT = 5303, + SpvCapabilityUniformTexelBufferArrayDynamicIndexingEXT = 5304, + SpvCapabilityStorageTexelBufferArrayDynamicIndexingEXT = 5305, + SpvCapabilityUniformBufferArrayNonUniformIndexingEXT = 5306, + SpvCapabilitySampledImageArrayNonUniformIndexingEXT = 5307, + SpvCapabilityStorageBufferArrayNonUniformIndexingEXT = 5308, + SpvCapabilityStorageImageArrayNonUniformIndexingEXT = 5309, + SpvCapabilityInputAttachmentArrayNonUniformIndexingEXT = 5310, + SpvCapabilityUniformTexelBufferArrayNonUniformIndexingEXT = 5311, + SpvCapabilityStorageTexelBufferArrayNonUniformIndexingEXT = 5312, SpvCapabilitySubgroupShuffleINTEL = 5568, SpvCapabilitySubgroupBufferBlockIOINTEL = 5569, SpvCapabilitySubgroupImageBlockIOINTEL = 5570, @@ -1055,6 +1072,7 @@ typedef enum SpvOp_ { SpvOpGroupSMaxNonUniformAMD = 5007, SpvOpFragmentMaskFetchAMD = 5011, SpvOpFragmentFetchAMD = 5012, + SpvOpGroupNonUniformPartitionNV = 5296, SpvOpSubgroupShuffleINTEL = 5571, SpvOpSubgroupShuffleDownINTEL = 5572, SpvOpSubgroupShuffleUpINTEL = 5573, -- 2.30.2