diff --git a/3rdparty/spirv-headers/include/spirv/spir-v.xml b/3rdparty/spirv-headers/include/spirv/spir-v.xml index 15eeb4d15..1463dd6c4 100644 --- a/3rdparty/spirv-headers/include/spirv/spir-v.xml +++ b/3rdparty/spirv-headers/include/spirv/spir-v.xml @@ -82,7 +82,8 @@ - + + @@ -179,13 +180,14 @@ + - + @@ -289,7 +291,8 @@ - + + diff --git a/3rdparty/spirv-headers/include/spirv/unified1/ArmExperimentalMLOperations.h b/3rdparty/spirv-headers/include/spirv/unified1/ArmExperimentalMLOperations.h new file mode 100644 index 000000000..64b0e7051 --- /dev/null +++ b/3rdparty/spirv-headers/include/spirv/unified1/ArmExperimentalMLOperations.h @@ -0,0 +1,26 @@ +// SPDX-FileCopyrightText: 2025 Arm Ltd. +// SPDX-License-Identifier: MIT + +#ifndef SPIRV_UNIFIED1_ArmExperimentalMLOperations_H_ +#define SPIRV_UNIFIED1_ArmExperimentalMLOperations_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +enum { + ArmExperimentalMLOperationsRevision = 1, + ArmExperimentalMLOperationsRevision_BitWidthPadding = 0x7fffffff +}; + +enum ArmExperimentalMLOperationsInstructions { + ArmExperimentalMLOperationsCALL = 0, + ArmExperimentalMLOperationsInstructionsMax = 0x7fffffff +}; + + +#ifdef __cplusplus +} +#endif + +#endif // SPIRV_UNIFIED1_ArmExperimentalMLOperations_H_ diff --git a/3rdparty/spirv-headers/include/spirv/unified1/NonSemanticGraphDebugInfo.h b/3rdparty/spirv-headers/include/spirv/unified1/NonSemanticGraphDebugInfo.h new file mode 100644 index 000000000..304684246 --- /dev/null +++ b/3rdparty/spirv-headers/include/spirv/unified1/NonSemanticGraphDebugInfo.h @@ -0,0 +1,28 @@ +// SPDX-FileCopyrightText: 2022-2026 Arm Ltd. +// SPDX-License-Identifier: MIT + +#ifndef SPIRV_UNIFIED1_NonSemanticGraphDebugInfo_H_ +#define SPIRV_UNIFIED1_NonSemanticGraphDebugInfo_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +enum { + NonSemanticGraphDebugInfoRevision = 1, + NonSemanticGraphDebugInfoRevision_BitWidthPadding = 0x7fffffff +}; + +enum NonSemanticGraphDebugInfoInstructions { + NonSemanticGraphDebugInfoDebugGraph = 1, + NonSemanticGraphDebugInfoDebugOperation = 2, + NonSemanticGraphDebugInfoDebugTensor = 3, + NonSemanticGraphDebugInfoInstructionsMax = 0x7fffffff +}; + + +#ifdef __cplusplus +} +#endif + +#endif // SPIRV_UNIFIED1_NonSemanticGraphDebugInfo_H_ diff --git a/3rdparty/spirv-headers/include/spirv/unified1/extinst.arm.experimental-ml-operations.grammar.json b/3rdparty/spirv-headers/include/spirv/unified1/extinst.arm.experimental-ml-operations.grammar.json new file mode 100644 index 000000000..169dfe971 --- /dev/null +++ b/3rdparty/spirv-headers/include/spirv/unified1/extinst.arm.experimental-ml-operations.grammar.json @@ -0,0 +1,25 @@ +{ + "copyright": [ + "SPDX-FileCopyrightText: 2025 Arm Ltd.", + "SPDX-License-Identifier: MIT" + ], + "revision": 1, + "instructions": [ + { + "opname": "CALL", + "opcode": 0, + "operands": [ + { + "kind": "LiteralInteger", + "name": "Opcode" + }, + { + "kind": "IdRef", + "quantifier": "*", + "name": "Parameters" + } + ] + } + ], + "operand_kinds": [] +} diff --git a/3rdparty/spirv-headers/include/spirv/unified1/extinst.nonsemantic.graph.debuginfo.grammar.json b/3rdparty/spirv-headers/include/spirv/unified1/extinst.nonsemantic.graph.debuginfo.grammar.json new file mode 100644 index 000000000..b740775f0 --- /dev/null +++ b/3rdparty/spirv-headers/include/spirv/unified1/extinst.nonsemantic.graph.debuginfo.grammar.json @@ -0,0 +1,35 @@ +{ + "copyright": [ + "SPDX-FileCopyrightText: 2022-2026 Arm Ltd.", + "SPDX-License-Identifier: MIT" + ], + "revision" : 1, + "instructions" : [ + { + "opname" : "DebugGraph", + "opcode" : 1, + "operands" : [ + { "kind" : "IdRef", "name" : "Graph" }, + { "kind" : "IdRef", "name" : "Name" } + ] + }, + { + "opname" : "DebugOperation", + "opcode" : 2, + "operands" : [ + { "kind" : "IdRef", "name" : "DebugGraph" }, + { "kind" : "IdRef", "name" : "Name" }, + { "kind" : "IdRef", "name" : "Instructions", "quantifier" : "*" } + ] + }, + { + "opname" : "DebugTensor", + "opcode" : 3, + "operands" : [ + { "kind" : "IdRef", "name" : "Tensor" }, + { "kind" : "IdRef", "name" : "Name" }, + { "kind" : "IdRef", "name" : "Index", "quantifier" : "?" } + ] + } + ] +} diff --git a/3rdparty/spirv-headers/include/spirv/unified1/spirv.core.grammar.json b/3rdparty/spirv-headers/include/spirv/unified1/spirv.core.grammar.json index e600c0445..9e1adee47 100644 --- a/3rdparty/spirv-headers/include/spirv/unified1/spirv.core.grammar.json +++ b/3rdparty/spirv-headers/include/spirv/unified1/spirv.core.grammar.json @@ -11,7 +11,7 @@ "magic_number" : "0x07230203", "major_version" : 1, "minor_version" : 6, - "revision" : 4, + "revision" : 7, "instruction_printing_class" : [ { "tag" : "@exclude" @@ -5775,7 +5775,7 @@ "operands" : [ { "kind" : "IdResultType" }, { "kind" : "IdResult" }, - { "kind" : "LiteralString", "name" : "Data" } + { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "Data" } ], "capabilities" : [ "ConstantDataKHR" ], "version" : "None" @@ -5787,7 +5787,7 @@ "operands" : [ { "kind" : "IdResultType" }, { "kind" : "IdResult" }, - { "kind" : "LiteralString", "name" : "Data" } + { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "Data" } ], "capabilities" : [ "ConstantDataKHR" ], "version" : "None" @@ -6505,7 +6505,8 @@ { "kind" : "IdRef", "name" : "Hit Object" }, { "kind" : "IdRef", "name" : "Ray Query" }, { "kind" : "IdRef", "name" : "SBT Record Index" }, - { "kind" : "IdRef", "name" : "Hit Object Attributes" } + { "kind" : "IdRef", "name" : "Hit Object Attributes" }, + { "kind" : "IdRef", "quantifier" : "?", "name" : "Hit Kind" } ], "capabilities" : [ "ShaderInvocationReorderEXT" ], "version" : "None" @@ -10802,8 +10803,8 @@ "aliases" : [ "OpReadPipeBlockingINTEL" ], "opcode" : 5946, "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "Pipe" }, + { "kind" : "IdRef", "name" : "Pointer" }, { "kind" : "IdRef", "name" : "Packet Size" }, { "kind" : "IdRef", "name" : "Packet Alignment" } ], @@ -10816,8 +10817,8 @@ "aliases" : [ "OpWritePipeBlockingINTEL" ], "opcode" : 5947, "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "Pipe" }, + { "kind" : "IdRef", "name" : "Pointer" }, { "kind" : "IdRef", "name" : "Packet Size" }, { "kind" : "IdRef", "name" : "Packet Alignment" } ], @@ -11222,8 +11223,6 @@ "class" : "Composite", "opcode" : 6096, "operands" : [ - { "kind" : "IdResultType" }, - { "kind" : "IdResult" }, { "kind" : "IdRef", "quantifier" : "*", "name" : "Constituents" } ], "capabilities" : [ "LongCompositesINTEL" ], @@ -11254,27 +11253,29 @@ "version" : "None" }, { - "opname" : "OpControlBarrierArriveINTEL", + "opname" : "OpControlBarrierArriveEXT", "class" : "Barrier", + "aliases" : [ "OpControlBarrierArriveINTEL" ], "opcode" : 6142, "operands" : [ { "kind" : "IdScope", "name" : "Execution" }, { "kind" : "IdScope", "name" : "Memory" }, { "kind" : "IdMemorySemantics", "name" : "Semantics" } ], - "capabilities" : [ "SplitBarrierINTEL" ], + "capabilities" : [ "SplitBarrierEXT" ], "version" : "None" }, { - "opname" : "OpControlBarrierWaitINTEL", + "opname" : "OpControlBarrierWaitEXT", "class" : "Barrier", + "aliases" : [ "OpControlBarrierWaitINTEL" ], "opcode" : 6143, "operands" : [ { "kind" : "IdScope", "name" : "Execution" }, { "kind" : "IdScope", "name" : "Memory" }, { "kind" : "IdMemorySemantics", "name" : "Semantics" } ], - "capabilities" : [ "SplitBarrierINTEL" ], + "capabilities" : [ "SplitBarrierEXT" ], "version" : "None" }, { @@ -11598,6 +11599,34 @@ "provisional" : true, "version" : "None" }, + { + "opname" : "OpPredicatedLoadINTEL", + "class" : "Memory", + "opcode" : 6258, + "operands" : [ + { "kind" : "IdResultType" }, + { "kind" : "IdResult" }, + { "kind" : "IdRef", "name" : "Pointer" }, + { "kind" : "IdRef", "name" : "Predicate" }, + { "kind" : "IdRef", "name" : "Default Value" }, + { "kind" : "MemoryAccess", "quantifier" : "?" } + ], + "capabilities" : [ "PredicatedIOINTEL" ], + "version" : "None" + }, + { + "opname" : "OpPredicatedStoreINTEL", + "class" : "Memory", + "opcode" : 6259, + "operands" : [ + { "kind" : "IdRef", "name" : "Pointer" }, + { "kind" : "IdRef", "name" : "Object" }, + { "kind" : "IdRef", "name" : "Predicate" }, + { "kind" : "MemoryAccess", "quantifier" : "?" } + ], + "capabilities" : [ "PredicatedIOINTEL" ], + "version" : "None" + }, { "opname" : "OpGroupIMulKHR", "class" : "Group", @@ -12522,9 +12551,10 @@ "version" : "None" }, { - "enumerant" : "ForceOpacityMicromap2StateEXT", + "enumerant" : "ForceOpacityMicromap2StateKHR", + "aliases" : [ "ForceOpacityMicromap2StateEXT" ], "value" : "0x0400", - "capabilities" : [ "RayTracingOpacityMicromapEXT" ], + "capabilities" : [ "RayTracingOpacityMicromapKHR" ], "version" : "None" } ] @@ -12654,6 +12684,11 @@ "enumerant" : "Rust", "value" : 13, "version" : "1.0" + }, + { + "enumerant" : "Pred", + "value" : 14, + "version" : "1.0" } ] }, @@ -13549,6 +13584,15 @@ "capabilities" : [ "FloatControls2" ], "version" : "None" }, + { + "enumerant" : "OpacityMicromapIdKHR", + "value" : 6031, + "capabilities" : [ "RayTracingOpacityMicromapExecutionModeKHR" ], + "parameters" : [ + { "kind" : "IdRef", "name" : "Enable" } + ], + "version" : "None" + }, { "enumerant" : "StreamingInterfaceINTEL", "value" : 6154, @@ -14568,6 +14612,12 @@ "capabilities" : [ "Linkage" ], "extensions" : [ "SPV_KHR_linkonce_odr" ], "version" : "None" + }, + { + "enumerant" : "WeakAMD", + "value" : 3, + "capabilities" : [ "WeakLinkageAMD" ], + "version" : "None" } ] }, @@ -17704,6 +17754,13 @@ "provisional" : true, "version" : "None" }, + { + "enumerant" : "WeakLinkageAMD", + "value" : 5181, + "capabilities" : [ "Linkage" ], + "extensions" : [ "SPV_AMD_weak_linkage" ], + "version" : "None" + }, { "enumerant" : "SampleMaskOverrideCoverageNV", "value" : 5249, @@ -18009,10 +18066,11 @@ "version" : "None" }, { - "enumerant" : "RayTracingOpacityMicromapEXT", + "enumerant" : "RayTracingOpacityMicromapKHR", + "aliases" : ["RayTracingOpacityMicromapEXT"], "value" : 5381, "capabilities" : [ "Shader" ], - "extensions" : [ "SPV_EXT_opacity_micromap" ], + "extensions" : ["SPV_KHR_opacity_micromap", "SPV_EXT_opacity_micromap"], "version" : "None" }, { @@ -18147,6 +18205,13 @@ "extensions" : [ "SPV_NV_tensor_addressing" ], "version" : "None" }, + { + "enumerant" : "CooperativeMatrixDecodeVectorNV", + "value" : 5447, + "capabilities" : [ "CooperativeMatrixBlockLoadsNV" ], + "extensions" : [ "SPV_NV_cooperative_matrix_decode_vector" ], + "version" : "None" + }, { "enumerant" : "SubgroupShuffleINTEL", "value" : 5568, @@ -18489,6 +18554,13 @@ "extensions" : [ "SPV_KHR_fma" ], "version" : "None" }, + { + "enumerant" : "RayTracingOpacityMicromapExecutionModeKHR", + "value" : 6032, + "capabilities" : [ "Shader" ], + "extensions" : [ "SPV_KHR_opacity_micromap" ], + "version" : "None" + }, { "enumerant" : "AtomicFloat32AddEXT", "value" : 6033, @@ -18533,9 +18605,10 @@ "version" : "None" }, { - "enumerant" : "SplitBarrierINTEL", + "enumerant" : "SplitBarrierEXT", + "aliases" : [ "SplitBarrierINTEL" ], "value" : 6141, - "extensions" : [ "SPV_INTEL_split_barrier" ], + "extensions" : [ "SPV_EXT_split_barrier", "SPV_INTEL_split_barrier" ], "version" : "None" }, { @@ -18659,6 +18732,18 @@ "provisional" : true, "version": "None" }, + { + "enumerant" : "PredicatedIOINTEL", + "value" : 6257, + "extensions" : [ "SPV_INTEL_predicated_io" ], + "version" : "None" + }, + { + "enumerant" : "RoundedDivideSqrtINTEL", + "value" : 6265, + "extensions" : [ "SPV_INTEL_rounded_divide_sqrt" ], + "version": "None" + }, { "enumerant" : "GroupUniformArithmeticKHR", "value" : 6400, @@ -18962,6 +19047,15 @@ ], "capabilities" : [ "CooperativeMatrixBlockLoadsNV" ], "version" : "None" + }, + { + "enumerant" : "DecodeVectorFunc", + "value" : "0x0004", + "parameters" : [ + { "kind" : "IdRef" } + ], + "capabilities" : [ "CooperativeMatrixDecodeVectorNV" ], + "version" : "None" } ] }, diff --git a/3rdparty/spirv-headers/include/spirv/unified1/spirv.h b/3rdparty/spirv-headers/include/spirv/unified1/spirv.h index d00cf0f4e..966ad68c1 100644 --- a/3rdparty/spirv-headers/include/spirv/unified1/spirv.h +++ b/3rdparty/spirv-headers/include/spirv/unified1/spirv.h @@ -63,6 +63,7 @@ typedef enum SpvSourceLanguage_ { SpvSourceLanguageSlang = 11, SpvSourceLanguageZig = 12, SpvSourceLanguageRust = 13, + SpvSourceLanguagePred = 14, SpvSourceLanguageMax = 0x7fffffff, } SpvSourceLanguage; @@ -209,6 +210,7 @@ typedef enum SpvExecutionMode_ { SpvExecutionModeSchedulerTargetFmaxMhzINTEL = 5903, SpvExecutionModeMaximallyReconvergesKHR = 6023, SpvExecutionModeFPFastMathDefault = 6028, + SpvExecutionModeOpacityMicromapIdKHR = 6031, SpvExecutionModeStreamingInterfaceINTEL = 6154, SpvExecutionModeRegisterMapInterfaceINTEL = 6160, SpvExecutionModeNamedBarrierCountINTEL = 6417, @@ -475,6 +477,7 @@ typedef enum SpvLinkageType_ { SpvLinkageTypeExport = 0, SpvLinkageTypeImport = 1, SpvLinkageTypeLinkOnceODR = 2, + SpvLinkageTypeWeakAMD = 3, SpvLinkageTypeMax = 0x7fffffff, } SpvLinkageType; @@ -1206,6 +1209,7 @@ typedef enum SpvCapability_ { SpvCapabilityDescriptorHeapEXT = 5128, SpvCapabilityConstantDataKHR = 5146, SpvCapabilityPoisonFreezeKHR = 5156, + SpvCapabilityWeakLinkageAMD = 5181, SpvCapabilitySampleMaskOverrideCoverageNV = 5249, SpvCapabilityGeometryShaderPassthroughNV = 5251, SpvCapabilityShaderViewportIndexLayerEXT = 5254, @@ -1270,6 +1274,7 @@ typedef enum SpvCapability_ { SpvCapabilityDemoteToHelperInvocationEXT = 5379, SpvCapabilityDisplacementMicromapNV = 5380, SpvCapabilityRayTracingOpacityMicromapEXT = 5381, + SpvCapabilityRayTracingOpacityMicromapKHR = 5381, SpvCapabilityShaderInvocationReorderNV = 5383, SpvCapabilityShaderInvocationReorderEXT = 5388, SpvCapabilityBindlessTextureNV = 5390, @@ -1291,6 +1296,7 @@ typedef enum SpvCapability_ { SpvCapabilityCooperativeVectorTrainingNV = 5435, SpvCapabilityRayTracingClusterAccelerationStructureNV = 5437, SpvCapabilityTensorAddressingNV = 5439, + SpvCapabilityCooperativeMatrixDecodeVectorNV = 5447, SpvCapabilitySubgroupShuffleINTEL = 5568, SpvCapabilitySubgroupBufferBlockIOINTEL = 5569, SpvCapabilitySubgroupImageBlockIOINTEL = 5570, @@ -1364,6 +1370,7 @@ typedef enum SpvCapability_ { SpvCapabilityGroupNonUniformRotateKHR = 6026, SpvCapabilityFloatControls2 = 6029, SpvCapabilityFMAKHR = 6030, + SpvCapabilityRayTracingOpacityMicromapExecutionModeKHR = 6032, SpvCapabilityAtomicFloat32AddEXT = 6033, SpvCapabilityAtomicFloat64AddEXT = 6034, SpvCapabilityLongCompositesINTEL = 6089, @@ -1372,6 +1379,7 @@ typedef enum SpvCapability_ { SpvCapabilityAtomicFloat16AddEXT = 6095, SpvCapabilityDebugInfoModuleINTEL = 6114, SpvCapabilityBFloat16ConversionINTEL = 6115, + SpvCapabilitySplitBarrierEXT = 6141, SpvCapabilitySplitBarrierINTEL = 6141, SpvCapabilityArithmeticFenceEXT = 6144, SpvCapabilityFPGAClusterAttributesV2ALTERA = 6150, @@ -1396,6 +1404,8 @@ typedef enum SpvCapability_ { SpvCapabilityUntypedVariableLengthArrayINTEL = 6243, SpvCapabilitySpecConditionalINTEL = 6245, SpvCapabilityFunctionVariantsINTEL = 6246, + SpvCapabilityPredicatedIOINTEL = 6257, + SpvCapabilityRoundedDivideSqrtINTEL = 6265, SpvCapabilityGroupUniformArithmeticKHR = 6400, SpvCapabilityTensorFloat32RoundingINTEL = 6425, SpvCapabilityMaskedGatherScatterINTEL = 6427, @@ -1422,6 +1432,7 @@ typedef enum SpvRayFlagsShift_ { SpvRayFlagsSkipTrianglesKHRShift = 8, SpvRayFlagsSkipAABBsKHRShift = 9, SpvRayFlagsForceOpacityMicromap2StateEXTShift = 10, + SpvRayFlagsForceOpacityMicromap2StateKHRShift = 10, SpvRayFlagsMax = 0x7fffffff, } SpvRayFlagsShift; @@ -1439,6 +1450,7 @@ typedef enum SpvRayFlagsMask_ { SpvRayFlagsSkipTrianglesKHRMask = 0x00000100, SpvRayFlagsSkipAABBsKHRMask = 0x00000200, SpvRayFlagsForceOpacityMicromap2StateEXTMask = 0x00000400, + SpvRayFlagsForceOpacityMicromap2StateKHRMask = 0x00000400, } SpvRayFlagsMask; typedef enum SpvRayQueryIntersection_ { @@ -1573,6 +1585,7 @@ typedef enum SpvTensorClampMode_ { typedef enum SpvTensorAddressingOperandsShift_ { SpvTensorAddressingOperandsTensorViewShift = 0, SpvTensorAddressingOperandsDecodeFuncShift = 1, + SpvTensorAddressingOperandsDecodeVectorFuncShift = 2, SpvTensorAddressingOperandsMax = 0x7fffffff, } SpvTensorAddressingOperandsShift; @@ -1580,6 +1593,7 @@ typedef enum SpvTensorAddressingOperandsMask_ { SpvTensorAddressingOperandsMaskNone = 0, SpvTensorAddressingOperandsTensorViewMask = 0x00000001, SpvTensorAddressingOperandsDecodeFuncMask = 0x00000002, + SpvTensorAddressingOperandsDecodeVectorFuncMask = 0x00000004, } SpvTensorAddressingOperandsMask; typedef enum SpvTensorOperandsShift_ { @@ -2599,7 +2613,9 @@ typedef enum SpvOp_ { SpvOpCompositeConstructContinuedINTEL = 6096, SpvOpConvertFToBF16INTEL = 6116, SpvOpConvertBF16ToFINTEL = 6117, + SpvOpControlBarrierArriveEXT = 6142, SpvOpControlBarrierArriveINTEL = 6142, + SpvOpControlBarrierWaitEXT = 6143, SpvOpControlBarrierWaitINTEL = 6143, SpvOpArithmeticFenceEXT = 6145, SpvOpTaskSequenceCreateALTERA = 6163, @@ -2628,6 +2644,8 @@ typedef enum SpvOp_ { SpvOpSpecConstantArchitectureINTEL = 6252, SpvOpSpecConstantCapabilitiesINTEL = 6253, SpvOpConditionalCopyObjectINTEL = 6254, + SpvOpPredicatedLoadINTEL = 6258, + SpvOpPredicatedStoreINTEL = 6259, SpvOpGroupIMulKHR = 6401, SpvOpGroupFMulKHR = 6402, SpvOpGroupBitwiseAndKHR = 6403, @@ -3458,8 +3476,8 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy case SpvOpFixedExpALTERA: *hasResult = true; *hasResultType = true; break; case SpvOpPtrCastToCrossWorkgroupALTERA: *hasResult = true; *hasResultType = true; break; case SpvOpCrossWorkgroupCastToPtrALTERA: *hasResult = true; *hasResultType = true; break; - case SpvOpReadPipeBlockingALTERA: *hasResult = true; *hasResultType = true; break; - case SpvOpWritePipeBlockingALTERA: *hasResult = true; *hasResultType = true; break; + case SpvOpReadPipeBlockingALTERA: *hasResult = false; *hasResultType = false; break; + case SpvOpWritePipeBlockingALTERA: *hasResult = false; *hasResultType = false; break; case SpvOpFPGARegALTERA: *hasResult = true; *hasResultType = true; break; case SpvOpRayQueryGetRayTMinKHR: *hasResult = true; *hasResultType = true; break; case SpvOpRayQueryGetRayFlagsKHR: *hasResult = true; *hasResultType = true; break; @@ -3483,11 +3501,11 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy case SpvOpTypeStructContinuedINTEL: *hasResult = false; *hasResultType = false; break; case SpvOpConstantCompositeContinuedINTEL: *hasResult = false; *hasResultType = false; break; case SpvOpSpecConstantCompositeContinuedINTEL: *hasResult = false; *hasResultType = false; break; - case SpvOpCompositeConstructContinuedINTEL: *hasResult = true; *hasResultType = true; break; + case SpvOpCompositeConstructContinuedINTEL: *hasResult = false; *hasResultType = false; break; case SpvOpConvertFToBF16INTEL: *hasResult = true; *hasResultType = true; break; case SpvOpConvertBF16ToFINTEL: *hasResult = true; *hasResultType = true; break; - case SpvOpControlBarrierArriveINTEL: *hasResult = false; *hasResultType = false; break; - case SpvOpControlBarrierWaitINTEL: *hasResult = false; *hasResultType = false; break; + case SpvOpControlBarrierArriveEXT: *hasResult = false; *hasResultType = false; break; + case SpvOpControlBarrierWaitEXT: *hasResult = false; *hasResultType = false; break; case SpvOpArithmeticFenceEXT: *hasResult = true; *hasResultType = true; break; case SpvOpTaskSequenceCreateALTERA: *hasResult = true; *hasResultType = true; break; case SpvOpTaskSequenceAsyncALTERA: *hasResult = false; *hasResultType = false; break; @@ -3510,6 +3528,8 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy case SpvOpSpecConstantArchitectureINTEL: *hasResult = true; *hasResultType = true; break; case SpvOpSpecConstantCapabilitiesINTEL: *hasResult = true; *hasResultType = true; break; case SpvOpConditionalCopyObjectINTEL: *hasResult = true; *hasResultType = true; break; + case SpvOpPredicatedLoadINTEL: *hasResult = true; *hasResultType = true; break; + case SpvOpPredicatedStoreINTEL: *hasResult = false; *hasResultType = false; break; case SpvOpGroupIMulKHR: *hasResult = true; *hasResultType = true; break; case SpvOpGroupFMulKHR: *hasResult = true; *hasResultType = true; break; case SpvOpGroupBitwiseAndKHR: *hasResult = true; *hasResultType = true; break; @@ -3545,6 +3565,7 @@ inline const char* SpvSourceLanguageToString(SpvSourceLanguage value) { case SpvSourceLanguageSlang: return "Slang"; case SpvSourceLanguageZig: return "Zig"; case SpvSourceLanguageRust: return "Rust"; + case SpvSourceLanguagePred: return "Pred"; default: return "Unknown"; } } @@ -3686,6 +3707,7 @@ inline const char* SpvExecutionModeToString(SpvExecutionMode value) { case SpvExecutionModeSchedulerTargetFmaxMhzINTEL: return "SchedulerTargetFmaxMhzINTEL"; case SpvExecutionModeMaximallyReconvergesKHR: return "MaximallyReconvergesKHR"; case SpvExecutionModeFPFastMathDefault: return "FPFastMathDefault"; + case SpvExecutionModeOpacityMicromapIdKHR: return "OpacityMicromapIdKHR"; case SpvExecutionModeStreamingInterfaceINTEL: return "StreamingInterfaceINTEL"; case SpvExecutionModeRegisterMapInterfaceINTEL: return "RegisterMapInterfaceINTEL"; case SpvExecutionModeNamedBarrierCountINTEL: return "NamedBarrierCountINTEL"; @@ -3885,6 +3907,7 @@ inline const char* SpvLinkageTypeToString(SpvLinkageType value) { case SpvLinkageTypeExport: return "Export"; case SpvLinkageTypeImport: return "Import"; case SpvLinkageTypeLinkOnceODR: return "LinkOnceODR"; + case SpvLinkageTypeWeakAMD: return "WeakAMD"; default: return "Unknown"; } } @@ -4375,6 +4398,7 @@ inline const char* SpvCapabilityToString(SpvCapability value) { case SpvCapabilityDescriptorHeapEXT: return "DescriptorHeapEXT"; case SpvCapabilityConstantDataKHR: return "ConstantDataKHR"; case SpvCapabilityPoisonFreezeKHR: return "PoisonFreezeKHR"; + case SpvCapabilityWeakLinkageAMD: return "WeakLinkageAMD"; case SpvCapabilitySampleMaskOverrideCoverageNV: return "SampleMaskOverrideCoverageNV"; case SpvCapabilityGeometryShaderPassthroughNV: return "GeometryShaderPassthroughNV"; case SpvCapabilityShaderViewportIndexLayerEXT: return "ShaderViewportIndexLayerEXT"; @@ -4438,6 +4462,7 @@ inline const char* SpvCapabilityToString(SpvCapability value) { case SpvCapabilityCooperativeVectorTrainingNV: return "CooperativeVectorTrainingNV"; case SpvCapabilityRayTracingClusterAccelerationStructureNV: return "RayTracingClusterAccelerationStructureNV"; case SpvCapabilityTensorAddressingNV: return "TensorAddressingNV"; + case SpvCapabilityCooperativeMatrixDecodeVectorNV: return "CooperativeMatrixDecodeVectorNV"; case SpvCapabilitySubgroupShuffleINTEL: return "SubgroupShuffleINTEL"; case SpvCapabilitySubgroupBufferBlockIOINTEL: return "SubgroupBufferBlockIOINTEL"; case SpvCapabilitySubgroupImageBlockIOINTEL: return "SubgroupImageBlockIOINTEL"; @@ -4491,6 +4516,7 @@ inline const char* SpvCapabilityToString(SpvCapability value) { case SpvCapabilityGroupNonUniformRotateKHR: return "GroupNonUniformRotateKHR"; case SpvCapabilityFloatControls2: return "FloatControls2"; case SpvCapabilityFMAKHR: return "FMAKHR"; + case SpvCapabilityRayTracingOpacityMicromapExecutionModeKHR: return "RayTracingOpacityMicromapExecutionModeKHR"; case SpvCapabilityAtomicFloat32AddEXT: return "AtomicFloat32AddEXT"; case SpvCapabilityAtomicFloat64AddEXT: return "AtomicFloat64AddEXT"; case SpvCapabilityLongCompositesINTEL: return "LongCompositesINTEL"; @@ -4498,7 +4524,7 @@ inline const char* SpvCapabilityToString(SpvCapability value) { case SpvCapabilityAtomicFloat16AddEXT: return "AtomicFloat16AddEXT"; case SpvCapabilityDebugInfoModuleINTEL: return "DebugInfoModuleINTEL"; case SpvCapabilityBFloat16ConversionINTEL: return "BFloat16ConversionINTEL"; - case SpvCapabilitySplitBarrierINTEL: return "SplitBarrierINTEL"; + case SpvCapabilitySplitBarrierEXT: return "SplitBarrierEXT"; case SpvCapabilityArithmeticFenceEXT: return "ArithmeticFenceEXT"; case SpvCapabilityFPGAClusterAttributesV2ALTERA: return "FPGAClusterAttributesV2ALTERA"; case SpvCapabilityFPGAKernelAttributesv2INTEL: return "FPGAKernelAttributesv2INTEL"; @@ -4517,6 +4543,8 @@ inline const char* SpvCapabilityToString(SpvCapability value) { case SpvCapabilityUntypedVariableLengthArrayINTEL: return "UntypedVariableLengthArrayINTEL"; case SpvCapabilitySpecConditionalINTEL: return "SpecConditionalINTEL"; case SpvCapabilityFunctionVariantsINTEL: return "FunctionVariantsINTEL"; + case SpvCapabilityPredicatedIOINTEL: return "PredicatedIOINTEL"; + case SpvCapabilityRoundedDivideSqrtINTEL: return "RoundedDivideSqrtINTEL"; case SpvCapabilityGroupUniformArithmeticKHR: return "GroupUniformArithmeticKHR"; case SpvCapabilityTensorFloat32RoundingINTEL: return "TensorFloat32RoundingINTEL"; case SpvCapabilityMaskedGatherScatterINTEL: return "MaskedGatherScatterINTEL"; @@ -5551,8 +5579,8 @@ inline const char* SpvOpToString(SpvOp value) { case SpvOpCompositeConstructContinuedINTEL: return "OpCompositeConstructContinuedINTEL"; case SpvOpConvertFToBF16INTEL: return "OpConvertFToBF16INTEL"; case SpvOpConvertBF16ToFINTEL: return "OpConvertBF16ToFINTEL"; - case SpvOpControlBarrierArriveINTEL: return "OpControlBarrierArriveINTEL"; - case SpvOpControlBarrierWaitINTEL: return "OpControlBarrierWaitINTEL"; + case SpvOpControlBarrierArriveEXT: return "OpControlBarrierArriveEXT"; + case SpvOpControlBarrierWaitEXT: return "OpControlBarrierWaitEXT"; case SpvOpArithmeticFenceEXT: return "OpArithmeticFenceEXT"; case SpvOpTaskSequenceCreateALTERA: return "OpTaskSequenceCreateALTERA"; case SpvOpTaskSequenceAsyncALTERA: return "OpTaskSequenceAsyncALTERA"; @@ -5575,6 +5603,8 @@ inline const char* SpvOpToString(SpvOp value) { case SpvOpSpecConstantArchitectureINTEL: return "OpSpecConstantArchitectureINTEL"; case SpvOpSpecConstantCapabilitiesINTEL: return "OpSpecConstantCapabilitiesINTEL"; case SpvOpConditionalCopyObjectINTEL: return "OpConditionalCopyObjectINTEL"; + case SpvOpPredicatedLoadINTEL: return "OpPredicatedLoadINTEL"; + case SpvOpPredicatedStoreINTEL: return "OpPredicatedStoreINTEL"; case SpvOpGroupIMulKHR: return "OpGroupIMulKHR"; case SpvOpGroupFMulKHR: return "OpGroupFMulKHR"; case SpvOpGroupBitwiseAndKHR: return "OpGroupBitwiseAndKHR"; diff --git a/3rdparty/spirv-headers/include/spirv/unified1/spirv.hpp11 b/3rdparty/spirv-headers/include/spirv/unified1/spirv.hpp11 index 41ebe9157..4fa5f8f52 100644 --- a/3rdparty/spirv-headers/include/spirv/unified1/spirv.hpp11 +++ b/3rdparty/spirv-headers/include/spirv/unified1/spirv.hpp11 @@ -59,6 +59,7 @@ enum class SourceLanguage : unsigned { Slang = 11, Zig = 12, Rust = 13, + Pred = 14, Max = 0x7fffffff, }; @@ -205,6 +206,7 @@ enum class ExecutionMode : unsigned { SchedulerTargetFmaxMhzINTEL = 5903, MaximallyReconvergesKHR = 6023, FPFastMathDefault = 6028, + OpacityMicromapIdKHR = 6031, StreamingInterfaceINTEL = 6154, RegisterMapInterfaceINTEL = 6160, NamedBarrierCountINTEL = 6417, @@ -471,6 +473,7 @@ enum class LinkageType : unsigned { Export = 0, Import = 1, LinkOnceODR = 2, + WeakAMD = 3, Max = 0x7fffffff, }; @@ -1202,6 +1205,7 @@ enum class Capability : unsigned { DescriptorHeapEXT = 5128, ConstantDataKHR = 5146, PoisonFreezeKHR = 5156, + WeakLinkageAMD = 5181, SampleMaskOverrideCoverageNV = 5249, GeometryShaderPassthroughNV = 5251, ShaderViewportIndexLayerEXT = 5254, @@ -1266,6 +1270,7 @@ enum class Capability : unsigned { DemoteToHelperInvocationEXT = 5379, DisplacementMicromapNV = 5380, RayTracingOpacityMicromapEXT = 5381, + RayTracingOpacityMicromapKHR = 5381, ShaderInvocationReorderNV = 5383, ShaderInvocationReorderEXT = 5388, BindlessTextureNV = 5390, @@ -1287,6 +1292,7 @@ enum class Capability : unsigned { CooperativeVectorTrainingNV = 5435, RayTracingClusterAccelerationStructureNV = 5437, TensorAddressingNV = 5439, + CooperativeMatrixDecodeVectorNV = 5447, SubgroupShuffleINTEL = 5568, SubgroupBufferBlockIOINTEL = 5569, SubgroupImageBlockIOINTEL = 5570, @@ -1360,6 +1366,7 @@ enum class Capability : unsigned { GroupNonUniformRotateKHR = 6026, FloatControls2 = 6029, FMAKHR = 6030, + RayTracingOpacityMicromapExecutionModeKHR = 6032, AtomicFloat32AddEXT = 6033, AtomicFloat64AddEXT = 6034, LongCompositesINTEL = 6089, @@ -1368,6 +1375,7 @@ enum class Capability : unsigned { AtomicFloat16AddEXT = 6095, DebugInfoModuleINTEL = 6114, BFloat16ConversionINTEL = 6115, + SplitBarrierEXT = 6141, SplitBarrierINTEL = 6141, ArithmeticFenceEXT = 6144, FPGAClusterAttributesV2ALTERA = 6150, @@ -1392,6 +1400,8 @@ enum class Capability : unsigned { UntypedVariableLengthArrayINTEL = 6243, SpecConditionalINTEL = 6245, FunctionVariantsINTEL = 6246, + PredicatedIOINTEL = 6257, + RoundedDivideSqrtINTEL = 6265, GroupUniformArithmeticKHR = 6400, TensorFloat32RoundingINTEL = 6425, MaskedGatherScatterINTEL = 6427, @@ -1418,6 +1428,7 @@ enum class RayFlagsShift : unsigned { SkipTrianglesKHR = 8, SkipAABBsKHR = 9, ForceOpacityMicromap2StateEXT = 10, + ForceOpacityMicromap2StateKHR = 10, Max = 0x7fffffff, }; @@ -1435,6 +1446,7 @@ enum class RayFlagsMask : unsigned { SkipTrianglesKHR = 0x00000100, SkipAABBsKHR = 0x00000200, ForceOpacityMicromap2StateEXT = 0x00000400, + ForceOpacityMicromap2StateKHR = 0x00000400, }; enum class RayQueryIntersection : unsigned { @@ -1569,6 +1581,7 @@ enum class TensorClampMode : unsigned { enum class TensorAddressingOperandsShift : unsigned { TensorView = 0, DecodeFunc = 1, + DecodeVectorFunc = 2, Max = 0x7fffffff, }; @@ -1576,6 +1589,7 @@ enum class TensorAddressingOperandsMask : unsigned { MaskNone = 0, TensorView = 0x00000001, DecodeFunc = 0x00000002, + DecodeVectorFunc = 0x00000004, }; enum class TensorOperandsShift : unsigned { @@ -2595,7 +2609,9 @@ enum class Op : unsigned { OpCompositeConstructContinuedINTEL = 6096, OpConvertFToBF16INTEL = 6116, OpConvertBF16ToFINTEL = 6117, + OpControlBarrierArriveEXT = 6142, OpControlBarrierArriveINTEL = 6142, + OpControlBarrierWaitEXT = 6143, OpControlBarrierWaitINTEL = 6143, OpArithmeticFenceEXT = 6145, OpTaskSequenceCreateALTERA = 6163, @@ -2624,6 +2640,8 @@ enum class Op : unsigned { OpSpecConstantArchitectureINTEL = 6252, OpSpecConstantCapabilitiesINTEL = 6253, OpConditionalCopyObjectINTEL = 6254, + OpPredicatedLoadINTEL = 6258, + OpPredicatedStoreINTEL = 6259, OpGroupIMulKHR = 6401, OpGroupFMulKHR = 6402, OpGroupBitwiseAndKHR = 6403, @@ -3454,8 +3472,8 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) { case Op::OpFixedExpALTERA: *hasResult = true; *hasResultType = true; break; case Op::OpPtrCastToCrossWorkgroupALTERA: *hasResult = true; *hasResultType = true; break; case Op::OpCrossWorkgroupCastToPtrALTERA: *hasResult = true; *hasResultType = true; break; - case Op::OpReadPipeBlockingALTERA: *hasResult = true; *hasResultType = true; break; - case Op::OpWritePipeBlockingALTERA: *hasResult = true; *hasResultType = true; break; + case Op::OpReadPipeBlockingALTERA: *hasResult = false; *hasResultType = false; break; + case Op::OpWritePipeBlockingALTERA: *hasResult = false; *hasResultType = false; break; case Op::OpFPGARegALTERA: *hasResult = true; *hasResultType = true; break; case Op::OpRayQueryGetRayTMinKHR: *hasResult = true; *hasResultType = true; break; case Op::OpRayQueryGetRayFlagsKHR: *hasResult = true; *hasResultType = true; break; @@ -3479,11 +3497,11 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) { case Op::OpTypeStructContinuedINTEL: *hasResult = false; *hasResultType = false; break; case Op::OpConstantCompositeContinuedINTEL: *hasResult = false; *hasResultType = false; break; case Op::OpSpecConstantCompositeContinuedINTEL: *hasResult = false; *hasResultType = false; break; - case Op::OpCompositeConstructContinuedINTEL: *hasResult = true; *hasResultType = true; break; + case Op::OpCompositeConstructContinuedINTEL: *hasResult = false; *hasResultType = false; break; case Op::OpConvertFToBF16INTEL: *hasResult = true; *hasResultType = true; break; case Op::OpConvertBF16ToFINTEL: *hasResult = true; *hasResultType = true; break; - case Op::OpControlBarrierArriveINTEL: *hasResult = false; *hasResultType = false; break; - case Op::OpControlBarrierWaitINTEL: *hasResult = false; *hasResultType = false; break; + case Op::OpControlBarrierArriveEXT: *hasResult = false; *hasResultType = false; break; + case Op::OpControlBarrierWaitEXT: *hasResult = false; *hasResultType = false; break; case Op::OpArithmeticFenceEXT: *hasResult = true; *hasResultType = true; break; case Op::OpTaskSequenceCreateALTERA: *hasResult = true; *hasResultType = true; break; case Op::OpTaskSequenceAsyncALTERA: *hasResult = false; *hasResultType = false; break; @@ -3506,6 +3524,8 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) { case Op::OpSpecConstantArchitectureINTEL: *hasResult = true; *hasResultType = true; break; case Op::OpSpecConstantCapabilitiesINTEL: *hasResult = true; *hasResultType = true; break; case Op::OpConditionalCopyObjectINTEL: *hasResult = true; *hasResultType = true; break; + case Op::OpPredicatedLoadINTEL: *hasResult = true; *hasResultType = true; break; + case Op::OpPredicatedStoreINTEL: *hasResult = false; *hasResultType = false; break; case Op::OpGroupIMulKHR: *hasResult = true; *hasResultType = true; break; case Op::OpGroupFMulKHR: *hasResult = true; *hasResultType = true; break; case Op::OpGroupBitwiseAndKHR: *hasResult = true; *hasResultType = true; break; @@ -3541,6 +3561,7 @@ inline const char* SourceLanguageToString(SourceLanguage value) { case SourceLanguage::Slang: return "Slang"; case SourceLanguage::Zig: return "Zig"; case SourceLanguage::Rust: return "Rust"; + case SourceLanguage::Pred: return "Pred"; default: return "Unknown"; } } @@ -3682,6 +3703,7 @@ inline const char* ExecutionModeToString(ExecutionMode value) { case ExecutionMode::SchedulerTargetFmaxMhzINTEL: return "SchedulerTargetFmaxMhzINTEL"; case ExecutionMode::MaximallyReconvergesKHR: return "MaximallyReconvergesKHR"; case ExecutionMode::FPFastMathDefault: return "FPFastMathDefault"; + case ExecutionMode::OpacityMicromapIdKHR: return "OpacityMicromapIdKHR"; case ExecutionMode::StreamingInterfaceINTEL: return "StreamingInterfaceINTEL"; case ExecutionMode::RegisterMapInterfaceINTEL: return "RegisterMapInterfaceINTEL"; case ExecutionMode::NamedBarrierCountINTEL: return "NamedBarrierCountINTEL"; @@ -3881,6 +3903,7 @@ inline const char* LinkageTypeToString(LinkageType value) { case LinkageType::Export: return "Export"; case LinkageType::Import: return "Import"; case LinkageType::LinkOnceODR: return "LinkOnceODR"; + case LinkageType::WeakAMD: return "WeakAMD"; default: return "Unknown"; } } @@ -4371,6 +4394,7 @@ inline const char* CapabilityToString(Capability value) { case Capability::DescriptorHeapEXT: return "DescriptorHeapEXT"; case Capability::ConstantDataKHR: return "ConstantDataKHR"; case Capability::PoisonFreezeKHR: return "PoisonFreezeKHR"; + case Capability::WeakLinkageAMD: return "WeakLinkageAMD"; case Capability::SampleMaskOverrideCoverageNV: return "SampleMaskOverrideCoverageNV"; case Capability::GeometryShaderPassthroughNV: return "GeometryShaderPassthroughNV"; case Capability::ShaderViewportIndexLayerEXT: return "ShaderViewportIndexLayerEXT"; @@ -4434,6 +4458,7 @@ inline const char* CapabilityToString(Capability value) { case Capability::CooperativeVectorTrainingNV: return "CooperativeVectorTrainingNV"; case Capability::RayTracingClusterAccelerationStructureNV: return "RayTracingClusterAccelerationStructureNV"; case Capability::TensorAddressingNV: return "TensorAddressingNV"; + case Capability::CooperativeMatrixDecodeVectorNV: return "CooperativeMatrixDecodeVectorNV"; case Capability::SubgroupShuffleINTEL: return "SubgroupShuffleINTEL"; case Capability::SubgroupBufferBlockIOINTEL: return "SubgroupBufferBlockIOINTEL"; case Capability::SubgroupImageBlockIOINTEL: return "SubgroupImageBlockIOINTEL"; @@ -4487,6 +4512,7 @@ inline const char* CapabilityToString(Capability value) { case Capability::GroupNonUniformRotateKHR: return "GroupNonUniformRotateKHR"; case Capability::FloatControls2: return "FloatControls2"; case Capability::FMAKHR: return "FMAKHR"; + case Capability::RayTracingOpacityMicromapExecutionModeKHR: return "RayTracingOpacityMicromapExecutionModeKHR"; case Capability::AtomicFloat32AddEXT: return "AtomicFloat32AddEXT"; case Capability::AtomicFloat64AddEXT: return "AtomicFloat64AddEXT"; case Capability::LongCompositesINTEL: return "LongCompositesINTEL"; @@ -4494,7 +4520,7 @@ inline const char* CapabilityToString(Capability value) { case Capability::AtomicFloat16AddEXT: return "AtomicFloat16AddEXT"; case Capability::DebugInfoModuleINTEL: return "DebugInfoModuleINTEL"; case Capability::BFloat16ConversionINTEL: return "BFloat16ConversionINTEL"; - case Capability::SplitBarrierINTEL: return "SplitBarrierINTEL"; + case Capability::SplitBarrierEXT: return "SplitBarrierEXT"; case Capability::ArithmeticFenceEXT: return "ArithmeticFenceEXT"; case Capability::FPGAClusterAttributesV2ALTERA: return "FPGAClusterAttributesV2ALTERA"; case Capability::FPGAKernelAttributesv2INTEL: return "FPGAKernelAttributesv2INTEL"; @@ -4513,6 +4539,8 @@ inline const char* CapabilityToString(Capability value) { case Capability::UntypedVariableLengthArrayINTEL: return "UntypedVariableLengthArrayINTEL"; case Capability::SpecConditionalINTEL: return "SpecConditionalINTEL"; case Capability::FunctionVariantsINTEL: return "FunctionVariantsINTEL"; + case Capability::PredicatedIOINTEL: return "PredicatedIOINTEL"; + case Capability::RoundedDivideSqrtINTEL: return "RoundedDivideSqrtINTEL"; case Capability::GroupUniformArithmeticKHR: return "GroupUniformArithmeticKHR"; case Capability::TensorFloat32RoundingINTEL: return "TensorFloat32RoundingINTEL"; case Capability::MaskedGatherScatterINTEL: return "MaskedGatherScatterINTEL"; @@ -5547,8 +5575,8 @@ inline const char* OpToString(Op value) { case Op::OpCompositeConstructContinuedINTEL: return "OpCompositeConstructContinuedINTEL"; case Op::OpConvertFToBF16INTEL: return "OpConvertFToBF16INTEL"; case Op::OpConvertBF16ToFINTEL: return "OpConvertBF16ToFINTEL"; - case Op::OpControlBarrierArriveINTEL: return "OpControlBarrierArriveINTEL"; - case Op::OpControlBarrierWaitINTEL: return "OpControlBarrierWaitINTEL"; + case Op::OpControlBarrierArriveEXT: return "OpControlBarrierArriveEXT"; + case Op::OpControlBarrierWaitEXT: return "OpControlBarrierWaitEXT"; case Op::OpArithmeticFenceEXT: return "OpArithmeticFenceEXT"; case Op::OpTaskSequenceCreateALTERA: return "OpTaskSequenceCreateALTERA"; case Op::OpTaskSequenceAsyncALTERA: return "OpTaskSequenceAsyncALTERA"; @@ -5571,6 +5599,8 @@ inline const char* OpToString(Op value) { case Op::OpSpecConstantArchitectureINTEL: return "OpSpecConstantArchitectureINTEL"; case Op::OpSpecConstantCapabilitiesINTEL: return "OpSpecConstantCapabilitiesINTEL"; case Op::OpConditionalCopyObjectINTEL: return "OpConditionalCopyObjectINTEL"; + case Op::OpPredicatedLoadINTEL: return "OpPredicatedLoadINTEL"; + case Op::OpPredicatedStoreINTEL: return "OpPredicatedStoreINTEL"; case Op::OpGroupIMulKHR: return "OpGroupIMulKHR"; case Op::OpGroupFMulKHR: return "OpGroupFMulKHR"; case Op::OpGroupBitwiseAndKHR: return "OpGroupBitwiseAndKHR"; diff --git a/3rdparty/spirv-headers/include/spirv/unified1/spirv.json b/3rdparty/spirv-headers/include/spirv/unified1/spirv.json index 0a200b27b..43a78914d 100644 --- a/3rdparty/spirv-headers/include/spirv/unified1/spirv.json +++ b/3rdparty/spirv-headers/include/spirv/unified1/spirv.json @@ -65,7 +65,8 @@ "WGSL": 10, "Slang": 11, "Zig": 12, - "Rust": 13 + "Rust": 13, + "Pred": 14 } }, { @@ -224,6 +225,7 @@ "SchedulerTargetFmaxMhzINTEL": 5903, "MaximallyReconvergesKHR": 6023, "FPFastMathDefault": 6028, + "OpacityMicromapIdKHR": 6031, "StreamingInterfaceINTEL": 6154, "RegisterMapInterfaceINTEL": 6160, "NamedBarrierCountINTEL": 6417, @@ -484,7 +486,8 @@ { "Export": 0, "Import": 1, - "LinkOnceODR": 2 + "LinkOnceODR": 2, + "WeakAMD": 3 } }, { @@ -1168,6 +1171,7 @@ "DescriptorHeapEXT": 5128, "ConstantDataKHR": 5146, "PoisonFreezeKHR": 5156, + "WeakLinkageAMD": 5181, "SampleMaskOverrideCoverageNV": 5249, "GeometryShaderPassthroughNV": 5251, "ShaderViewportIndexLayerEXT": 5254, @@ -1232,6 +1236,7 @@ "DemoteToHelperInvocationEXT": 5379, "DisplacementMicromapNV": 5380, "RayTracingOpacityMicromapEXT": 5381, + "RayTracingOpacityMicromapKHR": 5381, "ShaderInvocationReorderNV": 5383, "ShaderInvocationReorderEXT": 5388, "BindlessTextureNV": 5390, @@ -1253,6 +1258,7 @@ "CooperativeVectorTrainingNV": 5435, "RayTracingClusterAccelerationStructureNV": 5437, "TensorAddressingNV": 5439, + "CooperativeMatrixDecodeVectorNV": 5447, "SubgroupShuffleINTEL": 5568, "SubgroupBufferBlockIOINTEL": 5569, "SubgroupImageBlockIOINTEL": 5570, @@ -1326,6 +1332,7 @@ "GroupNonUniformRotateKHR": 6026, "FloatControls2": 6029, "FMAKHR": 6030, + "RayTracingOpacityMicromapExecutionModeKHR": 6032, "AtomicFloat32AddEXT": 6033, "AtomicFloat64AddEXT": 6034, "LongCompositesINTEL": 6089, @@ -1334,6 +1341,7 @@ "AtomicFloat16AddEXT": 6095, "DebugInfoModuleINTEL": 6114, "BFloat16ConversionINTEL": 6115, + "SplitBarrierEXT": 6141, "SplitBarrierINTEL": 6141, "ArithmeticFenceEXT": 6144, "FPGAClusterAttributesV2ALTERA": 6150, @@ -1358,6 +1366,8 @@ "UntypedVariableLengthArrayINTEL": 6243, "SpecConditionalINTEL": 6245, "FunctionVariantsINTEL": 6246, + "PredicatedIOINTEL": 6257, + "RoundedDivideSqrtINTEL": 6265, "GroupUniformArithmeticKHR": 6400, "TensorFloat32RoundingINTEL": 6425, "MaskedGatherScatterINTEL": 6427, @@ -1386,7 +1396,8 @@ "SkipBuiltinPrimitivesNV": 8, "SkipTrianglesKHR": 8, "SkipAABBsKHR": 9, - "ForceOpacityMicromap2StateEXT": 10 + "ForceOpacityMicromap2StateEXT": 10, + "ForceOpacityMicromap2StateKHR": 10 } }, { @@ -1542,7 +1553,8 @@ "Values": { "TensorView": 0, - "DecodeFunc": 1 + "DecodeFunc": 1, + "DecodeVectorFunc": 2 } }, { @@ -2566,7 +2578,9 @@ "OpCompositeConstructContinuedINTEL": 6096, "OpConvertFToBF16INTEL": 6116, "OpConvertBF16ToFINTEL": 6117, + "OpControlBarrierArriveEXT": 6142, "OpControlBarrierArriveINTEL": 6142, + "OpControlBarrierWaitEXT": 6143, "OpControlBarrierWaitINTEL": 6143, "OpArithmeticFenceEXT": 6145, "OpTaskSequenceCreateALTERA": 6163, @@ -2595,6 +2609,8 @@ "OpSpecConstantArchitectureINTEL": 6252, "OpSpecConstantCapabilitiesINTEL": 6253, "OpConditionalCopyObjectINTEL": 6254, + "OpPredicatedLoadINTEL": 6258, + "OpPredicatedStoreINTEL": 6259, "OpGroupIMulKHR": 6401, "OpGroupFMulKHR": 6402, "OpGroupBitwiseAndKHR": 6403,