On Friday, 2017-11-10 14:32:43 -0800, Ian Romanick wrote: > From: Ian Romanick <ian.d.roman...@intel.com> > > Signed-off-by: Ian Romanick <ian.d.roman...@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,
Aren't you going backwards here? 1.2.1 -> 1.0.12 Seems to me like the latest is 1.2.2, is that what you meant to pull? https://github.com/KhronosGroup/SPIRV-Headers/tree/master/include/spirv/1.2/ > "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 > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev