| 1 | /* | 
| 2 | ** Copyright (c) 2014-2020 The Khronos Group Inc. | 
| 3 | **  | 
| 4 | ** Permission is hereby granted, free of charge, to any person obtaining a copy | 
| 5 | ** of this software and/or associated documentation files (the "Materials"), | 
| 6 | ** to deal in the Materials without restriction, including without limitation | 
| 7 | ** the rights to use, copy, modify, merge, publish, distribute, sublicense, | 
| 8 | ** and/or sell copies of the Materials, and to permit persons to whom the | 
| 9 | ** Materials are furnished to do so, subject to the following conditions: | 
| 10 | **  | 
| 11 | ** The above copyright notice and this permission notice shall be included in | 
| 12 | ** all copies or substantial portions of the Materials. | 
| 13 | **  | 
| 14 | ** MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS | 
| 15 | ** STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND | 
| 16 | ** HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/  | 
| 17 | **  | 
| 18 | ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS | 
| 19 | ** OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | 
| 20 | ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | 
| 21 | ** THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | 
| 22 | ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | 
| 23 | ** FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS | 
| 24 | ** IN THE MATERIALS. | 
| 25 | */ | 
| 26 |  | 
| 27 | /* | 
| 28 | ** This header is automatically generated by the same tool that creates | 
| 29 | ** the Binary Section of the SPIR-V specification. | 
| 30 | */ | 
| 31 |  | 
| 32 | /* | 
| 33 | ** Enumeration tokens for SPIR-V, in various styles: | 
| 34 | **   C, C++, C++11, JSON, Lua, Python, C#, D, Beef | 
| 35 | **  | 
| 36 | ** - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL | 
| 37 | ** - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL | 
| 38 | ** - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL | 
| 39 | ** - Lua will use tables, e.g.: spv.SourceLanguage.GLSL | 
| 40 | ** - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] | 
| 41 | ** - C# will use enum classes in the Specification class located in the "Spv" namespace, | 
| 42 | **     e.g.: Spv.Specification.SourceLanguage.GLSL | 
| 43 | ** - D will have tokens under the "spv" module, e.g: spv.SourceLanguage.GLSL | 
| 44 | ** - Beef will use enum classes in the Specification class located in the "Spv" namespace, | 
| 45 | **     e.g.: Spv.Specification.SourceLanguage.GLSL | 
| 46 | **  | 
| 47 | ** Some tokens act like mask values, which can be OR'd together, | 
| 48 | ** while others are mutually exclusive.  The mask-like ones have | 
| 49 | ** "Mask" in their name, and a parallel enum that has the shift | 
| 50 | ** amount (1 << x) for each corresponding enumerant. | 
| 51 | */ | 
| 52 |  | 
| 53 | #ifndef spirv_H | 
| 54 | #define spirv_H | 
| 55 |  | 
| 56 | typedef unsigned int SpvId; | 
| 57 |  | 
| 58 | #define SPV_VERSION 0x10600 | 
| 59 | #define SPV_REVISION 1 | 
| 60 |  | 
| 61 | static const unsigned int SpvMagicNumber = 0x07230203; | 
| 62 | static const unsigned int SpvVersion = 0x00010600; | 
| 63 | static const unsigned int SpvRevision = 1; | 
| 64 | static const unsigned int SpvOpCodeMask = 0xffff; | 
| 65 | static const unsigned int SpvWordCountShift = 16; | 
| 66 |  | 
| 67 | typedef enum SpvSourceLanguage_ { | 
| 68 |     SpvSourceLanguageUnknown = 0, | 
| 69 |     SpvSourceLanguageESSL = 1, | 
| 70 |     SpvSourceLanguageGLSL = 2, | 
| 71 |     SpvSourceLanguageOpenCL_C = 3, | 
| 72 |     SpvSourceLanguageOpenCL_CPP = 4, | 
| 73 |     SpvSourceLanguageHLSL = 5, | 
| 74 |     SpvSourceLanguageCPP_for_OpenCL = 6, | 
| 75 |     SpvSourceLanguageSYCL = 7, | 
| 76 |     SpvSourceLanguageMax = 0x7fffffff, | 
| 77 | } SpvSourceLanguage; | 
| 78 |  | 
| 79 | typedef enum SpvExecutionModel_ { | 
| 80 |     SpvExecutionModelVertex = 0, | 
| 81 |     SpvExecutionModelTessellationControl = 1, | 
| 82 |     SpvExecutionModelTessellationEvaluation = 2, | 
| 83 |     SpvExecutionModelGeometry = 3, | 
| 84 |     SpvExecutionModelFragment = 4, | 
| 85 |     SpvExecutionModelGLCompute = 5, | 
| 86 |     SpvExecutionModelKernel = 6, | 
| 87 |     SpvExecutionModelTaskNV = 5267, | 
| 88 |     SpvExecutionModelMeshNV = 5268, | 
| 89 |     SpvExecutionModelRayGenerationKHR = 5313, | 
| 90 |     SpvExecutionModelRayGenerationNV = 5313, | 
| 91 |     SpvExecutionModelIntersectionKHR = 5314, | 
| 92 |     SpvExecutionModelIntersectionNV = 5314, | 
| 93 |     SpvExecutionModelAnyHitKHR = 5315, | 
| 94 |     SpvExecutionModelAnyHitNV = 5315, | 
| 95 |     SpvExecutionModelClosestHitKHR = 5316, | 
| 96 |     SpvExecutionModelClosestHitNV = 5316, | 
| 97 |     SpvExecutionModelMissKHR = 5317, | 
| 98 |     SpvExecutionModelMissNV = 5317, | 
| 99 |     SpvExecutionModelCallableKHR = 5318, | 
| 100 |     SpvExecutionModelCallableNV = 5318, | 
| 101 |     SpvExecutionModelTaskEXT = 5364, | 
| 102 |     SpvExecutionModelMeshEXT = 5365, | 
| 103 |     SpvExecutionModelMax = 0x7fffffff, | 
| 104 | } SpvExecutionModel; | 
| 105 |  | 
| 106 | typedef enum SpvAddressingModel_ { | 
| 107 |     SpvAddressingModelLogical = 0, | 
| 108 |     SpvAddressingModelPhysical32 = 1, | 
| 109 |     SpvAddressingModelPhysical64 = 2, | 
| 110 |     SpvAddressingModelPhysicalStorageBuffer64 = 5348, | 
| 111 |     SpvAddressingModelPhysicalStorageBuffer64EXT = 5348, | 
| 112 |     SpvAddressingModelMax = 0x7fffffff, | 
| 113 | } SpvAddressingModel; | 
| 114 |  | 
| 115 | typedef enum SpvMemoryModel_ { | 
| 116 |     SpvMemoryModelSimple = 0, | 
| 117 |     SpvMemoryModelGLSL450 = 1, | 
| 118 |     SpvMemoryModelOpenCL = 2, | 
| 119 |     SpvMemoryModelVulkan = 3, | 
| 120 |     SpvMemoryModelVulkanKHR = 3, | 
| 121 |     SpvMemoryModelMax = 0x7fffffff, | 
| 122 | } SpvMemoryModel; | 
| 123 |  | 
| 124 | typedef enum SpvExecutionMode_ { | 
| 125 |     SpvExecutionModeInvocations = 0, | 
| 126 |     SpvExecutionModeSpacingEqual = 1, | 
| 127 |     SpvExecutionModeSpacingFractionalEven = 2, | 
| 128 |     SpvExecutionModeSpacingFractionalOdd = 3, | 
| 129 |     SpvExecutionModeVertexOrderCw = 4, | 
| 130 |     SpvExecutionModeVertexOrderCcw = 5, | 
| 131 |     SpvExecutionModePixelCenterInteger = 6, | 
| 132 |     SpvExecutionModeOriginUpperLeft = 7, | 
| 133 |     SpvExecutionModeOriginLowerLeft = 8, | 
| 134 |     SpvExecutionModeEarlyFragmentTests = 9, | 
| 135 |     SpvExecutionModePointMode = 10, | 
| 136 |     SpvExecutionModeXfb = 11, | 
| 137 |     SpvExecutionModeDepthReplacing = 12, | 
| 138 |     SpvExecutionModeDepthGreater = 14, | 
| 139 |     SpvExecutionModeDepthLess = 15, | 
| 140 |     SpvExecutionModeDepthUnchanged = 16, | 
| 141 |     SpvExecutionModeLocalSize = 17, | 
| 142 |     SpvExecutionModeLocalSizeHint = 18, | 
| 143 |     SpvExecutionModeInputPoints = 19, | 
| 144 |     SpvExecutionModeInputLines = 20, | 
| 145 |     SpvExecutionModeInputLinesAdjacency = 21, | 
| 146 |     SpvExecutionModeTriangles = 22, | 
| 147 |     SpvExecutionModeInputTrianglesAdjacency = 23, | 
| 148 |     SpvExecutionModeQuads = 24, | 
| 149 |     SpvExecutionModeIsolines = 25, | 
| 150 |     SpvExecutionModeOutputVertices = 26, | 
| 151 |     SpvExecutionModeOutputPoints = 27, | 
| 152 |     SpvExecutionModeOutputLineStrip = 28, | 
| 153 |     SpvExecutionModeOutputTriangleStrip = 29, | 
| 154 |     SpvExecutionModeVecTypeHint = 30, | 
| 155 |     SpvExecutionModeContractionOff = 31, | 
| 156 |     SpvExecutionModeInitializer = 33, | 
| 157 |     SpvExecutionModeFinalizer = 34, | 
| 158 |     SpvExecutionModeSubgroupSize = 35, | 
| 159 |     SpvExecutionModeSubgroupsPerWorkgroup = 36, | 
| 160 |     SpvExecutionModeSubgroupsPerWorkgroupId = 37, | 
| 161 |     SpvExecutionModeLocalSizeId = 38, | 
| 162 |     SpvExecutionModeLocalSizeHintId = 39, | 
| 163 |     SpvExecutionModeSubgroupUniformControlFlowKHR = 4421, | 
| 164 |     SpvExecutionModePostDepthCoverage = 4446, | 
| 165 |     SpvExecutionModeDenormPreserve = 4459, | 
| 166 |     SpvExecutionModeDenormFlushToZero = 4460, | 
| 167 |     SpvExecutionModeSignedZeroInfNanPreserve = 4461, | 
| 168 |     SpvExecutionModeRoundingModeRTE = 4462, | 
| 169 |     SpvExecutionModeRoundingModeRTZ = 4463, | 
| 170 |     SpvExecutionModeEarlyAndLateFragmentTestsAMD = 5017, | 
| 171 |     SpvExecutionModeStencilRefReplacingEXT = 5027, | 
| 172 |     SpvExecutionModeStencilRefUnchangedFrontAMD = 5079, | 
| 173 |     SpvExecutionModeStencilRefGreaterFrontAMD = 5080, | 
| 174 |     SpvExecutionModeStencilRefLessFrontAMD = 5081, | 
| 175 |     SpvExecutionModeStencilRefUnchangedBackAMD = 5082, | 
| 176 |     SpvExecutionModeStencilRefGreaterBackAMD = 5083, | 
| 177 |     SpvExecutionModeStencilRefLessBackAMD = 5084, | 
| 178 |     SpvExecutionModeOutputLinesEXT = 5269, | 
| 179 |     SpvExecutionModeOutputLinesNV = 5269, | 
| 180 |     SpvExecutionModeOutputPrimitivesEXT = 5270, | 
| 181 |     SpvExecutionModeOutputPrimitivesNV = 5270, | 
| 182 |     SpvExecutionModeDerivativeGroupQuadsNV = 5289, | 
| 183 |     SpvExecutionModeDerivativeGroupLinearNV = 5290, | 
| 184 |     SpvExecutionModeOutputTrianglesEXT = 5298, | 
| 185 |     SpvExecutionModeOutputTrianglesNV = 5298, | 
| 186 |     SpvExecutionModePixelInterlockOrderedEXT = 5366, | 
| 187 |     SpvExecutionModePixelInterlockUnorderedEXT = 5367, | 
| 188 |     SpvExecutionModeSampleInterlockOrderedEXT = 5368, | 
| 189 |     SpvExecutionModeSampleInterlockUnorderedEXT = 5369, | 
| 190 |     SpvExecutionModeShadingRateInterlockOrderedEXT = 5370, | 
| 191 |     SpvExecutionModeShadingRateInterlockUnorderedEXT = 5371, | 
| 192 |     SpvExecutionModeSharedLocalMemorySizeINTEL = 5618, | 
| 193 |     SpvExecutionModeRoundingModeRTPINTEL = 5620, | 
| 194 |     SpvExecutionModeRoundingModeRTNINTEL = 5621, | 
| 195 |     SpvExecutionModeFloatingPointModeALTINTEL = 5622, | 
| 196 |     SpvExecutionModeFloatingPointModeIEEEINTEL = 5623, | 
| 197 |     SpvExecutionModeMaxWorkgroupSizeINTEL = 5893, | 
| 198 |     SpvExecutionModeMaxWorkDimINTEL = 5894, | 
| 199 |     SpvExecutionModeNoGlobalOffsetINTEL = 5895, | 
| 200 |     SpvExecutionModeNumSIMDWorkitemsINTEL = 5896, | 
| 201 |     SpvExecutionModeSchedulerTargetFmaxMhzINTEL = 5903, | 
| 202 |     SpvExecutionModeNamedBarrierCountINTEL = 6417, | 
| 203 |     SpvExecutionModeMax = 0x7fffffff, | 
| 204 | } SpvExecutionMode; | 
| 205 |  | 
| 206 | typedef enum SpvStorageClass_ { | 
| 207 |     SpvStorageClassUniformConstant = 0, | 
| 208 |     SpvStorageClassInput = 1, | 
| 209 |     SpvStorageClassUniform = 2, | 
| 210 |     SpvStorageClassOutput = 3, | 
| 211 |     SpvStorageClassWorkgroup = 4, | 
| 212 |     SpvStorageClassCrossWorkgroup = 5, | 
| 213 |     SpvStorageClassPrivate = 6, | 
| 214 |     SpvStorageClassFunction = 7, | 
| 215 |     SpvStorageClassGeneric = 8, | 
| 216 |     SpvStorageClassPushConstant = 9, | 
| 217 |     SpvStorageClassAtomicCounter = 10, | 
| 218 |     SpvStorageClassImage = 11, | 
| 219 |     SpvStorageClassStorageBuffer = 12, | 
| 220 |     SpvStorageClassCallableDataKHR = 5328, | 
| 221 |     SpvStorageClassCallableDataNV = 5328, | 
| 222 |     SpvStorageClassIncomingCallableDataKHR = 5329, | 
| 223 |     SpvStorageClassIncomingCallableDataNV = 5329, | 
| 224 |     SpvStorageClassRayPayloadKHR = 5338, | 
| 225 |     SpvStorageClassRayPayloadNV = 5338, | 
| 226 |     SpvStorageClassHitAttributeKHR = 5339, | 
| 227 |     SpvStorageClassHitAttributeNV = 5339, | 
| 228 |     SpvStorageClassIncomingRayPayloadKHR = 5342, | 
| 229 |     SpvStorageClassIncomingRayPayloadNV = 5342, | 
| 230 |     SpvStorageClassShaderRecordBufferKHR = 5343, | 
| 231 |     SpvStorageClassShaderRecordBufferNV = 5343, | 
| 232 |     SpvStorageClassPhysicalStorageBuffer = 5349, | 
| 233 |     SpvStorageClassPhysicalStorageBufferEXT = 5349, | 
| 234 |     SpvStorageClassTaskPayloadWorkgroupEXT = 5402, | 
| 235 |     SpvStorageClassCodeSectionINTEL = 5605, | 
| 236 |     SpvStorageClassDeviceOnlyINTEL = 5936, | 
| 237 |     SpvStorageClassHostOnlyINTEL = 5937, | 
| 238 |     SpvStorageClassMax = 0x7fffffff, | 
| 239 | } SpvStorageClass; | 
| 240 |  | 
| 241 | typedef enum SpvDim_ { | 
| 242 |     SpvDim1D = 0, | 
| 243 |     SpvDim2D = 1, | 
| 244 |     SpvDim3D = 2, | 
| 245 |     SpvDimCube = 3, | 
| 246 |     SpvDimRect = 4, | 
| 247 |     SpvDimBuffer = 5, | 
| 248 |     SpvDimSubpassData = 6, | 
| 249 |     SpvDimMax = 0x7fffffff, | 
| 250 | } SpvDim; | 
| 251 |  | 
| 252 | typedef enum SpvSamplerAddressingMode_ { | 
| 253 |     SpvSamplerAddressingModeNone = 0, | 
| 254 |     SpvSamplerAddressingModeClampToEdge = 1, | 
| 255 |     SpvSamplerAddressingModeClamp = 2, | 
| 256 |     SpvSamplerAddressingModeRepeat = 3, | 
| 257 |     SpvSamplerAddressingModeRepeatMirrored = 4, | 
| 258 |     SpvSamplerAddressingModeMax = 0x7fffffff, | 
| 259 | } SpvSamplerAddressingMode; | 
| 260 |  | 
| 261 | typedef enum SpvSamplerFilterMode_ { | 
| 262 |     SpvSamplerFilterModeNearest = 0, | 
| 263 |     SpvSamplerFilterModeLinear = 1, | 
| 264 |     SpvSamplerFilterModeMax = 0x7fffffff, | 
| 265 | } SpvSamplerFilterMode; | 
| 266 |  | 
| 267 | typedef enum SpvImageFormat_ { | 
| 268 |     SpvImageFormatUnknown = 0, | 
| 269 |     SpvImageFormatRgba32f = 1, | 
| 270 |     SpvImageFormatRgba16f = 2, | 
| 271 |     SpvImageFormatR32f = 3, | 
| 272 |     SpvImageFormatRgba8 = 4, | 
| 273 |     SpvImageFormatRgba8Snorm = 5, | 
| 274 |     SpvImageFormatRg32f = 6, | 
| 275 |     SpvImageFormatRg16f = 7, | 
| 276 |     SpvImageFormatR11fG11fB10f = 8, | 
| 277 |     SpvImageFormatR16f = 9, | 
| 278 |     SpvImageFormatRgba16 = 10, | 
| 279 |     SpvImageFormatRgb10A2 = 11, | 
| 280 |     SpvImageFormatRg16 = 12, | 
| 281 |     SpvImageFormatRg8 = 13, | 
| 282 |     SpvImageFormatR16 = 14, | 
| 283 |     SpvImageFormatR8 = 15, | 
| 284 |     SpvImageFormatRgba16Snorm = 16, | 
| 285 |     SpvImageFormatRg16Snorm = 17, | 
| 286 |     SpvImageFormatRg8Snorm = 18, | 
| 287 |     SpvImageFormatR16Snorm = 19, | 
| 288 |     SpvImageFormatR8Snorm = 20, | 
| 289 |     SpvImageFormatRgba32i = 21, | 
| 290 |     SpvImageFormatRgba16i = 22, | 
| 291 |     SpvImageFormatRgba8i = 23, | 
| 292 |     SpvImageFormatR32i = 24, | 
| 293 |     SpvImageFormatRg32i = 25, | 
| 294 |     SpvImageFormatRg16i = 26, | 
| 295 |     SpvImageFormatRg8i = 27, | 
| 296 |     SpvImageFormatR16i = 28, | 
| 297 |     SpvImageFormatR8i = 29, | 
| 298 |     SpvImageFormatRgba32ui = 30, | 
| 299 |     SpvImageFormatRgba16ui = 31, | 
| 300 |     SpvImageFormatRgba8ui = 32, | 
| 301 |     SpvImageFormatR32ui = 33, | 
| 302 |     SpvImageFormatRgb10a2ui = 34, | 
| 303 |     SpvImageFormatRg32ui = 35, | 
| 304 |     SpvImageFormatRg16ui = 36, | 
| 305 |     SpvImageFormatRg8ui = 37, | 
| 306 |     SpvImageFormatR16ui = 38, | 
| 307 |     SpvImageFormatR8ui = 39, | 
| 308 |     SpvImageFormatR64ui = 40, | 
| 309 |     SpvImageFormatR64i = 41, | 
| 310 |     SpvImageFormatMax = 0x7fffffff, | 
| 311 | } SpvImageFormat; | 
| 312 |  | 
| 313 | typedef enum SpvImageChannelOrder_ { | 
| 314 |     SpvImageChannelOrderR = 0, | 
| 315 |     SpvImageChannelOrderA = 1, | 
| 316 |     SpvImageChannelOrderRG = 2, | 
| 317 |     SpvImageChannelOrderRA = 3, | 
| 318 |     SpvImageChannelOrderRGB = 4, | 
| 319 |     SpvImageChannelOrderRGBA = 5, | 
| 320 |     SpvImageChannelOrderBGRA = 6, | 
| 321 |     SpvImageChannelOrderARGB = 7, | 
| 322 |     SpvImageChannelOrderIntensity = 8, | 
| 323 |     SpvImageChannelOrderLuminance = 9, | 
| 324 |     SpvImageChannelOrderRx = 10, | 
| 325 |     SpvImageChannelOrderRGx = 11, | 
| 326 |     SpvImageChannelOrderRGBx = 12, | 
| 327 |     SpvImageChannelOrderDepth = 13, | 
| 328 |     SpvImageChannelOrderDepthStencil = 14, | 
| 329 |     SpvImageChannelOrdersRGB = 15, | 
| 330 |     SpvImageChannelOrdersRGBx = 16, | 
| 331 |     SpvImageChannelOrdersRGBA = 17, | 
| 332 |     SpvImageChannelOrdersBGRA = 18, | 
| 333 |     SpvImageChannelOrderABGR = 19, | 
| 334 |     SpvImageChannelOrderMax = 0x7fffffff, | 
| 335 | } SpvImageChannelOrder; | 
| 336 |  | 
| 337 | typedef enum SpvImageChannelDataType_ { | 
| 338 |     SpvImageChannelDataTypeSnormInt8 = 0, | 
| 339 |     SpvImageChannelDataTypeSnormInt16 = 1, | 
| 340 |     SpvImageChannelDataTypeUnormInt8 = 2, | 
| 341 |     SpvImageChannelDataTypeUnormInt16 = 3, | 
| 342 |     SpvImageChannelDataTypeUnormShort565 = 4, | 
| 343 |     SpvImageChannelDataTypeUnormShort555 = 5, | 
| 344 |     SpvImageChannelDataTypeUnormInt101010 = 6, | 
| 345 |     SpvImageChannelDataTypeSignedInt8 = 7, | 
| 346 |     SpvImageChannelDataTypeSignedInt16 = 8, | 
| 347 |     SpvImageChannelDataTypeSignedInt32 = 9, | 
| 348 |     SpvImageChannelDataTypeUnsignedInt8 = 10, | 
| 349 |     SpvImageChannelDataTypeUnsignedInt16 = 11, | 
| 350 |     SpvImageChannelDataTypeUnsignedInt32 = 12, | 
| 351 |     SpvImageChannelDataTypeHalfFloat = 13, | 
| 352 |     SpvImageChannelDataTypeFloat = 14, | 
| 353 |     SpvImageChannelDataTypeUnormInt24 = 15, | 
| 354 |     SpvImageChannelDataTypeUnormInt101010_2 = 16, | 
| 355 |     SpvImageChannelDataTypeMax = 0x7fffffff, | 
| 356 | } SpvImageChannelDataType; | 
| 357 |  | 
| 358 | typedef enum SpvImageOperandsShift_ { | 
| 359 |     SpvImageOperandsBiasShift = 0, | 
| 360 |     SpvImageOperandsLodShift = 1, | 
| 361 |     SpvImageOperandsGradShift = 2, | 
| 362 |     SpvImageOperandsConstOffsetShift = 3, | 
| 363 |     SpvImageOperandsOffsetShift = 4, | 
| 364 |     SpvImageOperandsConstOffsetsShift = 5, | 
| 365 |     SpvImageOperandsSampleShift = 6, | 
| 366 |     SpvImageOperandsMinLodShift = 7, | 
| 367 |     SpvImageOperandsMakeTexelAvailableShift = 8, | 
| 368 |     SpvImageOperandsMakeTexelAvailableKHRShift = 8, | 
| 369 |     SpvImageOperandsMakeTexelVisibleShift = 9, | 
| 370 |     SpvImageOperandsMakeTexelVisibleKHRShift = 9, | 
| 371 |     SpvImageOperandsNonPrivateTexelShift = 10, | 
| 372 |     SpvImageOperandsNonPrivateTexelKHRShift = 10, | 
| 373 |     SpvImageOperandsVolatileTexelShift = 11, | 
| 374 |     SpvImageOperandsVolatileTexelKHRShift = 11, | 
| 375 |     SpvImageOperandsSignExtendShift = 12, | 
| 376 |     SpvImageOperandsZeroExtendShift = 13, | 
| 377 |     SpvImageOperandsNontemporalShift = 14, | 
| 378 |     SpvImageOperandsOffsetsShift = 16, | 
| 379 |     SpvImageOperandsMax = 0x7fffffff, | 
| 380 | } SpvImageOperandsShift; | 
| 381 |  | 
| 382 | typedef enum SpvImageOperandsMask_ { | 
| 383 |     SpvImageOperandsMaskNone = 0, | 
| 384 |     SpvImageOperandsBiasMask = 0x00000001, | 
| 385 |     SpvImageOperandsLodMask = 0x00000002, | 
| 386 |     SpvImageOperandsGradMask = 0x00000004, | 
| 387 |     SpvImageOperandsConstOffsetMask = 0x00000008, | 
| 388 |     SpvImageOperandsOffsetMask = 0x00000010, | 
| 389 |     SpvImageOperandsConstOffsetsMask = 0x00000020, | 
| 390 |     SpvImageOperandsSampleMask = 0x00000040, | 
| 391 |     SpvImageOperandsMinLodMask = 0x00000080, | 
| 392 |     SpvImageOperandsMakeTexelAvailableMask = 0x00000100, | 
| 393 |     SpvImageOperandsMakeTexelAvailableKHRMask = 0x00000100, | 
| 394 |     SpvImageOperandsMakeTexelVisibleMask = 0x00000200, | 
| 395 |     SpvImageOperandsMakeTexelVisibleKHRMask = 0x00000200, | 
| 396 |     SpvImageOperandsNonPrivateTexelMask = 0x00000400, | 
| 397 |     SpvImageOperandsNonPrivateTexelKHRMask = 0x00000400, | 
| 398 |     SpvImageOperandsVolatileTexelMask = 0x00000800, | 
| 399 |     SpvImageOperandsVolatileTexelKHRMask = 0x00000800, | 
| 400 |     SpvImageOperandsSignExtendMask = 0x00001000, | 
| 401 |     SpvImageOperandsZeroExtendMask = 0x00002000, | 
| 402 |     SpvImageOperandsNontemporalMask = 0x00004000, | 
| 403 |     SpvImageOperandsOffsetsMask = 0x00010000, | 
| 404 | } SpvImageOperandsMask; | 
| 405 |  | 
| 406 | typedef enum SpvFPFastMathModeShift_ { | 
| 407 |     SpvFPFastMathModeNotNaNShift = 0, | 
| 408 |     SpvFPFastMathModeNotInfShift = 1, | 
| 409 |     SpvFPFastMathModeNSZShift = 2, | 
| 410 |     SpvFPFastMathModeAllowRecipShift = 3, | 
| 411 |     SpvFPFastMathModeFastShift = 4, | 
| 412 |     SpvFPFastMathModeAllowContractFastINTELShift = 16, | 
| 413 |     SpvFPFastMathModeAllowReassocINTELShift = 17, | 
| 414 |     SpvFPFastMathModeMax = 0x7fffffff, | 
| 415 | } SpvFPFastMathModeShift; | 
| 416 |  | 
| 417 | typedef enum SpvFPFastMathModeMask_ { | 
| 418 |     SpvFPFastMathModeMaskNone = 0, | 
| 419 |     SpvFPFastMathModeNotNaNMask = 0x00000001, | 
| 420 |     SpvFPFastMathModeNotInfMask = 0x00000002, | 
| 421 |     SpvFPFastMathModeNSZMask = 0x00000004, | 
| 422 |     SpvFPFastMathModeAllowRecipMask = 0x00000008, | 
| 423 |     SpvFPFastMathModeFastMask = 0x00000010, | 
| 424 |     SpvFPFastMathModeAllowContractFastINTELMask = 0x00010000, | 
| 425 |     SpvFPFastMathModeAllowReassocINTELMask = 0x00020000, | 
| 426 | } SpvFPFastMathModeMask; | 
| 427 |  | 
| 428 | typedef enum SpvFPRoundingMode_ { | 
| 429 |     SpvFPRoundingModeRTE = 0, | 
| 430 |     SpvFPRoundingModeRTZ = 1, | 
| 431 |     SpvFPRoundingModeRTP = 2, | 
| 432 |     SpvFPRoundingModeRTN = 3, | 
| 433 |     SpvFPRoundingModeMax = 0x7fffffff, | 
| 434 | } SpvFPRoundingMode; | 
| 435 |  | 
| 436 | typedef enum SpvLinkageType_ { | 
| 437 |     SpvLinkageTypeExport = 0, | 
| 438 |     SpvLinkageTypeImport = 1, | 
| 439 |     SpvLinkageTypeLinkOnceODR = 2, | 
| 440 |     SpvLinkageTypeMax = 0x7fffffff, | 
| 441 | } SpvLinkageType; | 
| 442 |  | 
| 443 | typedef enum SpvAccessQualifier_ { | 
| 444 |     SpvAccessQualifierReadOnly = 0, | 
| 445 |     SpvAccessQualifierWriteOnly = 1, | 
| 446 |     SpvAccessQualifierReadWrite = 2, | 
| 447 |     SpvAccessQualifierMax = 0x7fffffff, | 
| 448 | } SpvAccessQualifier; | 
| 449 |  | 
| 450 | typedef enum SpvFunctionParameterAttribute_ { | 
| 451 |     SpvFunctionParameterAttributeZext = 0, | 
| 452 |     SpvFunctionParameterAttributeSext = 1, | 
| 453 |     SpvFunctionParameterAttributeByVal = 2, | 
| 454 |     SpvFunctionParameterAttributeSret = 3, | 
| 455 |     SpvFunctionParameterAttributeNoAlias = 4, | 
| 456 |     SpvFunctionParameterAttributeNoCapture = 5, | 
| 457 |     SpvFunctionParameterAttributeNoWrite = 6, | 
| 458 |     SpvFunctionParameterAttributeNoReadWrite = 7, | 
| 459 |     SpvFunctionParameterAttributeMax = 0x7fffffff, | 
| 460 | } SpvFunctionParameterAttribute; | 
| 461 |  | 
| 462 | typedef enum SpvDecoration_ { | 
| 463 |     SpvDecorationRelaxedPrecision = 0, | 
| 464 |     SpvDecorationSpecId = 1, | 
| 465 |     SpvDecorationBlock = 2, | 
| 466 |     SpvDecorationBufferBlock = 3, | 
| 467 |     SpvDecorationRowMajor = 4, | 
| 468 |     SpvDecorationColMajor = 5, | 
| 469 |     SpvDecorationArrayStride = 6, | 
| 470 |     SpvDecorationMatrixStride = 7, | 
| 471 |     SpvDecorationGLSLShared = 8, | 
| 472 |     SpvDecorationGLSLPacked = 9, | 
| 473 |     SpvDecorationCPacked = 10, | 
| 474 |     SpvDecorationBuiltIn = 11, | 
| 475 |     SpvDecorationNoPerspective = 13, | 
| 476 |     SpvDecorationFlat = 14, | 
| 477 |     SpvDecorationPatch = 15, | 
| 478 |     SpvDecorationCentroid = 16, | 
| 479 |     SpvDecorationSample = 17, | 
| 480 |     SpvDecorationInvariant = 18, | 
| 481 |     SpvDecorationRestrict = 19, | 
| 482 |     SpvDecorationAliased = 20, | 
| 483 |     SpvDecorationVolatile = 21, | 
| 484 |     SpvDecorationConstant = 22, | 
| 485 |     SpvDecorationCoherent = 23, | 
| 486 |     SpvDecorationNonWritable = 24, | 
| 487 |     SpvDecorationNonReadable = 25, | 
| 488 |     SpvDecorationUniform = 26, | 
| 489 |     SpvDecorationUniformId = 27, | 
| 490 |     SpvDecorationSaturatedConversion = 28, | 
| 491 |     SpvDecorationStream = 29, | 
| 492 |     SpvDecorationLocation = 30, | 
| 493 |     SpvDecorationComponent = 31, | 
| 494 |     SpvDecorationIndex = 32, | 
| 495 |     SpvDecorationBinding = 33, | 
| 496 |     SpvDecorationDescriptorSet = 34, | 
| 497 |     SpvDecorationOffset = 35, | 
| 498 |     SpvDecorationXfbBuffer = 36, | 
| 499 |     SpvDecorationXfbStride = 37, | 
| 500 |     SpvDecorationFuncParamAttr = 38, | 
| 501 |     SpvDecorationFPRoundingMode = 39, | 
| 502 |     SpvDecorationFPFastMathMode = 40, | 
| 503 |     SpvDecorationLinkageAttributes = 41, | 
| 504 |     SpvDecorationNoContraction = 42, | 
| 505 |     SpvDecorationInputAttachmentIndex = 43, | 
| 506 |     SpvDecorationAlignment = 44, | 
| 507 |     SpvDecorationMaxByteOffset = 45, | 
| 508 |     SpvDecorationAlignmentId = 46, | 
| 509 |     SpvDecorationMaxByteOffsetId = 47, | 
| 510 |     SpvDecorationNoSignedWrap = 4469, | 
| 511 |     SpvDecorationNoUnsignedWrap = 4470, | 
| 512 |     SpvDecorationWeightTextureQCOM = 4487, | 
| 513 |     SpvDecorationBlockMatchTextureQCOM = 4488, | 
| 514 |     SpvDecorationExplicitInterpAMD = 4999, | 
| 515 |     SpvDecorationOverrideCoverageNV = 5248, | 
| 516 |     SpvDecorationPassthroughNV = 5250, | 
| 517 |     SpvDecorationViewportRelativeNV = 5252, | 
| 518 |     SpvDecorationSecondaryViewportRelativeNV = 5256, | 
| 519 |     SpvDecorationPerPrimitiveEXT = 5271, | 
| 520 |     SpvDecorationPerPrimitiveNV = 5271, | 
| 521 |     SpvDecorationPerViewNV = 5272, | 
| 522 |     SpvDecorationPerTaskNV = 5273, | 
| 523 |     SpvDecorationPerVertexKHR = 5285, | 
| 524 |     SpvDecorationPerVertexNV = 5285, | 
| 525 |     SpvDecorationNonUniform = 5300, | 
| 526 |     SpvDecorationNonUniformEXT = 5300, | 
| 527 |     SpvDecorationRestrictPointer = 5355, | 
| 528 |     SpvDecorationRestrictPointerEXT = 5355, | 
| 529 |     SpvDecorationAliasedPointer = 5356, | 
| 530 |     SpvDecorationAliasedPointerEXT = 5356, | 
| 531 |     SpvDecorationBindlessSamplerNV = 5398, | 
| 532 |     SpvDecorationBindlessImageNV = 5399, | 
| 533 |     SpvDecorationBoundSamplerNV = 5400, | 
| 534 |     SpvDecorationBoundImageNV = 5401, | 
| 535 |     SpvDecorationSIMTCallINTEL = 5599, | 
| 536 |     SpvDecorationReferencedIndirectlyINTEL = 5602, | 
| 537 |     SpvDecorationClobberINTEL = 5607, | 
| 538 |     SpvDecorationSideEffectsINTEL = 5608, | 
| 539 |     SpvDecorationVectorComputeVariableINTEL = 5624, | 
| 540 |     SpvDecorationFuncParamIOKindINTEL = 5625, | 
| 541 |     SpvDecorationVectorComputeFunctionINTEL = 5626, | 
| 542 |     SpvDecorationStackCallINTEL = 5627, | 
| 543 |     SpvDecorationGlobalVariableOffsetINTEL = 5628, | 
| 544 |     SpvDecorationCounterBuffer = 5634, | 
| 545 |     SpvDecorationHlslCounterBufferGOOGLE = 5634, | 
| 546 |     SpvDecorationHlslSemanticGOOGLE = 5635, | 
| 547 |     SpvDecorationUserSemantic = 5635, | 
| 548 |     SpvDecorationUserTypeGOOGLE = 5636, | 
| 549 |     SpvDecorationFunctionRoundingModeINTEL = 5822, | 
| 550 |     SpvDecorationFunctionDenormModeINTEL = 5823, | 
| 551 |     SpvDecorationRegisterINTEL = 5825, | 
| 552 |     SpvDecorationMemoryINTEL = 5826, | 
| 553 |     SpvDecorationNumbanksINTEL = 5827, | 
| 554 |     SpvDecorationBankwidthINTEL = 5828, | 
| 555 |     SpvDecorationMaxPrivateCopiesINTEL = 5829, | 
| 556 |     SpvDecorationSinglepumpINTEL = 5830, | 
| 557 |     SpvDecorationDoublepumpINTEL = 5831, | 
| 558 |     SpvDecorationMaxReplicatesINTEL = 5832, | 
| 559 |     SpvDecorationSimpleDualPortINTEL = 5833, | 
| 560 |     SpvDecorationMergeINTEL = 5834, | 
| 561 |     SpvDecorationBankBitsINTEL = 5835, | 
| 562 |     SpvDecorationForcePow2DepthINTEL = 5836, | 
| 563 |     SpvDecorationBurstCoalesceINTEL = 5899, | 
| 564 |     SpvDecorationCacheSizeINTEL = 5900, | 
| 565 |     SpvDecorationDontStaticallyCoalesceINTEL = 5901, | 
| 566 |     SpvDecorationPrefetchINTEL = 5902, | 
| 567 |     SpvDecorationStallEnableINTEL = 5905, | 
| 568 |     SpvDecorationFuseLoopsInFunctionINTEL = 5907, | 
| 569 |     SpvDecorationAliasScopeINTEL = 5914, | 
| 570 |     SpvDecorationNoAliasINTEL = 5915, | 
| 571 |     SpvDecorationBufferLocationINTEL = 5921, | 
| 572 |     SpvDecorationIOPipeStorageINTEL = 5944, | 
| 573 |     SpvDecorationFunctionFloatingPointModeINTEL = 6080, | 
| 574 |     SpvDecorationSingleElementVectorINTEL = 6085, | 
| 575 |     SpvDecorationVectorComputeCallableFunctionINTEL = 6087, | 
| 576 |     SpvDecorationMediaBlockIOINTEL = 6140, | 
| 577 |     SpvDecorationMax = 0x7fffffff, | 
| 578 | } SpvDecoration; | 
| 579 |  | 
| 580 | typedef enum SpvBuiltIn_ { | 
| 581 |     SpvBuiltInPosition = 0, | 
| 582 |     SpvBuiltInPointSize = 1, | 
| 583 |     SpvBuiltInClipDistance = 3, | 
| 584 |     SpvBuiltInCullDistance = 4, | 
| 585 |     SpvBuiltInVertexId = 5, | 
| 586 |     SpvBuiltInInstanceId = 6, | 
| 587 |     SpvBuiltInPrimitiveId = 7, | 
| 588 |     SpvBuiltInInvocationId = 8, | 
| 589 |     SpvBuiltInLayer = 9, | 
| 590 |     SpvBuiltInViewportIndex = 10, | 
| 591 |     SpvBuiltInTessLevelOuter = 11, | 
| 592 |     SpvBuiltInTessLevelInner = 12, | 
| 593 |     SpvBuiltInTessCoord = 13, | 
| 594 |     SpvBuiltInPatchVertices = 14, | 
| 595 |     SpvBuiltInFragCoord = 15, | 
| 596 |     SpvBuiltInPointCoord = 16, | 
| 597 |     SpvBuiltInFrontFacing = 17, | 
| 598 |     SpvBuiltInSampleId = 18, | 
| 599 |     SpvBuiltInSamplePosition = 19, | 
| 600 |     SpvBuiltInSampleMask = 20, | 
| 601 |     SpvBuiltInFragDepth = 22, | 
| 602 |     SpvBuiltInHelperInvocation = 23, | 
| 603 |     SpvBuiltInNumWorkgroups = 24, | 
| 604 |     SpvBuiltInWorkgroupSize = 25, | 
| 605 |     SpvBuiltInWorkgroupId = 26, | 
| 606 |     SpvBuiltInLocalInvocationId = 27, | 
| 607 |     SpvBuiltInGlobalInvocationId = 28, | 
| 608 |     SpvBuiltInLocalInvocationIndex = 29, | 
| 609 |     SpvBuiltInWorkDim = 30, | 
| 610 |     SpvBuiltInGlobalSize = 31, | 
| 611 |     SpvBuiltInEnqueuedWorkgroupSize = 32, | 
| 612 |     SpvBuiltInGlobalOffset = 33, | 
| 613 |     SpvBuiltInGlobalLinearId = 34, | 
| 614 |     SpvBuiltInSubgroupSize = 36, | 
| 615 |     SpvBuiltInSubgroupMaxSize = 37, | 
| 616 |     SpvBuiltInNumSubgroups = 38, | 
| 617 |     SpvBuiltInNumEnqueuedSubgroups = 39, | 
| 618 |     SpvBuiltInSubgroupId = 40, | 
| 619 |     SpvBuiltInSubgroupLocalInvocationId = 41, | 
| 620 |     SpvBuiltInVertexIndex = 42, | 
| 621 |     SpvBuiltInInstanceIndex = 43, | 
| 622 |     SpvBuiltInSubgroupEqMask = 4416, | 
| 623 |     SpvBuiltInSubgroupEqMaskKHR = 4416, | 
| 624 |     SpvBuiltInSubgroupGeMask = 4417, | 
| 625 |     SpvBuiltInSubgroupGeMaskKHR = 4417, | 
| 626 |     SpvBuiltInSubgroupGtMask = 4418, | 
| 627 |     SpvBuiltInSubgroupGtMaskKHR = 4418, | 
| 628 |     SpvBuiltInSubgroupLeMask = 4419, | 
| 629 |     SpvBuiltInSubgroupLeMaskKHR = 4419, | 
| 630 |     SpvBuiltInSubgroupLtMask = 4420, | 
| 631 |     SpvBuiltInSubgroupLtMaskKHR = 4420, | 
| 632 |     SpvBuiltInBaseVertex = 4424, | 
| 633 |     SpvBuiltInBaseInstance = 4425, | 
| 634 |     SpvBuiltInDrawIndex = 4426, | 
| 635 |     SpvBuiltInPrimitiveShadingRateKHR = 4432, | 
| 636 |     SpvBuiltInDeviceIndex = 4438, | 
| 637 |     SpvBuiltInViewIndex = 4440, | 
| 638 |     SpvBuiltInShadingRateKHR = 4444, | 
| 639 |     SpvBuiltInBaryCoordNoPerspAMD = 4992, | 
| 640 |     SpvBuiltInBaryCoordNoPerspCentroidAMD = 4993, | 
| 641 |     SpvBuiltInBaryCoordNoPerspSampleAMD = 4994, | 
| 642 |     SpvBuiltInBaryCoordSmoothAMD = 4995, | 
| 643 |     SpvBuiltInBaryCoordSmoothCentroidAMD = 4996, | 
| 644 |     SpvBuiltInBaryCoordSmoothSampleAMD = 4997, | 
| 645 |     SpvBuiltInBaryCoordPullModelAMD = 4998, | 
| 646 |     SpvBuiltInFragStencilRefEXT = 5014, | 
| 647 |     SpvBuiltInViewportMaskNV = 5253, | 
| 648 |     SpvBuiltInSecondaryPositionNV = 5257, | 
| 649 |     SpvBuiltInSecondaryViewportMaskNV = 5258, | 
| 650 |     SpvBuiltInPositionPerViewNV = 5261, | 
| 651 |     SpvBuiltInViewportMaskPerViewNV = 5262, | 
| 652 |     SpvBuiltInFullyCoveredEXT = 5264, | 
| 653 |     SpvBuiltInTaskCountNV = 5274, | 
| 654 |     SpvBuiltInPrimitiveCountNV = 5275, | 
| 655 |     SpvBuiltInPrimitiveIndicesNV = 5276, | 
| 656 |     SpvBuiltInClipDistancePerViewNV = 5277, | 
| 657 |     SpvBuiltInCullDistancePerViewNV = 5278, | 
| 658 |     SpvBuiltInLayerPerViewNV = 5279, | 
| 659 |     SpvBuiltInMeshViewCountNV = 5280, | 
| 660 |     SpvBuiltInMeshViewIndicesNV = 5281, | 
| 661 |     SpvBuiltInBaryCoordKHR = 5286, | 
| 662 |     SpvBuiltInBaryCoordNV = 5286, | 
| 663 |     SpvBuiltInBaryCoordNoPerspKHR = 5287, | 
| 664 |     SpvBuiltInBaryCoordNoPerspNV = 5287, | 
| 665 |     SpvBuiltInFragSizeEXT = 5292, | 
| 666 |     SpvBuiltInFragmentSizeNV = 5292, | 
| 667 |     SpvBuiltInFragInvocationCountEXT = 5293, | 
| 668 |     SpvBuiltInInvocationsPerPixelNV = 5293, | 
| 669 |     SpvBuiltInPrimitivePointIndicesEXT = 5294, | 
| 670 |     SpvBuiltInPrimitiveLineIndicesEXT = 5295, | 
| 671 |     SpvBuiltInPrimitiveTriangleIndicesEXT = 5296, | 
| 672 |     SpvBuiltInCullPrimitiveEXT = 5299, | 
| 673 |     SpvBuiltInLaunchIdKHR = 5319, | 
| 674 |     SpvBuiltInLaunchIdNV = 5319, | 
| 675 |     SpvBuiltInLaunchSizeKHR = 5320, | 
| 676 |     SpvBuiltInLaunchSizeNV = 5320, | 
| 677 |     SpvBuiltInWorldRayOriginKHR = 5321, | 
| 678 |     SpvBuiltInWorldRayOriginNV = 5321, | 
| 679 |     SpvBuiltInWorldRayDirectionKHR = 5322, | 
| 680 |     SpvBuiltInWorldRayDirectionNV = 5322, | 
| 681 |     SpvBuiltInObjectRayOriginKHR = 5323, | 
| 682 |     SpvBuiltInObjectRayOriginNV = 5323, | 
| 683 |     SpvBuiltInObjectRayDirectionKHR = 5324, | 
| 684 |     SpvBuiltInObjectRayDirectionNV = 5324, | 
| 685 |     SpvBuiltInRayTminKHR = 5325, | 
| 686 |     SpvBuiltInRayTminNV = 5325, | 
| 687 |     SpvBuiltInRayTmaxKHR = 5326, | 
| 688 |     SpvBuiltInRayTmaxNV = 5326, | 
| 689 |     SpvBuiltInInstanceCustomIndexKHR = 5327, | 
| 690 |     SpvBuiltInInstanceCustomIndexNV = 5327, | 
| 691 |     SpvBuiltInObjectToWorldKHR = 5330, | 
| 692 |     SpvBuiltInObjectToWorldNV = 5330, | 
| 693 |     SpvBuiltInWorldToObjectKHR = 5331, | 
| 694 |     SpvBuiltInWorldToObjectNV = 5331, | 
| 695 |     SpvBuiltInHitTNV = 5332, | 
| 696 |     SpvBuiltInHitKindKHR = 5333, | 
| 697 |     SpvBuiltInHitKindNV = 5333, | 
| 698 |     SpvBuiltInCurrentRayTimeNV = 5334, | 
| 699 |     SpvBuiltInIncomingRayFlagsKHR = 5351, | 
| 700 |     SpvBuiltInIncomingRayFlagsNV = 5351, | 
| 701 |     SpvBuiltInRayGeometryIndexKHR = 5352, | 
| 702 |     SpvBuiltInWarpsPerSMNV = 5374, | 
| 703 |     SpvBuiltInSMCountNV = 5375, | 
| 704 |     SpvBuiltInWarpIDNV = 5376, | 
| 705 |     SpvBuiltInSMIDNV = 5377, | 
| 706 |     SpvBuiltInCullMaskKHR = 6021, | 
| 707 |     SpvBuiltInMax = 0x7fffffff, | 
| 708 | } SpvBuiltIn; | 
| 709 |  | 
| 710 | typedef enum SpvSelectionControlShift_ { | 
| 711 |     SpvSelectionControlFlattenShift = 0, | 
| 712 |     SpvSelectionControlDontFlattenShift = 1, | 
| 713 |     SpvSelectionControlMax = 0x7fffffff, | 
| 714 | } SpvSelectionControlShift; | 
| 715 |  | 
| 716 | typedef enum SpvSelectionControlMask_ { | 
| 717 |     SpvSelectionControlMaskNone = 0, | 
| 718 |     SpvSelectionControlFlattenMask = 0x00000001, | 
| 719 |     SpvSelectionControlDontFlattenMask = 0x00000002, | 
| 720 | } SpvSelectionControlMask; | 
| 721 |  | 
| 722 | typedef enum SpvLoopControlShift_ { | 
| 723 |     SpvLoopControlUnrollShift = 0, | 
| 724 |     SpvLoopControlDontUnrollShift = 1, | 
| 725 |     SpvLoopControlDependencyInfiniteShift = 2, | 
| 726 |     SpvLoopControlDependencyLengthShift = 3, | 
| 727 |     SpvLoopControlMinIterationsShift = 4, | 
| 728 |     SpvLoopControlMaxIterationsShift = 5, | 
| 729 |     SpvLoopControlIterationMultipleShift = 6, | 
| 730 |     SpvLoopControlPeelCountShift = 7, | 
| 731 |     SpvLoopControlPartialCountShift = 8, | 
| 732 |     SpvLoopControlInitiationIntervalINTELShift = 16, | 
| 733 |     SpvLoopControlMaxConcurrencyINTELShift = 17, | 
| 734 |     SpvLoopControlDependencyArrayINTELShift = 18, | 
| 735 |     SpvLoopControlPipelineEnableINTELShift = 19, | 
| 736 |     SpvLoopControlLoopCoalesceINTELShift = 20, | 
| 737 |     SpvLoopControlMaxInterleavingINTELShift = 21, | 
| 738 |     SpvLoopControlSpeculatedIterationsINTELShift = 22, | 
| 739 |     SpvLoopControlNoFusionINTELShift = 23, | 
| 740 |     SpvLoopControlMax = 0x7fffffff, | 
| 741 | } SpvLoopControlShift; | 
| 742 |  | 
| 743 | typedef enum SpvLoopControlMask_ { | 
| 744 |     SpvLoopControlMaskNone = 0, | 
| 745 |     SpvLoopControlUnrollMask = 0x00000001, | 
| 746 |     SpvLoopControlDontUnrollMask = 0x00000002, | 
| 747 |     SpvLoopControlDependencyInfiniteMask = 0x00000004, | 
| 748 |     SpvLoopControlDependencyLengthMask = 0x00000008, | 
| 749 |     SpvLoopControlMinIterationsMask = 0x00000010, | 
| 750 |     SpvLoopControlMaxIterationsMask = 0x00000020, | 
| 751 |     SpvLoopControlIterationMultipleMask = 0x00000040, | 
| 752 |     SpvLoopControlPeelCountMask = 0x00000080, | 
| 753 |     SpvLoopControlPartialCountMask = 0x00000100, | 
| 754 |     SpvLoopControlInitiationIntervalINTELMask = 0x00010000, | 
| 755 |     SpvLoopControlMaxConcurrencyINTELMask = 0x00020000, | 
| 756 |     SpvLoopControlDependencyArrayINTELMask = 0x00040000, | 
| 757 |     SpvLoopControlPipelineEnableINTELMask = 0x00080000, | 
| 758 |     SpvLoopControlLoopCoalesceINTELMask = 0x00100000, | 
| 759 |     SpvLoopControlMaxInterleavingINTELMask = 0x00200000, | 
| 760 |     SpvLoopControlSpeculatedIterationsINTELMask = 0x00400000, | 
| 761 |     SpvLoopControlNoFusionINTELMask = 0x00800000, | 
| 762 | } SpvLoopControlMask; | 
| 763 |  | 
| 764 | typedef enum SpvFunctionControlShift_ { | 
| 765 |     SpvFunctionControlInlineShift = 0, | 
| 766 |     SpvFunctionControlDontInlineShift = 1, | 
| 767 |     SpvFunctionControlPureShift = 2, | 
| 768 |     SpvFunctionControlConstShift = 3, | 
| 769 |     SpvFunctionControlOptNoneINTELShift = 16, | 
| 770 |     SpvFunctionControlMax = 0x7fffffff, | 
| 771 | } SpvFunctionControlShift; | 
| 772 |  | 
| 773 | typedef enum SpvFunctionControlMask_ { | 
| 774 |     SpvFunctionControlMaskNone = 0, | 
| 775 |     SpvFunctionControlInlineMask = 0x00000001, | 
| 776 |     SpvFunctionControlDontInlineMask = 0x00000002, | 
| 777 |     SpvFunctionControlPureMask = 0x00000004, | 
| 778 |     SpvFunctionControlConstMask = 0x00000008, | 
| 779 |     SpvFunctionControlOptNoneINTELMask = 0x00010000, | 
| 780 | } SpvFunctionControlMask; | 
| 781 |  | 
| 782 | typedef enum SpvMemorySemanticsShift_ { | 
| 783 |     SpvMemorySemanticsAcquireShift = 1, | 
| 784 |     SpvMemorySemanticsReleaseShift = 2, | 
| 785 |     SpvMemorySemanticsAcquireReleaseShift = 3, | 
| 786 |     SpvMemorySemanticsSequentiallyConsistentShift = 4, | 
| 787 |     SpvMemorySemanticsUniformMemoryShift = 6, | 
| 788 |     SpvMemorySemanticsSubgroupMemoryShift = 7, | 
| 789 |     SpvMemorySemanticsWorkgroupMemoryShift = 8, | 
| 790 |     SpvMemorySemanticsCrossWorkgroupMemoryShift = 9, | 
| 791 |     SpvMemorySemanticsAtomicCounterMemoryShift = 10, | 
| 792 |     SpvMemorySemanticsImageMemoryShift = 11, | 
| 793 |     SpvMemorySemanticsOutputMemoryShift = 12, | 
| 794 |     SpvMemorySemanticsOutputMemoryKHRShift = 12, | 
| 795 |     SpvMemorySemanticsMakeAvailableShift = 13, | 
| 796 |     SpvMemorySemanticsMakeAvailableKHRShift = 13, | 
| 797 |     SpvMemorySemanticsMakeVisibleShift = 14, | 
| 798 |     SpvMemorySemanticsMakeVisibleKHRShift = 14, | 
| 799 |     SpvMemorySemanticsVolatileShift = 15, | 
| 800 |     SpvMemorySemanticsMax = 0x7fffffff, | 
| 801 | } SpvMemorySemanticsShift; | 
| 802 |  | 
| 803 | typedef enum SpvMemorySemanticsMask_ { | 
| 804 |     SpvMemorySemanticsMaskNone = 0, | 
| 805 |     SpvMemorySemanticsAcquireMask = 0x00000002, | 
| 806 |     SpvMemorySemanticsReleaseMask = 0x00000004, | 
| 807 |     SpvMemorySemanticsAcquireReleaseMask = 0x00000008, | 
| 808 |     SpvMemorySemanticsSequentiallyConsistentMask = 0x00000010, | 
| 809 |     SpvMemorySemanticsUniformMemoryMask = 0x00000040, | 
| 810 |     SpvMemorySemanticsSubgroupMemoryMask = 0x00000080, | 
| 811 |     SpvMemorySemanticsWorkgroupMemoryMask = 0x00000100, | 
| 812 |     SpvMemorySemanticsCrossWorkgroupMemoryMask = 0x00000200, | 
| 813 |     SpvMemorySemanticsAtomicCounterMemoryMask = 0x00000400, | 
| 814 |     SpvMemorySemanticsImageMemoryMask = 0x00000800, | 
| 815 |     SpvMemorySemanticsOutputMemoryMask = 0x00001000, | 
| 816 |     SpvMemorySemanticsOutputMemoryKHRMask = 0x00001000, | 
| 817 |     SpvMemorySemanticsMakeAvailableMask = 0x00002000, | 
| 818 |     SpvMemorySemanticsMakeAvailableKHRMask = 0x00002000, | 
| 819 |     SpvMemorySemanticsMakeVisibleMask = 0x00004000, | 
| 820 |     SpvMemorySemanticsMakeVisibleKHRMask = 0x00004000, | 
| 821 |     SpvMemorySemanticsVolatileMask = 0x00008000, | 
| 822 | } SpvMemorySemanticsMask; | 
| 823 |  | 
| 824 | typedef enum SpvMemoryAccessShift_ { | 
| 825 |     SpvMemoryAccessVolatileShift = 0, | 
| 826 |     SpvMemoryAccessAlignedShift = 1, | 
| 827 |     SpvMemoryAccessNontemporalShift = 2, | 
| 828 |     SpvMemoryAccessMakePointerAvailableShift = 3, | 
| 829 |     SpvMemoryAccessMakePointerAvailableKHRShift = 3, | 
| 830 |     SpvMemoryAccessMakePointerVisibleShift = 4, | 
| 831 |     SpvMemoryAccessMakePointerVisibleKHRShift = 4, | 
| 832 |     SpvMemoryAccessNonPrivatePointerShift = 5, | 
| 833 |     SpvMemoryAccessNonPrivatePointerKHRShift = 5, | 
| 834 |     SpvMemoryAccessAliasScopeINTELMaskShift = 16, | 
| 835 |     SpvMemoryAccessNoAliasINTELMaskShift = 17, | 
| 836 |     SpvMemoryAccessMax = 0x7fffffff, | 
| 837 | } SpvMemoryAccessShift; | 
| 838 |  | 
| 839 | typedef enum SpvMemoryAccessMask_ { | 
| 840 |     SpvMemoryAccessMaskNone = 0, | 
| 841 |     SpvMemoryAccessVolatileMask = 0x00000001, | 
| 842 |     SpvMemoryAccessAlignedMask = 0x00000002, | 
| 843 |     SpvMemoryAccessNontemporalMask = 0x00000004, | 
| 844 |     SpvMemoryAccessMakePointerAvailableMask = 0x00000008, | 
| 845 |     SpvMemoryAccessMakePointerAvailableKHRMask = 0x00000008, | 
| 846 |     SpvMemoryAccessMakePointerVisibleMask = 0x00000010, | 
| 847 |     SpvMemoryAccessMakePointerVisibleKHRMask = 0x00000010, | 
| 848 |     SpvMemoryAccessNonPrivatePointerMask = 0x00000020, | 
| 849 |     SpvMemoryAccessNonPrivatePointerKHRMask = 0x00000020, | 
| 850 |     SpvMemoryAccessAliasScopeINTELMaskMask = 0x00010000, | 
| 851 |     SpvMemoryAccessNoAliasINTELMaskMask = 0x00020000, | 
| 852 | } SpvMemoryAccessMask; | 
| 853 |  | 
| 854 | typedef enum SpvScope_ { | 
| 855 |     SpvScopeCrossDevice = 0, | 
| 856 |     SpvScopeDevice = 1, | 
| 857 |     SpvScopeWorkgroup = 2, | 
| 858 |     SpvScopeSubgroup = 3, | 
| 859 |     SpvScopeInvocation = 4, | 
| 860 |     SpvScopeQueueFamily = 5, | 
| 861 |     SpvScopeQueueFamilyKHR = 5, | 
| 862 |     SpvScopeShaderCallKHR = 6, | 
| 863 |     SpvScopeMax = 0x7fffffff, | 
| 864 | } SpvScope; | 
| 865 |  | 
| 866 | typedef enum SpvGroupOperation_ { | 
| 867 |     SpvGroupOperationReduce = 0, | 
| 868 |     SpvGroupOperationInclusiveScan = 1, | 
| 869 |     SpvGroupOperationExclusiveScan = 2, | 
| 870 |     SpvGroupOperationClusteredReduce = 3, | 
| 871 |     SpvGroupOperationPartitionedReduceNV = 6, | 
| 872 |     SpvGroupOperationPartitionedInclusiveScanNV = 7, | 
| 873 |     SpvGroupOperationPartitionedExclusiveScanNV = 8, | 
| 874 |     SpvGroupOperationMax = 0x7fffffff, | 
| 875 | } SpvGroupOperation; | 
| 876 |  | 
| 877 | typedef enum SpvKernelEnqueueFlags_ { | 
| 878 |     SpvKernelEnqueueFlagsNoWait = 0, | 
| 879 |     SpvKernelEnqueueFlagsWaitKernel = 1, | 
| 880 |     SpvKernelEnqueueFlagsWaitWorkGroup = 2, | 
| 881 |     SpvKernelEnqueueFlagsMax = 0x7fffffff, | 
| 882 | } SpvKernelEnqueueFlags; | 
| 883 |  | 
| 884 | typedef enum SpvKernelProfilingInfoShift_ { | 
| 885 |     SpvKernelProfilingInfoCmdExecTimeShift = 0, | 
| 886 |     SpvKernelProfilingInfoMax = 0x7fffffff, | 
| 887 | } SpvKernelProfilingInfoShift; | 
| 888 |  | 
| 889 | typedef enum SpvKernelProfilingInfoMask_ { | 
| 890 |     SpvKernelProfilingInfoMaskNone = 0, | 
| 891 |     SpvKernelProfilingInfoCmdExecTimeMask = 0x00000001, | 
| 892 | } SpvKernelProfilingInfoMask; | 
| 893 |  | 
| 894 | typedef enum SpvCapability_ { | 
| 895 |     SpvCapabilityMatrix = 0, | 
| 896 |     SpvCapabilityShader = 1, | 
| 897 |     SpvCapabilityGeometry = 2, | 
| 898 |     SpvCapabilityTessellation = 3, | 
| 899 |     SpvCapabilityAddresses = 4, | 
| 900 |     SpvCapabilityLinkage = 5, | 
| 901 |     SpvCapabilityKernel = 6, | 
| 902 |     SpvCapabilityVector16 = 7, | 
| 903 |     SpvCapabilityFloat16Buffer = 8, | 
| 904 |     SpvCapabilityFloat16 = 9, | 
| 905 |     SpvCapabilityFloat64 = 10, | 
| 906 |     SpvCapabilityInt64 = 11, | 
| 907 |     SpvCapabilityInt64Atomics = 12, | 
| 908 |     SpvCapabilityImageBasic = 13, | 
| 909 |     SpvCapabilityImageReadWrite = 14, | 
| 910 |     SpvCapabilityImageMipmap = 15, | 
| 911 |     SpvCapabilityPipes = 17, | 
| 912 |     SpvCapabilityGroups = 18, | 
| 913 |     SpvCapabilityDeviceEnqueue = 19, | 
| 914 |     SpvCapabilityLiteralSampler = 20, | 
| 915 |     SpvCapabilityAtomicStorage = 21, | 
| 916 |     SpvCapabilityInt16 = 22, | 
| 917 |     SpvCapabilityTessellationPointSize = 23, | 
| 918 |     SpvCapabilityGeometryPointSize = 24, | 
| 919 |     SpvCapabilityImageGatherExtended = 25, | 
| 920 |     SpvCapabilityStorageImageMultisample = 27, | 
| 921 |     SpvCapabilityUniformBufferArrayDynamicIndexing = 28, | 
| 922 |     SpvCapabilitySampledImageArrayDynamicIndexing = 29, | 
| 923 |     SpvCapabilityStorageBufferArrayDynamicIndexing = 30, | 
| 924 |     SpvCapabilityStorageImageArrayDynamicIndexing = 31, | 
| 925 |     SpvCapabilityClipDistance = 32, | 
| 926 |     SpvCapabilityCullDistance = 33, | 
| 927 |     SpvCapabilityImageCubeArray = 34, | 
| 928 |     SpvCapabilitySampleRateShading = 35, | 
| 929 |     SpvCapabilityImageRect = 36, | 
| 930 |     SpvCapabilitySampledRect = 37, | 
| 931 |     SpvCapabilityGenericPointer = 38, | 
| 932 |     SpvCapabilityInt8 = 39, | 
| 933 |     SpvCapabilityInputAttachment = 40, | 
| 934 |     SpvCapabilitySparseResidency = 41, | 
| 935 |     SpvCapabilityMinLod = 42, | 
| 936 |     SpvCapabilitySampled1D = 43, | 
| 937 |     SpvCapabilityImage1D = 44, | 
| 938 |     SpvCapabilitySampledCubeArray = 45, | 
| 939 |     SpvCapabilitySampledBuffer = 46, | 
| 940 |     SpvCapabilityImageBuffer = 47, | 
| 941 |     SpvCapabilityImageMSArray = 48, | 
| 942 |     SpvCapabilityStorageImageExtendedFormats = 49, | 
| 943 |     SpvCapabilityImageQuery = 50, | 
| 944 |     SpvCapabilityDerivativeControl = 51, | 
| 945 |     SpvCapabilityInterpolationFunction = 52, | 
| 946 |     SpvCapabilityTransformFeedback = 53, | 
| 947 |     SpvCapabilityGeometryStreams = 54, | 
| 948 |     SpvCapabilityStorageImageReadWithoutFormat = 55, | 
| 949 |     SpvCapabilityStorageImageWriteWithoutFormat = 56, | 
| 950 |     SpvCapabilityMultiViewport = 57, | 
| 951 |     SpvCapabilitySubgroupDispatch = 58, | 
| 952 |     SpvCapabilityNamedBarrier = 59, | 
| 953 |     SpvCapabilityPipeStorage = 60, | 
| 954 |     SpvCapabilityGroupNonUniform = 61, | 
| 955 |     SpvCapabilityGroupNonUniformVote = 62, | 
| 956 |     SpvCapabilityGroupNonUniformArithmetic = 63, | 
| 957 |     SpvCapabilityGroupNonUniformBallot = 64, | 
| 958 |     SpvCapabilityGroupNonUniformShuffle = 65, | 
| 959 |     SpvCapabilityGroupNonUniformShuffleRelative = 66, | 
| 960 |     SpvCapabilityGroupNonUniformClustered = 67, | 
| 961 |     SpvCapabilityGroupNonUniformQuad = 68, | 
| 962 |     SpvCapabilityShaderLayer = 69, | 
| 963 |     SpvCapabilityShaderViewportIndex = 70, | 
| 964 |     SpvCapabilityUniformDecoration = 71, | 
| 965 |     SpvCapabilityFragmentShadingRateKHR = 4422, | 
| 966 |     SpvCapabilitySubgroupBallotKHR = 4423, | 
| 967 |     SpvCapabilityDrawParameters = 4427, | 
| 968 |     SpvCapabilityWorkgroupMemoryExplicitLayoutKHR = 4428, | 
| 969 |     SpvCapabilityWorkgroupMemoryExplicitLayout8BitAccessKHR = 4429, | 
| 970 |     SpvCapabilityWorkgroupMemoryExplicitLayout16BitAccessKHR = 4430, | 
| 971 |     SpvCapabilitySubgroupVoteKHR = 4431, | 
| 972 |     SpvCapabilityStorageBuffer16BitAccess = 4433, | 
| 973 |     SpvCapabilityStorageUniformBufferBlock16 = 4433, | 
| 974 |     SpvCapabilityStorageUniform16 = 4434, | 
| 975 |     SpvCapabilityUniformAndStorageBuffer16BitAccess = 4434, | 
| 976 |     SpvCapabilityStoragePushConstant16 = 4435, | 
| 977 |     SpvCapabilityStorageInputOutput16 = 4436, | 
| 978 |     SpvCapabilityDeviceGroup = 4437, | 
| 979 |     SpvCapabilityMultiView = 4439, | 
| 980 |      = 4441, | 
| 981 |     SpvCapabilityVariablePointers = 4442, | 
| 982 |     SpvCapabilityAtomicStorageOps = 4445, | 
| 983 |     SpvCapabilitySampleMaskPostDepthCoverage = 4447, | 
| 984 |     SpvCapabilityStorageBuffer8BitAccess = 4448, | 
| 985 |     SpvCapabilityUniformAndStorageBuffer8BitAccess = 4449, | 
| 986 |     SpvCapabilityStoragePushConstant8 = 4450, | 
| 987 |     SpvCapabilityDenormPreserve = 4464, | 
| 988 |     SpvCapabilityDenormFlushToZero = 4465, | 
| 989 |     SpvCapabilitySignedZeroInfNanPreserve = 4466, | 
| 990 |     SpvCapabilityRoundingModeRTE = 4467, | 
| 991 |     SpvCapabilityRoundingModeRTZ = 4468, | 
| 992 |     SpvCapabilityRayQueryProvisionalKHR = 4471, | 
| 993 |     SpvCapabilityRayQueryKHR = 4472, | 
| 994 |     SpvCapabilityRayTraversalPrimitiveCullingKHR = 4478, | 
| 995 |     SpvCapabilityRayTracingKHR = 4479, | 
| 996 |     SpvCapabilityTextureSampleWeightedQCOM = 4484, | 
| 997 |     SpvCapabilityTextureBoxFilterQCOM = 4485, | 
| 998 |     SpvCapabilityTextureBlockMatchQCOM = 4486, | 
| 999 |     SpvCapabilityFloat16ImageAMD = 5008, | 
| 1000 |     SpvCapabilityImageGatherBiasLodAMD = 5009, | 
| 1001 |     SpvCapabilityFragmentMaskAMD = 5010, | 
| 1002 |     SpvCapabilityStencilExportEXT = 5013, | 
| 1003 |     SpvCapabilityImageReadWriteLodAMD = 5015, | 
| 1004 |     SpvCapabilityInt64ImageEXT = 5016, | 
| 1005 |     SpvCapabilityShaderClockKHR = 5055, | 
| 1006 |     SpvCapabilitySampleMaskOverrideCoverageNV = 5249, | 
| 1007 |     SpvCapabilityGeometryShaderPassthroughNV = 5251, | 
| 1008 |     SpvCapabilityShaderViewportIndexLayerEXT = 5254, | 
| 1009 |     SpvCapabilityShaderViewportIndexLayerNV = 5254, | 
| 1010 |     SpvCapabilityShaderViewportMaskNV = 5255, | 
| 1011 |     SpvCapabilityShaderStereoViewNV = 5259, | 
| 1012 |     SpvCapabilityPerViewAttributesNV = 5260, | 
| 1013 |     SpvCapabilityFragmentFullyCoveredEXT = 5265, | 
| 1014 |     SpvCapabilityMeshShadingNV = 5266, | 
| 1015 |      = 5282, | 
| 1016 |     SpvCapabilityMeshShadingEXT = 5283, | 
| 1017 |     SpvCapabilityFragmentBarycentricKHR = 5284, | 
| 1018 |     SpvCapabilityFragmentBarycentricNV = 5284, | 
| 1019 |     SpvCapabilityComputeDerivativeGroupQuadsNV = 5288, | 
| 1020 |     SpvCapabilityFragmentDensityEXT = 5291, | 
| 1021 |     SpvCapabilityShadingRateNV = 5291, | 
| 1022 |     SpvCapabilityGroupNonUniformPartitionedNV = 5297, | 
| 1023 |     SpvCapabilityShaderNonUniform = 5301, | 
| 1024 |     SpvCapabilityShaderNonUniformEXT = 5301, | 
| 1025 |     SpvCapabilityRuntimeDescriptorArray = 5302, | 
| 1026 |     SpvCapabilityRuntimeDescriptorArrayEXT = 5302, | 
| 1027 |     SpvCapabilityInputAttachmentArrayDynamicIndexing = 5303, | 
| 1028 |     SpvCapabilityInputAttachmentArrayDynamicIndexingEXT = 5303, | 
| 1029 |     SpvCapabilityUniformTexelBufferArrayDynamicIndexing = 5304, | 
| 1030 |     SpvCapabilityUniformTexelBufferArrayDynamicIndexingEXT = 5304, | 
| 1031 |     SpvCapabilityStorageTexelBufferArrayDynamicIndexing = 5305, | 
| 1032 |     SpvCapabilityStorageTexelBufferArrayDynamicIndexingEXT = 5305, | 
| 1033 |     SpvCapabilityUniformBufferArrayNonUniformIndexing = 5306, | 
| 1034 |     SpvCapabilityUniformBufferArrayNonUniformIndexingEXT = 5306, | 
| 1035 |     SpvCapabilitySampledImageArrayNonUniformIndexing = 5307, | 
| 1036 |     SpvCapabilitySampledImageArrayNonUniformIndexingEXT = 5307, | 
| 1037 |     SpvCapabilityStorageBufferArrayNonUniformIndexing = 5308, | 
| 1038 |     SpvCapabilityStorageBufferArrayNonUniformIndexingEXT = 5308, | 
| 1039 |     SpvCapabilityStorageImageArrayNonUniformIndexing = 5309, | 
| 1040 |     SpvCapabilityStorageImageArrayNonUniformIndexingEXT = 5309, | 
| 1041 |     SpvCapabilityInputAttachmentArrayNonUniformIndexing = 5310, | 
| 1042 |     SpvCapabilityInputAttachmentArrayNonUniformIndexingEXT = 5310, | 
| 1043 |     SpvCapabilityUniformTexelBufferArrayNonUniformIndexing = 5311, | 
| 1044 |     SpvCapabilityUniformTexelBufferArrayNonUniformIndexingEXT = 5311, | 
| 1045 |     SpvCapabilityStorageTexelBufferArrayNonUniformIndexing = 5312, | 
| 1046 |     SpvCapabilityStorageTexelBufferArrayNonUniformIndexingEXT = 5312, | 
| 1047 |     SpvCapabilityRayTracingNV = 5340, | 
| 1048 |     SpvCapabilityRayTracingMotionBlurNV = 5341, | 
| 1049 |     SpvCapabilityVulkanMemoryModel = 5345, | 
| 1050 |     SpvCapabilityVulkanMemoryModelKHR = 5345, | 
| 1051 |     SpvCapabilityVulkanMemoryModelDeviceScope = 5346, | 
| 1052 |     SpvCapabilityVulkanMemoryModelDeviceScopeKHR = 5346, | 
| 1053 |     SpvCapabilityPhysicalStorageBufferAddresses = 5347, | 
| 1054 |     SpvCapabilityPhysicalStorageBufferAddressesEXT = 5347, | 
| 1055 |     SpvCapabilityComputeDerivativeGroupLinearNV = 5350, | 
| 1056 |     SpvCapabilityRayTracingProvisionalKHR = 5353, | 
| 1057 |     SpvCapabilityCooperativeMatrixNV = 5357, | 
| 1058 |     SpvCapabilityFragmentShaderSampleInterlockEXT = 5363, | 
| 1059 |     SpvCapabilityFragmentShaderShadingRateInterlockEXT = 5372, | 
| 1060 |     SpvCapabilityShaderSMBuiltinsNV = 5373, | 
| 1061 |     SpvCapabilityFragmentShaderPixelInterlockEXT = 5378, | 
| 1062 |     SpvCapabilityDemoteToHelperInvocation = 5379, | 
| 1063 |     SpvCapabilityDemoteToHelperInvocationEXT = 5379, | 
| 1064 |     SpvCapabilityBindlessTextureNV = 5390, | 
| 1065 |     SpvCapabilitySubgroupShuffleINTEL = 5568, | 
| 1066 |     SpvCapabilitySubgroupBufferBlockIOINTEL = 5569, | 
| 1067 |     SpvCapabilitySubgroupImageBlockIOINTEL = 5570, | 
| 1068 |     SpvCapabilitySubgroupImageMediaBlockIOINTEL = 5579, | 
| 1069 |     SpvCapabilityRoundToInfinityINTEL = 5582, | 
| 1070 |     SpvCapabilityFloatingPointModeINTEL = 5583, | 
| 1071 |     SpvCapabilityIntegerFunctions2INTEL = 5584, | 
| 1072 |     SpvCapabilityFunctionPointersINTEL = 5603, | 
| 1073 |     SpvCapabilityIndirectReferencesINTEL = 5604, | 
| 1074 |     SpvCapabilityAsmINTEL = 5606, | 
| 1075 |     SpvCapabilityAtomicFloat32MinMaxEXT = 5612, | 
| 1076 |     SpvCapabilityAtomicFloat64MinMaxEXT = 5613, | 
| 1077 |     SpvCapabilityAtomicFloat16MinMaxEXT = 5616, | 
| 1078 |     SpvCapabilityVectorComputeINTEL = 5617, | 
| 1079 |     SpvCapabilityVectorAnyINTEL = 5619, | 
| 1080 |     SpvCapabilityExpectAssumeKHR = 5629, | 
| 1081 |     SpvCapabilitySubgroupAvcMotionEstimationINTEL = 5696, | 
| 1082 |     SpvCapabilitySubgroupAvcMotionEstimationIntraINTEL = 5697, | 
| 1083 |     SpvCapabilitySubgroupAvcMotionEstimationChromaINTEL = 5698, | 
| 1084 |     SpvCapabilityVariableLengthArrayINTEL = 5817, | 
| 1085 |     SpvCapabilityFunctionFloatControlINTEL = 5821, | 
| 1086 |     SpvCapabilityFPGAMemoryAttributesINTEL = 5824, | 
| 1087 |     SpvCapabilityFPFastMathModeINTEL = 5837, | 
| 1088 |     SpvCapabilityArbitraryPrecisionIntegersINTEL = 5844, | 
| 1089 |     SpvCapabilityArbitraryPrecisionFloatingPointINTEL = 5845, | 
| 1090 |     SpvCapabilityUnstructuredLoopControlsINTEL = 5886, | 
| 1091 |     SpvCapabilityFPGALoopControlsINTEL = 5888, | 
| 1092 |     SpvCapabilityKernelAttributesINTEL = 5892, | 
| 1093 |     SpvCapabilityFPGAKernelAttributesINTEL = 5897, | 
| 1094 |     SpvCapabilityFPGAMemoryAccessesINTEL = 5898, | 
| 1095 |     SpvCapabilityFPGAClusterAttributesINTEL = 5904, | 
| 1096 |     SpvCapabilityLoopFuseINTEL = 5906, | 
| 1097 |     SpvCapabilityMemoryAccessAliasingINTEL = 5910, | 
| 1098 |     SpvCapabilityFPGABufferLocationINTEL = 5920, | 
| 1099 |     SpvCapabilityArbitraryPrecisionFixedPointINTEL = 5922, | 
| 1100 |     SpvCapabilityUSMStorageClassesINTEL = 5935, | 
| 1101 |     SpvCapabilityIOPipesINTEL = 5943, | 
| 1102 |     SpvCapabilityBlockingPipesINTEL = 5945, | 
| 1103 |     SpvCapabilityFPGARegINTEL = 5948, | 
| 1104 |     SpvCapabilityDotProductInputAll = 6016, | 
| 1105 |     SpvCapabilityDotProductInputAllKHR = 6016, | 
| 1106 |     SpvCapabilityDotProductInput4x8Bit = 6017, | 
| 1107 |     SpvCapabilityDotProductInput4x8BitKHR = 6017, | 
| 1108 |     SpvCapabilityDotProductInput4x8BitPacked = 6018, | 
| 1109 |     SpvCapabilityDotProductInput4x8BitPackedKHR = 6018, | 
| 1110 |     SpvCapabilityDotProduct = 6019, | 
| 1111 |     SpvCapabilityDotProductKHR = 6019, | 
| 1112 |     SpvCapabilityRayCullMaskKHR = 6020, | 
| 1113 |     SpvCapabilityBitInstructions = 6025, | 
| 1114 |     SpvCapabilityGroupNonUniformRotateKHR = 6026, | 
| 1115 |     SpvCapabilityAtomicFloat32AddEXT = 6033, | 
| 1116 |     SpvCapabilityAtomicFloat64AddEXT = 6034, | 
| 1117 |     SpvCapabilityLongConstantCompositeINTEL = 6089, | 
| 1118 |     SpvCapabilityOptNoneINTEL = 6094, | 
| 1119 |     SpvCapabilityAtomicFloat16AddEXT = 6095, | 
| 1120 |     SpvCapabilityDebugInfoModuleINTEL = 6114, | 
| 1121 |     SpvCapabilitySplitBarrierINTEL = 6141, | 
| 1122 |     SpvCapabilityGroupUniformArithmeticKHR = 6400, | 
| 1123 |     SpvCapabilityMax = 0x7fffffff, | 
| 1124 | } SpvCapability; | 
| 1125 |  | 
| 1126 | typedef enum SpvRayFlagsShift_ { | 
| 1127 |     SpvRayFlagsOpaqueKHRShift = 0, | 
| 1128 |     SpvRayFlagsNoOpaqueKHRShift = 1, | 
| 1129 |     SpvRayFlagsTerminateOnFirstHitKHRShift = 2, | 
| 1130 |     SpvRayFlagsSkipClosestHitShaderKHRShift = 3, | 
| 1131 |     SpvRayFlagsCullBackFacingTrianglesKHRShift = 4, | 
| 1132 |     SpvRayFlagsCullFrontFacingTrianglesKHRShift = 5, | 
| 1133 |     SpvRayFlagsCullOpaqueKHRShift = 6, | 
| 1134 |     SpvRayFlagsCullNoOpaqueKHRShift = 7, | 
| 1135 |     SpvRayFlagsSkipTrianglesKHRShift = 8, | 
| 1136 |     SpvRayFlagsSkipAABBsKHRShift = 9, | 
| 1137 |     SpvRayFlagsMax = 0x7fffffff, | 
| 1138 | } SpvRayFlagsShift; | 
| 1139 |  | 
| 1140 | typedef enum SpvRayFlagsMask_ { | 
| 1141 |     SpvRayFlagsMaskNone = 0, | 
| 1142 |     SpvRayFlagsOpaqueKHRMask = 0x00000001, | 
| 1143 |     SpvRayFlagsNoOpaqueKHRMask = 0x00000002, | 
| 1144 |     SpvRayFlagsTerminateOnFirstHitKHRMask = 0x00000004, | 
| 1145 |     SpvRayFlagsSkipClosestHitShaderKHRMask = 0x00000008, | 
| 1146 |     SpvRayFlagsCullBackFacingTrianglesKHRMask = 0x00000010, | 
| 1147 |     SpvRayFlagsCullFrontFacingTrianglesKHRMask = 0x00000020, | 
| 1148 |     SpvRayFlagsCullOpaqueKHRMask = 0x00000040, | 
| 1149 |     SpvRayFlagsCullNoOpaqueKHRMask = 0x00000080, | 
| 1150 |     SpvRayFlagsSkipTrianglesKHRMask = 0x00000100, | 
| 1151 |     SpvRayFlagsSkipAABBsKHRMask = 0x00000200, | 
| 1152 | } SpvRayFlagsMask; | 
| 1153 |  | 
| 1154 | typedef enum SpvRayQueryIntersection_ { | 
| 1155 |     SpvRayQueryIntersectionRayQueryCandidateIntersectionKHR = 0, | 
| 1156 |     SpvRayQueryIntersectionRayQueryCommittedIntersectionKHR = 1, | 
| 1157 |     SpvRayQueryIntersectionMax = 0x7fffffff, | 
| 1158 | } SpvRayQueryIntersection; | 
| 1159 |  | 
| 1160 | typedef enum SpvRayQueryCommittedIntersectionType_ { | 
| 1161 |     SpvRayQueryCommittedIntersectionTypeRayQueryCommittedIntersectionNoneKHR = 0, | 
| 1162 |     SpvRayQueryCommittedIntersectionTypeRayQueryCommittedIntersectionTriangleKHR = 1, | 
| 1163 |     SpvRayQueryCommittedIntersectionTypeRayQueryCommittedIntersectionGeneratedKHR = 2, | 
| 1164 |     SpvRayQueryCommittedIntersectionTypeMax = 0x7fffffff, | 
| 1165 | } SpvRayQueryCommittedIntersectionType; | 
| 1166 |  | 
| 1167 | typedef enum SpvRayQueryCandidateIntersectionType_ { | 
| 1168 |     SpvRayQueryCandidateIntersectionTypeRayQueryCandidateIntersectionTriangleKHR = 0, | 
| 1169 |     SpvRayQueryCandidateIntersectionTypeRayQueryCandidateIntersectionAABBKHR = 1, | 
| 1170 |     SpvRayQueryCandidateIntersectionTypeMax = 0x7fffffff, | 
| 1171 | } SpvRayQueryCandidateIntersectionType; | 
| 1172 |  | 
| 1173 | typedef enum SpvFragmentShadingRateShift_ { | 
| 1174 |     SpvFragmentShadingRateVertical2PixelsShift = 0, | 
| 1175 |     SpvFragmentShadingRateVertical4PixelsShift = 1, | 
| 1176 |     SpvFragmentShadingRateHorizontal2PixelsShift = 2, | 
| 1177 |     SpvFragmentShadingRateHorizontal4PixelsShift = 3, | 
| 1178 |     SpvFragmentShadingRateMax = 0x7fffffff, | 
| 1179 | } SpvFragmentShadingRateShift; | 
| 1180 |  | 
| 1181 | typedef enum SpvFragmentShadingRateMask_ { | 
| 1182 |     SpvFragmentShadingRateMaskNone = 0, | 
| 1183 |     SpvFragmentShadingRateVertical2PixelsMask = 0x00000001, | 
| 1184 |     SpvFragmentShadingRateVertical4PixelsMask = 0x00000002, | 
| 1185 |     SpvFragmentShadingRateHorizontal2PixelsMask = 0x00000004, | 
| 1186 |     SpvFragmentShadingRateHorizontal4PixelsMask = 0x00000008, | 
| 1187 | } SpvFragmentShadingRateMask; | 
| 1188 |  | 
| 1189 | typedef enum SpvFPDenormMode_ { | 
| 1190 |     SpvFPDenormModePreserve = 0, | 
| 1191 |     SpvFPDenormModeFlushToZero = 1, | 
| 1192 |     SpvFPDenormModeMax = 0x7fffffff, | 
| 1193 | } SpvFPDenormMode; | 
| 1194 |  | 
| 1195 | typedef enum SpvFPOperationMode_ { | 
| 1196 |     SpvFPOperationModeIEEE = 0, | 
| 1197 |     SpvFPOperationModeALT = 1, | 
| 1198 |     SpvFPOperationModeMax = 0x7fffffff, | 
| 1199 | } SpvFPOperationMode; | 
| 1200 |  | 
| 1201 | typedef enum SpvQuantizationModes_ { | 
| 1202 |     SpvQuantizationModesTRN = 0, | 
| 1203 |     SpvQuantizationModesTRN_ZERO = 1, | 
| 1204 |     SpvQuantizationModesRND = 2, | 
| 1205 |     SpvQuantizationModesRND_ZERO = 3, | 
| 1206 |     SpvQuantizationModesRND_INF = 4, | 
| 1207 |     SpvQuantizationModesRND_MIN_INF = 5, | 
| 1208 |     SpvQuantizationModesRND_CONV = 6, | 
| 1209 |     SpvQuantizationModesRND_CONV_ODD = 7, | 
| 1210 |     SpvQuantizationModesMax = 0x7fffffff, | 
| 1211 | } SpvQuantizationModes; | 
| 1212 |  | 
| 1213 | typedef enum SpvOverflowModes_ { | 
| 1214 |     SpvOverflowModesWRAP = 0, | 
| 1215 |     SpvOverflowModesSAT = 1, | 
| 1216 |     SpvOverflowModesSAT_ZERO = 2, | 
| 1217 |     SpvOverflowModesSAT_SYM = 3, | 
| 1218 |     SpvOverflowModesMax = 0x7fffffff, | 
| 1219 | } SpvOverflowModes; | 
| 1220 |  | 
| 1221 | typedef enum SpvPackedVectorFormat_ { | 
| 1222 |     SpvPackedVectorFormatPackedVectorFormat4x8Bit = 0, | 
| 1223 |     SpvPackedVectorFormatPackedVectorFormat4x8BitKHR = 0, | 
| 1224 |     SpvPackedVectorFormatMax = 0x7fffffff, | 
| 1225 | } SpvPackedVectorFormat; | 
| 1226 |  | 
| 1227 | typedef enum SpvOp_ { | 
| 1228 |     SpvOpNop = 0, | 
| 1229 |     SpvOpUndef = 1, | 
| 1230 |     SpvOpSourceContinued = 2, | 
| 1231 |     SpvOpSource = 3, | 
| 1232 |     SpvOpSourceExtension = 4, | 
| 1233 |     SpvOpName = 5, | 
| 1234 |     SpvOpMemberName = 6, | 
| 1235 |     SpvOpString = 7, | 
| 1236 |     SpvOpLine = 8, | 
| 1237 |     SpvOpExtension = 10, | 
| 1238 |     SpvOpExtInstImport = 11, | 
| 1239 |     SpvOpExtInst = 12, | 
| 1240 |     SpvOpMemoryModel = 14, | 
| 1241 |     SpvOpEntryPoint = 15, | 
| 1242 |     SpvOpExecutionMode = 16, | 
| 1243 |     SpvOpCapability = 17, | 
| 1244 |     SpvOpTypeVoid = 19, | 
| 1245 |     SpvOpTypeBool = 20, | 
| 1246 |     SpvOpTypeInt = 21, | 
| 1247 |     SpvOpTypeFloat = 22, | 
| 1248 |     SpvOpTypeVector = 23, | 
| 1249 |     SpvOpTypeMatrix = 24, | 
| 1250 |     SpvOpTypeImage = 25, | 
| 1251 |     SpvOpTypeSampler = 26, | 
| 1252 |     SpvOpTypeSampledImage = 27, | 
| 1253 |     SpvOpTypeArray = 28, | 
| 1254 |     SpvOpTypeRuntimeArray = 29, | 
| 1255 |     SpvOpTypeStruct = 30, | 
| 1256 |     SpvOpTypeOpaque = 31, | 
| 1257 |     SpvOpTypePointer = 32, | 
| 1258 |     SpvOpTypeFunction = 33, | 
| 1259 |     SpvOpTypeEvent = 34, | 
| 1260 |     SpvOpTypeDeviceEvent = 35, | 
| 1261 |     SpvOpTypeReserveId = 36, | 
| 1262 |     SpvOpTypeQueue = 37, | 
| 1263 |     SpvOpTypePipe = 38, | 
| 1264 |     SpvOpTypeForwardPointer = 39, | 
| 1265 |     SpvOpConstantTrue = 41, | 
| 1266 |     SpvOpConstantFalse = 42, | 
| 1267 |     SpvOpConstant = 43, | 
| 1268 |     SpvOpConstantComposite = 44, | 
| 1269 |     SpvOpConstantSampler = 45, | 
| 1270 |     SpvOpConstantNull = 46, | 
| 1271 |     SpvOpSpecConstantTrue = 48, | 
| 1272 |     SpvOpSpecConstantFalse = 49, | 
| 1273 |     SpvOpSpecConstant = 50, | 
| 1274 |     SpvOpSpecConstantComposite = 51, | 
| 1275 |     SpvOpSpecConstantOp = 52, | 
| 1276 |     SpvOpFunction = 54, | 
| 1277 |     SpvOpFunctionParameter = 55, | 
| 1278 |     SpvOpFunctionEnd = 56, | 
| 1279 |     SpvOpFunctionCall = 57, | 
| 1280 |     SpvOpVariable = 59, | 
| 1281 |     SpvOpImageTexelPointer = 60, | 
| 1282 |     SpvOpLoad = 61, | 
| 1283 |     SpvOpStore = 62, | 
| 1284 |     SpvOpCopyMemory = 63, | 
| 1285 |     SpvOpCopyMemorySized = 64, | 
| 1286 |     SpvOpAccessChain = 65, | 
| 1287 |     SpvOpInBoundsAccessChain = 66, | 
| 1288 |     SpvOpPtrAccessChain = 67, | 
| 1289 |     SpvOpArrayLength = 68, | 
| 1290 |     SpvOpGenericPtrMemSemantics = 69, | 
| 1291 |     SpvOpInBoundsPtrAccessChain = 70, | 
| 1292 |     SpvOpDecorate = 71, | 
| 1293 |     SpvOpMemberDecorate = 72, | 
| 1294 |     SpvOpDecorationGroup = 73, | 
| 1295 |     SpvOpGroupDecorate = 74, | 
| 1296 |     SpvOpGroupMemberDecorate = 75, | 
| 1297 |      = 77, | 
| 1298 |     SpvOpVectorInsertDynamic = 78, | 
| 1299 |     SpvOpVectorShuffle = 79, | 
| 1300 |     SpvOpCompositeConstruct = 80, | 
| 1301 |      = 81, | 
| 1302 |     SpvOpCompositeInsert = 82, | 
| 1303 |     SpvOpCopyObject = 83, | 
| 1304 |     SpvOpTranspose = 84, | 
| 1305 |     SpvOpSampledImage = 86, | 
| 1306 |     SpvOpImageSampleImplicitLod = 87, | 
| 1307 |     SpvOpImageSampleExplicitLod = 88, | 
| 1308 |     SpvOpImageSampleDrefImplicitLod = 89, | 
| 1309 |     SpvOpImageSampleDrefExplicitLod = 90, | 
| 1310 |     SpvOpImageSampleProjImplicitLod = 91, | 
| 1311 |     SpvOpImageSampleProjExplicitLod = 92, | 
| 1312 |     SpvOpImageSampleProjDrefImplicitLod = 93, | 
| 1313 |     SpvOpImageSampleProjDrefExplicitLod = 94, | 
| 1314 |     SpvOpImageFetch = 95, | 
| 1315 |     SpvOpImageGather = 96, | 
| 1316 |     SpvOpImageDrefGather = 97, | 
| 1317 |     SpvOpImageRead = 98, | 
| 1318 |     SpvOpImageWrite = 99, | 
| 1319 |     SpvOpImage = 100, | 
| 1320 |     SpvOpImageQueryFormat = 101, | 
| 1321 |     SpvOpImageQueryOrder = 102, | 
| 1322 |     SpvOpImageQuerySizeLod = 103, | 
| 1323 |     SpvOpImageQuerySize = 104, | 
| 1324 |     SpvOpImageQueryLod = 105, | 
| 1325 |     SpvOpImageQueryLevels = 106, | 
| 1326 |     SpvOpImageQuerySamples = 107, | 
| 1327 |     SpvOpConvertFToU = 109, | 
| 1328 |     SpvOpConvertFToS = 110, | 
| 1329 |     SpvOpConvertSToF = 111, | 
| 1330 |     SpvOpConvertUToF = 112, | 
| 1331 |     SpvOpUConvert = 113, | 
| 1332 |     SpvOpSConvert = 114, | 
| 1333 |     SpvOpFConvert = 115, | 
| 1334 |     SpvOpQuantizeToF16 = 116, | 
| 1335 |     SpvOpConvertPtrToU = 117, | 
| 1336 |     SpvOpSatConvertSToU = 118, | 
| 1337 |     SpvOpSatConvertUToS = 119, | 
| 1338 |     SpvOpConvertUToPtr = 120, | 
| 1339 |     SpvOpPtrCastToGeneric = 121, | 
| 1340 |     SpvOpGenericCastToPtr = 122, | 
| 1341 |     SpvOpGenericCastToPtrExplicit = 123, | 
| 1342 |     SpvOpBitcast = 124, | 
| 1343 |     SpvOpSNegate = 126, | 
| 1344 |     SpvOpFNegate = 127, | 
| 1345 |     SpvOpIAdd = 128, | 
| 1346 |     SpvOpFAdd = 129, | 
| 1347 |     SpvOpISub = 130, | 
| 1348 |     SpvOpFSub = 131, | 
| 1349 |     SpvOpIMul = 132, | 
| 1350 |     SpvOpFMul = 133, | 
| 1351 |     SpvOpUDiv = 134, | 
| 1352 |     SpvOpSDiv = 135, | 
| 1353 |     SpvOpFDiv = 136, | 
| 1354 |     SpvOpUMod = 137, | 
| 1355 |     SpvOpSRem = 138, | 
| 1356 |     SpvOpSMod = 139, | 
| 1357 |     SpvOpFRem = 140, | 
| 1358 |     SpvOpFMod = 141, | 
| 1359 |     SpvOpVectorTimesScalar = 142, | 
| 1360 |     SpvOpMatrixTimesScalar = 143, | 
| 1361 |     SpvOpVectorTimesMatrix = 144, | 
| 1362 |     SpvOpMatrixTimesVector = 145, | 
| 1363 |     SpvOpMatrixTimesMatrix = 146, | 
| 1364 |     SpvOpOuterProduct = 147, | 
| 1365 |     SpvOpDot = 148, | 
| 1366 |     SpvOpIAddCarry = 149, | 
| 1367 |     SpvOpISubBorrow = 150, | 
| 1368 |     SpvOpUMulExtended = 151, | 
| 1369 |     SpvOpSMulExtended = 152, | 
| 1370 |     SpvOpAny = 154, | 
| 1371 |     SpvOpAll = 155, | 
| 1372 |     SpvOpIsNan = 156, | 
| 1373 |     SpvOpIsInf = 157, | 
| 1374 |     SpvOpIsFinite = 158, | 
| 1375 |     SpvOpIsNormal = 159, | 
| 1376 |     SpvOpSignBitSet = 160, | 
| 1377 |     SpvOpLessOrGreater = 161, | 
| 1378 |     SpvOpOrdered = 162, | 
| 1379 |     SpvOpUnordered = 163, | 
| 1380 |     SpvOpLogicalEqual = 164, | 
| 1381 |     SpvOpLogicalNotEqual = 165, | 
| 1382 |     SpvOpLogicalOr = 166, | 
| 1383 |     SpvOpLogicalAnd = 167, | 
| 1384 |     SpvOpLogicalNot = 168, | 
| 1385 |     SpvOpSelect = 169, | 
| 1386 |     SpvOpIEqual = 170, | 
| 1387 |     SpvOpINotEqual = 171, | 
| 1388 |     SpvOpUGreaterThan = 172, | 
| 1389 |     SpvOpSGreaterThan = 173, | 
| 1390 |     SpvOpUGreaterThanEqual = 174, | 
| 1391 |     SpvOpSGreaterThanEqual = 175, | 
| 1392 |     SpvOpULessThan = 176, | 
| 1393 |     SpvOpSLessThan = 177, | 
| 1394 |     SpvOpULessThanEqual = 178, | 
| 1395 |     SpvOpSLessThanEqual = 179, | 
| 1396 |     SpvOpFOrdEqual = 180, | 
| 1397 |     SpvOpFUnordEqual = 181, | 
| 1398 |     SpvOpFOrdNotEqual = 182, | 
| 1399 |     SpvOpFUnordNotEqual = 183, | 
| 1400 |     SpvOpFOrdLessThan = 184, | 
| 1401 |     SpvOpFUnordLessThan = 185, | 
| 1402 |     SpvOpFOrdGreaterThan = 186, | 
| 1403 |     SpvOpFUnordGreaterThan = 187, | 
| 1404 |     SpvOpFOrdLessThanEqual = 188, | 
| 1405 |     SpvOpFUnordLessThanEqual = 189, | 
| 1406 |     SpvOpFOrdGreaterThanEqual = 190, | 
| 1407 |     SpvOpFUnordGreaterThanEqual = 191, | 
| 1408 |     SpvOpShiftRightLogical = 194, | 
| 1409 |     SpvOpShiftRightArithmetic = 195, | 
| 1410 |     SpvOpShiftLeftLogical = 196, | 
| 1411 |     SpvOpBitwiseOr = 197, | 
| 1412 |     SpvOpBitwiseXor = 198, | 
| 1413 |     SpvOpBitwiseAnd = 199, | 
| 1414 |     SpvOpNot = 200, | 
| 1415 |     SpvOpBitFieldInsert = 201, | 
| 1416 |      = 202, | 
| 1417 |      = 203, | 
| 1418 |     SpvOpBitReverse = 204, | 
| 1419 |     SpvOpBitCount = 205, | 
| 1420 |     SpvOpDPdx = 207, | 
| 1421 |     SpvOpDPdy = 208, | 
| 1422 |     SpvOpFwidth = 209, | 
| 1423 |     SpvOpDPdxFine = 210, | 
| 1424 |     SpvOpDPdyFine = 211, | 
| 1425 |     SpvOpFwidthFine = 212, | 
| 1426 |     SpvOpDPdxCoarse = 213, | 
| 1427 |     SpvOpDPdyCoarse = 214, | 
| 1428 |     SpvOpFwidthCoarse = 215, | 
| 1429 |     SpvOpEmitVertex = 218, | 
| 1430 |     SpvOpEndPrimitive = 219, | 
| 1431 |     SpvOpEmitStreamVertex = 220, | 
| 1432 |     SpvOpEndStreamPrimitive = 221, | 
| 1433 |     SpvOpControlBarrier = 224, | 
| 1434 |     SpvOpMemoryBarrier = 225, | 
| 1435 |     SpvOpAtomicLoad = 227, | 
| 1436 |     SpvOpAtomicStore = 228, | 
| 1437 |     SpvOpAtomicExchange = 229, | 
| 1438 |     SpvOpAtomicCompareExchange = 230, | 
| 1439 |     SpvOpAtomicCompareExchangeWeak = 231, | 
| 1440 |     SpvOpAtomicIIncrement = 232, | 
| 1441 |     SpvOpAtomicIDecrement = 233, | 
| 1442 |     SpvOpAtomicIAdd = 234, | 
| 1443 |     SpvOpAtomicISub = 235, | 
| 1444 |     SpvOpAtomicSMin = 236, | 
| 1445 |     SpvOpAtomicUMin = 237, | 
| 1446 |     SpvOpAtomicSMax = 238, | 
| 1447 |     SpvOpAtomicUMax = 239, | 
| 1448 |     SpvOpAtomicAnd = 240, | 
| 1449 |     SpvOpAtomicOr = 241, | 
| 1450 |     SpvOpAtomicXor = 242, | 
| 1451 |     SpvOpPhi = 245, | 
| 1452 |     SpvOpLoopMerge = 246, | 
| 1453 |     SpvOpSelectionMerge = 247, | 
| 1454 |     SpvOpLabel = 248, | 
| 1455 |     SpvOpBranch = 249, | 
| 1456 |     SpvOpBranchConditional = 250, | 
| 1457 |     SpvOpSwitch = 251, | 
| 1458 |     SpvOpKill = 252, | 
| 1459 |     SpvOpReturn = 253, | 
| 1460 |     SpvOpReturnValue = 254, | 
| 1461 |     SpvOpUnreachable = 255, | 
| 1462 |     SpvOpLifetimeStart = 256, | 
| 1463 |     SpvOpLifetimeStop = 257, | 
| 1464 |     SpvOpGroupAsyncCopy = 259, | 
| 1465 |     SpvOpGroupWaitEvents = 260, | 
| 1466 |     SpvOpGroupAll = 261, | 
| 1467 |     SpvOpGroupAny = 262, | 
| 1468 |     SpvOpGroupBroadcast = 263, | 
| 1469 |     SpvOpGroupIAdd = 264, | 
| 1470 |     SpvOpGroupFAdd = 265, | 
| 1471 |     SpvOpGroupFMin = 266, | 
| 1472 |     SpvOpGroupUMin = 267, | 
| 1473 |     SpvOpGroupSMin = 268, | 
| 1474 |     SpvOpGroupFMax = 269, | 
| 1475 |     SpvOpGroupUMax = 270, | 
| 1476 |     SpvOpGroupSMax = 271, | 
| 1477 |     SpvOpReadPipe = 274, | 
| 1478 |     SpvOpWritePipe = 275, | 
| 1479 |     SpvOpReservedReadPipe = 276, | 
| 1480 |     SpvOpReservedWritePipe = 277, | 
| 1481 |     SpvOpReserveReadPipePackets = 278, | 
| 1482 |     SpvOpReserveWritePipePackets = 279, | 
| 1483 |     SpvOpCommitReadPipe = 280, | 
| 1484 |     SpvOpCommitWritePipe = 281, | 
| 1485 |     SpvOpIsValidReserveId = 282, | 
| 1486 |     SpvOpGetNumPipePackets = 283, | 
| 1487 |     SpvOpGetMaxPipePackets = 284, | 
| 1488 |     SpvOpGroupReserveReadPipePackets = 285, | 
| 1489 |     SpvOpGroupReserveWritePipePackets = 286, | 
| 1490 |     SpvOpGroupCommitReadPipe = 287, | 
| 1491 |     SpvOpGroupCommitWritePipe = 288, | 
| 1492 |     SpvOpEnqueueMarker = 291, | 
| 1493 |     SpvOpEnqueueKernel = 292, | 
| 1494 |     SpvOpGetKernelNDrangeSubGroupCount = 293, | 
| 1495 |     SpvOpGetKernelNDrangeMaxSubGroupSize = 294, | 
| 1496 |     SpvOpGetKernelWorkGroupSize = 295, | 
| 1497 |     SpvOpGetKernelPreferredWorkGroupSizeMultiple = 296, | 
| 1498 |     SpvOpRetainEvent = 297, | 
| 1499 |     SpvOpReleaseEvent = 298, | 
| 1500 |     SpvOpCreateUserEvent = 299, | 
| 1501 |     SpvOpIsValidEvent = 300, | 
| 1502 |     SpvOpSetUserEventStatus = 301, | 
| 1503 |     SpvOpCaptureEventProfilingInfo = 302, | 
| 1504 |     SpvOpGetDefaultQueue = 303, | 
| 1505 |     SpvOpBuildNDRange = 304, | 
| 1506 |     SpvOpImageSparseSampleImplicitLod = 305, | 
| 1507 |     SpvOpImageSparseSampleExplicitLod = 306, | 
| 1508 |     SpvOpImageSparseSampleDrefImplicitLod = 307, | 
| 1509 |     SpvOpImageSparseSampleDrefExplicitLod = 308, | 
| 1510 |     SpvOpImageSparseSampleProjImplicitLod = 309, | 
| 1511 |     SpvOpImageSparseSampleProjExplicitLod = 310, | 
| 1512 |     SpvOpImageSparseSampleProjDrefImplicitLod = 311, | 
| 1513 |     SpvOpImageSparseSampleProjDrefExplicitLod = 312, | 
| 1514 |     SpvOpImageSparseFetch = 313, | 
| 1515 |     SpvOpImageSparseGather = 314, | 
| 1516 |     SpvOpImageSparseDrefGather = 315, | 
| 1517 |     SpvOpImageSparseTexelsResident = 316, | 
| 1518 |     SpvOpNoLine = 317, | 
| 1519 |     SpvOpAtomicFlagTestAndSet = 318, | 
| 1520 |     SpvOpAtomicFlagClear = 319, | 
| 1521 |     SpvOpImageSparseRead = 320, | 
| 1522 |     SpvOpSizeOf = 321, | 
| 1523 |     SpvOpTypePipeStorage = 322, | 
| 1524 |     SpvOpConstantPipeStorage = 323, | 
| 1525 |     SpvOpCreatePipeFromPipeStorage = 324, | 
| 1526 |     SpvOpGetKernelLocalSizeForSubgroupCount = 325, | 
| 1527 |     SpvOpGetKernelMaxNumSubgroups = 326, | 
| 1528 |     SpvOpTypeNamedBarrier = 327, | 
| 1529 |     SpvOpNamedBarrierInitialize = 328, | 
| 1530 |     SpvOpMemoryNamedBarrier = 329, | 
| 1531 |     SpvOpModuleProcessed = 330, | 
| 1532 |     SpvOpExecutionModeId = 331, | 
| 1533 |     SpvOpDecorateId = 332, | 
| 1534 |     SpvOpGroupNonUniformElect = 333, | 
| 1535 |     SpvOpGroupNonUniformAll = 334, | 
| 1536 |     SpvOpGroupNonUniformAny = 335, | 
| 1537 |     SpvOpGroupNonUniformAllEqual = 336, | 
| 1538 |     SpvOpGroupNonUniformBroadcast = 337, | 
| 1539 |     SpvOpGroupNonUniformBroadcastFirst = 338, | 
| 1540 |     SpvOpGroupNonUniformBallot = 339, | 
| 1541 |     SpvOpGroupNonUniformInverseBallot = 340, | 
| 1542 |      = 341, | 
| 1543 |     SpvOpGroupNonUniformBallotBitCount = 342, | 
| 1544 |     SpvOpGroupNonUniformBallotFindLSB = 343, | 
| 1545 |     SpvOpGroupNonUniformBallotFindMSB = 344, | 
| 1546 |     SpvOpGroupNonUniformShuffle = 345, | 
| 1547 |     SpvOpGroupNonUniformShuffleXor = 346, | 
| 1548 |     SpvOpGroupNonUniformShuffleUp = 347, | 
| 1549 |     SpvOpGroupNonUniformShuffleDown = 348, | 
| 1550 |     SpvOpGroupNonUniformIAdd = 349, | 
| 1551 |     SpvOpGroupNonUniformFAdd = 350, | 
| 1552 |     SpvOpGroupNonUniformIMul = 351, | 
| 1553 |     SpvOpGroupNonUniformFMul = 352, | 
| 1554 |     SpvOpGroupNonUniformSMin = 353, | 
| 1555 |     SpvOpGroupNonUniformUMin = 354, | 
| 1556 |     SpvOpGroupNonUniformFMin = 355, | 
| 1557 |     SpvOpGroupNonUniformSMax = 356, | 
| 1558 |     SpvOpGroupNonUniformUMax = 357, | 
| 1559 |     SpvOpGroupNonUniformFMax = 358, | 
| 1560 |     SpvOpGroupNonUniformBitwiseAnd = 359, | 
| 1561 |     SpvOpGroupNonUniformBitwiseOr = 360, | 
| 1562 |     SpvOpGroupNonUniformBitwiseXor = 361, | 
| 1563 |     SpvOpGroupNonUniformLogicalAnd = 362, | 
| 1564 |     SpvOpGroupNonUniformLogicalOr = 363, | 
| 1565 |     SpvOpGroupNonUniformLogicalXor = 364, | 
| 1566 |     SpvOpGroupNonUniformQuadBroadcast = 365, | 
| 1567 |     SpvOpGroupNonUniformQuadSwap = 366, | 
| 1568 |     SpvOpCopyLogical = 400, | 
| 1569 |     SpvOpPtrEqual = 401, | 
| 1570 |     SpvOpPtrNotEqual = 402, | 
| 1571 |     SpvOpPtrDiff = 403, | 
| 1572 |     SpvOpTerminateInvocation = 4416, | 
| 1573 |     SpvOpSubgroupBallotKHR = 4421, | 
| 1574 |     SpvOpSubgroupFirstInvocationKHR = 4422, | 
| 1575 |     SpvOpSubgroupAllKHR = 4428, | 
| 1576 |     SpvOpSubgroupAnyKHR = 4429, | 
| 1577 |     SpvOpSubgroupAllEqualKHR = 4430, | 
| 1578 |     SpvOpGroupNonUniformRotateKHR = 4431, | 
| 1579 |     SpvOpSubgroupReadInvocationKHR = 4432, | 
| 1580 |     SpvOpTraceRayKHR = 4445, | 
| 1581 |     SpvOpExecuteCallableKHR = 4446, | 
| 1582 |     SpvOpConvertUToAccelerationStructureKHR = 4447, | 
| 1583 |     SpvOpIgnoreIntersectionKHR = 4448, | 
| 1584 |     SpvOpTerminateRayKHR = 4449, | 
| 1585 |     SpvOpSDot = 4450, | 
| 1586 |     SpvOpSDotKHR = 4450, | 
| 1587 |     SpvOpUDot = 4451, | 
| 1588 |     SpvOpUDotKHR = 4451, | 
| 1589 |     SpvOpSUDot = 4452, | 
| 1590 |     SpvOpSUDotKHR = 4452, | 
| 1591 |     SpvOpSDotAccSat = 4453, | 
| 1592 |     SpvOpSDotAccSatKHR = 4453, | 
| 1593 |     SpvOpUDotAccSat = 4454, | 
| 1594 |     SpvOpUDotAccSatKHR = 4454, | 
| 1595 |     SpvOpSUDotAccSat = 4455, | 
| 1596 |     SpvOpSUDotAccSatKHR = 4455, | 
| 1597 |     SpvOpTypeRayQueryKHR = 4472, | 
| 1598 |     SpvOpRayQueryInitializeKHR = 4473, | 
| 1599 |     SpvOpRayQueryTerminateKHR = 4474, | 
| 1600 |     SpvOpRayQueryGenerateIntersectionKHR = 4475, | 
| 1601 |     SpvOpRayQueryConfirmIntersectionKHR = 4476, | 
| 1602 |     SpvOpRayQueryProceedKHR = 4477, | 
| 1603 |     SpvOpRayQueryGetIntersectionTypeKHR = 4479, | 
| 1604 |     SpvOpImageSampleWeightedQCOM = 4480, | 
| 1605 |     SpvOpImageBoxFilterQCOM = 4481, | 
| 1606 |     SpvOpImageBlockMatchSSDQCOM = 4482, | 
| 1607 |     SpvOpImageBlockMatchSADQCOM = 4483, | 
| 1608 |     SpvOpGroupIAddNonUniformAMD = 5000, | 
| 1609 |     SpvOpGroupFAddNonUniformAMD = 5001, | 
| 1610 |     SpvOpGroupFMinNonUniformAMD = 5002, | 
| 1611 |     SpvOpGroupUMinNonUniformAMD = 5003, | 
| 1612 |     SpvOpGroupSMinNonUniformAMD = 5004, | 
| 1613 |     SpvOpGroupFMaxNonUniformAMD = 5005, | 
| 1614 |     SpvOpGroupUMaxNonUniformAMD = 5006, | 
| 1615 |     SpvOpGroupSMaxNonUniformAMD = 5007, | 
| 1616 |     SpvOpFragmentMaskFetchAMD = 5011, | 
| 1617 |     SpvOpFragmentFetchAMD = 5012, | 
| 1618 |     SpvOpReadClockKHR = 5056, | 
| 1619 |      = 5283, | 
| 1620 |     SpvOpEmitMeshTasksEXT = 5294, | 
| 1621 |     SpvOpSetMeshOutputsEXT = 5295, | 
| 1622 |     SpvOpGroupNonUniformPartitionNV = 5296, | 
| 1623 |     SpvOpWritePackedPrimitiveIndices4x8NV = 5299, | 
| 1624 |     SpvOpReportIntersectionKHR = 5334, | 
| 1625 |     SpvOpReportIntersectionNV = 5334, | 
| 1626 |     SpvOpIgnoreIntersectionNV = 5335, | 
| 1627 |     SpvOpTerminateRayNV = 5336, | 
| 1628 |     SpvOpTraceNV = 5337, | 
| 1629 |     SpvOpTraceMotionNV = 5338, | 
| 1630 |     SpvOpTraceRayMotionNV = 5339, | 
| 1631 |     SpvOpTypeAccelerationStructureKHR = 5341, | 
| 1632 |     SpvOpTypeAccelerationStructureNV = 5341, | 
| 1633 |     SpvOpExecuteCallableNV = 5344, | 
| 1634 |     SpvOpTypeCooperativeMatrixNV = 5358, | 
| 1635 |     SpvOpCooperativeMatrixLoadNV = 5359, | 
| 1636 |     SpvOpCooperativeMatrixStoreNV = 5360, | 
| 1637 |     SpvOpCooperativeMatrixMulAddNV = 5361, | 
| 1638 |     SpvOpCooperativeMatrixLengthNV = 5362, | 
| 1639 |     SpvOpBeginInvocationInterlockEXT = 5364, | 
| 1640 |     SpvOpEndInvocationInterlockEXT = 5365, | 
| 1641 |     SpvOpDemoteToHelperInvocation = 5380, | 
| 1642 |     SpvOpDemoteToHelperInvocationEXT = 5380, | 
| 1643 |     SpvOpIsHelperInvocationEXT = 5381, | 
| 1644 |     SpvOpConvertUToImageNV = 5391, | 
| 1645 |     SpvOpConvertUToSamplerNV = 5392, | 
| 1646 |     SpvOpConvertImageToUNV = 5393, | 
| 1647 |     SpvOpConvertSamplerToUNV = 5394, | 
| 1648 |     SpvOpConvertUToSampledImageNV = 5395, | 
| 1649 |     SpvOpConvertSampledImageToUNV = 5396, | 
| 1650 |     SpvOpSamplerImageAddressingModeNV = 5397, | 
| 1651 |     SpvOpSubgroupShuffleINTEL = 5571, | 
| 1652 |     SpvOpSubgroupShuffleDownINTEL = 5572, | 
| 1653 |     SpvOpSubgroupShuffleUpINTEL = 5573, | 
| 1654 |     SpvOpSubgroupShuffleXorINTEL = 5574, | 
| 1655 |     SpvOpSubgroupBlockReadINTEL = 5575, | 
| 1656 |     SpvOpSubgroupBlockWriteINTEL = 5576, | 
| 1657 |     SpvOpSubgroupImageBlockReadINTEL = 5577, | 
| 1658 |     SpvOpSubgroupImageBlockWriteINTEL = 5578, | 
| 1659 |     SpvOpSubgroupImageMediaBlockReadINTEL = 5580, | 
| 1660 |     SpvOpSubgroupImageMediaBlockWriteINTEL = 5581, | 
| 1661 |     SpvOpUCountLeadingZerosINTEL = 5585, | 
| 1662 |     SpvOpUCountTrailingZerosINTEL = 5586, | 
| 1663 |     SpvOpAbsISubINTEL = 5587, | 
| 1664 |     SpvOpAbsUSubINTEL = 5588, | 
| 1665 |     SpvOpIAddSatINTEL = 5589, | 
| 1666 |     SpvOpUAddSatINTEL = 5590, | 
| 1667 |     SpvOpIAverageINTEL = 5591, | 
| 1668 |     SpvOpUAverageINTEL = 5592, | 
| 1669 |     SpvOpIAverageRoundedINTEL = 5593, | 
| 1670 |     SpvOpUAverageRoundedINTEL = 5594, | 
| 1671 |     SpvOpISubSatINTEL = 5595, | 
| 1672 |     SpvOpUSubSatINTEL = 5596, | 
| 1673 |     SpvOpIMul32x16INTEL = 5597, | 
| 1674 |     SpvOpUMul32x16INTEL = 5598, | 
| 1675 |     SpvOpConstantFunctionPointerINTEL = 5600, | 
| 1676 |     SpvOpFunctionPointerCallINTEL = 5601, | 
| 1677 |     SpvOpAsmTargetINTEL = 5609, | 
| 1678 |     SpvOpAsmINTEL = 5610, | 
| 1679 |     SpvOpAsmCallINTEL = 5611, | 
| 1680 |     SpvOpAtomicFMinEXT = 5614, | 
| 1681 |     SpvOpAtomicFMaxEXT = 5615, | 
| 1682 |     SpvOpAssumeTrueKHR = 5630, | 
| 1683 |     SpvOpExpectKHR = 5631, | 
| 1684 |     SpvOpDecorateString = 5632, | 
| 1685 |     SpvOpDecorateStringGOOGLE = 5632, | 
| 1686 |     SpvOpMemberDecorateString = 5633, | 
| 1687 |     SpvOpMemberDecorateStringGOOGLE = 5633, | 
| 1688 |     SpvOpVmeImageINTEL = 5699, | 
| 1689 |     SpvOpTypeVmeImageINTEL = 5700, | 
| 1690 |     SpvOpTypeAvcImePayloadINTEL = 5701, | 
| 1691 |     SpvOpTypeAvcRefPayloadINTEL = 5702, | 
| 1692 |     SpvOpTypeAvcSicPayloadINTEL = 5703, | 
| 1693 |     SpvOpTypeAvcMcePayloadINTEL = 5704, | 
| 1694 |     SpvOpTypeAvcMceResultINTEL = 5705, | 
| 1695 |     SpvOpTypeAvcImeResultINTEL = 5706, | 
| 1696 |     SpvOpTypeAvcImeResultSingleReferenceStreamoutINTEL = 5707, | 
| 1697 |     SpvOpTypeAvcImeResultDualReferenceStreamoutINTEL = 5708, | 
| 1698 |     SpvOpTypeAvcImeSingleReferenceStreaminINTEL = 5709, | 
| 1699 |     SpvOpTypeAvcImeDualReferenceStreaminINTEL = 5710, | 
| 1700 |     SpvOpTypeAvcRefResultINTEL = 5711, | 
| 1701 |     SpvOpTypeAvcSicResultINTEL = 5712, | 
| 1702 |     SpvOpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL = 5713, | 
| 1703 |     SpvOpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL = 5714, | 
| 1704 |     SpvOpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL = 5715, | 
| 1705 |     SpvOpSubgroupAvcMceSetInterShapePenaltyINTEL = 5716, | 
| 1706 |     SpvOpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL = 5717, | 
| 1707 |     SpvOpSubgroupAvcMceSetInterDirectionPenaltyINTEL = 5718, | 
| 1708 |     SpvOpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL = 5719, | 
| 1709 |     SpvOpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL = 5720, | 
| 1710 |     SpvOpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL = 5721, | 
| 1711 |     SpvOpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL = 5722, | 
| 1712 |     SpvOpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL = 5723, | 
| 1713 |     SpvOpSubgroupAvcMceSetMotionVectorCostFunctionINTEL = 5724, | 
| 1714 |     SpvOpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL = 5725, | 
| 1715 |     SpvOpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL = 5726, | 
| 1716 |     SpvOpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL = 5727, | 
| 1717 |     SpvOpSubgroupAvcMceSetAcOnlyHaarINTEL = 5728, | 
| 1718 |     SpvOpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL = 5729, | 
| 1719 |     SpvOpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL = 5730, | 
| 1720 |     SpvOpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL = 5731, | 
| 1721 |     SpvOpSubgroupAvcMceConvertToImePayloadINTEL = 5732, | 
| 1722 |     SpvOpSubgroupAvcMceConvertToImeResultINTEL = 5733, | 
| 1723 |     SpvOpSubgroupAvcMceConvertToRefPayloadINTEL = 5734, | 
| 1724 |     SpvOpSubgroupAvcMceConvertToRefResultINTEL = 5735, | 
| 1725 |     SpvOpSubgroupAvcMceConvertToSicPayloadINTEL = 5736, | 
| 1726 |     SpvOpSubgroupAvcMceConvertToSicResultINTEL = 5737, | 
| 1727 |     SpvOpSubgroupAvcMceGetMotionVectorsINTEL = 5738, | 
| 1728 |     SpvOpSubgroupAvcMceGetInterDistortionsINTEL = 5739, | 
| 1729 |     SpvOpSubgroupAvcMceGetBestInterDistortionsINTEL = 5740, | 
| 1730 |     SpvOpSubgroupAvcMceGetInterMajorShapeINTEL = 5741, | 
| 1731 |     SpvOpSubgroupAvcMceGetInterMinorShapeINTEL = 5742, | 
| 1732 |     SpvOpSubgroupAvcMceGetInterDirectionsINTEL = 5743, | 
| 1733 |     SpvOpSubgroupAvcMceGetInterMotionVectorCountINTEL = 5744, | 
| 1734 |     SpvOpSubgroupAvcMceGetInterReferenceIdsINTEL = 5745, | 
| 1735 |     SpvOpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL = 5746, | 
| 1736 |     SpvOpSubgroupAvcImeInitializeINTEL = 5747, | 
| 1737 |     SpvOpSubgroupAvcImeSetSingleReferenceINTEL = 5748, | 
| 1738 |     SpvOpSubgroupAvcImeSetDualReferenceINTEL = 5749, | 
| 1739 |     SpvOpSubgroupAvcImeRefWindowSizeINTEL = 5750, | 
| 1740 |     SpvOpSubgroupAvcImeAdjustRefOffsetINTEL = 5751, | 
| 1741 |     SpvOpSubgroupAvcImeConvertToMcePayloadINTEL = 5752, | 
| 1742 |     SpvOpSubgroupAvcImeSetMaxMotionVectorCountINTEL = 5753, | 
| 1743 |     SpvOpSubgroupAvcImeSetUnidirectionalMixDisableINTEL = 5754, | 
| 1744 |     SpvOpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL = 5755, | 
| 1745 |     SpvOpSubgroupAvcImeSetWeightedSadINTEL = 5756, | 
| 1746 |     SpvOpSubgroupAvcImeEvaluateWithSingleReferenceINTEL = 5757, | 
| 1747 |     SpvOpSubgroupAvcImeEvaluateWithDualReferenceINTEL = 5758, | 
| 1748 |     SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL = 5759, | 
| 1749 |     SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL = 5760, | 
| 1750 |     SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL = 5761, | 
| 1751 |     SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL = 5762, | 
| 1752 |     SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL = 5763, | 
| 1753 |     SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL = 5764, | 
| 1754 |     SpvOpSubgroupAvcImeConvertToMceResultINTEL = 5765, | 
| 1755 |     SpvOpSubgroupAvcImeGetSingleReferenceStreaminINTEL = 5766, | 
| 1756 |     SpvOpSubgroupAvcImeGetDualReferenceStreaminINTEL = 5767, | 
| 1757 |     SpvOpSubgroupAvcImeStripSingleReferenceStreamoutINTEL = 5768, | 
| 1758 |     SpvOpSubgroupAvcImeStripDualReferenceStreamoutINTEL = 5769, | 
| 1759 |     SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL = 5770, | 
| 1760 |     SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL = 5771, | 
| 1761 |     SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL = 5772, | 
| 1762 |     SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL = 5773, | 
| 1763 |     SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL = 5774, | 
| 1764 |     SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL = 5775, | 
| 1765 |     SpvOpSubgroupAvcImeGetBorderReachedINTEL = 5776, | 
| 1766 |     SpvOpSubgroupAvcImeGetTruncatedSearchIndicationINTEL = 5777, | 
| 1767 |     SpvOpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL = 5778, | 
| 1768 |     SpvOpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL = 5779, | 
| 1769 |     SpvOpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL = 5780, | 
| 1770 |     SpvOpSubgroupAvcFmeInitializeINTEL = 5781, | 
| 1771 |     SpvOpSubgroupAvcBmeInitializeINTEL = 5782, | 
| 1772 |     SpvOpSubgroupAvcRefConvertToMcePayloadINTEL = 5783, | 
| 1773 |     SpvOpSubgroupAvcRefSetBidirectionalMixDisableINTEL = 5784, | 
| 1774 |     SpvOpSubgroupAvcRefSetBilinearFilterEnableINTEL = 5785, | 
| 1775 |     SpvOpSubgroupAvcRefEvaluateWithSingleReferenceINTEL = 5786, | 
| 1776 |     SpvOpSubgroupAvcRefEvaluateWithDualReferenceINTEL = 5787, | 
| 1777 |     SpvOpSubgroupAvcRefEvaluateWithMultiReferenceINTEL = 5788, | 
| 1778 |     SpvOpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL = 5789, | 
| 1779 |     SpvOpSubgroupAvcRefConvertToMceResultINTEL = 5790, | 
| 1780 |     SpvOpSubgroupAvcSicInitializeINTEL = 5791, | 
| 1781 |     SpvOpSubgroupAvcSicConfigureSkcINTEL = 5792, | 
| 1782 |     SpvOpSubgroupAvcSicConfigureIpeLumaINTEL = 5793, | 
| 1783 |     SpvOpSubgroupAvcSicConfigureIpeLumaChromaINTEL = 5794, | 
| 1784 |     SpvOpSubgroupAvcSicGetMotionVectorMaskINTEL = 5795, | 
| 1785 |     SpvOpSubgroupAvcSicConvertToMcePayloadINTEL = 5796, | 
| 1786 |     SpvOpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL = 5797, | 
| 1787 |     SpvOpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL = 5798, | 
| 1788 |     SpvOpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL = 5799, | 
| 1789 |     SpvOpSubgroupAvcSicSetBilinearFilterEnableINTEL = 5800, | 
| 1790 |     SpvOpSubgroupAvcSicSetSkcForwardTransformEnableINTEL = 5801, | 
| 1791 |     SpvOpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL = 5802, | 
| 1792 |     SpvOpSubgroupAvcSicEvaluateIpeINTEL = 5803, | 
| 1793 |     SpvOpSubgroupAvcSicEvaluateWithSingleReferenceINTEL = 5804, | 
| 1794 |     SpvOpSubgroupAvcSicEvaluateWithDualReferenceINTEL = 5805, | 
| 1795 |     SpvOpSubgroupAvcSicEvaluateWithMultiReferenceINTEL = 5806, | 
| 1796 |     SpvOpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL = 5807, | 
| 1797 |     SpvOpSubgroupAvcSicConvertToMceResultINTEL = 5808, | 
| 1798 |     SpvOpSubgroupAvcSicGetIpeLumaShapeINTEL = 5809, | 
| 1799 |     SpvOpSubgroupAvcSicGetBestIpeLumaDistortionINTEL = 5810, | 
| 1800 |     SpvOpSubgroupAvcSicGetBestIpeChromaDistortionINTEL = 5811, | 
| 1801 |     SpvOpSubgroupAvcSicGetPackedIpeLumaModesINTEL = 5812, | 
| 1802 |     SpvOpSubgroupAvcSicGetIpeChromaModeINTEL = 5813, | 
| 1803 |     SpvOpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL = 5814, | 
| 1804 |     SpvOpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL = 5815, | 
| 1805 |     SpvOpSubgroupAvcSicGetInterRawSadsINTEL = 5816, | 
| 1806 |     SpvOpVariableLengthArrayINTEL = 5818, | 
| 1807 |     SpvOpSaveMemoryINTEL = 5819, | 
| 1808 |     SpvOpRestoreMemoryINTEL = 5820, | 
| 1809 |     SpvOpArbitraryFloatSinCosPiINTEL = 5840, | 
| 1810 |     SpvOpArbitraryFloatCastINTEL = 5841, | 
| 1811 |     SpvOpArbitraryFloatCastFromIntINTEL = 5842, | 
| 1812 |     SpvOpArbitraryFloatCastToIntINTEL = 5843, | 
| 1813 |     SpvOpArbitraryFloatAddINTEL = 5846, | 
| 1814 |     SpvOpArbitraryFloatSubINTEL = 5847, | 
| 1815 |     SpvOpArbitraryFloatMulINTEL = 5848, | 
| 1816 |     SpvOpArbitraryFloatDivINTEL = 5849, | 
| 1817 |     SpvOpArbitraryFloatGTINTEL = 5850, | 
| 1818 |     SpvOpArbitraryFloatGEINTEL = 5851, | 
| 1819 |     SpvOpArbitraryFloatLTINTEL = 5852, | 
| 1820 |     SpvOpArbitraryFloatLEINTEL = 5853, | 
| 1821 |     SpvOpArbitraryFloatEQINTEL = 5854, | 
| 1822 |     SpvOpArbitraryFloatRecipINTEL = 5855, | 
| 1823 |     SpvOpArbitraryFloatRSqrtINTEL = 5856, | 
| 1824 |     SpvOpArbitraryFloatCbrtINTEL = 5857, | 
| 1825 |     SpvOpArbitraryFloatHypotINTEL = 5858, | 
| 1826 |     SpvOpArbitraryFloatSqrtINTEL = 5859, | 
| 1827 |     SpvOpArbitraryFloatLogINTEL = 5860, | 
| 1828 |     SpvOpArbitraryFloatLog2INTEL = 5861, | 
| 1829 |     SpvOpArbitraryFloatLog10INTEL = 5862, | 
| 1830 |     SpvOpArbitraryFloatLog1pINTEL = 5863, | 
| 1831 |     SpvOpArbitraryFloatExpINTEL = 5864, | 
| 1832 |     SpvOpArbitraryFloatExp2INTEL = 5865, | 
| 1833 |     SpvOpArbitraryFloatExp10INTEL = 5866, | 
| 1834 |     SpvOpArbitraryFloatExpm1INTEL = 5867, | 
| 1835 |     SpvOpArbitraryFloatSinINTEL = 5868, | 
| 1836 |     SpvOpArbitraryFloatCosINTEL = 5869, | 
| 1837 |     SpvOpArbitraryFloatSinCosINTEL = 5870, | 
| 1838 |     SpvOpArbitraryFloatSinPiINTEL = 5871, | 
| 1839 |     SpvOpArbitraryFloatCosPiINTEL = 5872, | 
| 1840 |     SpvOpArbitraryFloatASinINTEL = 5873, | 
| 1841 |     SpvOpArbitraryFloatASinPiINTEL = 5874, | 
| 1842 |     SpvOpArbitraryFloatACosINTEL = 5875, | 
| 1843 |     SpvOpArbitraryFloatACosPiINTEL = 5876, | 
| 1844 |     SpvOpArbitraryFloatATanINTEL = 5877, | 
| 1845 |     SpvOpArbitraryFloatATanPiINTEL = 5878, | 
| 1846 |     SpvOpArbitraryFloatATan2INTEL = 5879, | 
| 1847 |     SpvOpArbitraryFloatPowINTEL = 5880, | 
| 1848 |     SpvOpArbitraryFloatPowRINTEL = 5881, | 
| 1849 |     SpvOpArbitraryFloatPowNINTEL = 5882, | 
| 1850 |     SpvOpLoopControlINTEL = 5887, | 
| 1851 |     SpvOpAliasDomainDeclINTEL = 5911, | 
| 1852 |     SpvOpAliasScopeDeclINTEL = 5912, | 
| 1853 |     SpvOpAliasScopeListDeclINTEL = 5913, | 
| 1854 |     SpvOpFixedSqrtINTEL = 5923, | 
| 1855 |     SpvOpFixedRecipINTEL = 5924, | 
| 1856 |     SpvOpFixedRsqrtINTEL = 5925, | 
| 1857 |     SpvOpFixedSinINTEL = 5926, | 
| 1858 |     SpvOpFixedCosINTEL = 5927, | 
| 1859 |     SpvOpFixedSinCosINTEL = 5928, | 
| 1860 |     SpvOpFixedSinPiINTEL = 5929, | 
| 1861 |     SpvOpFixedCosPiINTEL = 5930, | 
| 1862 |     SpvOpFixedSinCosPiINTEL = 5931, | 
| 1863 |     SpvOpFixedLogINTEL = 5932, | 
| 1864 |     SpvOpFixedExpINTEL = 5933, | 
| 1865 |     SpvOpPtrCastToCrossWorkgroupINTEL = 5934, | 
| 1866 |     SpvOpCrossWorkgroupCastToPtrINTEL = 5938, | 
| 1867 |     SpvOpReadPipeBlockingINTEL = 5946, | 
| 1868 |     SpvOpWritePipeBlockingINTEL = 5947, | 
| 1869 |     SpvOpFPGARegINTEL = 5949, | 
| 1870 |     SpvOpRayQueryGetRayTMinKHR = 6016, | 
| 1871 |     SpvOpRayQueryGetRayFlagsKHR = 6017, | 
| 1872 |     SpvOpRayQueryGetIntersectionTKHR = 6018, | 
| 1873 |     SpvOpRayQueryGetIntersectionInstanceCustomIndexKHR = 6019, | 
| 1874 |     SpvOpRayQueryGetIntersectionInstanceIdKHR = 6020, | 
| 1875 |     SpvOpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR = 6021, | 
| 1876 |     SpvOpRayQueryGetIntersectionGeometryIndexKHR = 6022, | 
| 1877 |     SpvOpRayQueryGetIntersectionPrimitiveIndexKHR = 6023, | 
| 1878 |     SpvOpRayQueryGetIntersectionBarycentricsKHR = 6024, | 
| 1879 |     SpvOpRayQueryGetIntersectionFrontFaceKHR = 6025, | 
| 1880 |     SpvOpRayQueryGetIntersectionCandidateAABBOpaqueKHR = 6026, | 
| 1881 |     SpvOpRayQueryGetIntersectionObjectRayDirectionKHR = 6027, | 
| 1882 |     SpvOpRayQueryGetIntersectionObjectRayOriginKHR = 6028, | 
| 1883 |     SpvOpRayQueryGetWorldRayDirectionKHR = 6029, | 
| 1884 |     SpvOpRayQueryGetWorldRayOriginKHR = 6030, | 
| 1885 |     SpvOpRayQueryGetIntersectionObjectToWorldKHR = 6031, | 
| 1886 |     SpvOpRayQueryGetIntersectionWorldToObjectKHR = 6032, | 
| 1887 |     SpvOpAtomicFAddEXT = 6035, | 
| 1888 |     SpvOpTypeBufferSurfaceINTEL = 6086, | 
| 1889 |     SpvOpTypeStructContinuedINTEL = 6090, | 
| 1890 |     SpvOpConstantCompositeContinuedINTEL = 6091, | 
| 1891 |     SpvOpSpecConstantCompositeContinuedINTEL = 6092, | 
| 1892 |     SpvOpControlBarrierArriveINTEL = 6142, | 
| 1893 |     SpvOpControlBarrierWaitINTEL = 6143, | 
| 1894 |     SpvOpGroupIMulKHR = 6401, | 
| 1895 |     SpvOpGroupFMulKHR = 6402, | 
| 1896 |     SpvOpGroupBitwiseAndKHR = 6403, | 
| 1897 |     SpvOpGroupBitwiseOrKHR = 6404, | 
| 1898 |     SpvOpGroupBitwiseXorKHR = 6405, | 
| 1899 |     SpvOpGroupLogicalAndKHR = 6406, | 
| 1900 |     SpvOpGroupLogicalOrKHR = 6407, | 
| 1901 |     SpvOpGroupLogicalXorKHR = 6408, | 
| 1902 |     SpvOpMax = 0x7fffffff, | 
| 1903 | } SpvOp; | 
| 1904 |  | 
| 1905 | #ifdef SPV_ENABLE_UTILITY_CODE | 
| 1906 | #ifndef __cplusplus | 
| 1907 | #include <stdbool.h> | 
| 1908 | #endif | 
| 1909 | inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultType) { | 
| 1910 |     *hasResult = *hasResultType = false; | 
| 1911 |     switch (opcode) { | 
| 1912 |     default: /* unknown opcode */ break; | 
| 1913 |     case SpvOpNop: *hasResult = false; *hasResultType = false; break; | 
| 1914 |     case SpvOpUndef: *hasResult = true; *hasResultType = true; break; | 
| 1915 |     case SpvOpSourceContinued: *hasResult = false; *hasResultType = false; break; | 
| 1916 |     case SpvOpSource: *hasResult = false; *hasResultType = false; break; | 
| 1917 |     case SpvOpSourceExtension: *hasResult = false; *hasResultType = false; break; | 
| 1918 |     case SpvOpName: *hasResult = false; *hasResultType = false; break; | 
| 1919 |     case SpvOpMemberName: *hasResult = false; *hasResultType = false; break; | 
| 1920 |     case SpvOpString: *hasResult = true; *hasResultType = false; break; | 
| 1921 |     case SpvOpLine: *hasResult = false; *hasResultType = false; break; | 
| 1922 |     case SpvOpExtension: *hasResult = false; *hasResultType = false; break; | 
| 1923 |     case SpvOpExtInstImport: *hasResult = true; *hasResultType = false; break; | 
| 1924 |     case SpvOpExtInst: *hasResult = true; *hasResultType = true; break; | 
| 1925 |     case SpvOpMemoryModel: *hasResult = false; *hasResultType = false; break; | 
| 1926 |     case SpvOpEntryPoint: *hasResult = false; *hasResultType = false; break; | 
| 1927 |     case SpvOpExecutionMode: *hasResult = false; *hasResultType = false; break; | 
| 1928 |     case SpvOpCapability: *hasResult = false; *hasResultType = false; break; | 
| 1929 |     case SpvOpTypeVoid: *hasResult = true; *hasResultType = false; break; | 
| 1930 |     case SpvOpTypeBool: *hasResult = true; *hasResultType = false; break; | 
| 1931 |     case SpvOpTypeInt: *hasResult = true; *hasResultType = false; break; | 
| 1932 |     case SpvOpTypeFloat: *hasResult = true; *hasResultType = false; break; | 
| 1933 |     case SpvOpTypeVector: *hasResult = true; *hasResultType = false; break; | 
| 1934 |     case SpvOpTypeMatrix: *hasResult = true; *hasResultType = false; break; | 
| 1935 |     case SpvOpTypeImage: *hasResult = true; *hasResultType = false; break; | 
| 1936 |     case SpvOpTypeSampler: *hasResult = true; *hasResultType = false; break; | 
| 1937 |     case SpvOpTypeSampledImage: *hasResult = true; *hasResultType = false; break; | 
| 1938 |     case SpvOpTypeArray: *hasResult = true; *hasResultType = false; break; | 
| 1939 |     case SpvOpTypeRuntimeArray: *hasResult = true; *hasResultType = false; break; | 
| 1940 |     case SpvOpTypeStruct: *hasResult = true; *hasResultType = false; break; | 
| 1941 |     case SpvOpTypeOpaque: *hasResult = true; *hasResultType = false; break; | 
| 1942 |     case SpvOpTypePointer: *hasResult = true; *hasResultType = false; break; | 
| 1943 |     case SpvOpTypeFunction: *hasResult = true; *hasResultType = false; break; | 
| 1944 |     case SpvOpTypeEvent: *hasResult = true; *hasResultType = false; break; | 
| 1945 |     case SpvOpTypeDeviceEvent: *hasResult = true; *hasResultType = false; break; | 
| 1946 |     case SpvOpTypeReserveId: *hasResult = true; *hasResultType = false; break; | 
| 1947 |     case SpvOpTypeQueue: *hasResult = true; *hasResultType = false; break; | 
| 1948 |     case SpvOpTypePipe: *hasResult = true; *hasResultType = false; break; | 
| 1949 |     case SpvOpTypeForwardPointer: *hasResult = false; *hasResultType = false; break; | 
| 1950 |     case SpvOpConstantTrue: *hasResult = true; *hasResultType = true; break; | 
| 1951 |     case SpvOpConstantFalse: *hasResult = true; *hasResultType = true; break; | 
| 1952 |     case SpvOpConstant: *hasResult = true; *hasResultType = true; break; | 
| 1953 |     case SpvOpConstantComposite: *hasResult = true; *hasResultType = true; break; | 
| 1954 |     case SpvOpConstantSampler: *hasResult = true; *hasResultType = true; break; | 
| 1955 |     case SpvOpConstantNull: *hasResult = true; *hasResultType = true; break; | 
| 1956 |     case SpvOpSpecConstantTrue: *hasResult = true; *hasResultType = true; break; | 
| 1957 |     case SpvOpSpecConstantFalse: *hasResult = true; *hasResultType = true; break; | 
| 1958 |     case SpvOpSpecConstant: *hasResult = true; *hasResultType = true; break; | 
| 1959 |     case SpvOpSpecConstantComposite: *hasResult = true; *hasResultType = true; break; | 
| 1960 |     case SpvOpSpecConstantOp: *hasResult = true; *hasResultType = true; break; | 
| 1961 |     case SpvOpFunction: *hasResult = true; *hasResultType = true; break; | 
| 1962 |     case SpvOpFunctionParameter: *hasResult = true; *hasResultType = true; break; | 
| 1963 |     case SpvOpFunctionEnd: *hasResult = false; *hasResultType = false; break; | 
| 1964 |     case SpvOpFunctionCall: *hasResult = true; *hasResultType = true; break; | 
| 1965 |     case SpvOpVariable: *hasResult = true; *hasResultType = true; break; | 
| 1966 |     case SpvOpImageTexelPointer: *hasResult = true; *hasResultType = true; break; | 
| 1967 |     case SpvOpLoad: *hasResult = true; *hasResultType = true; break; | 
| 1968 |     case SpvOpStore: *hasResult = false; *hasResultType = false; break; | 
| 1969 |     case SpvOpCopyMemory: *hasResult = false; *hasResultType = false; break; | 
| 1970 |     case SpvOpCopyMemorySized: *hasResult = false; *hasResultType = false; break; | 
| 1971 |     case SpvOpAccessChain: *hasResult = true; *hasResultType = true; break; | 
| 1972 |     case SpvOpInBoundsAccessChain: *hasResult = true; *hasResultType = true; break; | 
| 1973 |     case SpvOpPtrAccessChain: *hasResult = true; *hasResultType = true; break; | 
| 1974 |     case SpvOpArrayLength: *hasResult = true; *hasResultType = true; break; | 
| 1975 |     case SpvOpGenericPtrMemSemantics: *hasResult = true; *hasResultType = true; break; | 
| 1976 |     case SpvOpInBoundsPtrAccessChain: *hasResult = true; *hasResultType = true; break; | 
| 1977 |     case SpvOpDecorate: *hasResult = false; *hasResultType = false; break; | 
| 1978 |     case SpvOpMemberDecorate: *hasResult = false; *hasResultType = false; break; | 
| 1979 |     case SpvOpDecorationGroup: *hasResult = true; *hasResultType = false; break; | 
| 1980 |     case SpvOpGroupDecorate: *hasResult = false; *hasResultType = false; break; | 
| 1981 |     case SpvOpGroupMemberDecorate: *hasResult = false; *hasResultType = false; break; | 
| 1982 |     case SpvOpVectorExtractDynamic: *hasResult = true; *hasResultType = true; break; | 
| 1983 |     case SpvOpVectorInsertDynamic: *hasResult = true; *hasResultType = true; break; | 
| 1984 |     case SpvOpVectorShuffle: *hasResult = true; *hasResultType = true; break; | 
| 1985 |     case SpvOpCompositeConstruct: *hasResult = true; *hasResultType = true; break; | 
| 1986 |     case SpvOpCompositeExtract: *hasResult = true; *hasResultType = true; break; | 
| 1987 |     case SpvOpCompositeInsert: *hasResult = true; *hasResultType = true; break; | 
| 1988 |     case SpvOpCopyObject: *hasResult = true; *hasResultType = true; break; | 
| 1989 |     case SpvOpTranspose: *hasResult = true; *hasResultType = true; break; | 
| 1990 |     case SpvOpSampledImage: *hasResult = true; *hasResultType = true; break; | 
| 1991 |     case SpvOpImageSampleImplicitLod: *hasResult = true; *hasResultType = true; break; | 
| 1992 |     case SpvOpImageSampleExplicitLod: *hasResult = true; *hasResultType = true; break; | 
| 1993 |     case SpvOpImageSampleDrefImplicitLod: *hasResult = true; *hasResultType = true; break; | 
| 1994 |     case SpvOpImageSampleDrefExplicitLod: *hasResult = true; *hasResultType = true; break; | 
| 1995 |     case SpvOpImageSampleProjImplicitLod: *hasResult = true; *hasResultType = true; break; | 
| 1996 |     case SpvOpImageSampleProjExplicitLod: *hasResult = true; *hasResultType = true; break; | 
| 1997 |     case SpvOpImageSampleProjDrefImplicitLod: *hasResult = true; *hasResultType = true; break; | 
| 1998 |     case SpvOpImageSampleProjDrefExplicitLod: *hasResult = true; *hasResultType = true; break; | 
| 1999 |     case SpvOpImageFetch: *hasResult = true; *hasResultType = true; break; | 
| 2000 |     case SpvOpImageGather: *hasResult = true; *hasResultType = true; break; | 
| 2001 |     case SpvOpImageDrefGather: *hasResult = true; *hasResultType = true; break; | 
| 2002 |     case SpvOpImageRead: *hasResult = true; *hasResultType = true; break; | 
| 2003 |     case SpvOpImageWrite: *hasResult = false; *hasResultType = false; break; | 
| 2004 |     case SpvOpImage: *hasResult = true; *hasResultType = true; break; | 
| 2005 |     case SpvOpImageQueryFormat: *hasResult = true; *hasResultType = true; break; | 
| 2006 |     case SpvOpImageQueryOrder: *hasResult = true; *hasResultType = true; break; | 
| 2007 |     case SpvOpImageQuerySizeLod: *hasResult = true; *hasResultType = true; break; | 
| 2008 |     case SpvOpImageQuerySize: *hasResult = true; *hasResultType = true; break; | 
| 2009 |     case SpvOpImageQueryLod: *hasResult = true; *hasResultType = true; break; | 
| 2010 |     case SpvOpImageQueryLevels: *hasResult = true; *hasResultType = true; break; | 
| 2011 |     case SpvOpImageQuerySamples: *hasResult = true; *hasResultType = true; break; | 
| 2012 |     case SpvOpConvertFToU: *hasResult = true; *hasResultType = true; break; | 
| 2013 |     case SpvOpConvertFToS: *hasResult = true; *hasResultType = true; break; | 
| 2014 |     case SpvOpConvertSToF: *hasResult = true; *hasResultType = true; break; | 
| 2015 |     case SpvOpConvertUToF: *hasResult = true; *hasResultType = true; break; | 
| 2016 |     case SpvOpUConvert: *hasResult = true; *hasResultType = true; break; | 
| 2017 |     case SpvOpSConvert: *hasResult = true; *hasResultType = true; break; | 
| 2018 |     case SpvOpFConvert: *hasResult = true; *hasResultType = true; break; | 
| 2019 |     case SpvOpQuantizeToF16: *hasResult = true; *hasResultType = true; break; | 
| 2020 |     case SpvOpConvertPtrToU: *hasResult = true; *hasResultType = true; break; | 
| 2021 |     case SpvOpSatConvertSToU: *hasResult = true; *hasResultType = true; break; | 
| 2022 |     case SpvOpSatConvertUToS: *hasResult = true; *hasResultType = true; break; | 
| 2023 |     case SpvOpConvertUToPtr: *hasResult = true; *hasResultType = true; break; | 
| 2024 |     case SpvOpPtrCastToGeneric: *hasResult = true; *hasResultType = true; break; | 
| 2025 |     case SpvOpGenericCastToPtr: *hasResult = true; *hasResultType = true; break; | 
| 2026 |     case SpvOpGenericCastToPtrExplicit: *hasResult = true; *hasResultType = true; break; | 
| 2027 |     case SpvOpBitcast: *hasResult = true; *hasResultType = true; break; | 
| 2028 |     case SpvOpSNegate: *hasResult = true; *hasResultType = true; break; | 
| 2029 |     case SpvOpFNegate: *hasResult = true; *hasResultType = true; break; | 
| 2030 |     case SpvOpIAdd: *hasResult = true; *hasResultType = true; break; | 
| 2031 |     case SpvOpFAdd: *hasResult = true; *hasResultType = true; break; | 
| 2032 |     case SpvOpISub: *hasResult = true; *hasResultType = true; break; | 
| 2033 |     case SpvOpFSub: *hasResult = true; *hasResultType = true; break; | 
| 2034 |     case SpvOpIMul: *hasResult = true; *hasResultType = true; break; | 
| 2035 |     case SpvOpFMul: *hasResult = true; *hasResultType = true; break; | 
| 2036 |     case SpvOpUDiv: *hasResult = true; *hasResultType = true; break; | 
| 2037 |     case SpvOpSDiv: *hasResult = true; *hasResultType = true; break; | 
| 2038 |     case SpvOpFDiv: *hasResult = true; *hasResultType = true; break; | 
| 2039 |     case SpvOpUMod: *hasResult = true; *hasResultType = true; break; | 
| 2040 |     case SpvOpSRem: *hasResult = true; *hasResultType = true; break; | 
| 2041 |     case SpvOpSMod: *hasResult = true; *hasResultType = true; break; | 
| 2042 |     case SpvOpFRem: *hasResult = true; *hasResultType = true; break; | 
| 2043 |     case SpvOpFMod: *hasResult = true; *hasResultType = true; break; | 
| 2044 |     case SpvOpVectorTimesScalar: *hasResult = true; *hasResultType = true; break; | 
| 2045 |     case SpvOpMatrixTimesScalar: *hasResult = true; *hasResultType = true; break; | 
| 2046 |     case SpvOpVectorTimesMatrix: *hasResult = true; *hasResultType = true; break; | 
| 2047 |     case SpvOpMatrixTimesVector: *hasResult = true; *hasResultType = true; break; | 
| 2048 |     case SpvOpMatrixTimesMatrix: *hasResult = true; *hasResultType = true; break; | 
| 2049 |     case SpvOpOuterProduct: *hasResult = true; *hasResultType = true; break; | 
| 2050 |     case SpvOpDot: *hasResult = true; *hasResultType = true; break; | 
| 2051 |     case SpvOpIAddCarry: *hasResult = true; *hasResultType = true; break; | 
| 2052 |     case SpvOpISubBorrow: *hasResult = true; *hasResultType = true; break; | 
| 2053 |     case SpvOpUMulExtended: *hasResult = true; *hasResultType = true; break; | 
| 2054 |     case SpvOpSMulExtended: *hasResult = true; *hasResultType = true; break; | 
| 2055 |     case SpvOpAny: *hasResult = true; *hasResultType = true; break; | 
| 2056 |     case SpvOpAll: *hasResult = true; *hasResultType = true; break; | 
| 2057 |     case SpvOpIsNan: *hasResult = true; *hasResultType = true; break; | 
| 2058 |     case SpvOpIsInf: *hasResult = true; *hasResultType = true; break; | 
| 2059 |     case SpvOpIsFinite: *hasResult = true; *hasResultType = true; break; | 
| 2060 |     case SpvOpIsNormal: *hasResult = true; *hasResultType = true; break; | 
| 2061 |     case SpvOpSignBitSet: *hasResult = true; *hasResultType = true; break; | 
| 2062 |     case SpvOpLessOrGreater: *hasResult = true; *hasResultType = true; break; | 
| 2063 |     case SpvOpOrdered: *hasResult = true; *hasResultType = true; break; | 
| 2064 |     case SpvOpUnordered: *hasResult = true; *hasResultType = true; break; | 
| 2065 |     case SpvOpLogicalEqual: *hasResult = true; *hasResultType = true; break; | 
| 2066 |     case SpvOpLogicalNotEqual: *hasResult = true; *hasResultType = true; break; | 
| 2067 |     case SpvOpLogicalOr: *hasResult = true; *hasResultType = true; break; | 
| 2068 |     case SpvOpLogicalAnd: *hasResult = true; *hasResultType = true; break; | 
| 2069 |     case SpvOpLogicalNot: *hasResult = true; *hasResultType = true; break; | 
| 2070 |     case SpvOpSelect: *hasResult = true; *hasResultType = true; break; | 
| 2071 |     case SpvOpIEqual: *hasResult = true; *hasResultType = true; break; | 
| 2072 |     case SpvOpINotEqual: *hasResult = true; *hasResultType = true; break; | 
| 2073 |     case SpvOpUGreaterThan: *hasResult = true; *hasResultType = true; break; | 
| 2074 |     case SpvOpSGreaterThan: *hasResult = true; *hasResultType = true; break; | 
| 2075 |     case SpvOpUGreaterThanEqual: *hasResult = true; *hasResultType = true; break; | 
| 2076 |     case SpvOpSGreaterThanEqual: *hasResult = true; *hasResultType = true; break; | 
| 2077 |     case SpvOpULessThan: *hasResult = true; *hasResultType = true; break; | 
| 2078 |     case SpvOpSLessThan: *hasResult = true; *hasResultType = true; break; | 
| 2079 |     case SpvOpULessThanEqual: *hasResult = true; *hasResultType = true; break; | 
| 2080 |     case SpvOpSLessThanEqual: *hasResult = true; *hasResultType = true; break; | 
| 2081 |     case SpvOpFOrdEqual: *hasResult = true; *hasResultType = true; break; | 
| 2082 |     case SpvOpFUnordEqual: *hasResult = true; *hasResultType = true; break; | 
| 2083 |     case SpvOpFOrdNotEqual: *hasResult = true; *hasResultType = true; break; | 
| 2084 |     case SpvOpFUnordNotEqual: *hasResult = true; *hasResultType = true; break; | 
| 2085 |     case SpvOpFOrdLessThan: *hasResult = true; *hasResultType = true; break; | 
| 2086 |     case SpvOpFUnordLessThan: *hasResult = true; *hasResultType = true; break; | 
| 2087 |     case SpvOpFOrdGreaterThan: *hasResult = true; *hasResultType = true; break; | 
| 2088 |     case SpvOpFUnordGreaterThan: *hasResult = true; *hasResultType = true; break; | 
| 2089 |     case SpvOpFOrdLessThanEqual: *hasResult = true; *hasResultType = true; break; | 
| 2090 |     case SpvOpFUnordLessThanEqual: *hasResult = true; *hasResultType = true; break; | 
| 2091 |     case SpvOpFOrdGreaterThanEqual: *hasResult = true; *hasResultType = true; break; | 
| 2092 |     case SpvOpFUnordGreaterThanEqual: *hasResult = true; *hasResultType = true; break; | 
| 2093 |     case SpvOpShiftRightLogical: *hasResult = true; *hasResultType = true; break; | 
| 2094 |     case SpvOpShiftRightArithmetic: *hasResult = true; *hasResultType = true; break; | 
| 2095 |     case SpvOpShiftLeftLogical: *hasResult = true; *hasResultType = true; break; | 
| 2096 |     case SpvOpBitwiseOr: *hasResult = true; *hasResultType = true; break; | 
| 2097 |     case SpvOpBitwiseXor: *hasResult = true; *hasResultType = true; break; | 
| 2098 |     case SpvOpBitwiseAnd: *hasResult = true; *hasResultType = true; break; | 
| 2099 |     case SpvOpNot: *hasResult = true; *hasResultType = true; break; | 
| 2100 |     case SpvOpBitFieldInsert: *hasResult = true; *hasResultType = true; break; | 
| 2101 |     case SpvOpBitFieldSExtract: *hasResult = true; *hasResultType = true; break; | 
| 2102 |     case SpvOpBitFieldUExtract: *hasResult = true; *hasResultType = true; break; | 
| 2103 |     case SpvOpBitReverse: *hasResult = true; *hasResultType = true; break; | 
| 2104 |     case SpvOpBitCount: *hasResult = true; *hasResultType = true; break; | 
| 2105 |     case SpvOpDPdx: *hasResult = true; *hasResultType = true; break; | 
| 2106 |     case SpvOpDPdy: *hasResult = true; *hasResultType = true; break; | 
| 2107 |     case SpvOpFwidth: *hasResult = true; *hasResultType = true; break; | 
| 2108 |     case SpvOpDPdxFine: *hasResult = true; *hasResultType = true; break; | 
| 2109 |     case SpvOpDPdyFine: *hasResult = true; *hasResultType = true; break; | 
| 2110 |     case SpvOpFwidthFine: *hasResult = true; *hasResultType = true; break; | 
| 2111 |     case SpvOpDPdxCoarse: *hasResult = true; *hasResultType = true; break; | 
| 2112 |     case SpvOpDPdyCoarse: *hasResult = true; *hasResultType = true; break; | 
| 2113 |     case SpvOpFwidthCoarse: *hasResult = true; *hasResultType = true; break; | 
| 2114 |     case SpvOpEmitVertex: *hasResult = false; *hasResultType = false; break; | 
| 2115 |     case SpvOpEndPrimitive: *hasResult = false; *hasResultType = false; break; | 
| 2116 |     case SpvOpEmitStreamVertex: *hasResult = false; *hasResultType = false; break; | 
| 2117 |     case SpvOpEndStreamPrimitive: *hasResult = false; *hasResultType = false; break; | 
| 2118 |     case SpvOpControlBarrier: *hasResult = false; *hasResultType = false; break; | 
| 2119 |     case SpvOpMemoryBarrier: *hasResult = false; *hasResultType = false; break; | 
| 2120 |     case SpvOpAtomicLoad: *hasResult = true; *hasResultType = true; break; | 
| 2121 |     case SpvOpAtomicStore: *hasResult = false; *hasResultType = false; break; | 
| 2122 |     case SpvOpAtomicExchange: *hasResult = true; *hasResultType = true; break; | 
| 2123 |     case SpvOpAtomicCompareExchange: *hasResult = true; *hasResultType = true; break; | 
| 2124 |     case SpvOpAtomicCompareExchangeWeak: *hasResult = true; *hasResultType = true; break; | 
| 2125 |     case SpvOpAtomicIIncrement: *hasResult = true; *hasResultType = true; break; | 
| 2126 |     case SpvOpAtomicIDecrement: *hasResult = true; *hasResultType = true; break; | 
| 2127 |     case SpvOpAtomicIAdd: *hasResult = true; *hasResultType = true; break; | 
| 2128 |     case SpvOpAtomicISub: *hasResult = true; *hasResultType = true; break; | 
| 2129 |     case SpvOpAtomicSMin: *hasResult = true; *hasResultType = true; break; | 
| 2130 |     case SpvOpAtomicUMin: *hasResult = true; *hasResultType = true; break; | 
| 2131 |     case SpvOpAtomicSMax: *hasResult = true; *hasResultType = true; break; | 
| 2132 |     case SpvOpAtomicUMax: *hasResult = true; *hasResultType = true; break; | 
| 2133 |     case SpvOpAtomicAnd: *hasResult = true; *hasResultType = true; break; | 
| 2134 |     case SpvOpAtomicOr: *hasResult = true; *hasResultType = true; break; | 
| 2135 |     case SpvOpAtomicXor: *hasResult = true; *hasResultType = true; break; | 
| 2136 |     case SpvOpPhi: *hasResult = true; *hasResultType = true; break; | 
| 2137 |     case SpvOpLoopMerge: *hasResult = false; *hasResultType = false; break; | 
| 2138 |     case SpvOpSelectionMerge: *hasResult = false; *hasResultType = false; break; | 
| 2139 |     case SpvOpLabel: *hasResult = true; *hasResultType = false; break; | 
| 2140 |     case SpvOpBranch: *hasResult = false; *hasResultType = false; break; | 
| 2141 |     case SpvOpBranchConditional: *hasResult = false; *hasResultType = false; break; | 
| 2142 |     case SpvOpSwitch: *hasResult = false; *hasResultType = false; break; | 
| 2143 |     case SpvOpKill: *hasResult = false; *hasResultType = false; break; | 
| 2144 |     case SpvOpReturn: *hasResult = false; *hasResultType = false; break; | 
| 2145 |     case SpvOpReturnValue: *hasResult = false; *hasResultType = false; break; | 
| 2146 |     case SpvOpUnreachable: *hasResult = false; *hasResultType = false; break; | 
| 2147 |     case SpvOpLifetimeStart: *hasResult = false; *hasResultType = false; break; | 
| 2148 |     case SpvOpLifetimeStop: *hasResult = false; *hasResultType = false; break; | 
| 2149 |     case SpvOpGroupAsyncCopy: *hasResult = true; *hasResultType = true; break; | 
| 2150 |     case SpvOpGroupWaitEvents: *hasResult = false; *hasResultType = false; break; | 
| 2151 |     case SpvOpGroupAll: *hasResult = true; *hasResultType = true; break; | 
| 2152 |     case SpvOpGroupAny: *hasResult = true; *hasResultType = true; break; | 
| 2153 |     case SpvOpGroupBroadcast: *hasResult = true; *hasResultType = true; break; | 
| 2154 |     case SpvOpGroupIAdd: *hasResult = true; *hasResultType = true; break; | 
| 2155 |     case SpvOpGroupFAdd: *hasResult = true; *hasResultType = true; break; | 
| 2156 |     case SpvOpGroupFMin: *hasResult = true; *hasResultType = true; break; | 
| 2157 |     case SpvOpGroupUMin: *hasResult = true; *hasResultType = true; break; | 
| 2158 |     case SpvOpGroupSMin: *hasResult = true; *hasResultType = true; break; | 
| 2159 |     case SpvOpGroupFMax: *hasResult = true; *hasResultType = true; break; | 
| 2160 |     case SpvOpGroupUMax: *hasResult = true; *hasResultType = true; break; | 
| 2161 |     case SpvOpGroupSMax: *hasResult = true; *hasResultType = true; break; | 
| 2162 |     case SpvOpReadPipe: *hasResult = true; *hasResultType = true; break; | 
| 2163 |     case SpvOpWritePipe: *hasResult = true; *hasResultType = true; break; | 
| 2164 |     case SpvOpReservedReadPipe: *hasResult = true; *hasResultType = true; break; | 
| 2165 |     case SpvOpReservedWritePipe: *hasResult = true; *hasResultType = true; break; | 
| 2166 |     case SpvOpReserveReadPipePackets: *hasResult = true; *hasResultType = true; break; | 
| 2167 |     case SpvOpReserveWritePipePackets: *hasResult = true; *hasResultType = true; break; | 
| 2168 |     case SpvOpCommitReadPipe: *hasResult = false; *hasResultType = false; break; | 
| 2169 |     case SpvOpCommitWritePipe: *hasResult = false; *hasResultType = false; break; | 
| 2170 |     case SpvOpIsValidReserveId: *hasResult = true; *hasResultType = true; break; | 
| 2171 |     case SpvOpGetNumPipePackets: *hasResult = true; *hasResultType = true; break; | 
| 2172 |     case SpvOpGetMaxPipePackets: *hasResult = true; *hasResultType = true; break; | 
| 2173 |     case SpvOpGroupReserveReadPipePackets: *hasResult = true; *hasResultType = true; break; | 
| 2174 |     case SpvOpGroupReserveWritePipePackets: *hasResult = true; *hasResultType = true; break; | 
| 2175 |     case SpvOpGroupCommitReadPipe: *hasResult = false; *hasResultType = false; break; | 
| 2176 |     case SpvOpGroupCommitWritePipe: *hasResult = false; *hasResultType = false; break; | 
| 2177 |     case SpvOpEnqueueMarker: *hasResult = true; *hasResultType = true; break; | 
| 2178 |     case SpvOpEnqueueKernel: *hasResult = true; *hasResultType = true; break; | 
| 2179 |     case SpvOpGetKernelNDrangeSubGroupCount: *hasResult = true; *hasResultType = true; break; | 
| 2180 |     case SpvOpGetKernelNDrangeMaxSubGroupSize: *hasResult = true; *hasResultType = true; break; | 
| 2181 |     case SpvOpGetKernelWorkGroupSize: *hasResult = true; *hasResultType = true; break; | 
| 2182 |     case SpvOpGetKernelPreferredWorkGroupSizeMultiple: *hasResult = true; *hasResultType = true; break; | 
| 2183 |     case SpvOpRetainEvent: *hasResult = false; *hasResultType = false; break; | 
| 2184 |     case SpvOpReleaseEvent: *hasResult = false; *hasResultType = false; break; | 
| 2185 |     case SpvOpCreateUserEvent: *hasResult = true; *hasResultType = true; break; | 
| 2186 |     case SpvOpIsValidEvent: *hasResult = true; *hasResultType = true; break; | 
| 2187 |     case SpvOpSetUserEventStatus: *hasResult = false; *hasResultType = false; break; | 
| 2188 |     case SpvOpCaptureEventProfilingInfo: *hasResult = false; *hasResultType = false; break; | 
| 2189 |     case SpvOpGetDefaultQueue: *hasResult = true; *hasResultType = true; break; | 
| 2190 |     case SpvOpBuildNDRange: *hasResult = true; *hasResultType = true; break; | 
| 2191 |     case SpvOpImageSparseSampleImplicitLod: *hasResult = true; *hasResultType = true; break; | 
| 2192 |     case SpvOpImageSparseSampleExplicitLod: *hasResult = true; *hasResultType = true; break; | 
| 2193 |     case SpvOpImageSparseSampleDrefImplicitLod: *hasResult = true; *hasResultType = true; break; | 
| 2194 |     case SpvOpImageSparseSampleDrefExplicitLod: *hasResult = true; *hasResultType = true; break; | 
| 2195 |     case SpvOpImageSparseSampleProjImplicitLod: *hasResult = true; *hasResultType = true; break; | 
| 2196 |     case SpvOpImageSparseSampleProjExplicitLod: *hasResult = true; *hasResultType = true; break; | 
| 2197 |     case SpvOpImageSparseSampleProjDrefImplicitLod: *hasResult = true; *hasResultType = true; break; | 
| 2198 |     case SpvOpImageSparseSampleProjDrefExplicitLod: *hasResult = true; *hasResultType = true; break; | 
| 2199 |     case SpvOpImageSparseFetch: *hasResult = true; *hasResultType = true; break; | 
| 2200 |     case SpvOpImageSparseGather: *hasResult = true; *hasResultType = true; break; | 
| 2201 |     case SpvOpImageSparseDrefGather: *hasResult = true; *hasResultType = true; break; | 
| 2202 |     case SpvOpImageSparseTexelsResident: *hasResult = true; *hasResultType = true; break; | 
| 2203 |     case SpvOpNoLine: *hasResult = false; *hasResultType = false; break; | 
| 2204 |     case SpvOpAtomicFlagTestAndSet: *hasResult = true; *hasResultType = true; break; | 
| 2205 |     case SpvOpAtomicFlagClear: *hasResult = false; *hasResultType = false; break; | 
| 2206 |     case SpvOpImageSparseRead: *hasResult = true; *hasResultType = true; break; | 
| 2207 |     case SpvOpSizeOf: *hasResult = true; *hasResultType = true; break; | 
| 2208 |     case SpvOpTypePipeStorage: *hasResult = true; *hasResultType = false; break; | 
| 2209 |     case SpvOpConstantPipeStorage: *hasResult = true; *hasResultType = true; break; | 
| 2210 |     case SpvOpCreatePipeFromPipeStorage: *hasResult = true; *hasResultType = true; break; | 
| 2211 |     case SpvOpGetKernelLocalSizeForSubgroupCount: *hasResult = true; *hasResultType = true; break; | 
| 2212 |     case SpvOpGetKernelMaxNumSubgroups: *hasResult = true; *hasResultType = true; break; | 
| 2213 |     case SpvOpTypeNamedBarrier: *hasResult = true; *hasResultType = false; break; | 
| 2214 |     case SpvOpNamedBarrierInitialize: *hasResult = true; *hasResultType = true; break; | 
| 2215 |     case SpvOpMemoryNamedBarrier: *hasResult = false; *hasResultType = false; break; | 
| 2216 |     case SpvOpModuleProcessed: *hasResult = false; *hasResultType = false; break; | 
| 2217 |     case SpvOpExecutionModeId: *hasResult = false; *hasResultType = false; break; | 
| 2218 |     case SpvOpDecorateId: *hasResult = false; *hasResultType = false; break; | 
| 2219 |     case SpvOpGroupNonUniformElect: *hasResult = true; *hasResultType = true; break; | 
| 2220 |     case SpvOpGroupNonUniformAll: *hasResult = true; *hasResultType = true; break; | 
| 2221 |     case SpvOpGroupNonUniformAny: *hasResult = true; *hasResultType = true; break; | 
| 2222 |     case SpvOpGroupNonUniformAllEqual: *hasResult = true; *hasResultType = true; break; | 
| 2223 |     case SpvOpGroupNonUniformBroadcast: *hasResult = true; *hasResultType = true; break; | 
| 2224 |     case SpvOpGroupNonUniformBroadcastFirst: *hasResult = true; *hasResultType = true; break; | 
| 2225 |     case SpvOpGroupNonUniformBallot: *hasResult = true; *hasResultType = true; break; | 
| 2226 |     case SpvOpGroupNonUniformInverseBallot: *hasResult = true; *hasResultType = true; break; | 
| 2227 |     case SpvOpGroupNonUniformBallotBitExtract: *hasResult = true; *hasResultType = true; break; | 
| 2228 |     case SpvOpGroupNonUniformBallotBitCount: *hasResult = true; *hasResultType = true; break; | 
| 2229 |     case SpvOpGroupNonUniformBallotFindLSB: *hasResult = true; *hasResultType = true; break; | 
| 2230 |     case SpvOpGroupNonUniformBallotFindMSB: *hasResult = true; *hasResultType = true; break; | 
| 2231 |     case SpvOpGroupNonUniformShuffle: *hasResult = true; *hasResultType = true; break; | 
| 2232 |     case SpvOpGroupNonUniformShuffleXor: *hasResult = true; *hasResultType = true; break; | 
| 2233 |     case SpvOpGroupNonUniformShuffleUp: *hasResult = true; *hasResultType = true; break; | 
| 2234 |     case SpvOpGroupNonUniformShuffleDown: *hasResult = true; *hasResultType = true; break; | 
| 2235 |     case SpvOpGroupNonUniformIAdd: *hasResult = true; *hasResultType = true; break; | 
| 2236 |     case SpvOpGroupNonUniformFAdd: *hasResult = true; *hasResultType = true; break; | 
| 2237 |     case SpvOpGroupNonUniformIMul: *hasResult = true; *hasResultType = true; break; | 
| 2238 |     case SpvOpGroupNonUniformFMul: *hasResult = true; *hasResultType = true; break; | 
| 2239 |     case SpvOpGroupNonUniformSMin: *hasResult = true; *hasResultType = true; break; | 
| 2240 |     case SpvOpGroupNonUniformUMin: *hasResult = true; *hasResultType = true; break; | 
| 2241 |     case SpvOpGroupNonUniformFMin: *hasResult = true; *hasResultType = true; break; | 
| 2242 |     case SpvOpGroupNonUniformSMax: *hasResult = true; *hasResultType = true; break; | 
| 2243 |     case SpvOpGroupNonUniformUMax: *hasResult = true; *hasResultType = true; break; | 
| 2244 |     case SpvOpGroupNonUniformFMax: *hasResult = true; *hasResultType = true; break; | 
| 2245 |     case SpvOpGroupNonUniformBitwiseAnd: *hasResult = true; *hasResultType = true; break; | 
| 2246 |     case SpvOpGroupNonUniformBitwiseOr: *hasResult = true; *hasResultType = true; break; | 
| 2247 |     case SpvOpGroupNonUniformBitwiseXor: *hasResult = true; *hasResultType = true; break; | 
| 2248 |     case SpvOpGroupNonUniformLogicalAnd: *hasResult = true; *hasResultType = true; break; | 
| 2249 |     case SpvOpGroupNonUniformLogicalOr: *hasResult = true; *hasResultType = true; break; | 
| 2250 |     case SpvOpGroupNonUniformLogicalXor: *hasResult = true; *hasResultType = true; break; | 
| 2251 |     case SpvOpGroupNonUniformQuadBroadcast: *hasResult = true; *hasResultType = true; break; | 
| 2252 |     case SpvOpGroupNonUniformQuadSwap: *hasResult = true; *hasResultType = true; break; | 
| 2253 |     case SpvOpCopyLogical: *hasResult = true; *hasResultType = true; break; | 
| 2254 |     case SpvOpPtrEqual: *hasResult = true; *hasResultType = true; break; | 
| 2255 |     case SpvOpPtrNotEqual: *hasResult = true; *hasResultType = true; break; | 
| 2256 |     case SpvOpPtrDiff: *hasResult = true; *hasResultType = true; break; | 
| 2257 |     case SpvOpTerminateInvocation: *hasResult = false; *hasResultType = false; break; | 
| 2258 |     case SpvOpSubgroupBallotKHR: *hasResult = true; *hasResultType = true; break; | 
| 2259 |     case SpvOpSubgroupFirstInvocationKHR: *hasResult = true; *hasResultType = true; break; | 
| 2260 |     case SpvOpSubgroupAllKHR: *hasResult = true; *hasResultType = true; break; | 
| 2261 |     case SpvOpSubgroupAnyKHR: *hasResult = true; *hasResultType = true; break; | 
| 2262 |     case SpvOpSubgroupAllEqualKHR: *hasResult = true; *hasResultType = true; break; | 
| 2263 |     case SpvOpGroupNonUniformRotateKHR: *hasResult = true; *hasResultType = true; break; | 
| 2264 |     case SpvOpSubgroupReadInvocationKHR: *hasResult = true; *hasResultType = true; break; | 
| 2265 |     case SpvOpTraceRayKHR: *hasResult = false; *hasResultType = false; break; | 
| 2266 |     case SpvOpExecuteCallableKHR: *hasResult = false; *hasResultType = false; break; | 
| 2267 |     case SpvOpConvertUToAccelerationStructureKHR: *hasResult = true; *hasResultType = true; break; | 
| 2268 |     case SpvOpIgnoreIntersectionKHR: *hasResult = false; *hasResultType = false; break; | 
| 2269 |     case SpvOpTerminateRayKHR: *hasResult = false; *hasResultType = false; break; | 
| 2270 |     case SpvOpSDot: *hasResult = true; *hasResultType = true; break; | 
| 2271 |     case SpvOpUDot: *hasResult = true; *hasResultType = true; break; | 
| 2272 |     case SpvOpSUDot: *hasResult = true; *hasResultType = true; break; | 
| 2273 |     case SpvOpSDotAccSat: *hasResult = true; *hasResultType = true; break; | 
| 2274 |     case SpvOpUDotAccSat: *hasResult = true; *hasResultType = true; break; | 
| 2275 |     case SpvOpSUDotAccSat: *hasResult = true; *hasResultType = true; break; | 
| 2276 |     case SpvOpTypeRayQueryKHR: *hasResult = true; *hasResultType = false; break; | 
| 2277 |     case SpvOpRayQueryInitializeKHR: *hasResult = false; *hasResultType = false; break; | 
| 2278 |     case SpvOpRayQueryTerminateKHR: *hasResult = false; *hasResultType = false; break; | 
| 2279 |     case SpvOpRayQueryGenerateIntersectionKHR: *hasResult = false; *hasResultType = false; break; | 
| 2280 |     case SpvOpRayQueryConfirmIntersectionKHR: *hasResult = false; *hasResultType = false; break; | 
| 2281 |     case SpvOpRayQueryProceedKHR: *hasResult = true; *hasResultType = true; break; | 
| 2282 |     case SpvOpRayQueryGetIntersectionTypeKHR: *hasResult = true; *hasResultType = true; break; | 
| 2283 |     case SpvOpImageSampleWeightedQCOM: *hasResult = true; *hasResultType = true; break; | 
| 2284 |     case SpvOpImageBoxFilterQCOM: *hasResult = true; *hasResultType = true; break; | 
| 2285 |     case SpvOpImageBlockMatchSSDQCOM: *hasResult = true; *hasResultType = true; break; | 
| 2286 |     case SpvOpImageBlockMatchSADQCOM: *hasResult = true; *hasResultType = true; break; | 
| 2287 |     case SpvOpGroupIAddNonUniformAMD: *hasResult = true; *hasResultType = true; break; | 
| 2288 |     case SpvOpGroupFAddNonUniformAMD: *hasResult = true; *hasResultType = true; break; | 
| 2289 |     case SpvOpGroupFMinNonUniformAMD: *hasResult = true; *hasResultType = true; break; | 
| 2290 |     case SpvOpGroupUMinNonUniformAMD: *hasResult = true; *hasResultType = true; break; | 
| 2291 |     case SpvOpGroupSMinNonUniformAMD: *hasResult = true; *hasResultType = true; break; | 
| 2292 |     case SpvOpGroupFMaxNonUniformAMD: *hasResult = true; *hasResultType = true; break; | 
| 2293 |     case SpvOpGroupUMaxNonUniformAMD: *hasResult = true; *hasResultType = true; break; | 
| 2294 |     case SpvOpGroupSMaxNonUniformAMD: *hasResult = true; *hasResultType = true; break; | 
| 2295 |     case SpvOpFragmentMaskFetchAMD: *hasResult = true; *hasResultType = true; break; | 
| 2296 |     case SpvOpFragmentFetchAMD: *hasResult = true; *hasResultType = true; break; | 
| 2297 |     case SpvOpReadClockKHR: *hasResult = true; *hasResultType = true; break; | 
| 2298 |     case SpvOpImageSampleFootprintNV: *hasResult = true; *hasResultType = true; break; | 
| 2299 |     case SpvOpEmitMeshTasksEXT: *hasResult = false; *hasResultType = false; break; | 
| 2300 |     case SpvOpSetMeshOutputsEXT: *hasResult = false; *hasResultType = false; break; | 
| 2301 |     case SpvOpGroupNonUniformPartitionNV: *hasResult = true; *hasResultType = true; break; | 
| 2302 |     case SpvOpWritePackedPrimitiveIndices4x8NV: *hasResult = false; *hasResultType = false; break; | 
| 2303 |     case SpvOpReportIntersectionNV: *hasResult = true; *hasResultType = true; break; | 
| 2304 |     case SpvOpIgnoreIntersectionNV: *hasResult = false; *hasResultType = false; break; | 
| 2305 |     case SpvOpTerminateRayNV: *hasResult = false; *hasResultType = false; break; | 
| 2306 |     case SpvOpTraceNV: *hasResult = false; *hasResultType = false; break; | 
| 2307 |     case SpvOpTraceMotionNV: *hasResult = false; *hasResultType = false; break; | 
| 2308 |     case SpvOpTraceRayMotionNV: *hasResult = false; *hasResultType = false; break; | 
| 2309 |     case SpvOpTypeAccelerationStructureNV: *hasResult = true; *hasResultType = false; break; | 
| 2310 |     case SpvOpExecuteCallableNV: *hasResult = false; *hasResultType = false; break; | 
| 2311 |     case SpvOpTypeCooperativeMatrixNV: *hasResult = true; *hasResultType = false; break; | 
| 2312 |     case SpvOpCooperativeMatrixLoadNV: *hasResult = true; *hasResultType = true; break; | 
| 2313 |     case SpvOpCooperativeMatrixStoreNV: *hasResult = false; *hasResultType = false; break; | 
| 2314 |     case SpvOpCooperativeMatrixMulAddNV: *hasResult = true; *hasResultType = true; break; | 
| 2315 |     case SpvOpCooperativeMatrixLengthNV: *hasResult = true; *hasResultType = true; break; | 
| 2316 |     case SpvOpBeginInvocationInterlockEXT: *hasResult = false; *hasResultType = false; break; | 
| 2317 |     case SpvOpEndInvocationInterlockEXT: *hasResult = false; *hasResultType = false; break; | 
| 2318 |     case SpvOpDemoteToHelperInvocation: *hasResult = false; *hasResultType = false; break; | 
| 2319 |     case SpvOpIsHelperInvocationEXT: *hasResult = true; *hasResultType = true; break; | 
| 2320 |     case SpvOpConvertUToImageNV: *hasResult = true; *hasResultType = true; break; | 
| 2321 |     case SpvOpConvertUToSamplerNV: *hasResult = true; *hasResultType = true; break; | 
| 2322 |     case SpvOpConvertImageToUNV: *hasResult = true; *hasResultType = true; break; | 
| 2323 |     case SpvOpConvertSamplerToUNV: *hasResult = true; *hasResultType = true; break; | 
| 2324 |     case SpvOpConvertUToSampledImageNV: *hasResult = true; *hasResultType = true; break; | 
| 2325 |     case SpvOpConvertSampledImageToUNV: *hasResult = true; *hasResultType = true; break; | 
| 2326 |     case SpvOpSamplerImageAddressingModeNV: *hasResult = false; *hasResultType = false; break; | 
| 2327 |     case SpvOpSubgroupShuffleINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2328 |     case SpvOpSubgroupShuffleDownINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2329 |     case SpvOpSubgroupShuffleUpINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2330 |     case SpvOpSubgroupShuffleXorINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2331 |     case SpvOpSubgroupBlockReadINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2332 |     case SpvOpSubgroupBlockWriteINTEL: *hasResult = false; *hasResultType = false; break; | 
| 2333 |     case SpvOpSubgroupImageBlockReadINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2334 |     case SpvOpSubgroupImageBlockWriteINTEL: *hasResult = false; *hasResultType = false; break; | 
| 2335 |     case SpvOpSubgroupImageMediaBlockReadINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2336 |     case SpvOpSubgroupImageMediaBlockWriteINTEL: *hasResult = false; *hasResultType = false; break; | 
| 2337 |     case SpvOpUCountLeadingZerosINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2338 |     case SpvOpUCountTrailingZerosINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2339 |     case SpvOpAbsISubINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2340 |     case SpvOpAbsUSubINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2341 |     case SpvOpIAddSatINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2342 |     case SpvOpUAddSatINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2343 |     case SpvOpIAverageINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2344 |     case SpvOpUAverageINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2345 |     case SpvOpIAverageRoundedINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2346 |     case SpvOpUAverageRoundedINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2347 |     case SpvOpISubSatINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2348 |     case SpvOpUSubSatINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2349 |     case SpvOpIMul32x16INTEL: *hasResult = true; *hasResultType = true; break; | 
| 2350 |     case SpvOpUMul32x16INTEL: *hasResult = true; *hasResultType = true; break; | 
| 2351 |     case SpvOpConstantFunctionPointerINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2352 |     case SpvOpFunctionPointerCallINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2353 |     case SpvOpAsmTargetINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2354 |     case SpvOpAsmINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2355 |     case SpvOpAsmCallINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2356 |     case SpvOpAtomicFMinEXT: *hasResult = true; *hasResultType = true; break; | 
| 2357 |     case SpvOpAtomicFMaxEXT: *hasResult = true; *hasResultType = true; break; | 
| 2358 |     case SpvOpAssumeTrueKHR: *hasResult = false; *hasResultType = false; break; | 
| 2359 |     case SpvOpExpectKHR: *hasResult = true; *hasResultType = true; break; | 
| 2360 |     case SpvOpDecorateString: *hasResult = false; *hasResultType = false; break; | 
| 2361 |     case SpvOpMemberDecorateString: *hasResult = false; *hasResultType = false; break; | 
| 2362 |     case SpvOpVmeImageINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2363 |     case SpvOpTypeVmeImageINTEL: *hasResult = true; *hasResultType = false; break; | 
| 2364 |     case SpvOpTypeAvcImePayloadINTEL: *hasResult = true; *hasResultType = false; break; | 
| 2365 |     case SpvOpTypeAvcRefPayloadINTEL: *hasResult = true; *hasResultType = false; break; | 
| 2366 |     case SpvOpTypeAvcSicPayloadINTEL: *hasResult = true; *hasResultType = false; break; | 
| 2367 |     case SpvOpTypeAvcMcePayloadINTEL: *hasResult = true; *hasResultType = false; break; | 
| 2368 |     case SpvOpTypeAvcMceResultINTEL: *hasResult = true; *hasResultType = false; break; | 
| 2369 |     case SpvOpTypeAvcImeResultINTEL: *hasResult = true; *hasResultType = false; break; | 
| 2370 |     case SpvOpTypeAvcImeResultSingleReferenceStreamoutINTEL: *hasResult = true; *hasResultType = false; break; | 
| 2371 |     case SpvOpTypeAvcImeResultDualReferenceStreamoutINTEL: *hasResult = true; *hasResultType = false; break; | 
| 2372 |     case SpvOpTypeAvcImeSingleReferenceStreaminINTEL: *hasResult = true; *hasResultType = false; break; | 
| 2373 |     case SpvOpTypeAvcImeDualReferenceStreaminINTEL: *hasResult = true; *hasResultType = false; break; | 
| 2374 |     case SpvOpTypeAvcRefResultINTEL: *hasResult = true; *hasResultType = false; break; | 
| 2375 |     case SpvOpTypeAvcSicResultINTEL: *hasResult = true; *hasResultType = false; break; | 
| 2376 |     case SpvOpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2377 |     case SpvOpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2378 |     case SpvOpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2379 |     case SpvOpSubgroupAvcMceSetInterShapePenaltyINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2380 |     case SpvOpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2381 |     case SpvOpSubgroupAvcMceSetInterDirectionPenaltyINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2382 |     case SpvOpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2383 |     case SpvOpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2384 |     case SpvOpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2385 |     case SpvOpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2386 |     case SpvOpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2387 |     case SpvOpSubgroupAvcMceSetMotionVectorCostFunctionINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2388 |     case SpvOpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2389 |     case SpvOpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2390 |     case SpvOpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2391 |     case SpvOpSubgroupAvcMceSetAcOnlyHaarINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2392 |     case SpvOpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2393 |     case SpvOpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2394 |     case SpvOpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2395 |     case SpvOpSubgroupAvcMceConvertToImePayloadINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2396 |     case SpvOpSubgroupAvcMceConvertToImeResultINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2397 |     case SpvOpSubgroupAvcMceConvertToRefPayloadINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2398 |     case SpvOpSubgroupAvcMceConvertToRefResultINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2399 |     case SpvOpSubgroupAvcMceConvertToSicPayloadINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2400 |     case SpvOpSubgroupAvcMceConvertToSicResultINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2401 |     case SpvOpSubgroupAvcMceGetMotionVectorsINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2402 |     case SpvOpSubgroupAvcMceGetInterDistortionsINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2403 |     case SpvOpSubgroupAvcMceGetBestInterDistortionsINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2404 |     case SpvOpSubgroupAvcMceGetInterMajorShapeINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2405 |     case SpvOpSubgroupAvcMceGetInterMinorShapeINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2406 |     case SpvOpSubgroupAvcMceGetInterDirectionsINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2407 |     case SpvOpSubgroupAvcMceGetInterMotionVectorCountINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2408 |     case SpvOpSubgroupAvcMceGetInterReferenceIdsINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2409 |     case SpvOpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2410 |     case SpvOpSubgroupAvcImeInitializeINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2411 |     case SpvOpSubgroupAvcImeSetSingleReferenceINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2412 |     case SpvOpSubgroupAvcImeSetDualReferenceINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2413 |     case SpvOpSubgroupAvcImeRefWindowSizeINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2414 |     case SpvOpSubgroupAvcImeAdjustRefOffsetINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2415 |     case SpvOpSubgroupAvcImeConvertToMcePayloadINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2416 |     case SpvOpSubgroupAvcImeSetMaxMotionVectorCountINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2417 |     case SpvOpSubgroupAvcImeSetUnidirectionalMixDisableINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2418 |     case SpvOpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2419 |     case SpvOpSubgroupAvcImeSetWeightedSadINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2420 |     case SpvOpSubgroupAvcImeEvaluateWithSingleReferenceINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2421 |     case SpvOpSubgroupAvcImeEvaluateWithDualReferenceINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2422 |     case SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2423 |     case SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2424 |     case SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2425 |     case SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2426 |     case SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2427 |     case SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2428 |     case SpvOpSubgroupAvcImeConvertToMceResultINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2429 |     case SpvOpSubgroupAvcImeGetSingleReferenceStreaminINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2430 |     case SpvOpSubgroupAvcImeGetDualReferenceStreaminINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2431 |     case SpvOpSubgroupAvcImeStripSingleReferenceStreamoutINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2432 |     case SpvOpSubgroupAvcImeStripDualReferenceStreamoutINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2433 |     case SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2434 |     case SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2435 |     case SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2436 |     case SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2437 |     case SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2438 |     case SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2439 |     case SpvOpSubgroupAvcImeGetBorderReachedINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2440 |     case SpvOpSubgroupAvcImeGetTruncatedSearchIndicationINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2441 |     case SpvOpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2442 |     case SpvOpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2443 |     case SpvOpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2444 |     case SpvOpSubgroupAvcFmeInitializeINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2445 |     case SpvOpSubgroupAvcBmeInitializeINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2446 |     case SpvOpSubgroupAvcRefConvertToMcePayloadINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2447 |     case SpvOpSubgroupAvcRefSetBidirectionalMixDisableINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2448 |     case SpvOpSubgroupAvcRefSetBilinearFilterEnableINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2449 |     case SpvOpSubgroupAvcRefEvaluateWithSingleReferenceINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2450 |     case SpvOpSubgroupAvcRefEvaluateWithDualReferenceINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2451 |     case SpvOpSubgroupAvcRefEvaluateWithMultiReferenceINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2452 |     case SpvOpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2453 |     case SpvOpSubgroupAvcRefConvertToMceResultINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2454 |     case SpvOpSubgroupAvcSicInitializeINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2455 |     case SpvOpSubgroupAvcSicConfigureSkcINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2456 |     case SpvOpSubgroupAvcSicConfigureIpeLumaINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2457 |     case SpvOpSubgroupAvcSicConfigureIpeLumaChromaINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2458 |     case SpvOpSubgroupAvcSicGetMotionVectorMaskINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2459 |     case SpvOpSubgroupAvcSicConvertToMcePayloadINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2460 |     case SpvOpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2461 |     case SpvOpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2462 |     case SpvOpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2463 |     case SpvOpSubgroupAvcSicSetBilinearFilterEnableINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2464 |     case SpvOpSubgroupAvcSicSetSkcForwardTransformEnableINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2465 |     case SpvOpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2466 |     case SpvOpSubgroupAvcSicEvaluateIpeINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2467 |     case SpvOpSubgroupAvcSicEvaluateWithSingleReferenceINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2468 |     case SpvOpSubgroupAvcSicEvaluateWithDualReferenceINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2469 |     case SpvOpSubgroupAvcSicEvaluateWithMultiReferenceINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2470 |     case SpvOpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2471 |     case SpvOpSubgroupAvcSicConvertToMceResultINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2472 |     case SpvOpSubgroupAvcSicGetIpeLumaShapeINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2473 |     case SpvOpSubgroupAvcSicGetBestIpeLumaDistortionINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2474 |     case SpvOpSubgroupAvcSicGetBestIpeChromaDistortionINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2475 |     case SpvOpSubgroupAvcSicGetPackedIpeLumaModesINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2476 |     case SpvOpSubgroupAvcSicGetIpeChromaModeINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2477 |     case SpvOpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2478 |     case SpvOpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2479 |     case SpvOpSubgroupAvcSicGetInterRawSadsINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2480 |     case SpvOpVariableLengthArrayINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2481 |     case SpvOpSaveMemoryINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2482 |     case SpvOpRestoreMemoryINTEL: *hasResult = false; *hasResultType = false; break; | 
| 2483 |     case SpvOpArbitraryFloatSinCosPiINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2484 |     case SpvOpArbitraryFloatCastINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2485 |     case SpvOpArbitraryFloatCastFromIntINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2486 |     case SpvOpArbitraryFloatCastToIntINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2487 |     case SpvOpArbitraryFloatAddINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2488 |     case SpvOpArbitraryFloatSubINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2489 |     case SpvOpArbitraryFloatMulINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2490 |     case SpvOpArbitraryFloatDivINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2491 |     case SpvOpArbitraryFloatGTINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2492 |     case SpvOpArbitraryFloatGEINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2493 |     case SpvOpArbitraryFloatLTINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2494 |     case SpvOpArbitraryFloatLEINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2495 |     case SpvOpArbitraryFloatEQINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2496 |     case SpvOpArbitraryFloatRecipINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2497 |     case SpvOpArbitraryFloatRSqrtINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2498 |     case SpvOpArbitraryFloatCbrtINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2499 |     case SpvOpArbitraryFloatHypotINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2500 |     case SpvOpArbitraryFloatSqrtINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2501 |     case SpvOpArbitraryFloatLogINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2502 |     case SpvOpArbitraryFloatLog2INTEL: *hasResult = true; *hasResultType = true; break; | 
| 2503 |     case SpvOpArbitraryFloatLog10INTEL: *hasResult = true; *hasResultType = true; break; | 
| 2504 |     case SpvOpArbitraryFloatLog1pINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2505 |     case SpvOpArbitraryFloatExpINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2506 |     case SpvOpArbitraryFloatExp2INTEL: *hasResult = true; *hasResultType = true; break; | 
| 2507 |     case SpvOpArbitraryFloatExp10INTEL: *hasResult = true; *hasResultType = true; break; | 
| 2508 |     case SpvOpArbitraryFloatExpm1INTEL: *hasResult = true; *hasResultType = true; break; | 
| 2509 |     case SpvOpArbitraryFloatSinINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2510 |     case SpvOpArbitraryFloatCosINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2511 |     case SpvOpArbitraryFloatSinCosINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2512 |     case SpvOpArbitraryFloatSinPiINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2513 |     case SpvOpArbitraryFloatCosPiINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2514 |     case SpvOpArbitraryFloatASinINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2515 |     case SpvOpArbitraryFloatASinPiINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2516 |     case SpvOpArbitraryFloatACosINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2517 |     case SpvOpArbitraryFloatACosPiINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2518 |     case SpvOpArbitraryFloatATanINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2519 |     case SpvOpArbitraryFloatATanPiINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2520 |     case SpvOpArbitraryFloatATan2INTEL: *hasResult = true; *hasResultType = true; break; | 
| 2521 |     case SpvOpArbitraryFloatPowINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2522 |     case SpvOpArbitraryFloatPowRINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2523 |     case SpvOpArbitraryFloatPowNINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2524 |     case SpvOpLoopControlINTEL: *hasResult = false; *hasResultType = false; break; | 
| 2525 |     case SpvOpAliasDomainDeclINTEL: *hasResult = true; *hasResultType = false; break; | 
| 2526 |     case SpvOpAliasScopeDeclINTEL: *hasResult = true; *hasResultType = false; break; | 
| 2527 |     case SpvOpAliasScopeListDeclINTEL: *hasResult = true; *hasResultType = false; break; | 
| 2528 |     case SpvOpFixedSqrtINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2529 |     case SpvOpFixedRecipINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2530 |     case SpvOpFixedRsqrtINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2531 |     case SpvOpFixedSinINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2532 |     case SpvOpFixedCosINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2533 |     case SpvOpFixedSinCosINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2534 |     case SpvOpFixedSinPiINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2535 |     case SpvOpFixedCosPiINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2536 |     case SpvOpFixedSinCosPiINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2537 |     case SpvOpFixedLogINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2538 |     case SpvOpFixedExpINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2539 |     case SpvOpPtrCastToCrossWorkgroupINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2540 |     case SpvOpCrossWorkgroupCastToPtrINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2541 |     case SpvOpReadPipeBlockingINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2542 |     case SpvOpWritePipeBlockingINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2543 |     case SpvOpFPGARegINTEL: *hasResult = true; *hasResultType = true; break; | 
| 2544 |     case SpvOpRayQueryGetRayTMinKHR: *hasResult = true; *hasResultType = true; break; | 
| 2545 |     case SpvOpRayQueryGetRayFlagsKHR: *hasResult = true; *hasResultType = true; break; | 
| 2546 |     case SpvOpRayQueryGetIntersectionTKHR: *hasResult = true; *hasResultType = true; break; | 
| 2547 |     case SpvOpRayQueryGetIntersectionInstanceCustomIndexKHR: *hasResult = true; *hasResultType = true; break; | 
| 2548 |     case SpvOpRayQueryGetIntersectionInstanceIdKHR: *hasResult = true; *hasResultType = true; break; | 
| 2549 |     case SpvOpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR: *hasResult = true; *hasResultType = true; break; | 
| 2550 |     case SpvOpRayQueryGetIntersectionGeometryIndexKHR: *hasResult = true; *hasResultType = true; break; | 
| 2551 |     case SpvOpRayQueryGetIntersectionPrimitiveIndexKHR: *hasResult = true; *hasResultType = true; break; | 
| 2552 |     case SpvOpRayQueryGetIntersectionBarycentricsKHR: *hasResult = true; *hasResultType = true; break; | 
| 2553 |     case SpvOpRayQueryGetIntersectionFrontFaceKHR: *hasResult = true; *hasResultType = true; break; | 
| 2554 |     case SpvOpRayQueryGetIntersectionCandidateAABBOpaqueKHR: *hasResult = true; *hasResultType = true; break; | 
| 2555 |     case SpvOpRayQueryGetIntersectionObjectRayDirectionKHR: *hasResult = true; *hasResultType = true; break; | 
| 2556 |     case SpvOpRayQueryGetIntersectionObjectRayOriginKHR: *hasResult = true; *hasResultType = true; break; | 
| 2557 |     case SpvOpRayQueryGetWorldRayDirectionKHR: *hasResult = true; *hasResultType = true; break; | 
| 2558 |     case SpvOpRayQueryGetWorldRayOriginKHR: *hasResult = true; *hasResultType = true; break; | 
| 2559 |     case SpvOpRayQueryGetIntersectionObjectToWorldKHR: *hasResult = true; *hasResultType = true; break; | 
| 2560 |     case SpvOpRayQueryGetIntersectionWorldToObjectKHR: *hasResult = true; *hasResultType = true; break; | 
| 2561 |     case SpvOpAtomicFAddEXT: *hasResult = true; *hasResultType = true; break; | 
| 2562 |     case SpvOpTypeBufferSurfaceINTEL: *hasResult = true; *hasResultType = false; break; | 
| 2563 |     case SpvOpTypeStructContinuedINTEL: *hasResult = false; *hasResultType = false; break; | 
| 2564 |     case SpvOpConstantCompositeContinuedINTEL: *hasResult = false; *hasResultType = false; break; | 
| 2565 |     case SpvOpSpecConstantCompositeContinuedINTEL: *hasResult = false; *hasResultType = false; break; | 
| 2566 |     case SpvOpControlBarrierArriveINTEL: *hasResult = false; *hasResultType = false; break; | 
| 2567 |     case SpvOpControlBarrierWaitINTEL: *hasResult = false; *hasResultType = false; break; | 
| 2568 |     case SpvOpGroupIMulKHR: *hasResult = true; *hasResultType = true; break; | 
| 2569 |     case SpvOpGroupFMulKHR: *hasResult = true; *hasResultType = true; break; | 
| 2570 |     case SpvOpGroupBitwiseAndKHR: *hasResult = true; *hasResultType = true; break; | 
| 2571 |     case SpvOpGroupBitwiseOrKHR: *hasResult = true; *hasResultType = true; break; | 
| 2572 |     case SpvOpGroupBitwiseXorKHR: *hasResult = true; *hasResultType = true; break; | 
| 2573 |     case SpvOpGroupLogicalAndKHR: *hasResult = true; *hasResultType = true; break; | 
| 2574 |     case SpvOpGroupLogicalOrKHR: *hasResult = true; *hasResultType = true; break; | 
| 2575 |     case SpvOpGroupLogicalXorKHR: *hasResult = true; *hasResultType = true; break; | 
| 2576 |     } | 
| 2577 | } | 
| 2578 | #endif /* SPV_ENABLE_UTILITY_CODE */ | 
| 2579 |  | 
| 2580 | #endif | 
| 2581 |  | 
| 2582 |  |