1-- Copyright (c) 2014-2018 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, C# 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-- - C# will use enum classes in the Specification class located in the "Spv" namespace, e.g.: Spv.Specification.SourceLanguage.GLSL 37-- 38-- Some tokens act like mask values, which can be OR'd together, 39-- while others are mutually exclusive. The mask-like ones have 40-- "Mask" in their name, and a parallel enum that has the shift 41-- amount (1 << x) for each corresponding enumerant. 42 43spv = { 44 MagicNumber = 0x07230203, 45 Version = 0x00010300, 46 Revision = 6, 47 OpCodeMask = 0xffff, 48 WordCountShift = 16, 49 50 SourceLanguage = { 51 Unknown = 0, 52 ESSL = 1, 53 GLSL = 2, 54 OpenCL_C = 3, 55 OpenCL_CPP = 4, 56 HLSL = 5, 57 }, 58 59 ExecutionModel = { 60 Vertex = 0, 61 TessellationControl = 1, 62 TessellationEvaluation = 2, 63 Geometry = 3, 64 Fragment = 4, 65 GLCompute = 5, 66 Kernel = 6, 67 TaskNV = 5267, 68 MeshNV = 5268, 69 RayGenerationNV = 5313, 70 IntersectionNV = 5314, 71 AnyHitNV = 5315, 72 ClosestHitNV = 5316, 73 MissNV = 5317, 74 CallableNV = 5318, 75 }, 76 77 AddressingModel = { 78 Logical = 0, 79 Physical32 = 1, 80 Physical64 = 2, 81 }, 82 83 MemoryModel = { 84 Simple = 0, 85 GLSL450 = 1, 86 OpenCL = 2, 87 VulkanKHR = 3, 88 }, 89 90 ExecutionMode = { 91 Invocations = 0, 92 SpacingEqual = 1, 93 SpacingFractionalEven = 2, 94 SpacingFractionalOdd = 3, 95 VertexOrderCw = 4, 96 VertexOrderCcw = 5, 97 PixelCenterInteger = 6, 98 OriginUpperLeft = 7, 99 OriginLowerLeft = 8, 100 EarlyFragmentTests = 9, 101 PointMode = 10, 102 Xfb = 11, 103 DepthReplacing = 12, 104 DepthGreater = 14, 105 DepthLess = 15, 106 DepthUnchanged = 16, 107 LocalSize = 17, 108 LocalSizeHint = 18, 109 InputPoints = 19, 110 InputLines = 20, 111 InputLinesAdjacency = 21, 112 Triangles = 22, 113 InputTrianglesAdjacency = 23, 114 Quads = 24, 115 Isolines = 25, 116 OutputVertices = 26, 117 OutputPoints = 27, 118 OutputLineStrip = 28, 119 OutputTriangleStrip = 29, 120 VecTypeHint = 30, 121 ContractionOff = 31, 122 Initializer = 33, 123 Finalizer = 34, 124 SubgroupSize = 35, 125 SubgroupsPerWorkgroup = 36, 126 SubgroupsPerWorkgroupId = 37, 127 LocalSizeId = 38, 128 LocalSizeHintId = 39, 129 PostDepthCoverage = 4446, 130 DenormPreserve = 4459, 131 DenormFlushToZero = 4460, 132 SignedZeroInfNanPreserve = 4461, 133 RoundingModeRTE = 4462, 134 RoundingModeRTZ = 4463, 135 StencilRefReplacingEXT = 5027, 136 OutputLinesNV = 5269, 137 OutputPrimitivesNV = 5270, 138 DerivativeGroupQuadsNV = 5289, 139 DerivativeGroupLinearNV = 5290, 140 OutputTrianglesNV = 5298, 141 }, 142 143 StorageClass = { 144 UniformConstant = 0, 145 Input = 1, 146 Uniform = 2, 147 Output = 3, 148 Workgroup = 4, 149 CrossWorkgroup = 5, 150 Private = 6, 151 Function = 7, 152 Generic = 8, 153 PushConstant = 9, 154 AtomicCounter = 10, 155 Image = 11, 156 StorageBuffer = 12, 157 CallableDataNV = 5328, 158 IncomingCallableDataNV = 5329, 159 RayPayloadNV = 5338, 160 HitAttributeNV = 5339, 161 IncomingRayPayloadNV = 5342, 162 ShaderRecordBufferNV = 5343, 163 }, 164 165 Dim = { 166 Dim1D = 0, 167 Dim2D = 1, 168 Dim3D = 2, 169 Cube = 3, 170 Rect = 4, 171 Buffer = 5, 172 SubpassData = 6, 173 }, 174 175 SamplerAddressingMode = { 176 None = 0, 177 ClampToEdge = 1, 178 Clamp = 2, 179 Repeat = 3, 180 RepeatMirrored = 4, 181 }, 182 183 SamplerFilterMode = { 184 Nearest = 0, 185 Linear = 1, 186 }, 187 188 ImageFormat = { 189 Unknown = 0, 190 Rgba32f = 1, 191 Rgba16f = 2, 192 R32f = 3, 193 Rgba8 = 4, 194 Rgba8Snorm = 5, 195 Rg32f = 6, 196 Rg16f = 7, 197 R11fG11fB10f = 8, 198 R16f = 9, 199 Rgba16 = 10, 200 Rgb10A2 = 11, 201 Rg16 = 12, 202 Rg8 = 13, 203 R16 = 14, 204 R8 = 15, 205 Rgba16Snorm = 16, 206 Rg16Snorm = 17, 207 Rg8Snorm = 18, 208 R16Snorm = 19, 209 R8Snorm = 20, 210 Rgba32i = 21, 211 Rgba16i = 22, 212 Rgba8i = 23, 213 R32i = 24, 214 Rg32i = 25, 215 Rg16i = 26, 216 Rg8i = 27, 217 R16i = 28, 218 R8i = 29, 219 Rgba32ui = 30, 220 Rgba16ui = 31, 221 Rgba8ui = 32, 222 R32ui = 33, 223 Rgb10a2ui = 34, 224 Rg32ui = 35, 225 Rg16ui = 36, 226 Rg8ui = 37, 227 R16ui = 38, 228 R8ui = 39, 229 }, 230 231 ImageChannelOrder = { 232 R = 0, 233 A = 1, 234 RG = 2, 235 RA = 3, 236 RGB = 4, 237 RGBA = 5, 238 BGRA = 6, 239 ARGB = 7, 240 Intensity = 8, 241 Luminance = 9, 242 Rx = 10, 243 RGx = 11, 244 RGBx = 12, 245 Depth = 13, 246 DepthStencil = 14, 247 sRGB = 15, 248 sRGBx = 16, 249 sRGBA = 17, 250 sBGRA = 18, 251 ABGR = 19, 252 }, 253 254 ImageChannelDataType = { 255 SnormInt8 = 0, 256 SnormInt16 = 1, 257 UnormInt8 = 2, 258 UnormInt16 = 3, 259 UnormShort565 = 4, 260 UnormShort555 = 5, 261 UnormInt101010 = 6, 262 SignedInt8 = 7, 263 SignedInt16 = 8, 264 SignedInt32 = 9, 265 UnsignedInt8 = 10, 266 UnsignedInt16 = 11, 267 UnsignedInt32 = 12, 268 HalfFloat = 13, 269 Float = 14, 270 UnormInt24 = 15, 271 UnormInt101010_2 = 16, 272 }, 273 274 ImageOperandsShift = { 275 Bias = 0, 276 Lod = 1, 277 Grad = 2, 278 ConstOffset = 3, 279 Offset = 4, 280 ConstOffsets = 5, 281 Sample = 6, 282 MinLod = 7, 283 MakeTexelAvailableKHR = 8, 284 MakeTexelVisibleKHR = 9, 285 NonPrivateTexelKHR = 10, 286 VolatileTexelKHR = 11, 287 }, 288 289 ImageOperandsMask = { 290 MaskNone = 0, 291 Bias = 0x00000001, 292 Lod = 0x00000002, 293 Grad = 0x00000004, 294 ConstOffset = 0x00000008, 295 Offset = 0x00000010, 296 ConstOffsets = 0x00000020, 297 Sample = 0x00000040, 298 MinLod = 0x00000080, 299 MakeTexelAvailableKHR = 0x00000100, 300 MakeTexelVisibleKHR = 0x00000200, 301 NonPrivateTexelKHR = 0x00000400, 302 VolatileTexelKHR = 0x00000800, 303 }, 304 305 FPFastMathModeShift = { 306 NotNaN = 0, 307 NotInf = 1, 308 NSZ = 2, 309 AllowRecip = 3, 310 Fast = 4, 311 }, 312 313 FPFastMathModeMask = { 314 MaskNone = 0, 315 NotNaN = 0x00000001, 316 NotInf = 0x00000002, 317 NSZ = 0x00000004, 318 AllowRecip = 0x00000008, 319 Fast = 0x00000010, 320 }, 321 322 FPRoundingMode = { 323 RTE = 0, 324 RTZ = 1, 325 RTP = 2, 326 RTN = 3, 327 }, 328 329 LinkageType = { 330 Export = 0, 331 Import = 1, 332 }, 333 334 AccessQualifier = { 335 ReadOnly = 0, 336 WriteOnly = 1, 337 ReadWrite = 2, 338 }, 339 340 FunctionParameterAttribute = { 341 Zext = 0, 342 Sext = 1, 343 ByVal = 2, 344 Sret = 3, 345 NoAlias = 4, 346 NoCapture = 5, 347 NoWrite = 6, 348 NoReadWrite = 7, 349 }, 350 351 Decoration = { 352 RelaxedPrecision = 0, 353 SpecId = 1, 354 Block = 2, 355 BufferBlock = 3, 356 RowMajor = 4, 357 ColMajor = 5, 358 ArrayStride = 6, 359 MatrixStride = 7, 360 GLSLShared = 8, 361 GLSLPacked = 9, 362 CPacked = 10, 363 BuiltIn = 11, 364 NoPerspective = 13, 365 Flat = 14, 366 Patch = 15, 367 Centroid = 16, 368 Sample = 17, 369 Invariant = 18, 370 Restrict = 19, 371 Aliased = 20, 372 Volatile = 21, 373 Constant = 22, 374 Coherent = 23, 375 NonWritable = 24, 376 NonReadable = 25, 377 Uniform = 26, 378 SaturatedConversion = 28, 379 Stream = 29, 380 Location = 30, 381 Component = 31, 382 Index = 32, 383 Binding = 33, 384 DescriptorSet = 34, 385 Offset = 35, 386 XfbBuffer = 36, 387 XfbStride = 37, 388 FuncParamAttr = 38, 389 FPRoundingMode = 39, 390 FPFastMathMode = 40, 391 LinkageAttributes = 41, 392 NoContraction = 42, 393 InputAttachmentIndex = 43, 394 Alignment = 44, 395 MaxByteOffset = 45, 396 AlignmentId = 46, 397 MaxByteOffsetId = 47, 398 NoSignedWrap = 4469, 399 NoUnsignedWrap = 4470, 400 ExplicitInterpAMD = 4999, 401 OverrideCoverageNV = 5248, 402 PassthroughNV = 5250, 403 ViewportRelativeNV = 5252, 404 SecondaryViewportRelativeNV = 5256, 405 PerPrimitiveNV = 5271, 406 PerViewNV = 5272, 407 PerTaskNV = 5273, 408 PerVertexNV = 5285, 409 NonUniformEXT = 5300, 410 HlslCounterBufferGOOGLE = 5634, 411 HlslSemanticGOOGLE = 5635, 412 }, 413 414 BuiltIn = { 415 Position = 0, 416 PointSize = 1, 417 ClipDistance = 3, 418 CullDistance = 4, 419 VertexId = 5, 420 InstanceId = 6, 421 PrimitiveId = 7, 422 InvocationId = 8, 423 Layer = 9, 424 ViewportIndex = 10, 425 TessLevelOuter = 11, 426 TessLevelInner = 12, 427 TessCoord = 13, 428 PatchVertices = 14, 429 FragCoord = 15, 430 PointCoord = 16, 431 FrontFacing = 17, 432 SampleId = 18, 433 SamplePosition = 19, 434 SampleMask = 20, 435 FragDepth = 22, 436 HelperInvocation = 23, 437 NumWorkgroups = 24, 438 WorkgroupSize = 25, 439 WorkgroupId = 26, 440 LocalInvocationId = 27, 441 GlobalInvocationId = 28, 442 LocalInvocationIndex = 29, 443 WorkDim = 30, 444 GlobalSize = 31, 445 EnqueuedWorkgroupSize = 32, 446 GlobalOffset = 33, 447 GlobalLinearId = 34, 448 SubgroupSize = 36, 449 SubgroupMaxSize = 37, 450 NumSubgroups = 38, 451 NumEnqueuedSubgroups = 39, 452 SubgroupId = 40, 453 SubgroupLocalInvocationId = 41, 454 VertexIndex = 42, 455 InstanceIndex = 43, 456 SubgroupEqMask = 4416, 457 SubgroupEqMaskKHR = 4416, 458 SubgroupGeMask = 4417, 459 SubgroupGeMaskKHR = 4417, 460 SubgroupGtMask = 4418, 461 SubgroupGtMaskKHR = 4418, 462 SubgroupLeMask = 4419, 463 SubgroupLeMaskKHR = 4419, 464 SubgroupLtMask = 4420, 465 SubgroupLtMaskKHR = 4420, 466 BaseVertex = 4424, 467 BaseInstance = 4425, 468 DrawIndex = 4426, 469 DeviceIndex = 4438, 470 ViewIndex = 4440, 471 BaryCoordNoPerspAMD = 4992, 472 BaryCoordNoPerspCentroidAMD = 4993, 473 BaryCoordNoPerspSampleAMD = 4994, 474 BaryCoordSmoothAMD = 4995, 475 BaryCoordSmoothCentroidAMD = 4996, 476 BaryCoordSmoothSampleAMD = 4997, 477 BaryCoordPullModelAMD = 4998, 478 FragStencilRefEXT = 5014, 479 ViewportMaskNV = 5253, 480 SecondaryPositionNV = 5257, 481 SecondaryViewportMaskNV = 5258, 482 PositionPerViewNV = 5261, 483 ViewportMaskPerViewNV = 5262, 484 FullyCoveredEXT = 5264, 485 TaskCountNV = 5274, 486 PrimitiveCountNV = 5275, 487 PrimitiveIndicesNV = 5276, 488 ClipDistancePerViewNV = 5277, 489 CullDistancePerViewNV = 5278, 490 LayerPerViewNV = 5279, 491 MeshViewCountNV = 5280, 492 MeshViewIndicesNV = 5281, 493 BaryCoordNV = 5286, 494 BaryCoordNoPerspNV = 5287, 495 FragSizeEXT = 5292, 496 FragmentSizeNV = 5292, 497 FragInvocationCountEXT = 5293, 498 InvocationsPerPixelNV = 5293, 499 LaunchIdNV = 5319, 500 LaunchSizeNV = 5320, 501 WorldRayOriginNV = 5321, 502 WorldRayDirectionNV = 5322, 503 ObjectRayOriginNV = 5323, 504 ObjectRayDirectionNV = 5324, 505 RayTminNV = 5325, 506 RayTmaxNV = 5326, 507 InstanceCustomIndexNV = 5327, 508 ObjectToWorldNV = 5330, 509 WorldToObjectNV = 5331, 510 HitTNV = 5332, 511 HitKindNV = 5333, 512 IncomingRayFlagsNV = 5351, 513 }, 514 515 SelectionControlShift = { 516 Flatten = 0, 517 DontFlatten = 1, 518 }, 519 520 SelectionControlMask = { 521 MaskNone = 0, 522 Flatten = 0x00000001, 523 DontFlatten = 0x00000002, 524 }, 525 526 LoopControlShift = { 527 Unroll = 0, 528 DontUnroll = 1, 529 DependencyInfinite = 2, 530 DependencyLength = 3, 531 }, 532 533 LoopControlMask = { 534 MaskNone = 0, 535 Unroll = 0x00000001, 536 DontUnroll = 0x00000002, 537 DependencyInfinite = 0x00000004, 538 DependencyLength = 0x00000008, 539 }, 540 541 FunctionControlShift = { 542 Inline = 0, 543 DontInline = 1, 544 Pure = 2, 545 Const = 3, 546 }, 547 548 FunctionControlMask = { 549 MaskNone = 0, 550 Inline = 0x00000001, 551 DontInline = 0x00000002, 552 Pure = 0x00000004, 553 Const = 0x00000008, 554 }, 555 556 MemorySemanticsShift = { 557 Acquire = 1, 558 Release = 2, 559 AcquireRelease = 3, 560 SequentiallyConsistent = 4, 561 UniformMemory = 6, 562 SubgroupMemory = 7, 563 WorkgroupMemory = 8, 564 CrossWorkgroupMemory = 9, 565 AtomicCounterMemory = 10, 566 ImageMemory = 11, 567 OutputMemoryKHR = 12, 568 MakeAvailableKHR = 13, 569 MakeVisibleKHR = 14, 570 }, 571 572 MemorySemanticsMask = { 573 MaskNone = 0, 574 Acquire = 0x00000002, 575 Release = 0x00000004, 576 AcquireRelease = 0x00000008, 577 SequentiallyConsistent = 0x00000010, 578 UniformMemory = 0x00000040, 579 SubgroupMemory = 0x00000080, 580 WorkgroupMemory = 0x00000100, 581 CrossWorkgroupMemory = 0x00000200, 582 AtomicCounterMemory = 0x00000400, 583 ImageMemory = 0x00000800, 584 OutputMemoryKHR = 0x00001000, 585 MakeAvailableKHR = 0x00002000, 586 MakeVisibleKHR = 0x00004000, 587 }, 588 589 MemoryAccessShift = { 590 Volatile = 0, 591 Aligned = 1, 592 Nontemporal = 2, 593 MakePointerAvailableKHR = 3, 594 MakePointerVisibleKHR = 4, 595 NonPrivatePointerKHR = 5, 596 }, 597 598 MemoryAccessMask = { 599 MaskNone = 0, 600 Volatile = 0x00000001, 601 Aligned = 0x00000002, 602 Nontemporal = 0x00000004, 603 MakePointerAvailableKHR = 0x00000008, 604 MakePointerVisibleKHR = 0x00000010, 605 NonPrivatePointerKHR = 0x00000020, 606 }, 607 608 Scope = { 609 CrossDevice = 0, 610 Device = 1, 611 Workgroup = 2, 612 Subgroup = 3, 613 Invocation = 4, 614 QueueFamilyKHR = 5, 615 }, 616 617 GroupOperation = { 618 Reduce = 0, 619 InclusiveScan = 1, 620 ExclusiveScan = 2, 621 ClusteredReduce = 3, 622 PartitionedReduceNV = 6, 623 PartitionedInclusiveScanNV = 7, 624 PartitionedExclusiveScanNV = 8, 625 }, 626 627 KernelEnqueueFlags = { 628 NoWait = 0, 629 WaitKernel = 1, 630 WaitWorkGroup = 2, 631 }, 632 633 KernelProfilingInfoShift = { 634 CmdExecTime = 0, 635 }, 636 637 KernelProfilingInfoMask = { 638 MaskNone = 0, 639 CmdExecTime = 0x00000001, 640 }, 641 642 Capability = { 643 Matrix = 0, 644 Shader = 1, 645 Geometry = 2, 646 Tessellation = 3, 647 Addresses = 4, 648 Linkage = 5, 649 Kernel = 6, 650 Vector16 = 7, 651 Float16Buffer = 8, 652 Float16 = 9, 653 Float64 = 10, 654 Int64 = 11, 655 Int64Atomics = 12, 656 ImageBasic = 13, 657 ImageReadWrite = 14, 658 ImageMipmap = 15, 659 Pipes = 17, 660 Groups = 18, 661 DeviceEnqueue = 19, 662 LiteralSampler = 20, 663 AtomicStorage = 21, 664 Int16 = 22, 665 TessellationPointSize = 23, 666 GeometryPointSize = 24, 667 ImageGatherExtended = 25, 668 StorageImageMultisample = 27, 669 UniformBufferArrayDynamicIndexing = 28, 670 SampledImageArrayDynamicIndexing = 29, 671 StorageBufferArrayDynamicIndexing = 30, 672 StorageImageArrayDynamicIndexing = 31, 673 ClipDistance = 32, 674 CullDistance = 33, 675 ImageCubeArray = 34, 676 SampleRateShading = 35, 677 ImageRect = 36, 678 SampledRect = 37, 679 GenericPointer = 38, 680 Int8 = 39, 681 InputAttachment = 40, 682 SparseResidency = 41, 683 MinLod = 42, 684 Sampled1D = 43, 685 Image1D = 44, 686 SampledCubeArray = 45, 687 SampledBuffer = 46, 688 ImageBuffer = 47, 689 ImageMSArray = 48, 690 StorageImageExtendedFormats = 49, 691 ImageQuery = 50, 692 DerivativeControl = 51, 693 InterpolationFunction = 52, 694 TransformFeedback = 53, 695 GeometryStreams = 54, 696 StorageImageReadWithoutFormat = 55, 697 StorageImageWriteWithoutFormat = 56, 698 MultiViewport = 57, 699 SubgroupDispatch = 58, 700 NamedBarrier = 59, 701 PipeStorage = 60, 702 GroupNonUniform = 61, 703 GroupNonUniformVote = 62, 704 GroupNonUniformArithmetic = 63, 705 GroupNonUniformBallot = 64, 706 GroupNonUniformShuffle = 65, 707 GroupNonUniformShuffleRelative = 66, 708 GroupNonUniformClustered = 67, 709 GroupNonUniformQuad = 68, 710 SubgroupBallotKHR = 4423, 711 DrawParameters = 4427, 712 SubgroupVoteKHR = 4431, 713 StorageBuffer16BitAccess = 4433, 714 StorageUniformBufferBlock16 = 4433, 715 StorageUniform16 = 4434, 716 UniformAndStorageBuffer16BitAccess = 4434, 717 StoragePushConstant16 = 4435, 718 StorageInputOutput16 = 4436, 719 DeviceGroup = 4437, 720 MultiView = 4439, 721 VariablePointersStorageBuffer = 4441, 722 VariablePointers = 4442, 723 AtomicStorageOps = 4445, 724 SampleMaskPostDepthCoverage = 4447, 725 StorageBuffer8BitAccess = 4448, 726 UniformAndStorageBuffer8BitAccess = 4449, 727 StoragePushConstant8 = 4450, 728 DenormPreserve = 4464, 729 DenormFlushToZero = 4465, 730 SignedZeroInfNanPreserve = 4466, 731 RoundingModeRTE = 4467, 732 RoundingModeRTZ = 4468, 733 Float16ImageAMD = 5008, 734 ImageGatherBiasLodAMD = 5009, 735 FragmentMaskAMD = 5010, 736 StencilExportEXT = 5013, 737 ImageReadWriteLodAMD = 5015, 738 SampleMaskOverrideCoverageNV = 5249, 739 GeometryShaderPassthroughNV = 5251, 740 ShaderViewportIndexLayerEXT = 5254, 741 ShaderViewportIndexLayerNV = 5254, 742 ShaderViewportMaskNV = 5255, 743 ShaderStereoViewNV = 5259, 744 PerViewAttributesNV = 5260, 745 FragmentFullyCoveredEXT = 5265, 746 MeshShadingNV = 5266, 747 ImageFootprintNV = 5282, 748 FragmentBarycentricNV = 5284, 749 ComputeDerivativeGroupQuadsNV = 5288, 750 FragmentDensityEXT = 5291, 751 ShadingRateNV = 5291, 752 GroupNonUniformPartitionedNV = 5297, 753 ShaderNonUniformEXT = 5301, 754 RuntimeDescriptorArrayEXT = 5302, 755 InputAttachmentArrayDynamicIndexingEXT = 5303, 756 UniformTexelBufferArrayDynamicIndexingEXT = 5304, 757 StorageTexelBufferArrayDynamicIndexingEXT = 5305, 758 UniformBufferArrayNonUniformIndexingEXT = 5306, 759 SampledImageArrayNonUniformIndexingEXT = 5307, 760 StorageBufferArrayNonUniformIndexingEXT = 5308, 761 StorageImageArrayNonUniformIndexingEXT = 5309, 762 InputAttachmentArrayNonUniformIndexingEXT = 5310, 763 UniformTexelBufferArrayNonUniformIndexingEXT = 5311, 764 StorageTexelBufferArrayNonUniformIndexingEXT = 5312, 765 RayTracingNV = 5340, 766 VulkanMemoryModelKHR = 5345, 767 VulkanMemoryModelDeviceScopeKHR = 5346, 768 ComputeDerivativeGroupLinearNV = 5350, 769 SubgroupShuffleINTEL = 5568, 770 SubgroupBufferBlockIOINTEL = 5569, 771 SubgroupImageBlockIOINTEL = 5570, 772 }, 773 774 Op = { 775 OpNop = 0, 776 OpUndef = 1, 777 OpSourceContinued = 2, 778 OpSource = 3, 779 OpSourceExtension = 4, 780 OpName = 5, 781 OpMemberName = 6, 782 OpString = 7, 783 OpLine = 8, 784 OpExtension = 10, 785 OpExtInstImport = 11, 786 OpExtInst = 12, 787 OpMemoryModel = 14, 788 OpEntryPoint = 15, 789 OpExecutionMode = 16, 790 OpCapability = 17, 791 OpTypeVoid = 19, 792 OpTypeBool = 20, 793 OpTypeInt = 21, 794 OpTypeFloat = 22, 795 OpTypeVector = 23, 796 OpTypeMatrix = 24, 797 OpTypeImage = 25, 798 OpTypeSampler = 26, 799 OpTypeSampledImage = 27, 800 OpTypeArray = 28, 801 OpTypeRuntimeArray = 29, 802 OpTypeStruct = 30, 803 OpTypeOpaque = 31, 804 OpTypePointer = 32, 805 OpTypeFunction = 33, 806 OpTypeEvent = 34, 807 OpTypeDeviceEvent = 35, 808 OpTypeReserveId = 36, 809 OpTypeQueue = 37, 810 OpTypePipe = 38, 811 OpTypeForwardPointer = 39, 812 OpConstantTrue = 41, 813 OpConstantFalse = 42, 814 OpConstant = 43, 815 OpConstantComposite = 44, 816 OpConstantSampler = 45, 817 OpConstantNull = 46, 818 OpSpecConstantTrue = 48, 819 OpSpecConstantFalse = 49, 820 OpSpecConstant = 50, 821 OpSpecConstantComposite = 51, 822 OpSpecConstantOp = 52, 823 OpFunction = 54, 824 OpFunctionParameter = 55, 825 OpFunctionEnd = 56, 826 OpFunctionCall = 57, 827 OpVariable = 59, 828 OpImageTexelPointer = 60, 829 OpLoad = 61, 830 OpStore = 62, 831 OpCopyMemory = 63, 832 OpCopyMemorySized = 64, 833 OpAccessChain = 65, 834 OpInBoundsAccessChain = 66, 835 OpPtrAccessChain = 67, 836 OpArrayLength = 68, 837 OpGenericPtrMemSemantics = 69, 838 OpInBoundsPtrAccessChain = 70, 839 OpDecorate = 71, 840 OpMemberDecorate = 72, 841 OpDecorationGroup = 73, 842 OpGroupDecorate = 74, 843 OpGroupMemberDecorate = 75, 844 OpVectorExtractDynamic = 77, 845 OpVectorInsertDynamic = 78, 846 OpVectorShuffle = 79, 847 OpCompositeConstruct = 80, 848 OpCompositeExtract = 81, 849 OpCompositeInsert = 82, 850 OpCopyObject = 83, 851 OpTranspose = 84, 852 OpSampledImage = 86, 853 OpImageSampleImplicitLod = 87, 854 OpImageSampleExplicitLod = 88, 855 OpImageSampleDrefImplicitLod = 89, 856 OpImageSampleDrefExplicitLod = 90, 857 OpImageSampleProjImplicitLod = 91, 858 OpImageSampleProjExplicitLod = 92, 859 OpImageSampleProjDrefImplicitLod = 93, 860 OpImageSampleProjDrefExplicitLod = 94, 861 OpImageFetch = 95, 862 OpImageGather = 96, 863 OpImageDrefGather = 97, 864 OpImageRead = 98, 865 OpImageWrite = 99, 866 OpImage = 100, 867 OpImageQueryFormat = 101, 868 OpImageQueryOrder = 102, 869 OpImageQuerySizeLod = 103, 870 OpImageQuerySize = 104, 871 OpImageQueryLod = 105, 872 OpImageQueryLevels = 106, 873 OpImageQuerySamples = 107, 874 OpConvertFToU = 109, 875 OpConvertFToS = 110, 876 OpConvertSToF = 111, 877 OpConvertUToF = 112, 878 OpUConvert = 113, 879 OpSConvert = 114, 880 OpFConvert = 115, 881 OpQuantizeToF16 = 116, 882 OpConvertPtrToU = 117, 883 OpSatConvertSToU = 118, 884 OpSatConvertUToS = 119, 885 OpConvertUToPtr = 120, 886 OpPtrCastToGeneric = 121, 887 OpGenericCastToPtr = 122, 888 OpGenericCastToPtrExplicit = 123, 889 OpBitcast = 124, 890 OpSNegate = 126, 891 OpFNegate = 127, 892 OpIAdd = 128, 893 OpFAdd = 129, 894 OpISub = 130, 895 OpFSub = 131, 896 OpIMul = 132, 897 OpFMul = 133, 898 OpUDiv = 134, 899 OpSDiv = 135, 900 OpFDiv = 136, 901 OpUMod = 137, 902 OpSRem = 138, 903 OpSMod = 139, 904 OpFRem = 140, 905 OpFMod = 141, 906 OpVectorTimesScalar = 142, 907 OpMatrixTimesScalar = 143, 908 OpVectorTimesMatrix = 144, 909 OpMatrixTimesVector = 145, 910 OpMatrixTimesMatrix = 146, 911 OpOuterProduct = 147, 912 OpDot = 148, 913 OpIAddCarry = 149, 914 OpISubBorrow = 150, 915 OpUMulExtended = 151, 916 OpSMulExtended = 152, 917 OpAny = 154, 918 OpAll = 155, 919 OpIsNan = 156, 920 OpIsInf = 157, 921 OpIsFinite = 158, 922 OpIsNormal = 159, 923 OpSignBitSet = 160, 924 OpLessOrGreater = 161, 925 OpOrdered = 162, 926 OpUnordered = 163, 927 OpLogicalEqual = 164, 928 OpLogicalNotEqual = 165, 929 OpLogicalOr = 166, 930 OpLogicalAnd = 167, 931 OpLogicalNot = 168, 932 OpSelect = 169, 933 OpIEqual = 170, 934 OpINotEqual = 171, 935 OpUGreaterThan = 172, 936 OpSGreaterThan = 173, 937 OpUGreaterThanEqual = 174, 938 OpSGreaterThanEqual = 175, 939 OpULessThan = 176, 940 OpSLessThan = 177, 941 OpULessThanEqual = 178, 942 OpSLessThanEqual = 179, 943 OpFOrdEqual = 180, 944 OpFUnordEqual = 181, 945 OpFOrdNotEqual = 182, 946 OpFUnordNotEqual = 183, 947 OpFOrdLessThan = 184, 948 OpFUnordLessThan = 185, 949 OpFOrdGreaterThan = 186, 950 OpFUnordGreaterThan = 187, 951 OpFOrdLessThanEqual = 188, 952 OpFUnordLessThanEqual = 189, 953 OpFOrdGreaterThanEqual = 190, 954 OpFUnordGreaterThanEqual = 191, 955 OpShiftRightLogical = 194, 956 OpShiftRightArithmetic = 195, 957 OpShiftLeftLogical = 196, 958 OpBitwiseOr = 197, 959 OpBitwiseXor = 198, 960 OpBitwiseAnd = 199, 961 OpNot = 200, 962 OpBitFieldInsert = 201, 963 OpBitFieldSExtract = 202, 964 OpBitFieldUExtract = 203, 965 OpBitReverse = 204, 966 OpBitCount = 205, 967 OpDPdx = 207, 968 OpDPdy = 208, 969 OpFwidth = 209, 970 OpDPdxFine = 210, 971 OpDPdyFine = 211, 972 OpFwidthFine = 212, 973 OpDPdxCoarse = 213, 974 OpDPdyCoarse = 214, 975 OpFwidthCoarse = 215, 976 OpEmitVertex = 218, 977 OpEndPrimitive = 219, 978 OpEmitStreamVertex = 220, 979 OpEndStreamPrimitive = 221, 980 OpControlBarrier = 224, 981 OpMemoryBarrier = 225, 982 OpAtomicLoad = 227, 983 OpAtomicStore = 228, 984 OpAtomicExchange = 229, 985 OpAtomicCompareExchange = 230, 986 OpAtomicCompareExchangeWeak = 231, 987 OpAtomicIIncrement = 232, 988 OpAtomicIDecrement = 233, 989 OpAtomicIAdd = 234, 990 OpAtomicISub = 235, 991 OpAtomicSMin = 236, 992 OpAtomicUMin = 237, 993 OpAtomicSMax = 238, 994 OpAtomicUMax = 239, 995 OpAtomicAnd = 240, 996 OpAtomicOr = 241, 997 OpAtomicXor = 242, 998 OpPhi = 245, 999 OpLoopMerge = 246, 1000 OpSelectionMerge = 247, 1001 OpLabel = 248, 1002 OpBranch = 249, 1003 OpBranchConditional = 250, 1004 OpSwitch = 251, 1005 OpKill = 252, 1006 OpReturn = 253, 1007 OpReturnValue = 254, 1008 OpUnreachable = 255, 1009 OpLifetimeStart = 256, 1010 OpLifetimeStop = 257, 1011 OpGroupAsyncCopy = 259, 1012 OpGroupWaitEvents = 260, 1013 OpGroupAll = 261, 1014 OpGroupAny = 262, 1015 OpGroupBroadcast = 263, 1016 OpGroupIAdd = 264, 1017 OpGroupFAdd = 265, 1018 OpGroupFMin = 266, 1019 OpGroupUMin = 267, 1020 OpGroupSMin = 268, 1021 OpGroupFMax = 269, 1022 OpGroupUMax = 270, 1023 OpGroupSMax = 271, 1024 OpReadPipe = 274, 1025 OpWritePipe = 275, 1026 OpReservedReadPipe = 276, 1027 OpReservedWritePipe = 277, 1028 OpReserveReadPipePackets = 278, 1029 OpReserveWritePipePackets = 279, 1030 OpCommitReadPipe = 280, 1031 OpCommitWritePipe = 281, 1032 OpIsValidReserveId = 282, 1033 OpGetNumPipePackets = 283, 1034 OpGetMaxPipePackets = 284, 1035 OpGroupReserveReadPipePackets = 285, 1036 OpGroupReserveWritePipePackets = 286, 1037 OpGroupCommitReadPipe = 287, 1038 OpGroupCommitWritePipe = 288, 1039 OpEnqueueMarker = 291, 1040 OpEnqueueKernel = 292, 1041 OpGetKernelNDrangeSubGroupCount = 293, 1042 OpGetKernelNDrangeMaxSubGroupSize = 294, 1043 OpGetKernelWorkGroupSize = 295, 1044 OpGetKernelPreferredWorkGroupSizeMultiple = 296, 1045 OpRetainEvent = 297, 1046 OpReleaseEvent = 298, 1047 OpCreateUserEvent = 299, 1048 OpIsValidEvent = 300, 1049 OpSetUserEventStatus = 301, 1050 OpCaptureEventProfilingInfo = 302, 1051 OpGetDefaultQueue = 303, 1052 OpBuildNDRange = 304, 1053 OpImageSparseSampleImplicitLod = 305, 1054 OpImageSparseSampleExplicitLod = 306, 1055 OpImageSparseSampleDrefImplicitLod = 307, 1056 OpImageSparseSampleDrefExplicitLod = 308, 1057 OpImageSparseSampleProjImplicitLod = 309, 1058 OpImageSparseSampleProjExplicitLod = 310, 1059 OpImageSparseSampleProjDrefImplicitLod = 311, 1060 OpImageSparseSampleProjDrefExplicitLod = 312, 1061 OpImageSparseFetch = 313, 1062 OpImageSparseGather = 314, 1063 OpImageSparseDrefGather = 315, 1064 OpImageSparseTexelsResident = 316, 1065 OpNoLine = 317, 1066 OpAtomicFlagTestAndSet = 318, 1067 OpAtomicFlagClear = 319, 1068 OpImageSparseRead = 320, 1069 OpSizeOf = 321, 1070 OpTypePipeStorage = 322, 1071 OpConstantPipeStorage = 323, 1072 OpCreatePipeFromPipeStorage = 324, 1073 OpGetKernelLocalSizeForSubgroupCount = 325, 1074 OpGetKernelMaxNumSubgroups = 326, 1075 OpTypeNamedBarrier = 327, 1076 OpNamedBarrierInitialize = 328, 1077 OpMemoryNamedBarrier = 329, 1078 OpModuleProcessed = 330, 1079 OpExecutionModeId = 331, 1080 OpDecorateId = 332, 1081 OpGroupNonUniformElect = 333, 1082 OpGroupNonUniformAll = 334, 1083 OpGroupNonUniformAny = 335, 1084 OpGroupNonUniformAllEqual = 336, 1085 OpGroupNonUniformBroadcast = 337, 1086 OpGroupNonUniformBroadcastFirst = 338, 1087 OpGroupNonUniformBallot = 339, 1088 OpGroupNonUniformInverseBallot = 340, 1089 OpGroupNonUniformBallotBitExtract = 341, 1090 OpGroupNonUniformBallotBitCount = 342, 1091 OpGroupNonUniformBallotFindLSB = 343, 1092 OpGroupNonUniformBallotFindMSB = 344, 1093 OpGroupNonUniformShuffle = 345, 1094 OpGroupNonUniformShuffleXor = 346, 1095 OpGroupNonUniformShuffleUp = 347, 1096 OpGroupNonUniformShuffleDown = 348, 1097 OpGroupNonUniformIAdd = 349, 1098 OpGroupNonUniformFAdd = 350, 1099 OpGroupNonUniformIMul = 351, 1100 OpGroupNonUniformFMul = 352, 1101 OpGroupNonUniformSMin = 353, 1102 OpGroupNonUniformUMin = 354, 1103 OpGroupNonUniformFMin = 355, 1104 OpGroupNonUniformSMax = 356, 1105 OpGroupNonUniformUMax = 357, 1106 OpGroupNonUniformFMax = 358, 1107 OpGroupNonUniformBitwiseAnd = 359, 1108 OpGroupNonUniformBitwiseOr = 360, 1109 OpGroupNonUniformBitwiseXor = 361, 1110 OpGroupNonUniformLogicalAnd = 362, 1111 OpGroupNonUniformLogicalOr = 363, 1112 OpGroupNonUniformLogicalXor = 364, 1113 OpGroupNonUniformQuadBroadcast = 365, 1114 OpGroupNonUniformQuadSwap = 366, 1115 OpSubgroupBallotKHR = 4421, 1116 OpSubgroupFirstInvocationKHR = 4422, 1117 OpSubgroupAllKHR = 4428, 1118 OpSubgroupAnyKHR = 4429, 1119 OpSubgroupAllEqualKHR = 4430, 1120 OpSubgroupReadInvocationKHR = 4432, 1121 OpGroupIAddNonUniformAMD = 5000, 1122 OpGroupFAddNonUniformAMD = 5001, 1123 OpGroupFMinNonUniformAMD = 5002, 1124 OpGroupUMinNonUniformAMD = 5003, 1125 OpGroupSMinNonUniformAMD = 5004, 1126 OpGroupFMaxNonUniformAMD = 5005, 1127 OpGroupUMaxNonUniformAMD = 5006, 1128 OpGroupSMaxNonUniformAMD = 5007, 1129 OpFragmentMaskFetchAMD = 5011, 1130 OpFragmentFetchAMD = 5012, 1131 OpImageSampleFootprintNV = 5283, 1132 OpGroupNonUniformPartitionNV = 5296, 1133 OpWritePackedPrimitiveIndices4x8NV = 5299, 1134 OpReportIntersectionNV = 5334, 1135 OpIgnoreIntersectionNV = 5335, 1136 OpTerminateRayNV = 5336, 1137 OpTraceNV = 5337, 1138 OpTypeAccelerationStructureNV = 5341, 1139 OpExecuteCallableNV = 5344, 1140 OpSubgroupShuffleINTEL = 5571, 1141 OpSubgroupShuffleDownINTEL = 5572, 1142 OpSubgroupShuffleUpINTEL = 5573, 1143 OpSubgroupShuffleXorINTEL = 5574, 1144 OpSubgroupBlockReadINTEL = 5575, 1145 OpSubgroupBlockWriteINTEL = 5576, 1146 OpSubgroupImageBlockReadINTEL = 5577, 1147 OpSubgroupImageBlockWriteINTEL = 5578, 1148 OpDecorateStringGOOGLE = 5632, 1149 OpMemberDecorateStringGOOGLE = 5633, 1150 }, 1151 1152} 1153 1154