/*
|
** Copyright (c) 2014-2018 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#
|
**
|
** - 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
|
**
|
** 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 0x10300
|
#define SPV_REVISION 6
|
|
static const unsigned int SpvMagicNumber = 0x07230203;
|
static const unsigned int SpvVersion = 0x00010300;
|
static const unsigned int SpvRevision = 6;
|
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,
|
SpvSourceLanguageMax = 0x7fffffff,
|
} SpvSourceLanguage;
|
|
typedef enum SpvExecutionModel_ {
|
SpvExecutionModelVertex = 0,
|
SpvExecutionModelTessellationControl = 1,
|
SpvExecutionModelTessellationEvaluation = 2,
|
SpvExecutionModelGeometry = 3,
|
SpvExecutionModelFragment = 4,
|
SpvExecutionModelGLCompute = 5,
|
SpvExecutionModelKernel = 6,
|
SpvExecutionModelTaskNV = 5267,
|
SpvExecutionModelMeshNV = 5268,
|
SpvExecutionModelRayGenerationNV = 5313,
|
SpvExecutionModelIntersectionNV = 5314,
|
SpvExecutionModelAnyHitNV = 5315,
|
SpvExecutionModelClosestHitNV = 5316,
|
SpvExecutionModelMissNV = 5317,
|
SpvExecutionModelCallableNV = 5318,
|
SpvExecutionModelMax = 0x7fffffff,
|
} SpvExecutionModel;
|
|
typedef enum SpvAddressingModel_ {
|
SpvAddressingModelLogical = 0,
|
SpvAddressingModelPhysical32 = 1,
|
SpvAddressingModelPhysical64 = 2,
|
SpvAddressingModelMax = 0x7fffffff,
|
} SpvAddressingModel;
|
|
typedef enum SpvMemoryModel_ {
|
SpvMemoryModelSimple = 0,
|
SpvMemoryModelGLSL450 = 1,
|
SpvMemoryModelOpenCL = 2,
|
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,
|
SpvExecutionModePostDepthCoverage = 4446,
|
SpvExecutionModeDenormPreserve = 4459,
|
SpvExecutionModeDenormFlushToZero = 4460,
|
SpvExecutionModeSignedZeroInfNanPreserve = 4461,
|
SpvExecutionModeRoundingModeRTE = 4462,
|
SpvExecutionModeRoundingModeRTZ = 4463,
|
SpvExecutionModeStencilRefReplacingEXT = 5027,
|
SpvExecutionModeOutputLinesNV = 5269,
|
SpvExecutionModeOutputPrimitivesNV = 5270,
|
SpvExecutionModeDerivativeGroupQuadsNV = 5289,
|
SpvExecutionModeDerivativeGroupLinearNV = 5290,
|
SpvExecutionModeOutputTrianglesNV = 5298,
|
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,
|
SpvStorageClassCallableDataNV = 5328,
|
SpvStorageClassIncomingCallableDataNV = 5329,
|
SpvStorageClassRayPayloadNV = 5338,
|
SpvStorageClassHitAttributeNV = 5339,
|
SpvStorageClassIncomingRayPayloadNV = 5342,
|
SpvStorageClassShaderRecordBufferNV = 5343,
|
SpvStorageClassMax = 0x7fffffff,
|
} SpvStorageClass;
|
|
typedef enum SpvDim_ {
|
SpvDim1D = 0,
|
SpvDim2D = 1,
|
SpvDim3D = 2,
|
SpvDimCube = 3,
|
SpvDimRect = 4,
|
SpvDimBuffer = 5,
|
SpvDimSubpassData = 6,
|
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,
|
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,
|
SpvImageChannelDataTypeMax = 0x7fffffff,
|
} SpvImageChannelDataType;
|
|
typedef enum SpvImageOperandsShift_ {
|
SpvImageOperandsBiasShift = 0,
|
SpvImageOperandsLodShift = 1,
|
SpvImageOperandsGradShift = 2,
|
SpvImageOperandsConstOffsetShift = 3,
|
SpvImageOperandsOffsetShift = 4,
|
SpvImageOperandsConstOffsetsShift = 5,
|
SpvImageOperandsSampleShift = 6,
|
SpvImageOperandsMinLodShift = 7,
|
SpvImageOperandsMakeTexelAvailableKHRShift = 8,
|
SpvImageOperandsMakeTexelVisibleKHRShift = 9,
|
SpvImageOperandsNonPrivateTexelKHRShift = 10,
|
SpvImageOperandsVolatileTexelKHRShift = 11,
|
SpvImageOperandsMax = 0x7fffffff,
|
} SpvImageOperandsShift;
|
|
typedef enum SpvImageOperandsMask_ {
|
SpvImageOperandsMaskNone = 0,
|
SpvImageOperandsBiasMask = 0x00000001,
|
SpvImageOperandsLodMask = 0x00000002,
|
SpvImageOperandsGradMask = 0x00000004,
|
SpvImageOperandsConstOffsetMask = 0x00000008,
|
SpvImageOperandsOffsetMask = 0x00000010,
|
SpvImageOperandsConstOffsetsMask = 0x00000020,
|
SpvImageOperandsSampleMask = 0x00000040,
|
SpvImageOperandsMinLodMask = 0x00000080,
|
SpvImageOperandsMakeTexelAvailableKHRMask = 0x00000100,
|
SpvImageOperandsMakeTexelVisibleKHRMask = 0x00000200,
|
SpvImageOperandsNonPrivateTexelKHRMask = 0x00000400,
|
SpvImageOperandsVolatileTexelKHRMask = 0x00000800,
|
} SpvImageOperandsMask;
|
|
typedef enum SpvFPFastMathModeShift_ {
|
SpvFPFastMathModeNotNaNShift = 0,
|
SpvFPFastMathModeNotInfShift = 1,
|
SpvFPFastMathModeNSZShift = 2,
|
SpvFPFastMathModeAllowRecipShift = 3,
|
SpvFPFastMathModeFastShift = 4,
|
SpvFPFastMathModeMax = 0x7fffffff,
|
} SpvFPFastMathModeShift;
|
|
typedef enum SpvFPFastMathModeMask_ {
|
SpvFPFastMathModeMaskNone = 0,
|
SpvFPFastMathModeNotNaNMask = 0x00000001,
|
SpvFPFastMathModeNotInfMask = 0x00000002,
|
SpvFPFastMathModeNSZMask = 0x00000004,
|
SpvFPFastMathModeAllowRecipMask = 0x00000008,
|
SpvFPFastMathModeFastMask = 0x00000010,
|
} SpvFPFastMathModeMask;
|
|
typedef enum SpvFPRoundingMode_ {
|
SpvFPRoundingModeRTE = 0,
|
SpvFPRoundingModeRTZ = 1,
|
SpvFPRoundingModeRTP = 2,
|
SpvFPRoundingModeRTN = 3,
|
SpvFPRoundingModeMax = 0x7fffffff,
|
} SpvFPRoundingMode;
|
|
typedef enum SpvLinkageType_ {
|
SpvLinkageTypeExport = 0,
|
SpvLinkageTypeImport = 1,
|
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,
|
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,
|
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,
|
SpvDecorationExplicitInterpAMD = 4999,
|
SpvDecorationOverrideCoverageNV = 5248,
|
SpvDecorationPassthroughNV = 5250,
|
SpvDecorationViewportRelativeNV = 5252,
|
SpvDecorationSecondaryViewportRelativeNV = 5256,
|
SpvDecorationPerPrimitiveNV = 5271,
|
SpvDecorationPerViewNV = 5272,
|
SpvDecorationPerTaskNV = 5273,
|
SpvDecorationPerVertexNV = 5285,
|
SpvDecorationNonUniformEXT = 5300,
|
SpvDecorationHlslCounterBufferGOOGLE = 5634,
|
SpvDecorationHlslSemanticGOOGLE = 5635,
|
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,
|
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,
|
SpvBuiltInDeviceIndex = 4438,
|
SpvBuiltInViewIndex = 4440,
|
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,
|
SpvBuiltInBaryCoordNV = 5286,
|
SpvBuiltInBaryCoordNoPerspNV = 5287,
|
SpvBuiltInFragSizeEXT = 5292,
|
SpvBuiltInFragmentSizeNV = 5292,
|
SpvBuiltInFragInvocationCountEXT = 5293,
|
SpvBuiltInInvocationsPerPixelNV = 5293,
|
SpvBuiltInLaunchIdNV = 5319,
|
SpvBuiltInLaunchSizeNV = 5320,
|
SpvBuiltInWorldRayOriginNV = 5321,
|
SpvBuiltInWorldRayDirectionNV = 5322,
|
SpvBuiltInObjectRayOriginNV = 5323,
|
SpvBuiltInObjectRayDirectionNV = 5324,
|
SpvBuiltInRayTminNV = 5325,
|
SpvBuiltInRayTmaxNV = 5326,
|
SpvBuiltInInstanceCustomIndexNV = 5327,
|
SpvBuiltInObjectToWorldNV = 5330,
|
SpvBuiltInWorldToObjectNV = 5331,
|
SpvBuiltInHitTNV = 5332,
|
SpvBuiltInHitKindNV = 5333,
|
SpvBuiltInIncomingRayFlagsNV = 5351,
|
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,
|
SpvLoopControlMax = 0x7fffffff,
|
} SpvLoopControlShift;
|
|
typedef enum SpvLoopControlMask_ {
|
SpvLoopControlMaskNone = 0,
|
SpvLoopControlUnrollMask = 0x00000001,
|
SpvLoopControlDontUnrollMask = 0x00000002,
|
SpvLoopControlDependencyInfiniteMask = 0x00000004,
|
SpvLoopControlDependencyLengthMask = 0x00000008,
|
} SpvLoopControlMask;
|
|
typedef enum SpvFunctionControlShift_ {
|
SpvFunctionControlInlineShift = 0,
|
SpvFunctionControlDontInlineShift = 1,
|
SpvFunctionControlPureShift = 2,
|
SpvFunctionControlConstShift = 3,
|
SpvFunctionControlMax = 0x7fffffff,
|
} SpvFunctionControlShift;
|
|
typedef enum SpvFunctionControlMask_ {
|
SpvFunctionControlMaskNone = 0,
|
SpvFunctionControlInlineMask = 0x00000001,
|
SpvFunctionControlDontInlineMask = 0x00000002,
|
SpvFunctionControlPureMask = 0x00000004,
|
SpvFunctionControlConstMask = 0x00000008,
|
} SpvFunctionControlMask;
|
|
typedef enum SpvMemorySemanticsShift_ {
|
SpvMemorySemanticsAcquireShift = 1,
|
SpvMemorySemanticsReleaseShift = 2,
|
SpvMemorySemanticsAcquireReleaseShift = 3,
|
SpvMemorySemanticsSequentiallyConsistentShift = 4,
|
SpvMemorySemanticsUniformMemoryShift = 6,
|
SpvMemorySemanticsSubgroupMemoryShift = 7,
|
SpvMemorySemanticsWorkgroupMemoryShift = 8,
|
SpvMemorySemanticsCrossWorkgroupMemoryShift = 9,
|
SpvMemorySemanticsAtomicCounterMemoryShift = 10,
|
SpvMemorySemanticsImageMemoryShift = 11,
|
SpvMemorySemanticsOutputMemoryKHRShift = 12,
|
SpvMemorySemanticsMakeAvailableKHRShift = 13,
|
SpvMemorySemanticsMakeVisibleKHRShift = 14,
|
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,
|
SpvMemorySemanticsOutputMemoryKHRMask = 0x00001000,
|
SpvMemorySemanticsMakeAvailableKHRMask = 0x00002000,
|
SpvMemorySemanticsMakeVisibleKHRMask = 0x00004000,
|
} SpvMemorySemanticsMask;
|
|
typedef enum SpvMemoryAccessShift_ {
|
SpvMemoryAccessVolatileShift = 0,
|
SpvMemoryAccessAlignedShift = 1,
|
SpvMemoryAccessNontemporalShift = 2,
|
SpvMemoryAccessMakePointerAvailableKHRShift = 3,
|
SpvMemoryAccessMakePointerVisibleKHRShift = 4,
|
SpvMemoryAccessNonPrivatePointerKHRShift = 5,
|
SpvMemoryAccessMax = 0x7fffffff,
|
} SpvMemoryAccessShift;
|
|
typedef enum SpvMemoryAccessMask_ {
|
SpvMemoryAccessMaskNone = 0,
|
SpvMemoryAccessVolatileMask = 0x00000001,
|
SpvMemoryAccessAlignedMask = 0x00000002,
|
SpvMemoryAccessNontemporalMask = 0x00000004,
|
SpvMemoryAccessMakePointerAvailableKHRMask = 0x00000008,
|
SpvMemoryAccessMakePointerVisibleKHRMask = 0x00000010,
|
SpvMemoryAccessNonPrivatePointerKHRMask = 0x00000020,
|
} SpvMemoryAccessMask;
|
|
typedef enum SpvScope_ {
|
SpvScopeCrossDevice = 0,
|
SpvScopeDevice = 1,
|
SpvScopeWorkgroup = 2,
|
SpvScopeSubgroup = 3,
|
SpvScopeInvocation = 4,
|
SpvScopeQueueFamilyKHR = 5,
|
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,
|
SpvCapabilitySubgroupBallotKHR = 4423,
|
SpvCapabilityDrawParameters = 4427,
|
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,
|
SpvCapabilityFloat16ImageAMD = 5008,
|
SpvCapabilityImageGatherBiasLodAMD = 5009,
|
SpvCapabilityFragmentMaskAMD = 5010,
|
SpvCapabilityStencilExportEXT = 5013,
|
SpvCapabilityImageReadWriteLodAMD = 5015,
|
SpvCapabilitySampleMaskOverrideCoverageNV = 5249,
|
SpvCapabilityGeometryShaderPassthroughNV = 5251,
|
SpvCapabilityShaderViewportIndexLayerEXT = 5254,
|
SpvCapabilityShaderViewportIndexLayerNV = 5254,
|
SpvCapabilityShaderViewportMaskNV = 5255,
|
SpvCapabilityShaderStereoViewNV = 5259,
|
SpvCapabilityPerViewAttributesNV = 5260,
|
SpvCapabilityFragmentFullyCoveredEXT = 5265,
|
SpvCapabilityMeshShadingNV = 5266,
|
SpvCapabilityImageFootprintNV = 5282,
|
SpvCapabilityFragmentBarycentricNV = 5284,
|
SpvCapabilityComputeDerivativeGroupQuadsNV = 5288,
|
SpvCapabilityFragmentDensityEXT = 5291,
|
SpvCapabilityShadingRateNV = 5291,
|
SpvCapabilityGroupNonUniformPartitionedNV = 5297,
|
SpvCapabilityShaderNonUniformEXT = 5301,
|
SpvCapabilityRuntimeDescriptorArrayEXT = 5302,
|
SpvCapabilityInputAttachmentArrayDynamicIndexingEXT = 5303,
|
SpvCapabilityUniformTexelBufferArrayDynamicIndexingEXT = 5304,
|
SpvCapabilityStorageTexelBufferArrayDynamicIndexingEXT = 5305,
|
SpvCapabilityUniformBufferArrayNonUniformIndexingEXT = 5306,
|
SpvCapabilitySampledImageArrayNonUniformIndexingEXT = 5307,
|
SpvCapabilityStorageBufferArrayNonUniformIndexingEXT = 5308,
|
SpvCapabilityStorageImageArrayNonUniformIndexingEXT = 5309,
|
SpvCapabilityInputAttachmentArrayNonUniformIndexingEXT = 5310,
|
SpvCapabilityUniformTexelBufferArrayNonUniformIndexingEXT = 5311,
|
SpvCapabilityStorageTexelBufferArrayNonUniformIndexingEXT = 5312,
|
SpvCapabilityRayTracingNV = 5340,
|
SpvCapabilityVulkanMemoryModelKHR = 5345,
|
SpvCapabilityVulkanMemoryModelDeviceScopeKHR = 5346,
|
SpvCapabilityComputeDerivativeGroupLinearNV = 5350,
|
SpvCapabilitySubgroupShuffleINTEL = 5568,
|
SpvCapabilitySubgroupBufferBlockIOINTEL = 5569,
|
SpvCapabilitySubgroupImageBlockIOINTEL = 5570,
|
SpvCapabilityMax = 0x7fffffff,
|
} SpvCapability;
|
|
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,
|
SpvOpSubgroupBallotKHR = 4421,
|
SpvOpSubgroupFirstInvocationKHR = 4422,
|
SpvOpSubgroupAllKHR = 4428,
|
SpvOpSubgroupAnyKHR = 4429,
|
SpvOpSubgroupAllEqualKHR = 4430,
|
SpvOpSubgroupReadInvocationKHR = 4432,
|
SpvOpGroupIAddNonUniformAMD = 5000,
|
SpvOpGroupFAddNonUniformAMD = 5001,
|
SpvOpGroupFMinNonUniformAMD = 5002,
|
SpvOpGroupUMinNonUniformAMD = 5003,
|
SpvOpGroupSMinNonUniformAMD = 5004,
|
SpvOpGroupFMaxNonUniformAMD = 5005,
|
SpvOpGroupUMaxNonUniformAMD = 5006,
|
SpvOpGroupSMaxNonUniformAMD = 5007,
|
SpvOpFragmentMaskFetchAMD = 5011,
|
SpvOpFragmentFetchAMD = 5012,
|
SpvOpImageSampleFootprintNV = 5283,
|
SpvOpGroupNonUniformPartitionNV = 5296,
|
SpvOpWritePackedPrimitiveIndices4x8NV = 5299,
|
SpvOpReportIntersectionNV = 5334,
|
SpvOpIgnoreIntersectionNV = 5335,
|
SpvOpTerminateRayNV = 5336,
|
SpvOpTraceNV = 5337,
|
SpvOpTypeAccelerationStructureNV = 5341,
|
SpvOpExecuteCallableNV = 5344,
|
SpvOpSubgroupShuffleINTEL = 5571,
|
SpvOpSubgroupShuffleDownINTEL = 5572,
|
SpvOpSubgroupShuffleUpINTEL = 5573,
|
SpvOpSubgroupShuffleXorINTEL = 5574,
|
SpvOpSubgroupBlockReadINTEL = 5575,
|
SpvOpSubgroupBlockWriteINTEL = 5576,
|
SpvOpSubgroupImageBlockReadINTEL = 5577,
|
SpvOpSubgroupImageBlockWriteINTEL = 5578,
|
SpvOpDecorateStringGOOGLE = 5632,
|
SpvOpMemberDecorateStringGOOGLE = 5633,
|
SpvOpMax = 0x7fffffff,
|
} SpvOp;
|
|
#endif // #ifndef spirv_H
|