From 2a568c595bee461bb6b0ad2bc6d430b0b370f4cc Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Mon, 20 Jul 2020 09:53:33 -0500 Subject: [PATCH] spirv: Update headers and grammar json This pulls in commit 63cb1fc131573fa from KhronosGroup/SPIRV-Headers Acked-by: Lionel Landwerlin Acked-by: Samuel Pitoiset Part-of: --- src/compiler/spirv/spirv.core.grammar.json | 1885 ++++++++++++-------- src/compiler/spirv/spirv.h | 109 +- 2 files changed, 1232 insertions(+), 762 deletions(-) diff --git a/src/compiler/spirv/spirv.core.grammar.json b/src/compiler/spirv/spirv.core.grammar.json index 824ae4b6b99..3fd7da51bbd 100644 --- a/src/compiler/spirv/spirv.core.grammar.json +++ b/src/compiler/spirv/spirv.core.grammar.json @@ -27,7 +27,7 @@ "magic_number" : "0x07230203", "major_version" : 1, "minor_version" : 5, - "revision" : 1, + "revision" : 3, "instruction_printing_class" : [ { "tag" : "@exclude" @@ -4186,6 +4186,142 @@ "extensions" : [ "SPV_KHR_shader_ballot" ], "version" : "None" }, + { + "opname" : "OpTypeRayQueryProvisionalKHR", + "class" : "Reserved", + "opcode" : 4472, + "operands" : [ + { "kind" : "IdResult" } + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" + }, + { + "opname" : "OpRayQueryInitializeKHR", + "class" : "Reserved", + "opcode" : 4473, + "operands" : [ + { + "kind" : "IdRef", + "name" : "'RayQuery'" + }, + { + "kind" : "IdRef", + "name" : "'Accel'" + }, + { + "kind" : "IdRef", + "name" : "'RayFlags'" + }, + { + "kind" : "IdRef", + "name" : "'CullMask'" + }, + { + "kind" : "IdRef", + "name" : "'RayOrigin'" + }, + { + "kind" : "IdRef", + "name" : "'RayTMin'" + }, + { + "kind" : "IdRef", + "name" : "'RayDirection'" + }, + { + "kind" : "IdRef", + "name" : "'RayTMax'" + } + + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" + }, + { + "opname" : "OpRayQueryTerminateKHR", + "class" : "Reserved", + "opcode" : 4474, + "operands" : [ + { + "kind" : "IdRef", + "name" : "'RayQuery'" + } + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" + }, + { + "opname" : "OpRayQueryGenerateIntersectionKHR", + "class" : "Reserved", + "opcode" : 4475, + "operands" : [ + { + "kind" : "IdRef", + "name" : "'RayQuery'" + }, + { + "kind" : "IdRef", + "name" : "'HitT'" + } + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" + }, + { + "opname" : "OpRayQueryConfirmIntersectionKHR", + "class" : "Reserved", + "opcode" : 4476, + "operands" : [ + { + "kind" : "IdRef", + "name" : "'RayQuery'" + } + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" + }, + { + "opname" : "OpRayQueryProceedKHR", + "class" : "Reserved", + "opcode" : 4477, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { + "kind" : "IdRef", + "name" : "'RayQuery'" + } + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" + }, + { + "opname" : "OpRayQueryGetIntersectionTypeKHR", + "class" : "Reserved", + "opcode" : 4479, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { + "kind" : "IdRef", + "name" : "'RayQuery'" + }, + { + "kind" : "IdRef", + "name" : "'Intersection'" + } + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" + }, { "opname" : "OpGroupIAddNonUniformAMD", "class" : "Group", @@ -4517,502 +4653,45 @@ "version" : "None" }, { - "opname" : "OpTypeRayQueryProvisionalKHR", - "class" : "Reserved", - "opcode" : 4472, - "operands" : [ - { "kind" : "IdResult" } - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "opname" : "OpRayQueryInitializeKHR", - "class" : "Reserved", - "opcode" : 4473, - "operands" : [ - { - "kind" : "IdRef", - "name" : "'RayQuery'" - }, - { - "kind" : "IdRef", - "name" : "'Accel'" - }, - { - "kind" : "IdRef", - "name" : "'RayFlags'" - }, - { - "kind" : "IdRef", - "name" : "'CullMask'" - }, - { - "kind" : "IdRef", - "name" : "'RayOrigin'" - }, - { - "kind" : "IdRef", - "name" : "'RayTMin'" - }, - { - "kind" : "IdRef", - "name" : "'RayDirection'" - }, - { - "kind" : "IdRef", - "name" : "'RayTMax'" - } + "opname" : "OpExecuteCallableNV", + "class" : "Reserved", + "opcode" : 5344, + "operands" : [ - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" + { "kind" : "IdRef", "name" : "'SBT Index'" }, + { "kind" : "IdRef", "name" : "'Callable DataId'" } + ], + "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ], + "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], + "version" : "None" }, { - "opname" : "OpRayQueryTerminateKHR", - "class" : "Reserved", - "opcode" : 4474, - "operands" : [ - { - "kind" : "IdRef", - "name" : "'RayQuery'" - } - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" + "opname" : "OpExecuteCallableKHR", + "class" : "Reserved", + "opcode" : 5344, + "operands" : [ + + { "kind" : "IdRef", "name" : "'SBT Index'" }, + { "kind" : "IdRef", "name" : "'Callable DataId'" } + ], + "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ], + "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], + "version" : "None" }, { - "opname" : "OpRayQueryGenerateIntersectionKHR", - "class" : "Reserved", - "opcode" : 4475, - "operands" : [ - { - "kind" : "IdRef", - "name" : "'RayQuery'" - }, - { - "kind" : "IdRef", - "name" : "'HitT'" - } - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "opname" : "OpRayQueryConfirmIntersectionKHR", - "class" : "Reserved", - "opcode" : 4476, - "operands" : [ - { - "kind" : "IdRef", - "name" : "'RayQuery'" - } - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "opname" : "OpRayQueryProceedKHR", - "class" : "Reserved", - "opcode" : 4477, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { - "kind" : "IdRef", - "name" : "'RayQuery'" - } - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "opname" : "OpRayQueryGetIntersectionTypeKHR", - "class" : "Reserved", - "opcode" : 4479, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { - "kind" : "IdRef", - "name" : "'RayQuery'" - }, - { - "kind" : "IdRef", - "name" : "'Intersection'" - } - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "opname" : "OpRayQueryGetRayTMinKHR", - "class" : "Reserved", - "opcode" : 6016, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { - "kind" : "IdRef", - "name" : "'RayQuery'" - } - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "opname" : "OpRayQueryGetRayFlagsKHR", - "class" : "Reserved", - "opcode" : 6017, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { - "kind" : "IdRef", - "name" : "'RayQuery'" - } - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "opname" : "OpRayQueryGetIntersectionTKHR", - "class" : "Reserved", - "opcode" : 6018, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { - "kind" : "IdRef", - "name" : "'RayQuery'" - }, - { - "kind" : "IdRef", - "name" : "'Intersection'" - } - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "opname" : "OpRayQueryGetIntersectionInstanceCustomIndexKHR", - "class" : "Reserved", - "opcode" : 6019, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { - "kind" : "IdRef", - "name" : "'RayQuery'" - }, - { - "kind" : "IdRef", - "name" : "'Intersection'" - } - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "opname" : "OpRayQueryGetIntersectionInstanceIdKHR", - "class" : "Reserved", - "opcode" : 6020, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { - "kind" : "IdRef", - "name" : "'RayQuery'" - }, - { - "kind" : "IdRef", - "name" : "'Intersection'" - } - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "opname" : "OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR", - "class" : "Reserved", - "opcode" : 6021, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { - "kind" : "IdRef", - "name" : "'RayQuery'" - }, - { - "kind" : "IdRef", - "name" : "'Intersection'" - } - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "opname" : "OpRayQueryGetIntersectionGeometryIndexKHR", - "class" : "Reserved", - "opcode" : 6022, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { - "kind" : "IdRef", - "name" : "'RayQuery'" - }, - { - "kind" : "IdRef", - "name" : "'Intersection'" - } - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "opname" : "OpRayQueryGetIntersectionPrimitiveIndexKHR", - "class" : "Reserved", - "opcode" : 6023, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { - "kind" : "IdRef", - "name" : "'RayQuery'" - }, - { - "kind" : "IdRef", - "name" : "'Intersection'" - } - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "opname" : "OpRayQueryGetIntersectionBarycentricsKHR", - "class" : "Reserved", - "opcode" : 6024, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { - "kind" : "IdRef", - "name" : "'RayQuery'" - }, - { - "kind" : "IdRef", - "name" : "'Intersection'" - } - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "opname" : "OpRayQueryGetIntersectionFrontFaceKHR", - "class" : "Reserved", - "opcode" : 6025, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { - "kind" : "IdRef", - "name" : "'RayQuery'" - }, - { - "kind" : "IdRef", - "name" : "'Intersection'" - } - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "opname" : "OpRayQueryGetIntersectionCandidateAABBOpaqueKHR", - "class" : "Reserved", - "opcode" : 6026, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { - "kind" : "IdRef", - "name" : "'RayQuery'" - } - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "opname" : "OpRayQueryGetIntersectionObjectRayDirectionKHR", - "class" : "Reserved", - "opcode" : 6027, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { - "kind" : "IdRef", - "name" : "'RayQuery'" - }, - { - "kind" : "IdRef", - "name" : "'Intersection'" - } - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "opname" : "OpRayQueryGetIntersectionObjectRayOriginKHR", - "class" : "Reserved", - "opcode" : 6028, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { - "kind" : "IdRef", - "name" : "'RayQuery'" - }, - { - "kind" : "IdRef", - "name" : "'Intersection'" - } - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "opname" : "OpRayQueryGetWorldRayDirectionKHR", - "class" : "Reserved", - "opcode" : 6029, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { - "kind" : "IdRef", - "name" : "'RayQuery'" - } - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - - { - "opname" : "OpRayQueryGetWorldRayOriginKHR", - "class" : "Reserved", - "opcode" : 6030, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { - "kind" : "IdRef", - "name" : "'RayQuery'" - } - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "opname" : "OpRayQueryGetIntersectionObjectToWorldKHR", - "class" : "Reserved", - "opcode" : 6031, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { - "kind" : "IdRef", - "name" : "'RayQuery'" - }, - { - "kind" : "IdRef", - "name" : "'Intersection'" - } - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "opname" : "OpRayQueryGetIntersectionWorldToObjectKHR", - "class" : "Reserved", - "opcode" : 6032, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { - "kind" : "IdRef", - "name" : "'RayQuery'" - }, - { - "kind" : "IdRef", - "name" : "'Intersection'" - } - ], - "capabilities" : [ "RayQueryProvisionalKHR" ], - "extensions" : [ "SPV_KHR_ray_query" ], - "version" : "None" - }, - { - "opname" : "OpExecuteCallableNV", - "class" : "Reserved", - "opcode" : 5344, - "operands" : [ - - { "kind" : "IdRef", "name" : "'SBT Index'" }, - { "kind" : "IdRef", "name" : "'Callable DataId'" } - ], - "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "opname" : "OpExecuteCallableKHR", - "class" : "Reserved", - "opcode" : 5344, - "operands" : [ - - { "kind" : "IdRef", "name" : "'SBT Index'" }, - { "kind" : "IdRef", "name" : "'Callable DataId'" } - ], - "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ], - "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ], - "version" : "None" - }, - { - "opname" : "OpTypeCooperativeMatrixNV", - "class" : "Reserved", - "opcode" : 5358, - "operands" : [ - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Component Type'" }, - { "kind" : "IdScope", "name" : "'Execution'" }, - { "kind" : "IdRef", "name" : "'Rows'" }, - { "kind" : "IdRef", "name" : "'Columns'" } - ], - "capabilities" : [ "CooperativeMatrixNV" ], - "extensions" : [ "SPV_NV_cooperative_matrix" ], - "version" : "None" + "opname" : "OpTypeCooperativeMatrixNV", + "class" : "Reserved", + "opcode" : 5358, + "operands" : [ + { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "'Component Type'" }, + { "kind" : "IdScope", "name" : "'Execution'" }, + { "kind" : "IdRef", "name" : "'Rows'" }, + { "kind" : "IdRef", "name" : "'Columns'" } + ], + "capabilities" : [ "CooperativeMatrixNV" ], + "extensions" : [ "SPV_NV_cooperative_matrix" ], + "version" : "None" }, { "opname" : "OpCooperativeMatrixLoadNV", @@ -5420,6 +5099,32 @@ "capabilities" : [ "IntegerFunctions2INTEL" ], "version" : "None" }, + { + "opname" : "OpFunctionPointerINTEL", + "class" : "@exclude", + "opcode" : 5600, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "'Function'" } + ], + "capabilities" : [ "FunctionPointersINTEL" ], + "extensions" : [ "SPV_INTEL_function_pointers" ], + "version" : "None" + }, + { + "opname" : "OpFunctionPointerCallINTEL", + "class" : "@exclude", + "opcode" : 5601, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { "kind" : "IdRef", "quantifier" : "*", "name" : "'Operand 1'" } + ], + "capabilities" : [ "FunctionPointersINTEL" ], + "extensions" : [ "SPV_INTEL_function_pointers" ], + "version" : "None" + }, { "opname" : "OpDecorateString", "class" : "Annotation", @@ -6539,7 +6244,237 @@ { "opname" : "OpSubgroupAvcRefSetBidirectionalMixDisableINTEL", "class" : "@exclude", - "opcode" : 5784, + "opcode" : 5784, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "'Payload'" } + ], + "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], + "version" : "None" + }, + { + "opname" : "OpSubgroupAvcRefSetBilinearFilterEnableINTEL", + "class" : "@exclude", + "opcode" : 5785, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "'Payload'" } + ], + "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], + "version" : "None" + }, + { + "opname" : "OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL", + "class" : "@exclude", + "opcode" : 5786, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "'Src Image'" }, + { "kind" : "IdRef", "name" : "'Ref Image'" }, + { "kind" : "IdRef", "name" : "'Payload'" } + ], + "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], + "version" : "None" + }, + { + "opname" : "OpSubgroupAvcRefEvaluateWithDualReferenceINTEL", + "class" : "@exclude", + "opcode" : 5787, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "'Src Image'" }, + { "kind" : "IdRef", "name" : "'Fwd Ref Image'" }, + { "kind" : "IdRef", "name" : "'Bwd Ref Image'" }, + { "kind" : "IdRef", "name" : "'Payload'" } + ], + "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], + "version" : "None" + }, + { + "opname" : "OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL", + "class" : "@exclude", + "opcode" : 5788, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "'Src Image'" }, + { "kind" : "IdRef", "name" : "'Packed Reference Ids'" }, + { "kind" : "IdRef", "name" : "'Payload'" } + ], + "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], + "version" : "None" + }, + { + "opname" : "OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL", + "class" : "@exclude", + "opcode" : 5789, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "'Src Image'" }, + { "kind" : "IdRef", "name" : "'Packed Reference Ids'" }, + { "kind" : "IdRef", "name" : "'Packed Reference Field Polarities'" }, + { "kind" : "IdRef", "name" : "'Payload'" } + ], + "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], + "version" : "None" + }, + { + "opname" : "OpSubgroupAvcRefConvertToMceResultINTEL", + "class" : "@exclude", + "opcode" : 5790, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "'Payload'" } + ], + "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], + "version" : "None" + }, + { + "opname" : "OpSubgroupAvcSicInitializeINTEL", + "class" : "@exclude", + "opcode" : 5791, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "'Src Coord'" } + ], + "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], + "version" : "None" + }, + { + "opname" : "OpSubgroupAvcSicConfigureSkcINTEL", + "class" : "@exclude", + "opcode" : 5792, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "'Skip Block Partition Type'" }, + { "kind" : "IdRef", "name" : "'Skip Motion Vector Mask'" }, + { "kind" : "IdRef", "name" : "'Motion Vectors'" }, + { "kind" : "IdRef", "name" : "'Bidirectional Weight'" }, + { "kind" : "IdRef", "name" : "'Sad Adjustment'" }, + { "kind" : "IdRef", "name" : "'Payload'" } + ], + "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], + "version" : "None" + }, + { + "opname" : "OpSubgroupAvcSicConfigureIpeLumaINTEL", + "class" : "@exclude", + "opcode" : 5793, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "'Luma Intra Partition Mask'" }, + { "kind" : "IdRef", "name" : "'Intra Neighbour Availabilty'" }, + { "kind" : "IdRef", "name" : "'Left Edge Luma Pixels'" }, + { "kind" : "IdRef", "name" : "'Upper Left Corner Luma Pixel'" }, + { "kind" : "IdRef", "name" : "'Upper Edge Luma Pixels'" }, + { "kind" : "IdRef", "name" : "'Upper Right Edge Luma Pixels'" }, + { "kind" : "IdRef", "name" : "'Sad Adjustment'" }, + { "kind" : "IdRef", "name" : "'Payload'" } + ], + "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], + "version" : "None" + }, + { + "opname" : "OpSubgroupAvcSicConfigureIpeLumaChromaINTEL", + "class" : "@exclude", + "opcode" : 5794, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "'Luma Intra Partition Mask'" }, + { "kind" : "IdRef", "name" : "'Intra Neighbour Availabilty'" }, + { "kind" : "IdRef", "name" : "'Left Edge Luma Pixels'" }, + { "kind" : "IdRef", "name" : "'Upper Left Corner Luma Pixel'" }, + { "kind" : "IdRef", "name" : "'Upper Edge Luma Pixels'" }, + { "kind" : "IdRef", "name" : "'Upper Right Edge Luma Pixels'" }, + { "kind" : "IdRef", "name" : "'Left Edge Chroma Pixels'" }, + { "kind" : "IdRef", "name" : "'Upper Left Corner Chroma Pixel'" }, + { "kind" : "IdRef", "name" : "'Upper Edge Chroma Pixels'" }, + { "kind" : "IdRef", "name" : "'Sad Adjustment'" }, + { "kind" : "IdRef", "name" : "'Payload'" } + ], + "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ], + "version" : "None" + }, + { + "opname" : "OpSubgroupAvcSicGetMotionVectorMaskINTEL", + "class" : "@exclude", + "opcode" : 5795, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "'Skip Block Partition Type'" }, + { "kind" : "IdRef", "name" : "'Direction'" } + ], + "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], + "version" : "None" + }, + { + "opname" : "OpSubgroupAvcSicConvertToMcePayloadINTEL", + "class" : "@exclude", + "opcode" : 5796, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "'Payload'" } + ], + "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], + "version" : "None" + }, + { + "opname" : "OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL", + "class" : "@exclude", + "opcode" : 5797, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "'Packed Shape Penalty'" }, + { "kind" : "IdRef", "name" : "'Payload'" } + ], + "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], + "version" : "None" + }, + { + "opname" : "OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL", + "class" : "@exclude", + "opcode" : 5798, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "'Luma Mode Penalty'" }, + { "kind" : "IdRef", "name" : "'Luma Packed Neighbor Modes'" }, + { "kind" : "IdRef", "name" : "'Luma Packed Non Dc Penalty'" }, + { "kind" : "IdRef", "name" : "'Payload'" } + ], + "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], + "version" : "None" + }, + { + "opname" : "OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL", + "class" : "@exclude", + "opcode" : 5799, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "'Chroma Mode Base Penalty'" }, + { "kind" : "IdRef", "name" : "'Payload'" } + ], + "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ], + "version" : "None" + }, + { + "opname" : "OpSubgroupAvcSicSetBilinearFilterEnableINTEL", + "class" : "@exclude", + "opcode" : 5800, "operands" : [ { "kind" : "IdResultType" }, { "kind" : "IdResult" }, @@ -6549,227 +6484,202 @@ "version" : "None" }, { - "opname" : "OpSubgroupAvcRefSetBilinearFilterEnableINTEL", + "opname" : "OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL", "class" : "@exclude", - "opcode" : 5785, + "opcode" : 5801, "operands" : [ { "kind" : "IdResultType" }, { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "'Packed Sad Coefficients'" }, { "kind" : "IdRef", "name" : "'Payload'" } ], "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], "version" : "None" }, { - "opname" : "OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL", + "opname" : "OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL", "class" : "@exclude", - "opcode" : 5786, + "opcode" : 5802, "operands" : [ { "kind" : "IdResultType" }, { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Ref Image'" }, + { "kind" : "IdRef", "name" : "'Block Based Skip Type'" }, { "kind" : "IdRef", "name" : "'Payload'" } ], "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], "version" : "None" }, { - "opname" : "OpSubgroupAvcRefEvaluateWithDualReferenceINTEL", + "opname" : "OpSubgroupAvcSicEvaluateIpeINTEL", "class" : "@exclude", - "opcode" : 5787, + "opcode" : 5803, "operands" : [ { "kind" : "IdResultType" }, { "kind" : "IdResult" }, { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Fwd Ref Image'" }, - { "kind" : "IdRef", "name" : "'Bwd Ref Image'" }, { "kind" : "IdRef", "name" : "'Payload'" } ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], + "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], "version" : "None" }, { - "opname" : "OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL", + "opname" : "OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL", "class" : "@exclude", - "opcode" : 5788, + "opcode" : 5804, "operands" : [ { "kind" : "IdResultType" }, { "kind" : "IdResult" }, { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Packed Reference Ids'" }, + { "kind" : "IdRef", "name" : "'Ref Image'" }, { "kind" : "IdRef", "name" : "'Payload'" } ], "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], "version" : "None" }, { - "opname" : "OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL", + "opname" : "OpSubgroupAvcSicEvaluateWithDualReferenceINTEL", "class" : "@exclude", - "opcode" : 5789, + "opcode" : 5805, "operands" : [ { "kind" : "IdResultType" }, { "kind" : "IdResult" }, { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Packed Reference Ids'" }, - { "kind" : "IdRef", "name" : "'Packed Reference Field Polarities'" }, + { "kind" : "IdRef", "name" : "'Fwd Ref Image'" }, + { "kind" : "IdRef", "name" : "'Bwd Ref Image'" }, { "kind" : "IdRef", "name" : "'Payload'" } ], "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], "version" : "None" }, { - "opname" : "OpSubgroupAvcRefConvertToMceResultINTEL", + "opname" : "OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL", "class" : "@exclude", - "opcode" : 5790, + "opcode" : 5806, "operands" : [ { "kind" : "IdResultType" }, { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "'Src Image'" }, + { "kind" : "IdRef", "name" : "'Packed Reference Ids'" }, { "kind" : "IdRef", "name" : "'Payload'" } ], "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], "version" : "None" }, { - "opname" : "OpSubgroupAvcSicInitializeINTEL", + "opname" : "OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL", "class" : "@exclude", - "opcode" : 5791, + "opcode" : 5807, "operands" : [ { "kind" : "IdResultType" }, { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Coord'" } + { "kind" : "IdRef", "name" : "'Src Image'" }, + { "kind" : "IdRef", "name" : "'Packed Reference Ids'" }, + { "kind" : "IdRef", "name" : "'Packed Reference Field Polarities'" }, + { "kind" : "IdRef", "name" : "'Payload'" } ], "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], "version" : "None" }, { - "opname" : "OpSubgroupAvcSicConfigureSkcINTEL", + "opname" : "OpSubgroupAvcSicConvertToMceResultINTEL", "class" : "@exclude", - "opcode" : 5792, + "opcode" : 5808, "operands" : [ { "kind" : "IdResultType" }, { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Skip Block Partition Type'" }, - { "kind" : "IdRef", "name" : "'Skip Motion Vector Mask'" }, - { "kind" : "IdRef", "name" : "'Motion Vectors'" }, - { "kind" : "IdRef", "name" : "'Bidirectional Weight'" }, - { "kind" : "IdRef", "name" : "'Sad Adjustment'" }, { "kind" : "IdRef", "name" : "'Payload'" } ], "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], "version" : "None" }, { - "opname" : "OpSubgroupAvcSicConfigureIpeLumaINTEL", + "opname" : "OpSubgroupAvcSicGetIpeLumaShapeINTEL", "class" : "@exclude", - "opcode" : 5793, + "opcode" : 5809, "operands" : [ { "kind" : "IdResultType" }, { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Luma Intra Partition Mask'" }, - { "kind" : "IdRef", "name" : "'Intra Neighbour Availabilty'" }, - { "kind" : "IdRef", "name" : "'Left Edge Luma Pixels'" }, - { "kind" : "IdRef", "name" : "'Upper Left Corner Luma Pixel'" }, - { "kind" : "IdRef", "name" : "'Upper Edge Luma Pixels'" }, - { "kind" : "IdRef", "name" : "'Upper Right Edge Luma Pixels'" }, - { "kind" : "IdRef", "name" : "'Sad Adjustment'" }, { "kind" : "IdRef", "name" : "'Payload'" } ], "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], "version" : "None" }, { - "opname" : "OpSubgroupAvcSicConfigureIpeLumaChromaINTEL", + "opname" : "OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL", "class" : "@exclude", - "opcode" : 5794, + "opcode" : 5810, "operands" : [ { "kind" : "IdResultType" }, { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Luma Intra Partition Mask'" }, - { "kind" : "IdRef", "name" : "'Intra Neighbour Availabilty'" }, - { "kind" : "IdRef", "name" : "'Left Edge Luma Pixels'" }, - { "kind" : "IdRef", "name" : "'Upper Left Corner Luma Pixel'" }, - { "kind" : "IdRef", "name" : "'Upper Edge Luma Pixels'" }, - { "kind" : "IdRef", "name" : "'Upper Right Edge Luma Pixels'" }, - { "kind" : "IdRef", "name" : "'Left Edge Chroma Pixels'" }, - { "kind" : "IdRef", "name" : "'Upper Left Corner Chroma Pixel'" }, - { "kind" : "IdRef", "name" : "'Upper Edge Chroma Pixels'" }, - { "kind" : "IdRef", "name" : "'Sad Adjustment'" }, { "kind" : "IdRef", "name" : "'Payload'" } ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ], + "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], "version" : "None" }, { - "opname" : "OpSubgroupAvcSicGetMotionVectorMaskINTEL", + "opname" : "OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL", "class" : "@exclude", - "opcode" : 5795, + "opcode" : 5811, "operands" : [ { "kind" : "IdResultType" }, { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Skip Block Partition Type'" }, - { "kind" : "IdRef", "name" : "'Direction'" } + { "kind" : "IdRef", "name" : "'Payload'" } ], "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], "version" : "None" }, { - "opname" : "OpSubgroupAvcSicConvertToMcePayloadINTEL", + "opname" : "OpSubgroupAvcSicGetPackedIpeLumaModesINTEL", "class" : "@exclude", - "opcode" : 5796, + "opcode" : 5812, "operands" : [ { "kind" : "IdResultType" }, { "kind" : "IdResult" }, { "kind" : "IdRef", "name" : "'Payload'" } ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], + "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], "version" : "None" }, { - "opname" : "OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL", + "opname" : "OpSubgroupAvcSicGetIpeChromaModeINTEL", "class" : "@exclude", - "opcode" : 5797, + "opcode" : 5813, "operands" : [ { "kind" : "IdResultType" }, { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Packed Shape Penalty'" }, { "kind" : "IdRef", "name" : "'Payload'" } ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], + "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ], "version" : "None" }, { - "opname" : "OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL", + "opname" : "OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL", "class" : "@exclude", - "opcode" : 5798, + "opcode" : 5814, "operands" : [ { "kind" : "IdResultType" }, { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Luma Mode Penalty'" }, - { "kind" : "IdRef", "name" : "'Luma Packed Neighbor Modes'" }, - { "kind" : "IdRef", "name" : "'Luma Packed Non Dc Penalty'" }, { "kind" : "IdRef", "name" : "'Payload'" } ], "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], "version" : "None" }, { - "opname" : "OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL", + "opname" : "OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL", "class" : "@exclude", - "opcode" : 5799, + "opcode" : 5815, "operands" : [ { "kind" : "IdResultType" }, { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Chroma Mode Base Penalty'" }, { "kind" : "IdRef", "name" : "'Payload'" } ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ], + "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], "version" : "None" }, { - "opname" : "OpSubgroupAvcSicSetBilinearFilterEnableINTEL", + "opname" : "OpSubgroupAvcSicGetInterRawSadsINTEL", "class" : "@exclude", - "opcode" : 5800, + "opcode" : 5816, "operands" : [ { "kind" : "IdResultType" }, { "kind" : "IdResult" }, @@ -6779,208 +6689,392 @@ "version" : "None" }, { - "opname" : "OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL", - "class" : "@exclude", - "opcode" : 5801, + "opname" : "OpLoopControlINTEL", + "class" : "Reserved", + "opcode" : 5887, "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Packed Sad Coefficients'" }, - { "kind" : "IdRef", "name" : "'Payload'" } + { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Loop Control Parameters'" } ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], + "capabilities" : [ "UnstructuredLoopControlsINTEL" ], + "extensions" : [ "SPV_INTEL_unstructured_loop_controls" ], "version" : "None" }, { - "opname" : "OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL", - "class" : "@exclude", - "opcode" : 5802, + "opname" : "OpReadPipeBlockingINTEL", + "class" : "Pipe", + "opcode" : 5946, "operands" : [ { "kind" : "IdResultType" }, { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Block Based Skip Type'" }, - { "kind" : "IdRef", "name" : "'Payload'" } + { "kind" : "IdRef", "name" : "'Packet Size'" }, + { "kind" : "IdRef", "name" : "'Packet Alignment'" } ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], + "capabilities" : [ "BlockingPipesINTEL" ], + "extensions" : [ "SPV_INTEL_blocking_pipes" ], "version" : "None" }, { - "opname" : "OpSubgroupAvcSicEvaluateIpeINTEL", - "class" : "@exclude", - "opcode" : 5803, + "opname" : "OpWritePipeBlockingINTEL", + "class" : "Pipe", + "opcode" : 5947, "operands" : [ { "kind" : "IdResultType" }, { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Payload'" } + { "kind" : "IdRef", "name" : "'Packet Size'" }, + { "kind" : "IdRef", "name" : "'Packet Alignment'" } ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], + "capabilities" : [ "BlockingPipesINTEL" ], + "extensions" : [ "SPV_INTEL_blocking_pipes" ], "version" : "None" }, { - "opname" : "OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL", - "class" : "@exclude", - "opcode" : 5804, + "opname" : "OpFPGARegINTEL", + "class" : "Reserved", + "opcode" : 5949, "operands" : [ { "kind" : "IdResultType" }, { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Ref Image'" }, - { "kind" : "IdRef", "name" : "'Payload'" } + { "kind" : "IdRef", "name" : "'Result'" }, + { "kind" : "IdRef", "name" : "'Input'" } ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], + "capabilities" : [ "FPGARegINTEL" ], + "extensions" : [ "SPV_INTEL_fpga_reg" ], "version" : "None" }, { - "opname" : "OpSubgroupAvcSicEvaluateWithDualReferenceINTEL", - "class" : "@exclude", - "opcode" : 5805, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Fwd Ref Image'" }, - { "kind" : "IdRef", "name" : "'Bwd Ref Image'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" + "opname" : "OpRayQueryGetRayTMinKHR", + "class" : "Reserved", + "opcode" : 6016, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { + "kind" : "IdRef", + "name" : "'RayQuery'" + } + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" + }, + { + "opname" : "OpRayQueryGetRayFlagsKHR", + "class" : "Reserved", + "opcode" : 6017, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { + "kind" : "IdRef", + "name" : "'RayQuery'" + } + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" + }, + { + "opname" : "OpRayQueryGetIntersectionTKHR", + "class" : "Reserved", + "opcode" : 6018, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { + "kind" : "IdRef", + "name" : "'RayQuery'" + }, + { + "kind" : "IdRef", + "name" : "'Intersection'" + } + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" + }, + { + "opname" : "OpRayQueryGetIntersectionInstanceCustomIndexKHR", + "class" : "Reserved", + "opcode" : 6019, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { + "kind" : "IdRef", + "name" : "'RayQuery'" + }, + { + "kind" : "IdRef", + "name" : "'Intersection'" + } + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" + }, + { + "opname" : "OpRayQueryGetIntersectionInstanceIdKHR", + "class" : "Reserved", + "opcode" : 6020, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { + "kind" : "IdRef", + "name" : "'RayQuery'" + }, + { + "kind" : "IdRef", + "name" : "'Intersection'" + } + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" + }, + { + "opname" : "OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR", + "class" : "Reserved", + "opcode" : 6021, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { + "kind" : "IdRef", + "name" : "'RayQuery'" + }, + { + "kind" : "IdRef", + "name" : "'Intersection'" + } + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" + }, + { + "opname" : "OpRayQueryGetIntersectionGeometryIndexKHR", + "class" : "Reserved", + "opcode" : 6022, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { + "kind" : "IdRef", + "name" : "'RayQuery'" + }, + { + "kind" : "IdRef", + "name" : "'Intersection'" + } + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" }, { - "opname" : "OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL", - "class" : "@exclude", - "opcode" : 5806, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Packed Reference Ids'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" + "opname" : "OpRayQueryGetIntersectionPrimitiveIndexKHR", + "class" : "Reserved", + "opcode" : 6023, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { + "kind" : "IdRef", + "name" : "'RayQuery'" + }, + { + "kind" : "IdRef", + "name" : "'Intersection'" + } + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" }, { - "opname" : "OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL", - "class" : "@exclude", - "opcode" : 5807, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Src Image'" }, - { "kind" : "IdRef", "name" : "'Packed Reference Ids'" }, - { "kind" : "IdRef", "name" : "'Packed Reference Field Polarities'" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" + "opname" : "OpRayQueryGetIntersectionBarycentricsKHR", + "class" : "Reserved", + "opcode" : 6024, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { + "kind" : "IdRef", + "name" : "'RayQuery'" + }, + { + "kind" : "IdRef", + "name" : "'Intersection'" + } + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" }, { - "opname" : "OpSubgroupAvcSicConvertToMceResultINTEL", - "class" : "@exclude", - "opcode" : 5808, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" + "opname" : "OpRayQueryGetIntersectionFrontFaceKHR", + "class" : "Reserved", + "opcode" : 6025, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { + "kind" : "IdRef", + "name" : "'RayQuery'" + }, + { + "kind" : "IdRef", + "name" : "'Intersection'" + } + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" }, { - "opname" : "OpSubgroupAvcSicGetIpeLumaShapeINTEL", - "class" : "@exclude", - "opcode" : 5809, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], - "version" : "None" + "opname" : "OpRayQueryGetIntersectionCandidateAABBOpaqueKHR", + "class" : "Reserved", + "opcode" : 6026, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { + "kind" : "IdRef", + "name" : "'RayQuery'" + } + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" }, { - "opname" : "OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL", - "class" : "@exclude", - "opcode" : 5810, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], - "version" : "None" + "opname" : "OpRayQueryGetIntersectionObjectRayDirectionKHR", + "class" : "Reserved", + "opcode" : 6027, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { + "kind" : "IdRef", + "name" : "'RayQuery'" + }, + { + "kind" : "IdRef", + "name" : "'Intersection'" + } + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" }, { - "opname" : "OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL", - "class" : "@exclude", - "opcode" : 5811, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], - "version" : "None" + "opname" : "OpRayQueryGetIntersectionObjectRayOriginKHR", + "class" : "Reserved", + "opcode" : 6028, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { + "kind" : "IdRef", + "name" : "'RayQuery'" + }, + { + "kind" : "IdRef", + "name" : "'Intersection'" + } + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" }, { - "opname" : "OpSubgroupAvcSicGetPackedIpeLumaModesINTEL", - "class" : "@exclude", - "opcode" : 5812, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], - "version" : "None" + "opname" : "OpRayQueryGetWorldRayDirectionKHR", + "class" : "Reserved", + "opcode" : 6029, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { + "kind" : "IdRef", + "name" : "'RayQuery'" + } + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" }, { - "opname" : "OpSubgroupAvcSicGetIpeChromaModeINTEL", - "class" : "@exclude", - "opcode" : 5813, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ], - "version" : "None" + "opname" : "OpRayQueryGetWorldRayOriginKHR", + "class" : "Reserved", + "opcode" : 6030, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { + "kind" : "IdRef", + "name" : "'RayQuery'" + } + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" }, { - "opname" : "OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL", - "class" : "@exclude", - "opcode" : 5814, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], - "version" : "None" + "opname" : "OpRayQueryGetIntersectionObjectToWorldKHR", + "class" : "Reserved", + "opcode" : 6031, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { + "kind" : "IdRef", + "name" : "'RayQuery'" + }, + { + "kind" : "IdRef", + "name" : "'Intersection'" + } + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" }, { - "opname" : "OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL", - "class" : "@exclude", - "opcode" : 5815, - "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } - ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ], - "version" : "None" + "opname" : "OpRayQueryGetIntersectionWorldToObjectKHR", + "class" : "Reserved", + "opcode" : 6032, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { + "kind" : "IdRef", + "name" : "'RayQuery'" + }, + { + "kind" : "IdRef", + "name" : "'Intersection'" + } + ], + "capabilities" : [ "RayQueryProvisionalKHR" ], + "extensions" : [ "SPV_KHR_ray_query" ], + "version" : "None" }, { - "opname" : "OpSubgroupAvcSicGetInterRawSadsINTEL", - "class" : "@exclude", - "opcode" : 5816, + "opname" : "OpAtomicFAddEXT", + "class" : "Atomic", + "opcode" : 6035, "operands" : [ { "kind" : "IdResultType" }, { "kind" : "IdResult" }, - { "kind" : "IdRef", "name" : "'Payload'" } + { "kind" : "IdRef", "name" : "'Pointer'" }, + { "kind" : "IdScope", "name" : "'Memory'" }, + { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }, + { "kind" : "IdRef", "name" : "'Value'" } ], - "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ], + "capabilities" : [ "AtomicFloat32AddEXT", "AtomicFloat64AddEXT" ], + "extensions" : [ "SPV_EXT_shader_atomic_float_add" ], "version" : "None" } ], @@ -7251,6 +7345,76 @@ { "kind" : "LiteralInteger" } ], "version" : "1.4" + }, + { + "enumerant" : "InitiationIntervalINTEL", + "value" : "0x10000", + "parameters" : [ + { "kind" : "LiteralInteger" } + ], + "capabilities" : [ "FPGALoopControlsINTEL" ], + "extensions" : [ "SPV_INTEL_fpga_loop_controls" ], + "version" : "None" + }, + { + "enumerant" : "MaxConcurrencyINTEL", + "value" : "0x20000", + "parameters" : [ + { "kind" : "LiteralInteger" } + ], + "capabilities" : [ "FPGALoopControlsINTEL" ], + "extensions" : [ "SPV_INTEL_fpga_loop_controls" ], + "version" : "None" + }, + { + "enumerant" : "DependencyArrayINTEL", + "value" : "0x40000", + "parameters" : [ + { "kind" : "LiteralInteger" } + ], + "capabilities" : [ "FPGALoopControlsINTEL" ], + "extensions" : [ "SPV_INTEL_fpga_loop_controls" ], + "version" : "None" + }, + { + "enumerant" : "PipelineEnableINTEL", + "value" : "0x80000", + "parameters" : [ + { "kind" : "LiteralInteger" } + ], + "capabilities" : [ "FPGALoopControlsINTEL" ], + "extensions" : [ "SPV_INTEL_fpga_loop_controls" ], + "version" : "None" + }, + { + "enumerant" : "LoopCoalesceINTEL", + "value" : "0x100000", + "parameters" : [ + { "kind" : "LiteralInteger" } + ], + "capabilities" : [ "FPGALoopControlsINTEL" ], + "extensions" : [ "SPV_INTEL_fpga_loop_controls" ], + "version" : "None" + }, + { + "enumerant" : "MaxInterleavingINTEL", + "value" : "0x200000", + "parameters" : [ + { "kind" : "LiteralInteger" } + ], + "capabilities" : [ "FPGALoopControlsINTEL" ], + "extensions" : [ "SPV_INTEL_fpga_loop_controls" ], + "version" : "None" + }, + { + "enumerant" : "SpeculatedIterationsINTEL", + "value" : "0x400000", + "parameters" : [ + { "kind" : "LiteralInteger" } + ], + "capabilities" : [ "FPGALoopControlsINTEL" ], + "extensions" : [ "SPV_INTEL_fpga_loop_controls" ], + "version" : "None" } ] }, @@ -7480,57 +7644,68 @@ { "enumerant" : "NoneKHR", "value" : "0x0000", - "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ] + "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ], + "version" : "None" }, { "enumerant" : "OpaqueKHR", "value" : "0x0001", - "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ] + "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ], + "version" : "None" }, { "enumerant" : "NoOpaqueKHR", "value" : "0x0002", - "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ] + "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ], + "version" : "None" }, { "enumerant" : "TerminateOnFirstHitKHR", "value" : "0x0004", - "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ] + "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ], + "version" : "None" }, { "enumerant" : "SkipClosestHitShaderKHR", "value" : "0x0008", - "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ] + "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ], + "version" : "None" }, { "enumerant" : "CullBackFacingTrianglesKHR", "value" : "0x0010", - "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ] + "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ], + "version" : "None" }, { "enumerant" : "CullFrontFacingTrianglesKHR", "value" : "0x0020", - "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ] + "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ], + "version" : "None" }, { "enumerant" : "CullOpaqueKHR", "value" : "0x0040", - "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ] + "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ], + "version" : "None" }, { "enumerant" : "CullNoOpaqueKHR", "value" : "0x0080", - "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ] + "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ], + "version" : "None" }, { "enumerant" : "SkipTrianglesKHR", "value" : "0x0100", - "capabilities" : [ "RayTraversalPrimitiveCullingProvisionalKHR" ] + "capabilities" : [ "RayTraversalPrimitiveCullingProvisionalKHR" ], + "version" : "None" }, { "enumerant" : "SkipAABBsKHR", "value" : "0x0200", - "capabilities" : [ "RayTraversalPrimitiveCullingProvisionalKHR" ] + "capabilities" : [ "RayTraversalPrimitiveCullingProvisionalKHR" ], + "version" : "None" } ] }, @@ -8135,6 +8310,45 @@ "capabilities" : [ "FragmentShaderShadingRateInterlockEXT" ], "extensions" : [ "SPV_EXT_fragment_shader_interlock" ], "version" : "None" + }, + { + "enumerant" : "MaxWorkgroupSizeINTEL", + "value" : 5893, + "parameters" : [ + { "kind" : "LiteralInteger", "name" : "'max_x_size'" }, + { "kind" : "LiteralInteger", "name" : "'max_y_size'" }, + { "kind" : "LiteralInteger", "name" : "'max_z_size'" } + ], + "capabilities" : [ "KernelAttributesINTEL" ], + "extensions" : [ "SPV_INTEL_kernel_attributes" ], + "version" : "None" + }, + { + "enumerant" : "MaxWorkDimINTEL", + "value" : 5894, + "parameters" : [ + { "kind" : "LiteralInteger", "name" : "'max_dimensions'" } + ], + "capabilities" : [ "KernelAttributesINTEL" ], + "extensions" : [ "SPV_INTEL_kernel_attributes" ], + "version" : "None" + }, + { + "enumerant" : "NoGlobalOffsetINTEL", + "value" : 5895, + "capabilities" : [ "KernelAttributesINTEL" ], + "extensions" : [ "SPV_INTEL_kernel_attributes" ], + "version" : "None" + }, + { + "enumerant" : "NumSIMDWorkitemsINTEL", + "value" : 5896, + "parameters" : [ + { "kind" : "LiteralInteger", "name" : "'vector_width'" } + ], + "capabilities" : [ "FPGAKernelAttributesINTEL" ], + "extensions" : [ "SPV_INTEL_kernel_attributes" ], + "version" : "None" } ] }, @@ -8303,6 +8517,13 @@ "extensions" : [ "SPV_EXT_physical_storage_buffer" ], "capabilities" : [ "PhysicalStorageBufferAddresses" ], "version" : "1.5" + }, + { + "enumerant" : "CodeSectionINTEL", + "value" : 5605, + "extensions" : [ "SPV_INTEL_function_pointers" ], + "capabilities" : [ "FunctionPointersINTEL" ], + "version" : "None" } ] }, @@ -9323,6 +9544,13 @@ "extensions" : [ "SPV_EXT_physical_storage_buffer" ], "version" : "1.5" }, + { + "enumerant" : "ReferencedIndirectlyINTEL", + "value" : 5602, + "capabilities" : [ "IndirectReferencesINTEL" ], + "extensions" : [ "SPV_INTEL_function_pointers" ], + "version" : "None" + }, { "enumerant" : "CounterBuffer", "value" : 5634, @@ -9365,6 +9593,115 @@ ], "extensions" : [ "SPV_GOOGLE_user_type" ], "version" : "None" + }, + { + "enumerant" : "RegisterINTEL", + "value" : 5825, + "capabilities" : [ "FPGAMemoryAttributesINTEL" ], + "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ], + "version" : "None" + }, + { + "enumerant" : "MemoryINTEL", + "value" : 5826, + "parameters" : [ + { "kind" : "LiteralString", "name" : "'Memory Type'" } + ], + "capabilities" : [ "FPGAMemoryAttributesINTEL" ], + "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ], + "version" : "None" + }, + { + "enumerant" : "NumbanksINTEL", + "value" : 5827, + "parameters" : [ + { "kind" : "LiteralInteger", "name" : "'Banks'" } + ], + "capabilities" : [ "FPGAMemoryAttributesINTEL" ], + "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ], + "version" : "None" + }, + { + "enumerant" : "BankwidthINTEL", + "value" : 5828, + "parameters" : [ + { "kind" : "LiteralInteger", "name" : "'Bank Width'" } + ], + "capabilities" : [ "FPGAMemoryAttributesINTEL" ], + "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ], + "version" : "None" + }, + { + "enumerant" : "MaxPrivateCopiesINTEL", + "value" : 5829, + "parameters" : [ + { "kind" : "LiteralInteger", "name" : "'Maximum Copies'" } + ], + "capabilities" : [ "FPGAMemoryAttributesINTEL" ], + "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ], + "version" : "None" + }, + { + "enumerant" : "SinglepumpINTEL", + "value" : 5830, + "capabilities" : [ "FPGAMemoryAttributesINTEL" ], + "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ], + "version" : "None" + }, + { + "enumerant" : "DoublepumpINTEL", + "value" : 5831, + "capabilities" : [ "FPGAMemoryAttributesINTEL" ], + "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ], + "version" : "None" + }, + { + "enumerant" : "MaxReplicatesINTEL", + "value" : 5832, + "parameters" : [ + { "kind" : "LiteralInteger", "name" : "'Maximum Replicates'" } + ], + "capabilities" : [ "FPGAMemoryAttributesINTEL" ], + "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ], + "version" : "None" + }, + { + "enumerant" : "SimpleDualPortINTEL", + "value" : 5833, + "capabilities" : [ "FPGAMemoryAttributesINTEL" ], + "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ], + "version" : "None" + }, + { + "enumerant" : "MergeINTEL", + "value" : 5834, + "parameters" : [ + { "kind" : "LiteralString", "name" : "'Merge Key'" }, + { "kind" : "LiteralString", "name" : "'Merge Type'" } + ], + "capabilities" : [ "FPGAMemoryAttributesINTEL" ], + "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ], + "version" : "None" + }, + { + "enumerant" : "BankBitsINTEL", + "value" : 5835, + "parameters" : [ + { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Bank Bits'" } + ], + "capabilities" : [ "FPGAMemoryAttributesINTEL" ], + "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ], + "version" : "None" + }, + { + "enumerant" : "ForcePow2DepthINTEL", + "value" : 5836, + "parameters" : [ + { "kind" : "LiteralInteger", "name" : "'Force Key'" } + ], + "capabilities" : [ "FPGAMemoryAttributesINTEL" ], + "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ], + "version" : "None" } ] }, @@ -10132,7 +10469,8 @@ { "enumerant" : "ShaderCallKHR", "value" : 6, - "capabilities" : [ "RayTracingProvisionalKHR" ] + "capabilities" : [ "RayTracingProvisionalKHR" ], + "version" : "None" } ] }, @@ -11146,6 +11484,18 @@ "extensions" : [ "SPV_INTEL_shader_integer_functions2" ], "version" : "None" }, + { + "enumerant" : "FunctionPointersINTEL", + "value" : 5603, + "extensions" : [ "SPV_INTEL_function_pointers" ], + "version" : "None" + }, + { + "enumerant" : "IndirectReferencesINTEL", + "value" : 5604, + "extensions" : [ "SPV_INTEL_function_pointers" ], + "version" : "None" + }, { "enumerant" : "SubgroupAvcMotionEstimationINTEL", "value" : 5696, @@ -11163,6 +11513,62 @@ "value" : 5698, "extensions" : [ "SPV_INTEL_device_side_avc_motion_estimation" ], "version" : "None" + }, + { + "enumerant" : "FPGAMemoryAttributesINTEL", + "value" : 5824, + "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ], + "version" : "None" + }, + { + "enumerant" : "UnstructuredLoopControlsINTEL", + "value" : 5886, + "extensions" : [ "SPV_INTEL_unstructured_loop_controls" ], + "version" : "None" + }, + { + "enumerant" : "FPGALoopControlsINTEL", + "value" : 5888, + "extensions" : [ "SPV_INTEL_fpga_loop_controls" ], + "version" : "None" + }, + { + "enumerant" : "KernelAttributesINTEL", + "value" : 5892, + "extensions" : [ "SPV_INTEL_kernel_attributes" ], + "version" : "None" + }, + { + "enumerant" : "FPGAKernelAttributesINTEL", + "value" : 5897, + "extensions" : [ "SPV_INTEL_kernel_attributes" ], + "version" : "None" + }, + { + "enumerant" : "BlockingPipesINTEL", + "value" : 5945, + "extensions" : [ "SPV_INTEL_blocking_pipes" ], + "version" : "None" + }, + { + "enumerant" : "FPGARegINTEL", + "value" : 5948, + "extensions" : [ "SPV_INTEL_fpga_reg" ], + "version" : "None" + }, + { + "enumerant" : "AtomicFloat32AddEXT", + "value" : 6033, + "capabilities" : [ "Shader" ], + "extensions" : [ "SPV_EXT_shader_atomic_float_add" ], + "version" : "None" + }, + { + "enumerant" : "AtomicFloat64AddEXT", + "value" : 6034, + "capabilities" : [ "Shader" ], + "extensions" : [ "SPV_EXT_shader_atomic_float_add" ], + "version" : "None" } ] }, @@ -11173,12 +11579,14 @@ { "enumerant" : "RayQueryCandidateIntersectionKHR", "value" : 0, - "capabilities" : [ "RayQueryProvisionalKHR" ] + "capabilities" : [ "RayQueryProvisionalKHR" ], + "version" : "None" }, { "enumerant" : "RayQueryCommittedIntersectionKHR", "value" : 1, - "capabilities" : [ "RayQueryProvisionalKHR" ] + "capabilities" : [ "RayQueryProvisionalKHR" ], + "version" : "None" } ] }, @@ -11189,17 +11597,20 @@ { "enumerant" : "RayQueryCommittedIntersectionNoneKHR", "value" : 0, - "capabilities" : [ "RayQueryProvisionalKHR" ] + "capabilities" : [ "RayQueryProvisionalKHR" ], + "version" : "None" }, { "enumerant" : "RayQueryCommittedIntersectionTriangleKHR", "value" : 1, - "capabilities" : [ "RayQueryProvisionalKHR" ] + "capabilities" : [ "RayQueryProvisionalKHR" ], + "version" : "None" }, { "enumerant" : "RayQueryCommittedIntersectionGeneratedKHR", "value" : 2, - "capabilities" : [ "RayQueryProvisionalKHR" ] + "capabilities" : [ "RayQueryProvisionalKHR" ], + "version" : "None" } ] }, @@ -11210,12 +11621,14 @@ { "enumerant" : "RayQueryCandidateIntersectionTriangleKHR", "value" : 0, - "capabilities" : [ "RayQueryProvisionalKHR" ] + "capabilities" : [ "RayQueryProvisionalKHR" ], + "version" : "None" }, { "enumerant" : "RayQueryCandidateIntersectionAABBKHR", "value" : 1, - "capabilities" : [ "RayQueryProvisionalKHR" ] + "capabilities" : [ "RayQueryProvisionalKHR" ], + "version" : "None" } ] }, diff --git a/src/compiler/spirv/spirv.h b/src/compiler/spirv/spirv.h index 92b34c3875a..25db3b867f7 100644 --- a/src/compiler/spirv/spirv.h +++ b/src/compiler/spirv/spirv.h @@ -54,11 +54,11 @@ typedef unsigned int SpvId; #define SPV_VERSION 0x10500 -#define SPV_REVISION 1 +#define SPV_REVISION 3 static const unsigned int SpvMagicNumber = 0x07230203; static const unsigned int SpvVersion = 0x00010500; -static const unsigned int SpvRevision = 1; +static const unsigned int SpvRevision = 3; static const unsigned int SpvOpCodeMask = 0xffff; static const unsigned int SpvWordCountShift = 16; @@ -172,6 +172,10 @@ typedef enum SpvExecutionMode_ { SpvExecutionModeSampleInterlockUnorderedEXT = 5369, SpvExecutionModeShadingRateInterlockOrderedEXT = 5370, SpvExecutionModeShadingRateInterlockUnorderedEXT = 5371, + SpvExecutionModeMaxWorkgroupSizeINTEL = 5893, + SpvExecutionModeMaxWorkDimINTEL = 5894, + SpvExecutionModeNoGlobalOffsetINTEL = 5895, + SpvExecutionModeNumSIMDWorkitemsINTEL = 5896, SpvExecutionModeMax = 0x7fffffff, } SpvExecutionMode; @@ -203,6 +207,7 @@ typedef enum SpvStorageClass_ { SpvStorageClassShaderRecordBufferNV = 5343, SpvStorageClassPhysicalStorageBuffer = 5349, SpvStorageClassPhysicalStorageBufferEXT = 5349, + SpvStorageClassCodeSectionINTEL = 5605, SpvStorageClassMax = 0x7fffffff, } SpvStorageClass; @@ -481,11 +486,24 @@ typedef enum SpvDecoration_ { SpvDecorationRestrictPointerEXT = 5355, SpvDecorationAliasedPointer = 5356, SpvDecorationAliasedPointerEXT = 5356, + SpvDecorationReferencedIndirectlyINTEL = 5602, SpvDecorationCounterBuffer = 5634, SpvDecorationHlslCounterBufferGOOGLE = 5634, SpvDecorationHlslSemanticGOOGLE = 5635, SpvDecorationUserSemantic = 5635, SpvDecorationUserTypeGOOGLE = 5636, + SpvDecorationRegisterINTEL = 5825, + SpvDecorationMemoryINTEL = 5826, + SpvDecorationNumbanksINTEL = 5827, + SpvDecorationBankwidthINTEL = 5828, + SpvDecorationMaxPrivateCopiesINTEL = 5829, + SpvDecorationSinglepumpINTEL = 5830, + SpvDecorationDoublepumpINTEL = 5831, + SpvDecorationMaxReplicatesINTEL = 5832, + SpvDecorationSimpleDualPortINTEL = 5833, + SpvDecorationMergeINTEL = 5834, + SpvDecorationBankBitsINTEL = 5835, + SpvDecorationForcePow2DepthINTEL = 5836, SpvDecorationMax = 0x7fffffff, } SpvDecoration; @@ -632,6 +650,13 @@ typedef enum SpvLoopControlShift_ { SpvLoopControlIterationMultipleShift = 6, SpvLoopControlPeelCountShift = 7, SpvLoopControlPartialCountShift = 8, + SpvLoopControlInitiationIntervalINTELShift = 16, + SpvLoopControlMaxConcurrencyINTELShift = 17, + SpvLoopControlDependencyArrayINTELShift = 18, + SpvLoopControlPipelineEnableINTELShift = 19, + SpvLoopControlLoopCoalesceINTELShift = 20, + SpvLoopControlMaxInterleavingINTELShift = 21, + SpvLoopControlSpeculatedIterationsINTELShift = 22, SpvLoopControlMax = 0x7fffffff, } SpvLoopControlShift; @@ -646,6 +671,13 @@ typedef enum SpvLoopControlMask_ { SpvLoopControlIterationMultipleMask = 0x00000040, SpvLoopControlPeelCountMask = 0x00000080, SpvLoopControlPartialCountMask = 0x00000100, + SpvLoopControlInitiationIntervalINTELMask = 0x00010000, + SpvLoopControlMaxConcurrencyINTELMask = 0x00020000, + SpvLoopControlDependencyArrayINTELMask = 0x00040000, + SpvLoopControlPipelineEnableINTELMask = 0x00080000, + SpvLoopControlLoopCoalesceINTELMask = 0x00100000, + SpvLoopControlMaxInterleavingINTELMask = 0x00200000, + SpvLoopControlSpeculatedIterationsINTELMask = 0x00400000, } SpvLoopControlMask; typedef enum SpvFunctionControlShift_ { @@ -932,9 +964,20 @@ typedef enum SpvCapability_ { SpvCapabilitySubgroupImageBlockIOINTEL = 5570, SpvCapabilitySubgroupImageMediaBlockIOINTEL = 5579, SpvCapabilityIntegerFunctions2INTEL = 5584, + SpvCapabilityFunctionPointersINTEL = 5603, + SpvCapabilityIndirectReferencesINTEL = 5604, SpvCapabilitySubgroupAvcMotionEstimationINTEL = 5696, SpvCapabilitySubgroupAvcMotionEstimationIntraINTEL = 5697, SpvCapabilitySubgroupAvcMotionEstimationChromaINTEL = 5698, + SpvCapabilityFPGAMemoryAttributesINTEL = 5824, + SpvCapabilityUnstructuredLoopControlsINTEL = 5886, + SpvCapabilityFPGALoopControlsINTEL = 5888, + SpvCapabilityKernelAttributesINTEL = 5892, + SpvCapabilityFPGAKernelAttributesINTEL = 5897, + SpvCapabilityBlockingPipesINTEL = 5945, + SpvCapabilityFPGARegINTEL = 5948, + SpvCapabilityAtomicFloat32AddEXT = 6033, + SpvCapabilityAtomicFloat64AddEXT = 6034, SpvCapabilityMax = 0x7fffffff, } SpvCapability; @@ -1402,6 +1445,8 @@ typedef enum SpvOp_ { SpvOpUSubSatINTEL = 5596, SpvOpIMul32x16INTEL = 5597, SpvOpUMul32x16INTEL = 5598, + SpvOpFunctionPointerINTEL = 5600, + SpvOpFunctionPointerCallINTEL = 5601, SpvOpDecorateString = 5632, SpvOpDecorateStringGOOGLE = 5632, SpvOpMemberDecorateString = 5633, @@ -1524,6 +1569,10 @@ typedef enum SpvOp_ { SpvOpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL = 5814, SpvOpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL = 5815, SpvOpSubgroupAvcSicGetInterRawSadsINTEL = 5816, + SpvOpLoopControlINTEL = 5887, + SpvOpReadPipeBlockingINTEL = 5946, + SpvOpWritePipeBlockingINTEL = 5947, + SpvOpFPGARegINTEL = 5949, SpvOpRayQueryGetRayTMinKHR = 6016, SpvOpRayQueryGetRayFlagsKHR = 6017, SpvOpRayQueryGetIntersectionTKHR = 6018, @@ -1541,6 +1590,7 @@ typedef enum SpvOp_ { SpvOpRayQueryGetWorldRayOriginKHR = 6030, SpvOpRayQueryGetIntersectionObjectToWorldKHR = 6031, SpvOpRayQueryGetIntersectionWorldToObjectKHR = 6032, + SpvOpAtomicFAddEXT = 6035, SpvOpMax = 0x7fffffff, } SpvOp; @@ -1899,6 +1949,13 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy case SpvOpSubgroupAnyKHR: *hasResult = true; *hasResultType = true; break; case SpvOpSubgroupAllEqualKHR: *hasResult = true; *hasResultType = true; break; case SpvOpSubgroupReadInvocationKHR: *hasResult = true; *hasResultType = true; break; + case SpvOpTypeRayQueryProvisionalKHR: *hasResult = true; *hasResultType = false; break; + case SpvOpRayQueryInitializeKHR: *hasResult = false; *hasResultType = false; break; + case SpvOpRayQueryTerminateKHR: *hasResult = false; *hasResultType = false; break; + case SpvOpRayQueryGenerateIntersectionKHR: *hasResult = false; *hasResultType = false; break; + case SpvOpRayQueryConfirmIntersectionKHR: *hasResult = false; *hasResultType = false; break; + case SpvOpRayQueryProceedKHR: *hasResult = true; *hasResultType = true; break; + case SpvOpRayQueryGetIntersectionTypeKHR: *hasResult = true; *hasResultType = true; break; case SpvOpGroupIAddNonUniformAMD: *hasResult = true; *hasResultType = true; break; case SpvOpGroupFAddNonUniformAMD: *hasResult = true; *hasResultType = true; break; case SpvOpGroupFMinNonUniformAMD: *hasResult = true; *hasResultType = true; break; @@ -1918,30 +1975,6 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy case SpvOpTerminateRayNV: *hasResult = false; *hasResultType = false; break; case SpvOpTraceNV: *hasResult = false; *hasResultType = false; break; case SpvOpTypeAccelerationStructureNV: *hasResult = true; *hasResultType = false; break; - case SpvOpTypeRayQueryProvisionalKHR: *hasResult = true; *hasResultType = false; break; - case SpvOpRayQueryInitializeKHR: *hasResult = false; *hasResultType = false; break; - case SpvOpRayQueryTerminateKHR: *hasResult = false; *hasResultType = false; break; - case SpvOpRayQueryGenerateIntersectionKHR: *hasResult = false; *hasResultType = false; break; - case SpvOpRayQueryConfirmIntersectionKHR: *hasResult = false; *hasResultType = false; break; - case SpvOpRayQueryProceedKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpRayQueryGetIntersectionTypeKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpRayQueryGetRayTMinKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpRayQueryGetRayFlagsKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpRayQueryGetIntersectionTKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpRayQueryGetIntersectionInstanceCustomIndexKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpRayQueryGetIntersectionInstanceIdKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpRayQueryGetIntersectionGeometryIndexKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpRayQueryGetIntersectionPrimitiveIndexKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpRayQueryGetIntersectionBarycentricsKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpRayQueryGetIntersectionFrontFaceKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpRayQueryGetIntersectionCandidateAABBOpaqueKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpRayQueryGetIntersectionObjectRayDirectionKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpRayQueryGetIntersectionObjectRayOriginKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpRayQueryGetWorldRayDirectionKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpRayQueryGetWorldRayOriginKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpRayQueryGetIntersectionObjectToWorldKHR: *hasResult = true; *hasResultType = true; break; - case SpvOpRayQueryGetIntersectionWorldToObjectKHR: *hasResult = true; *hasResultType = true; break; case SpvOpExecuteCallableNV: *hasResult = false; *hasResultType = false; break; case SpvOpTypeCooperativeMatrixNV: *hasResult = true; *hasResultType = false; break; case SpvOpCooperativeMatrixLoadNV: *hasResult = true; *hasResultType = true; break; @@ -1976,6 +2009,8 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy case SpvOpUSubSatINTEL: *hasResult = true; *hasResultType = true; break; case SpvOpIMul32x16INTEL: *hasResult = true; *hasResultType = true; break; case SpvOpUMul32x16INTEL: *hasResult = true; *hasResultType = true; break; + case SpvOpFunctionPointerINTEL: *hasResult = true; *hasResultType = true; break; + case SpvOpFunctionPointerCallINTEL: *hasResult = true; *hasResultType = true; break; case SpvOpDecorateString: *hasResult = false; *hasResultType = false; break; case SpvOpMemberDecorateString: *hasResult = false; *hasResultType = false; break; case SpvOpVmeImageINTEL: *hasResult = true; *hasResultType = true; break; @@ -2096,6 +2131,28 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy case SpvOpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL: *hasResult = true; *hasResultType = true; break; case SpvOpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL: *hasResult = true; *hasResultType = true; break; case SpvOpSubgroupAvcSicGetInterRawSadsINTEL: *hasResult = true; *hasResultType = true; break; + case SpvOpLoopControlINTEL: *hasResult = false; *hasResultType = false; break; + case SpvOpReadPipeBlockingINTEL: *hasResult = true; *hasResultType = true; break; + case SpvOpWritePipeBlockingINTEL: *hasResult = true; *hasResultType = true; break; + case SpvOpFPGARegINTEL: *hasResult = true; *hasResultType = true; break; + case SpvOpRayQueryGetRayTMinKHR: *hasResult = true; *hasResultType = true; break; + case SpvOpRayQueryGetRayFlagsKHR: *hasResult = true; *hasResultType = true; break; + case SpvOpRayQueryGetIntersectionTKHR: *hasResult = true; *hasResultType = true; break; + case SpvOpRayQueryGetIntersectionInstanceCustomIndexKHR: *hasResult = true; *hasResultType = true; break; + case SpvOpRayQueryGetIntersectionInstanceIdKHR: *hasResult = true; *hasResultType = true; break; + case SpvOpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR: *hasResult = true; *hasResultType = true; break; + case SpvOpRayQueryGetIntersectionGeometryIndexKHR: *hasResult = true; *hasResultType = true; break; + case SpvOpRayQueryGetIntersectionPrimitiveIndexKHR: *hasResult = true; *hasResultType = true; break; + case SpvOpRayQueryGetIntersectionBarycentricsKHR: *hasResult = true; *hasResultType = true; break; + case SpvOpRayQueryGetIntersectionFrontFaceKHR: *hasResult = true; *hasResultType = true; break; + case SpvOpRayQueryGetIntersectionCandidateAABBOpaqueKHR: *hasResult = true; *hasResultType = true; break; + case SpvOpRayQueryGetIntersectionObjectRayDirectionKHR: *hasResult = true; *hasResultType = true; break; + case SpvOpRayQueryGetIntersectionObjectRayOriginKHR: *hasResult = true; *hasResultType = true; break; + case SpvOpRayQueryGetWorldRayDirectionKHR: *hasResult = true; *hasResultType = true; break; + case SpvOpRayQueryGetWorldRayOriginKHR: *hasResult = true; *hasResultType = true; break; + case SpvOpRayQueryGetIntersectionObjectToWorldKHR: *hasResult = true; *hasResultType = true; break; + case SpvOpRayQueryGetIntersectionWorldToObjectKHR: *hasResult = true; *hasResultType = true; break; + case SpvOpAtomicFAddEXT: *hasResult = true; *hasResultType = true; break; } } #endif /* SPV_ENABLE_UTILITY_CODE */ -- 2.30.2