4891 lines
149 KiB
C++
4891 lines
149 KiB
C++
/*
|
|
** Copyright (c) 2014-2020 The Khronos Group Inc.
|
|
**
|
|
** Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
** of this software and/or associated documentation files (the "Materials"),
|
|
** to deal in the Materials without restriction, including without limitation
|
|
** the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
|
** and/or sell copies of the Materials, and to permit persons to whom the
|
|
** Materials are furnished to do so, subject to the following conditions:
|
|
**
|
|
** The above copyright notice and this permission notice shall be included in
|
|
** all copies or substantial portions of the Materials.
|
|
**
|
|
** MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS
|
|
** STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND
|
|
** HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/
|
|
**
|
|
** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
|
** OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
|
** THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
** FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS
|
|
** IN THE MATERIALS.
|
|
*/
|
|
|
|
/*
|
|
** This header is automatically generated by the same tool that creates
|
|
** the Binary Section of the SPIR-V specification.
|
|
*/
|
|
|
|
/*
|
|
** Enumeration tokens for SPIR-V, in various styles:
|
|
** C, C++, C++11, JSON, Lua, Python, C#, D, Beef
|
|
**
|
|
** - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL
|
|
** - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL
|
|
** - C++11 will use enum classes in the spv namespace, e.g.:
|
|
*spv::SourceLanguage::GLSL
|
|
** - Lua will use tables, e.g.: spv.SourceLanguage.GLSL
|
|
** - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL']
|
|
** - C# will use enum classes in the Specification class located in the "Spv"
|
|
*namespace,
|
|
** e.g.: Spv.Specification.SourceLanguage.GLSL
|
|
** - D will have tokens under the "spv" module, e.g: spv.SourceLanguage.GLSL
|
|
** - Beef will use enum classes in the Specification class located in the "Spv"
|
|
*namespace,
|
|
** e.g.: Spv.Specification.SourceLanguage.GLSL
|
|
**
|
|
** Some tokens act like mask values, which can be OR'd together,
|
|
** while others are mutually exclusive. The mask-like ones have
|
|
** "Mask" in their name, and a parallel enum that has the shift
|
|
** amount (1 << x) for each corresponding enumerant.
|
|
*/
|
|
|
|
#ifndef spirv_H
|
|
#define spirv_H
|
|
|
|
typedef unsigned int SpvId;
|
|
|
|
#define SPV_VERSION 0x10600
|
|
#define SPV_REVISION 1
|
|
|
|
static const unsigned int SpvMagicNumber = 0x07230203;
|
|
static const unsigned int SpvVersion = 0x00010600;
|
|
static const unsigned int SpvRevision = 1;
|
|
static const unsigned int SpvOpCodeMask = 0xffff;
|
|
static const unsigned int SpvWordCountShift = 16;
|
|
|
|
typedef enum SpvSourceLanguage_ {
|
|
SpvSourceLanguageUnknown = 0,
|
|
SpvSourceLanguageESSL = 1,
|
|
SpvSourceLanguageGLSL = 2,
|
|
SpvSourceLanguageOpenCL_C = 3,
|
|
SpvSourceLanguageOpenCL_CPP = 4,
|
|
SpvSourceLanguageHLSL = 5,
|
|
SpvSourceLanguageCPP_for_OpenCL = 6,
|
|
SpvSourceLanguageSYCL = 7,
|
|
SpvSourceLanguageHERO_C = 8,
|
|
SpvSourceLanguageNZSL = 9,
|
|
SpvSourceLanguageMax = 0x7fffffff,
|
|
} SpvSourceLanguage;
|
|
|
|
typedef enum SpvExecutionModel_ {
|
|
SpvExecutionModelVertex = 0,
|
|
SpvExecutionModelTessellationControl = 1,
|
|
SpvExecutionModelTessellationEvaluation = 2,
|
|
SpvExecutionModelGeometry = 3,
|
|
SpvExecutionModelFragment = 4,
|
|
SpvExecutionModelGLCompute = 5,
|
|
SpvExecutionModelKernel = 6,
|
|
SpvExecutionModelTaskNV = 5267,
|
|
SpvExecutionModelMeshNV = 5268,
|
|
SpvExecutionModelRayGenerationKHR = 5313,
|
|
SpvExecutionModelRayGenerationNV = 5313,
|
|
SpvExecutionModelIntersectionKHR = 5314,
|
|
SpvExecutionModelIntersectionNV = 5314,
|
|
SpvExecutionModelAnyHitKHR = 5315,
|
|
SpvExecutionModelAnyHitNV = 5315,
|
|
SpvExecutionModelClosestHitKHR = 5316,
|
|
SpvExecutionModelClosestHitNV = 5316,
|
|
SpvExecutionModelMissKHR = 5317,
|
|
SpvExecutionModelMissNV = 5317,
|
|
SpvExecutionModelCallableKHR = 5318,
|
|
SpvExecutionModelCallableNV = 5318,
|
|
SpvExecutionModelTaskEXT = 5364,
|
|
SpvExecutionModelMeshEXT = 5365,
|
|
SpvExecutionModelMax = 0x7fffffff,
|
|
} SpvExecutionModel;
|
|
|
|
typedef enum SpvAddressingModel_ {
|
|
SpvAddressingModelLogical = 0,
|
|
SpvAddressingModelPhysical32 = 1,
|
|
SpvAddressingModelPhysical64 = 2,
|
|
SpvAddressingModelPhysicalStorageBuffer64 = 5348,
|
|
SpvAddressingModelPhysicalStorageBuffer64EXT = 5348,
|
|
SpvAddressingModelMax = 0x7fffffff,
|
|
} SpvAddressingModel;
|
|
|
|
typedef enum SpvMemoryModel_ {
|
|
SpvMemoryModelSimple = 0,
|
|
SpvMemoryModelGLSL450 = 1,
|
|
SpvMemoryModelOpenCL = 2,
|
|
SpvMemoryModelVulkan = 3,
|
|
SpvMemoryModelVulkanKHR = 3,
|
|
SpvMemoryModelMax = 0x7fffffff,
|
|
} SpvMemoryModel;
|
|
|
|
typedef enum SpvExecutionMode_ {
|
|
SpvExecutionModeInvocations = 0,
|
|
SpvExecutionModeSpacingEqual = 1,
|
|
SpvExecutionModeSpacingFractionalEven = 2,
|
|
SpvExecutionModeSpacingFractionalOdd = 3,
|
|
SpvExecutionModeVertexOrderCw = 4,
|
|
SpvExecutionModeVertexOrderCcw = 5,
|
|
SpvExecutionModePixelCenterInteger = 6,
|
|
SpvExecutionModeOriginUpperLeft = 7,
|
|
SpvExecutionModeOriginLowerLeft = 8,
|
|
SpvExecutionModeEarlyFragmentTests = 9,
|
|
SpvExecutionModePointMode = 10,
|
|
SpvExecutionModeXfb = 11,
|
|
SpvExecutionModeDepthReplacing = 12,
|
|
SpvExecutionModeDepthGreater = 14,
|
|
SpvExecutionModeDepthLess = 15,
|
|
SpvExecutionModeDepthUnchanged = 16,
|
|
SpvExecutionModeLocalSize = 17,
|
|
SpvExecutionModeLocalSizeHint = 18,
|
|
SpvExecutionModeInputPoints = 19,
|
|
SpvExecutionModeInputLines = 20,
|
|
SpvExecutionModeInputLinesAdjacency = 21,
|
|
SpvExecutionModeTriangles = 22,
|
|
SpvExecutionModeInputTrianglesAdjacency = 23,
|
|
SpvExecutionModeQuads = 24,
|
|
SpvExecutionModeIsolines = 25,
|
|
SpvExecutionModeOutputVertices = 26,
|
|
SpvExecutionModeOutputPoints = 27,
|
|
SpvExecutionModeOutputLineStrip = 28,
|
|
SpvExecutionModeOutputTriangleStrip = 29,
|
|
SpvExecutionModeVecTypeHint = 30,
|
|
SpvExecutionModeContractionOff = 31,
|
|
SpvExecutionModeInitializer = 33,
|
|
SpvExecutionModeFinalizer = 34,
|
|
SpvExecutionModeSubgroupSize = 35,
|
|
SpvExecutionModeSubgroupsPerWorkgroup = 36,
|
|
SpvExecutionModeSubgroupsPerWorkgroupId = 37,
|
|
SpvExecutionModeLocalSizeId = 38,
|
|
SpvExecutionModeLocalSizeHintId = 39,
|
|
SpvExecutionModeNonCoherentColorAttachmentReadEXT = 4169,
|
|
SpvExecutionModeNonCoherentDepthAttachmentReadEXT = 4170,
|
|
SpvExecutionModeNonCoherentStencilAttachmentReadEXT = 4171,
|
|
SpvExecutionModeSubgroupUniformControlFlowKHR = 4421,
|
|
SpvExecutionModePostDepthCoverage = 4446,
|
|
SpvExecutionModeDenormPreserve = 4459,
|
|
SpvExecutionModeDenormFlushToZero = 4460,
|
|
SpvExecutionModeSignedZeroInfNanPreserve = 4461,
|
|
SpvExecutionModeRoundingModeRTE = 4462,
|
|
SpvExecutionModeRoundingModeRTZ = 4463,
|
|
SpvExecutionModeEarlyAndLateFragmentTestsAMD = 5017,
|
|
SpvExecutionModeStencilRefReplacingEXT = 5027,
|
|
SpvExecutionModeStencilRefUnchangedFrontAMD = 5079,
|
|
SpvExecutionModeStencilRefGreaterFrontAMD = 5080,
|
|
SpvExecutionModeStencilRefLessFrontAMD = 5081,
|
|
SpvExecutionModeStencilRefUnchangedBackAMD = 5082,
|
|
SpvExecutionModeStencilRefGreaterBackAMD = 5083,
|
|
SpvExecutionModeStencilRefLessBackAMD = 5084,
|
|
SpvExecutionModeOutputLinesEXT = 5269,
|
|
SpvExecutionModeOutputLinesNV = 5269,
|
|
SpvExecutionModeOutputPrimitivesEXT = 5270,
|
|
SpvExecutionModeOutputPrimitivesNV = 5270,
|
|
SpvExecutionModeDerivativeGroupQuadsNV = 5289,
|
|
SpvExecutionModeDerivativeGroupLinearNV = 5290,
|
|
SpvExecutionModeOutputTrianglesEXT = 5298,
|
|
SpvExecutionModeOutputTrianglesNV = 5298,
|
|
SpvExecutionModePixelInterlockOrderedEXT = 5366,
|
|
SpvExecutionModePixelInterlockUnorderedEXT = 5367,
|
|
SpvExecutionModeSampleInterlockOrderedEXT = 5368,
|
|
SpvExecutionModeSampleInterlockUnorderedEXT = 5369,
|
|
SpvExecutionModeShadingRateInterlockOrderedEXT = 5370,
|
|
SpvExecutionModeShadingRateInterlockUnorderedEXT = 5371,
|
|
SpvExecutionModeSharedLocalMemorySizeINTEL = 5618,
|
|
SpvExecutionModeRoundingModeRTPINTEL = 5620,
|
|
SpvExecutionModeRoundingModeRTNINTEL = 5621,
|
|
SpvExecutionModeFloatingPointModeALTINTEL = 5622,
|
|
SpvExecutionModeFloatingPointModeIEEEINTEL = 5623,
|
|
SpvExecutionModeMaxWorkgroupSizeINTEL = 5893,
|
|
SpvExecutionModeMaxWorkDimINTEL = 5894,
|
|
SpvExecutionModeNoGlobalOffsetINTEL = 5895,
|
|
SpvExecutionModeNumSIMDWorkitemsINTEL = 5896,
|
|
SpvExecutionModeSchedulerTargetFmaxMhzINTEL = 5903,
|
|
SpvExecutionModeStreamingInterfaceINTEL = 6154,
|
|
SpvExecutionModeRegisterMapInterfaceINTEL = 6160,
|
|
SpvExecutionModeNamedBarrierCountINTEL = 6417,
|
|
SpvExecutionModeMax = 0x7fffffff,
|
|
} SpvExecutionMode;
|
|
|
|
typedef enum SpvStorageClass_ {
|
|
SpvStorageClassUniformConstant = 0,
|
|
SpvStorageClassInput = 1,
|
|
SpvStorageClassUniform = 2,
|
|
SpvStorageClassOutput = 3,
|
|
SpvStorageClassWorkgroup = 4,
|
|
SpvStorageClassCrossWorkgroup = 5,
|
|
SpvStorageClassPrivate = 6,
|
|
SpvStorageClassFunction = 7,
|
|
SpvStorageClassGeneric = 8,
|
|
SpvStorageClassPushConstant = 9,
|
|
SpvStorageClassAtomicCounter = 10,
|
|
SpvStorageClassImage = 11,
|
|
SpvStorageClassStorageBuffer = 12,
|
|
SpvStorageClassTileImageEXT = 4172,
|
|
SpvStorageClassCallableDataKHR = 5328,
|
|
SpvStorageClassCallableDataNV = 5328,
|
|
SpvStorageClassIncomingCallableDataKHR = 5329,
|
|
SpvStorageClassIncomingCallableDataNV = 5329,
|
|
SpvStorageClassRayPayloadKHR = 5338,
|
|
SpvStorageClassRayPayloadNV = 5338,
|
|
SpvStorageClassHitAttributeKHR = 5339,
|
|
SpvStorageClassHitAttributeNV = 5339,
|
|
SpvStorageClassIncomingRayPayloadKHR = 5342,
|
|
SpvStorageClassIncomingRayPayloadNV = 5342,
|
|
SpvStorageClassShaderRecordBufferKHR = 5343,
|
|
SpvStorageClassShaderRecordBufferNV = 5343,
|
|
SpvStorageClassPhysicalStorageBuffer = 5349,
|
|
SpvStorageClassPhysicalStorageBufferEXT = 5349,
|
|
SpvStorageClassHitObjectAttributeNV = 5385,
|
|
SpvStorageClassTaskPayloadWorkgroupEXT = 5402,
|
|
SpvStorageClassCodeSectionINTEL = 5605,
|
|
SpvStorageClassDeviceOnlyINTEL = 5936,
|
|
SpvStorageClassHostOnlyINTEL = 5937,
|
|
SpvStorageClassMax = 0x7fffffff,
|
|
} SpvStorageClass;
|
|
|
|
typedef enum SpvDim_ {
|
|
SpvDim1D = 0,
|
|
SpvDim2D = 1,
|
|
SpvDim3D = 2,
|
|
SpvDimCube = 3,
|
|
SpvDimRect = 4,
|
|
SpvDimBuffer = 5,
|
|
SpvDimSubpassData = 6,
|
|
SpvDimTileImageDataEXT = 4173,
|
|
SpvDimMax = 0x7fffffff,
|
|
} SpvDim;
|
|
|
|
typedef enum SpvSamplerAddressingMode_ {
|
|
SpvSamplerAddressingModeNone = 0,
|
|
SpvSamplerAddressingModeClampToEdge = 1,
|
|
SpvSamplerAddressingModeClamp = 2,
|
|
SpvSamplerAddressingModeRepeat = 3,
|
|
SpvSamplerAddressingModeRepeatMirrored = 4,
|
|
SpvSamplerAddressingModeMax = 0x7fffffff,
|
|
} SpvSamplerAddressingMode;
|
|
|
|
typedef enum SpvSamplerFilterMode_ {
|
|
SpvSamplerFilterModeNearest = 0,
|
|
SpvSamplerFilterModeLinear = 1,
|
|
SpvSamplerFilterModeMax = 0x7fffffff,
|
|
} SpvSamplerFilterMode;
|
|
|
|
typedef enum SpvImageFormat_ {
|
|
SpvImageFormatUnknown = 0,
|
|
SpvImageFormatRgba32f = 1,
|
|
SpvImageFormatRgba16f = 2,
|
|
SpvImageFormatR32f = 3,
|
|
SpvImageFormatRgba8 = 4,
|
|
SpvImageFormatRgba8Snorm = 5,
|
|
SpvImageFormatRg32f = 6,
|
|
SpvImageFormatRg16f = 7,
|
|
SpvImageFormatR11fG11fB10f = 8,
|
|
SpvImageFormatR16f = 9,
|
|
SpvImageFormatRgba16 = 10,
|
|
SpvImageFormatRgb10A2 = 11,
|
|
SpvImageFormatRg16 = 12,
|
|
SpvImageFormatRg8 = 13,
|
|
SpvImageFormatR16 = 14,
|
|
SpvImageFormatR8 = 15,
|
|
SpvImageFormatRgba16Snorm = 16,
|
|
SpvImageFormatRg16Snorm = 17,
|
|
SpvImageFormatRg8Snorm = 18,
|
|
SpvImageFormatR16Snorm = 19,
|
|
SpvImageFormatR8Snorm = 20,
|
|
SpvImageFormatRgba32i = 21,
|
|
SpvImageFormatRgba16i = 22,
|
|
SpvImageFormatRgba8i = 23,
|
|
SpvImageFormatR32i = 24,
|
|
SpvImageFormatRg32i = 25,
|
|
SpvImageFormatRg16i = 26,
|
|
SpvImageFormatRg8i = 27,
|
|
SpvImageFormatR16i = 28,
|
|
SpvImageFormatR8i = 29,
|
|
SpvImageFormatRgba32ui = 30,
|
|
SpvImageFormatRgba16ui = 31,
|
|
SpvImageFormatRgba8ui = 32,
|
|
SpvImageFormatR32ui = 33,
|
|
SpvImageFormatRgb10a2ui = 34,
|
|
SpvImageFormatRg32ui = 35,
|
|
SpvImageFormatRg16ui = 36,
|
|
SpvImageFormatRg8ui = 37,
|
|
SpvImageFormatR16ui = 38,
|
|
SpvImageFormatR8ui = 39,
|
|
SpvImageFormatR64ui = 40,
|
|
SpvImageFormatR64i = 41,
|
|
SpvImageFormatMax = 0x7fffffff,
|
|
} SpvImageFormat;
|
|
|
|
typedef enum SpvImageChannelOrder_ {
|
|
SpvImageChannelOrderR = 0,
|
|
SpvImageChannelOrderA = 1,
|
|
SpvImageChannelOrderRG = 2,
|
|
SpvImageChannelOrderRA = 3,
|
|
SpvImageChannelOrderRGB = 4,
|
|
SpvImageChannelOrderRGBA = 5,
|
|
SpvImageChannelOrderBGRA = 6,
|
|
SpvImageChannelOrderARGB = 7,
|
|
SpvImageChannelOrderIntensity = 8,
|
|
SpvImageChannelOrderLuminance = 9,
|
|
SpvImageChannelOrderRx = 10,
|
|
SpvImageChannelOrderRGx = 11,
|
|
SpvImageChannelOrderRGBx = 12,
|
|
SpvImageChannelOrderDepth = 13,
|
|
SpvImageChannelOrderDepthStencil = 14,
|
|
SpvImageChannelOrdersRGB = 15,
|
|
SpvImageChannelOrdersRGBx = 16,
|
|
SpvImageChannelOrdersRGBA = 17,
|
|
SpvImageChannelOrdersBGRA = 18,
|
|
SpvImageChannelOrderABGR = 19,
|
|
SpvImageChannelOrderMax = 0x7fffffff,
|
|
} SpvImageChannelOrder;
|
|
|
|
typedef enum SpvImageChannelDataType_ {
|
|
SpvImageChannelDataTypeSnormInt8 = 0,
|
|
SpvImageChannelDataTypeSnormInt16 = 1,
|
|
SpvImageChannelDataTypeUnormInt8 = 2,
|
|
SpvImageChannelDataTypeUnormInt16 = 3,
|
|
SpvImageChannelDataTypeUnormShort565 = 4,
|
|
SpvImageChannelDataTypeUnormShort555 = 5,
|
|
SpvImageChannelDataTypeUnormInt101010 = 6,
|
|
SpvImageChannelDataTypeSignedInt8 = 7,
|
|
SpvImageChannelDataTypeSignedInt16 = 8,
|
|
SpvImageChannelDataTypeSignedInt32 = 9,
|
|
SpvImageChannelDataTypeUnsignedInt8 = 10,
|
|
SpvImageChannelDataTypeUnsignedInt16 = 11,
|
|
SpvImageChannelDataTypeUnsignedInt32 = 12,
|
|
SpvImageChannelDataTypeHalfFloat = 13,
|
|
SpvImageChannelDataTypeFloat = 14,
|
|
SpvImageChannelDataTypeUnormInt24 = 15,
|
|
SpvImageChannelDataTypeUnormInt101010_2 = 16,
|
|
SpvImageChannelDataTypeUnsignedIntRaw10EXT = 19,
|
|
SpvImageChannelDataTypeUnsignedIntRaw12EXT = 20,
|
|
SpvImageChannelDataTypeMax = 0x7fffffff,
|
|
} SpvImageChannelDataType;
|
|
|
|
typedef enum SpvImageOperandsShift_ {
|
|
SpvImageOperandsBiasShift = 0,
|
|
SpvImageOperandsLodShift = 1,
|
|
SpvImageOperandsGradShift = 2,
|
|
SpvImageOperandsConstOffsetShift = 3,
|
|
SpvImageOperandsOffsetShift = 4,
|
|
SpvImageOperandsConstOffsetsShift = 5,
|
|
SpvImageOperandsSampleShift = 6,
|
|
SpvImageOperandsMinLodShift = 7,
|
|
SpvImageOperandsMakeTexelAvailableShift = 8,
|
|
SpvImageOperandsMakeTexelAvailableKHRShift = 8,
|
|
SpvImageOperandsMakeTexelVisibleShift = 9,
|
|
SpvImageOperandsMakeTexelVisibleKHRShift = 9,
|
|
SpvImageOperandsNonPrivateTexelShift = 10,
|
|
SpvImageOperandsNonPrivateTexelKHRShift = 10,
|
|
SpvImageOperandsVolatileTexelShift = 11,
|
|
SpvImageOperandsVolatileTexelKHRShift = 11,
|
|
SpvImageOperandsSignExtendShift = 12,
|
|
SpvImageOperandsZeroExtendShift = 13,
|
|
SpvImageOperandsNontemporalShift = 14,
|
|
SpvImageOperandsOffsetsShift = 16,
|
|
SpvImageOperandsMax = 0x7fffffff,
|
|
} SpvImageOperandsShift;
|
|
|
|
typedef enum SpvImageOperandsMask_ {
|
|
SpvImageOperandsMaskNone = 0,
|
|
SpvImageOperandsBiasMask = 0x00000001,
|
|
SpvImageOperandsLodMask = 0x00000002,
|
|
SpvImageOperandsGradMask = 0x00000004,
|
|
SpvImageOperandsConstOffsetMask = 0x00000008,
|
|
SpvImageOperandsOffsetMask = 0x00000010,
|
|
SpvImageOperandsConstOffsetsMask = 0x00000020,
|
|
SpvImageOperandsSampleMask = 0x00000040,
|
|
SpvImageOperandsMinLodMask = 0x00000080,
|
|
SpvImageOperandsMakeTexelAvailableMask = 0x00000100,
|
|
SpvImageOperandsMakeTexelAvailableKHRMask = 0x00000100,
|
|
SpvImageOperandsMakeTexelVisibleMask = 0x00000200,
|
|
SpvImageOperandsMakeTexelVisibleKHRMask = 0x00000200,
|
|
SpvImageOperandsNonPrivateTexelMask = 0x00000400,
|
|
SpvImageOperandsNonPrivateTexelKHRMask = 0x00000400,
|
|
SpvImageOperandsVolatileTexelMask = 0x00000800,
|
|
SpvImageOperandsVolatileTexelKHRMask = 0x00000800,
|
|
SpvImageOperandsSignExtendMask = 0x00001000,
|
|
SpvImageOperandsZeroExtendMask = 0x00002000,
|
|
SpvImageOperandsNontemporalMask = 0x00004000,
|
|
SpvImageOperandsOffsetsMask = 0x00010000,
|
|
} SpvImageOperandsMask;
|
|
|
|
typedef enum SpvFPFastMathModeShift_ {
|
|
SpvFPFastMathModeNotNaNShift = 0,
|
|
SpvFPFastMathModeNotInfShift = 1,
|
|
SpvFPFastMathModeNSZShift = 2,
|
|
SpvFPFastMathModeAllowRecipShift = 3,
|
|
SpvFPFastMathModeFastShift = 4,
|
|
SpvFPFastMathModeAllowContractFastINTELShift = 16,
|
|
SpvFPFastMathModeAllowReassocINTELShift = 17,
|
|
SpvFPFastMathModeMax = 0x7fffffff,
|
|
} SpvFPFastMathModeShift;
|
|
|
|
typedef enum SpvFPFastMathModeMask_ {
|
|
SpvFPFastMathModeMaskNone = 0,
|
|
SpvFPFastMathModeNotNaNMask = 0x00000001,
|
|
SpvFPFastMathModeNotInfMask = 0x00000002,
|
|
SpvFPFastMathModeNSZMask = 0x00000004,
|
|
SpvFPFastMathModeAllowRecipMask = 0x00000008,
|
|
SpvFPFastMathModeFastMask = 0x00000010,
|
|
SpvFPFastMathModeAllowContractFastINTELMask = 0x00010000,
|
|
SpvFPFastMathModeAllowReassocINTELMask = 0x00020000,
|
|
} SpvFPFastMathModeMask;
|
|
|
|
typedef enum SpvFPRoundingMode_ {
|
|
SpvFPRoundingModeRTE = 0,
|
|
SpvFPRoundingModeRTZ = 1,
|
|
SpvFPRoundingModeRTP = 2,
|
|
SpvFPRoundingModeRTN = 3,
|
|
SpvFPRoundingModeMax = 0x7fffffff,
|
|
} SpvFPRoundingMode;
|
|
|
|
typedef enum SpvLinkageType_ {
|
|
SpvLinkageTypeExport = 0,
|
|
SpvLinkageTypeImport = 1,
|
|
SpvLinkageTypeLinkOnceODR = 2,
|
|
SpvLinkageTypeMax = 0x7fffffff,
|
|
} SpvLinkageType;
|
|
|
|
typedef enum SpvAccessQualifier_ {
|
|
SpvAccessQualifierReadOnly = 0,
|
|
SpvAccessQualifierWriteOnly = 1,
|
|
SpvAccessQualifierReadWrite = 2,
|
|
SpvAccessQualifierMax = 0x7fffffff,
|
|
} SpvAccessQualifier;
|
|
|
|
typedef enum SpvFunctionParameterAttribute_ {
|
|
SpvFunctionParameterAttributeZext = 0,
|
|
SpvFunctionParameterAttributeSext = 1,
|
|
SpvFunctionParameterAttributeByVal = 2,
|
|
SpvFunctionParameterAttributeSret = 3,
|
|
SpvFunctionParameterAttributeNoAlias = 4,
|
|
SpvFunctionParameterAttributeNoCapture = 5,
|
|
SpvFunctionParameterAttributeNoWrite = 6,
|
|
SpvFunctionParameterAttributeNoReadWrite = 7,
|
|
SpvFunctionParameterAttributeRuntimeAlignedINTEL = 5940,
|
|
SpvFunctionParameterAttributeMax = 0x7fffffff,
|
|
} SpvFunctionParameterAttribute;
|
|
|
|
typedef enum SpvDecoration_ {
|
|
SpvDecorationRelaxedPrecision = 0,
|
|
SpvDecorationSpecId = 1,
|
|
SpvDecorationBlock = 2,
|
|
SpvDecorationBufferBlock = 3,
|
|
SpvDecorationRowMajor = 4,
|
|
SpvDecorationColMajor = 5,
|
|
SpvDecorationArrayStride = 6,
|
|
SpvDecorationMatrixStride = 7,
|
|
SpvDecorationGLSLShared = 8,
|
|
SpvDecorationGLSLPacked = 9,
|
|
SpvDecorationCPacked = 10,
|
|
SpvDecorationBuiltIn = 11,
|
|
SpvDecorationNoPerspective = 13,
|
|
SpvDecorationFlat = 14,
|
|
SpvDecorationPatch = 15,
|
|
SpvDecorationCentroid = 16,
|
|
SpvDecorationSample = 17,
|
|
SpvDecorationInvariant = 18,
|
|
SpvDecorationRestrict = 19,
|
|
SpvDecorationAliased = 20,
|
|
SpvDecorationVolatile = 21,
|
|
SpvDecorationConstant = 22,
|
|
SpvDecorationCoherent = 23,
|
|
SpvDecorationNonWritable = 24,
|
|
SpvDecorationNonReadable = 25,
|
|
SpvDecorationUniform = 26,
|
|
SpvDecorationUniformId = 27,
|
|
SpvDecorationSaturatedConversion = 28,
|
|
SpvDecorationStream = 29,
|
|
SpvDecorationLocation = 30,
|
|
SpvDecorationComponent = 31,
|
|
SpvDecorationIndex = 32,
|
|
SpvDecorationBinding = 33,
|
|
SpvDecorationDescriptorSet = 34,
|
|
SpvDecorationOffset = 35,
|
|
SpvDecorationXfbBuffer = 36,
|
|
SpvDecorationXfbStride = 37,
|
|
SpvDecorationFuncParamAttr = 38,
|
|
SpvDecorationFPRoundingMode = 39,
|
|
SpvDecorationFPFastMathMode = 40,
|
|
SpvDecorationLinkageAttributes = 41,
|
|
SpvDecorationNoContraction = 42,
|
|
SpvDecorationInputAttachmentIndex = 43,
|
|
SpvDecorationAlignment = 44,
|
|
SpvDecorationMaxByteOffset = 45,
|
|
SpvDecorationAlignmentId = 46,
|
|
SpvDecorationMaxByteOffsetId = 47,
|
|
SpvDecorationNoSignedWrap = 4469,
|
|
SpvDecorationNoUnsignedWrap = 4470,
|
|
SpvDecorationWeightTextureQCOM = 4487,
|
|
SpvDecorationBlockMatchTextureQCOM = 4488,
|
|
SpvDecorationExplicitInterpAMD = 4999,
|
|
SpvDecorationOverrideCoverageNV = 5248,
|
|
SpvDecorationPassthroughNV = 5250,
|
|
SpvDecorationViewportRelativeNV = 5252,
|
|
SpvDecorationSecondaryViewportRelativeNV = 5256,
|
|
SpvDecorationPerPrimitiveEXT = 5271,
|
|
SpvDecorationPerPrimitiveNV = 5271,
|
|
SpvDecorationPerViewNV = 5272,
|
|
SpvDecorationPerTaskNV = 5273,
|
|
SpvDecorationPerVertexKHR = 5285,
|
|
SpvDecorationPerVertexNV = 5285,
|
|
SpvDecorationNonUniform = 5300,
|
|
SpvDecorationNonUniformEXT = 5300,
|
|
SpvDecorationRestrictPointer = 5355,
|
|
SpvDecorationRestrictPointerEXT = 5355,
|
|
SpvDecorationAliasedPointer = 5356,
|
|
SpvDecorationAliasedPointerEXT = 5356,
|
|
SpvDecorationHitObjectShaderRecordBufferNV = 5386,
|
|
SpvDecorationBindlessSamplerNV = 5398,
|
|
SpvDecorationBindlessImageNV = 5399,
|
|
SpvDecorationBoundSamplerNV = 5400,
|
|
SpvDecorationBoundImageNV = 5401,
|
|
SpvDecorationSIMTCallINTEL = 5599,
|
|
SpvDecorationReferencedIndirectlyINTEL = 5602,
|
|
SpvDecorationClobberINTEL = 5607,
|
|
SpvDecorationSideEffectsINTEL = 5608,
|
|
SpvDecorationVectorComputeVariableINTEL = 5624,
|
|
SpvDecorationFuncParamIOKindINTEL = 5625,
|
|
SpvDecorationVectorComputeFunctionINTEL = 5626,
|
|
SpvDecorationStackCallINTEL = 5627,
|
|
SpvDecorationGlobalVariableOffsetINTEL = 5628,
|
|
SpvDecorationCounterBuffer = 5634,
|
|
SpvDecorationHlslCounterBufferGOOGLE = 5634,
|
|
SpvDecorationHlslSemanticGOOGLE = 5635,
|
|
SpvDecorationUserSemantic = 5635,
|
|
SpvDecorationUserTypeGOOGLE = 5636,
|
|
SpvDecorationFunctionRoundingModeINTEL = 5822,
|
|
SpvDecorationFunctionDenormModeINTEL = 5823,
|
|
SpvDecorationRegisterINTEL = 5825,
|
|
SpvDecorationMemoryINTEL = 5826,
|
|
SpvDecorationNumbanksINTEL = 5827,
|
|
SpvDecorationBankwidthINTEL = 5828,
|
|
SpvDecorationMaxPrivateCopiesINTEL = 5829,
|
|
SpvDecorationSinglepumpINTEL = 5830,
|
|
SpvDecorationDoublepumpINTEL = 5831,
|
|
SpvDecorationMaxReplicatesINTEL = 5832,
|
|
SpvDecorationSimpleDualPortINTEL = 5833,
|
|
SpvDecorationMergeINTEL = 5834,
|
|
SpvDecorationBankBitsINTEL = 5835,
|
|
SpvDecorationForcePow2DepthINTEL = 5836,
|
|
SpvDecorationBurstCoalesceINTEL = 5899,
|
|
SpvDecorationCacheSizeINTEL = 5900,
|
|
SpvDecorationDontStaticallyCoalesceINTEL = 5901,
|
|
SpvDecorationPrefetchINTEL = 5902,
|
|
SpvDecorationStallEnableINTEL = 5905,
|
|
SpvDecorationFuseLoopsInFunctionINTEL = 5907,
|
|
SpvDecorationMathOpDSPModeINTEL = 5909,
|
|
SpvDecorationAliasScopeINTEL = 5914,
|
|
SpvDecorationNoAliasINTEL = 5915,
|
|
SpvDecorationInitiationIntervalINTEL = 5917,
|
|
SpvDecorationMaxConcurrencyINTEL = 5918,
|
|
SpvDecorationPipelineEnableINTEL = 5919,
|
|
SpvDecorationBufferLocationINTEL = 5921,
|
|
SpvDecorationIOPipeStorageINTEL = 5944,
|
|
SpvDecorationFunctionFloatingPointModeINTEL = 6080,
|
|
SpvDecorationSingleElementVectorINTEL = 6085,
|
|
SpvDecorationVectorComputeCallableFunctionINTEL = 6087,
|
|
SpvDecorationMediaBlockIOINTEL = 6140,
|
|
SpvDecorationLatencyControlLabelINTEL = 6172,
|
|
SpvDecorationLatencyControlConstraintINTEL = 6173,
|
|
SpvDecorationConduitKernelArgumentINTEL = 6175,
|
|
SpvDecorationRegisterMapKernelArgumentINTEL = 6176,
|
|
SpvDecorationMMHostInterfaceAddressWidthINTEL = 6177,
|
|
SpvDecorationMMHostInterfaceDataWidthINTEL = 6178,
|
|
SpvDecorationMMHostInterfaceLatencyINTEL = 6179,
|
|
SpvDecorationMMHostInterfaceReadWriteModeINTEL = 6180,
|
|
SpvDecorationMMHostInterfaceMaxBurstINTEL = 6181,
|
|
SpvDecorationMMHostInterfaceWaitRequestINTEL = 6182,
|
|
SpvDecorationStableKernelArgumentINTEL = 6183,
|
|
SpvDecorationMax = 0x7fffffff,
|
|
} SpvDecoration;
|
|
|
|
typedef enum SpvBuiltIn_ {
|
|
SpvBuiltInPosition = 0,
|
|
SpvBuiltInPointSize = 1,
|
|
SpvBuiltInClipDistance = 3,
|
|
SpvBuiltInCullDistance = 4,
|
|
SpvBuiltInVertexId = 5,
|
|
SpvBuiltInInstanceId = 6,
|
|
SpvBuiltInPrimitiveId = 7,
|
|
SpvBuiltInInvocationId = 8,
|
|
SpvBuiltInLayer = 9,
|
|
SpvBuiltInViewportIndex = 10,
|
|
SpvBuiltInTessLevelOuter = 11,
|
|
SpvBuiltInTessLevelInner = 12,
|
|
SpvBuiltInTessCoord = 13,
|
|
SpvBuiltInPatchVertices = 14,
|
|
SpvBuiltInFragCoord = 15,
|
|
SpvBuiltInPointCoord = 16,
|
|
SpvBuiltInFrontFacing = 17,
|
|
SpvBuiltInSampleId = 18,
|
|
SpvBuiltInSamplePosition = 19,
|
|
SpvBuiltInSampleMask = 20,
|
|
SpvBuiltInFragDepth = 22,
|
|
SpvBuiltInHelperInvocation = 23,
|
|
SpvBuiltInNumWorkgroups = 24,
|
|
SpvBuiltInWorkgroupSize = 25,
|
|
SpvBuiltInWorkgroupId = 26,
|
|
SpvBuiltInLocalInvocationId = 27,
|
|
SpvBuiltInGlobalInvocationId = 28,
|
|
SpvBuiltInLocalInvocationIndex = 29,
|
|
SpvBuiltInWorkDim = 30,
|
|
SpvBuiltInGlobalSize = 31,
|
|
SpvBuiltInEnqueuedWorkgroupSize = 32,
|
|
SpvBuiltInGlobalOffset = 33,
|
|
SpvBuiltInGlobalLinearId = 34,
|
|
SpvBuiltInSubgroupSize = 36,
|
|
SpvBuiltInSubgroupMaxSize = 37,
|
|
SpvBuiltInNumSubgroups = 38,
|
|
SpvBuiltInNumEnqueuedSubgroups = 39,
|
|
SpvBuiltInSubgroupId = 40,
|
|
SpvBuiltInSubgroupLocalInvocationId = 41,
|
|
SpvBuiltInVertexIndex = 42,
|
|
SpvBuiltInInstanceIndex = 43,
|
|
SpvBuiltInCoreIDARM = 4160,
|
|
SpvBuiltInCoreCountARM = 4161,
|
|
SpvBuiltInCoreMaxIDARM = 4162,
|
|
SpvBuiltInWarpIDARM = 4163,
|
|
SpvBuiltInWarpMaxIDARM = 4164,
|
|
SpvBuiltInSubgroupEqMask = 4416,
|
|
SpvBuiltInSubgroupEqMaskKHR = 4416,
|
|
SpvBuiltInSubgroupGeMask = 4417,
|
|
SpvBuiltInSubgroupGeMaskKHR = 4417,
|
|
SpvBuiltInSubgroupGtMask = 4418,
|
|
SpvBuiltInSubgroupGtMaskKHR = 4418,
|
|
SpvBuiltInSubgroupLeMask = 4419,
|
|
SpvBuiltInSubgroupLeMaskKHR = 4419,
|
|
SpvBuiltInSubgroupLtMask = 4420,
|
|
SpvBuiltInSubgroupLtMaskKHR = 4420,
|
|
SpvBuiltInBaseVertex = 4424,
|
|
SpvBuiltInBaseInstance = 4425,
|
|
SpvBuiltInDrawIndex = 4426,
|
|
SpvBuiltInPrimitiveShadingRateKHR = 4432,
|
|
SpvBuiltInDeviceIndex = 4438,
|
|
SpvBuiltInViewIndex = 4440,
|
|
SpvBuiltInShadingRateKHR = 4444,
|
|
SpvBuiltInBaryCoordNoPerspAMD = 4992,
|
|
SpvBuiltInBaryCoordNoPerspCentroidAMD = 4993,
|
|
SpvBuiltInBaryCoordNoPerspSampleAMD = 4994,
|
|
SpvBuiltInBaryCoordSmoothAMD = 4995,
|
|
SpvBuiltInBaryCoordSmoothCentroidAMD = 4996,
|
|
SpvBuiltInBaryCoordSmoothSampleAMD = 4997,
|
|
SpvBuiltInBaryCoordPullModelAMD = 4998,
|
|
SpvBuiltInFragStencilRefEXT = 5014,
|
|
SpvBuiltInViewportMaskNV = 5253,
|
|
SpvBuiltInSecondaryPositionNV = 5257,
|
|
SpvBuiltInSecondaryViewportMaskNV = 5258,
|
|
SpvBuiltInPositionPerViewNV = 5261,
|
|
SpvBuiltInViewportMaskPerViewNV = 5262,
|
|
SpvBuiltInFullyCoveredEXT = 5264,
|
|
SpvBuiltInTaskCountNV = 5274,
|
|
SpvBuiltInPrimitiveCountNV = 5275,
|
|
SpvBuiltInPrimitiveIndicesNV = 5276,
|
|
SpvBuiltInClipDistancePerViewNV = 5277,
|
|
SpvBuiltInCullDistancePerViewNV = 5278,
|
|
SpvBuiltInLayerPerViewNV = 5279,
|
|
SpvBuiltInMeshViewCountNV = 5280,
|
|
SpvBuiltInMeshViewIndicesNV = 5281,
|
|
SpvBuiltInBaryCoordKHR = 5286,
|
|
SpvBuiltInBaryCoordNV = 5286,
|
|
SpvBuiltInBaryCoordNoPerspKHR = 5287,
|
|
SpvBuiltInBaryCoordNoPerspNV = 5287,
|
|
SpvBuiltInFragSizeEXT = 5292,
|
|
SpvBuiltInFragmentSizeNV = 5292,
|
|
SpvBuiltInFragInvocationCountEXT = 5293,
|
|
SpvBuiltInInvocationsPerPixelNV = 5293,
|
|
SpvBuiltInPrimitivePointIndicesEXT = 5294,
|
|
SpvBuiltInPrimitiveLineIndicesEXT = 5295,
|
|
SpvBuiltInPrimitiveTriangleIndicesEXT = 5296,
|
|
SpvBuiltInCullPrimitiveEXT = 5299,
|
|
SpvBuiltInLaunchIdKHR = 5319,
|
|
SpvBuiltInLaunchIdNV = 5319,
|
|
SpvBuiltInLaunchSizeKHR = 5320,
|
|
SpvBuiltInLaunchSizeNV = 5320,
|
|
SpvBuiltInWorldRayOriginKHR = 5321,
|
|
SpvBuiltInWorldRayOriginNV = 5321,
|
|
SpvBuiltInWorldRayDirectionKHR = 5322,
|
|
SpvBuiltInWorldRayDirectionNV = 5322,
|
|
SpvBuiltInObjectRayOriginKHR = 5323,
|
|
SpvBuiltInObjectRayOriginNV = 5323,
|
|
SpvBuiltInObjectRayDirectionKHR = 5324,
|
|
SpvBuiltInObjectRayDirectionNV = 5324,
|
|
SpvBuiltInRayTminKHR = 5325,
|
|
SpvBuiltInRayTminNV = 5325,
|
|
SpvBuiltInRayTmaxKHR = 5326,
|
|
SpvBuiltInRayTmaxNV = 5326,
|
|
SpvBuiltInInstanceCustomIndexKHR = 5327,
|
|
SpvBuiltInInstanceCustomIndexNV = 5327,
|
|
SpvBuiltInObjectToWorldKHR = 5330,
|
|
SpvBuiltInObjectToWorldNV = 5330,
|
|
SpvBuiltInWorldToObjectKHR = 5331,
|
|
SpvBuiltInWorldToObjectNV = 5331,
|
|
SpvBuiltInHitTNV = 5332,
|
|
SpvBuiltInHitKindKHR = 5333,
|
|
SpvBuiltInHitKindNV = 5333,
|
|
SpvBuiltInCurrentRayTimeNV = 5334,
|
|
SpvBuiltInHitTriangleVertexPositionsKHR = 5335,
|
|
SpvBuiltInIncomingRayFlagsKHR = 5351,
|
|
SpvBuiltInIncomingRayFlagsNV = 5351,
|
|
SpvBuiltInRayGeometryIndexKHR = 5352,
|
|
SpvBuiltInWarpsPerSMNV = 5374,
|
|
SpvBuiltInSMCountNV = 5375,
|
|
SpvBuiltInWarpIDNV = 5376,
|
|
SpvBuiltInSMIDNV = 5377,
|
|
SpvBuiltInCullMaskKHR = 6021,
|
|
SpvBuiltInMax = 0x7fffffff,
|
|
} SpvBuiltIn;
|
|
|
|
typedef enum SpvSelectionControlShift_ {
|
|
SpvSelectionControlFlattenShift = 0,
|
|
SpvSelectionControlDontFlattenShift = 1,
|
|
SpvSelectionControlMax = 0x7fffffff,
|
|
} SpvSelectionControlShift;
|
|
|
|
typedef enum SpvSelectionControlMask_ {
|
|
SpvSelectionControlMaskNone = 0,
|
|
SpvSelectionControlFlattenMask = 0x00000001,
|
|
SpvSelectionControlDontFlattenMask = 0x00000002,
|
|
} SpvSelectionControlMask;
|
|
|
|
typedef enum SpvLoopControlShift_ {
|
|
SpvLoopControlUnrollShift = 0,
|
|
SpvLoopControlDontUnrollShift = 1,
|
|
SpvLoopControlDependencyInfiniteShift = 2,
|
|
SpvLoopControlDependencyLengthShift = 3,
|
|
SpvLoopControlMinIterationsShift = 4,
|
|
SpvLoopControlMaxIterationsShift = 5,
|
|
SpvLoopControlIterationMultipleShift = 6,
|
|
SpvLoopControlPeelCountShift = 7,
|
|
SpvLoopControlPartialCountShift = 8,
|
|
SpvLoopControlInitiationIntervalINTELShift = 16,
|
|
SpvLoopControlMaxConcurrencyINTELShift = 17,
|
|
SpvLoopControlDependencyArrayINTELShift = 18,
|
|
SpvLoopControlPipelineEnableINTELShift = 19,
|
|
SpvLoopControlLoopCoalesceINTELShift = 20,
|
|
SpvLoopControlMaxInterleavingINTELShift = 21,
|
|
SpvLoopControlSpeculatedIterationsINTELShift = 22,
|
|
SpvLoopControlNoFusionINTELShift = 23,
|
|
SpvLoopControlLoopCountINTELShift = 24,
|
|
SpvLoopControlMaxReinvocationDelayINTELShift = 25,
|
|
SpvLoopControlMax = 0x7fffffff,
|
|
} SpvLoopControlShift;
|
|
|
|
typedef enum SpvLoopControlMask_ {
|
|
SpvLoopControlMaskNone = 0,
|
|
SpvLoopControlUnrollMask = 0x00000001,
|
|
SpvLoopControlDontUnrollMask = 0x00000002,
|
|
SpvLoopControlDependencyInfiniteMask = 0x00000004,
|
|
SpvLoopControlDependencyLengthMask = 0x00000008,
|
|
SpvLoopControlMinIterationsMask = 0x00000010,
|
|
SpvLoopControlMaxIterationsMask = 0x00000020,
|
|
SpvLoopControlIterationMultipleMask = 0x00000040,
|
|
SpvLoopControlPeelCountMask = 0x00000080,
|
|
SpvLoopControlPartialCountMask = 0x00000100,
|
|
SpvLoopControlInitiationIntervalINTELMask = 0x00010000,
|
|
SpvLoopControlMaxConcurrencyINTELMask = 0x00020000,
|
|
SpvLoopControlDependencyArrayINTELMask = 0x00040000,
|
|
SpvLoopControlPipelineEnableINTELMask = 0x00080000,
|
|
SpvLoopControlLoopCoalesceINTELMask = 0x00100000,
|
|
SpvLoopControlMaxInterleavingINTELMask = 0x00200000,
|
|
SpvLoopControlSpeculatedIterationsINTELMask = 0x00400000,
|
|
SpvLoopControlNoFusionINTELMask = 0x00800000,
|
|
SpvLoopControlLoopCountINTELMask = 0x01000000,
|
|
SpvLoopControlMaxReinvocationDelayINTELMask = 0x02000000,
|
|
} SpvLoopControlMask;
|
|
|
|
typedef enum SpvFunctionControlShift_ {
|
|
SpvFunctionControlInlineShift = 0,
|
|
SpvFunctionControlDontInlineShift = 1,
|
|
SpvFunctionControlPureShift = 2,
|
|
SpvFunctionControlConstShift = 3,
|
|
SpvFunctionControlOptNoneINTELShift = 16,
|
|
SpvFunctionControlMax = 0x7fffffff,
|
|
} SpvFunctionControlShift;
|
|
|
|
typedef enum SpvFunctionControlMask_ {
|
|
SpvFunctionControlMaskNone = 0,
|
|
SpvFunctionControlInlineMask = 0x00000001,
|
|
SpvFunctionControlDontInlineMask = 0x00000002,
|
|
SpvFunctionControlPureMask = 0x00000004,
|
|
SpvFunctionControlConstMask = 0x00000008,
|
|
SpvFunctionControlOptNoneINTELMask = 0x00010000,
|
|
} SpvFunctionControlMask;
|
|
|
|
typedef enum SpvMemorySemanticsShift_ {
|
|
SpvMemorySemanticsAcquireShift = 1,
|
|
SpvMemorySemanticsReleaseShift = 2,
|
|
SpvMemorySemanticsAcquireReleaseShift = 3,
|
|
SpvMemorySemanticsSequentiallyConsistentShift = 4,
|
|
SpvMemorySemanticsUniformMemoryShift = 6,
|
|
SpvMemorySemanticsSubgroupMemoryShift = 7,
|
|
SpvMemorySemanticsWorkgroupMemoryShift = 8,
|
|
SpvMemorySemanticsCrossWorkgroupMemoryShift = 9,
|
|
SpvMemorySemanticsAtomicCounterMemoryShift = 10,
|
|
SpvMemorySemanticsImageMemoryShift = 11,
|
|
SpvMemorySemanticsOutputMemoryShift = 12,
|
|
SpvMemorySemanticsOutputMemoryKHRShift = 12,
|
|
SpvMemorySemanticsMakeAvailableShift = 13,
|
|
SpvMemorySemanticsMakeAvailableKHRShift = 13,
|
|
SpvMemorySemanticsMakeVisibleShift = 14,
|
|
SpvMemorySemanticsMakeVisibleKHRShift = 14,
|
|
SpvMemorySemanticsVolatileShift = 15,
|
|
SpvMemorySemanticsMax = 0x7fffffff,
|
|
} SpvMemorySemanticsShift;
|
|
|
|
typedef enum SpvMemorySemanticsMask_ {
|
|
SpvMemorySemanticsMaskNone = 0,
|
|
SpvMemorySemanticsAcquireMask = 0x00000002,
|
|
SpvMemorySemanticsReleaseMask = 0x00000004,
|
|
SpvMemorySemanticsAcquireReleaseMask = 0x00000008,
|
|
SpvMemorySemanticsSequentiallyConsistentMask = 0x00000010,
|
|
SpvMemorySemanticsUniformMemoryMask = 0x00000040,
|
|
SpvMemorySemanticsSubgroupMemoryMask = 0x00000080,
|
|
SpvMemorySemanticsWorkgroupMemoryMask = 0x00000100,
|
|
SpvMemorySemanticsCrossWorkgroupMemoryMask = 0x00000200,
|
|
SpvMemorySemanticsAtomicCounterMemoryMask = 0x00000400,
|
|
SpvMemorySemanticsImageMemoryMask = 0x00000800,
|
|
SpvMemorySemanticsOutputMemoryMask = 0x00001000,
|
|
SpvMemorySemanticsOutputMemoryKHRMask = 0x00001000,
|
|
SpvMemorySemanticsMakeAvailableMask = 0x00002000,
|
|
SpvMemorySemanticsMakeAvailableKHRMask = 0x00002000,
|
|
SpvMemorySemanticsMakeVisibleMask = 0x00004000,
|
|
SpvMemorySemanticsMakeVisibleKHRMask = 0x00004000,
|
|
SpvMemorySemanticsVolatileMask = 0x00008000,
|
|
} SpvMemorySemanticsMask;
|
|
|
|
typedef enum SpvMemoryAccessShift_ {
|
|
SpvMemoryAccessVolatileShift = 0,
|
|
SpvMemoryAccessAlignedShift = 1,
|
|
SpvMemoryAccessNontemporalShift = 2,
|
|
SpvMemoryAccessMakePointerAvailableShift = 3,
|
|
SpvMemoryAccessMakePointerAvailableKHRShift = 3,
|
|
SpvMemoryAccessMakePointerVisibleShift = 4,
|
|
SpvMemoryAccessMakePointerVisibleKHRShift = 4,
|
|
SpvMemoryAccessNonPrivatePointerShift = 5,
|
|
SpvMemoryAccessNonPrivatePointerKHRShift = 5,
|
|
SpvMemoryAccessAliasScopeINTELMaskShift = 16,
|
|
SpvMemoryAccessNoAliasINTELMaskShift = 17,
|
|
SpvMemoryAccessMax = 0x7fffffff,
|
|
} SpvMemoryAccessShift;
|
|
|
|
typedef enum SpvMemoryAccessMask_ {
|
|
SpvMemoryAccessMaskNone = 0,
|
|
SpvMemoryAccessVolatileMask = 0x00000001,
|
|
SpvMemoryAccessAlignedMask = 0x00000002,
|
|
SpvMemoryAccessNontemporalMask = 0x00000004,
|
|
SpvMemoryAccessMakePointerAvailableMask = 0x00000008,
|
|
SpvMemoryAccessMakePointerAvailableKHRMask = 0x00000008,
|
|
SpvMemoryAccessMakePointerVisibleMask = 0x00000010,
|
|
SpvMemoryAccessMakePointerVisibleKHRMask = 0x00000010,
|
|
SpvMemoryAccessNonPrivatePointerMask = 0x00000020,
|
|
SpvMemoryAccessNonPrivatePointerKHRMask = 0x00000020,
|
|
SpvMemoryAccessAliasScopeINTELMaskMask = 0x00010000,
|
|
SpvMemoryAccessNoAliasINTELMaskMask = 0x00020000,
|
|
} SpvMemoryAccessMask;
|
|
|
|
typedef enum SpvScope_ {
|
|
SpvScopeCrossDevice = 0,
|
|
SpvScopeDevice = 1,
|
|
SpvScopeWorkgroup = 2,
|
|
SpvScopeSubgroup = 3,
|
|
SpvScopeInvocation = 4,
|
|
SpvScopeQueueFamily = 5,
|
|
SpvScopeQueueFamilyKHR = 5,
|
|
SpvScopeShaderCallKHR = 6,
|
|
SpvScopeMax = 0x7fffffff,
|
|
} SpvScope;
|
|
|
|
typedef enum SpvGroupOperation_ {
|
|
SpvGroupOperationReduce = 0,
|
|
SpvGroupOperationInclusiveScan = 1,
|
|
SpvGroupOperationExclusiveScan = 2,
|
|
SpvGroupOperationClusteredReduce = 3,
|
|
SpvGroupOperationPartitionedReduceNV = 6,
|
|
SpvGroupOperationPartitionedInclusiveScanNV = 7,
|
|
SpvGroupOperationPartitionedExclusiveScanNV = 8,
|
|
SpvGroupOperationMax = 0x7fffffff,
|
|
} SpvGroupOperation;
|
|
|
|
typedef enum SpvKernelEnqueueFlags_ {
|
|
SpvKernelEnqueueFlagsNoWait = 0,
|
|
SpvKernelEnqueueFlagsWaitKernel = 1,
|
|
SpvKernelEnqueueFlagsWaitWorkGroup = 2,
|
|
SpvKernelEnqueueFlagsMax = 0x7fffffff,
|
|
} SpvKernelEnqueueFlags;
|
|
|
|
typedef enum SpvKernelProfilingInfoShift_ {
|
|
SpvKernelProfilingInfoCmdExecTimeShift = 0,
|
|
SpvKernelProfilingInfoMax = 0x7fffffff,
|
|
} SpvKernelProfilingInfoShift;
|
|
|
|
typedef enum SpvKernelProfilingInfoMask_ {
|
|
SpvKernelProfilingInfoMaskNone = 0,
|
|
SpvKernelProfilingInfoCmdExecTimeMask = 0x00000001,
|
|
} SpvKernelProfilingInfoMask;
|
|
|
|
typedef enum SpvCapability_ {
|
|
SpvCapabilityMatrix = 0,
|
|
SpvCapabilityShader = 1,
|
|
SpvCapabilityGeometry = 2,
|
|
SpvCapabilityTessellation = 3,
|
|
SpvCapabilityAddresses = 4,
|
|
SpvCapabilityLinkage = 5,
|
|
SpvCapabilityKernel = 6,
|
|
SpvCapabilityVector16 = 7,
|
|
SpvCapabilityFloat16Buffer = 8,
|
|
SpvCapabilityFloat16 = 9,
|
|
SpvCapabilityFloat64 = 10,
|
|
SpvCapabilityInt64 = 11,
|
|
SpvCapabilityInt64Atomics = 12,
|
|
SpvCapabilityImageBasic = 13,
|
|
SpvCapabilityImageReadWrite = 14,
|
|
SpvCapabilityImageMipmap = 15,
|
|
SpvCapabilityPipes = 17,
|
|
SpvCapabilityGroups = 18,
|
|
SpvCapabilityDeviceEnqueue = 19,
|
|
SpvCapabilityLiteralSampler = 20,
|
|
SpvCapabilityAtomicStorage = 21,
|
|
SpvCapabilityInt16 = 22,
|
|
SpvCapabilityTessellationPointSize = 23,
|
|
SpvCapabilityGeometryPointSize = 24,
|
|
SpvCapabilityImageGatherExtended = 25,
|
|
SpvCapabilityStorageImageMultisample = 27,
|
|
SpvCapabilityUniformBufferArrayDynamicIndexing = 28,
|
|
SpvCapabilitySampledImageArrayDynamicIndexing = 29,
|
|
SpvCapabilityStorageBufferArrayDynamicIndexing = 30,
|
|
SpvCapabilityStorageImageArrayDynamicIndexing = 31,
|
|
SpvCapabilityClipDistance = 32,
|
|
SpvCapabilityCullDistance = 33,
|
|
SpvCapabilityImageCubeArray = 34,
|
|
SpvCapabilitySampleRateShading = 35,
|
|
SpvCapabilityImageRect = 36,
|
|
SpvCapabilitySampledRect = 37,
|
|
SpvCapabilityGenericPointer = 38,
|
|
SpvCapabilityInt8 = 39,
|
|
SpvCapabilityInputAttachment = 40,
|
|
SpvCapabilitySparseResidency = 41,
|
|
SpvCapabilityMinLod = 42,
|
|
SpvCapabilitySampled1D = 43,
|
|
SpvCapabilityImage1D = 44,
|
|
SpvCapabilitySampledCubeArray = 45,
|
|
SpvCapabilitySampledBuffer = 46,
|
|
SpvCapabilityImageBuffer = 47,
|
|
SpvCapabilityImageMSArray = 48,
|
|
SpvCapabilityStorageImageExtendedFormats = 49,
|
|
SpvCapabilityImageQuery = 50,
|
|
SpvCapabilityDerivativeControl = 51,
|
|
SpvCapabilityInterpolationFunction = 52,
|
|
SpvCapabilityTransformFeedback = 53,
|
|
SpvCapabilityGeometryStreams = 54,
|
|
SpvCapabilityStorageImageReadWithoutFormat = 55,
|
|
SpvCapabilityStorageImageWriteWithoutFormat = 56,
|
|
SpvCapabilityMultiViewport = 57,
|
|
SpvCapabilitySubgroupDispatch = 58,
|
|
SpvCapabilityNamedBarrier = 59,
|
|
SpvCapabilityPipeStorage = 60,
|
|
SpvCapabilityGroupNonUniform = 61,
|
|
SpvCapabilityGroupNonUniformVote = 62,
|
|
SpvCapabilityGroupNonUniformArithmetic = 63,
|
|
SpvCapabilityGroupNonUniformBallot = 64,
|
|
SpvCapabilityGroupNonUniformShuffle = 65,
|
|
SpvCapabilityGroupNonUniformShuffleRelative = 66,
|
|
SpvCapabilityGroupNonUniformClustered = 67,
|
|
SpvCapabilityGroupNonUniformQuad = 68,
|
|
SpvCapabilityShaderLayer = 69,
|
|
SpvCapabilityShaderViewportIndex = 70,
|
|
SpvCapabilityUniformDecoration = 71,
|
|
SpvCapabilityCoreBuiltinsARM = 4165,
|
|
SpvCapabilityTileImageColorReadAccessEXT = 4166,
|
|
SpvCapabilityTileImageDepthReadAccessEXT = 4167,
|
|
SpvCapabilityTileImageStencilReadAccessEXT = 4168,
|
|
SpvCapabilityFragmentShadingRateKHR = 4422,
|
|
SpvCapabilitySubgroupBallotKHR = 4423,
|
|
SpvCapabilityDrawParameters = 4427,
|
|
SpvCapabilityWorkgroupMemoryExplicitLayoutKHR = 4428,
|
|
SpvCapabilityWorkgroupMemoryExplicitLayout8BitAccessKHR = 4429,
|
|
SpvCapabilityWorkgroupMemoryExplicitLayout16BitAccessKHR = 4430,
|
|
SpvCapabilitySubgroupVoteKHR = 4431,
|
|
SpvCapabilityStorageBuffer16BitAccess = 4433,
|
|
SpvCapabilityStorageUniformBufferBlock16 = 4433,
|
|
SpvCapabilityStorageUniform16 = 4434,
|
|
SpvCapabilityUniformAndStorageBuffer16BitAccess = 4434,
|
|
SpvCapabilityStoragePushConstant16 = 4435,
|
|
SpvCapabilityStorageInputOutput16 = 4436,
|
|
SpvCapabilityDeviceGroup = 4437,
|
|
SpvCapabilityMultiView = 4439,
|
|
SpvCapabilityVariablePointersStorageBuffer = 4441,
|
|
SpvCapabilityVariablePointers = 4442,
|
|
SpvCapabilityAtomicStorageOps = 4445,
|
|
SpvCapabilitySampleMaskPostDepthCoverage = 4447,
|
|
SpvCapabilityStorageBuffer8BitAccess = 4448,
|
|
SpvCapabilityUniformAndStorageBuffer8BitAccess = 4449,
|
|
SpvCapabilityStoragePushConstant8 = 4450,
|
|
SpvCapabilityDenormPreserve = 4464,
|
|
SpvCapabilityDenormFlushToZero = 4465,
|
|
SpvCapabilitySignedZeroInfNanPreserve = 4466,
|
|
SpvCapabilityRoundingModeRTE = 4467,
|
|
SpvCapabilityRoundingModeRTZ = 4468,
|
|
SpvCapabilityRayQueryProvisionalKHR = 4471,
|
|
SpvCapabilityRayQueryKHR = 4472,
|
|
SpvCapabilityRayTraversalPrimitiveCullingKHR = 4478,
|
|
SpvCapabilityRayTracingKHR = 4479,
|
|
SpvCapabilityTextureSampleWeightedQCOM = 4484,
|
|
SpvCapabilityTextureBoxFilterQCOM = 4485,
|
|
SpvCapabilityTextureBlockMatchQCOM = 4486,
|
|
SpvCapabilityFloat16ImageAMD = 5008,
|
|
SpvCapabilityImageGatherBiasLodAMD = 5009,
|
|
SpvCapabilityFragmentMaskAMD = 5010,
|
|
SpvCapabilityStencilExportEXT = 5013,
|
|
SpvCapabilityImageReadWriteLodAMD = 5015,
|
|
SpvCapabilityInt64ImageEXT = 5016,
|
|
SpvCapabilityShaderClockKHR = 5055,
|
|
SpvCapabilitySampleMaskOverrideCoverageNV = 5249,
|
|
SpvCapabilityGeometryShaderPassthroughNV = 5251,
|
|
SpvCapabilityShaderViewportIndexLayerEXT = 5254,
|
|
SpvCapabilityShaderViewportIndexLayerNV = 5254,
|
|
SpvCapabilityShaderViewportMaskNV = 5255,
|
|
SpvCapabilityShaderStereoViewNV = 5259,
|
|
SpvCapabilityPerViewAttributesNV = 5260,
|
|
SpvCapabilityFragmentFullyCoveredEXT = 5265,
|
|
SpvCapabilityMeshShadingNV = 5266,
|
|
SpvCapabilityImageFootprintNV = 5282,
|
|
SpvCapabilityMeshShadingEXT = 5283,
|
|
SpvCapabilityFragmentBarycentricKHR = 5284,
|
|
SpvCapabilityFragmentBarycentricNV = 5284,
|
|
SpvCapabilityComputeDerivativeGroupQuadsNV = 5288,
|
|
SpvCapabilityFragmentDensityEXT = 5291,
|
|
SpvCapabilityShadingRateNV = 5291,
|
|
SpvCapabilityGroupNonUniformPartitionedNV = 5297,
|
|
SpvCapabilityShaderNonUniform = 5301,
|
|
SpvCapabilityShaderNonUniformEXT = 5301,
|
|
SpvCapabilityRuntimeDescriptorArray = 5302,
|
|
SpvCapabilityRuntimeDescriptorArrayEXT = 5302,
|
|
SpvCapabilityInputAttachmentArrayDynamicIndexing = 5303,
|
|
SpvCapabilityInputAttachmentArrayDynamicIndexingEXT = 5303,
|
|
SpvCapabilityUniformTexelBufferArrayDynamicIndexing = 5304,
|
|
SpvCapabilityUniformTexelBufferArrayDynamicIndexingEXT = 5304,
|
|
SpvCapabilityStorageTexelBufferArrayDynamicIndexing = 5305,
|
|
SpvCapabilityStorageTexelBufferArrayDynamicIndexingEXT = 5305,
|
|
SpvCapabilityUniformBufferArrayNonUniformIndexing = 5306,
|
|
SpvCapabilityUniformBufferArrayNonUniformIndexingEXT = 5306,
|
|
SpvCapabilitySampledImageArrayNonUniformIndexing = 5307,
|
|
SpvCapabilitySampledImageArrayNonUniformIndexingEXT = 5307,
|
|
SpvCapabilityStorageBufferArrayNonUniformIndexing = 5308,
|
|
SpvCapabilityStorageBufferArrayNonUniformIndexingEXT = 5308,
|
|
SpvCapabilityStorageImageArrayNonUniformIndexing = 5309,
|
|
SpvCapabilityStorageImageArrayNonUniformIndexingEXT = 5309,
|
|
SpvCapabilityInputAttachmentArrayNonUniformIndexing = 5310,
|
|
SpvCapabilityInputAttachmentArrayNonUniformIndexingEXT = 5310,
|
|
SpvCapabilityUniformTexelBufferArrayNonUniformIndexing = 5311,
|
|
SpvCapabilityUniformTexelBufferArrayNonUniformIndexingEXT = 5311,
|
|
SpvCapabilityStorageTexelBufferArrayNonUniformIndexing = 5312,
|
|
SpvCapabilityStorageTexelBufferArrayNonUniformIndexingEXT = 5312,
|
|
SpvCapabilityRayTracingPositionFetchKHR = 5336,
|
|
SpvCapabilityRayTracingNV = 5340,
|
|
SpvCapabilityRayTracingMotionBlurNV = 5341,
|
|
SpvCapabilityVulkanMemoryModel = 5345,
|
|
SpvCapabilityVulkanMemoryModelKHR = 5345,
|
|
SpvCapabilityVulkanMemoryModelDeviceScope = 5346,
|
|
SpvCapabilityVulkanMemoryModelDeviceScopeKHR = 5346,
|
|
SpvCapabilityPhysicalStorageBufferAddresses = 5347,
|
|
SpvCapabilityPhysicalStorageBufferAddressesEXT = 5347,
|
|
SpvCapabilityComputeDerivativeGroupLinearNV = 5350,
|
|
SpvCapabilityRayTracingProvisionalKHR = 5353,
|
|
SpvCapabilityCooperativeMatrixNV = 5357,
|
|
SpvCapabilityFragmentShaderSampleInterlockEXT = 5363,
|
|
SpvCapabilityFragmentShaderShadingRateInterlockEXT = 5372,
|
|
SpvCapabilityShaderSMBuiltinsNV = 5373,
|
|
SpvCapabilityFragmentShaderPixelInterlockEXT = 5378,
|
|
SpvCapabilityDemoteToHelperInvocation = 5379,
|
|
SpvCapabilityDemoteToHelperInvocationEXT = 5379,
|
|
SpvCapabilityRayTracingOpacityMicromapEXT = 5381,
|
|
SpvCapabilityShaderInvocationReorderNV = 5383,
|
|
SpvCapabilityBindlessTextureNV = 5390,
|
|
SpvCapabilityRayQueryPositionFetchKHR = 5391,
|
|
SpvCapabilitySubgroupShuffleINTEL = 5568,
|
|
SpvCapabilitySubgroupBufferBlockIOINTEL = 5569,
|
|
SpvCapabilitySubgroupImageBlockIOINTEL = 5570,
|
|
SpvCapabilitySubgroupImageMediaBlockIOINTEL = 5579,
|
|
SpvCapabilityRoundToInfinityINTEL = 5582,
|
|
SpvCapabilityFloatingPointModeINTEL = 5583,
|
|
SpvCapabilityIntegerFunctions2INTEL = 5584,
|
|
SpvCapabilityFunctionPointersINTEL = 5603,
|
|
SpvCapabilityIndirectReferencesINTEL = 5604,
|
|
SpvCapabilityAsmINTEL = 5606,
|
|
SpvCapabilityAtomicFloat32MinMaxEXT = 5612,
|
|
SpvCapabilityAtomicFloat64MinMaxEXT = 5613,
|
|
SpvCapabilityAtomicFloat16MinMaxEXT = 5616,
|
|
SpvCapabilityVectorComputeINTEL = 5617,
|
|
SpvCapabilityVectorAnyINTEL = 5619,
|
|
SpvCapabilityExpectAssumeKHR = 5629,
|
|
SpvCapabilitySubgroupAvcMotionEstimationINTEL = 5696,
|
|
SpvCapabilitySubgroupAvcMotionEstimationIntraINTEL = 5697,
|
|
SpvCapabilitySubgroupAvcMotionEstimationChromaINTEL = 5698,
|
|
SpvCapabilityVariableLengthArrayINTEL = 5817,
|
|
SpvCapabilityFunctionFloatControlINTEL = 5821,
|
|
SpvCapabilityFPGAMemoryAttributesINTEL = 5824,
|
|
SpvCapabilityFPFastMathModeINTEL = 5837,
|
|
SpvCapabilityArbitraryPrecisionIntegersINTEL = 5844,
|
|
SpvCapabilityArbitraryPrecisionFloatingPointINTEL = 5845,
|
|
SpvCapabilityUnstructuredLoopControlsINTEL = 5886,
|
|
SpvCapabilityFPGALoopControlsINTEL = 5888,
|
|
SpvCapabilityKernelAttributesINTEL = 5892,
|
|
SpvCapabilityFPGAKernelAttributesINTEL = 5897,
|
|
SpvCapabilityFPGAMemoryAccessesINTEL = 5898,
|
|
SpvCapabilityFPGAClusterAttributesINTEL = 5904,
|
|
SpvCapabilityLoopFuseINTEL = 5906,
|
|
SpvCapabilityFPGADSPControlINTEL = 5908,
|
|
SpvCapabilityMemoryAccessAliasingINTEL = 5910,
|
|
SpvCapabilityFPGAInvocationPipeliningAttributesINTEL = 5916,
|
|
SpvCapabilityFPGABufferLocationINTEL = 5920,
|
|
SpvCapabilityArbitraryPrecisionFixedPointINTEL = 5922,
|
|
SpvCapabilityUSMStorageClassesINTEL = 5935,
|
|
SpvCapabilityRuntimeAlignedAttributeINTEL = 5939,
|
|
SpvCapabilityIOPipesINTEL = 5943,
|
|
SpvCapabilityBlockingPipesINTEL = 5945,
|
|
SpvCapabilityFPGARegINTEL = 5948,
|
|
SpvCapabilityDotProductInputAll = 6016,
|
|
SpvCapabilityDotProductInputAllKHR = 6016,
|
|
SpvCapabilityDotProductInput4x8Bit = 6017,
|
|
SpvCapabilityDotProductInput4x8BitKHR = 6017,
|
|
SpvCapabilityDotProductInput4x8BitPacked = 6018,
|
|
SpvCapabilityDotProductInput4x8BitPackedKHR = 6018,
|
|
SpvCapabilityDotProduct = 6019,
|
|
SpvCapabilityDotProductKHR = 6019,
|
|
SpvCapabilityRayCullMaskKHR = 6020,
|
|
SpvCapabilityCooperativeMatrixKHR = 6022,
|
|
SpvCapabilityBitInstructions = 6025,
|
|
SpvCapabilityGroupNonUniformRotateKHR = 6026,
|
|
SpvCapabilityAtomicFloat32AddEXT = 6033,
|
|
SpvCapabilityAtomicFloat64AddEXT = 6034,
|
|
SpvCapabilityLongConstantCompositeINTEL = 6089,
|
|
SpvCapabilityOptNoneINTEL = 6094,
|
|
SpvCapabilityAtomicFloat16AddEXT = 6095,
|
|
SpvCapabilityDebugInfoModuleINTEL = 6114,
|
|
SpvCapabilityBFloat16ConversionINTEL = 6115,
|
|
SpvCapabilitySplitBarrierINTEL = 6141,
|
|
SpvCapabilityFPGAKernelAttributesv2INTEL = 6161,
|
|
SpvCapabilityFPGALatencyControlINTEL = 6171,
|
|
SpvCapabilityFPGAArgumentInterfacesINTEL = 6174,
|
|
SpvCapabilityGroupUniformArithmeticKHR = 6400,
|
|
SpvCapabilityMax = 0x7fffffff,
|
|
} SpvCapability;
|
|
|
|
typedef enum SpvRayFlagsShift_ {
|
|
SpvRayFlagsOpaqueKHRShift = 0,
|
|
SpvRayFlagsNoOpaqueKHRShift = 1,
|
|
SpvRayFlagsTerminateOnFirstHitKHRShift = 2,
|
|
SpvRayFlagsSkipClosestHitShaderKHRShift = 3,
|
|
SpvRayFlagsCullBackFacingTrianglesKHRShift = 4,
|
|
SpvRayFlagsCullFrontFacingTrianglesKHRShift = 5,
|
|
SpvRayFlagsCullOpaqueKHRShift = 6,
|
|
SpvRayFlagsCullNoOpaqueKHRShift = 7,
|
|
SpvRayFlagsSkipTrianglesKHRShift = 8,
|
|
SpvRayFlagsSkipAABBsKHRShift = 9,
|
|
SpvRayFlagsForceOpacityMicromap2StateEXTShift = 10,
|
|
SpvRayFlagsMax = 0x7fffffff,
|
|
} SpvRayFlagsShift;
|
|
|
|
typedef enum SpvRayFlagsMask_ {
|
|
SpvRayFlagsMaskNone = 0,
|
|
SpvRayFlagsOpaqueKHRMask = 0x00000001,
|
|
SpvRayFlagsNoOpaqueKHRMask = 0x00000002,
|
|
SpvRayFlagsTerminateOnFirstHitKHRMask = 0x00000004,
|
|
SpvRayFlagsSkipClosestHitShaderKHRMask = 0x00000008,
|
|
SpvRayFlagsCullBackFacingTrianglesKHRMask = 0x00000010,
|
|
SpvRayFlagsCullFrontFacingTrianglesKHRMask = 0x00000020,
|
|
SpvRayFlagsCullOpaqueKHRMask = 0x00000040,
|
|
SpvRayFlagsCullNoOpaqueKHRMask = 0x00000080,
|
|
SpvRayFlagsSkipTrianglesKHRMask = 0x00000100,
|
|
SpvRayFlagsSkipAABBsKHRMask = 0x00000200,
|
|
SpvRayFlagsForceOpacityMicromap2StateEXTMask = 0x00000400,
|
|
} SpvRayFlagsMask;
|
|
|
|
typedef enum SpvRayQueryIntersection_ {
|
|
SpvRayQueryIntersectionRayQueryCandidateIntersectionKHR = 0,
|
|
SpvRayQueryIntersectionRayQueryCommittedIntersectionKHR = 1,
|
|
SpvRayQueryIntersectionMax = 0x7fffffff,
|
|
} SpvRayQueryIntersection;
|
|
|
|
typedef enum SpvRayQueryCommittedIntersectionType_ {
|
|
SpvRayQueryCommittedIntersectionTypeRayQueryCommittedIntersectionNoneKHR = 0,
|
|
SpvRayQueryCommittedIntersectionTypeRayQueryCommittedIntersectionTriangleKHR =
|
|
1,
|
|
SpvRayQueryCommittedIntersectionTypeRayQueryCommittedIntersectionGeneratedKHR =
|
|
2,
|
|
SpvRayQueryCommittedIntersectionTypeMax = 0x7fffffff,
|
|
} SpvRayQueryCommittedIntersectionType;
|
|
|
|
typedef enum SpvRayQueryCandidateIntersectionType_ {
|
|
SpvRayQueryCandidateIntersectionTypeRayQueryCandidateIntersectionTriangleKHR =
|
|
0,
|
|
SpvRayQueryCandidateIntersectionTypeRayQueryCandidateIntersectionAABBKHR = 1,
|
|
SpvRayQueryCandidateIntersectionTypeMax = 0x7fffffff,
|
|
} SpvRayQueryCandidateIntersectionType;
|
|
|
|
typedef enum SpvFragmentShadingRateShift_ {
|
|
SpvFragmentShadingRateVertical2PixelsShift = 0,
|
|
SpvFragmentShadingRateVertical4PixelsShift = 1,
|
|
SpvFragmentShadingRateHorizontal2PixelsShift = 2,
|
|
SpvFragmentShadingRateHorizontal4PixelsShift = 3,
|
|
SpvFragmentShadingRateMax = 0x7fffffff,
|
|
} SpvFragmentShadingRateShift;
|
|
|
|
typedef enum SpvFragmentShadingRateMask_ {
|
|
SpvFragmentShadingRateMaskNone = 0,
|
|
SpvFragmentShadingRateVertical2PixelsMask = 0x00000001,
|
|
SpvFragmentShadingRateVertical4PixelsMask = 0x00000002,
|
|
SpvFragmentShadingRateHorizontal2PixelsMask = 0x00000004,
|
|
SpvFragmentShadingRateHorizontal4PixelsMask = 0x00000008,
|
|
} SpvFragmentShadingRateMask;
|
|
|
|
typedef enum SpvFPDenormMode_ {
|
|
SpvFPDenormModePreserve = 0,
|
|
SpvFPDenormModeFlushToZero = 1,
|
|
SpvFPDenormModeMax = 0x7fffffff,
|
|
} SpvFPDenormMode;
|
|
|
|
typedef enum SpvFPOperationMode_ {
|
|
SpvFPOperationModeIEEE = 0,
|
|
SpvFPOperationModeALT = 1,
|
|
SpvFPOperationModeMax = 0x7fffffff,
|
|
} SpvFPOperationMode;
|
|
|
|
typedef enum SpvQuantizationModes_ {
|
|
SpvQuantizationModesTRN = 0,
|
|
SpvQuantizationModesTRN_ZERO = 1,
|
|
SpvQuantizationModesRND = 2,
|
|
SpvQuantizationModesRND_ZERO = 3,
|
|
SpvQuantizationModesRND_INF = 4,
|
|
SpvQuantizationModesRND_MIN_INF = 5,
|
|
SpvQuantizationModesRND_CONV = 6,
|
|
SpvQuantizationModesRND_CONV_ODD = 7,
|
|
SpvQuantizationModesMax = 0x7fffffff,
|
|
} SpvQuantizationModes;
|
|
|
|
typedef enum SpvOverflowModes_ {
|
|
SpvOverflowModesWRAP = 0,
|
|
SpvOverflowModesSAT = 1,
|
|
SpvOverflowModesSAT_ZERO = 2,
|
|
SpvOverflowModesSAT_SYM = 3,
|
|
SpvOverflowModesMax = 0x7fffffff,
|
|
} SpvOverflowModes;
|
|
|
|
typedef enum SpvPackedVectorFormat_ {
|
|
SpvPackedVectorFormatPackedVectorFormat4x8Bit = 0,
|
|
SpvPackedVectorFormatPackedVectorFormat4x8BitKHR = 0,
|
|
SpvPackedVectorFormatMax = 0x7fffffff,
|
|
} SpvPackedVectorFormat;
|
|
|
|
typedef enum SpvCooperativeMatrixOperandsShift_ {
|
|
SpvCooperativeMatrixOperandsMatrixASignedComponentsShift = 0,
|
|
SpvCooperativeMatrixOperandsMatrixBSignedComponentsShift = 1,
|
|
SpvCooperativeMatrixOperandsMatrixCSignedComponentsShift = 2,
|
|
SpvCooperativeMatrixOperandsMatrixResultSignedComponentsShift = 3,
|
|
SpvCooperativeMatrixOperandsSaturatingAccumulationShift = 4,
|
|
SpvCooperativeMatrixOperandsMax = 0x7fffffff,
|
|
} SpvCooperativeMatrixOperandsShift;
|
|
|
|
typedef enum SpvCooperativeMatrixOperandsMask_ {
|
|
SpvCooperativeMatrixOperandsMaskNone = 0,
|
|
SpvCooperativeMatrixOperandsMatrixASignedComponentsMask = 0x00000001,
|
|
SpvCooperativeMatrixOperandsMatrixBSignedComponentsMask = 0x00000002,
|
|
SpvCooperativeMatrixOperandsMatrixCSignedComponentsMask = 0x00000004,
|
|
SpvCooperativeMatrixOperandsMatrixResultSignedComponentsMask = 0x00000008,
|
|
SpvCooperativeMatrixOperandsSaturatingAccumulationMask = 0x00000010,
|
|
} SpvCooperativeMatrixOperandsMask;
|
|
|
|
typedef enum SpvCooperativeMatrixLayout_ {
|
|
SpvCooperativeMatrixLayoutRowMajorKHR = 0,
|
|
SpvCooperativeMatrixLayoutColumnMajorKHR = 1,
|
|
SpvCooperativeMatrixLayoutMax = 0x7fffffff,
|
|
} SpvCooperativeMatrixLayout;
|
|
|
|
typedef enum SpvCooperativeMatrixUse_ {
|
|
SpvCooperativeMatrixUseMatrixAKHR = 0,
|
|
SpvCooperativeMatrixUseMatrixBKHR = 1,
|
|
SpvCooperativeMatrixUseMatrixAccumulatorKHR = 2,
|
|
SpvCooperativeMatrixUseMax = 0x7fffffff,
|
|
} SpvCooperativeMatrixUse;
|
|
|
|
typedef enum SpvOp_ {
|
|
SpvOpNop = 0,
|
|
SpvOpUndef = 1,
|
|
SpvOpSourceContinued = 2,
|
|
SpvOpSource = 3,
|
|
SpvOpSourceExtension = 4,
|
|
SpvOpName = 5,
|
|
SpvOpMemberName = 6,
|
|
SpvOpString = 7,
|
|
SpvOpLine = 8,
|
|
SpvOpExtension = 10,
|
|
SpvOpExtInstImport = 11,
|
|
SpvOpExtInst = 12,
|
|
SpvOpMemoryModel = 14,
|
|
SpvOpEntryPoint = 15,
|
|
SpvOpExecutionMode = 16,
|
|
SpvOpCapability = 17,
|
|
SpvOpTypeVoid = 19,
|
|
SpvOpTypeBool = 20,
|
|
SpvOpTypeInt = 21,
|
|
SpvOpTypeFloat = 22,
|
|
SpvOpTypeVector = 23,
|
|
SpvOpTypeMatrix = 24,
|
|
SpvOpTypeImage = 25,
|
|
SpvOpTypeSampler = 26,
|
|
SpvOpTypeSampledImage = 27,
|
|
SpvOpTypeArray = 28,
|
|
SpvOpTypeRuntimeArray = 29,
|
|
SpvOpTypeStruct = 30,
|
|
SpvOpTypeOpaque = 31,
|
|
SpvOpTypePointer = 32,
|
|
SpvOpTypeFunction = 33,
|
|
SpvOpTypeEvent = 34,
|
|
SpvOpTypeDeviceEvent = 35,
|
|
SpvOpTypeReserveId = 36,
|
|
SpvOpTypeQueue = 37,
|
|
SpvOpTypePipe = 38,
|
|
SpvOpTypeForwardPointer = 39,
|
|
SpvOpConstantTrue = 41,
|
|
SpvOpConstantFalse = 42,
|
|
SpvOpConstant = 43,
|
|
SpvOpConstantComposite = 44,
|
|
SpvOpConstantSampler = 45,
|
|
SpvOpConstantNull = 46,
|
|
SpvOpSpecConstantTrue = 48,
|
|
SpvOpSpecConstantFalse = 49,
|
|
SpvOpSpecConstant = 50,
|
|
SpvOpSpecConstantComposite = 51,
|
|
SpvOpSpecConstantOp = 52,
|
|
SpvOpFunction = 54,
|
|
SpvOpFunctionParameter = 55,
|
|
SpvOpFunctionEnd = 56,
|
|
SpvOpFunctionCall = 57,
|
|
SpvOpVariable = 59,
|
|
SpvOpImageTexelPointer = 60,
|
|
SpvOpLoad = 61,
|
|
SpvOpStore = 62,
|
|
SpvOpCopyMemory = 63,
|
|
SpvOpCopyMemorySized = 64,
|
|
SpvOpAccessChain = 65,
|
|
SpvOpInBoundsAccessChain = 66,
|
|
SpvOpPtrAccessChain = 67,
|
|
SpvOpArrayLength = 68,
|
|
SpvOpGenericPtrMemSemantics = 69,
|
|
SpvOpInBoundsPtrAccessChain = 70,
|
|
SpvOpDecorate = 71,
|
|
SpvOpMemberDecorate = 72,
|
|
SpvOpDecorationGroup = 73,
|
|
SpvOpGroupDecorate = 74,
|
|
SpvOpGroupMemberDecorate = 75,
|
|
SpvOpVectorExtractDynamic = 77,
|
|
SpvOpVectorInsertDynamic = 78,
|
|
SpvOpVectorShuffle = 79,
|
|
SpvOpCompositeConstruct = 80,
|
|
SpvOpCompositeExtract = 81,
|
|
SpvOpCompositeInsert = 82,
|
|
SpvOpCopyObject = 83,
|
|
SpvOpTranspose = 84,
|
|
SpvOpSampledImage = 86,
|
|
SpvOpImageSampleImplicitLod = 87,
|
|
SpvOpImageSampleExplicitLod = 88,
|
|
SpvOpImageSampleDrefImplicitLod = 89,
|
|
SpvOpImageSampleDrefExplicitLod = 90,
|
|
SpvOpImageSampleProjImplicitLod = 91,
|
|
SpvOpImageSampleProjExplicitLod = 92,
|
|
SpvOpImageSampleProjDrefImplicitLod = 93,
|
|
SpvOpImageSampleProjDrefExplicitLod = 94,
|
|
SpvOpImageFetch = 95,
|
|
SpvOpImageGather = 96,
|
|
SpvOpImageDrefGather = 97,
|
|
SpvOpImageRead = 98,
|
|
SpvOpImageWrite = 99,
|
|
SpvOpImage = 100,
|
|
SpvOpImageQueryFormat = 101,
|
|
SpvOpImageQueryOrder = 102,
|
|
SpvOpImageQuerySizeLod = 103,
|
|
SpvOpImageQuerySize = 104,
|
|
SpvOpImageQueryLod = 105,
|
|
SpvOpImageQueryLevels = 106,
|
|
SpvOpImageQuerySamples = 107,
|
|
SpvOpConvertFToU = 109,
|
|
SpvOpConvertFToS = 110,
|
|
SpvOpConvertSToF = 111,
|
|
SpvOpConvertUToF = 112,
|
|
SpvOpUConvert = 113,
|
|
SpvOpSConvert = 114,
|
|
SpvOpFConvert = 115,
|
|
SpvOpQuantizeToF16 = 116,
|
|
SpvOpConvertPtrToU = 117,
|
|
SpvOpSatConvertSToU = 118,
|
|
SpvOpSatConvertUToS = 119,
|
|
SpvOpConvertUToPtr = 120,
|
|
SpvOpPtrCastToGeneric = 121,
|
|
SpvOpGenericCastToPtr = 122,
|
|
SpvOpGenericCastToPtrExplicit = 123,
|
|
SpvOpBitcast = 124,
|
|
SpvOpSNegate = 126,
|
|
SpvOpFNegate = 127,
|
|
SpvOpIAdd = 128,
|
|
SpvOpFAdd = 129,
|
|
SpvOpISub = 130,
|
|
SpvOpFSub = 131,
|
|
SpvOpIMul = 132,
|
|
SpvOpFMul = 133,
|
|
SpvOpUDiv = 134,
|
|
SpvOpSDiv = 135,
|
|
SpvOpFDiv = 136,
|
|
SpvOpUMod = 137,
|
|
SpvOpSRem = 138,
|
|
SpvOpSMod = 139,
|
|
SpvOpFRem = 140,
|
|
SpvOpFMod = 141,
|
|
SpvOpVectorTimesScalar = 142,
|
|
SpvOpMatrixTimesScalar = 143,
|
|
SpvOpVectorTimesMatrix = 144,
|
|
SpvOpMatrixTimesVector = 145,
|
|
SpvOpMatrixTimesMatrix = 146,
|
|
SpvOpOuterProduct = 147,
|
|
SpvOpDot = 148,
|
|
SpvOpIAddCarry = 149,
|
|
SpvOpISubBorrow = 150,
|
|
SpvOpUMulExtended = 151,
|
|
SpvOpSMulExtended = 152,
|
|
SpvOpAny = 154,
|
|
SpvOpAll = 155,
|
|
SpvOpIsNan = 156,
|
|
SpvOpIsInf = 157,
|
|
SpvOpIsFinite = 158,
|
|
SpvOpIsNormal = 159,
|
|
SpvOpSignBitSet = 160,
|
|
SpvOpLessOrGreater = 161,
|
|
SpvOpOrdered = 162,
|
|
SpvOpUnordered = 163,
|
|
SpvOpLogicalEqual = 164,
|
|
SpvOpLogicalNotEqual = 165,
|
|
SpvOpLogicalOr = 166,
|
|
SpvOpLogicalAnd = 167,
|
|
SpvOpLogicalNot = 168,
|
|
SpvOpSelect = 169,
|
|
SpvOpIEqual = 170,
|
|
SpvOpINotEqual = 171,
|
|
SpvOpUGreaterThan = 172,
|
|
SpvOpSGreaterThan = 173,
|
|
SpvOpUGreaterThanEqual = 174,
|
|
SpvOpSGreaterThanEqual = 175,
|
|
SpvOpULessThan = 176,
|
|
SpvOpSLessThan = 177,
|
|
SpvOpULessThanEqual = 178,
|
|
SpvOpSLessThanEqual = 179,
|
|
SpvOpFOrdEqual = 180,
|
|
SpvOpFUnordEqual = 181,
|
|
SpvOpFOrdNotEqual = 182,
|
|
SpvOpFUnordNotEqual = 183,
|
|
SpvOpFOrdLessThan = 184,
|
|
SpvOpFUnordLessThan = 185,
|
|
SpvOpFOrdGreaterThan = 186,
|
|
SpvOpFUnordGreaterThan = 187,
|
|
SpvOpFOrdLessThanEqual = 188,
|
|
SpvOpFUnordLessThanEqual = 189,
|
|
SpvOpFOrdGreaterThanEqual = 190,
|
|
SpvOpFUnordGreaterThanEqual = 191,
|
|
SpvOpShiftRightLogical = 194,
|
|
SpvOpShiftRightArithmetic = 195,
|
|
SpvOpShiftLeftLogical = 196,
|
|
SpvOpBitwiseOr = 197,
|
|
SpvOpBitwiseXor = 198,
|
|
SpvOpBitwiseAnd = 199,
|
|
SpvOpNot = 200,
|
|
SpvOpBitFieldInsert = 201,
|
|
SpvOpBitFieldSExtract = 202,
|
|
SpvOpBitFieldUExtract = 203,
|
|
SpvOpBitReverse = 204,
|
|
SpvOpBitCount = 205,
|
|
SpvOpDPdx = 207,
|
|
SpvOpDPdy = 208,
|
|
SpvOpFwidth = 209,
|
|
SpvOpDPdxFine = 210,
|
|
SpvOpDPdyFine = 211,
|
|
SpvOpFwidthFine = 212,
|
|
SpvOpDPdxCoarse = 213,
|
|
SpvOpDPdyCoarse = 214,
|
|
SpvOpFwidthCoarse = 215,
|
|
SpvOpEmitVertex = 218,
|
|
SpvOpEndPrimitive = 219,
|
|
SpvOpEmitStreamVertex = 220,
|
|
SpvOpEndStreamPrimitive = 221,
|
|
SpvOpControlBarrier = 224,
|
|
SpvOpMemoryBarrier = 225,
|
|
SpvOpAtomicLoad = 227,
|
|
SpvOpAtomicStore = 228,
|
|
SpvOpAtomicExchange = 229,
|
|
SpvOpAtomicCompareExchange = 230,
|
|
SpvOpAtomicCompareExchangeWeak = 231,
|
|
SpvOpAtomicIIncrement = 232,
|
|
SpvOpAtomicIDecrement = 233,
|
|
SpvOpAtomicIAdd = 234,
|
|
SpvOpAtomicISub = 235,
|
|
SpvOpAtomicSMin = 236,
|
|
SpvOpAtomicUMin = 237,
|
|
SpvOpAtomicSMax = 238,
|
|
SpvOpAtomicUMax = 239,
|
|
SpvOpAtomicAnd = 240,
|
|
SpvOpAtomicOr = 241,
|
|
SpvOpAtomicXor = 242,
|
|
SpvOpPhi = 245,
|
|
SpvOpLoopMerge = 246,
|
|
SpvOpSelectionMerge = 247,
|
|
SpvOpLabel = 248,
|
|
SpvOpBranch = 249,
|
|
SpvOpBranchConditional = 250,
|
|
SpvOpSwitch = 251,
|
|
SpvOpKill = 252,
|
|
SpvOpReturn = 253,
|
|
SpvOpReturnValue = 254,
|
|
SpvOpUnreachable = 255,
|
|
SpvOpLifetimeStart = 256,
|
|
SpvOpLifetimeStop = 257,
|
|
SpvOpGroupAsyncCopy = 259,
|
|
SpvOpGroupWaitEvents = 260,
|
|
SpvOpGroupAll = 261,
|
|
SpvOpGroupAny = 262,
|
|
SpvOpGroupBroadcast = 263,
|
|
SpvOpGroupIAdd = 264,
|
|
SpvOpGroupFAdd = 265,
|
|
SpvOpGroupFMin = 266,
|
|
SpvOpGroupUMin = 267,
|
|
SpvOpGroupSMin = 268,
|
|
SpvOpGroupFMax = 269,
|
|
SpvOpGroupUMax = 270,
|
|
SpvOpGroupSMax = 271,
|
|
SpvOpReadPipe = 274,
|
|
SpvOpWritePipe = 275,
|
|
SpvOpReservedReadPipe = 276,
|
|
SpvOpReservedWritePipe = 277,
|
|
SpvOpReserveReadPipePackets = 278,
|
|
SpvOpReserveWritePipePackets = 279,
|
|
SpvOpCommitReadPipe = 280,
|
|
SpvOpCommitWritePipe = 281,
|
|
SpvOpIsValidReserveId = 282,
|
|
SpvOpGetNumPipePackets = 283,
|
|
SpvOpGetMaxPipePackets = 284,
|
|
SpvOpGroupReserveReadPipePackets = 285,
|
|
SpvOpGroupReserveWritePipePackets = 286,
|
|
SpvOpGroupCommitReadPipe = 287,
|
|
SpvOpGroupCommitWritePipe = 288,
|
|
SpvOpEnqueueMarker = 291,
|
|
SpvOpEnqueueKernel = 292,
|
|
SpvOpGetKernelNDrangeSubGroupCount = 293,
|
|
SpvOpGetKernelNDrangeMaxSubGroupSize = 294,
|
|
SpvOpGetKernelWorkGroupSize = 295,
|
|
SpvOpGetKernelPreferredWorkGroupSizeMultiple = 296,
|
|
SpvOpRetainEvent = 297,
|
|
SpvOpReleaseEvent = 298,
|
|
SpvOpCreateUserEvent = 299,
|
|
SpvOpIsValidEvent = 300,
|
|
SpvOpSetUserEventStatus = 301,
|
|
SpvOpCaptureEventProfilingInfo = 302,
|
|
SpvOpGetDefaultQueue = 303,
|
|
SpvOpBuildNDRange = 304,
|
|
SpvOpImageSparseSampleImplicitLod = 305,
|
|
SpvOpImageSparseSampleExplicitLod = 306,
|
|
SpvOpImageSparseSampleDrefImplicitLod = 307,
|
|
SpvOpImageSparseSampleDrefExplicitLod = 308,
|
|
SpvOpImageSparseSampleProjImplicitLod = 309,
|
|
SpvOpImageSparseSampleProjExplicitLod = 310,
|
|
SpvOpImageSparseSampleProjDrefImplicitLod = 311,
|
|
SpvOpImageSparseSampleProjDrefExplicitLod = 312,
|
|
SpvOpImageSparseFetch = 313,
|
|
SpvOpImageSparseGather = 314,
|
|
SpvOpImageSparseDrefGather = 315,
|
|
SpvOpImageSparseTexelsResident = 316,
|
|
SpvOpNoLine = 317,
|
|
SpvOpAtomicFlagTestAndSet = 318,
|
|
SpvOpAtomicFlagClear = 319,
|
|
SpvOpImageSparseRead = 320,
|
|
SpvOpSizeOf = 321,
|
|
SpvOpTypePipeStorage = 322,
|
|
SpvOpConstantPipeStorage = 323,
|
|
SpvOpCreatePipeFromPipeStorage = 324,
|
|
SpvOpGetKernelLocalSizeForSubgroupCount = 325,
|
|
SpvOpGetKernelMaxNumSubgroups = 326,
|
|
SpvOpTypeNamedBarrier = 327,
|
|
SpvOpNamedBarrierInitialize = 328,
|
|
SpvOpMemoryNamedBarrier = 329,
|
|
SpvOpModuleProcessed = 330,
|
|
SpvOpExecutionModeId = 331,
|
|
SpvOpDecorateId = 332,
|
|
SpvOpGroupNonUniformElect = 333,
|
|
SpvOpGroupNonUniformAll = 334,
|
|
SpvOpGroupNonUniformAny = 335,
|
|
SpvOpGroupNonUniformAllEqual = 336,
|
|
SpvOpGroupNonUniformBroadcast = 337,
|
|
SpvOpGroupNonUniformBroadcastFirst = 338,
|
|
SpvOpGroupNonUniformBallot = 339,
|
|
SpvOpGroupNonUniformInverseBallot = 340,
|
|
SpvOpGroupNonUniformBallotBitExtract = 341,
|
|
SpvOpGroupNonUniformBallotBitCount = 342,
|
|
SpvOpGroupNonUniformBallotFindLSB = 343,
|
|
SpvOpGroupNonUniformBallotFindMSB = 344,
|
|
SpvOpGroupNonUniformShuffle = 345,
|
|
SpvOpGroupNonUniformShuffleXor = 346,
|
|
SpvOpGroupNonUniformShuffleUp = 347,
|
|
SpvOpGroupNonUniformShuffleDown = 348,
|
|
SpvOpGroupNonUniformIAdd = 349,
|
|
SpvOpGroupNonUniformFAdd = 350,
|
|
SpvOpGroupNonUniformIMul = 351,
|
|
SpvOpGroupNonUniformFMul = 352,
|
|
SpvOpGroupNonUniformSMin = 353,
|
|
SpvOpGroupNonUniformUMin = 354,
|
|
SpvOpGroupNonUniformFMin = 355,
|
|
SpvOpGroupNonUniformSMax = 356,
|
|
SpvOpGroupNonUniformUMax = 357,
|
|
SpvOpGroupNonUniformFMax = 358,
|
|
SpvOpGroupNonUniformBitwiseAnd = 359,
|
|
SpvOpGroupNonUniformBitwiseOr = 360,
|
|
SpvOpGroupNonUniformBitwiseXor = 361,
|
|
SpvOpGroupNonUniformLogicalAnd = 362,
|
|
SpvOpGroupNonUniformLogicalOr = 363,
|
|
SpvOpGroupNonUniformLogicalXor = 364,
|
|
SpvOpGroupNonUniformQuadBroadcast = 365,
|
|
SpvOpGroupNonUniformQuadSwap = 366,
|
|
SpvOpCopyLogical = 400,
|
|
SpvOpPtrEqual = 401,
|
|
SpvOpPtrNotEqual = 402,
|
|
SpvOpPtrDiff = 403,
|
|
SpvOpColorAttachmentReadEXT = 4160,
|
|
SpvOpDepthAttachmentReadEXT = 4161,
|
|
SpvOpStencilAttachmentReadEXT = 4162,
|
|
SpvOpTerminateInvocation = 4416,
|
|
SpvOpSubgroupBallotKHR = 4421,
|
|
SpvOpSubgroupFirstInvocationKHR = 4422,
|
|
SpvOpSubgroupAllKHR = 4428,
|
|
SpvOpSubgroupAnyKHR = 4429,
|
|
SpvOpSubgroupAllEqualKHR = 4430,
|
|
SpvOpGroupNonUniformRotateKHR = 4431,
|
|
SpvOpSubgroupReadInvocationKHR = 4432,
|
|
SpvOpTraceRayKHR = 4445,
|
|
SpvOpExecuteCallableKHR = 4446,
|
|
SpvOpConvertUToAccelerationStructureKHR = 4447,
|
|
SpvOpIgnoreIntersectionKHR = 4448,
|
|
SpvOpTerminateRayKHR = 4449,
|
|
SpvOpSDot = 4450,
|
|
SpvOpSDotKHR = 4450,
|
|
SpvOpUDot = 4451,
|
|
SpvOpUDotKHR = 4451,
|
|
SpvOpSUDot = 4452,
|
|
SpvOpSUDotKHR = 4452,
|
|
SpvOpSDotAccSat = 4453,
|
|
SpvOpSDotAccSatKHR = 4453,
|
|
SpvOpUDotAccSat = 4454,
|
|
SpvOpUDotAccSatKHR = 4454,
|
|
SpvOpSUDotAccSat = 4455,
|
|
SpvOpSUDotAccSatKHR = 4455,
|
|
SpvOpTypeCooperativeMatrixKHR = 4456,
|
|
SpvOpCooperativeMatrixLoadKHR = 4457,
|
|
SpvOpCooperativeMatrixStoreKHR = 4458,
|
|
SpvOpCooperativeMatrixMulAddKHR = 4459,
|
|
SpvOpCooperativeMatrixLengthKHR = 4460,
|
|
SpvOpTypeRayQueryKHR = 4472,
|
|
SpvOpRayQueryInitializeKHR = 4473,
|
|
SpvOpRayQueryTerminateKHR = 4474,
|
|
SpvOpRayQueryGenerateIntersectionKHR = 4475,
|
|
SpvOpRayQueryConfirmIntersectionKHR = 4476,
|
|
SpvOpRayQueryProceedKHR = 4477,
|
|
SpvOpRayQueryGetIntersectionTypeKHR = 4479,
|
|
SpvOpImageSampleWeightedQCOM = 4480,
|
|
SpvOpImageBoxFilterQCOM = 4481,
|
|
SpvOpImageBlockMatchSSDQCOM = 4482,
|
|
SpvOpImageBlockMatchSADQCOM = 4483,
|
|
SpvOpGroupIAddNonUniformAMD = 5000,
|
|
SpvOpGroupFAddNonUniformAMD = 5001,
|
|
SpvOpGroupFMinNonUniformAMD = 5002,
|
|
SpvOpGroupUMinNonUniformAMD = 5003,
|
|
SpvOpGroupSMinNonUniformAMD = 5004,
|
|
SpvOpGroupFMaxNonUniformAMD = 5005,
|
|
SpvOpGroupUMaxNonUniformAMD = 5006,
|
|
SpvOpGroupSMaxNonUniformAMD = 5007,
|
|
SpvOpFragmentMaskFetchAMD = 5011,
|
|
SpvOpFragmentFetchAMD = 5012,
|
|
SpvOpReadClockKHR = 5056,
|
|
SpvOpHitObjectRecordHitMotionNV = 5249,
|
|
SpvOpHitObjectRecordHitWithIndexMotionNV = 5250,
|
|
SpvOpHitObjectRecordMissMotionNV = 5251,
|
|
SpvOpHitObjectGetWorldToObjectNV = 5252,
|
|
SpvOpHitObjectGetObjectToWorldNV = 5253,
|
|
SpvOpHitObjectGetObjectRayDirectionNV = 5254,
|
|
SpvOpHitObjectGetObjectRayOriginNV = 5255,
|
|
SpvOpHitObjectTraceRayMotionNV = 5256,
|
|
SpvOpHitObjectGetShaderRecordBufferHandleNV = 5257,
|
|
SpvOpHitObjectGetShaderBindingTableRecordIndexNV = 5258,
|
|
SpvOpHitObjectRecordEmptyNV = 5259,
|
|
SpvOpHitObjectTraceRayNV = 5260,
|
|
SpvOpHitObjectRecordHitNV = 5261,
|
|
SpvOpHitObjectRecordHitWithIndexNV = 5262,
|
|
SpvOpHitObjectRecordMissNV = 5263,
|
|
SpvOpHitObjectExecuteShaderNV = 5264,
|
|
SpvOpHitObjectGetCurrentTimeNV = 5265,
|
|
SpvOpHitObjectGetAttributesNV = 5266,
|
|
SpvOpHitObjectGetHitKindNV = 5267,
|
|
SpvOpHitObjectGetPrimitiveIndexNV = 5268,
|
|
SpvOpHitObjectGetGeometryIndexNV = 5269,
|
|
SpvOpHitObjectGetInstanceIdNV = 5270,
|
|
SpvOpHitObjectGetInstanceCustomIndexNV = 5271,
|
|
SpvOpHitObjectGetWorldRayDirectionNV = 5272,
|
|
SpvOpHitObjectGetWorldRayOriginNV = 5273,
|
|
SpvOpHitObjectGetRayTMaxNV = 5274,
|
|
SpvOpHitObjectGetRayTMinNV = 5275,
|
|
SpvOpHitObjectIsEmptyNV = 5276,
|
|
SpvOpHitObjectIsHitNV = 5277,
|
|
SpvOpHitObjectIsMissNV = 5278,
|
|
SpvOpReorderThreadWithHitObjectNV = 5279,
|
|
SpvOpReorderThreadWithHintNV = 5280,
|
|
SpvOpTypeHitObjectNV = 5281,
|
|
SpvOpImageSampleFootprintNV = 5283,
|
|
SpvOpEmitMeshTasksEXT = 5294,
|
|
SpvOpSetMeshOutputsEXT = 5295,
|
|
SpvOpGroupNonUniformPartitionNV = 5296,
|
|
SpvOpWritePackedPrimitiveIndices4x8NV = 5299,
|
|
SpvOpReportIntersectionKHR = 5334,
|
|
SpvOpReportIntersectionNV = 5334,
|
|
SpvOpIgnoreIntersectionNV = 5335,
|
|
SpvOpTerminateRayNV = 5336,
|
|
SpvOpTraceNV = 5337,
|
|
SpvOpTraceMotionNV = 5338,
|
|
SpvOpTraceRayMotionNV = 5339,
|
|
SpvOpRayQueryGetIntersectionTriangleVertexPositionsKHR = 5340,
|
|
SpvOpTypeAccelerationStructureKHR = 5341,
|
|
SpvOpTypeAccelerationStructureNV = 5341,
|
|
SpvOpExecuteCallableNV = 5344,
|
|
SpvOpTypeCooperativeMatrixNV = 5358,
|
|
SpvOpCooperativeMatrixLoadNV = 5359,
|
|
SpvOpCooperativeMatrixStoreNV = 5360,
|
|
SpvOpCooperativeMatrixMulAddNV = 5361,
|
|
SpvOpCooperativeMatrixLengthNV = 5362,
|
|
SpvOpBeginInvocationInterlockEXT = 5364,
|
|
SpvOpEndInvocationInterlockEXT = 5365,
|
|
SpvOpDemoteToHelperInvocation = 5380,
|
|
SpvOpDemoteToHelperInvocationEXT = 5380,
|
|
SpvOpIsHelperInvocationEXT = 5381,
|
|
SpvOpConvertUToImageNV = 5391,
|
|
SpvOpConvertUToSamplerNV = 5392,
|
|
SpvOpConvertImageToUNV = 5393,
|
|
SpvOpConvertSamplerToUNV = 5394,
|
|
SpvOpConvertUToSampledImageNV = 5395,
|
|
SpvOpConvertSampledImageToUNV = 5396,
|
|
SpvOpSamplerImageAddressingModeNV = 5397,
|
|
SpvOpSubgroupShuffleINTEL = 5571,
|
|
SpvOpSubgroupShuffleDownINTEL = 5572,
|
|
SpvOpSubgroupShuffleUpINTEL = 5573,
|
|
SpvOpSubgroupShuffleXorINTEL = 5574,
|
|
SpvOpSubgroupBlockReadINTEL = 5575,
|
|
SpvOpSubgroupBlockWriteINTEL = 5576,
|
|
SpvOpSubgroupImageBlockReadINTEL = 5577,
|
|
SpvOpSubgroupImageBlockWriteINTEL = 5578,
|
|
SpvOpSubgroupImageMediaBlockReadINTEL = 5580,
|
|
SpvOpSubgroupImageMediaBlockWriteINTEL = 5581,
|
|
SpvOpUCountLeadingZerosINTEL = 5585,
|
|
SpvOpUCountTrailingZerosINTEL = 5586,
|
|
SpvOpAbsISubINTEL = 5587,
|
|
SpvOpAbsUSubINTEL = 5588,
|
|
SpvOpIAddSatINTEL = 5589,
|
|
SpvOpUAddSatINTEL = 5590,
|
|
SpvOpIAverageINTEL = 5591,
|
|
SpvOpUAverageINTEL = 5592,
|
|
SpvOpIAverageRoundedINTEL = 5593,
|
|
SpvOpUAverageRoundedINTEL = 5594,
|
|
SpvOpISubSatINTEL = 5595,
|
|
SpvOpUSubSatINTEL = 5596,
|
|
SpvOpIMul32x16INTEL = 5597,
|
|
SpvOpUMul32x16INTEL = 5598,
|
|
SpvOpConstantFunctionPointerINTEL = 5600,
|
|
SpvOpFunctionPointerCallINTEL = 5601,
|
|
SpvOpAsmTargetINTEL = 5609,
|
|
SpvOpAsmINTEL = 5610,
|
|
SpvOpAsmCallINTEL = 5611,
|
|
SpvOpAtomicFMinEXT = 5614,
|
|
SpvOpAtomicFMaxEXT = 5615,
|
|
SpvOpAssumeTrueKHR = 5630,
|
|
SpvOpExpectKHR = 5631,
|
|
SpvOpDecorateString = 5632,
|
|
SpvOpDecorateStringGOOGLE = 5632,
|
|
SpvOpMemberDecorateString = 5633,
|
|
SpvOpMemberDecorateStringGOOGLE = 5633,
|
|
SpvOpVmeImageINTEL = 5699,
|
|
SpvOpTypeVmeImageINTEL = 5700,
|
|
SpvOpTypeAvcImePayloadINTEL = 5701,
|
|
SpvOpTypeAvcRefPayloadINTEL = 5702,
|
|
SpvOpTypeAvcSicPayloadINTEL = 5703,
|
|
SpvOpTypeAvcMcePayloadINTEL = 5704,
|
|
SpvOpTypeAvcMceResultINTEL = 5705,
|
|
SpvOpTypeAvcImeResultINTEL = 5706,
|
|
SpvOpTypeAvcImeResultSingleReferenceStreamoutINTEL = 5707,
|
|
SpvOpTypeAvcImeResultDualReferenceStreamoutINTEL = 5708,
|
|
SpvOpTypeAvcImeSingleReferenceStreaminINTEL = 5709,
|
|
SpvOpTypeAvcImeDualReferenceStreaminINTEL = 5710,
|
|
SpvOpTypeAvcRefResultINTEL = 5711,
|
|
SpvOpTypeAvcSicResultINTEL = 5712,
|
|
SpvOpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL = 5713,
|
|
SpvOpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL = 5714,
|
|
SpvOpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL = 5715,
|
|
SpvOpSubgroupAvcMceSetInterShapePenaltyINTEL = 5716,
|
|
SpvOpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL = 5717,
|
|
SpvOpSubgroupAvcMceSetInterDirectionPenaltyINTEL = 5718,
|
|
SpvOpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL = 5719,
|
|
SpvOpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL = 5720,
|
|
SpvOpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL = 5721,
|
|
SpvOpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL = 5722,
|
|
SpvOpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL = 5723,
|
|
SpvOpSubgroupAvcMceSetMotionVectorCostFunctionINTEL = 5724,
|
|
SpvOpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL = 5725,
|
|
SpvOpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL = 5726,
|
|
SpvOpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL = 5727,
|
|
SpvOpSubgroupAvcMceSetAcOnlyHaarINTEL = 5728,
|
|
SpvOpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL = 5729,
|
|
SpvOpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL = 5730,
|
|
SpvOpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL = 5731,
|
|
SpvOpSubgroupAvcMceConvertToImePayloadINTEL = 5732,
|
|
SpvOpSubgroupAvcMceConvertToImeResultINTEL = 5733,
|
|
SpvOpSubgroupAvcMceConvertToRefPayloadINTEL = 5734,
|
|
SpvOpSubgroupAvcMceConvertToRefResultINTEL = 5735,
|
|
SpvOpSubgroupAvcMceConvertToSicPayloadINTEL = 5736,
|
|
SpvOpSubgroupAvcMceConvertToSicResultINTEL = 5737,
|
|
SpvOpSubgroupAvcMceGetMotionVectorsINTEL = 5738,
|
|
SpvOpSubgroupAvcMceGetInterDistortionsINTEL = 5739,
|
|
SpvOpSubgroupAvcMceGetBestInterDistortionsINTEL = 5740,
|
|
SpvOpSubgroupAvcMceGetInterMajorShapeINTEL = 5741,
|
|
SpvOpSubgroupAvcMceGetInterMinorShapeINTEL = 5742,
|
|
SpvOpSubgroupAvcMceGetInterDirectionsINTEL = 5743,
|
|
SpvOpSubgroupAvcMceGetInterMotionVectorCountINTEL = 5744,
|
|
SpvOpSubgroupAvcMceGetInterReferenceIdsINTEL = 5745,
|
|
SpvOpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL = 5746,
|
|
SpvOpSubgroupAvcImeInitializeINTEL = 5747,
|
|
SpvOpSubgroupAvcImeSetSingleReferenceINTEL = 5748,
|
|
SpvOpSubgroupAvcImeSetDualReferenceINTEL = 5749,
|
|
SpvOpSubgroupAvcImeRefWindowSizeINTEL = 5750,
|
|
SpvOpSubgroupAvcImeAdjustRefOffsetINTEL = 5751,
|
|
SpvOpSubgroupAvcImeConvertToMcePayloadINTEL = 5752,
|
|
SpvOpSubgroupAvcImeSetMaxMotionVectorCountINTEL = 5753,
|
|
SpvOpSubgroupAvcImeSetUnidirectionalMixDisableINTEL = 5754,
|
|
SpvOpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL = 5755,
|
|
SpvOpSubgroupAvcImeSetWeightedSadINTEL = 5756,
|
|
SpvOpSubgroupAvcImeEvaluateWithSingleReferenceINTEL = 5757,
|
|
SpvOpSubgroupAvcImeEvaluateWithDualReferenceINTEL = 5758,
|
|
SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL = 5759,
|
|
SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL = 5760,
|
|
SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL = 5761,
|
|
SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL = 5762,
|
|
SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL = 5763,
|
|
SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL = 5764,
|
|
SpvOpSubgroupAvcImeConvertToMceResultINTEL = 5765,
|
|
SpvOpSubgroupAvcImeGetSingleReferenceStreaminINTEL = 5766,
|
|
SpvOpSubgroupAvcImeGetDualReferenceStreaminINTEL = 5767,
|
|
SpvOpSubgroupAvcImeStripSingleReferenceStreamoutINTEL = 5768,
|
|
SpvOpSubgroupAvcImeStripDualReferenceStreamoutINTEL = 5769,
|
|
SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL =
|
|
5770,
|
|
SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL =
|
|
5771,
|
|
SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL =
|
|
5772,
|
|
SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL =
|
|
5773,
|
|
SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL = 5774,
|
|
SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL =
|
|
5775,
|
|
SpvOpSubgroupAvcImeGetBorderReachedINTEL = 5776,
|
|
SpvOpSubgroupAvcImeGetTruncatedSearchIndicationINTEL = 5777,
|
|
SpvOpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL = 5778,
|
|
SpvOpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL = 5779,
|
|
SpvOpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL = 5780,
|
|
SpvOpSubgroupAvcFmeInitializeINTEL = 5781,
|
|
SpvOpSubgroupAvcBmeInitializeINTEL = 5782,
|
|
SpvOpSubgroupAvcRefConvertToMcePayloadINTEL = 5783,
|
|
SpvOpSubgroupAvcRefSetBidirectionalMixDisableINTEL = 5784,
|
|
SpvOpSubgroupAvcRefSetBilinearFilterEnableINTEL = 5785,
|
|
SpvOpSubgroupAvcRefEvaluateWithSingleReferenceINTEL = 5786,
|
|
SpvOpSubgroupAvcRefEvaluateWithDualReferenceINTEL = 5787,
|
|
SpvOpSubgroupAvcRefEvaluateWithMultiReferenceINTEL = 5788,
|
|
SpvOpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL = 5789,
|
|
SpvOpSubgroupAvcRefConvertToMceResultINTEL = 5790,
|
|
SpvOpSubgroupAvcSicInitializeINTEL = 5791,
|
|
SpvOpSubgroupAvcSicConfigureSkcINTEL = 5792,
|
|
SpvOpSubgroupAvcSicConfigureIpeLumaINTEL = 5793,
|
|
SpvOpSubgroupAvcSicConfigureIpeLumaChromaINTEL = 5794,
|
|
SpvOpSubgroupAvcSicGetMotionVectorMaskINTEL = 5795,
|
|
SpvOpSubgroupAvcSicConvertToMcePayloadINTEL = 5796,
|
|
SpvOpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL = 5797,
|
|
SpvOpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL = 5798,
|
|
SpvOpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL = 5799,
|
|
SpvOpSubgroupAvcSicSetBilinearFilterEnableINTEL = 5800,
|
|
SpvOpSubgroupAvcSicSetSkcForwardTransformEnableINTEL = 5801,
|
|
SpvOpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL = 5802,
|
|
SpvOpSubgroupAvcSicEvaluateIpeINTEL = 5803,
|
|
SpvOpSubgroupAvcSicEvaluateWithSingleReferenceINTEL = 5804,
|
|
SpvOpSubgroupAvcSicEvaluateWithDualReferenceINTEL = 5805,
|
|
SpvOpSubgroupAvcSicEvaluateWithMultiReferenceINTEL = 5806,
|
|
SpvOpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL = 5807,
|
|
SpvOpSubgroupAvcSicConvertToMceResultINTEL = 5808,
|
|
SpvOpSubgroupAvcSicGetIpeLumaShapeINTEL = 5809,
|
|
SpvOpSubgroupAvcSicGetBestIpeLumaDistortionINTEL = 5810,
|
|
SpvOpSubgroupAvcSicGetBestIpeChromaDistortionINTEL = 5811,
|
|
SpvOpSubgroupAvcSicGetPackedIpeLumaModesINTEL = 5812,
|
|
SpvOpSubgroupAvcSicGetIpeChromaModeINTEL = 5813,
|
|
SpvOpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL = 5814,
|
|
SpvOpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL = 5815,
|
|
SpvOpSubgroupAvcSicGetInterRawSadsINTEL = 5816,
|
|
SpvOpVariableLengthArrayINTEL = 5818,
|
|
SpvOpSaveMemoryINTEL = 5819,
|
|
SpvOpRestoreMemoryINTEL = 5820,
|
|
SpvOpArbitraryFloatSinCosPiINTEL = 5840,
|
|
SpvOpArbitraryFloatCastINTEL = 5841,
|
|
SpvOpArbitraryFloatCastFromIntINTEL = 5842,
|
|
SpvOpArbitraryFloatCastToIntINTEL = 5843,
|
|
SpvOpArbitraryFloatAddINTEL = 5846,
|
|
SpvOpArbitraryFloatSubINTEL = 5847,
|
|
SpvOpArbitraryFloatMulINTEL = 5848,
|
|
SpvOpArbitraryFloatDivINTEL = 5849,
|
|
SpvOpArbitraryFloatGTINTEL = 5850,
|
|
SpvOpArbitraryFloatGEINTEL = 5851,
|
|
SpvOpArbitraryFloatLTINTEL = 5852,
|
|
SpvOpArbitraryFloatLEINTEL = 5853,
|
|
SpvOpArbitraryFloatEQINTEL = 5854,
|
|
SpvOpArbitraryFloatRecipINTEL = 5855,
|
|
SpvOpArbitraryFloatRSqrtINTEL = 5856,
|
|
SpvOpArbitraryFloatCbrtINTEL = 5857,
|
|
SpvOpArbitraryFloatHypotINTEL = 5858,
|
|
SpvOpArbitraryFloatSqrtINTEL = 5859,
|
|
SpvOpArbitraryFloatLogINTEL = 5860,
|
|
SpvOpArbitraryFloatLog2INTEL = 5861,
|
|
SpvOpArbitraryFloatLog10INTEL = 5862,
|
|
SpvOpArbitraryFloatLog1pINTEL = 5863,
|
|
SpvOpArbitraryFloatExpINTEL = 5864,
|
|
SpvOpArbitraryFloatExp2INTEL = 5865,
|
|
SpvOpArbitraryFloatExp10INTEL = 5866,
|
|
SpvOpArbitraryFloatExpm1INTEL = 5867,
|
|
SpvOpArbitraryFloatSinINTEL = 5868,
|
|
SpvOpArbitraryFloatCosINTEL = 5869,
|
|
SpvOpArbitraryFloatSinCosINTEL = 5870,
|
|
SpvOpArbitraryFloatSinPiINTEL = 5871,
|
|
SpvOpArbitraryFloatCosPiINTEL = 5872,
|
|
SpvOpArbitraryFloatASinINTEL = 5873,
|
|
SpvOpArbitraryFloatASinPiINTEL = 5874,
|
|
SpvOpArbitraryFloatACosINTEL = 5875,
|
|
SpvOpArbitraryFloatACosPiINTEL = 5876,
|
|
SpvOpArbitraryFloatATanINTEL = 5877,
|
|
SpvOpArbitraryFloatATanPiINTEL = 5878,
|
|
SpvOpArbitraryFloatATan2INTEL = 5879,
|
|
SpvOpArbitraryFloatPowINTEL = 5880,
|
|
SpvOpArbitraryFloatPowRINTEL = 5881,
|
|
SpvOpArbitraryFloatPowNINTEL = 5882,
|
|
SpvOpLoopControlINTEL = 5887,
|
|
SpvOpAliasDomainDeclINTEL = 5911,
|
|
SpvOpAliasScopeDeclINTEL = 5912,
|
|
SpvOpAliasScopeListDeclINTEL = 5913,
|
|
SpvOpFixedSqrtINTEL = 5923,
|
|
SpvOpFixedRecipINTEL = 5924,
|
|
SpvOpFixedRsqrtINTEL = 5925,
|
|
SpvOpFixedSinINTEL = 5926,
|
|
SpvOpFixedCosINTEL = 5927,
|
|
SpvOpFixedSinCosINTEL = 5928,
|
|
SpvOpFixedSinPiINTEL = 5929,
|
|
SpvOpFixedCosPiINTEL = 5930,
|
|
SpvOpFixedSinCosPiINTEL = 5931,
|
|
SpvOpFixedLogINTEL = 5932,
|
|
SpvOpFixedExpINTEL = 5933,
|
|
SpvOpPtrCastToCrossWorkgroupINTEL = 5934,
|
|
SpvOpCrossWorkgroupCastToPtrINTEL = 5938,
|
|
SpvOpReadPipeBlockingINTEL = 5946,
|
|
SpvOpWritePipeBlockingINTEL = 5947,
|
|
SpvOpFPGARegINTEL = 5949,
|
|
SpvOpRayQueryGetRayTMinKHR = 6016,
|
|
SpvOpRayQueryGetRayFlagsKHR = 6017,
|
|
SpvOpRayQueryGetIntersectionTKHR = 6018,
|
|
SpvOpRayQueryGetIntersectionInstanceCustomIndexKHR = 6019,
|
|
SpvOpRayQueryGetIntersectionInstanceIdKHR = 6020,
|
|
SpvOpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR = 6021,
|
|
SpvOpRayQueryGetIntersectionGeometryIndexKHR = 6022,
|
|
SpvOpRayQueryGetIntersectionPrimitiveIndexKHR = 6023,
|
|
SpvOpRayQueryGetIntersectionBarycentricsKHR = 6024,
|
|
SpvOpRayQueryGetIntersectionFrontFaceKHR = 6025,
|
|
SpvOpRayQueryGetIntersectionCandidateAABBOpaqueKHR = 6026,
|
|
SpvOpRayQueryGetIntersectionObjectRayDirectionKHR = 6027,
|
|
SpvOpRayQueryGetIntersectionObjectRayOriginKHR = 6028,
|
|
SpvOpRayQueryGetWorldRayDirectionKHR = 6029,
|
|
SpvOpRayQueryGetWorldRayOriginKHR = 6030,
|
|
SpvOpRayQueryGetIntersectionObjectToWorldKHR = 6031,
|
|
SpvOpRayQueryGetIntersectionWorldToObjectKHR = 6032,
|
|
SpvOpAtomicFAddEXT = 6035,
|
|
SpvOpTypeBufferSurfaceINTEL = 6086,
|
|
SpvOpTypeStructContinuedINTEL = 6090,
|
|
SpvOpConstantCompositeContinuedINTEL = 6091,
|
|
SpvOpSpecConstantCompositeContinuedINTEL = 6092,
|
|
SpvOpConvertFToBF16INTEL = 6116,
|
|
SpvOpConvertBF16ToFINTEL = 6117,
|
|
SpvOpControlBarrierArriveINTEL = 6142,
|
|
SpvOpControlBarrierWaitINTEL = 6143,
|
|
SpvOpGroupIMulKHR = 6401,
|
|
SpvOpGroupFMulKHR = 6402,
|
|
SpvOpGroupBitwiseAndKHR = 6403,
|
|
SpvOpGroupBitwiseOrKHR = 6404,
|
|
SpvOpGroupBitwiseXorKHR = 6405,
|
|
SpvOpGroupLogicalAndKHR = 6406,
|
|
SpvOpGroupLogicalOrKHR = 6407,
|
|
SpvOpGroupLogicalXorKHR = 6408,
|
|
SpvOpMax = 0x7fffffff,
|
|
} SpvOp;
|
|
|
|
#ifdef SPV_ENABLE_UTILITY_CODE
|
|
#ifndef __cplusplus
|
|
#include <stdbool.h>
|
|
#endif
|
|
inline void SpvHasResultAndType(SpvOp opcode, bool* hasResult,
|
|
bool* hasResultType) {
|
|
*hasResult = *hasResultType = false;
|
|
switch (opcode) {
|
|
default: /* unknown opcode */
|
|
break;
|
|
case SpvOpNop:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpUndef:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSourceContinued:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpSource:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpSourceExtension:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpName:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpMemberName:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpString:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpLine:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpExtension:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpExtInstImport:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpExtInst:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpMemoryModel:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpEntryPoint:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpExecutionMode:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpCapability:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeVoid:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeBool:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeInt:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeFloat:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeVector:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeMatrix:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeImage:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeSampler:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeSampledImage:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeArray:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeRuntimeArray:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeStruct:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeOpaque:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypePointer:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeFunction:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeEvent:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeDeviceEvent:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeReserveId:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeQueue:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypePipe:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeForwardPointer:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpConstantTrue:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpConstantFalse:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpConstant:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpConstantComposite:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpConstantSampler:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpConstantNull:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSpecConstantTrue:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSpecConstantFalse:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSpecConstant:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSpecConstantComposite:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSpecConstantOp:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFunction:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFunctionParameter:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFunctionEnd:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpFunctionCall:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpVariable:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageTexelPointer:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpLoad:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpStore:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpCopyMemory:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpCopyMemorySized:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpAccessChain:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpInBoundsAccessChain:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpPtrAccessChain:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArrayLength:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGenericPtrMemSemantics:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpInBoundsPtrAccessChain:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpDecorate:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpMemberDecorate:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpDecorationGroup:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpGroupDecorate:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpGroupMemberDecorate:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpVectorExtractDynamic:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpVectorInsertDynamic:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpVectorShuffle:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpCompositeConstruct:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpCompositeExtract:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpCompositeInsert:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpCopyObject:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpTranspose:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSampledImage:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageSampleImplicitLod:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageSampleExplicitLod:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageSampleDrefImplicitLod:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageSampleDrefExplicitLod:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageSampleProjImplicitLod:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageSampleProjExplicitLod:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageSampleProjDrefImplicitLod:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageSampleProjDrefExplicitLod:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageFetch:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageGather:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageDrefGather:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageRead:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageWrite:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpImage:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageQueryFormat:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageQueryOrder:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageQuerySizeLod:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageQuerySize:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageQueryLod:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageQueryLevels:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageQuerySamples:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpConvertFToU:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpConvertFToS:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpConvertSToF:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpConvertUToF:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpUConvert:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSConvert:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFConvert:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpQuantizeToF16:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpConvertPtrToU:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSatConvertSToU:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSatConvertUToS:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpConvertUToPtr:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpPtrCastToGeneric:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGenericCastToPtr:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGenericCastToPtrExplicit:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpBitcast:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSNegate:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFNegate:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpIAdd:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFAdd:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpISub:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFSub:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpIMul:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFMul:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpUDiv:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSDiv:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFDiv:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpUMod:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSRem:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSMod:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFRem:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFMod:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpVectorTimesScalar:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpMatrixTimesScalar:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpVectorTimesMatrix:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpMatrixTimesVector:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpMatrixTimesMatrix:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpOuterProduct:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpDot:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpIAddCarry:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpISubBorrow:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpUMulExtended:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSMulExtended:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAny:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAll:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpIsNan:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpIsInf:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpIsFinite:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpIsNormal:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSignBitSet:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpLessOrGreater:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpOrdered:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpUnordered:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpLogicalEqual:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpLogicalNotEqual:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpLogicalOr:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpLogicalAnd:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpLogicalNot:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSelect:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpIEqual:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpINotEqual:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpUGreaterThan:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSGreaterThan:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpUGreaterThanEqual:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSGreaterThanEqual:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpULessThan:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSLessThan:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpULessThanEqual:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSLessThanEqual:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFOrdEqual:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFUnordEqual:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFOrdNotEqual:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFUnordNotEqual:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFOrdLessThan:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFUnordLessThan:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFOrdGreaterThan:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFUnordGreaterThan:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFOrdLessThanEqual:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFUnordLessThanEqual:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFOrdGreaterThanEqual:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFUnordGreaterThanEqual:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpShiftRightLogical:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpShiftRightArithmetic:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpShiftLeftLogical:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpBitwiseOr:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpBitwiseXor:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpBitwiseAnd:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpNot:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpBitFieldInsert:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpBitFieldSExtract:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpBitFieldUExtract:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpBitReverse:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpBitCount:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpDPdx:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpDPdy:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFwidth:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpDPdxFine:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpDPdyFine:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFwidthFine:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpDPdxCoarse:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpDPdyCoarse:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFwidthCoarse:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpEmitVertex:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpEndPrimitive:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpEmitStreamVertex:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpEndStreamPrimitive:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpControlBarrier:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpMemoryBarrier:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpAtomicLoad:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAtomicStore:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpAtomicExchange:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAtomicCompareExchange:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAtomicCompareExchangeWeak:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAtomicIIncrement:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAtomicIDecrement:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAtomicIAdd:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAtomicISub:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAtomicSMin:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAtomicUMin:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAtomicSMax:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAtomicUMax:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAtomicAnd:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAtomicOr:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAtomicXor:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpPhi:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpLoopMerge:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpSelectionMerge:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpLabel:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpBranch:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpBranchConditional:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpSwitch:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpKill:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpReturn:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpReturnValue:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpUnreachable:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpLifetimeStart:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpLifetimeStop:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpGroupAsyncCopy:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupWaitEvents:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpGroupAll:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupAny:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupBroadcast:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupIAdd:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupFAdd:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupFMin:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupUMin:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupSMin:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupFMax:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupUMax:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupSMax:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpReadPipe:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpWritePipe:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpReservedReadPipe:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpReservedWritePipe:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpReserveReadPipePackets:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpReserveWritePipePackets:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpCommitReadPipe:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpCommitWritePipe:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpIsValidReserveId:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGetNumPipePackets:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGetMaxPipePackets:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupReserveReadPipePackets:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupReserveWritePipePackets:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupCommitReadPipe:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpGroupCommitWritePipe:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpEnqueueMarker:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpEnqueueKernel:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGetKernelNDrangeSubGroupCount:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGetKernelNDrangeMaxSubGroupSize:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGetKernelWorkGroupSize:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGetKernelPreferredWorkGroupSizeMultiple:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpRetainEvent:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpReleaseEvent:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpCreateUserEvent:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpIsValidEvent:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSetUserEventStatus:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpCaptureEventProfilingInfo:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpGetDefaultQueue:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpBuildNDRange:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageSparseSampleImplicitLod:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageSparseSampleExplicitLod:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageSparseSampleDrefImplicitLod:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageSparseSampleDrefExplicitLod:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageSparseSampleProjImplicitLod:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageSparseSampleProjExplicitLod:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageSparseSampleProjDrefImplicitLod:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageSparseSampleProjDrefExplicitLod:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageSparseFetch:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageSparseGather:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageSparseDrefGather:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageSparseTexelsResident:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpNoLine:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpAtomicFlagTestAndSet:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAtomicFlagClear:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpImageSparseRead:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSizeOf:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpTypePipeStorage:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpConstantPipeStorage:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpCreatePipeFromPipeStorage:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGetKernelLocalSizeForSubgroupCount:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGetKernelMaxNumSubgroups:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpTypeNamedBarrier:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpNamedBarrierInitialize:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpMemoryNamedBarrier:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpModuleProcessed:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpExecutionModeId:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpDecorateId:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpGroupNonUniformElect:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformAll:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformAny:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformAllEqual:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformBroadcast:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformBroadcastFirst:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformBallot:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformInverseBallot:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformBallotBitExtract:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformBallotBitCount:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformBallotFindLSB:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformBallotFindMSB:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformShuffle:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformShuffleXor:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformShuffleUp:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformShuffleDown:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformIAdd:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformFAdd:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformIMul:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformFMul:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformSMin:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformUMin:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformFMin:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformSMax:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformUMax:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformFMax:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformBitwiseAnd:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformBitwiseOr:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformBitwiseXor:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformLogicalAnd:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformLogicalOr:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformLogicalXor:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformQuadBroadcast:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformQuadSwap:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpCopyLogical:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpPtrEqual:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpPtrNotEqual:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpPtrDiff:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpColorAttachmentReadEXT:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpDepthAttachmentReadEXT:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpStencilAttachmentReadEXT:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpTerminateInvocation:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpSubgroupBallotKHR:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupFirstInvocationKHR:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAllKHR:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAnyKHR:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAllEqualKHR:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupNonUniformRotateKHR:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupReadInvocationKHR:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpTraceRayKHR:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpExecuteCallableKHR:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpConvertUToAccelerationStructureKHR:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpIgnoreIntersectionKHR:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTerminateRayKHR:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpSDot:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpUDot:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSUDot:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSDotAccSat:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpUDotAccSat:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSUDotAccSat:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpTypeCooperativeMatrixKHR:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpCooperativeMatrixLoadKHR:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpCooperativeMatrixStoreKHR:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpCooperativeMatrixMulAddKHR:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpCooperativeMatrixLengthKHR:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpTypeRayQueryKHR:
|
|
*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 SpvOpImageSampleWeightedQCOM:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageBoxFilterQCOM:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageBlockMatchSSDQCOM:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpImageBlockMatchSADQCOM:
|
|
*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;
|
|
case SpvOpGroupUMinNonUniformAMD:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupSMinNonUniformAMD:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupFMaxNonUniformAMD:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupUMaxNonUniformAMD:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupSMaxNonUniformAMD:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFragmentMaskFetchAMD:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFragmentFetchAMD:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpReadClockKHR:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpHitObjectRecordHitMotionNV:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpHitObjectRecordHitWithIndexMotionNV:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpHitObjectRecordMissMotionNV:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpHitObjectGetWorldToObjectNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpHitObjectGetObjectToWorldNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpHitObjectGetObjectRayDirectionNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpHitObjectGetObjectRayOriginNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpHitObjectTraceRayMotionNV:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpHitObjectGetShaderRecordBufferHandleNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpHitObjectGetShaderBindingTableRecordIndexNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpHitObjectRecordEmptyNV:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpHitObjectTraceRayNV:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpHitObjectRecordHitNV:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpHitObjectRecordHitWithIndexNV:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpHitObjectRecordMissNV:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpHitObjectExecuteShaderNV:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpHitObjectGetCurrentTimeNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpHitObjectGetAttributesNV:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpHitObjectGetHitKindNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpHitObjectGetPrimitiveIndexNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpHitObjectGetGeometryIndexNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpHitObjectGetInstanceIdNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpHitObjectGetInstanceCustomIndexNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpHitObjectGetWorldRayDirectionNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpHitObjectGetWorldRayOriginNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpHitObjectGetRayTMaxNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpHitObjectGetRayTMinNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpHitObjectIsEmptyNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpHitObjectIsHitNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpHitObjectIsMissNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpReorderThreadWithHitObjectNV:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpReorderThreadWithHintNV:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeHitObjectNV:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpImageSampleFootprintNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpEmitMeshTasksEXT:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpSetMeshOutputsEXT:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpGroupNonUniformPartitionNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpWritePackedPrimitiveIndices4x8NV:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpReportIntersectionNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpIgnoreIntersectionNV:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTerminateRayNV:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTraceNV:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTraceMotionNV:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTraceRayMotionNV:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpRayQueryGetIntersectionTriangleVertexPositionsKHR:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpTypeAccelerationStructureNV:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpExecuteCallableNV:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeCooperativeMatrixNV:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpCooperativeMatrixLoadNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpCooperativeMatrixStoreNV:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpCooperativeMatrixMulAddNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpCooperativeMatrixLengthNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpBeginInvocationInterlockEXT:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpEndInvocationInterlockEXT:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpDemoteToHelperInvocation:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpIsHelperInvocationEXT:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpConvertUToImageNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpConvertUToSamplerNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpConvertImageToUNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpConvertSamplerToUNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpConvertUToSampledImageNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpConvertSampledImageToUNV:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSamplerImageAddressingModeNV:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpSubgroupShuffleINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupShuffleDownINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupShuffleUpINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupShuffleXorINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupBlockReadINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupBlockWriteINTEL:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpSubgroupImageBlockReadINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupImageBlockWriteINTEL:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpSubgroupImageMediaBlockReadINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupImageMediaBlockWriteINTEL:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpUCountLeadingZerosINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpUCountTrailingZerosINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAbsISubINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAbsUSubINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpIAddSatINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpUAddSatINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpIAverageINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpUAverageINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpIAverageRoundedINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpUAverageRoundedINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpISubSatINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpUSubSatINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpIMul32x16INTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpUMul32x16INTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpConstantFunctionPointerINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFunctionPointerCallINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAsmTargetINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAsmINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAsmCallINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAtomicFMinEXT:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAtomicFMaxEXT:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpAssumeTrueKHR:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpExpectKHR:
|
|
*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;
|
|
case SpvOpTypeVmeImageINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeAvcImePayloadINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeAvcRefPayloadINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeAvcSicPayloadINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeAvcMcePayloadINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeAvcMceResultINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeAvcImeResultINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeAvcImeResultSingleReferenceStreamoutINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeAvcImeResultDualReferenceStreamoutINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeAvcImeSingleReferenceStreaminINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeAvcImeDualReferenceStreaminINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeAvcRefResultINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeAvcSicResultINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceSetInterShapePenaltyINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceSetInterDirectionPenaltyINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceSetMotionVectorCostFunctionINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceSetAcOnlyHaarINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceConvertToImePayloadINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceConvertToImeResultINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceConvertToRefPayloadINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceConvertToRefResultINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceConvertToSicPayloadINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceConvertToSicResultINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceGetMotionVectorsINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceGetInterDistortionsINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceGetBestInterDistortionsINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceGetInterMajorShapeINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceGetInterMinorShapeINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceGetInterDirectionsINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceGetInterMotionVectorCountINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceGetInterReferenceIdsINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeInitializeINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeSetSingleReferenceINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeSetDualReferenceINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeRefWindowSizeINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeAdjustRefOffsetINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeConvertToMcePayloadINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeSetMaxMotionVectorCountINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeSetUnidirectionalMixDisableINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeSetWeightedSadINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeEvaluateWithSingleReferenceINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeEvaluateWithDualReferenceINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeConvertToMceResultINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeGetSingleReferenceStreaminINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeGetDualReferenceStreaminINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeStripSingleReferenceStreamoutINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeStripDualReferenceStreamoutINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeGetBorderReachedINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeGetTruncatedSearchIndicationINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcFmeInitializeINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcBmeInitializeINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcRefConvertToMcePayloadINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcRefSetBidirectionalMixDisableINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcRefSetBilinearFilterEnableINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcRefEvaluateWithSingleReferenceINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcRefEvaluateWithDualReferenceINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcRefEvaluateWithMultiReferenceINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcRefConvertToMceResultINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicInitializeINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicConfigureSkcINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicConfigureIpeLumaINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicConfigureIpeLumaChromaINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicGetMotionVectorMaskINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicConvertToMcePayloadINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicSetBilinearFilterEnableINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicSetSkcForwardTransformEnableINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicEvaluateIpeINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicEvaluateWithSingleReferenceINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicEvaluateWithDualReferenceINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicEvaluateWithMultiReferenceINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicConvertToMceResultINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicGetIpeLumaShapeINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicGetBestIpeLumaDistortionINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicGetBestIpeChromaDistortionINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicGetPackedIpeLumaModesINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicGetIpeChromaModeINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSubgroupAvcSicGetInterRawSadsINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpVariableLengthArrayINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpSaveMemoryINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpRestoreMemoryINTEL:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpArbitraryFloatSinCosPiINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatCastINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatCastFromIntINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatCastToIntINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatAddINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatSubINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatMulINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatDivINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatGTINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatGEINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatLTINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatLEINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatEQINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatRecipINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatRSqrtINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatCbrtINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatHypotINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatSqrtINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatLogINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatLog2INTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatLog10INTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatLog1pINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatExpINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatExp2INTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatExp10INTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatExpm1INTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatSinINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatCosINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatSinCosINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatSinPiINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatCosPiINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatASinINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatASinPiINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatACosINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatACosPiINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatATanINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatATanPiINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatATan2INTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatPowINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatPowRINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpArbitraryFloatPowNINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpLoopControlINTEL:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpAliasDomainDeclINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpAliasScopeDeclINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpAliasScopeListDeclINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpFixedSqrtINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFixedRecipINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFixedRsqrtINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFixedSinINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFixedCosINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFixedSinCosINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFixedSinPiINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFixedCosPiINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFixedSinCosPiINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFixedLogINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpFixedExpINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpPtrCastToCrossWorkgroupINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpCrossWorkgroupCastToPtrINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
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;
|
|
case SpvOpTypeBufferSurfaceINTEL:
|
|
*hasResult = true;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpTypeStructContinuedINTEL:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpConstantCompositeContinuedINTEL:
|
|
*hasResult = false;
|
|
*hasResultType = false;
|
|
break;
|
|
case SpvOpSpecConstantCompositeContinuedINTEL:
|
|
*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 SpvOpGroupIMulKHR:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupFMulKHR:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupBitwiseAndKHR:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupBitwiseOrKHR:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupBitwiseXorKHR:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupLogicalAndKHR:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupLogicalOrKHR:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
case SpvOpGroupLogicalXorKHR:
|
|
*hasResult = true;
|
|
*hasResultType = true;
|
|
break;
|
|
}
|
|
}
|
|
#endif /* SPV_ENABLE_UTILITY_CODE */
|
|
|
|
#endif
|