spirv.h revision 01e04c3f
101e04c3fSmrg/* 201e04c3fSmrg** Copyright (c) 2014-2018 The Khronos Group Inc. 301e04c3fSmrg** 401e04c3fSmrg** Permission is hereby granted, free of charge, to any person obtaining a copy 501e04c3fSmrg** of this software and/or associated documentation files (the "Materials"), 601e04c3fSmrg** to deal in the Materials without restriction, including without limitation 701e04c3fSmrg** the rights to use, copy, modify, merge, publish, distribute, sublicense, 801e04c3fSmrg** and/or sell copies of the Materials, and to permit persons to whom the 901e04c3fSmrg** Materials are furnished to do so, subject to the following conditions: 1001e04c3fSmrg** 1101e04c3fSmrg** The above copyright notice and this permission notice shall be included in 1201e04c3fSmrg** all copies or substantial portions of the Materials. 1301e04c3fSmrg** 1401e04c3fSmrg** MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS 1501e04c3fSmrg** STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND 1601e04c3fSmrg** HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/ 1701e04c3fSmrg** 1801e04c3fSmrg** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 1901e04c3fSmrg** OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 2001e04c3fSmrg** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 2101e04c3fSmrg** THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 2201e04c3fSmrg** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 2301e04c3fSmrg** FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS 2401e04c3fSmrg** IN THE MATERIALS. 2501e04c3fSmrg*/ 2601e04c3fSmrg 2701e04c3fSmrg/* 2801e04c3fSmrg** This header is automatically generated by the same tool that creates 2901e04c3fSmrg** the Binary Section of the SPIR-V specification. 3001e04c3fSmrg*/ 3101e04c3fSmrg 3201e04c3fSmrg/* 3301e04c3fSmrg** Enumeration tokens for SPIR-V, in various styles: 3401e04c3fSmrg** C, C++, C++11, JSON, Lua, Python 3501e04c3fSmrg** 3601e04c3fSmrg** - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL 3701e04c3fSmrg** - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL 3801e04c3fSmrg** - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL 3901e04c3fSmrg** - Lua will use tables, e.g.: spv.SourceLanguage.GLSL 4001e04c3fSmrg** - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] 4101e04c3fSmrg** 4201e04c3fSmrg** Some tokens act like mask values, which can be OR'd together, 4301e04c3fSmrg** while others are mutually exclusive. The mask-like ones have 4401e04c3fSmrg** "Mask" in their name, and a parallel enum that has the shift 4501e04c3fSmrg** amount (1 << x) for each corresponding enumerant. 4601e04c3fSmrg*/ 4701e04c3fSmrg 4801e04c3fSmrg#ifndef spirv_H 4901e04c3fSmrg#define spirv_H 5001e04c3fSmrg 5101e04c3fSmrgtypedef unsigned int SpvId; 5201e04c3fSmrg 5301e04c3fSmrg#define SPV_VERSION 0x10300 5401e04c3fSmrg#define SPV_REVISION 1 5501e04c3fSmrg 5601e04c3fSmrgstatic const unsigned int SpvMagicNumber = 0x07230203; 5701e04c3fSmrgstatic const unsigned int SpvVersion = 0x00010300; 5801e04c3fSmrgstatic const unsigned int SpvRevision = 1; 5901e04c3fSmrgstatic const unsigned int SpvOpCodeMask = 0xffff; 6001e04c3fSmrgstatic const unsigned int SpvWordCountShift = 16; 6101e04c3fSmrg 6201e04c3fSmrgtypedef enum SpvSourceLanguage_ { 6301e04c3fSmrg SpvSourceLanguageUnknown = 0, 6401e04c3fSmrg SpvSourceLanguageESSL = 1, 6501e04c3fSmrg SpvSourceLanguageGLSL = 2, 6601e04c3fSmrg SpvSourceLanguageOpenCL_C = 3, 6701e04c3fSmrg SpvSourceLanguageOpenCL_CPP = 4, 6801e04c3fSmrg SpvSourceLanguageHLSL = 5, 6901e04c3fSmrg SpvSourceLanguageMax = 0x7fffffff, 7001e04c3fSmrg} SpvSourceLanguage; 7101e04c3fSmrg 7201e04c3fSmrgtypedef enum SpvExecutionModel_ { 7301e04c3fSmrg SpvExecutionModelVertex = 0, 7401e04c3fSmrg SpvExecutionModelTessellationControl = 1, 7501e04c3fSmrg SpvExecutionModelTessellationEvaluation = 2, 7601e04c3fSmrg SpvExecutionModelGeometry = 3, 7701e04c3fSmrg SpvExecutionModelFragment = 4, 7801e04c3fSmrg SpvExecutionModelGLCompute = 5, 7901e04c3fSmrg SpvExecutionModelKernel = 6, 8001e04c3fSmrg SpvExecutionModelTaskNV = 5267, 8101e04c3fSmrg SpvExecutionModelMeshNV = 5268, 8201e04c3fSmrg SpvExecutionModelRayGenerationNVX = 5313, 8301e04c3fSmrg SpvExecutionModelIntersectionNVX = 5314, 8401e04c3fSmrg SpvExecutionModelAnyHitNVX = 5315, 8501e04c3fSmrg SpvExecutionModelClosestHitNVX = 5316, 8601e04c3fSmrg SpvExecutionModelMissNVX = 5317, 8701e04c3fSmrg SpvExecutionModelCallableNVX = 5318, 8801e04c3fSmrg SpvExecutionModelMax = 0x7fffffff, 8901e04c3fSmrg} SpvExecutionModel; 9001e04c3fSmrg 9101e04c3fSmrgtypedef enum SpvAddressingModel_ { 9201e04c3fSmrg SpvAddressingModelLogical = 0, 9301e04c3fSmrg SpvAddressingModelPhysical32 = 1, 9401e04c3fSmrg SpvAddressingModelPhysical64 = 2, 9501e04c3fSmrg SpvAddressingModelMax = 0x7fffffff, 9601e04c3fSmrg} SpvAddressingModel; 9701e04c3fSmrg 9801e04c3fSmrgtypedef enum SpvMemoryModel_ { 9901e04c3fSmrg SpvMemoryModelSimple = 0, 10001e04c3fSmrg SpvMemoryModelGLSL450 = 1, 10101e04c3fSmrg SpvMemoryModelOpenCL = 2, 10201e04c3fSmrg SpvMemoryModelVulkanKHR = 3, 10301e04c3fSmrg SpvMemoryModelMax = 0x7fffffff, 10401e04c3fSmrg} SpvMemoryModel; 10501e04c3fSmrg 10601e04c3fSmrgtypedef enum SpvExecutionMode_ { 10701e04c3fSmrg SpvExecutionModeInvocations = 0, 10801e04c3fSmrg SpvExecutionModeSpacingEqual = 1, 10901e04c3fSmrg SpvExecutionModeSpacingFractionalEven = 2, 11001e04c3fSmrg SpvExecutionModeSpacingFractionalOdd = 3, 11101e04c3fSmrg SpvExecutionModeVertexOrderCw = 4, 11201e04c3fSmrg SpvExecutionModeVertexOrderCcw = 5, 11301e04c3fSmrg SpvExecutionModePixelCenterInteger = 6, 11401e04c3fSmrg SpvExecutionModeOriginUpperLeft = 7, 11501e04c3fSmrg SpvExecutionModeOriginLowerLeft = 8, 11601e04c3fSmrg SpvExecutionModeEarlyFragmentTests = 9, 11701e04c3fSmrg SpvExecutionModePointMode = 10, 11801e04c3fSmrg SpvExecutionModeXfb = 11, 11901e04c3fSmrg SpvExecutionModeDepthReplacing = 12, 12001e04c3fSmrg SpvExecutionModeDepthGreater = 14, 12101e04c3fSmrg SpvExecutionModeDepthLess = 15, 12201e04c3fSmrg SpvExecutionModeDepthUnchanged = 16, 12301e04c3fSmrg SpvExecutionModeLocalSize = 17, 12401e04c3fSmrg SpvExecutionModeLocalSizeHint = 18, 12501e04c3fSmrg SpvExecutionModeInputPoints = 19, 12601e04c3fSmrg SpvExecutionModeInputLines = 20, 12701e04c3fSmrg SpvExecutionModeInputLinesAdjacency = 21, 12801e04c3fSmrg SpvExecutionModeTriangles = 22, 12901e04c3fSmrg SpvExecutionModeInputTrianglesAdjacency = 23, 13001e04c3fSmrg SpvExecutionModeQuads = 24, 13101e04c3fSmrg SpvExecutionModeIsolines = 25, 13201e04c3fSmrg SpvExecutionModeOutputVertices = 26, 13301e04c3fSmrg SpvExecutionModeOutputPoints = 27, 13401e04c3fSmrg SpvExecutionModeOutputLineStrip = 28, 13501e04c3fSmrg SpvExecutionModeOutputTriangleStrip = 29, 13601e04c3fSmrg SpvExecutionModeVecTypeHint = 30, 13701e04c3fSmrg SpvExecutionModeContractionOff = 31, 13801e04c3fSmrg SpvExecutionModeInitializer = 33, 13901e04c3fSmrg SpvExecutionModeFinalizer = 34, 14001e04c3fSmrg SpvExecutionModeSubgroupSize = 35, 14101e04c3fSmrg SpvExecutionModeSubgroupsPerWorkgroup = 36, 14201e04c3fSmrg SpvExecutionModeSubgroupsPerWorkgroupId = 37, 14301e04c3fSmrg SpvExecutionModeLocalSizeId = 38, 14401e04c3fSmrg SpvExecutionModeLocalSizeHintId = 39, 14501e04c3fSmrg SpvExecutionModePostDepthCoverage = 4446, 14601e04c3fSmrg SpvExecutionModeStencilRefReplacingEXT = 5027, 14701e04c3fSmrg SpvExecutionModeOutputLinesNV = 5269, 14801e04c3fSmrg SpvExecutionModeOutputPrimitivesNV = 5270, 14901e04c3fSmrg SpvExecutionModeDerivativeGroupQuadsNV = 5289, 15001e04c3fSmrg SpvExecutionModeDerivativeGroupLinearNV = 5290, 15101e04c3fSmrg SpvExecutionModeOutputTrianglesNV = 5298, 15201e04c3fSmrg SpvExecutionModeMax = 0x7fffffff, 15301e04c3fSmrg} SpvExecutionMode; 15401e04c3fSmrg 15501e04c3fSmrgtypedef enum SpvStorageClass_ { 15601e04c3fSmrg SpvStorageClassUniformConstant = 0, 15701e04c3fSmrg SpvStorageClassInput = 1, 15801e04c3fSmrg SpvStorageClassUniform = 2, 15901e04c3fSmrg SpvStorageClassOutput = 3, 16001e04c3fSmrg SpvStorageClassWorkgroup = 4, 16101e04c3fSmrg SpvStorageClassCrossWorkgroup = 5, 16201e04c3fSmrg SpvStorageClassPrivate = 6, 16301e04c3fSmrg SpvStorageClassFunction = 7, 16401e04c3fSmrg SpvStorageClassGeneric = 8, 16501e04c3fSmrg SpvStorageClassPushConstant = 9, 16601e04c3fSmrg SpvStorageClassAtomicCounter = 10, 16701e04c3fSmrg SpvStorageClassImage = 11, 16801e04c3fSmrg SpvStorageClassStorageBuffer = 12, 16901e04c3fSmrg SpvStorageClassRayPayloadNVX = 5338, 17001e04c3fSmrg SpvStorageClassHitAttributeNVX = 5339, 17101e04c3fSmrg SpvStorageClassIncomingRayPayloadNVX = 5342, 17201e04c3fSmrg SpvStorageClassShaderRecordBufferNVX = 5343, 17301e04c3fSmrg SpvStorageClassMax = 0x7fffffff, 17401e04c3fSmrg} SpvStorageClass; 17501e04c3fSmrg 17601e04c3fSmrgtypedef enum SpvDim_ { 17701e04c3fSmrg SpvDim1D = 0, 17801e04c3fSmrg SpvDim2D = 1, 17901e04c3fSmrg SpvDim3D = 2, 18001e04c3fSmrg SpvDimCube = 3, 18101e04c3fSmrg SpvDimRect = 4, 18201e04c3fSmrg SpvDimBuffer = 5, 18301e04c3fSmrg SpvDimSubpassData = 6, 18401e04c3fSmrg SpvDimMax = 0x7fffffff, 18501e04c3fSmrg} SpvDim; 18601e04c3fSmrg 18701e04c3fSmrgtypedef enum SpvSamplerAddressingMode_ { 18801e04c3fSmrg SpvSamplerAddressingModeNone = 0, 18901e04c3fSmrg SpvSamplerAddressingModeClampToEdge = 1, 19001e04c3fSmrg SpvSamplerAddressingModeClamp = 2, 19101e04c3fSmrg SpvSamplerAddressingModeRepeat = 3, 19201e04c3fSmrg SpvSamplerAddressingModeRepeatMirrored = 4, 19301e04c3fSmrg SpvSamplerAddressingModeMax = 0x7fffffff, 19401e04c3fSmrg} SpvSamplerAddressingMode; 19501e04c3fSmrg 19601e04c3fSmrgtypedef enum SpvSamplerFilterMode_ { 19701e04c3fSmrg SpvSamplerFilterModeNearest = 0, 19801e04c3fSmrg SpvSamplerFilterModeLinear = 1, 19901e04c3fSmrg SpvSamplerFilterModeMax = 0x7fffffff, 20001e04c3fSmrg} SpvSamplerFilterMode; 20101e04c3fSmrg 20201e04c3fSmrgtypedef enum SpvImageFormat_ { 20301e04c3fSmrg SpvImageFormatUnknown = 0, 20401e04c3fSmrg SpvImageFormatRgba32f = 1, 20501e04c3fSmrg SpvImageFormatRgba16f = 2, 20601e04c3fSmrg SpvImageFormatR32f = 3, 20701e04c3fSmrg SpvImageFormatRgba8 = 4, 20801e04c3fSmrg SpvImageFormatRgba8Snorm = 5, 20901e04c3fSmrg SpvImageFormatRg32f = 6, 21001e04c3fSmrg SpvImageFormatRg16f = 7, 21101e04c3fSmrg SpvImageFormatR11fG11fB10f = 8, 21201e04c3fSmrg SpvImageFormatR16f = 9, 21301e04c3fSmrg SpvImageFormatRgba16 = 10, 21401e04c3fSmrg SpvImageFormatRgb10A2 = 11, 21501e04c3fSmrg SpvImageFormatRg16 = 12, 21601e04c3fSmrg SpvImageFormatRg8 = 13, 21701e04c3fSmrg SpvImageFormatR16 = 14, 21801e04c3fSmrg SpvImageFormatR8 = 15, 21901e04c3fSmrg SpvImageFormatRgba16Snorm = 16, 22001e04c3fSmrg SpvImageFormatRg16Snorm = 17, 22101e04c3fSmrg SpvImageFormatRg8Snorm = 18, 22201e04c3fSmrg SpvImageFormatR16Snorm = 19, 22301e04c3fSmrg SpvImageFormatR8Snorm = 20, 22401e04c3fSmrg SpvImageFormatRgba32i = 21, 22501e04c3fSmrg SpvImageFormatRgba16i = 22, 22601e04c3fSmrg SpvImageFormatRgba8i = 23, 22701e04c3fSmrg SpvImageFormatR32i = 24, 22801e04c3fSmrg SpvImageFormatRg32i = 25, 22901e04c3fSmrg SpvImageFormatRg16i = 26, 23001e04c3fSmrg SpvImageFormatRg8i = 27, 23101e04c3fSmrg SpvImageFormatR16i = 28, 23201e04c3fSmrg SpvImageFormatR8i = 29, 23301e04c3fSmrg SpvImageFormatRgba32ui = 30, 23401e04c3fSmrg SpvImageFormatRgba16ui = 31, 23501e04c3fSmrg SpvImageFormatRgba8ui = 32, 23601e04c3fSmrg SpvImageFormatR32ui = 33, 23701e04c3fSmrg SpvImageFormatRgb10a2ui = 34, 23801e04c3fSmrg SpvImageFormatRg32ui = 35, 23901e04c3fSmrg SpvImageFormatRg16ui = 36, 24001e04c3fSmrg SpvImageFormatRg8ui = 37, 24101e04c3fSmrg SpvImageFormatR16ui = 38, 24201e04c3fSmrg SpvImageFormatR8ui = 39, 24301e04c3fSmrg SpvImageFormatMax = 0x7fffffff, 24401e04c3fSmrg} SpvImageFormat; 24501e04c3fSmrg 24601e04c3fSmrgtypedef enum SpvImageChannelOrder_ { 24701e04c3fSmrg SpvImageChannelOrderR = 0, 24801e04c3fSmrg SpvImageChannelOrderA = 1, 24901e04c3fSmrg SpvImageChannelOrderRG = 2, 25001e04c3fSmrg SpvImageChannelOrderRA = 3, 25101e04c3fSmrg SpvImageChannelOrderRGB = 4, 25201e04c3fSmrg SpvImageChannelOrderRGBA = 5, 25301e04c3fSmrg SpvImageChannelOrderBGRA = 6, 25401e04c3fSmrg SpvImageChannelOrderARGB = 7, 25501e04c3fSmrg SpvImageChannelOrderIntensity = 8, 25601e04c3fSmrg SpvImageChannelOrderLuminance = 9, 25701e04c3fSmrg SpvImageChannelOrderRx = 10, 25801e04c3fSmrg SpvImageChannelOrderRGx = 11, 25901e04c3fSmrg SpvImageChannelOrderRGBx = 12, 26001e04c3fSmrg SpvImageChannelOrderDepth = 13, 26101e04c3fSmrg SpvImageChannelOrderDepthStencil = 14, 26201e04c3fSmrg SpvImageChannelOrdersRGB = 15, 26301e04c3fSmrg SpvImageChannelOrdersRGBx = 16, 26401e04c3fSmrg SpvImageChannelOrdersRGBA = 17, 26501e04c3fSmrg SpvImageChannelOrdersBGRA = 18, 26601e04c3fSmrg SpvImageChannelOrderABGR = 19, 26701e04c3fSmrg SpvImageChannelOrderMax = 0x7fffffff, 26801e04c3fSmrg} SpvImageChannelOrder; 26901e04c3fSmrg 27001e04c3fSmrgtypedef enum SpvImageChannelDataType_ { 27101e04c3fSmrg SpvImageChannelDataTypeSnormInt8 = 0, 27201e04c3fSmrg SpvImageChannelDataTypeSnormInt16 = 1, 27301e04c3fSmrg SpvImageChannelDataTypeUnormInt8 = 2, 27401e04c3fSmrg SpvImageChannelDataTypeUnormInt16 = 3, 27501e04c3fSmrg SpvImageChannelDataTypeUnormShort565 = 4, 27601e04c3fSmrg SpvImageChannelDataTypeUnormShort555 = 5, 27701e04c3fSmrg SpvImageChannelDataTypeUnormInt101010 = 6, 27801e04c3fSmrg SpvImageChannelDataTypeSignedInt8 = 7, 27901e04c3fSmrg SpvImageChannelDataTypeSignedInt16 = 8, 28001e04c3fSmrg SpvImageChannelDataTypeSignedInt32 = 9, 28101e04c3fSmrg SpvImageChannelDataTypeUnsignedInt8 = 10, 28201e04c3fSmrg SpvImageChannelDataTypeUnsignedInt16 = 11, 28301e04c3fSmrg SpvImageChannelDataTypeUnsignedInt32 = 12, 28401e04c3fSmrg SpvImageChannelDataTypeHalfFloat = 13, 28501e04c3fSmrg SpvImageChannelDataTypeFloat = 14, 28601e04c3fSmrg SpvImageChannelDataTypeUnormInt24 = 15, 28701e04c3fSmrg SpvImageChannelDataTypeUnormInt101010_2 = 16, 28801e04c3fSmrg SpvImageChannelDataTypeMax = 0x7fffffff, 28901e04c3fSmrg} SpvImageChannelDataType; 29001e04c3fSmrg 29101e04c3fSmrgtypedef enum SpvImageOperandsShift_ { 29201e04c3fSmrg SpvImageOperandsBiasShift = 0, 29301e04c3fSmrg SpvImageOperandsLodShift = 1, 29401e04c3fSmrg SpvImageOperandsGradShift = 2, 29501e04c3fSmrg SpvImageOperandsConstOffsetShift = 3, 29601e04c3fSmrg SpvImageOperandsOffsetShift = 4, 29701e04c3fSmrg SpvImageOperandsConstOffsetsShift = 5, 29801e04c3fSmrg SpvImageOperandsSampleShift = 6, 29901e04c3fSmrg SpvImageOperandsMinLodShift = 7, 30001e04c3fSmrg SpvImageOperandsMakeTexelAvailableKHRShift = 8, 30101e04c3fSmrg SpvImageOperandsMakeTexelVisibleKHRShift = 9, 30201e04c3fSmrg SpvImageOperandsNonPrivateTexelKHRShift = 10, 30301e04c3fSmrg SpvImageOperandsVolatileTexelKHRShift = 11, 30401e04c3fSmrg SpvImageOperandsMax = 0x7fffffff, 30501e04c3fSmrg} SpvImageOperandsShift; 30601e04c3fSmrg 30701e04c3fSmrgtypedef enum SpvImageOperandsMask_ { 30801e04c3fSmrg SpvImageOperandsMaskNone = 0, 30901e04c3fSmrg SpvImageOperandsBiasMask = 0x00000001, 31001e04c3fSmrg SpvImageOperandsLodMask = 0x00000002, 31101e04c3fSmrg SpvImageOperandsGradMask = 0x00000004, 31201e04c3fSmrg SpvImageOperandsConstOffsetMask = 0x00000008, 31301e04c3fSmrg SpvImageOperandsOffsetMask = 0x00000010, 31401e04c3fSmrg SpvImageOperandsConstOffsetsMask = 0x00000020, 31501e04c3fSmrg SpvImageOperandsSampleMask = 0x00000040, 31601e04c3fSmrg SpvImageOperandsMinLodMask = 0x00000080, 31701e04c3fSmrg SpvImageOperandsMakeTexelAvailableKHRMask = 0x00000100, 31801e04c3fSmrg SpvImageOperandsMakeTexelVisibleKHRMask = 0x00000200, 31901e04c3fSmrg SpvImageOperandsNonPrivateTexelKHRMask = 0x00000400, 32001e04c3fSmrg SpvImageOperandsVolatileTexelKHRMask = 0x00000800, 32101e04c3fSmrg} SpvImageOperandsMask; 32201e04c3fSmrg 32301e04c3fSmrgtypedef enum SpvFPFastMathModeShift_ { 32401e04c3fSmrg SpvFPFastMathModeNotNaNShift = 0, 32501e04c3fSmrg SpvFPFastMathModeNotInfShift = 1, 32601e04c3fSmrg SpvFPFastMathModeNSZShift = 2, 32701e04c3fSmrg SpvFPFastMathModeAllowRecipShift = 3, 32801e04c3fSmrg SpvFPFastMathModeFastShift = 4, 32901e04c3fSmrg SpvFPFastMathModeMax = 0x7fffffff, 33001e04c3fSmrg} SpvFPFastMathModeShift; 33101e04c3fSmrg 33201e04c3fSmrgtypedef enum SpvFPFastMathModeMask_ { 33301e04c3fSmrg SpvFPFastMathModeMaskNone = 0, 33401e04c3fSmrg SpvFPFastMathModeNotNaNMask = 0x00000001, 33501e04c3fSmrg SpvFPFastMathModeNotInfMask = 0x00000002, 33601e04c3fSmrg SpvFPFastMathModeNSZMask = 0x00000004, 33701e04c3fSmrg SpvFPFastMathModeAllowRecipMask = 0x00000008, 33801e04c3fSmrg SpvFPFastMathModeFastMask = 0x00000010, 33901e04c3fSmrg} SpvFPFastMathModeMask; 34001e04c3fSmrg 34101e04c3fSmrgtypedef enum SpvFPRoundingMode_ { 34201e04c3fSmrg SpvFPRoundingModeRTE = 0, 34301e04c3fSmrg SpvFPRoundingModeRTZ = 1, 34401e04c3fSmrg SpvFPRoundingModeRTP = 2, 34501e04c3fSmrg SpvFPRoundingModeRTN = 3, 34601e04c3fSmrg SpvFPRoundingModeMax = 0x7fffffff, 34701e04c3fSmrg} SpvFPRoundingMode; 34801e04c3fSmrg 34901e04c3fSmrgtypedef enum SpvLinkageType_ { 35001e04c3fSmrg SpvLinkageTypeExport = 0, 35101e04c3fSmrg SpvLinkageTypeImport = 1, 35201e04c3fSmrg SpvLinkageTypeMax = 0x7fffffff, 35301e04c3fSmrg} SpvLinkageType; 35401e04c3fSmrg 35501e04c3fSmrgtypedef enum SpvAccessQualifier_ { 35601e04c3fSmrg SpvAccessQualifierReadOnly = 0, 35701e04c3fSmrg SpvAccessQualifierWriteOnly = 1, 35801e04c3fSmrg SpvAccessQualifierReadWrite = 2, 35901e04c3fSmrg SpvAccessQualifierMax = 0x7fffffff, 36001e04c3fSmrg} SpvAccessQualifier; 36101e04c3fSmrg 36201e04c3fSmrgtypedef enum SpvFunctionParameterAttribute_ { 36301e04c3fSmrg SpvFunctionParameterAttributeZext = 0, 36401e04c3fSmrg SpvFunctionParameterAttributeSext = 1, 36501e04c3fSmrg SpvFunctionParameterAttributeByVal = 2, 36601e04c3fSmrg SpvFunctionParameterAttributeSret = 3, 36701e04c3fSmrg SpvFunctionParameterAttributeNoAlias = 4, 36801e04c3fSmrg SpvFunctionParameterAttributeNoCapture = 5, 36901e04c3fSmrg SpvFunctionParameterAttributeNoWrite = 6, 37001e04c3fSmrg SpvFunctionParameterAttributeNoReadWrite = 7, 37101e04c3fSmrg SpvFunctionParameterAttributeMax = 0x7fffffff, 37201e04c3fSmrg} SpvFunctionParameterAttribute; 37301e04c3fSmrg 37401e04c3fSmrgtypedef enum SpvDecoration_ { 37501e04c3fSmrg SpvDecorationRelaxedPrecision = 0, 37601e04c3fSmrg SpvDecorationSpecId = 1, 37701e04c3fSmrg SpvDecorationBlock = 2, 37801e04c3fSmrg SpvDecorationBufferBlock = 3, 37901e04c3fSmrg SpvDecorationRowMajor = 4, 38001e04c3fSmrg SpvDecorationColMajor = 5, 38101e04c3fSmrg SpvDecorationArrayStride = 6, 38201e04c3fSmrg SpvDecorationMatrixStride = 7, 38301e04c3fSmrg SpvDecorationGLSLShared = 8, 38401e04c3fSmrg SpvDecorationGLSLPacked = 9, 38501e04c3fSmrg SpvDecorationCPacked = 10, 38601e04c3fSmrg SpvDecorationBuiltIn = 11, 38701e04c3fSmrg SpvDecorationNoPerspective = 13, 38801e04c3fSmrg SpvDecorationFlat = 14, 38901e04c3fSmrg SpvDecorationPatch = 15, 39001e04c3fSmrg SpvDecorationCentroid = 16, 39101e04c3fSmrg SpvDecorationSample = 17, 39201e04c3fSmrg SpvDecorationInvariant = 18, 39301e04c3fSmrg SpvDecorationRestrict = 19, 39401e04c3fSmrg SpvDecorationAliased = 20, 39501e04c3fSmrg SpvDecorationVolatile = 21, 39601e04c3fSmrg SpvDecorationConstant = 22, 39701e04c3fSmrg SpvDecorationCoherent = 23, 39801e04c3fSmrg SpvDecorationNonWritable = 24, 39901e04c3fSmrg SpvDecorationNonReadable = 25, 40001e04c3fSmrg SpvDecorationUniform = 26, 40101e04c3fSmrg SpvDecorationSaturatedConversion = 28, 40201e04c3fSmrg SpvDecorationStream = 29, 40301e04c3fSmrg SpvDecorationLocation = 30, 40401e04c3fSmrg SpvDecorationComponent = 31, 40501e04c3fSmrg SpvDecorationIndex = 32, 40601e04c3fSmrg SpvDecorationBinding = 33, 40701e04c3fSmrg SpvDecorationDescriptorSet = 34, 40801e04c3fSmrg SpvDecorationOffset = 35, 40901e04c3fSmrg SpvDecorationXfbBuffer = 36, 41001e04c3fSmrg SpvDecorationXfbStride = 37, 41101e04c3fSmrg SpvDecorationFuncParamAttr = 38, 41201e04c3fSmrg SpvDecorationFPRoundingMode = 39, 41301e04c3fSmrg SpvDecorationFPFastMathMode = 40, 41401e04c3fSmrg SpvDecorationLinkageAttributes = 41, 41501e04c3fSmrg SpvDecorationNoContraction = 42, 41601e04c3fSmrg SpvDecorationInputAttachmentIndex = 43, 41701e04c3fSmrg SpvDecorationAlignment = 44, 41801e04c3fSmrg SpvDecorationMaxByteOffset = 45, 41901e04c3fSmrg SpvDecorationAlignmentId = 46, 42001e04c3fSmrg SpvDecorationMaxByteOffsetId = 47, 42101e04c3fSmrg SpvDecorationExplicitInterpAMD = 4999, 42201e04c3fSmrg SpvDecorationOverrideCoverageNV = 5248, 42301e04c3fSmrg SpvDecorationPassthroughNV = 5250, 42401e04c3fSmrg SpvDecorationViewportRelativeNV = 5252, 42501e04c3fSmrg SpvDecorationSecondaryViewportRelativeNV = 5256, 42601e04c3fSmrg SpvDecorationPerPrimitiveNV = 5271, 42701e04c3fSmrg SpvDecorationPerViewNV = 5272, 42801e04c3fSmrg SpvDecorationPerTaskNV = 5273, 42901e04c3fSmrg SpvDecorationPerVertexNV = 5285, 43001e04c3fSmrg SpvDecorationNonUniformEXT = 5300, 43101e04c3fSmrg SpvDecorationHlslCounterBufferGOOGLE = 5634, 43201e04c3fSmrg SpvDecorationHlslSemanticGOOGLE = 5635, 43301e04c3fSmrg SpvDecorationMax = 0x7fffffff, 43401e04c3fSmrg} SpvDecoration; 43501e04c3fSmrg 43601e04c3fSmrgtypedef enum SpvBuiltIn_ { 43701e04c3fSmrg SpvBuiltInPosition = 0, 43801e04c3fSmrg SpvBuiltInPointSize = 1, 43901e04c3fSmrg SpvBuiltInClipDistance = 3, 44001e04c3fSmrg SpvBuiltInCullDistance = 4, 44101e04c3fSmrg SpvBuiltInVertexId = 5, 44201e04c3fSmrg SpvBuiltInInstanceId = 6, 44301e04c3fSmrg SpvBuiltInPrimitiveId = 7, 44401e04c3fSmrg SpvBuiltInInvocationId = 8, 44501e04c3fSmrg SpvBuiltInLayer = 9, 44601e04c3fSmrg SpvBuiltInViewportIndex = 10, 44701e04c3fSmrg SpvBuiltInTessLevelOuter = 11, 44801e04c3fSmrg SpvBuiltInTessLevelInner = 12, 44901e04c3fSmrg SpvBuiltInTessCoord = 13, 45001e04c3fSmrg SpvBuiltInPatchVertices = 14, 45101e04c3fSmrg SpvBuiltInFragCoord = 15, 45201e04c3fSmrg SpvBuiltInPointCoord = 16, 45301e04c3fSmrg SpvBuiltInFrontFacing = 17, 45401e04c3fSmrg SpvBuiltInSampleId = 18, 45501e04c3fSmrg SpvBuiltInSamplePosition = 19, 45601e04c3fSmrg SpvBuiltInSampleMask = 20, 45701e04c3fSmrg SpvBuiltInFragDepth = 22, 45801e04c3fSmrg SpvBuiltInHelperInvocation = 23, 45901e04c3fSmrg SpvBuiltInNumWorkgroups = 24, 46001e04c3fSmrg SpvBuiltInWorkgroupSize = 25, 46101e04c3fSmrg SpvBuiltInWorkgroupId = 26, 46201e04c3fSmrg SpvBuiltInLocalInvocationId = 27, 46301e04c3fSmrg SpvBuiltInGlobalInvocationId = 28, 46401e04c3fSmrg SpvBuiltInLocalInvocationIndex = 29, 46501e04c3fSmrg SpvBuiltInWorkDim = 30, 46601e04c3fSmrg SpvBuiltInGlobalSize = 31, 46701e04c3fSmrg SpvBuiltInEnqueuedWorkgroupSize = 32, 46801e04c3fSmrg SpvBuiltInGlobalOffset = 33, 46901e04c3fSmrg SpvBuiltInGlobalLinearId = 34, 47001e04c3fSmrg SpvBuiltInSubgroupSize = 36, 47101e04c3fSmrg SpvBuiltInSubgroupMaxSize = 37, 47201e04c3fSmrg SpvBuiltInNumSubgroups = 38, 47301e04c3fSmrg SpvBuiltInNumEnqueuedSubgroups = 39, 47401e04c3fSmrg SpvBuiltInSubgroupId = 40, 47501e04c3fSmrg SpvBuiltInSubgroupLocalInvocationId = 41, 47601e04c3fSmrg SpvBuiltInVertexIndex = 42, 47701e04c3fSmrg SpvBuiltInInstanceIndex = 43, 47801e04c3fSmrg SpvBuiltInSubgroupEqMask = 4416, 47901e04c3fSmrg SpvBuiltInSubgroupEqMaskKHR = 4416, 48001e04c3fSmrg SpvBuiltInSubgroupGeMask = 4417, 48101e04c3fSmrg SpvBuiltInSubgroupGeMaskKHR = 4417, 48201e04c3fSmrg SpvBuiltInSubgroupGtMask = 4418, 48301e04c3fSmrg SpvBuiltInSubgroupGtMaskKHR = 4418, 48401e04c3fSmrg SpvBuiltInSubgroupLeMask = 4419, 48501e04c3fSmrg SpvBuiltInSubgroupLeMaskKHR = 4419, 48601e04c3fSmrg SpvBuiltInSubgroupLtMask = 4420, 48701e04c3fSmrg SpvBuiltInSubgroupLtMaskKHR = 4420, 48801e04c3fSmrg SpvBuiltInBaseVertex = 4424, 48901e04c3fSmrg SpvBuiltInBaseInstance = 4425, 49001e04c3fSmrg SpvBuiltInDrawIndex = 4426, 49101e04c3fSmrg SpvBuiltInDeviceIndex = 4438, 49201e04c3fSmrg SpvBuiltInViewIndex = 4440, 49301e04c3fSmrg SpvBuiltInBaryCoordNoPerspAMD = 4992, 49401e04c3fSmrg SpvBuiltInBaryCoordNoPerspCentroidAMD = 4993, 49501e04c3fSmrg SpvBuiltInBaryCoordNoPerspSampleAMD = 4994, 49601e04c3fSmrg SpvBuiltInBaryCoordSmoothAMD = 4995, 49701e04c3fSmrg SpvBuiltInBaryCoordSmoothCentroidAMD = 4996, 49801e04c3fSmrg SpvBuiltInBaryCoordSmoothSampleAMD = 4997, 49901e04c3fSmrg SpvBuiltInBaryCoordPullModelAMD = 4998, 50001e04c3fSmrg SpvBuiltInFragStencilRefEXT = 5014, 50101e04c3fSmrg SpvBuiltInViewportMaskNV = 5253, 50201e04c3fSmrg SpvBuiltInSecondaryPositionNV = 5257, 50301e04c3fSmrg SpvBuiltInSecondaryViewportMaskNV = 5258, 50401e04c3fSmrg SpvBuiltInPositionPerViewNV = 5261, 50501e04c3fSmrg SpvBuiltInViewportMaskPerViewNV = 5262, 50601e04c3fSmrg SpvBuiltInFullyCoveredEXT = 5264, 50701e04c3fSmrg SpvBuiltInTaskCountNV = 5274, 50801e04c3fSmrg SpvBuiltInPrimitiveCountNV = 5275, 50901e04c3fSmrg SpvBuiltInPrimitiveIndicesNV = 5276, 51001e04c3fSmrg SpvBuiltInClipDistancePerViewNV = 5277, 51101e04c3fSmrg SpvBuiltInCullDistancePerViewNV = 5278, 51201e04c3fSmrg SpvBuiltInLayerPerViewNV = 5279, 51301e04c3fSmrg SpvBuiltInMeshViewCountNV = 5280, 51401e04c3fSmrg SpvBuiltInMeshViewIndicesNV = 5281, 51501e04c3fSmrg SpvBuiltInBaryCoordNV = 5286, 51601e04c3fSmrg SpvBuiltInBaryCoordNoPerspNV = 5287, 51701e04c3fSmrg SpvBuiltInFragmentSizeNV = 5292, 51801e04c3fSmrg SpvBuiltInInvocationsPerPixelNV = 5293, 51901e04c3fSmrg SpvBuiltInLaunchIdNVX = 5319, 52001e04c3fSmrg SpvBuiltInLaunchSizeNVX = 5320, 52101e04c3fSmrg SpvBuiltInWorldRayOriginNVX = 5321, 52201e04c3fSmrg SpvBuiltInWorldRayDirectionNVX = 5322, 52301e04c3fSmrg SpvBuiltInObjectRayOriginNVX = 5323, 52401e04c3fSmrg SpvBuiltInObjectRayDirectionNVX = 5324, 52501e04c3fSmrg SpvBuiltInRayTminNVX = 5325, 52601e04c3fSmrg SpvBuiltInRayTmaxNVX = 5326, 52701e04c3fSmrg SpvBuiltInInstanceCustomIndexNVX = 5327, 52801e04c3fSmrg SpvBuiltInObjectToWorldNVX = 5330, 52901e04c3fSmrg SpvBuiltInWorldToObjectNVX = 5331, 53001e04c3fSmrg SpvBuiltInHitTNVX = 5332, 53101e04c3fSmrg SpvBuiltInHitKindNVX = 5333, 53201e04c3fSmrg SpvBuiltInMax = 0x7fffffff, 53301e04c3fSmrg} SpvBuiltIn; 53401e04c3fSmrg 53501e04c3fSmrgtypedef enum SpvSelectionControlShift_ { 53601e04c3fSmrg SpvSelectionControlFlattenShift = 0, 53701e04c3fSmrg SpvSelectionControlDontFlattenShift = 1, 53801e04c3fSmrg SpvSelectionControlMax = 0x7fffffff, 53901e04c3fSmrg} SpvSelectionControlShift; 54001e04c3fSmrg 54101e04c3fSmrgtypedef enum SpvSelectionControlMask_ { 54201e04c3fSmrg SpvSelectionControlMaskNone = 0, 54301e04c3fSmrg SpvSelectionControlFlattenMask = 0x00000001, 54401e04c3fSmrg SpvSelectionControlDontFlattenMask = 0x00000002, 54501e04c3fSmrg} SpvSelectionControlMask; 54601e04c3fSmrg 54701e04c3fSmrgtypedef enum SpvLoopControlShift_ { 54801e04c3fSmrg SpvLoopControlUnrollShift = 0, 54901e04c3fSmrg SpvLoopControlDontUnrollShift = 1, 55001e04c3fSmrg SpvLoopControlDependencyInfiniteShift = 2, 55101e04c3fSmrg SpvLoopControlDependencyLengthShift = 3, 55201e04c3fSmrg SpvLoopControlMax = 0x7fffffff, 55301e04c3fSmrg} SpvLoopControlShift; 55401e04c3fSmrg 55501e04c3fSmrgtypedef enum SpvLoopControlMask_ { 55601e04c3fSmrg SpvLoopControlMaskNone = 0, 55701e04c3fSmrg SpvLoopControlUnrollMask = 0x00000001, 55801e04c3fSmrg SpvLoopControlDontUnrollMask = 0x00000002, 55901e04c3fSmrg SpvLoopControlDependencyInfiniteMask = 0x00000004, 56001e04c3fSmrg SpvLoopControlDependencyLengthMask = 0x00000008, 56101e04c3fSmrg} SpvLoopControlMask; 56201e04c3fSmrg 56301e04c3fSmrgtypedef enum SpvFunctionControlShift_ { 56401e04c3fSmrg SpvFunctionControlInlineShift = 0, 56501e04c3fSmrg SpvFunctionControlDontInlineShift = 1, 56601e04c3fSmrg SpvFunctionControlPureShift = 2, 56701e04c3fSmrg SpvFunctionControlConstShift = 3, 56801e04c3fSmrg SpvFunctionControlMax = 0x7fffffff, 56901e04c3fSmrg} SpvFunctionControlShift; 57001e04c3fSmrg 57101e04c3fSmrgtypedef enum SpvFunctionControlMask_ { 57201e04c3fSmrg SpvFunctionControlMaskNone = 0, 57301e04c3fSmrg SpvFunctionControlInlineMask = 0x00000001, 57401e04c3fSmrg SpvFunctionControlDontInlineMask = 0x00000002, 57501e04c3fSmrg SpvFunctionControlPureMask = 0x00000004, 57601e04c3fSmrg SpvFunctionControlConstMask = 0x00000008, 57701e04c3fSmrg} SpvFunctionControlMask; 57801e04c3fSmrg 57901e04c3fSmrgtypedef enum SpvMemorySemanticsShift_ { 58001e04c3fSmrg SpvMemorySemanticsAcquireShift = 1, 58101e04c3fSmrg SpvMemorySemanticsReleaseShift = 2, 58201e04c3fSmrg SpvMemorySemanticsAcquireReleaseShift = 3, 58301e04c3fSmrg SpvMemorySemanticsSequentiallyConsistentShift = 4, 58401e04c3fSmrg SpvMemorySemanticsUniformMemoryShift = 6, 58501e04c3fSmrg SpvMemorySemanticsSubgroupMemoryShift = 7, 58601e04c3fSmrg SpvMemorySemanticsWorkgroupMemoryShift = 8, 58701e04c3fSmrg SpvMemorySemanticsCrossWorkgroupMemoryShift = 9, 58801e04c3fSmrg SpvMemorySemanticsAtomicCounterMemoryShift = 10, 58901e04c3fSmrg SpvMemorySemanticsImageMemoryShift = 11, 59001e04c3fSmrg SpvMemorySemanticsOutputMemoryKHRShift = 12, 59101e04c3fSmrg SpvMemorySemanticsMakeAvailableKHRShift = 13, 59201e04c3fSmrg SpvMemorySemanticsMakeVisibleKHRShift = 14, 59301e04c3fSmrg SpvMemorySemanticsMax = 0x7fffffff, 59401e04c3fSmrg} SpvMemorySemanticsShift; 59501e04c3fSmrg 59601e04c3fSmrgtypedef enum SpvMemorySemanticsMask_ { 59701e04c3fSmrg SpvMemorySemanticsMaskNone = 0, 59801e04c3fSmrg SpvMemorySemanticsAcquireMask = 0x00000002, 59901e04c3fSmrg SpvMemorySemanticsReleaseMask = 0x00000004, 60001e04c3fSmrg SpvMemorySemanticsAcquireReleaseMask = 0x00000008, 60101e04c3fSmrg SpvMemorySemanticsSequentiallyConsistentMask = 0x00000010, 60201e04c3fSmrg SpvMemorySemanticsUniformMemoryMask = 0x00000040, 60301e04c3fSmrg SpvMemorySemanticsSubgroupMemoryMask = 0x00000080, 60401e04c3fSmrg SpvMemorySemanticsWorkgroupMemoryMask = 0x00000100, 60501e04c3fSmrg SpvMemorySemanticsCrossWorkgroupMemoryMask = 0x00000200, 60601e04c3fSmrg SpvMemorySemanticsAtomicCounterMemoryMask = 0x00000400, 60701e04c3fSmrg SpvMemorySemanticsImageMemoryMask = 0x00000800, 60801e04c3fSmrg SpvMemorySemanticsOutputMemoryKHRMask = 0x00001000, 60901e04c3fSmrg SpvMemorySemanticsMakeAvailableKHRMask = 0x00002000, 61001e04c3fSmrg SpvMemorySemanticsMakeVisibleKHRMask = 0x00004000, 61101e04c3fSmrg} SpvMemorySemanticsMask; 61201e04c3fSmrg 61301e04c3fSmrgtypedef enum SpvMemoryAccessShift_ { 61401e04c3fSmrg SpvMemoryAccessVolatileShift = 0, 61501e04c3fSmrg SpvMemoryAccessAlignedShift = 1, 61601e04c3fSmrg SpvMemoryAccessNontemporalShift = 2, 61701e04c3fSmrg SpvMemoryAccessMakePointerAvailableKHRShift = 3, 61801e04c3fSmrg SpvMemoryAccessMakePointerVisibleKHRShift = 4, 61901e04c3fSmrg SpvMemoryAccessNonPrivatePointerKHRShift = 5, 62001e04c3fSmrg SpvMemoryAccessMax = 0x7fffffff, 62101e04c3fSmrg} SpvMemoryAccessShift; 62201e04c3fSmrg 62301e04c3fSmrgtypedef enum SpvMemoryAccessMask_ { 62401e04c3fSmrg SpvMemoryAccessMaskNone = 0, 62501e04c3fSmrg SpvMemoryAccessVolatileMask = 0x00000001, 62601e04c3fSmrg SpvMemoryAccessAlignedMask = 0x00000002, 62701e04c3fSmrg SpvMemoryAccessNontemporalMask = 0x00000004, 62801e04c3fSmrg SpvMemoryAccessMakePointerAvailableKHRMask = 0x00000008, 62901e04c3fSmrg SpvMemoryAccessMakePointerVisibleKHRMask = 0x00000010, 63001e04c3fSmrg SpvMemoryAccessNonPrivatePointerKHRMask = 0x00000020, 63101e04c3fSmrg} SpvMemoryAccessMask; 63201e04c3fSmrg 63301e04c3fSmrgtypedef enum SpvScope_ { 63401e04c3fSmrg SpvScopeCrossDevice = 0, 63501e04c3fSmrg SpvScopeDevice = 1, 63601e04c3fSmrg SpvScopeWorkgroup = 2, 63701e04c3fSmrg SpvScopeSubgroup = 3, 63801e04c3fSmrg SpvScopeInvocation = 4, 63901e04c3fSmrg SpvScopeQueueFamilyKHR = 5, 64001e04c3fSmrg SpvScopeMax = 0x7fffffff, 64101e04c3fSmrg} SpvScope; 64201e04c3fSmrg 64301e04c3fSmrgtypedef enum SpvGroupOperation_ { 64401e04c3fSmrg SpvGroupOperationReduce = 0, 64501e04c3fSmrg SpvGroupOperationInclusiveScan = 1, 64601e04c3fSmrg SpvGroupOperationExclusiveScan = 2, 64701e04c3fSmrg SpvGroupOperationClusteredReduce = 3, 64801e04c3fSmrg SpvGroupOperationPartitionedReduceNV = 6, 64901e04c3fSmrg SpvGroupOperationPartitionedInclusiveScanNV = 7, 65001e04c3fSmrg SpvGroupOperationPartitionedExclusiveScanNV = 8, 65101e04c3fSmrg SpvGroupOperationMax = 0x7fffffff, 65201e04c3fSmrg} SpvGroupOperation; 65301e04c3fSmrg 65401e04c3fSmrgtypedef enum SpvKernelEnqueueFlags_ { 65501e04c3fSmrg SpvKernelEnqueueFlagsNoWait = 0, 65601e04c3fSmrg SpvKernelEnqueueFlagsWaitKernel = 1, 65701e04c3fSmrg SpvKernelEnqueueFlagsWaitWorkGroup = 2, 65801e04c3fSmrg SpvKernelEnqueueFlagsMax = 0x7fffffff, 65901e04c3fSmrg} SpvKernelEnqueueFlags; 66001e04c3fSmrg 66101e04c3fSmrgtypedef enum SpvKernelProfilingInfoShift_ { 66201e04c3fSmrg SpvKernelProfilingInfoCmdExecTimeShift = 0, 66301e04c3fSmrg SpvKernelProfilingInfoMax = 0x7fffffff, 66401e04c3fSmrg} SpvKernelProfilingInfoShift; 66501e04c3fSmrg 66601e04c3fSmrgtypedef enum SpvKernelProfilingInfoMask_ { 66701e04c3fSmrg SpvKernelProfilingInfoMaskNone = 0, 66801e04c3fSmrg SpvKernelProfilingInfoCmdExecTimeMask = 0x00000001, 66901e04c3fSmrg} SpvKernelProfilingInfoMask; 67001e04c3fSmrg 67101e04c3fSmrgtypedef enum SpvCapability_ { 67201e04c3fSmrg SpvCapabilityMatrix = 0, 67301e04c3fSmrg SpvCapabilityShader = 1, 67401e04c3fSmrg SpvCapabilityGeometry = 2, 67501e04c3fSmrg SpvCapabilityTessellation = 3, 67601e04c3fSmrg SpvCapabilityAddresses = 4, 67701e04c3fSmrg SpvCapabilityLinkage = 5, 67801e04c3fSmrg SpvCapabilityKernel = 6, 67901e04c3fSmrg SpvCapabilityVector16 = 7, 68001e04c3fSmrg SpvCapabilityFloat16Buffer = 8, 68101e04c3fSmrg SpvCapabilityFloat16 = 9, 68201e04c3fSmrg SpvCapabilityFloat64 = 10, 68301e04c3fSmrg SpvCapabilityInt64 = 11, 68401e04c3fSmrg SpvCapabilityInt64Atomics = 12, 68501e04c3fSmrg SpvCapabilityImageBasic = 13, 68601e04c3fSmrg SpvCapabilityImageReadWrite = 14, 68701e04c3fSmrg SpvCapabilityImageMipmap = 15, 68801e04c3fSmrg SpvCapabilityPipes = 17, 68901e04c3fSmrg SpvCapabilityGroups = 18, 69001e04c3fSmrg SpvCapabilityDeviceEnqueue = 19, 69101e04c3fSmrg SpvCapabilityLiteralSampler = 20, 69201e04c3fSmrg SpvCapabilityAtomicStorage = 21, 69301e04c3fSmrg SpvCapabilityInt16 = 22, 69401e04c3fSmrg SpvCapabilityTessellationPointSize = 23, 69501e04c3fSmrg SpvCapabilityGeometryPointSize = 24, 69601e04c3fSmrg SpvCapabilityImageGatherExtended = 25, 69701e04c3fSmrg SpvCapabilityStorageImageMultisample = 27, 69801e04c3fSmrg SpvCapabilityUniformBufferArrayDynamicIndexing = 28, 69901e04c3fSmrg SpvCapabilitySampledImageArrayDynamicIndexing = 29, 70001e04c3fSmrg SpvCapabilityStorageBufferArrayDynamicIndexing = 30, 70101e04c3fSmrg SpvCapabilityStorageImageArrayDynamicIndexing = 31, 70201e04c3fSmrg SpvCapabilityClipDistance = 32, 70301e04c3fSmrg SpvCapabilityCullDistance = 33, 70401e04c3fSmrg SpvCapabilityImageCubeArray = 34, 70501e04c3fSmrg SpvCapabilitySampleRateShading = 35, 70601e04c3fSmrg SpvCapabilityImageRect = 36, 70701e04c3fSmrg SpvCapabilitySampledRect = 37, 70801e04c3fSmrg SpvCapabilityGenericPointer = 38, 70901e04c3fSmrg SpvCapabilityInt8 = 39, 71001e04c3fSmrg SpvCapabilityInputAttachment = 40, 71101e04c3fSmrg SpvCapabilitySparseResidency = 41, 71201e04c3fSmrg SpvCapabilityMinLod = 42, 71301e04c3fSmrg SpvCapabilitySampled1D = 43, 71401e04c3fSmrg SpvCapabilityImage1D = 44, 71501e04c3fSmrg SpvCapabilitySampledCubeArray = 45, 71601e04c3fSmrg SpvCapabilitySampledBuffer = 46, 71701e04c3fSmrg SpvCapabilityImageBuffer = 47, 71801e04c3fSmrg SpvCapabilityImageMSArray = 48, 71901e04c3fSmrg SpvCapabilityStorageImageExtendedFormats = 49, 72001e04c3fSmrg SpvCapabilityImageQuery = 50, 72101e04c3fSmrg SpvCapabilityDerivativeControl = 51, 72201e04c3fSmrg SpvCapabilityInterpolationFunction = 52, 72301e04c3fSmrg SpvCapabilityTransformFeedback = 53, 72401e04c3fSmrg SpvCapabilityGeometryStreams = 54, 72501e04c3fSmrg SpvCapabilityStorageImageReadWithoutFormat = 55, 72601e04c3fSmrg SpvCapabilityStorageImageWriteWithoutFormat = 56, 72701e04c3fSmrg SpvCapabilityMultiViewport = 57, 72801e04c3fSmrg SpvCapabilitySubgroupDispatch = 58, 72901e04c3fSmrg SpvCapabilityNamedBarrier = 59, 73001e04c3fSmrg SpvCapabilityPipeStorage = 60, 73101e04c3fSmrg SpvCapabilityGroupNonUniform = 61, 73201e04c3fSmrg SpvCapabilityGroupNonUniformVote = 62, 73301e04c3fSmrg SpvCapabilityGroupNonUniformArithmetic = 63, 73401e04c3fSmrg SpvCapabilityGroupNonUniformBallot = 64, 73501e04c3fSmrg SpvCapabilityGroupNonUniformShuffle = 65, 73601e04c3fSmrg SpvCapabilityGroupNonUniformShuffleRelative = 66, 73701e04c3fSmrg SpvCapabilityGroupNonUniformClustered = 67, 73801e04c3fSmrg SpvCapabilityGroupNonUniformQuad = 68, 73901e04c3fSmrg SpvCapabilitySubgroupBallotKHR = 4423, 74001e04c3fSmrg SpvCapabilityDrawParameters = 4427, 74101e04c3fSmrg SpvCapabilitySubgroupVoteKHR = 4431, 74201e04c3fSmrg SpvCapabilityStorageBuffer16BitAccess = 4433, 74301e04c3fSmrg SpvCapabilityStorageUniformBufferBlock16 = 4433, 74401e04c3fSmrg SpvCapabilityStorageUniform16 = 4434, 74501e04c3fSmrg SpvCapabilityUniformAndStorageBuffer16BitAccess = 4434, 74601e04c3fSmrg SpvCapabilityStoragePushConstant16 = 4435, 74701e04c3fSmrg SpvCapabilityStorageInputOutput16 = 4436, 74801e04c3fSmrg SpvCapabilityDeviceGroup = 4437, 74901e04c3fSmrg SpvCapabilityMultiView = 4439, 75001e04c3fSmrg SpvCapabilityVariablePointersStorageBuffer = 4441, 75101e04c3fSmrg SpvCapabilityVariablePointers = 4442, 75201e04c3fSmrg SpvCapabilityAtomicStorageOps = 4445, 75301e04c3fSmrg SpvCapabilitySampleMaskPostDepthCoverage = 4447, 75401e04c3fSmrg SpvCapabilityStorageBuffer8BitAccess = 4448, 75501e04c3fSmrg SpvCapabilityUniformAndStorageBuffer8BitAccess = 4449, 75601e04c3fSmrg SpvCapabilityStoragePushConstant8 = 4450, 75701e04c3fSmrg SpvCapabilityFloat16ImageAMD = 5008, 75801e04c3fSmrg SpvCapabilityImageGatherBiasLodAMD = 5009, 75901e04c3fSmrg SpvCapabilityFragmentMaskAMD = 5010, 76001e04c3fSmrg SpvCapabilityStencilExportEXT = 5013, 76101e04c3fSmrg SpvCapabilityImageReadWriteLodAMD = 5015, 76201e04c3fSmrg SpvCapabilitySampleMaskOverrideCoverageNV = 5249, 76301e04c3fSmrg SpvCapabilityGeometryShaderPassthroughNV = 5251, 76401e04c3fSmrg SpvCapabilityShaderViewportIndexLayerEXT = 5254, 76501e04c3fSmrg SpvCapabilityShaderViewportIndexLayerNV = 5254, 76601e04c3fSmrg SpvCapabilityShaderViewportMaskNV = 5255, 76701e04c3fSmrg SpvCapabilityShaderStereoViewNV = 5259, 76801e04c3fSmrg SpvCapabilityPerViewAttributesNV = 5260, 76901e04c3fSmrg SpvCapabilityFragmentFullyCoveredEXT = 5265, 77001e04c3fSmrg SpvCapabilityMeshShadingNV = 5266, 77101e04c3fSmrg SpvCapabilityImageFootprintNV = 5282, 77201e04c3fSmrg SpvCapabilityFragmentBarycentricNV = 5284, 77301e04c3fSmrg SpvCapabilityComputeDerivativeGroupQuadsNV = 5288, 77401e04c3fSmrg SpvCapabilityShadingRateNV = 5291, 77501e04c3fSmrg SpvCapabilityGroupNonUniformPartitionedNV = 5297, 77601e04c3fSmrg SpvCapabilityShaderNonUniformEXT = 5301, 77701e04c3fSmrg SpvCapabilityRuntimeDescriptorArrayEXT = 5302, 77801e04c3fSmrg SpvCapabilityInputAttachmentArrayDynamicIndexingEXT = 5303, 77901e04c3fSmrg SpvCapabilityUniformTexelBufferArrayDynamicIndexingEXT = 5304, 78001e04c3fSmrg SpvCapabilityStorageTexelBufferArrayDynamicIndexingEXT = 5305, 78101e04c3fSmrg SpvCapabilityUniformBufferArrayNonUniformIndexingEXT = 5306, 78201e04c3fSmrg SpvCapabilitySampledImageArrayNonUniformIndexingEXT = 5307, 78301e04c3fSmrg SpvCapabilityStorageBufferArrayNonUniformIndexingEXT = 5308, 78401e04c3fSmrg SpvCapabilityStorageImageArrayNonUniformIndexingEXT = 5309, 78501e04c3fSmrg SpvCapabilityInputAttachmentArrayNonUniformIndexingEXT = 5310, 78601e04c3fSmrg SpvCapabilityUniformTexelBufferArrayNonUniformIndexingEXT = 5311, 78701e04c3fSmrg SpvCapabilityStorageTexelBufferArrayNonUniformIndexingEXT = 5312, 78801e04c3fSmrg SpvCapabilityRaytracingNVX = 5340, 78901e04c3fSmrg SpvCapabilityVulkanMemoryModelKHR = 5345, 79001e04c3fSmrg SpvCapabilityVulkanMemoryModelDeviceScopeKHR = 5346, 79101e04c3fSmrg SpvCapabilityComputeDerivativeGroupLinearNV = 5350, 79201e04c3fSmrg SpvCapabilitySubgroupShuffleINTEL = 5568, 79301e04c3fSmrg SpvCapabilitySubgroupBufferBlockIOINTEL = 5569, 79401e04c3fSmrg SpvCapabilitySubgroupImageBlockIOINTEL = 5570, 79501e04c3fSmrg SpvCapabilityMax = 0x7fffffff, 79601e04c3fSmrg} SpvCapability; 79701e04c3fSmrg 79801e04c3fSmrgtypedef enum SpvOp_ { 79901e04c3fSmrg SpvOpNop = 0, 80001e04c3fSmrg SpvOpUndef = 1, 80101e04c3fSmrg SpvOpSourceContinued = 2, 80201e04c3fSmrg SpvOpSource = 3, 80301e04c3fSmrg SpvOpSourceExtension = 4, 80401e04c3fSmrg SpvOpName = 5, 80501e04c3fSmrg SpvOpMemberName = 6, 80601e04c3fSmrg SpvOpString = 7, 80701e04c3fSmrg SpvOpLine = 8, 80801e04c3fSmrg SpvOpExtension = 10, 80901e04c3fSmrg SpvOpExtInstImport = 11, 81001e04c3fSmrg SpvOpExtInst = 12, 81101e04c3fSmrg SpvOpMemoryModel = 14, 81201e04c3fSmrg SpvOpEntryPoint = 15, 81301e04c3fSmrg SpvOpExecutionMode = 16, 81401e04c3fSmrg SpvOpCapability = 17, 81501e04c3fSmrg SpvOpTypeVoid = 19, 81601e04c3fSmrg SpvOpTypeBool = 20, 81701e04c3fSmrg SpvOpTypeInt = 21, 81801e04c3fSmrg SpvOpTypeFloat = 22, 81901e04c3fSmrg SpvOpTypeVector = 23, 82001e04c3fSmrg SpvOpTypeMatrix = 24, 82101e04c3fSmrg SpvOpTypeImage = 25, 82201e04c3fSmrg SpvOpTypeSampler = 26, 82301e04c3fSmrg SpvOpTypeSampledImage = 27, 82401e04c3fSmrg SpvOpTypeArray = 28, 82501e04c3fSmrg SpvOpTypeRuntimeArray = 29, 82601e04c3fSmrg SpvOpTypeStruct = 30, 82701e04c3fSmrg SpvOpTypeOpaque = 31, 82801e04c3fSmrg SpvOpTypePointer = 32, 82901e04c3fSmrg SpvOpTypeFunction = 33, 83001e04c3fSmrg SpvOpTypeEvent = 34, 83101e04c3fSmrg SpvOpTypeDeviceEvent = 35, 83201e04c3fSmrg SpvOpTypeReserveId = 36, 83301e04c3fSmrg SpvOpTypeQueue = 37, 83401e04c3fSmrg SpvOpTypePipe = 38, 83501e04c3fSmrg SpvOpTypeForwardPointer = 39, 83601e04c3fSmrg SpvOpConstantTrue = 41, 83701e04c3fSmrg SpvOpConstantFalse = 42, 83801e04c3fSmrg SpvOpConstant = 43, 83901e04c3fSmrg SpvOpConstantComposite = 44, 84001e04c3fSmrg SpvOpConstantSampler = 45, 84101e04c3fSmrg SpvOpConstantNull = 46, 84201e04c3fSmrg SpvOpSpecConstantTrue = 48, 84301e04c3fSmrg SpvOpSpecConstantFalse = 49, 84401e04c3fSmrg SpvOpSpecConstant = 50, 84501e04c3fSmrg SpvOpSpecConstantComposite = 51, 84601e04c3fSmrg SpvOpSpecConstantOp = 52, 84701e04c3fSmrg SpvOpFunction = 54, 84801e04c3fSmrg SpvOpFunctionParameter = 55, 84901e04c3fSmrg SpvOpFunctionEnd = 56, 85001e04c3fSmrg SpvOpFunctionCall = 57, 85101e04c3fSmrg SpvOpVariable = 59, 85201e04c3fSmrg SpvOpImageTexelPointer = 60, 85301e04c3fSmrg SpvOpLoad = 61, 85401e04c3fSmrg SpvOpStore = 62, 85501e04c3fSmrg SpvOpCopyMemory = 63, 85601e04c3fSmrg SpvOpCopyMemorySized = 64, 85701e04c3fSmrg SpvOpAccessChain = 65, 85801e04c3fSmrg SpvOpInBoundsAccessChain = 66, 85901e04c3fSmrg SpvOpPtrAccessChain = 67, 86001e04c3fSmrg SpvOpArrayLength = 68, 86101e04c3fSmrg SpvOpGenericPtrMemSemantics = 69, 86201e04c3fSmrg SpvOpInBoundsPtrAccessChain = 70, 86301e04c3fSmrg SpvOpDecorate = 71, 86401e04c3fSmrg SpvOpMemberDecorate = 72, 86501e04c3fSmrg SpvOpDecorationGroup = 73, 86601e04c3fSmrg SpvOpGroupDecorate = 74, 86701e04c3fSmrg SpvOpGroupMemberDecorate = 75, 86801e04c3fSmrg SpvOpVectorExtractDynamic = 77, 86901e04c3fSmrg SpvOpVectorInsertDynamic = 78, 87001e04c3fSmrg SpvOpVectorShuffle = 79, 87101e04c3fSmrg SpvOpCompositeConstruct = 80, 87201e04c3fSmrg SpvOpCompositeExtract = 81, 87301e04c3fSmrg SpvOpCompositeInsert = 82, 87401e04c3fSmrg SpvOpCopyObject = 83, 87501e04c3fSmrg SpvOpTranspose = 84, 87601e04c3fSmrg SpvOpSampledImage = 86, 87701e04c3fSmrg SpvOpImageSampleImplicitLod = 87, 87801e04c3fSmrg SpvOpImageSampleExplicitLod = 88, 87901e04c3fSmrg SpvOpImageSampleDrefImplicitLod = 89, 88001e04c3fSmrg SpvOpImageSampleDrefExplicitLod = 90, 88101e04c3fSmrg SpvOpImageSampleProjImplicitLod = 91, 88201e04c3fSmrg SpvOpImageSampleProjExplicitLod = 92, 88301e04c3fSmrg SpvOpImageSampleProjDrefImplicitLod = 93, 88401e04c3fSmrg SpvOpImageSampleProjDrefExplicitLod = 94, 88501e04c3fSmrg SpvOpImageFetch = 95, 88601e04c3fSmrg SpvOpImageGather = 96, 88701e04c3fSmrg SpvOpImageDrefGather = 97, 88801e04c3fSmrg SpvOpImageRead = 98, 88901e04c3fSmrg SpvOpImageWrite = 99, 89001e04c3fSmrg SpvOpImage = 100, 89101e04c3fSmrg SpvOpImageQueryFormat = 101, 89201e04c3fSmrg SpvOpImageQueryOrder = 102, 89301e04c3fSmrg SpvOpImageQuerySizeLod = 103, 89401e04c3fSmrg SpvOpImageQuerySize = 104, 89501e04c3fSmrg SpvOpImageQueryLod = 105, 89601e04c3fSmrg SpvOpImageQueryLevels = 106, 89701e04c3fSmrg SpvOpImageQuerySamples = 107, 89801e04c3fSmrg SpvOpConvertFToU = 109, 89901e04c3fSmrg SpvOpConvertFToS = 110, 90001e04c3fSmrg SpvOpConvertSToF = 111, 90101e04c3fSmrg SpvOpConvertUToF = 112, 90201e04c3fSmrg SpvOpUConvert = 113, 90301e04c3fSmrg SpvOpSConvert = 114, 90401e04c3fSmrg SpvOpFConvert = 115, 90501e04c3fSmrg SpvOpQuantizeToF16 = 116, 90601e04c3fSmrg SpvOpConvertPtrToU = 117, 90701e04c3fSmrg SpvOpSatConvertSToU = 118, 90801e04c3fSmrg SpvOpSatConvertUToS = 119, 90901e04c3fSmrg SpvOpConvertUToPtr = 120, 91001e04c3fSmrg SpvOpPtrCastToGeneric = 121, 91101e04c3fSmrg SpvOpGenericCastToPtr = 122, 91201e04c3fSmrg SpvOpGenericCastToPtrExplicit = 123, 91301e04c3fSmrg SpvOpBitcast = 124, 91401e04c3fSmrg SpvOpSNegate = 126, 91501e04c3fSmrg SpvOpFNegate = 127, 91601e04c3fSmrg SpvOpIAdd = 128, 91701e04c3fSmrg SpvOpFAdd = 129, 91801e04c3fSmrg SpvOpISub = 130, 91901e04c3fSmrg SpvOpFSub = 131, 92001e04c3fSmrg SpvOpIMul = 132, 92101e04c3fSmrg SpvOpFMul = 133, 92201e04c3fSmrg SpvOpUDiv = 134, 92301e04c3fSmrg SpvOpSDiv = 135, 92401e04c3fSmrg SpvOpFDiv = 136, 92501e04c3fSmrg SpvOpUMod = 137, 92601e04c3fSmrg SpvOpSRem = 138, 92701e04c3fSmrg SpvOpSMod = 139, 92801e04c3fSmrg SpvOpFRem = 140, 92901e04c3fSmrg SpvOpFMod = 141, 93001e04c3fSmrg SpvOpVectorTimesScalar = 142, 93101e04c3fSmrg SpvOpMatrixTimesScalar = 143, 93201e04c3fSmrg SpvOpVectorTimesMatrix = 144, 93301e04c3fSmrg SpvOpMatrixTimesVector = 145, 93401e04c3fSmrg SpvOpMatrixTimesMatrix = 146, 93501e04c3fSmrg SpvOpOuterProduct = 147, 93601e04c3fSmrg SpvOpDot = 148, 93701e04c3fSmrg SpvOpIAddCarry = 149, 93801e04c3fSmrg SpvOpISubBorrow = 150, 93901e04c3fSmrg SpvOpUMulExtended = 151, 94001e04c3fSmrg SpvOpSMulExtended = 152, 94101e04c3fSmrg SpvOpAny = 154, 94201e04c3fSmrg SpvOpAll = 155, 94301e04c3fSmrg SpvOpIsNan = 156, 94401e04c3fSmrg SpvOpIsInf = 157, 94501e04c3fSmrg SpvOpIsFinite = 158, 94601e04c3fSmrg SpvOpIsNormal = 159, 94701e04c3fSmrg SpvOpSignBitSet = 160, 94801e04c3fSmrg SpvOpLessOrGreater = 161, 94901e04c3fSmrg SpvOpOrdered = 162, 95001e04c3fSmrg SpvOpUnordered = 163, 95101e04c3fSmrg SpvOpLogicalEqual = 164, 95201e04c3fSmrg SpvOpLogicalNotEqual = 165, 95301e04c3fSmrg SpvOpLogicalOr = 166, 95401e04c3fSmrg SpvOpLogicalAnd = 167, 95501e04c3fSmrg SpvOpLogicalNot = 168, 95601e04c3fSmrg SpvOpSelect = 169, 95701e04c3fSmrg SpvOpIEqual = 170, 95801e04c3fSmrg SpvOpINotEqual = 171, 95901e04c3fSmrg SpvOpUGreaterThan = 172, 96001e04c3fSmrg SpvOpSGreaterThan = 173, 96101e04c3fSmrg SpvOpUGreaterThanEqual = 174, 96201e04c3fSmrg SpvOpSGreaterThanEqual = 175, 96301e04c3fSmrg SpvOpULessThan = 176, 96401e04c3fSmrg SpvOpSLessThan = 177, 96501e04c3fSmrg SpvOpULessThanEqual = 178, 96601e04c3fSmrg SpvOpSLessThanEqual = 179, 96701e04c3fSmrg SpvOpFOrdEqual = 180, 96801e04c3fSmrg SpvOpFUnordEqual = 181, 96901e04c3fSmrg SpvOpFOrdNotEqual = 182, 97001e04c3fSmrg SpvOpFUnordNotEqual = 183, 97101e04c3fSmrg SpvOpFOrdLessThan = 184, 97201e04c3fSmrg SpvOpFUnordLessThan = 185, 97301e04c3fSmrg SpvOpFOrdGreaterThan = 186, 97401e04c3fSmrg SpvOpFUnordGreaterThan = 187, 97501e04c3fSmrg SpvOpFOrdLessThanEqual = 188, 97601e04c3fSmrg SpvOpFUnordLessThanEqual = 189, 97701e04c3fSmrg SpvOpFOrdGreaterThanEqual = 190, 97801e04c3fSmrg SpvOpFUnordGreaterThanEqual = 191, 97901e04c3fSmrg SpvOpShiftRightLogical = 194, 98001e04c3fSmrg SpvOpShiftRightArithmetic = 195, 98101e04c3fSmrg SpvOpShiftLeftLogical = 196, 98201e04c3fSmrg SpvOpBitwiseOr = 197, 98301e04c3fSmrg SpvOpBitwiseXor = 198, 98401e04c3fSmrg SpvOpBitwiseAnd = 199, 98501e04c3fSmrg SpvOpNot = 200, 98601e04c3fSmrg SpvOpBitFieldInsert = 201, 98701e04c3fSmrg SpvOpBitFieldSExtract = 202, 98801e04c3fSmrg SpvOpBitFieldUExtract = 203, 98901e04c3fSmrg SpvOpBitReverse = 204, 99001e04c3fSmrg SpvOpBitCount = 205, 99101e04c3fSmrg SpvOpDPdx = 207, 99201e04c3fSmrg SpvOpDPdy = 208, 99301e04c3fSmrg SpvOpFwidth = 209, 99401e04c3fSmrg SpvOpDPdxFine = 210, 99501e04c3fSmrg SpvOpDPdyFine = 211, 99601e04c3fSmrg SpvOpFwidthFine = 212, 99701e04c3fSmrg SpvOpDPdxCoarse = 213, 99801e04c3fSmrg SpvOpDPdyCoarse = 214, 99901e04c3fSmrg SpvOpFwidthCoarse = 215, 100001e04c3fSmrg SpvOpEmitVertex = 218, 100101e04c3fSmrg SpvOpEndPrimitive = 219, 100201e04c3fSmrg SpvOpEmitStreamVertex = 220, 100301e04c3fSmrg SpvOpEndStreamPrimitive = 221, 100401e04c3fSmrg SpvOpControlBarrier = 224, 100501e04c3fSmrg SpvOpMemoryBarrier = 225, 100601e04c3fSmrg SpvOpAtomicLoad = 227, 100701e04c3fSmrg SpvOpAtomicStore = 228, 100801e04c3fSmrg SpvOpAtomicExchange = 229, 100901e04c3fSmrg SpvOpAtomicCompareExchange = 230, 101001e04c3fSmrg SpvOpAtomicCompareExchangeWeak = 231, 101101e04c3fSmrg SpvOpAtomicIIncrement = 232, 101201e04c3fSmrg SpvOpAtomicIDecrement = 233, 101301e04c3fSmrg SpvOpAtomicIAdd = 234, 101401e04c3fSmrg SpvOpAtomicISub = 235, 101501e04c3fSmrg SpvOpAtomicSMin = 236, 101601e04c3fSmrg SpvOpAtomicUMin = 237, 101701e04c3fSmrg SpvOpAtomicSMax = 238, 101801e04c3fSmrg SpvOpAtomicUMax = 239, 101901e04c3fSmrg SpvOpAtomicAnd = 240, 102001e04c3fSmrg SpvOpAtomicOr = 241, 102101e04c3fSmrg SpvOpAtomicXor = 242, 102201e04c3fSmrg SpvOpPhi = 245, 102301e04c3fSmrg SpvOpLoopMerge = 246, 102401e04c3fSmrg SpvOpSelectionMerge = 247, 102501e04c3fSmrg SpvOpLabel = 248, 102601e04c3fSmrg SpvOpBranch = 249, 102701e04c3fSmrg SpvOpBranchConditional = 250, 102801e04c3fSmrg SpvOpSwitch = 251, 102901e04c3fSmrg SpvOpKill = 252, 103001e04c3fSmrg SpvOpReturn = 253, 103101e04c3fSmrg SpvOpReturnValue = 254, 103201e04c3fSmrg SpvOpUnreachable = 255, 103301e04c3fSmrg SpvOpLifetimeStart = 256, 103401e04c3fSmrg SpvOpLifetimeStop = 257, 103501e04c3fSmrg SpvOpGroupAsyncCopy = 259, 103601e04c3fSmrg SpvOpGroupWaitEvents = 260, 103701e04c3fSmrg SpvOpGroupAll = 261, 103801e04c3fSmrg SpvOpGroupAny = 262, 103901e04c3fSmrg SpvOpGroupBroadcast = 263, 104001e04c3fSmrg SpvOpGroupIAdd = 264, 104101e04c3fSmrg SpvOpGroupFAdd = 265, 104201e04c3fSmrg SpvOpGroupFMin = 266, 104301e04c3fSmrg SpvOpGroupUMin = 267, 104401e04c3fSmrg SpvOpGroupSMin = 268, 104501e04c3fSmrg SpvOpGroupFMax = 269, 104601e04c3fSmrg SpvOpGroupUMax = 270, 104701e04c3fSmrg SpvOpGroupSMax = 271, 104801e04c3fSmrg SpvOpReadPipe = 274, 104901e04c3fSmrg SpvOpWritePipe = 275, 105001e04c3fSmrg SpvOpReservedReadPipe = 276, 105101e04c3fSmrg SpvOpReservedWritePipe = 277, 105201e04c3fSmrg SpvOpReserveReadPipePackets = 278, 105301e04c3fSmrg SpvOpReserveWritePipePackets = 279, 105401e04c3fSmrg SpvOpCommitReadPipe = 280, 105501e04c3fSmrg SpvOpCommitWritePipe = 281, 105601e04c3fSmrg SpvOpIsValidReserveId = 282, 105701e04c3fSmrg SpvOpGetNumPipePackets = 283, 105801e04c3fSmrg SpvOpGetMaxPipePackets = 284, 105901e04c3fSmrg SpvOpGroupReserveReadPipePackets = 285, 106001e04c3fSmrg SpvOpGroupReserveWritePipePackets = 286, 106101e04c3fSmrg SpvOpGroupCommitReadPipe = 287, 106201e04c3fSmrg SpvOpGroupCommitWritePipe = 288, 106301e04c3fSmrg SpvOpEnqueueMarker = 291, 106401e04c3fSmrg SpvOpEnqueueKernel = 292, 106501e04c3fSmrg SpvOpGetKernelNDrangeSubGroupCount = 293, 106601e04c3fSmrg SpvOpGetKernelNDrangeMaxSubGroupSize = 294, 106701e04c3fSmrg SpvOpGetKernelWorkGroupSize = 295, 106801e04c3fSmrg SpvOpGetKernelPreferredWorkGroupSizeMultiple = 296, 106901e04c3fSmrg SpvOpRetainEvent = 297, 107001e04c3fSmrg SpvOpReleaseEvent = 298, 107101e04c3fSmrg SpvOpCreateUserEvent = 299, 107201e04c3fSmrg SpvOpIsValidEvent = 300, 107301e04c3fSmrg SpvOpSetUserEventStatus = 301, 107401e04c3fSmrg SpvOpCaptureEventProfilingInfo = 302, 107501e04c3fSmrg SpvOpGetDefaultQueue = 303, 107601e04c3fSmrg SpvOpBuildNDRange = 304, 107701e04c3fSmrg SpvOpImageSparseSampleImplicitLod = 305, 107801e04c3fSmrg SpvOpImageSparseSampleExplicitLod = 306, 107901e04c3fSmrg SpvOpImageSparseSampleDrefImplicitLod = 307, 108001e04c3fSmrg SpvOpImageSparseSampleDrefExplicitLod = 308, 108101e04c3fSmrg SpvOpImageSparseSampleProjImplicitLod = 309, 108201e04c3fSmrg SpvOpImageSparseSampleProjExplicitLod = 310, 108301e04c3fSmrg SpvOpImageSparseSampleProjDrefImplicitLod = 311, 108401e04c3fSmrg SpvOpImageSparseSampleProjDrefExplicitLod = 312, 108501e04c3fSmrg SpvOpImageSparseFetch = 313, 108601e04c3fSmrg SpvOpImageSparseGather = 314, 108701e04c3fSmrg SpvOpImageSparseDrefGather = 315, 108801e04c3fSmrg SpvOpImageSparseTexelsResident = 316, 108901e04c3fSmrg SpvOpNoLine = 317, 109001e04c3fSmrg SpvOpAtomicFlagTestAndSet = 318, 109101e04c3fSmrg SpvOpAtomicFlagClear = 319, 109201e04c3fSmrg SpvOpImageSparseRead = 320, 109301e04c3fSmrg SpvOpSizeOf = 321, 109401e04c3fSmrg SpvOpTypePipeStorage = 322, 109501e04c3fSmrg SpvOpConstantPipeStorage = 323, 109601e04c3fSmrg SpvOpCreatePipeFromPipeStorage = 324, 109701e04c3fSmrg SpvOpGetKernelLocalSizeForSubgroupCount = 325, 109801e04c3fSmrg SpvOpGetKernelMaxNumSubgroups = 326, 109901e04c3fSmrg SpvOpTypeNamedBarrier = 327, 110001e04c3fSmrg SpvOpNamedBarrierInitialize = 328, 110101e04c3fSmrg SpvOpMemoryNamedBarrier = 329, 110201e04c3fSmrg SpvOpModuleProcessed = 330, 110301e04c3fSmrg SpvOpExecutionModeId = 331, 110401e04c3fSmrg SpvOpDecorateId = 332, 110501e04c3fSmrg SpvOpGroupNonUniformElect = 333, 110601e04c3fSmrg SpvOpGroupNonUniformAll = 334, 110701e04c3fSmrg SpvOpGroupNonUniformAny = 335, 110801e04c3fSmrg SpvOpGroupNonUniformAllEqual = 336, 110901e04c3fSmrg SpvOpGroupNonUniformBroadcast = 337, 111001e04c3fSmrg SpvOpGroupNonUniformBroadcastFirst = 338, 111101e04c3fSmrg SpvOpGroupNonUniformBallot = 339, 111201e04c3fSmrg SpvOpGroupNonUniformInverseBallot = 340, 111301e04c3fSmrg SpvOpGroupNonUniformBallotBitExtract = 341, 111401e04c3fSmrg SpvOpGroupNonUniformBallotBitCount = 342, 111501e04c3fSmrg SpvOpGroupNonUniformBallotFindLSB = 343, 111601e04c3fSmrg SpvOpGroupNonUniformBallotFindMSB = 344, 111701e04c3fSmrg SpvOpGroupNonUniformShuffle = 345, 111801e04c3fSmrg SpvOpGroupNonUniformShuffleXor = 346, 111901e04c3fSmrg SpvOpGroupNonUniformShuffleUp = 347, 112001e04c3fSmrg SpvOpGroupNonUniformShuffleDown = 348, 112101e04c3fSmrg SpvOpGroupNonUniformIAdd = 349, 112201e04c3fSmrg SpvOpGroupNonUniformFAdd = 350, 112301e04c3fSmrg SpvOpGroupNonUniformIMul = 351, 112401e04c3fSmrg SpvOpGroupNonUniformFMul = 352, 112501e04c3fSmrg SpvOpGroupNonUniformSMin = 353, 112601e04c3fSmrg SpvOpGroupNonUniformUMin = 354, 112701e04c3fSmrg SpvOpGroupNonUniformFMin = 355, 112801e04c3fSmrg SpvOpGroupNonUniformSMax = 356, 112901e04c3fSmrg SpvOpGroupNonUniformUMax = 357, 113001e04c3fSmrg SpvOpGroupNonUniformFMax = 358, 113101e04c3fSmrg SpvOpGroupNonUniformBitwiseAnd = 359, 113201e04c3fSmrg SpvOpGroupNonUniformBitwiseOr = 360, 113301e04c3fSmrg SpvOpGroupNonUniformBitwiseXor = 361, 113401e04c3fSmrg SpvOpGroupNonUniformLogicalAnd = 362, 113501e04c3fSmrg SpvOpGroupNonUniformLogicalOr = 363, 113601e04c3fSmrg SpvOpGroupNonUniformLogicalXor = 364, 113701e04c3fSmrg SpvOpGroupNonUniformQuadBroadcast = 365, 113801e04c3fSmrg SpvOpGroupNonUniformQuadSwap = 366, 113901e04c3fSmrg SpvOpSubgroupBallotKHR = 4421, 114001e04c3fSmrg SpvOpSubgroupFirstInvocationKHR = 4422, 114101e04c3fSmrg SpvOpSubgroupAllKHR = 4428, 114201e04c3fSmrg SpvOpSubgroupAnyKHR = 4429, 114301e04c3fSmrg SpvOpSubgroupAllEqualKHR = 4430, 114401e04c3fSmrg SpvOpSubgroupReadInvocationKHR = 4432, 114501e04c3fSmrg SpvOpGroupIAddNonUniformAMD = 5000, 114601e04c3fSmrg SpvOpGroupFAddNonUniformAMD = 5001, 114701e04c3fSmrg SpvOpGroupFMinNonUniformAMD = 5002, 114801e04c3fSmrg SpvOpGroupUMinNonUniformAMD = 5003, 114901e04c3fSmrg SpvOpGroupSMinNonUniformAMD = 5004, 115001e04c3fSmrg SpvOpGroupFMaxNonUniformAMD = 5005, 115101e04c3fSmrg SpvOpGroupUMaxNonUniformAMD = 5006, 115201e04c3fSmrg SpvOpGroupSMaxNonUniformAMD = 5007, 115301e04c3fSmrg SpvOpFragmentMaskFetchAMD = 5011, 115401e04c3fSmrg SpvOpFragmentFetchAMD = 5012, 115501e04c3fSmrg SpvOpImageSampleFootprintNV = 5283, 115601e04c3fSmrg SpvOpGroupNonUniformPartitionNV = 5296, 115701e04c3fSmrg SpvOpWritePackedPrimitiveIndices4x8NV = 5299, 115801e04c3fSmrg SpvOpReportIntersectionNVX = 5334, 115901e04c3fSmrg SpvOpIgnoreIntersectionNVX = 5335, 116001e04c3fSmrg SpvOpTerminateRayNVX = 5336, 116101e04c3fSmrg SpvOpTraceNVX = 5337, 116201e04c3fSmrg SpvOpTypeAccelerationStructureNVX = 5341, 116301e04c3fSmrg SpvOpSubgroupShuffleINTEL = 5571, 116401e04c3fSmrg SpvOpSubgroupShuffleDownINTEL = 5572, 116501e04c3fSmrg SpvOpSubgroupShuffleUpINTEL = 5573, 116601e04c3fSmrg SpvOpSubgroupShuffleXorINTEL = 5574, 116701e04c3fSmrg SpvOpSubgroupBlockReadINTEL = 5575, 116801e04c3fSmrg SpvOpSubgroupBlockWriteINTEL = 5576, 116901e04c3fSmrg SpvOpSubgroupImageBlockReadINTEL = 5577, 117001e04c3fSmrg SpvOpSubgroupImageBlockWriteINTEL = 5578, 117101e04c3fSmrg SpvOpDecorateStringGOOGLE = 5632, 117201e04c3fSmrg SpvOpMemberDecorateStringGOOGLE = 5633, 117301e04c3fSmrg SpvOpMax = 0x7fffffff, 117401e04c3fSmrg} SpvOp; 117501e04c3fSmrg 117601e04c3fSmrg#endif // #ifndef spirv_H 117701e04c3fSmrg 1178