1 # Copyright (c) 2014-2016 The Khronos Group Inc. 2 # 3 # Permission is hereby granted, free of charge, to any person obtaining a copy 4 # of this software and/or associated documentation files (the "Materials"), 5 # to deal in the Materials without restriction, including without limitation 6 # the rights to use, copy, modify, merge, publish, distribute, sublicense, 7 # and/or sell copies of the Materials, and to permit persons to whom the 8 # Materials are furnished to do so, subject to the following conditions: 9 # 10 # The above copyright notice and this permission notice shall be included in 11 # all copies or substantial portions of the Materials. 12 # 13 # MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS 14 # STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND 15 # HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/ 16 # 17 # THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 18 # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 20 # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 21 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 22 # FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS 23 # IN THE MATERIALS. 24 25 # This header is automatically generated by the same tool that creates 26 # the Binary Section of the SPIR-V specification. 27 28 # Enumeration tokens for SPIR-V, in various styles: 29 # C, C++, C++11, JSON, Lua, Python 30 # 31 # - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL 32 # - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL 33 # - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL 34 # - Lua will use tables, e.g.: spv.SourceLanguage.GLSL 35 # - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL'] 36 # 37 # Some tokens act like mask values, which can be OR'd together, 38 # while others are mutually exclusive. The mask-like ones have 39 # "Mask" in their name, and a parallel enum that has the shift 40 # amount (1 << x) for each corresponding enumerant. 41 42 spv = { 43 'MagicNumber' : 0x07230203, 44 'Version' : 0x00010000, 45 'Revision' : 8, 46 'OpCodeMask' : 0xffff, 47 'WordCountShift' : 16, 48 49 'SourceLanguage' : { 50 'Unknown' : 0, 51 'ESSL' : 1, 52 'GLSL' : 2, 53 'OpenCL_C' : 3, 54 'OpenCL_CPP' : 4, 55 }, 56 57 'ExecutionModel' : { 58 'Vertex' : 0, 59 'TessellationControl' : 1, 60 'TessellationEvaluation' : 2, 61 'Geometry' : 3, 62 'Fragment' : 4, 63 'GLCompute' : 5, 64 'Kernel' : 6, 65 }, 66 67 'AddressingModel' : { 68 'Logical' : 0, 69 'Physical32' : 1, 70 'Physical64' : 2, 71 }, 72 73 'MemoryModel' : { 74 'Simple' : 0, 75 'GLSL450' : 1, 76 'OpenCL' : 2, 77 }, 78 79 'ExecutionMode' : { 80 'Invocations' : 0, 81 'SpacingEqual' : 1, 82 'SpacingFractionalEven' : 2, 83 'SpacingFractionalOdd' : 3, 84 'VertexOrderCw' : 4, 85 'VertexOrderCcw' : 5, 86 'PixelCenterInteger' : 6, 87 'OriginUpperLeft' : 7, 88 'OriginLowerLeft' : 8, 89 'EarlyFragmentTests' : 9, 90 'PointMode' : 10, 91 'Xfb' : 11, 92 'DepthReplacing' : 12, 93 'DepthGreater' : 14, 94 'DepthLess' : 15, 95 'DepthUnchanged' : 16, 96 'LocalSize' : 17, 97 'LocalSizeHint' : 18, 98 'InputPoints' : 19, 99 'InputLines' : 20, 100 'InputLinesAdjacency' : 21, 101 'Triangles' : 22, 102 'InputTrianglesAdjacency' : 23, 103 'Quads' : 24, 104 'Isolines' : 25, 105 'OutputVertices' : 26, 106 'OutputPoints' : 27, 107 'OutputLineStrip' : 28, 108 'OutputTriangleStrip' : 29, 109 'VecTypeHint' : 30, 110 'ContractionOff' : 31, 111 }, 112 113 'StorageClass' : { 114 'UniformConstant' : 0, 115 'Input' : 1, 116 'Uniform' : 2, 117 'Output' : 3, 118 'Workgroup' : 4, 119 'CrossWorkgroup' : 5, 120 'Private' : 6, 121 'Function' : 7, 122 'Generic' : 8, 123 'PushConstant' : 9, 124 'AtomicCounter' : 10, 125 'Image' : 11, 126 }, 127 128 'Dim' : { 129 'Dim1D' : 0, 130 'Dim2D' : 1, 131 'Dim3D' : 2, 132 'Cube' : 3, 133 'Rect' : 4, 134 'Buffer' : 5, 135 'SubpassData' : 6, 136 }, 137 138 'SamplerAddressingMode' : { 139 'None' : 0, 140 'ClampToEdge' : 1, 141 'Clamp' : 2, 142 'Repeat' : 3, 143 'RepeatMirrored' : 4, 144 }, 145 146 'SamplerFilterMode' : { 147 'Nearest' : 0, 148 'Linear' : 1, 149 }, 150 151 'ImageFormat' : { 152 'Unknown' : 0, 153 'Rgba32f' : 1, 154 'Rgba16f' : 2, 155 'R32f' : 3, 156 'Rgba8' : 4, 157 'Rgba8Snorm' : 5, 158 'Rg32f' : 6, 159 'Rg16f' : 7, 160 'R11fG11fB10f' : 8, 161 'R16f' : 9, 162 'Rgba16' : 10, 163 'Rgb10A2' : 11, 164 'Rg16' : 12, 165 'Rg8' : 13, 166 'R16' : 14, 167 'R8' : 15, 168 'Rgba16Snorm' : 16, 169 'Rg16Snorm' : 17, 170 'Rg8Snorm' : 18, 171 'R16Snorm' : 19, 172 'R8Snorm' : 20, 173 'Rgba32i' : 21, 174 'Rgba16i' : 22, 175 'Rgba8i' : 23, 176 'R32i' : 24, 177 'Rg32i' : 25, 178 'Rg16i' : 26, 179 'Rg8i' : 27, 180 'R16i' : 28, 181 'R8i' : 29, 182 'Rgba32ui' : 30, 183 'Rgba16ui' : 31, 184 'Rgba8ui' : 32, 185 'R32ui' : 33, 186 'Rgb10a2ui' : 34, 187 'Rg32ui' : 35, 188 'Rg16ui' : 36, 189 'Rg8ui' : 37, 190 'R16ui' : 38, 191 'R8ui' : 39, 192 }, 193 194 'ImageChannelOrder' : { 195 'R' : 0, 196 'A' : 1, 197 'RG' : 2, 198 'RA' : 3, 199 'RGB' : 4, 200 'RGBA' : 5, 201 'BGRA' : 6, 202 'ARGB' : 7, 203 'Intensity' : 8, 204 'Luminance' : 9, 205 'Rx' : 10, 206 'RGx' : 11, 207 'RGBx' : 12, 208 'Depth' : 13, 209 'DepthStencil' : 14, 210 'sRGB' : 15, 211 'sRGBx' : 16, 212 'sRGBA' : 17, 213 'sBGRA' : 18, 214 'ABGR' : 19, 215 }, 216 217 'ImageChannelDataType' : { 218 'SnormInt8' : 0, 219 'SnormInt16' : 1, 220 'UnormInt8' : 2, 221 'UnormInt16' : 3, 222 'UnormShort565' : 4, 223 'UnormShort555' : 5, 224 'UnormInt101010' : 6, 225 'SignedInt8' : 7, 226 'SignedInt16' : 8, 227 'SignedInt32' : 9, 228 'UnsignedInt8' : 10, 229 'UnsignedInt16' : 11, 230 'UnsignedInt32' : 12, 231 'HalfFloat' : 13, 232 'Float' : 14, 233 'UnormInt24' : 15, 234 'UnormInt101010_2' : 16, 235 }, 236 237 'ImageOperandsShift' : { 238 'Bias' : 0, 239 'Lod' : 1, 240 'Grad' : 2, 241 'ConstOffset' : 3, 242 'Offset' : 4, 243 'ConstOffsets' : 5, 244 'Sample' : 6, 245 'MinLod' : 7, 246 }, 247 248 'ImageOperandsMask' : { 249 'MaskNone' : 0, 250 'Bias' : 0x00000001, 251 'Lod' : 0x00000002, 252 'Grad' : 0x00000004, 253 'ConstOffset' : 0x00000008, 254 'Offset' : 0x00000010, 255 'ConstOffsets' : 0x00000020, 256 'Sample' : 0x00000040, 257 'MinLod' : 0x00000080, 258 }, 259 260 'FPFastMathModeShift' : { 261 'NotNaN' : 0, 262 'NotInf' : 1, 263 'NSZ' : 2, 264 'AllowRecip' : 3, 265 'Fast' : 4, 266 }, 267 268 'FPFastMathModeMask' : { 269 'MaskNone' : 0, 270 'NotNaN' : 0x00000001, 271 'NotInf' : 0x00000002, 272 'NSZ' : 0x00000004, 273 'AllowRecip' : 0x00000008, 274 'Fast' : 0x00000010, 275 }, 276 277 'FPRoundingMode' : { 278 'RTE' : 0, 279 'RTZ' : 1, 280 'RTP' : 2, 281 'RTN' : 3, 282 }, 283 284 'LinkageType' : { 285 'Export' : 0, 286 'Import' : 1, 287 }, 288 289 'AccessQualifier' : { 290 'ReadOnly' : 0, 291 'WriteOnly' : 1, 292 'ReadWrite' : 2, 293 }, 294 295 'FunctionParameterAttribute' : { 296 'Zext' : 0, 297 'Sext' : 1, 298 'ByVal' : 2, 299 'Sret' : 3, 300 'NoAlias' : 4, 301 'NoCapture' : 5, 302 'NoWrite' : 6, 303 'NoReadWrite' : 7, 304 }, 305 306 'Decoration' : { 307 'RelaxedPrecision' : 0, 308 'SpecId' : 1, 309 'Block' : 2, 310 'BufferBlock' : 3, 311 'RowMajor' : 4, 312 'ColMajor' : 5, 313 'ArrayStride' : 6, 314 'MatrixStride' : 7, 315 'GLSLShared' : 8, 316 'GLSLPacked' : 9, 317 'CPacked' : 10, 318 'BuiltIn' : 11, 319 'NoPerspective' : 13, 320 'Flat' : 14, 321 'Patch' : 15, 322 'Centroid' : 16, 323 'Sample' : 17, 324 'Invariant' : 18, 325 'Restrict' : 19, 326 'Aliased' : 20, 327 'Volatile' : 21, 328 'Constant' : 22, 329 'Coherent' : 23, 330 'NonWritable' : 24, 331 'NonReadable' : 25, 332 'Uniform' : 26, 333 'SaturatedConversion' : 28, 334 'Stream' : 29, 335 'Location' : 30, 336 'Component' : 31, 337 'Index' : 32, 338 'Binding' : 33, 339 'DescriptorSet' : 34, 340 'Offset' : 35, 341 'XfbBuffer' : 36, 342 'XfbStride' : 37, 343 'FuncParamAttr' : 38, 344 'FPRoundingMode' : 39, 345 'FPFastMathMode' : 40, 346 'LinkageAttributes' : 41, 347 'NoContraction' : 42, 348 'InputAttachmentIndex' : 43, 349 'Alignment' : 44, 350 }, 351 352 'BuiltIn' : { 353 'Position' : 0, 354 'PointSize' : 1, 355 'ClipDistance' : 3, 356 'CullDistance' : 4, 357 'VertexId' : 5, 358 'InstanceId' : 6, 359 'PrimitiveId' : 7, 360 'InvocationId' : 8, 361 'Layer' : 9, 362 'ViewportIndex' : 10, 363 'TessLevelOuter' : 11, 364 'TessLevelInner' : 12, 365 'TessCoord' : 13, 366 'PatchVertices' : 14, 367 'FragCoord' : 15, 368 'PointCoord' : 16, 369 'FrontFacing' : 17, 370 'SampleId' : 18, 371 'SamplePosition' : 19, 372 'SampleMask' : 20, 373 'FragDepth' : 22, 374 'HelperInvocation' : 23, 375 'NumWorkgroups' : 24, 376 'WorkgroupSize' : 25, 377 'WorkgroupId' : 26, 378 'LocalInvocationId' : 27, 379 'GlobalInvocationId' : 28, 380 'LocalInvocationIndex' : 29, 381 'WorkDim' : 30, 382 'GlobalSize' : 31, 383 'EnqueuedWorkgroupSize' : 32, 384 'GlobalOffset' : 33, 385 'GlobalLinearId' : 34, 386 'SubgroupSize' : 36, 387 'SubgroupMaxSize' : 37, 388 'NumSubgroups' : 38, 389 'NumEnqueuedSubgroups' : 39, 390 'SubgroupId' : 40, 391 'SubgroupLocalInvocationId' : 41, 392 'VertexIndex' : 42, 393 'InstanceIndex' : 43, 394 'SubgroupEqMaskKHR' : 4416, 395 'SubgroupGeMaskKHR' : 4417, 396 'SubgroupGtMaskKHR' : 4418, 397 'SubgroupLeMaskKHR' : 4419, 398 'SubgroupLtMaskKHR' : 4420, 399 'BaseVertex' : 4424, 400 'BaseInstance' : 4425, 401 'DrawIndex' : 4426, 402 }, 403 404 'SelectionControlShift' : { 405 'Flatten' : 0, 406 'DontFlatten' : 1, 407 }, 408 409 'SelectionControlMask' : { 410 'MaskNone' : 0, 411 'Flatten' : 0x00000001, 412 'DontFlatten' : 0x00000002, 413 }, 414 415 'LoopControlShift' : { 416 'Unroll' : 0, 417 'DontUnroll' : 1, 418 }, 419 420 'LoopControlMask' : { 421 'MaskNone' : 0, 422 'Unroll' : 0x00000001, 423 'DontUnroll' : 0x00000002, 424 }, 425 426 'FunctionControlShift' : { 427 'Inline' : 0, 428 'DontInline' : 1, 429 'Pure' : 2, 430 'Const' : 3, 431 }, 432 433 'FunctionControlMask' : { 434 'MaskNone' : 0, 435 'Inline' : 0x00000001, 436 'DontInline' : 0x00000002, 437 'Pure' : 0x00000004, 438 'Const' : 0x00000008, 439 }, 440 441 'MemorySemanticsShift' : { 442 'Acquire' : 1, 443 'Release' : 2, 444 'AcquireRelease' : 3, 445 'SequentiallyConsistent' : 4, 446 'UniformMemory' : 6, 447 'SubgroupMemory' : 7, 448 'WorkgroupMemory' : 8, 449 'CrossWorkgroupMemory' : 9, 450 'AtomicCounterMemory' : 10, 451 'ImageMemory' : 11, 452 }, 453 454 'MemorySemanticsMask' : { 455 'MaskNone' : 0, 456 'Acquire' : 0x00000002, 457 'Release' : 0x00000004, 458 'AcquireRelease' : 0x00000008, 459 'SequentiallyConsistent' : 0x00000010, 460 'UniformMemory' : 0x00000040, 461 'SubgroupMemory' : 0x00000080, 462 'WorkgroupMemory' : 0x00000100, 463 'CrossWorkgroupMemory' : 0x00000200, 464 'AtomicCounterMemory' : 0x00000400, 465 'ImageMemory' : 0x00000800, 466 }, 467 468 'MemoryAccessShift' : { 469 'Volatile' : 0, 470 'Aligned' : 1, 471 'Nontemporal' : 2, 472 }, 473 474 'MemoryAccessMask' : { 475 'MaskNone' : 0, 476 'Volatile' : 0x00000001, 477 'Aligned' : 0x00000002, 478 'Nontemporal' : 0x00000004, 479 }, 480 481 'Scope' : { 482 'CrossDevice' : 0, 483 'Device' : 1, 484 'Workgroup' : 2, 485 'Subgroup' : 3, 486 'Invocation' : 4, 487 }, 488 489 'GroupOperation' : { 490 'Reduce' : 0, 491 'InclusiveScan' : 1, 492 'ExclusiveScan' : 2, 493 }, 494 495 'KernelEnqueueFlags' : { 496 'NoWait' : 0, 497 'WaitKernel' : 1, 498 'WaitWorkGroup' : 2, 499 }, 500 501 'KernelProfilingInfoShift' : { 502 'CmdExecTime' : 0, 503 }, 504 505 'KernelProfilingInfoMask' : { 506 'MaskNone' : 0, 507 'CmdExecTime' : 0x00000001, 508 }, 509 510 'Capability' : { 511 'Matrix' : 0, 512 'Shader' : 1, 513 'Geometry' : 2, 514 'Tessellation' : 3, 515 'Addresses' : 4, 516 'Linkage' : 5, 517 'Kernel' : 6, 518 'Vector16' : 7, 519 'Float16Buffer' : 8, 520 'Float16' : 9, 521 'Float64' : 10, 522 'Int64' : 11, 523 'Int64Atomics' : 12, 524 'ImageBasic' : 13, 525 'ImageReadWrite' : 14, 526 'ImageMipmap' : 15, 527 'Pipes' : 17, 528 'Groups' : 18, 529 'DeviceEnqueue' : 19, 530 'LiteralSampler' : 20, 531 'AtomicStorage' : 21, 532 'Int16' : 22, 533 'TessellationPointSize' : 23, 534 'GeometryPointSize' : 24, 535 'ImageGatherExtended' : 25, 536 'StorageImageMultisample' : 27, 537 'UniformBufferArrayDynamicIndexing' : 28, 538 'SampledImageArrayDynamicIndexing' : 29, 539 'StorageBufferArrayDynamicIndexing' : 30, 540 'StorageImageArrayDynamicIndexing' : 31, 541 'ClipDistance' : 32, 542 'CullDistance' : 33, 543 'ImageCubeArray' : 34, 544 'SampleRateShading' : 35, 545 'ImageRect' : 36, 546 'SampledRect' : 37, 547 'GenericPointer' : 38, 548 'Int8' : 39, 549 'InputAttachment' : 40, 550 'SparseResidency' : 41, 551 'MinLod' : 42, 552 'Sampled1D' : 43, 553 'Image1D' : 44, 554 'SampledCubeArray' : 45, 555 'SampledBuffer' : 46, 556 'ImageBuffer' : 47, 557 'ImageMSArray' : 48, 558 'StorageImageExtendedFormats' : 49, 559 'ImageQuery' : 50, 560 'DerivativeControl' : 51, 561 'InterpolationFunction' : 52, 562 'TransformFeedback' : 53, 563 'GeometryStreams' : 54, 564 'StorageImageReadWithoutFormat' : 55, 565 'StorageImageWriteWithoutFormat' : 56, 566 'MultiViewport' : 57, 567 'SubgroupBallotKHR' : 4423, 568 'DrawParameters' : 4427, 569 }, 570 571 'Op' : { 572 'OpNop' : 0, 573 'OpUndef' : 1, 574 'OpSourceContinued' : 2, 575 'OpSource' : 3, 576 'OpSourceExtension' : 4, 577 'OpName' : 5, 578 'OpMemberName' : 6, 579 'OpString' : 7, 580 'OpLine' : 8, 581 'OpExtension' : 10, 582 'OpExtInstImport' : 11, 583 'OpExtInst' : 12, 584 'OpMemoryModel' : 14, 585 'OpEntryPoint' : 15, 586 'OpExecutionMode' : 16, 587 'OpCapability' : 17, 588 'OpTypeVoid' : 19, 589 'OpTypeBool' : 20, 590 'OpTypeInt' : 21, 591 'OpTypeFloat' : 22, 592 'OpTypeVector' : 23, 593 'OpTypeMatrix' : 24, 594 'OpTypeImage' : 25, 595 'OpTypeSampler' : 26, 596 'OpTypeSampledImage' : 27, 597 'OpTypeArray' : 28, 598 'OpTypeRuntimeArray' : 29, 599 'OpTypeStruct' : 30, 600 'OpTypeOpaque' : 31, 601 'OpTypePointer' : 32, 602 'OpTypeFunction' : 33, 603 'OpTypeEvent' : 34, 604 'OpTypeDeviceEvent' : 35, 605 'OpTypeReserveId' : 36, 606 'OpTypeQueue' : 37, 607 'OpTypePipe' : 38, 608 'OpTypeForwardPointer' : 39, 609 'OpConstantTrue' : 41, 610 'OpConstantFalse' : 42, 611 'OpConstant' : 43, 612 'OpConstantComposite' : 44, 613 'OpConstantSampler' : 45, 614 'OpConstantNull' : 46, 615 'OpSpecConstantTrue' : 48, 616 'OpSpecConstantFalse' : 49, 617 'OpSpecConstant' : 50, 618 'OpSpecConstantComposite' : 51, 619 'OpSpecConstantOp' : 52, 620 'OpFunction' : 54, 621 'OpFunctionParameter' : 55, 622 'OpFunctionEnd' : 56, 623 'OpFunctionCall' : 57, 624 'OpVariable' : 59, 625 'OpImageTexelPointer' : 60, 626 'OpLoad' : 61, 627 'OpStore' : 62, 628 'OpCopyMemory' : 63, 629 'OpCopyMemorySized' : 64, 630 'OpAccessChain' : 65, 631 'OpInBoundsAccessChain' : 66, 632 'OpPtrAccessChain' : 67, 633 'OpArrayLength' : 68, 634 'OpGenericPtrMemSemantics' : 69, 635 'OpInBoundsPtrAccessChain' : 70, 636 'OpDecorate' : 71, 637 'OpMemberDecorate' : 72, 638 'OpDecorationGroup' : 73, 639 'OpGroupDecorate' : 74, 640 'OpGroupMemberDecorate' : 75, 641 'OpVectorExtractDynamic' : 77, 642 'OpVectorInsertDynamic' : 78, 643 'OpVectorShuffle' : 79, 644 'OpCompositeConstruct' : 80, 645 'OpCompositeExtract' : 81, 646 'OpCompositeInsert' : 82, 647 'OpCopyObject' : 83, 648 'OpTranspose' : 84, 649 'OpSampledImage' : 86, 650 'OpImageSampleImplicitLod' : 87, 651 'OpImageSampleExplicitLod' : 88, 652 'OpImageSampleDrefImplicitLod' : 89, 653 'OpImageSampleDrefExplicitLod' : 90, 654 'OpImageSampleProjImplicitLod' : 91, 655 'OpImageSampleProjExplicitLod' : 92, 656 'OpImageSampleProjDrefImplicitLod' : 93, 657 'OpImageSampleProjDrefExplicitLod' : 94, 658 'OpImageFetch' : 95, 659 'OpImageGather' : 96, 660 'OpImageDrefGather' : 97, 661 'OpImageRead' : 98, 662 'OpImageWrite' : 99, 663 'OpImage' : 100, 664 'OpImageQueryFormat' : 101, 665 'OpImageQueryOrder' : 102, 666 'OpImageQuerySizeLod' : 103, 667 'OpImageQuerySize' : 104, 668 'OpImageQueryLod' : 105, 669 'OpImageQueryLevels' : 106, 670 'OpImageQuerySamples' : 107, 671 'OpConvertFToU' : 109, 672 'OpConvertFToS' : 110, 673 'OpConvertSToF' : 111, 674 'OpConvertUToF' : 112, 675 'OpUConvert' : 113, 676 'OpSConvert' : 114, 677 'OpFConvert' : 115, 678 'OpQuantizeToF16' : 116, 679 'OpConvertPtrToU' : 117, 680 'OpSatConvertSToU' : 118, 681 'OpSatConvertUToS' : 119, 682 'OpConvertUToPtr' : 120, 683 'OpPtrCastToGeneric' : 121, 684 'OpGenericCastToPtr' : 122, 685 'OpGenericCastToPtrExplicit' : 123, 686 'OpBitcast' : 124, 687 'OpSNegate' : 126, 688 'OpFNegate' : 127, 689 'OpIAdd' : 128, 690 'OpFAdd' : 129, 691 'OpISub' : 130, 692 'OpFSub' : 131, 693 'OpIMul' : 132, 694 'OpFMul' : 133, 695 'OpUDiv' : 134, 696 'OpSDiv' : 135, 697 'OpFDiv' : 136, 698 'OpUMod' : 137, 699 'OpSRem' : 138, 700 'OpSMod' : 139, 701 'OpFRem' : 140, 702 'OpFMod' : 141, 703 'OpVectorTimesScalar' : 142, 704 'OpMatrixTimesScalar' : 143, 705 'OpVectorTimesMatrix' : 144, 706 'OpMatrixTimesVector' : 145, 707 'OpMatrixTimesMatrix' : 146, 708 'OpOuterProduct' : 147, 709 'OpDot' : 148, 710 'OpIAddCarry' : 149, 711 'OpISubBorrow' : 150, 712 'OpUMulExtended' : 151, 713 'OpSMulExtended' : 152, 714 'OpAny' : 154, 715 'OpAll' : 155, 716 'OpIsNan' : 156, 717 'OpIsInf' : 157, 718 'OpIsFinite' : 158, 719 'OpIsNormal' : 159, 720 'OpSignBitSet' : 160, 721 'OpLessOrGreater' : 161, 722 'OpOrdered' : 162, 723 'OpUnordered' : 163, 724 'OpLogicalEqual' : 164, 725 'OpLogicalNotEqual' : 165, 726 'OpLogicalOr' : 166, 727 'OpLogicalAnd' : 167, 728 'OpLogicalNot' : 168, 729 'OpSelect' : 169, 730 'OpIEqual' : 170, 731 'OpINotEqual' : 171, 732 'OpUGreaterThan' : 172, 733 'OpSGreaterThan' : 173, 734 'OpUGreaterThanEqual' : 174, 735 'OpSGreaterThanEqual' : 175, 736 'OpULessThan' : 176, 737 'OpSLessThan' : 177, 738 'OpULessThanEqual' : 178, 739 'OpSLessThanEqual' : 179, 740 'OpFOrdEqual' : 180, 741 'OpFUnordEqual' : 181, 742 'OpFOrdNotEqual' : 182, 743 'OpFUnordNotEqual' : 183, 744 'OpFOrdLessThan' : 184, 745 'OpFUnordLessThan' : 185, 746 'OpFOrdGreaterThan' : 186, 747 'OpFUnordGreaterThan' : 187, 748 'OpFOrdLessThanEqual' : 188, 749 'OpFUnordLessThanEqual' : 189, 750 'OpFOrdGreaterThanEqual' : 190, 751 'OpFUnordGreaterThanEqual' : 191, 752 'OpShiftRightLogical' : 194, 753 'OpShiftRightArithmetic' : 195, 754 'OpShiftLeftLogical' : 196, 755 'OpBitwiseOr' : 197, 756 'OpBitwiseXor' : 198, 757 'OpBitwiseAnd' : 199, 758 'OpNot' : 200, 759 'OpBitFieldInsert' : 201, 760 'OpBitFieldSExtract' : 202, 761 'OpBitFieldUExtract' : 203, 762 'OpBitReverse' : 204, 763 'OpBitCount' : 205, 764 'OpDPdx' : 207, 765 'OpDPdy' : 208, 766 'OpFwidth' : 209, 767 'OpDPdxFine' : 210, 768 'OpDPdyFine' : 211, 769 'OpFwidthFine' : 212, 770 'OpDPdxCoarse' : 213, 771 'OpDPdyCoarse' : 214, 772 'OpFwidthCoarse' : 215, 773 'OpEmitVertex' : 218, 774 'OpEndPrimitive' : 219, 775 'OpEmitStreamVertex' : 220, 776 'OpEndStreamPrimitive' : 221, 777 'OpControlBarrier' : 224, 778 'OpMemoryBarrier' : 225, 779 'OpAtomicLoad' : 227, 780 'OpAtomicStore' : 228, 781 'OpAtomicExchange' : 229, 782 'OpAtomicCompareExchange' : 230, 783 'OpAtomicCompareExchangeWeak' : 231, 784 'OpAtomicIIncrement' : 232, 785 'OpAtomicIDecrement' : 233, 786 'OpAtomicIAdd' : 234, 787 'OpAtomicISub' : 235, 788 'OpAtomicSMin' : 236, 789 'OpAtomicUMin' : 237, 790 'OpAtomicSMax' : 238, 791 'OpAtomicUMax' : 239, 792 'OpAtomicAnd' : 240, 793 'OpAtomicOr' : 241, 794 'OpAtomicXor' : 242, 795 'OpPhi' : 245, 796 'OpLoopMerge' : 246, 797 'OpSelectionMerge' : 247, 798 'OpLabel' : 248, 799 'OpBranch' : 249, 800 'OpBranchConditional' : 250, 801 'OpSwitch' : 251, 802 'OpKill' : 252, 803 'OpReturn' : 253, 804 'OpReturnValue' : 254, 805 'OpUnreachable' : 255, 806 'OpLifetimeStart' : 256, 807 'OpLifetimeStop' : 257, 808 'OpGroupAsyncCopy' : 259, 809 'OpGroupWaitEvents' : 260, 810 'OpGroupAll' : 261, 811 'OpGroupAny' : 262, 812 'OpGroupBroadcast' : 263, 813 'OpGroupIAdd' : 264, 814 'OpGroupFAdd' : 265, 815 'OpGroupFMin' : 266, 816 'OpGroupUMin' : 267, 817 'OpGroupSMin' : 268, 818 'OpGroupFMax' : 269, 819 'OpGroupUMax' : 270, 820 'OpGroupSMax' : 271, 821 'OpReadPipe' : 274, 822 'OpWritePipe' : 275, 823 'OpReservedReadPipe' : 276, 824 'OpReservedWritePipe' : 277, 825 'OpReserveReadPipePackets' : 278, 826 'OpReserveWritePipePackets' : 279, 827 'OpCommitReadPipe' : 280, 828 'OpCommitWritePipe' : 281, 829 'OpIsValidReserveId' : 282, 830 'OpGetNumPipePackets' : 283, 831 'OpGetMaxPipePackets' : 284, 832 'OpGroupReserveReadPipePackets' : 285, 833 'OpGroupReserveWritePipePackets' : 286, 834 'OpGroupCommitReadPipe' : 287, 835 'OpGroupCommitWritePipe' : 288, 836 'OpEnqueueMarker' : 291, 837 'OpEnqueueKernel' : 292, 838 'OpGetKernelNDrangeSubGroupCount' : 293, 839 'OpGetKernelNDrangeMaxSubGroupSize' : 294, 840 'OpGetKernelWorkGroupSize' : 295, 841 'OpGetKernelPreferredWorkGroupSizeMultiple' : 296, 842 'OpRetainEvent' : 297, 843 'OpReleaseEvent' : 298, 844 'OpCreateUserEvent' : 299, 845 'OpIsValidEvent' : 300, 846 'OpSetUserEventStatus' : 301, 847 'OpCaptureEventProfilingInfo' : 302, 848 'OpGetDefaultQueue' : 303, 849 'OpBuildNDRange' : 304, 850 'OpImageSparseSampleImplicitLod' : 305, 851 'OpImageSparseSampleExplicitLod' : 306, 852 'OpImageSparseSampleDrefImplicitLod' : 307, 853 'OpImageSparseSampleDrefExplicitLod' : 308, 854 'OpImageSparseSampleProjImplicitLod' : 309, 855 'OpImageSparseSampleProjExplicitLod' : 310, 856 'OpImageSparseSampleProjDrefImplicitLod' : 311, 857 'OpImageSparseSampleProjDrefExplicitLod' : 312, 858 'OpImageSparseFetch' : 313, 859 'OpImageSparseGather' : 314, 860 'OpImageSparseDrefGather' : 315, 861 'OpImageSparseTexelsResident' : 316, 862 'OpNoLine' : 317, 863 'OpAtomicFlagTestAndSet' : 318, 864 'OpAtomicFlagClear' : 319, 865 'OpImageSparseRead' : 320, 866 'OpSubgroupBallotKHR' : 4421, 867 'OpSubgroupFirstInvocationKHR' : 4422, 868 }, 869 870 } 871 872