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