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 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 + 45 + Some tokens act like mask values, which can be OR'd together, 46 + while others are mutually exclusive. The mask-like ones have 47 + "Mask" in their name, and a parallel enum that has the shift 48 + amount (1 << x) for each corresponding enumerant. 49 +/ 50 51 module spv; 52 53 enum uint MagicNumber = 0x07230203; 54 enum uint Version = 0x00010500; 55 enum uint Revision = 4; 56 enum uint OpCodeMask = 0xffff; 57 enum uint WordCountShift = 16; 58 59 enum SourceLanguage : uint 60 { 61 Unknown = 0, 62 ESSL = 1, 63 GLSL = 2, 64 OpenCL_C = 3, 65 OpenCL_CPP = 4, 66 HLSL = 5, 67 } 68 69 enum ExecutionModel : uint 70 { 71 Vertex = 0, 72 TessellationControl = 1, 73 TessellationEvaluation = 2, 74 Geometry = 3, 75 Fragment = 4, 76 GLCompute = 5, 77 Kernel = 6, 78 TaskNV = 5267, 79 MeshNV = 5268, 80 RayGenerationKHR = 5313, 81 RayGenerationNV = 5313, 82 IntersectionKHR = 5314, 83 IntersectionNV = 5314, 84 AnyHitKHR = 5315, 85 AnyHitNV = 5315, 86 ClosestHitKHR = 5316, 87 ClosestHitNV = 5316, 88 MissKHR = 5317, 89 MissNV = 5317, 90 CallableKHR = 5318, 91 CallableNV = 5318, 92 } 93 94 enum AddressingModel : uint 95 { 96 Logical = 0, 97 Physical32 = 1, 98 Physical64 = 2, 99 PhysicalStorageBuffer64 = 5348, 100 PhysicalStorageBuffer64EXT = 5348, 101 } 102 103 enum MemoryModel : uint 104 { 105 Simple = 0, 106 GLSL450 = 1, 107 OpenCL = 2, 108 Vulkan = 3, 109 VulkanKHR = 3, 110 } 111 112 enum ExecutionMode : uint 113 { 114 Invocations = 0, 115 SpacingEqual = 1, 116 SpacingFractionalEven = 2, 117 SpacingFractionalOdd = 3, 118 VertexOrderCw = 4, 119 VertexOrderCcw = 5, 120 PixelCenterInteger = 6, 121 OriginUpperLeft = 7, 122 OriginLowerLeft = 8, 123 EarlyFragmentTests = 9, 124 PointMode = 10, 125 Xfb = 11, 126 DepthReplacing = 12, 127 DepthGreater = 14, 128 DepthLess = 15, 129 DepthUnchanged = 16, 130 LocalSize = 17, 131 LocalSizeHint = 18, 132 InputPoints = 19, 133 InputLines = 20, 134 InputLinesAdjacency = 21, 135 Triangles = 22, 136 InputTrianglesAdjacency = 23, 137 Quads = 24, 138 Isolines = 25, 139 OutputVertices = 26, 140 OutputPoints = 27, 141 OutputLineStrip = 28, 142 OutputTriangleStrip = 29, 143 VecTypeHint = 30, 144 ContractionOff = 31, 145 Initializer = 33, 146 Finalizer = 34, 147 SubgroupSize = 35, 148 SubgroupsPerWorkgroup = 36, 149 SubgroupsPerWorkgroupId = 37, 150 LocalSizeId = 38, 151 LocalSizeHintId = 39, 152 PostDepthCoverage = 4446, 153 DenormPreserve = 4459, 154 DenormFlushToZero = 4460, 155 SignedZeroInfNanPreserve = 4461, 156 RoundingModeRTE = 4462, 157 RoundingModeRTZ = 4463, 158 StencilRefReplacingEXT = 5027, 159 OutputLinesNV = 5269, 160 OutputPrimitivesNV = 5270, 161 DerivativeGroupQuadsNV = 5289, 162 DerivativeGroupLinearNV = 5290, 163 OutputTrianglesNV = 5298, 164 PixelInterlockOrderedEXT = 5366, 165 PixelInterlockUnorderedEXT = 5367, 166 SampleInterlockOrderedEXT = 5368, 167 SampleInterlockUnorderedEXT = 5369, 168 ShadingRateInterlockOrderedEXT = 5370, 169 ShadingRateInterlockUnorderedEXT = 5371, 170 MaxWorkgroupSizeINTEL = 5893, 171 MaxWorkDimINTEL = 5894, 172 NoGlobalOffsetINTEL = 5895, 173 NumSIMDWorkitemsINTEL = 5896, 174 } 175 176 enum StorageClass : uint 177 { 178 UniformConstant = 0, 179 Input = 1, 180 Uniform = 2, 181 Output = 3, 182 Workgroup = 4, 183 CrossWorkgroup = 5, 184 Private = 6, 185 Function = 7, 186 Generic = 8, 187 PushConstant = 9, 188 AtomicCounter = 10, 189 Image = 11, 190 StorageBuffer = 12, 191 CallableDataKHR = 5328, 192 CallableDataNV = 5328, 193 IncomingCallableDataKHR = 5329, 194 IncomingCallableDataNV = 5329, 195 RayPayloadKHR = 5338, 196 RayPayloadNV = 5338, 197 HitAttributeKHR = 5339, 198 HitAttributeNV = 5339, 199 IncomingRayPayloadKHR = 5342, 200 IncomingRayPayloadNV = 5342, 201 ShaderRecordBufferKHR = 5343, 202 ShaderRecordBufferNV = 5343, 203 PhysicalStorageBuffer = 5349, 204 PhysicalStorageBufferEXT = 5349, 205 CodeSectionINTEL = 5605, 206 } 207 208 enum Dim : uint 209 { 210 _1D = 0, 211 _2D = 1, 212 _3D = 2, 213 Cube = 3, 214 Rect = 4, 215 Buffer = 5, 216 SubpassData = 6, 217 } 218 219 enum SamplerAddressingMode : uint 220 { 221 None = 0, 222 ClampToEdge = 1, 223 Clamp = 2, 224 Repeat = 3, 225 RepeatMirrored = 4, 226 } 227 228 enum SamplerFilterMode : uint 229 { 230 Nearest = 0, 231 Linear = 1, 232 } 233 234 enum ImageFormat : uint 235 { 236 Unknown = 0, 237 Rgba32f = 1, 238 Rgba16f = 2, 239 R32f = 3, 240 Rgba8 = 4, 241 Rgba8Snorm = 5, 242 Rg32f = 6, 243 Rg16f = 7, 244 R11fG11fB10f = 8, 245 R16f = 9, 246 Rgba16 = 10, 247 Rgb10A2 = 11, 248 Rg16 = 12, 249 Rg8 = 13, 250 R16 = 14, 251 R8 = 15, 252 Rgba16Snorm = 16, 253 Rg16Snorm = 17, 254 Rg8Snorm = 18, 255 R16Snorm = 19, 256 R8Snorm = 20, 257 Rgba32i = 21, 258 Rgba16i = 22, 259 Rgba8i = 23, 260 R32i = 24, 261 Rg32i = 25, 262 Rg16i = 26, 263 Rg8i = 27, 264 R16i = 28, 265 R8i = 29, 266 Rgba32ui = 30, 267 Rgba16ui = 31, 268 Rgba8ui = 32, 269 R32ui = 33, 270 Rgb10a2ui = 34, 271 Rg32ui = 35, 272 Rg16ui = 36, 273 Rg8ui = 37, 274 R16ui = 38, 275 R8ui = 39, 276 R64ui = 40, 277 R64i = 41, 278 } 279 280 enum ImageChannelOrder : uint 281 { 282 R = 0, 283 A = 1, 284 RG = 2, 285 RA = 3, 286 RGB = 4, 287 RGBA = 5, 288 BGRA = 6, 289 ARGB = 7, 290 Intensity = 8, 291 Luminance = 9, 292 Rx = 10, 293 RGx = 11, 294 RGBx = 12, 295 Depth = 13, 296 DepthStencil = 14, 297 sRGB = 15, 298 sRGBx = 16, 299 sRGBA = 17, 300 sBGRA = 18, 301 ABGR = 19, 302 } 303 304 enum ImageChannelDataType : uint 305 { 306 SnormInt8 = 0, 307 SnormInt16 = 1, 308 UnormInt8 = 2, 309 UnormInt16 = 3, 310 UnormShort565 = 4, 311 UnormShort555 = 5, 312 UnormInt101010 = 6, 313 SignedInt8 = 7, 314 SignedInt16 = 8, 315 SignedInt32 = 9, 316 UnsignedInt8 = 10, 317 UnsignedInt16 = 11, 318 UnsignedInt32 = 12, 319 HalfFloat = 13, 320 Float = 14, 321 UnormInt24 = 15, 322 UnormInt101010_2 = 16, 323 } 324 325 enum ImageOperandsShift : uint 326 { 327 Bias = 0, 328 Lod = 1, 329 Grad = 2, 330 ConstOffset = 3, 331 Offset = 4, 332 ConstOffsets = 5, 333 Sample = 6, 334 MinLod = 7, 335 MakeTexelAvailable = 8, 336 MakeTexelAvailableKHR = 8, 337 MakeTexelVisible = 9, 338 MakeTexelVisibleKHR = 9, 339 NonPrivateTexel = 10, 340 NonPrivateTexelKHR = 10, 341 VolatileTexel = 11, 342 VolatileTexelKHR = 11, 343 SignExtend = 12, 344 ZeroExtend = 13, 345 } 346 347 enum ImageOperandsMask : uint 348 { 349 MaskNone = 0, 350 Bias = 0x00000001, 351 Lod = 0x00000002, 352 Grad = 0x00000004, 353 ConstOffset = 0x00000008, 354 Offset = 0x00000010, 355 ConstOffsets = 0x00000020, 356 Sample = 0x00000040, 357 MinLod = 0x00000080, 358 MakeTexelAvailable = 0x00000100, 359 MakeTexelAvailableKHR = 0x00000100, 360 MakeTexelVisible = 0x00000200, 361 MakeTexelVisibleKHR = 0x00000200, 362 NonPrivateTexel = 0x00000400, 363 NonPrivateTexelKHR = 0x00000400, 364 VolatileTexel = 0x00000800, 365 VolatileTexelKHR = 0x00000800, 366 SignExtend = 0x00001000, 367 ZeroExtend = 0x00002000, 368 } 369 370 enum FPFastMathModeShift : uint 371 { 372 NotNaN = 0, 373 NotInf = 1, 374 NSZ = 2, 375 AllowRecip = 3, 376 Fast = 4, 377 } 378 379 enum FPFastMathModeMask : uint 380 { 381 MaskNone = 0, 382 NotNaN = 0x00000001, 383 NotInf = 0x00000002, 384 NSZ = 0x00000004, 385 AllowRecip = 0x00000008, 386 Fast = 0x00000010, 387 } 388 389 enum FPRoundingMode : uint 390 { 391 RTE = 0, 392 RTZ = 1, 393 RTP = 2, 394 RTN = 3, 395 } 396 397 enum LinkageType : uint 398 { 399 Export = 0, 400 Import = 1, 401 } 402 403 enum AccessQualifier : uint 404 { 405 ReadOnly = 0, 406 WriteOnly = 1, 407 ReadWrite = 2, 408 } 409 410 enum FunctionParameterAttribute : uint 411 { 412 Zext = 0, 413 Sext = 1, 414 ByVal = 2, 415 Sret = 3, 416 NoAlias = 4, 417 NoCapture = 5, 418 NoWrite = 6, 419 NoReadWrite = 7, 420 } 421 422 enum Decoration : uint 423 { 424 RelaxedPrecision = 0, 425 SpecId = 1, 426 Block = 2, 427 BufferBlock = 3, 428 RowMajor = 4, 429 ColMajor = 5, 430 ArrayStride = 6, 431 MatrixStride = 7, 432 GLSLShared = 8, 433 GLSLPacked = 9, 434 CPacked = 10, 435 BuiltIn = 11, 436 NoPerspective = 13, 437 Flat = 14, 438 Patch = 15, 439 Centroid = 16, 440 Sample = 17, 441 Invariant = 18, 442 Restrict = 19, 443 Aliased = 20, 444 Volatile = 21, 445 Constant = 22, 446 Coherent = 23, 447 NonWritable = 24, 448 NonReadable = 25, 449 Uniform = 26, 450 UniformId = 27, 451 SaturatedConversion = 28, 452 Stream = 29, 453 Location = 30, 454 Component = 31, 455 Index = 32, 456 Binding = 33, 457 DescriptorSet = 34, 458 Offset = 35, 459 XfbBuffer = 36, 460 XfbStride = 37, 461 FuncParamAttr = 38, 462 FPRoundingMode = 39, 463 FPFastMathMode = 40, 464 LinkageAttributes = 41, 465 NoContraction = 42, 466 InputAttachmentIndex = 43, 467 Alignment = 44, 468 MaxByteOffset = 45, 469 AlignmentId = 46, 470 MaxByteOffsetId = 47, 471 NoSignedWrap = 4469, 472 NoUnsignedWrap = 4470, 473 ExplicitInterpAMD = 4999, 474 OverrideCoverageNV = 5248, 475 PassthroughNV = 5250, 476 ViewportRelativeNV = 5252, 477 SecondaryViewportRelativeNV = 5256, 478 PerPrimitiveNV = 5271, 479 PerViewNV = 5272, 480 PerTaskNV = 5273, 481 PerVertexNV = 5285, 482 NonUniform = 5300, 483 NonUniformEXT = 5300, 484 RestrictPointer = 5355, 485 RestrictPointerEXT = 5355, 486 AliasedPointer = 5356, 487 AliasedPointerEXT = 5356, 488 ReferencedIndirectlyINTEL = 5602, 489 CounterBuffer = 5634, 490 HlslCounterBufferGOOGLE = 5634, 491 HlslSemanticGOOGLE = 5635, 492 UserSemantic = 5635, 493 UserTypeGOOGLE = 5636, 494 RegisterINTEL = 5825, 495 MemoryINTEL = 5826, 496 NumbanksINTEL = 5827, 497 BankwidthINTEL = 5828, 498 MaxPrivateCopiesINTEL = 5829, 499 SinglepumpINTEL = 5830, 500 DoublepumpINTEL = 5831, 501 MaxReplicatesINTEL = 5832, 502 SimpleDualPortINTEL = 5833, 503 MergeINTEL = 5834, 504 BankBitsINTEL = 5835, 505 ForcePow2DepthINTEL = 5836, 506 } 507 508 enum BuiltIn : uint 509 { 510 Position = 0, 511 PointSize = 1, 512 ClipDistance = 3, 513 CullDistance = 4, 514 VertexId = 5, 515 InstanceId = 6, 516 PrimitiveId = 7, 517 InvocationId = 8, 518 Layer = 9, 519 ViewportIndex = 10, 520 TessLevelOuter = 11, 521 TessLevelInner = 12, 522 TessCoord = 13, 523 PatchVertices = 14, 524 FragCoord = 15, 525 PointCoord = 16, 526 FrontFacing = 17, 527 SampleId = 18, 528 SamplePosition = 19, 529 SampleMask = 20, 530 FragDepth = 22, 531 HelperInvocation = 23, 532 NumWorkgroups = 24, 533 WorkgroupSize = 25, 534 WorkgroupId = 26, 535 LocalInvocationId = 27, 536 GlobalInvocationId = 28, 537 LocalInvocationIndex = 29, 538 WorkDim = 30, 539 GlobalSize = 31, 540 EnqueuedWorkgroupSize = 32, 541 GlobalOffset = 33, 542 GlobalLinearId = 34, 543 SubgroupSize = 36, 544 SubgroupMaxSize = 37, 545 NumSubgroups = 38, 546 NumEnqueuedSubgroups = 39, 547 SubgroupId = 40, 548 SubgroupLocalInvocationId = 41, 549 VertexIndex = 42, 550 InstanceIndex = 43, 551 SubgroupEqMask = 4416, 552 SubgroupEqMaskKHR = 4416, 553 SubgroupGeMask = 4417, 554 SubgroupGeMaskKHR = 4417, 555 SubgroupGtMask = 4418, 556 SubgroupGtMaskKHR = 4418, 557 SubgroupLeMask = 4419, 558 SubgroupLeMaskKHR = 4419, 559 SubgroupLtMask = 4420, 560 SubgroupLtMaskKHR = 4420, 561 BaseVertex = 4424, 562 BaseInstance = 4425, 563 DrawIndex = 4426, 564 PrimitiveShadingRateKHR = 4432, 565 DeviceIndex = 4438, 566 ViewIndex = 4440, 567 ShadingRateKHR = 4444, 568 BaryCoordNoPerspAMD = 4992, 569 BaryCoordNoPerspCentroidAMD = 4993, 570 BaryCoordNoPerspSampleAMD = 4994, 571 BaryCoordSmoothAMD = 4995, 572 BaryCoordSmoothCentroidAMD = 4996, 573 BaryCoordSmoothSampleAMD = 4997, 574 BaryCoordPullModelAMD = 4998, 575 FragStencilRefEXT = 5014, 576 ViewportMaskNV = 5253, 577 SecondaryPositionNV = 5257, 578 SecondaryViewportMaskNV = 5258, 579 PositionPerViewNV = 5261, 580 ViewportMaskPerViewNV = 5262, 581 FullyCoveredEXT = 5264, 582 TaskCountNV = 5274, 583 PrimitiveCountNV = 5275, 584 PrimitiveIndicesNV = 5276, 585 ClipDistancePerViewNV = 5277, 586 CullDistancePerViewNV = 5278, 587 LayerPerViewNV = 5279, 588 MeshViewCountNV = 5280, 589 MeshViewIndicesNV = 5281, 590 BaryCoordNV = 5286, 591 BaryCoordNoPerspNV = 5287, 592 FragSizeEXT = 5292, 593 FragmentSizeNV = 5292, 594 FragInvocationCountEXT = 5293, 595 InvocationsPerPixelNV = 5293, 596 LaunchIdKHR = 5319, 597 LaunchIdNV = 5319, 598 LaunchSizeKHR = 5320, 599 LaunchSizeNV = 5320, 600 WorldRayOriginKHR = 5321, 601 WorldRayOriginNV = 5321, 602 WorldRayDirectionKHR = 5322, 603 WorldRayDirectionNV = 5322, 604 ObjectRayOriginKHR = 5323, 605 ObjectRayOriginNV = 5323, 606 ObjectRayDirectionKHR = 5324, 607 ObjectRayDirectionNV = 5324, 608 RayTminKHR = 5325, 609 RayTminNV = 5325, 610 RayTmaxKHR = 5326, 611 RayTmaxNV = 5326, 612 InstanceCustomIndexKHR = 5327, 613 InstanceCustomIndexNV = 5327, 614 ObjectToWorldKHR = 5330, 615 ObjectToWorldNV = 5330, 616 WorldToObjectKHR = 5331, 617 WorldToObjectNV = 5331, 618 HitTNV = 5332, 619 HitKindKHR = 5333, 620 HitKindNV = 5333, 621 IncomingRayFlagsKHR = 5351, 622 IncomingRayFlagsNV = 5351, 623 RayGeometryIndexKHR = 5352, 624 WarpsPerSMNV = 5374, 625 SMCountNV = 5375, 626 WarpIDNV = 5376, 627 SMIDNV = 5377, 628 } 629 630 enum SelectionControlShift : uint 631 { 632 Flatten = 0, 633 DontFlatten = 1, 634 } 635 636 enum SelectionControlMask : uint 637 { 638 MaskNone = 0, 639 Flatten = 0x00000001, 640 DontFlatten = 0x00000002, 641 } 642 643 enum LoopControlShift : uint 644 { 645 Unroll = 0, 646 DontUnroll = 1, 647 DependencyInfinite = 2, 648 DependencyLength = 3, 649 MinIterations = 4, 650 MaxIterations = 5, 651 IterationMultiple = 6, 652 PeelCount = 7, 653 PartialCount = 8, 654 InitiationIntervalINTEL = 16, 655 MaxConcurrencyINTEL = 17, 656 DependencyArrayINTEL = 18, 657 PipelineEnableINTEL = 19, 658 LoopCoalesceINTEL = 20, 659 MaxInterleavingINTEL = 21, 660 SpeculatedIterationsINTEL = 22, 661 } 662 663 enum LoopControlMask : uint 664 { 665 MaskNone = 0, 666 Unroll = 0x00000001, 667 DontUnroll = 0x00000002, 668 DependencyInfinite = 0x00000004, 669 DependencyLength = 0x00000008, 670 MinIterations = 0x00000010, 671 MaxIterations = 0x00000020, 672 IterationMultiple = 0x00000040, 673 PeelCount = 0x00000080, 674 PartialCount = 0x00000100, 675 InitiationIntervalINTEL = 0x00010000, 676 MaxConcurrencyINTEL = 0x00020000, 677 DependencyArrayINTEL = 0x00040000, 678 PipelineEnableINTEL = 0x00080000, 679 LoopCoalesceINTEL = 0x00100000, 680 MaxInterleavingINTEL = 0x00200000, 681 SpeculatedIterationsINTEL = 0x00400000, 682 } 683 684 enum FunctionControlShift : uint 685 { 686 Inline = 0, 687 DontInline = 1, 688 Pure = 2, 689 Const = 3, 690 } 691 692 enum FunctionControlMask : uint 693 { 694 MaskNone = 0, 695 Inline = 0x00000001, 696 DontInline = 0x00000002, 697 Pure = 0x00000004, 698 Const = 0x00000008, 699 } 700 701 enum MemorySemanticsShift : uint 702 { 703 Acquire = 1, 704 Release = 2, 705 AcquireRelease = 3, 706 SequentiallyConsistent = 4, 707 UniformMemory = 6, 708 SubgroupMemory = 7, 709 WorkgroupMemory = 8, 710 CrossWorkgroupMemory = 9, 711 AtomicCounterMemory = 10, 712 ImageMemory = 11, 713 OutputMemory = 12, 714 OutputMemoryKHR = 12, 715 MakeAvailable = 13, 716 MakeAvailableKHR = 13, 717 MakeVisible = 14, 718 MakeVisibleKHR = 14, 719 Volatile = 15, 720 } 721 722 enum MemorySemanticsMask : uint 723 { 724 MaskNone = 0, 725 Acquire = 0x00000002, 726 Release = 0x00000004, 727 AcquireRelease = 0x00000008, 728 SequentiallyConsistent = 0x00000010, 729 UniformMemory = 0x00000040, 730 SubgroupMemory = 0x00000080, 731 WorkgroupMemory = 0x00000100, 732 CrossWorkgroupMemory = 0x00000200, 733 AtomicCounterMemory = 0x00000400, 734 ImageMemory = 0x00000800, 735 OutputMemory = 0x00001000, 736 OutputMemoryKHR = 0x00001000, 737 MakeAvailable = 0x00002000, 738 MakeAvailableKHR = 0x00002000, 739 MakeVisible = 0x00004000, 740 MakeVisibleKHR = 0x00004000, 741 Volatile = 0x00008000, 742 } 743 744 enum MemoryAccessShift : uint 745 { 746 Volatile = 0, 747 Aligned = 1, 748 Nontemporal = 2, 749 MakePointerAvailable = 3, 750 MakePointerAvailableKHR = 3, 751 MakePointerVisible = 4, 752 MakePointerVisibleKHR = 4, 753 NonPrivatePointer = 5, 754 NonPrivatePointerKHR = 5, 755 } 756 757 enum MemoryAccessMask : uint 758 { 759 MaskNone = 0, 760 Volatile = 0x00000001, 761 Aligned = 0x00000002, 762 Nontemporal = 0x00000004, 763 MakePointerAvailable = 0x00000008, 764 MakePointerAvailableKHR = 0x00000008, 765 MakePointerVisible = 0x00000010, 766 MakePointerVisibleKHR = 0x00000010, 767 NonPrivatePointer = 0x00000020, 768 NonPrivatePointerKHR = 0x00000020, 769 } 770 771 enum Scope : uint 772 { 773 CrossDevice = 0, 774 Device = 1, 775 Workgroup = 2, 776 Subgroup = 3, 777 Invocation = 4, 778 QueueFamily = 5, 779 QueueFamilyKHR = 5, 780 ShaderCallKHR = 6, 781 } 782 783 enum GroupOperation : uint 784 { 785 Reduce = 0, 786 InclusiveScan = 1, 787 ExclusiveScan = 2, 788 ClusteredReduce = 3, 789 PartitionedReduceNV = 6, 790 PartitionedInclusiveScanNV = 7, 791 PartitionedExclusiveScanNV = 8, 792 } 793 794 enum KernelEnqueueFlags : uint 795 { 796 NoWait = 0, 797 WaitKernel = 1, 798 WaitWorkGroup = 2, 799 } 800 801 enum KernelProfilingInfoShift : uint 802 { 803 CmdExecTime = 0, 804 } 805 806 enum KernelProfilingInfoMask : uint 807 { 808 MaskNone = 0, 809 CmdExecTime = 0x00000001, 810 } 811 812 enum Capability : uint 813 { 814 Matrix = 0, 815 Shader = 1, 816 Geometry = 2, 817 Tessellation = 3, 818 Addresses = 4, 819 Linkage = 5, 820 Kernel = 6, 821 Vector16 = 7, 822 Float16Buffer = 8, 823 Float16 = 9, 824 Float64 = 10, 825 Int64 = 11, 826 Int64Atomics = 12, 827 ImageBasic = 13, 828 ImageReadWrite = 14, 829 ImageMipmap = 15, 830 Pipes = 17, 831 Groups = 18, 832 DeviceEnqueue = 19, 833 LiteralSampler = 20, 834 AtomicStorage = 21, 835 Int16 = 22, 836 TessellationPointSize = 23, 837 GeometryPointSize = 24, 838 ImageGatherExtended = 25, 839 StorageImageMultisample = 27, 840 UniformBufferArrayDynamicIndexing = 28, 841 SampledImageArrayDynamicIndexing = 29, 842 StorageBufferArrayDynamicIndexing = 30, 843 StorageImageArrayDynamicIndexing = 31, 844 ClipDistance = 32, 845 CullDistance = 33, 846 ImageCubeArray = 34, 847 SampleRateShading = 35, 848 ImageRect = 36, 849 SampledRect = 37, 850 GenericPointer = 38, 851 Int8 = 39, 852 InputAttachment = 40, 853 SparseResidency = 41, 854 MinLod = 42, 855 Sampled1D = 43, 856 Image1D = 44, 857 SampledCubeArray = 45, 858 SampledBuffer = 46, 859 ImageBuffer = 47, 860 ImageMSArray = 48, 861 StorageImageExtendedFormats = 49, 862 ImageQuery = 50, 863 DerivativeControl = 51, 864 InterpolationFunction = 52, 865 TransformFeedback = 53, 866 GeometryStreams = 54, 867 StorageImageReadWithoutFormat = 55, 868 StorageImageWriteWithoutFormat = 56, 869 MultiViewport = 57, 870 SubgroupDispatch = 58, 871 NamedBarrier = 59, 872 PipeStorage = 60, 873 GroupNonUniform = 61, 874 GroupNonUniformVote = 62, 875 GroupNonUniformArithmetic = 63, 876 GroupNonUniformBallot = 64, 877 GroupNonUniformShuffle = 65, 878 GroupNonUniformShuffleRelative = 66, 879 GroupNonUniformClustered = 67, 880 GroupNonUniformQuad = 68, 881 ShaderLayer = 69, 882 ShaderViewportIndex = 70, 883 FragmentShadingRateKHR = 4422, 884 SubgroupBallotKHR = 4423, 885 DrawParameters = 4427, 886 SubgroupVoteKHR = 4431, 887 StorageBuffer16BitAccess = 4433, 888 StorageUniformBufferBlock16 = 4433, 889 StorageUniform16 = 4434, 890 UniformAndStorageBuffer16BitAccess = 4434, 891 StoragePushConstant16 = 4435, 892 StorageInputOutput16 = 4436, 893 DeviceGroup = 4437, 894 MultiView = 4439, 895 VariablePointersStorageBuffer = 4441, 896 VariablePointers = 4442, 897 AtomicStorageOps = 4445, 898 SampleMaskPostDepthCoverage = 4447, 899 StorageBuffer8BitAccess = 4448, 900 UniformAndStorageBuffer8BitAccess = 4449, 901 StoragePushConstant8 = 4450, 902 DenormPreserve = 4464, 903 DenormFlushToZero = 4465, 904 SignedZeroInfNanPreserve = 4466, 905 RoundingModeRTE = 4467, 906 RoundingModeRTZ = 4468, 907 RayQueryProvisionalKHR = 4471, 908 RayQueryKHR = 4472, 909 RayTraversalPrimitiveCullingKHR = 4478, 910 RayTracingKHR = 4479, 911 Float16ImageAMD = 5008, 912 ImageGatherBiasLodAMD = 5009, 913 FragmentMaskAMD = 5010, 914 StencilExportEXT = 5013, 915 ImageReadWriteLodAMD = 5015, 916 Int64ImageEXT = 5016, 917 ShaderClockKHR = 5055, 918 SampleMaskOverrideCoverageNV = 5249, 919 GeometryShaderPassthroughNV = 5251, 920 ShaderViewportIndexLayerEXT = 5254, 921 ShaderViewportIndexLayerNV = 5254, 922 ShaderViewportMaskNV = 5255, 923 ShaderStereoViewNV = 5259, 924 PerViewAttributesNV = 5260, 925 FragmentFullyCoveredEXT = 5265, 926 MeshShadingNV = 5266, 927 ImageFootprintNV = 5282, 928 FragmentBarycentricNV = 5284, 929 ComputeDerivativeGroupQuadsNV = 5288, 930 FragmentDensityEXT = 5291, 931 ShadingRateNV = 5291, 932 GroupNonUniformPartitionedNV = 5297, 933 ShaderNonUniform = 5301, 934 ShaderNonUniformEXT = 5301, 935 RuntimeDescriptorArray = 5302, 936 RuntimeDescriptorArrayEXT = 5302, 937 InputAttachmentArrayDynamicIndexing = 5303, 938 InputAttachmentArrayDynamicIndexingEXT = 5303, 939 UniformTexelBufferArrayDynamicIndexing = 5304, 940 UniformTexelBufferArrayDynamicIndexingEXT = 5304, 941 StorageTexelBufferArrayDynamicIndexing = 5305, 942 StorageTexelBufferArrayDynamicIndexingEXT = 5305, 943 UniformBufferArrayNonUniformIndexing = 5306, 944 UniformBufferArrayNonUniformIndexingEXT = 5306, 945 SampledImageArrayNonUniformIndexing = 5307, 946 SampledImageArrayNonUniformIndexingEXT = 5307, 947 StorageBufferArrayNonUniformIndexing = 5308, 948 StorageBufferArrayNonUniformIndexingEXT = 5308, 949 StorageImageArrayNonUniformIndexing = 5309, 950 StorageImageArrayNonUniformIndexingEXT = 5309, 951 InputAttachmentArrayNonUniformIndexing = 5310, 952 InputAttachmentArrayNonUniformIndexingEXT = 5310, 953 UniformTexelBufferArrayNonUniformIndexing = 5311, 954 UniformTexelBufferArrayNonUniformIndexingEXT = 5311, 955 StorageTexelBufferArrayNonUniformIndexing = 5312, 956 StorageTexelBufferArrayNonUniformIndexingEXT = 5312, 957 RayTracingNV = 5340, 958 VulkanMemoryModel = 5345, 959 VulkanMemoryModelKHR = 5345, 960 VulkanMemoryModelDeviceScope = 5346, 961 VulkanMemoryModelDeviceScopeKHR = 5346, 962 PhysicalStorageBufferAddresses = 5347, 963 PhysicalStorageBufferAddressesEXT = 5347, 964 ComputeDerivativeGroupLinearNV = 5350, 965 RayTracingProvisionalKHR = 5353, 966 CooperativeMatrixNV = 5357, 967 FragmentShaderSampleInterlockEXT = 5363, 968 FragmentShaderShadingRateInterlockEXT = 5372, 969 ShaderSMBuiltinsNV = 5373, 970 FragmentShaderPixelInterlockEXT = 5378, 971 DemoteToHelperInvocationEXT = 5379, 972 SubgroupShuffleINTEL = 5568, 973 SubgroupBufferBlockIOINTEL = 5569, 974 SubgroupImageBlockIOINTEL = 5570, 975 SubgroupImageMediaBlockIOINTEL = 5579, 976 IntegerFunctions2INTEL = 5584, 977 FunctionPointersINTEL = 5603, 978 IndirectReferencesINTEL = 5604, 979 SubgroupAvcMotionEstimationINTEL = 5696, 980 SubgroupAvcMotionEstimationIntraINTEL = 5697, 981 SubgroupAvcMotionEstimationChromaINTEL = 5698, 982 FPGAMemoryAttributesINTEL = 5824, 983 UnstructuredLoopControlsINTEL = 5886, 984 FPGALoopControlsINTEL = 5888, 985 KernelAttributesINTEL = 5892, 986 FPGAKernelAttributesINTEL = 5897, 987 BlockingPipesINTEL = 5945, 988 FPGARegINTEL = 5948, 989 AtomicFloat32AddEXT = 6033, 990 AtomicFloat64AddEXT = 6034, 991 } 992 993 enum RayFlagsShift : uint 994 { 995 OpaqueKHR = 0, 996 NoOpaqueKHR = 1, 997 TerminateOnFirstHitKHR = 2, 998 SkipClosestHitShaderKHR = 3, 999 CullBackFacingTrianglesKHR = 4, 1000 CullFrontFacingTrianglesKHR = 5, 1001 CullOpaqueKHR = 6, 1002 CullNoOpaqueKHR = 7, 1003 SkipTrianglesKHR = 8, 1004 SkipAABBsKHR = 9, 1005 } 1006 1007 enum RayFlagsMask : uint 1008 { 1009 MaskNone = 0, 1010 OpaqueKHR = 0x00000001, 1011 NoOpaqueKHR = 0x00000002, 1012 TerminateOnFirstHitKHR = 0x00000004, 1013 SkipClosestHitShaderKHR = 0x00000008, 1014 CullBackFacingTrianglesKHR = 0x00000010, 1015 CullFrontFacingTrianglesKHR = 0x00000020, 1016 CullOpaqueKHR = 0x00000040, 1017 CullNoOpaqueKHR = 0x00000080, 1018 SkipTrianglesKHR = 0x00000100, 1019 SkipAABBsKHR = 0x00000200, 1020 } 1021 1022 enum RayQueryIntersection : uint 1023 { 1024 RayQueryCandidateIntersectionKHR = 0, 1025 RayQueryCommittedIntersectionKHR = 1, 1026 } 1027 1028 enum RayQueryCommittedIntersectionType : uint 1029 { 1030 RayQueryCommittedIntersectionNoneKHR = 0, 1031 RayQueryCommittedIntersectionTriangleKHR = 1, 1032 RayQueryCommittedIntersectionGeneratedKHR = 2, 1033 } 1034 1035 enum RayQueryCandidateIntersectionType : uint 1036 { 1037 RayQueryCandidateIntersectionTriangleKHR = 0, 1038 RayQueryCandidateIntersectionAABBKHR = 1, 1039 } 1040 1041 enum FragmentShadingRateShift : uint 1042 { 1043 Vertical2Pixels = 0, 1044 Vertical4Pixels = 1, 1045 Horizontal2Pixels = 2, 1046 Horizontal4Pixels = 3, 1047 } 1048 1049 enum FragmentShadingRateMask : uint 1050 { 1051 MaskNone = 0, 1052 Vertical2Pixels = 0x00000001, 1053 Vertical4Pixels = 0x00000002, 1054 Horizontal2Pixels = 0x00000004, 1055 Horizontal4Pixels = 0x00000008, 1056 } 1057 1058 enum Op : uint 1059 { 1060 OpNop = 0, 1061 OpUndef = 1, 1062 OpSourceContinued = 2, 1063 OpSource = 3, 1064 OpSourceExtension = 4, 1065 OpName = 5, 1066 OpMemberName = 6, 1067 OpString = 7, 1068 OpLine = 8, 1069 OpExtension = 10, 1070 OpExtInstImport = 11, 1071 OpExtInst = 12, 1072 OpMemoryModel = 14, 1073 OpEntryPoint = 15, 1074 OpExecutionMode = 16, 1075 OpCapability = 17, 1076 OpTypeVoid = 19, 1077 OpTypeBool = 20, 1078 OpTypeInt = 21, 1079 OpTypeFloat = 22, 1080 OpTypeVector = 23, 1081 OpTypeMatrix = 24, 1082 OpTypeImage = 25, 1083 OpTypeSampler = 26, 1084 OpTypeSampledImage = 27, 1085 OpTypeArray = 28, 1086 OpTypeRuntimeArray = 29, 1087 OpTypeStruct = 30, 1088 OpTypeOpaque = 31, 1089 OpTypePointer = 32, 1090 OpTypeFunction = 33, 1091 OpTypeEvent = 34, 1092 OpTypeDeviceEvent = 35, 1093 OpTypeReserveId = 36, 1094 OpTypeQueue = 37, 1095 OpTypePipe = 38, 1096 OpTypeForwardPointer = 39, 1097 OpConstantTrue = 41, 1098 OpConstantFalse = 42, 1099 OpConstant = 43, 1100 OpConstantComposite = 44, 1101 OpConstantSampler = 45, 1102 OpConstantNull = 46, 1103 OpSpecConstantTrue = 48, 1104 OpSpecConstantFalse = 49, 1105 OpSpecConstant = 50, 1106 OpSpecConstantComposite = 51, 1107 OpSpecConstantOp = 52, 1108 OpFunction = 54, 1109 OpFunctionParameter = 55, 1110 OpFunctionEnd = 56, 1111 OpFunctionCall = 57, 1112 OpVariable = 59, 1113 OpImageTexelPointer = 60, 1114 OpLoad = 61, 1115 OpStore = 62, 1116 OpCopyMemory = 63, 1117 OpCopyMemorySized = 64, 1118 OpAccessChain = 65, 1119 OpInBoundsAccessChain = 66, 1120 OpPtrAccessChain = 67, 1121 OpArrayLength = 68, 1122 OpGenericPtrMemSemantics = 69, 1123 OpInBoundsPtrAccessChain = 70, 1124 OpDecorate = 71, 1125 OpMemberDecorate = 72, 1126 OpDecorationGroup = 73, 1127 OpGroupDecorate = 74, 1128 OpGroupMemberDecorate = 75, 1129 OpVectorExtractDynamic = 77, 1130 OpVectorInsertDynamic = 78, 1131 OpVectorShuffle = 79, 1132 OpCompositeConstruct = 80, 1133 OpCompositeExtract = 81, 1134 OpCompositeInsert = 82, 1135 OpCopyObject = 83, 1136 OpTranspose = 84, 1137 OpSampledImage = 86, 1138 OpImageSampleImplicitLod = 87, 1139 OpImageSampleExplicitLod = 88, 1140 OpImageSampleDrefImplicitLod = 89, 1141 OpImageSampleDrefExplicitLod = 90, 1142 OpImageSampleProjImplicitLod = 91, 1143 OpImageSampleProjExplicitLod = 92, 1144 OpImageSampleProjDrefImplicitLod = 93, 1145 OpImageSampleProjDrefExplicitLod = 94, 1146 OpImageFetch = 95, 1147 OpImageGather = 96, 1148 OpImageDrefGather = 97, 1149 OpImageRead = 98, 1150 OpImageWrite = 99, 1151 OpImage = 100, 1152 OpImageQueryFormat = 101, 1153 OpImageQueryOrder = 102, 1154 OpImageQuerySizeLod = 103, 1155 OpImageQuerySize = 104, 1156 OpImageQueryLod = 105, 1157 OpImageQueryLevels = 106, 1158 OpImageQuerySamples = 107, 1159 OpConvertFToU = 109, 1160 OpConvertFToS = 110, 1161 OpConvertSToF = 111, 1162 OpConvertUToF = 112, 1163 OpUConvert = 113, 1164 OpSConvert = 114, 1165 OpFConvert = 115, 1166 OpQuantizeToF16 = 116, 1167 OpConvertPtrToU = 117, 1168 OpSatConvertSToU = 118, 1169 OpSatConvertUToS = 119, 1170 OpConvertUToPtr = 120, 1171 OpPtrCastToGeneric = 121, 1172 OpGenericCastToPtr = 122, 1173 OpGenericCastToPtrExplicit = 123, 1174 OpBitcast = 124, 1175 OpSNegate = 126, 1176 OpFNegate = 127, 1177 OpIAdd = 128, 1178 OpFAdd = 129, 1179 OpISub = 130, 1180 OpFSub = 131, 1181 OpIMul = 132, 1182 OpFMul = 133, 1183 OpUDiv = 134, 1184 OpSDiv = 135, 1185 OpFDiv = 136, 1186 OpUMod = 137, 1187 OpSRem = 138, 1188 OpSMod = 139, 1189 OpFRem = 140, 1190 OpFMod = 141, 1191 OpVectorTimesScalar = 142, 1192 OpMatrixTimesScalar = 143, 1193 OpVectorTimesMatrix = 144, 1194 OpMatrixTimesVector = 145, 1195 OpMatrixTimesMatrix = 146, 1196 OpOuterProduct = 147, 1197 OpDot = 148, 1198 OpIAddCarry = 149, 1199 OpISubBorrow = 150, 1200 OpUMulExtended = 151, 1201 OpSMulExtended = 152, 1202 OpAny = 154, 1203 OpAll = 155, 1204 OpIsNan = 156, 1205 OpIsInf = 157, 1206 OpIsFinite = 158, 1207 OpIsNormal = 159, 1208 OpSignBitSet = 160, 1209 OpLessOrGreater = 161, 1210 OpOrdered = 162, 1211 OpUnordered = 163, 1212 OpLogicalEqual = 164, 1213 OpLogicalNotEqual = 165, 1214 OpLogicalOr = 166, 1215 OpLogicalAnd = 167, 1216 OpLogicalNot = 168, 1217 OpSelect = 169, 1218 OpIEqual = 170, 1219 OpINotEqual = 171, 1220 OpUGreaterThan = 172, 1221 OpSGreaterThan = 173, 1222 OpUGreaterThanEqual = 174, 1223 OpSGreaterThanEqual = 175, 1224 OpULessThan = 176, 1225 OpSLessThan = 177, 1226 OpULessThanEqual = 178, 1227 OpSLessThanEqual = 179, 1228 OpFOrdEqual = 180, 1229 OpFUnordEqual = 181, 1230 OpFOrdNotEqual = 182, 1231 OpFUnordNotEqual = 183, 1232 OpFOrdLessThan = 184, 1233 OpFUnordLessThan = 185, 1234 OpFOrdGreaterThan = 186, 1235 OpFUnordGreaterThan = 187, 1236 OpFOrdLessThanEqual = 188, 1237 OpFUnordLessThanEqual = 189, 1238 OpFOrdGreaterThanEqual = 190, 1239 OpFUnordGreaterThanEqual = 191, 1240 OpShiftRightLogical = 194, 1241 OpShiftRightArithmetic = 195, 1242 OpShiftLeftLogical = 196, 1243 OpBitwiseOr = 197, 1244 OpBitwiseXor = 198, 1245 OpBitwiseAnd = 199, 1246 OpNot = 200, 1247 OpBitFieldInsert = 201, 1248 OpBitFieldSExtract = 202, 1249 OpBitFieldUExtract = 203, 1250 OpBitReverse = 204, 1251 OpBitCount = 205, 1252 OpDPdx = 207, 1253 OpDPdy = 208, 1254 OpFwidth = 209, 1255 OpDPdxFine = 210, 1256 OpDPdyFine = 211, 1257 OpFwidthFine = 212, 1258 OpDPdxCoarse = 213, 1259 OpDPdyCoarse = 214, 1260 OpFwidthCoarse = 215, 1261 OpEmitVertex = 218, 1262 OpEndPrimitive = 219, 1263 OpEmitStreamVertex = 220, 1264 OpEndStreamPrimitive = 221, 1265 OpControlBarrier = 224, 1266 OpMemoryBarrier = 225, 1267 OpAtomicLoad = 227, 1268 OpAtomicStore = 228, 1269 OpAtomicExchange = 229, 1270 OpAtomicCompareExchange = 230, 1271 OpAtomicCompareExchangeWeak = 231, 1272 OpAtomicIIncrement = 232, 1273 OpAtomicIDecrement = 233, 1274 OpAtomicIAdd = 234, 1275 OpAtomicISub = 235, 1276 OpAtomicSMin = 236, 1277 OpAtomicUMin = 237, 1278 OpAtomicSMax = 238, 1279 OpAtomicUMax = 239, 1280 OpAtomicAnd = 240, 1281 OpAtomicOr = 241, 1282 OpAtomicXor = 242, 1283 OpPhi = 245, 1284 OpLoopMerge = 246, 1285 OpSelectionMerge = 247, 1286 OpLabel = 248, 1287 OpBranch = 249, 1288 OpBranchConditional = 250, 1289 OpSwitch = 251, 1290 OpKill = 252, 1291 OpReturn = 253, 1292 OpReturnValue = 254, 1293 OpUnreachable = 255, 1294 OpLifetimeStart = 256, 1295 OpLifetimeStop = 257, 1296 OpGroupAsyncCopy = 259, 1297 OpGroupWaitEvents = 260, 1298 OpGroupAll = 261, 1299 OpGroupAny = 262, 1300 OpGroupBroadcast = 263, 1301 OpGroupIAdd = 264, 1302 OpGroupFAdd = 265, 1303 OpGroupFMin = 266, 1304 OpGroupUMin = 267, 1305 OpGroupSMin = 268, 1306 OpGroupFMax = 269, 1307 OpGroupUMax = 270, 1308 OpGroupSMax = 271, 1309 OpReadPipe = 274, 1310 OpWritePipe = 275, 1311 OpReservedReadPipe = 276, 1312 OpReservedWritePipe = 277, 1313 OpReserveReadPipePackets = 278, 1314 OpReserveWritePipePackets = 279, 1315 OpCommitReadPipe = 280, 1316 OpCommitWritePipe = 281, 1317 OpIsValidReserveId = 282, 1318 OpGetNumPipePackets = 283, 1319 OpGetMaxPipePackets = 284, 1320 OpGroupReserveReadPipePackets = 285, 1321 OpGroupReserveWritePipePackets = 286, 1322 OpGroupCommitReadPipe = 287, 1323 OpGroupCommitWritePipe = 288, 1324 OpEnqueueMarker = 291, 1325 OpEnqueueKernel = 292, 1326 OpGetKernelNDrangeSubGroupCount = 293, 1327 OpGetKernelNDrangeMaxSubGroupSize = 294, 1328 OpGetKernelWorkGroupSize = 295, 1329 OpGetKernelPreferredWorkGroupSizeMultiple = 296, 1330 OpRetainEvent = 297, 1331 OpReleaseEvent = 298, 1332 OpCreateUserEvent = 299, 1333 OpIsValidEvent = 300, 1334 OpSetUserEventStatus = 301, 1335 OpCaptureEventProfilingInfo = 302, 1336 OpGetDefaultQueue = 303, 1337 OpBuildNDRange = 304, 1338 OpImageSparseSampleImplicitLod = 305, 1339 OpImageSparseSampleExplicitLod = 306, 1340 OpImageSparseSampleDrefImplicitLod = 307, 1341 OpImageSparseSampleDrefExplicitLod = 308, 1342 OpImageSparseSampleProjImplicitLod = 309, 1343 OpImageSparseSampleProjExplicitLod = 310, 1344 OpImageSparseSampleProjDrefImplicitLod = 311, 1345 OpImageSparseSampleProjDrefExplicitLod = 312, 1346 OpImageSparseFetch = 313, 1347 OpImageSparseGather = 314, 1348 OpImageSparseDrefGather = 315, 1349 OpImageSparseTexelsResident = 316, 1350 OpNoLine = 317, 1351 OpAtomicFlagTestAndSet = 318, 1352 OpAtomicFlagClear = 319, 1353 OpImageSparseRead = 320, 1354 OpSizeOf = 321, 1355 OpTypePipeStorage = 322, 1356 OpConstantPipeStorage = 323, 1357 OpCreatePipeFromPipeStorage = 324, 1358 OpGetKernelLocalSizeForSubgroupCount = 325, 1359 OpGetKernelMaxNumSubgroups = 326, 1360 OpTypeNamedBarrier = 327, 1361 OpNamedBarrierInitialize = 328, 1362 OpMemoryNamedBarrier = 329, 1363 OpModuleProcessed = 330, 1364 OpExecutionModeId = 331, 1365 OpDecorateId = 332, 1366 OpGroupNonUniformElect = 333, 1367 OpGroupNonUniformAll = 334, 1368 OpGroupNonUniformAny = 335, 1369 OpGroupNonUniformAllEqual = 336, 1370 OpGroupNonUniformBroadcast = 337, 1371 OpGroupNonUniformBroadcastFirst = 338, 1372 OpGroupNonUniformBallot = 339, 1373 OpGroupNonUniformInverseBallot = 340, 1374 OpGroupNonUniformBallotBitExtract = 341, 1375 OpGroupNonUniformBallotBitCount = 342, 1376 OpGroupNonUniformBallotFindLSB = 343, 1377 OpGroupNonUniformBallotFindMSB = 344, 1378 OpGroupNonUniformShuffle = 345, 1379 OpGroupNonUniformShuffleXor = 346, 1380 OpGroupNonUniformShuffleUp = 347, 1381 OpGroupNonUniformShuffleDown = 348, 1382 OpGroupNonUniformIAdd = 349, 1383 OpGroupNonUniformFAdd = 350, 1384 OpGroupNonUniformIMul = 351, 1385 OpGroupNonUniformFMul = 352, 1386 OpGroupNonUniformSMin = 353, 1387 OpGroupNonUniformUMin = 354, 1388 OpGroupNonUniformFMin = 355, 1389 OpGroupNonUniformSMax = 356, 1390 OpGroupNonUniformUMax = 357, 1391 OpGroupNonUniformFMax = 358, 1392 OpGroupNonUniformBitwiseAnd = 359, 1393 OpGroupNonUniformBitwiseOr = 360, 1394 OpGroupNonUniformBitwiseXor = 361, 1395 OpGroupNonUniformLogicalAnd = 362, 1396 OpGroupNonUniformLogicalOr = 363, 1397 OpGroupNonUniformLogicalXor = 364, 1398 OpGroupNonUniformQuadBroadcast = 365, 1399 OpGroupNonUniformQuadSwap = 366, 1400 OpCopyLogical = 400, 1401 OpPtrEqual = 401, 1402 OpPtrNotEqual = 402, 1403 OpPtrDiff = 403, 1404 OpTerminateInvocation = 4416, 1405 OpSubgroupBallotKHR = 4421, 1406 OpSubgroupFirstInvocationKHR = 4422, 1407 OpSubgroupAllKHR = 4428, 1408 OpSubgroupAnyKHR = 4429, 1409 OpSubgroupAllEqualKHR = 4430, 1410 OpSubgroupReadInvocationKHR = 4432, 1411 OpTraceRayKHR = 4445, 1412 OpExecuteCallableKHR = 4446, 1413 OpConvertUToAccelerationStructureKHR = 4447, 1414 OpIgnoreIntersectionKHR = 4448, 1415 OpTerminateRayKHR = 4449, 1416 OpTypeRayQueryKHR = 4472, 1417 OpRayQueryInitializeKHR = 4473, 1418 OpRayQueryTerminateKHR = 4474, 1419 OpRayQueryGenerateIntersectionKHR = 4475, 1420 OpRayQueryConfirmIntersectionKHR = 4476, 1421 OpRayQueryProceedKHR = 4477, 1422 OpRayQueryGetIntersectionTypeKHR = 4479, 1423 OpGroupIAddNonUniformAMD = 5000, 1424 OpGroupFAddNonUniformAMD = 5001, 1425 OpGroupFMinNonUniformAMD = 5002, 1426 OpGroupUMinNonUniformAMD = 5003, 1427 OpGroupSMinNonUniformAMD = 5004, 1428 OpGroupFMaxNonUniformAMD = 5005, 1429 OpGroupUMaxNonUniformAMD = 5006, 1430 OpGroupSMaxNonUniformAMD = 5007, 1431 OpFragmentMaskFetchAMD = 5011, 1432 OpFragmentFetchAMD = 5012, 1433 OpReadClockKHR = 5056, 1434 OpImageSampleFootprintNV = 5283, 1435 OpGroupNonUniformPartitionNV = 5296, 1436 OpWritePackedPrimitiveIndices4x8NV = 5299, 1437 OpReportIntersectionKHR = 5334, 1438 OpReportIntersectionNV = 5334, 1439 OpIgnoreIntersectionNV = 5335, 1440 OpTerminateRayNV = 5336, 1441 OpTraceNV = 5337, 1442 OpTypeAccelerationStructureKHR = 5341, 1443 OpTypeAccelerationStructureNV = 5341, 1444 OpExecuteCallableNV = 5344, 1445 OpTypeCooperativeMatrixNV = 5358, 1446 OpCooperativeMatrixLoadNV = 5359, 1447 OpCooperativeMatrixStoreNV = 5360, 1448 OpCooperativeMatrixMulAddNV = 5361, 1449 OpCooperativeMatrixLengthNV = 5362, 1450 OpBeginInvocationInterlockEXT = 5364, 1451 OpEndInvocationInterlockEXT = 5365, 1452 OpDemoteToHelperInvocationEXT = 5380, 1453 OpIsHelperInvocationEXT = 5381, 1454 OpSubgroupShuffleINTEL = 5571, 1455 OpSubgroupShuffleDownINTEL = 5572, 1456 OpSubgroupShuffleUpINTEL = 5573, 1457 OpSubgroupShuffleXorINTEL = 5574, 1458 OpSubgroupBlockReadINTEL = 5575, 1459 OpSubgroupBlockWriteINTEL = 5576, 1460 OpSubgroupImageBlockReadINTEL = 5577, 1461 OpSubgroupImageBlockWriteINTEL = 5578, 1462 OpSubgroupImageMediaBlockReadINTEL = 5580, 1463 OpSubgroupImageMediaBlockWriteINTEL = 5581, 1464 OpUCountLeadingZerosINTEL = 5585, 1465 OpUCountTrailingZerosINTEL = 5586, 1466 OpAbsISubINTEL = 5587, 1467 OpAbsUSubINTEL = 5588, 1468 OpIAddSatINTEL = 5589, 1469 OpUAddSatINTEL = 5590, 1470 OpIAverageINTEL = 5591, 1471 OpUAverageINTEL = 5592, 1472 OpIAverageRoundedINTEL = 5593, 1473 OpUAverageRoundedINTEL = 5594, 1474 OpISubSatINTEL = 5595, 1475 OpUSubSatINTEL = 5596, 1476 OpIMul32x16INTEL = 5597, 1477 OpUMul32x16INTEL = 5598, 1478 OpFunctionPointerINTEL = 5600, 1479 OpFunctionPointerCallINTEL = 5601, 1480 OpDecorateString = 5632, 1481 OpDecorateStringGOOGLE = 5632, 1482 OpMemberDecorateString = 5633, 1483 OpMemberDecorateStringGOOGLE = 5633, 1484 OpVmeImageINTEL = 5699, 1485 OpTypeVmeImageINTEL = 5700, 1486 OpTypeAvcImePayloadINTEL = 5701, 1487 OpTypeAvcRefPayloadINTEL = 5702, 1488 OpTypeAvcSicPayloadINTEL = 5703, 1489 OpTypeAvcMcePayloadINTEL = 5704, 1490 OpTypeAvcMceResultINTEL = 5705, 1491 OpTypeAvcImeResultINTEL = 5706, 1492 OpTypeAvcImeResultSingleReferenceStreamoutINTEL = 5707, 1493 OpTypeAvcImeResultDualReferenceStreamoutINTEL = 5708, 1494 OpTypeAvcImeSingleReferenceStreaminINTEL = 5709, 1495 OpTypeAvcImeDualReferenceStreaminINTEL = 5710, 1496 OpTypeAvcRefResultINTEL = 5711, 1497 OpTypeAvcSicResultINTEL = 5712, 1498 OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL = 5713, 1499 OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL = 5714, 1500 OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL = 5715, 1501 OpSubgroupAvcMceSetInterShapePenaltyINTEL = 5716, 1502 OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL = 5717, 1503 OpSubgroupAvcMceSetInterDirectionPenaltyINTEL = 5718, 1504 OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL = 5719, 1505 OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL = 5720, 1506 OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL = 5721, 1507 OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL = 5722, 1508 OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL = 5723, 1509 OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL = 5724, 1510 OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL = 5725, 1511 OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL = 5726, 1512 OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL = 5727, 1513 OpSubgroupAvcMceSetAcOnlyHaarINTEL = 5728, 1514 OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL = 5729, 1515 OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL = 5730, 1516 OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL = 5731, 1517 OpSubgroupAvcMceConvertToImePayloadINTEL = 5732, 1518 OpSubgroupAvcMceConvertToImeResultINTEL = 5733, 1519 OpSubgroupAvcMceConvertToRefPayloadINTEL = 5734, 1520 OpSubgroupAvcMceConvertToRefResultINTEL = 5735, 1521 OpSubgroupAvcMceConvertToSicPayloadINTEL = 5736, 1522 OpSubgroupAvcMceConvertToSicResultINTEL = 5737, 1523 OpSubgroupAvcMceGetMotionVectorsINTEL = 5738, 1524 OpSubgroupAvcMceGetInterDistortionsINTEL = 5739, 1525 OpSubgroupAvcMceGetBestInterDistortionsINTEL = 5740, 1526 OpSubgroupAvcMceGetInterMajorShapeINTEL = 5741, 1527 OpSubgroupAvcMceGetInterMinorShapeINTEL = 5742, 1528 OpSubgroupAvcMceGetInterDirectionsINTEL = 5743, 1529 OpSubgroupAvcMceGetInterMotionVectorCountINTEL = 5744, 1530 OpSubgroupAvcMceGetInterReferenceIdsINTEL = 5745, 1531 OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL = 5746, 1532 OpSubgroupAvcImeInitializeINTEL = 5747, 1533 OpSubgroupAvcImeSetSingleReferenceINTEL = 5748, 1534 OpSubgroupAvcImeSetDualReferenceINTEL = 5749, 1535 OpSubgroupAvcImeRefWindowSizeINTEL = 5750, 1536 OpSubgroupAvcImeAdjustRefOffsetINTEL = 5751, 1537 OpSubgroupAvcImeConvertToMcePayloadINTEL = 5752, 1538 OpSubgroupAvcImeSetMaxMotionVectorCountINTEL = 5753, 1539 OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL = 5754, 1540 OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL = 5755, 1541 OpSubgroupAvcImeSetWeightedSadINTEL = 5756, 1542 OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL = 5757, 1543 OpSubgroupAvcImeEvaluateWithDualReferenceINTEL = 5758, 1544 OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL = 5759, 1545 OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL = 5760, 1546 OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL = 5761, 1547 OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL = 5762, 1548 OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL = 5763, 1549 OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL = 5764, 1550 OpSubgroupAvcImeConvertToMceResultINTEL = 5765, 1551 OpSubgroupAvcImeGetSingleReferenceStreaminINTEL = 5766, 1552 OpSubgroupAvcImeGetDualReferenceStreaminINTEL = 5767, 1553 OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL = 5768, 1554 OpSubgroupAvcImeStripDualReferenceStreamoutINTEL = 5769, 1555 OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL = 5770, 1556 OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL = 5771, 1557 OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL = 5772, 1558 OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL = 5773, 1559 OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL = 5774, 1560 OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL = 5775, 1561 OpSubgroupAvcImeGetBorderReachedINTEL = 5776, 1562 OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL = 5777, 1563 OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL = 5778, 1564 OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL = 5779, 1565 OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL = 5780, 1566 OpSubgroupAvcFmeInitializeINTEL = 5781, 1567 OpSubgroupAvcBmeInitializeINTEL = 5782, 1568 OpSubgroupAvcRefConvertToMcePayloadINTEL = 5783, 1569 OpSubgroupAvcRefSetBidirectionalMixDisableINTEL = 5784, 1570 OpSubgroupAvcRefSetBilinearFilterEnableINTEL = 5785, 1571 OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL = 5786, 1572 OpSubgroupAvcRefEvaluateWithDualReferenceINTEL = 5787, 1573 OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL = 5788, 1574 OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL = 5789, 1575 OpSubgroupAvcRefConvertToMceResultINTEL = 5790, 1576 OpSubgroupAvcSicInitializeINTEL = 5791, 1577 OpSubgroupAvcSicConfigureSkcINTEL = 5792, 1578 OpSubgroupAvcSicConfigureIpeLumaINTEL = 5793, 1579 OpSubgroupAvcSicConfigureIpeLumaChromaINTEL = 5794, 1580 OpSubgroupAvcSicGetMotionVectorMaskINTEL = 5795, 1581 OpSubgroupAvcSicConvertToMcePayloadINTEL = 5796, 1582 OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL = 5797, 1583 OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL = 5798, 1584 OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL = 5799, 1585 OpSubgroupAvcSicSetBilinearFilterEnableINTEL = 5800, 1586 OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL = 5801, 1587 OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL = 5802, 1588 OpSubgroupAvcSicEvaluateIpeINTEL = 5803, 1589 OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL = 5804, 1590 OpSubgroupAvcSicEvaluateWithDualReferenceINTEL = 5805, 1591 OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL = 5806, 1592 OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL = 5807, 1593 OpSubgroupAvcSicConvertToMceResultINTEL = 5808, 1594 OpSubgroupAvcSicGetIpeLumaShapeINTEL = 5809, 1595 OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL = 5810, 1596 OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL = 5811, 1597 OpSubgroupAvcSicGetPackedIpeLumaModesINTEL = 5812, 1598 OpSubgroupAvcSicGetIpeChromaModeINTEL = 5813, 1599 OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL = 5814, 1600 OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL = 5815, 1601 OpSubgroupAvcSicGetInterRawSadsINTEL = 5816, 1602 OpLoopControlINTEL = 5887, 1603 OpReadPipeBlockingINTEL = 5946, 1604 OpWritePipeBlockingINTEL = 5947, 1605 OpFPGARegINTEL = 5949, 1606 OpRayQueryGetRayTMinKHR = 6016, 1607 OpRayQueryGetRayFlagsKHR = 6017, 1608 OpRayQueryGetIntersectionTKHR = 6018, 1609 OpRayQueryGetIntersectionInstanceCustomIndexKHR = 6019, 1610 OpRayQueryGetIntersectionInstanceIdKHR = 6020, 1611 OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR = 6021, 1612 OpRayQueryGetIntersectionGeometryIndexKHR = 6022, 1613 OpRayQueryGetIntersectionPrimitiveIndexKHR = 6023, 1614 OpRayQueryGetIntersectionBarycentricsKHR = 6024, 1615 OpRayQueryGetIntersectionFrontFaceKHR = 6025, 1616 OpRayQueryGetIntersectionCandidateAABBOpaqueKHR = 6026, 1617 OpRayQueryGetIntersectionObjectRayDirectionKHR = 6027, 1618 OpRayQueryGetIntersectionObjectRayOriginKHR = 6028, 1619 OpRayQueryGetWorldRayDirectionKHR = 6029, 1620 OpRayQueryGetWorldRayOriginKHR = 6030, 1621 OpRayQueryGetIntersectionObjectToWorldKHR = 6031, 1622 OpRayQueryGetIntersectionWorldToObjectKHR = 6032, 1623 OpAtomicFAddEXT = 6035, 1624 } 1625 1626 1627