1-- Copyright (c) 2014-2024 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#, D, Beef
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,
37--     e.g.: Spv.Specification.SourceLanguage.GLSL
38-- - D will have tokens under the "spv" module, e.g: spv.SourceLanguage.GLSL
39-- - Beef will use enum classes in the Specification class located in the "Spv" namespace,
40--     e.g.: Spv.Specification.SourceLanguage.GLSL
41--
42-- Some tokens act like mask values, which can be OR'd together,
43-- while others are mutually exclusive.  The mask-like ones have
44-- "Mask" in their name, and a parallel enum that has the shift
45-- amount (1 << x) for each corresponding enumerant.
46
47spv = {
48    MagicNumber = 0x07230203,
49    Version = 0x00010600,
50    Revision = 1,
51    OpCodeMask = 0xffff,
52    WordCountShift = 16,
53
54    SourceLanguage = {
55        Unknown = 0,
56        ESSL = 1,
57        GLSL = 2,
58        OpenCL_C = 3,
59        OpenCL_CPP = 4,
60        HLSL = 5,
61        CPP_for_OpenCL = 6,
62        SYCL = 7,
63        HERO_C = 8,
64        NZSL = 9,
65        WGSL = 10,
66        Slang = 11,
67        Zig = 12,
68    },
69
70    ExecutionModel = {
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        TaskEXT = 5364,
93        MeshEXT = 5365,
94    },
95
96    AddressingModel = {
97        Logical = 0,
98        Physical32 = 1,
99        Physical64 = 2,
100        PhysicalStorageBuffer64 = 5348,
101        PhysicalStorageBuffer64EXT = 5348,
102    },
103
104    MemoryModel = {
105        Simple = 0,
106        GLSL450 = 1,
107        OpenCL = 2,
108        Vulkan = 3,
109        VulkanKHR = 3,
110    },
111
112    ExecutionMode = {
113        Invocations = 0,
114        SpacingEqual = 1,
115        SpacingFractionalEven = 2,
116        SpacingFractionalOdd = 3,
117        VertexOrderCw = 4,
118        VertexOrderCcw = 5,
119        PixelCenterInteger = 6,
120        OriginUpperLeft = 7,
121        OriginLowerLeft = 8,
122        EarlyFragmentTests = 9,
123        PointMode = 10,
124        Xfb = 11,
125        DepthReplacing = 12,
126        DepthGreater = 14,
127        DepthLess = 15,
128        DepthUnchanged = 16,
129        LocalSize = 17,
130        LocalSizeHint = 18,
131        InputPoints = 19,
132        InputLines = 20,
133        InputLinesAdjacency = 21,
134        Triangles = 22,
135        InputTrianglesAdjacency = 23,
136        Quads = 24,
137        Isolines = 25,
138        OutputVertices = 26,
139        OutputPoints = 27,
140        OutputLineStrip = 28,
141        OutputTriangleStrip = 29,
142        VecTypeHint = 30,
143        ContractionOff = 31,
144        Initializer = 33,
145        Finalizer = 34,
146        SubgroupSize = 35,
147        SubgroupsPerWorkgroup = 36,
148        SubgroupsPerWorkgroupId = 37,
149        LocalSizeId = 38,
150        LocalSizeHintId = 39,
151        NonCoherentColorAttachmentReadEXT = 4169,
152        NonCoherentDepthAttachmentReadEXT = 4170,
153        NonCoherentStencilAttachmentReadEXT = 4171,
154        SubgroupUniformControlFlowKHR = 4421,
155        PostDepthCoverage = 4446,
156        DenormPreserve = 4459,
157        DenormFlushToZero = 4460,
158        SignedZeroInfNanPreserve = 4461,
159        RoundingModeRTE = 4462,
160        RoundingModeRTZ = 4463,
161        EarlyAndLateFragmentTestsAMD = 5017,
162        StencilRefReplacingEXT = 5027,
163        CoalescingAMDX = 5069,
164        MaxNodeRecursionAMDX = 5071,
165        StaticNumWorkgroupsAMDX = 5072,
166        ShaderIndexAMDX = 5073,
167        MaxNumWorkgroupsAMDX = 5077,
168        StencilRefUnchangedFrontAMD = 5079,
169        StencilRefGreaterFrontAMD = 5080,
170        StencilRefLessFrontAMD = 5081,
171        StencilRefUnchangedBackAMD = 5082,
172        StencilRefGreaterBackAMD = 5083,
173        StencilRefLessBackAMD = 5084,
174        QuadDerivativesKHR = 5088,
175        RequireFullQuadsKHR = 5089,
176        OutputLinesEXT = 5269,
177        OutputLinesNV = 5269,
178        OutputPrimitivesEXT = 5270,
179        OutputPrimitivesNV = 5270,
180        DerivativeGroupQuadsNV = 5289,
181        DerivativeGroupLinearNV = 5290,
182        OutputTrianglesEXT = 5298,
183        OutputTrianglesNV = 5298,
184        PixelInterlockOrderedEXT = 5366,
185        PixelInterlockUnorderedEXT = 5367,
186        SampleInterlockOrderedEXT = 5368,
187        SampleInterlockUnorderedEXT = 5369,
188        ShadingRateInterlockOrderedEXT = 5370,
189        ShadingRateInterlockUnorderedEXT = 5371,
190        SharedLocalMemorySizeINTEL = 5618,
191        RoundingModeRTPINTEL = 5620,
192        RoundingModeRTNINTEL = 5621,
193        FloatingPointModeALTINTEL = 5622,
194        FloatingPointModeIEEEINTEL = 5623,
195        MaxWorkgroupSizeINTEL = 5893,
196        MaxWorkDimINTEL = 5894,
197        NoGlobalOffsetINTEL = 5895,
198        NumSIMDWorkitemsINTEL = 5896,
199        SchedulerTargetFmaxMhzINTEL = 5903,
200        MaximallyReconvergesKHR = 6023,
201        FPFastMathDefault = 6028,
202        StreamingInterfaceINTEL = 6154,
203        RegisterMapInterfaceINTEL = 6160,
204        NamedBarrierCountINTEL = 6417,
205    },
206
207    StorageClass = {
208        UniformConstant = 0,
209        Input = 1,
210        Uniform = 2,
211        Output = 3,
212        Workgroup = 4,
213        CrossWorkgroup = 5,
214        Private = 6,
215        Function = 7,
216        Generic = 8,
217        PushConstant = 9,
218        AtomicCounter = 10,
219        Image = 11,
220        StorageBuffer = 12,
221        TileImageEXT = 4172,
222        NodePayloadAMDX = 5068,
223        NodeOutputPayloadAMDX = 5076,
224        CallableDataKHR = 5328,
225        CallableDataNV = 5328,
226        IncomingCallableDataKHR = 5329,
227        IncomingCallableDataNV = 5329,
228        RayPayloadKHR = 5338,
229        RayPayloadNV = 5338,
230        HitAttributeKHR = 5339,
231        HitAttributeNV = 5339,
232        IncomingRayPayloadKHR = 5342,
233        IncomingRayPayloadNV = 5342,
234        ShaderRecordBufferKHR = 5343,
235        ShaderRecordBufferNV = 5343,
236        PhysicalStorageBuffer = 5349,
237        PhysicalStorageBufferEXT = 5349,
238        HitObjectAttributeNV = 5385,
239        TaskPayloadWorkgroupEXT = 5402,
240        CodeSectionINTEL = 5605,
241        DeviceOnlyINTEL = 5936,
242        HostOnlyINTEL = 5937,
243    },
244
245    Dim = {
246        Dim1D = 0,
247        Dim2D = 1,
248        Dim3D = 2,
249        Cube = 3,
250        Rect = 4,
251        Buffer = 5,
252        SubpassData = 6,
253        TileImageDataEXT = 4173,
254    },
255
256    SamplerAddressingMode = {
257        None = 0,
258        ClampToEdge = 1,
259        Clamp = 2,
260        Repeat = 3,
261        RepeatMirrored = 4,
262    },
263
264    SamplerFilterMode = {
265        Nearest = 0,
266        Linear = 1,
267    },
268
269    ImageFormat = {
270        Unknown = 0,
271        Rgba32f = 1,
272        Rgba16f = 2,
273        R32f = 3,
274        Rgba8 = 4,
275        Rgba8Snorm = 5,
276        Rg32f = 6,
277        Rg16f = 7,
278        R11fG11fB10f = 8,
279        R16f = 9,
280        Rgba16 = 10,
281        Rgb10A2 = 11,
282        Rg16 = 12,
283        Rg8 = 13,
284        R16 = 14,
285        R8 = 15,
286        Rgba16Snorm = 16,
287        Rg16Snorm = 17,
288        Rg8Snorm = 18,
289        R16Snorm = 19,
290        R8Snorm = 20,
291        Rgba32i = 21,
292        Rgba16i = 22,
293        Rgba8i = 23,
294        R32i = 24,
295        Rg32i = 25,
296        Rg16i = 26,
297        Rg8i = 27,
298        R16i = 28,
299        R8i = 29,
300        Rgba32ui = 30,
301        Rgba16ui = 31,
302        Rgba8ui = 32,
303        R32ui = 33,
304        Rgb10a2ui = 34,
305        Rg32ui = 35,
306        Rg16ui = 36,
307        Rg8ui = 37,
308        R16ui = 38,
309        R8ui = 39,
310        R64ui = 40,
311        R64i = 41,
312    },
313
314    ImageChannelOrder = {
315        R = 0,
316        A = 1,
317        RG = 2,
318        RA = 3,
319        RGB = 4,
320        RGBA = 5,
321        BGRA = 6,
322        ARGB = 7,
323        Intensity = 8,
324        Luminance = 9,
325        Rx = 10,
326        RGx = 11,
327        RGBx = 12,
328        Depth = 13,
329        DepthStencil = 14,
330        sRGB = 15,
331        sRGBx = 16,
332        sRGBA = 17,
333        sBGRA = 18,
334        ABGR = 19,
335    },
336
337    ImageChannelDataType = {
338        SnormInt8 = 0,
339        SnormInt16 = 1,
340        UnormInt8 = 2,
341        UnormInt16 = 3,
342        UnormShort565 = 4,
343        UnormShort555 = 5,
344        UnormInt101010 = 6,
345        SignedInt8 = 7,
346        SignedInt16 = 8,
347        SignedInt32 = 9,
348        UnsignedInt8 = 10,
349        UnsignedInt16 = 11,
350        UnsignedInt32 = 12,
351        HalfFloat = 13,
352        Float = 14,
353        UnormInt24 = 15,
354        UnormInt101010_2 = 16,
355        UnsignedIntRaw10EXT = 19,
356        UnsignedIntRaw12EXT = 20,
357    },
358
359    ImageOperandsShift = {
360        Bias = 0,
361        Lod = 1,
362        Grad = 2,
363        ConstOffset = 3,
364        Offset = 4,
365        ConstOffsets = 5,
366        Sample = 6,
367        MinLod = 7,
368        MakeTexelAvailable = 8,
369        MakeTexelAvailableKHR = 8,
370        MakeTexelVisible = 9,
371        MakeTexelVisibleKHR = 9,
372        NonPrivateTexel = 10,
373        NonPrivateTexelKHR = 10,
374        VolatileTexel = 11,
375        VolatileTexelKHR = 11,
376        SignExtend = 12,
377        ZeroExtend = 13,
378        Nontemporal = 14,
379        Offsets = 16,
380    },
381
382    ImageOperandsMask = {
383        MaskNone = 0,
384        Bias = 0x00000001,
385        Lod = 0x00000002,
386        Grad = 0x00000004,
387        ConstOffset = 0x00000008,
388        Offset = 0x00000010,
389        ConstOffsets = 0x00000020,
390        Sample = 0x00000040,
391        MinLod = 0x00000080,
392        MakeTexelAvailable = 0x00000100,
393        MakeTexelAvailableKHR = 0x00000100,
394        MakeTexelVisible = 0x00000200,
395        MakeTexelVisibleKHR = 0x00000200,
396        NonPrivateTexel = 0x00000400,
397        NonPrivateTexelKHR = 0x00000400,
398        VolatileTexel = 0x00000800,
399        VolatileTexelKHR = 0x00000800,
400        SignExtend = 0x00001000,
401        ZeroExtend = 0x00002000,
402        Nontemporal = 0x00004000,
403        Offsets = 0x00010000,
404    },
405
406    FPFastMathModeShift = {
407        NotNaN = 0,
408        NotInf = 1,
409        NSZ = 2,
410        AllowRecip = 3,
411        Fast = 4,
412        AllowContract = 16,
413        AllowContractFastINTEL = 16,
414        AllowReassoc = 17,
415        AllowReassocINTEL = 17,
416        AllowTransform = 18,
417    },
418
419    FPFastMathModeMask = {
420        MaskNone = 0,
421        NotNaN = 0x00000001,
422        NotInf = 0x00000002,
423        NSZ = 0x00000004,
424        AllowRecip = 0x00000008,
425        Fast = 0x00000010,
426        AllowContract = 0x00010000,
427        AllowContractFastINTEL = 0x00010000,
428        AllowReassoc = 0x00020000,
429        AllowReassocINTEL = 0x00020000,
430        AllowTransform = 0x00040000,
431    },
432
433    FPRoundingMode = {
434        RTE = 0,
435        RTZ = 1,
436        RTP = 2,
437        RTN = 3,
438    },
439
440    LinkageType = {
441        Export = 0,
442        Import = 1,
443        LinkOnceODR = 2,
444    },
445
446    AccessQualifier = {
447        ReadOnly = 0,
448        WriteOnly = 1,
449        ReadWrite = 2,
450    },
451
452    FunctionParameterAttribute = {
453        Zext = 0,
454        Sext = 1,
455        ByVal = 2,
456        Sret = 3,
457        NoAlias = 4,
458        NoCapture = 5,
459        NoWrite = 6,
460        NoReadWrite = 7,
461        RuntimeAlignedINTEL = 5940,
462    },
463
464    Decoration = {
465        RelaxedPrecision = 0,
466        SpecId = 1,
467        Block = 2,
468        BufferBlock = 3,
469        RowMajor = 4,
470        ColMajor = 5,
471        ArrayStride = 6,
472        MatrixStride = 7,
473        GLSLShared = 8,
474        GLSLPacked = 9,
475        CPacked = 10,
476        BuiltIn = 11,
477        NoPerspective = 13,
478        Flat = 14,
479        Patch = 15,
480        Centroid = 16,
481        Sample = 17,
482        Invariant = 18,
483        Restrict = 19,
484        Aliased = 20,
485        Volatile = 21,
486        Constant = 22,
487        Coherent = 23,
488        NonWritable = 24,
489        NonReadable = 25,
490        Uniform = 26,
491        UniformId = 27,
492        SaturatedConversion = 28,
493        Stream = 29,
494        Location = 30,
495        Component = 31,
496        Index = 32,
497        Binding = 33,
498        DescriptorSet = 34,
499        Offset = 35,
500        XfbBuffer = 36,
501        XfbStride = 37,
502        FuncParamAttr = 38,
503        FPRoundingMode = 39,
504        FPFastMathMode = 40,
505        LinkageAttributes = 41,
506        NoContraction = 42,
507        InputAttachmentIndex = 43,
508        Alignment = 44,
509        MaxByteOffset = 45,
510        AlignmentId = 46,
511        MaxByteOffsetId = 47,
512        NoSignedWrap = 4469,
513        NoUnsignedWrap = 4470,
514        WeightTextureQCOM = 4487,
515        BlockMatchTextureQCOM = 4488,
516        ExplicitInterpAMD = 4999,
517        NodeSharesPayloadLimitsWithAMDX = 5019,
518        NodeMaxPayloadsAMDX = 5020,
519        TrackFinishWritingAMDX = 5078,
520        PayloadNodeNameAMDX = 5091,
521        OverrideCoverageNV = 5248,
522        PassthroughNV = 5250,
523        ViewportRelativeNV = 5252,
524        SecondaryViewportRelativeNV = 5256,
525        PerPrimitiveEXT = 5271,
526        PerPrimitiveNV = 5271,
527        PerViewNV = 5272,
528        PerTaskNV = 5273,
529        PerVertexKHR = 5285,
530        PerVertexNV = 5285,
531        NonUniform = 5300,
532        NonUniformEXT = 5300,
533        RestrictPointer = 5355,
534        RestrictPointerEXT = 5355,
535        AliasedPointer = 5356,
536        AliasedPointerEXT = 5356,
537        HitObjectShaderRecordBufferNV = 5386,
538        BindlessSamplerNV = 5398,
539        BindlessImageNV = 5399,
540        BoundSamplerNV = 5400,
541        BoundImageNV = 5401,
542        SIMTCallINTEL = 5599,
543        ReferencedIndirectlyINTEL = 5602,
544        ClobberINTEL = 5607,
545        SideEffectsINTEL = 5608,
546        VectorComputeVariableINTEL = 5624,
547        FuncParamIOKindINTEL = 5625,
548        VectorComputeFunctionINTEL = 5626,
549        StackCallINTEL = 5627,
550        GlobalVariableOffsetINTEL = 5628,
551        CounterBuffer = 5634,
552        HlslCounterBufferGOOGLE = 5634,
553        HlslSemanticGOOGLE = 5635,
554        UserSemantic = 5635,
555        UserTypeGOOGLE = 5636,
556        FunctionRoundingModeINTEL = 5822,
557        FunctionDenormModeINTEL = 5823,
558        RegisterINTEL = 5825,
559        MemoryINTEL = 5826,
560        NumbanksINTEL = 5827,
561        BankwidthINTEL = 5828,
562        MaxPrivateCopiesINTEL = 5829,
563        SinglepumpINTEL = 5830,
564        DoublepumpINTEL = 5831,
565        MaxReplicatesINTEL = 5832,
566        SimpleDualPortINTEL = 5833,
567        MergeINTEL = 5834,
568        BankBitsINTEL = 5835,
569        ForcePow2DepthINTEL = 5836,
570        StridesizeINTEL = 5883,
571        WordsizeINTEL = 5884,
572        TrueDualPortINTEL = 5885,
573        BurstCoalesceINTEL = 5899,
574        CacheSizeINTEL = 5900,
575        DontStaticallyCoalesceINTEL = 5901,
576        PrefetchINTEL = 5902,
577        StallEnableINTEL = 5905,
578        FuseLoopsInFunctionINTEL = 5907,
579        MathOpDSPModeINTEL = 5909,
580        AliasScopeINTEL = 5914,
581        NoAliasINTEL = 5915,
582        InitiationIntervalINTEL = 5917,
583        MaxConcurrencyINTEL = 5918,
584        PipelineEnableINTEL = 5919,
585        BufferLocationINTEL = 5921,
586        IOPipeStorageINTEL = 5944,
587        FunctionFloatingPointModeINTEL = 6080,
588        SingleElementVectorINTEL = 6085,
589        VectorComputeCallableFunctionINTEL = 6087,
590        MediaBlockIOINTEL = 6140,
591        StallFreeINTEL = 6151,
592        FPMaxErrorDecorationINTEL = 6170,
593        LatencyControlLabelINTEL = 6172,
594        LatencyControlConstraintINTEL = 6173,
595        ConduitKernelArgumentINTEL = 6175,
596        RegisterMapKernelArgumentINTEL = 6176,
597        MMHostInterfaceAddressWidthINTEL = 6177,
598        MMHostInterfaceDataWidthINTEL = 6178,
599        MMHostInterfaceLatencyINTEL = 6179,
600        MMHostInterfaceReadWriteModeINTEL = 6180,
601        MMHostInterfaceMaxBurstINTEL = 6181,
602        MMHostInterfaceWaitRequestINTEL = 6182,
603        StableKernelArgumentINTEL = 6183,
604        HostAccessINTEL = 6188,
605        InitModeINTEL = 6190,
606        ImplementInRegisterMapINTEL = 6191,
607        CacheControlLoadINTEL = 6442,
608        CacheControlStoreINTEL = 6443,
609    },
610
611    BuiltIn = {
612        Position = 0,
613        PointSize = 1,
614        ClipDistance = 3,
615        CullDistance = 4,
616        VertexId = 5,
617        InstanceId = 6,
618        PrimitiveId = 7,
619        InvocationId = 8,
620        Layer = 9,
621        ViewportIndex = 10,
622        TessLevelOuter = 11,
623        TessLevelInner = 12,
624        TessCoord = 13,
625        PatchVertices = 14,
626        FragCoord = 15,
627        PointCoord = 16,
628        FrontFacing = 17,
629        SampleId = 18,
630        SamplePosition = 19,
631        SampleMask = 20,
632        FragDepth = 22,
633        HelperInvocation = 23,
634        NumWorkgroups = 24,
635        WorkgroupSize = 25,
636        WorkgroupId = 26,
637        LocalInvocationId = 27,
638        GlobalInvocationId = 28,
639        LocalInvocationIndex = 29,
640        WorkDim = 30,
641        GlobalSize = 31,
642        EnqueuedWorkgroupSize = 32,
643        GlobalOffset = 33,
644        GlobalLinearId = 34,
645        SubgroupSize = 36,
646        SubgroupMaxSize = 37,
647        NumSubgroups = 38,
648        NumEnqueuedSubgroups = 39,
649        SubgroupId = 40,
650        SubgroupLocalInvocationId = 41,
651        VertexIndex = 42,
652        InstanceIndex = 43,
653        CoreIDARM = 4160,
654        CoreCountARM = 4161,
655        CoreMaxIDARM = 4162,
656        WarpIDARM = 4163,
657        WarpMaxIDARM = 4164,
658        SubgroupEqMask = 4416,
659        SubgroupEqMaskKHR = 4416,
660        SubgroupGeMask = 4417,
661        SubgroupGeMaskKHR = 4417,
662        SubgroupGtMask = 4418,
663        SubgroupGtMaskKHR = 4418,
664        SubgroupLeMask = 4419,
665        SubgroupLeMaskKHR = 4419,
666        SubgroupLtMask = 4420,
667        SubgroupLtMaskKHR = 4420,
668        BaseVertex = 4424,
669        BaseInstance = 4425,
670        DrawIndex = 4426,
671        PrimitiveShadingRateKHR = 4432,
672        DeviceIndex = 4438,
673        ViewIndex = 4440,
674        ShadingRateKHR = 4444,
675        BaryCoordNoPerspAMD = 4992,
676        BaryCoordNoPerspCentroidAMD = 4993,
677        BaryCoordNoPerspSampleAMD = 4994,
678        BaryCoordSmoothAMD = 4995,
679        BaryCoordSmoothCentroidAMD = 4996,
680        BaryCoordSmoothSampleAMD = 4997,
681        BaryCoordPullModelAMD = 4998,
682        FragStencilRefEXT = 5014,
683        CoalescedInputCountAMDX = 5021,
684        ShaderIndexAMDX = 5073,
685        ViewportMaskNV = 5253,
686        SecondaryPositionNV = 5257,
687        SecondaryViewportMaskNV = 5258,
688        PositionPerViewNV = 5261,
689        ViewportMaskPerViewNV = 5262,
690        FullyCoveredEXT = 5264,
691        TaskCountNV = 5274,
692        PrimitiveCountNV = 5275,
693        PrimitiveIndicesNV = 5276,
694        ClipDistancePerViewNV = 5277,
695        CullDistancePerViewNV = 5278,
696        LayerPerViewNV = 5279,
697        MeshViewCountNV = 5280,
698        MeshViewIndicesNV = 5281,
699        BaryCoordKHR = 5286,
700        BaryCoordNV = 5286,
701        BaryCoordNoPerspKHR = 5287,
702        BaryCoordNoPerspNV = 5287,
703        FragSizeEXT = 5292,
704        FragmentSizeNV = 5292,
705        FragInvocationCountEXT = 5293,
706        InvocationsPerPixelNV = 5293,
707        PrimitivePointIndicesEXT = 5294,
708        PrimitiveLineIndicesEXT = 5295,
709        PrimitiveTriangleIndicesEXT = 5296,
710        CullPrimitiveEXT = 5299,
711        LaunchIdKHR = 5319,
712        LaunchIdNV = 5319,
713        LaunchSizeKHR = 5320,
714        LaunchSizeNV = 5320,
715        WorldRayOriginKHR = 5321,
716        WorldRayOriginNV = 5321,
717        WorldRayDirectionKHR = 5322,
718        WorldRayDirectionNV = 5322,
719        ObjectRayOriginKHR = 5323,
720        ObjectRayOriginNV = 5323,
721        ObjectRayDirectionKHR = 5324,
722        ObjectRayDirectionNV = 5324,
723        RayTminKHR = 5325,
724        RayTminNV = 5325,
725        RayTmaxKHR = 5326,
726        RayTmaxNV = 5326,
727        InstanceCustomIndexKHR = 5327,
728        InstanceCustomIndexNV = 5327,
729        ObjectToWorldKHR = 5330,
730        ObjectToWorldNV = 5330,
731        WorldToObjectKHR = 5331,
732        WorldToObjectNV = 5331,
733        HitTNV = 5332,
734        HitKindKHR = 5333,
735        HitKindNV = 5333,
736        CurrentRayTimeNV = 5334,
737        HitTriangleVertexPositionsKHR = 5335,
738        HitMicroTriangleVertexPositionsNV = 5337,
739        HitMicroTriangleVertexBarycentricsNV = 5344,
740        IncomingRayFlagsKHR = 5351,
741        IncomingRayFlagsNV = 5351,
742        RayGeometryIndexKHR = 5352,
743        WarpsPerSMNV = 5374,
744        SMCountNV = 5375,
745        WarpIDNV = 5376,
746        SMIDNV = 5377,
747        HitKindFrontFacingMicroTriangleNV = 5405,
748        HitKindBackFacingMicroTriangleNV = 5406,
749        CullMaskKHR = 6021,
750    },
751
752    SelectionControlShift = {
753        Flatten = 0,
754        DontFlatten = 1,
755    },
756
757    SelectionControlMask = {
758        MaskNone = 0,
759        Flatten = 0x00000001,
760        DontFlatten = 0x00000002,
761    },
762
763    LoopControlShift = {
764        Unroll = 0,
765        DontUnroll = 1,
766        DependencyInfinite = 2,
767        DependencyLength = 3,
768        MinIterations = 4,
769        MaxIterations = 5,
770        IterationMultiple = 6,
771        PeelCount = 7,
772        PartialCount = 8,
773        InitiationIntervalINTEL = 16,
774        MaxConcurrencyINTEL = 17,
775        DependencyArrayINTEL = 18,
776        PipelineEnableINTEL = 19,
777        LoopCoalesceINTEL = 20,
778        MaxInterleavingINTEL = 21,
779        SpeculatedIterationsINTEL = 22,
780        NoFusionINTEL = 23,
781        LoopCountINTEL = 24,
782        MaxReinvocationDelayINTEL = 25,
783    },
784
785    LoopControlMask = {
786        MaskNone = 0,
787        Unroll = 0x00000001,
788        DontUnroll = 0x00000002,
789        DependencyInfinite = 0x00000004,
790        DependencyLength = 0x00000008,
791        MinIterations = 0x00000010,
792        MaxIterations = 0x00000020,
793        IterationMultiple = 0x00000040,
794        PeelCount = 0x00000080,
795        PartialCount = 0x00000100,
796        InitiationIntervalINTEL = 0x00010000,
797        MaxConcurrencyINTEL = 0x00020000,
798        DependencyArrayINTEL = 0x00040000,
799        PipelineEnableINTEL = 0x00080000,
800        LoopCoalesceINTEL = 0x00100000,
801        MaxInterleavingINTEL = 0x00200000,
802        SpeculatedIterationsINTEL = 0x00400000,
803        NoFusionINTEL = 0x00800000,
804        LoopCountINTEL = 0x01000000,
805        MaxReinvocationDelayINTEL = 0x02000000,
806    },
807
808    FunctionControlShift = {
809        Inline = 0,
810        DontInline = 1,
811        Pure = 2,
812        Const = 3,
813        OptNoneINTEL = 16,
814    },
815
816    FunctionControlMask = {
817        MaskNone = 0,
818        Inline = 0x00000001,
819        DontInline = 0x00000002,
820        Pure = 0x00000004,
821        Const = 0x00000008,
822        OptNoneINTEL = 0x00010000,
823    },
824
825    MemorySemanticsShift = {
826        Acquire = 1,
827        Release = 2,
828        AcquireRelease = 3,
829        SequentiallyConsistent = 4,
830        UniformMemory = 6,
831        SubgroupMemory = 7,
832        WorkgroupMemory = 8,
833        CrossWorkgroupMemory = 9,
834        AtomicCounterMemory = 10,
835        ImageMemory = 11,
836        OutputMemory = 12,
837        OutputMemoryKHR = 12,
838        MakeAvailable = 13,
839        MakeAvailableKHR = 13,
840        MakeVisible = 14,
841        MakeVisibleKHR = 14,
842        Volatile = 15,
843    },
844
845    MemorySemanticsMask = {
846        MaskNone = 0,
847        Acquire = 0x00000002,
848        Release = 0x00000004,
849        AcquireRelease = 0x00000008,
850        SequentiallyConsistent = 0x00000010,
851        UniformMemory = 0x00000040,
852        SubgroupMemory = 0x00000080,
853        WorkgroupMemory = 0x00000100,
854        CrossWorkgroupMemory = 0x00000200,
855        AtomicCounterMemory = 0x00000400,
856        ImageMemory = 0x00000800,
857        OutputMemory = 0x00001000,
858        OutputMemoryKHR = 0x00001000,
859        MakeAvailable = 0x00002000,
860        MakeAvailableKHR = 0x00002000,
861        MakeVisible = 0x00004000,
862        MakeVisibleKHR = 0x00004000,
863        Volatile = 0x00008000,
864    },
865
866    MemoryAccessShift = {
867        Volatile = 0,
868        Aligned = 1,
869        Nontemporal = 2,
870        MakePointerAvailable = 3,
871        MakePointerAvailableKHR = 3,
872        MakePointerVisible = 4,
873        MakePointerVisibleKHR = 4,
874        NonPrivatePointer = 5,
875        NonPrivatePointerKHR = 5,
876        AliasScopeINTELMask = 16,
877        NoAliasINTELMask = 17,
878    },
879
880    MemoryAccessMask = {
881        MaskNone = 0,
882        Volatile = 0x00000001,
883        Aligned = 0x00000002,
884        Nontemporal = 0x00000004,
885        MakePointerAvailable = 0x00000008,
886        MakePointerAvailableKHR = 0x00000008,
887        MakePointerVisible = 0x00000010,
888        MakePointerVisibleKHR = 0x00000010,
889        NonPrivatePointer = 0x00000020,
890        NonPrivatePointerKHR = 0x00000020,
891        AliasScopeINTELMask = 0x00010000,
892        NoAliasINTELMask = 0x00020000,
893    },
894
895    Scope = {
896        CrossDevice = 0,
897        Device = 1,
898        Workgroup = 2,
899        Subgroup = 3,
900        Invocation = 4,
901        QueueFamily = 5,
902        QueueFamilyKHR = 5,
903        ShaderCallKHR = 6,
904    },
905
906    GroupOperation = {
907        Reduce = 0,
908        InclusiveScan = 1,
909        ExclusiveScan = 2,
910        ClusteredReduce = 3,
911        PartitionedReduceNV = 6,
912        PartitionedInclusiveScanNV = 7,
913        PartitionedExclusiveScanNV = 8,
914    },
915
916    KernelEnqueueFlags = {
917        NoWait = 0,
918        WaitKernel = 1,
919        WaitWorkGroup = 2,
920    },
921
922    KernelProfilingInfoShift = {
923        CmdExecTime = 0,
924    },
925
926    KernelProfilingInfoMask = {
927        MaskNone = 0,
928        CmdExecTime = 0x00000001,
929    },
930
931    Capability = {
932        Matrix = 0,
933        Shader = 1,
934        Geometry = 2,
935        Tessellation = 3,
936        Addresses = 4,
937        Linkage = 5,
938        Kernel = 6,
939        Vector16 = 7,
940        Float16Buffer = 8,
941        Float16 = 9,
942        Float64 = 10,
943        Int64 = 11,
944        Int64Atomics = 12,
945        ImageBasic = 13,
946        ImageReadWrite = 14,
947        ImageMipmap = 15,
948        Pipes = 17,
949        Groups = 18,
950        DeviceEnqueue = 19,
951        LiteralSampler = 20,
952        AtomicStorage = 21,
953        Int16 = 22,
954        TessellationPointSize = 23,
955        GeometryPointSize = 24,
956        ImageGatherExtended = 25,
957        StorageImageMultisample = 27,
958        UniformBufferArrayDynamicIndexing = 28,
959        SampledImageArrayDynamicIndexing = 29,
960        StorageBufferArrayDynamicIndexing = 30,
961        StorageImageArrayDynamicIndexing = 31,
962        ClipDistance = 32,
963        CullDistance = 33,
964        ImageCubeArray = 34,
965        SampleRateShading = 35,
966        ImageRect = 36,
967        SampledRect = 37,
968        GenericPointer = 38,
969        Int8 = 39,
970        InputAttachment = 40,
971        SparseResidency = 41,
972        MinLod = 42,
973        Sampled1D = 43,
974        Image1D = 44,
975        SampledCubeArray = 45,
976        SampledBuffer = 46,
977        ImageBuffer = 47,
978        ImageMSArray = 48,
979        StorageImageExtendedFormats = 49,
980        ImageQuery = 50,
981        DerivativeControl = 51,
982        InterpolationFunction = 52,
983        TransformFeedback = 53,
984        GeometryStreams = 54,
985        StorageImageReadWithoutFormat = 55,
986        StorageImageWriteWithoutFormat = 56,
987        MultiViewport = 57,
988        SubgroupDispatch = 58,
989        NamedBarrier = 59,
990        PipeStorage = 60,
991        GroupNonUniform = 61,
992        GroupNonUniformVote = 62,
993        GroupNonUniformArithmetic = 63,
994        GroupNonUniformBallot = 64,
995        GroupNonUniformShuffle = 65,
996        GroupNonUniformShuffleRelative = 66,
997        GroupNonUniformClustered = 67,
998        GroupNonUniformQuad = 68,
999        ShaderLayer = 69,
1000        ShaderViewportIndex = 70,
1001        UniformDecoration = 71,
1002        CoreBuiltinsARM = 4165,
1003        TileImageColorReadAccessEXT = 4166,
1004        TileImageDepthReadAccessEXT = 4167,
1005        TileImageStencilReadAccessEXT = 4168,
1006        FragmentShadingRateKHR = 4422,
1007        SubgroupBallotKHR = 4423,
1008        DrawParameters = 4427,
1009        WorkgroupMemoryExplicitLayoutKHR = 4428,
1010        WorkgroupMemoryExplicitLayout8BitAccessKHR = 4429,
1011        WorkgroupMemoryExplicitLayout16BitAccessKHR = 4430,
1012        SubgroupVoteKHR = 4431,
1013        StorageBuffer16BitAccess = 4433,
1014        StorageUniformBufferBlock16 = 4433,
1015        StorageUniform16 = 4434,
1016        UniformAndStorageBuffer16BitAccess = 4434,
1017        StoragePushConstant16 = 4435,
1018        StorageInputOutput16 = 4436,
1019        DeviceGroup = 4437,
1020        MultiView = 4439,
1021        VariablePointersStorageBuffer = 4441,
1022        VariablePointers = 4442,
1023        AtomicStorageOps = 4445,
1024        SampleMaskPostDepthCoverage = 4447,
1025        StorageBuffer8BitAccess = 4448,
1026        UniformAndStorageBuffer8BitAccess = 4449,
1027        StoragePushConstant8 = 4450,
1028        DenormPreserve = 4464,
1029        DenormFlushToZero = 4465,
1030        SignedZeroInfNanPreserve = 4466,
1031        RoundingModeRTE = 4467,
1032        RoundingModeRTZ = 4468,
1033        RayQueryProvisionalKHR = 4471,
1034        RayQueryKHR = 4472,
1035        RayTraversalPrimitiveCullingKHR = 4478,
1036        RayTracingKHR = 4479,
1037        TextureSampleWeightedQCOM = 4484,
1038        TextureBoxFilterQCOM = 4485,
1039        TextureBlockMatchQCOM = 4486,
1040        Float16ImageAMD = 5008,
1041        ImageGatherBiasLodAMD = 5009,
1042        FragmentMaskAMD = 5010,
1043        StencilExportEXT = 5013,
1044        ImageReadWriteLodAMD = 5015,
1045        Int64ImageEXT = 5016,
1046        ShaderClockKHR = 5055,
1047        ShaderEnqueueAMDX = 5067,
1048        QuadControlKHR = 5087,
1049        SampleMaskOverrideCoverageNV = 5249,
1050        GeometryShaderPassthroughNV = 5251,
1051        ShaderViewportIndexLayerEXT = 5254,
1052        ShaderViewportIndexLayerNV = 5254,
1053        ShaderViewportMaskNV = 5255,
1054        ShaderStereoViewNV = 5259,
1055        PerViewAttributesNV = 5260,
1056        FragmentFullyCoveredEXT = 5265,
1057        MeshShadingNV = 5266,
1058        ImageFootprintNV = 5282,
1059        MeshShadingEXT = 5283,
1060        FragmentBarycentricKHR = 5284,
1061        FragmentBarycentricNV = 5284,
1062        ComputeDerivativeGroupQuadsNV = 5288,
1063        FragmentDensityEXT = 5291,
1064        ShadingRateNV = 5291,
1065        GroupNonUniformPartitionedNV = 5297,
1066        ShaderNonUniform = 5301,
1067        ShaderNonUniformEXT = 5301,
1068        RuntimeDescriptorArray = 5302,
1069        RuntimeDescriptorArrayEXT = 5302,
1070        InputAttachmentArrayDynamicIndexing = 5303,
1071        InputAttachmentArrayDynamicIndexingEXT = 5303,
1072        UniformTexelBufferArrayDynamicIndexing = 5304,
1073        UniformTexelBufferArrayDynamicIndexingEXT = 5304,
1074        StorageTexelBufferArrayDynamicIndexing = 5305,
1075        StorageTexelBufferArrayDynamicIndexingEXT = 5305,
1076        UniformBufferArrayNonUniformIndexing = 5306,
1077        UniformBufferArrayNonUniformIndexingEXT = 5306,
1078        SampledImageArrayNonUniformIndexing = 5307,
1079        SampledImageArrayNonUniformIndexingEXT = 5307,
1080        StorageBufferArrayNonUniformIndexing = 5308,
1081        StorageBufferArrayNonUniformIndexingEXT = 5308,
1082        StorageImageArrayNonUniformIndexing = 5309,
1083        StorageImageArrayNonUniformIndexingEXT = 5309,
1084        InputAttachmentArrayNonUniformIndexing = 5310,
1085        InputAttachmentArrayNonUniformIndexingEXT = 5310,
1086        UniformTexelBufferArrayNonUniformIndexing = 5311,
1087        UniformTexelBufferArrayNonUniformIndexingEXT = 5311,
1088        StorageTexelBufferArrayNonUniformIndexing = 5312,
1089        StorageTexelBufferArrayNonUniformIndexingEXT = 5312,
1090        RayTracingPositionFetchKHR = 5336,
1091        RayTracingNV = 5340,
1092        RayTracingMotionBlurNV = 5341,
1093        VulkanMemoryModel = 5345,
1094        VulkanMemoryModelKHR = 5345,
1095        VulkanMemoryModelDeviceScope = 5346,
1096        VulkanMemoryModelDeviceScopeKHR = 5346,
1097        PhysicalStorageBufferAddresses = 5347,
1098        PhysicalStorageBufferAddressesEXT = 5347,
1099        ComputeDerivativeGroupLinearNV = 5350,
1100        RayTracingProvisionalKHR = 5353,
1101        CooperativeMatrixNV = 5357,
1102        FragmentShaderSampleInterlockEXT = 5363,
1103        FragmentShaderShadingRateInterlockEXT = 5372,
1104        ShaderSMBuiltinsNV = 5373,
1105        FragmentShaderPixelInterlockEXT = 5378,
1106        DemoteToHelperInvocation = 5379,
1107        DemoteToHelperInvocationEXT = 5379,
1108        DisplacementMicromapNV = 5380,
1109        RayTracingOpacityMicromapEXT = 5381,
1110        ShaderInvocationReorderNV = 5383,
1111        BindlessTextureNV = 5390,
1112        RayQueryPositionFetchKHR = 5391,
1113        RayTracingDisplacementMicromapNV = 5409,
1114        SubgroupShuffleINTEL = 5568,
1115        SubgroupBufferBlockIOINTEL = 5569,
1116        SubgroupImageBlockIOINTEL = 5570,
1117        SubgroupImageMediaBlockIOINTEL = 5579,
1118        RoundToInfinityINTEL = 5582,
1119        FloatingPointModeINTEL = 5583,
1120        IntegerFunctions2INTEL = 5584,
1121        FunctionPointersINTEL = 5603,
1122        IndirectReferencesINTEL = 5604,
1123        AsmINTEL = 5606,
1124        AtomicFloat32MinMaxEXT = 5612,
1125        AtomicFloat64MinMaxEXT = 5613,
1126        AtomicFloat16MinMaxEXT = 5616,
1127        VectorComputeINTEL = 5617,
1128        VectorAnyINTEL = 5619,
1129        ExpectAssumeKHR = 5629,
1130        SubgroupAvcMotionEstimationINTEL = 5696,
1131        SubgroupAvcMotionEstimationIntraINTEL = 5697,
1132        SubgroupAvcMotionEstimationChromaINTEL = 5698,
1133        VariableLengthArrayINTEL = 5817,
1134        FunctionFloatControlINTEL = 5821,
1135        FPGAMemoryAttributesINTEL = 5824,
1136        FPFastMathModeINTEL = 5837,
1137        ArbitraryPrecisionIntegersINTEL = 5844,
1138        ArbitraryPrecisionFloatingPointINTEL = 5845,
1139        UnstructuredLoopControlsINTEL = 5886,
1140        FPGALoopControlsINTEL = 5888,
1141        KernelAttributesINTEL = 5892,
1142        FPGAKernelAttributesINTEL = 5897,
1143        FPGAMemoryAccessesINTEL = 5898,
1144        FPGAClusterAttributesINTEL = 5904,
1145        LoopFuseINTEL = 5906,
1146        FPGADSPControlINTEL = 5908,
1147        MemoryAccessAliasingINTEL = 5910,
1148        FPGAInvocationPipeliningAttributesINTEL = 5916,
1149        FPGABufferLocationINTEL = 5920,
1150        ArbitraryPrecisionFixedPointINTEL = 5922,
1151        USMStorageClassesINTEL = 5935,
1152        RuntimeAlignedAttributeINTEL = 5939,
1153        IOPipesINTEL = 5943,
1154        BlockingPipesINTEL = 5945,
1155        FPGARegINTEL = 5948,
1156        DotProductInputAll = 6016,
1157        DotProductInputAllKHR = 6016,
1158        DotProductInput4x8Bit = 6017,
1159        DotProductInput4x8BitKHR = 6017,
1160        DotProductInput4x8BitPacked = 6018,
1161        DotProductInput4x8BitPackedKHR = 6018,
1162        DotProduct = 6019,
1163        DotProductKHR = 6019,
1164        RayCullMaskKHR = 6020,
1165        CooperativeMatrixKHR = 6022,
1166        BitInstructions = 6025,
1167        GroupNonUniformRotateKHR = 6026,
1168        FloatControls2 = 6029,
1169        AtomicFloat32AddEXT = 6033,
1170        AtomicFloat64AddEXT = 6034,
1171        LongCompositesINTEL = 6089,
1172        OptNoneINTEL = 6094,
1173        AtomicFloat16AddEXT = 6095,
1174        DebugInfoModuleINTEL = 6114,
1175        BFloat16ConversionINTEL = 6115,
1176        SplitBarrierINTEL = 6141,
1177        FPGAClusterAttributesV2INTEL = 6150,
1178        FPGAKernelAttributesv2INTEL = 6161,
1179        FPMaxErrorINTEL = 6169,
1180        FPGALatencyControlINTEL = 6171,
1181        FPGAArgumentInterfacesINTEL = 6174,
1182        GlobalVariableHostAccessINTEL = 6187,
1183        GlobalVariableFPGADecorationsINTEL = 6189,
1184        GroupUniformArithmeticKHR = 6400,
1185        MaskedGatherScatterINTEL = 6427,
1186        CacheControlsINTEL = 6441,
1187    },
1188
1189    RayFlagsShift = {
1190        OpaqueKHR = 0,
1191        NoOpaqueKHR = 1,
1192        TerminateOnFirstHitKHR = 2,
1193        SkipClosestHitShaderKHR = 3,
1194        CullBackFacingTrianglesKHR = 4,
1195        CullFrontFacingTrianglesKHR = 5,
1196        CullOpaqueKHR = 6,
1197        CullNoOpaqueKHR = 7,
1198        SkipTrianglesKHR = 8,
1199        SkipAABBsKHR = 9,
1200        ForceOpacityMicromap2StateEXT = 10,
1201    },
1202
1203    RayFlagsMask = {
1204        MaskNone = 0,
1205        OpaqueKHR = 0x00000001,
1206        NoOpaqueKHR = 0x00000002,
1207        TerminateOnFirstHitKHR = 0x00000004,
1208        SkipClosestHitShaderKHR = 0x00000008,
1209        CullBackFacingTrianglesKHR = 0x00000010,
1210        CullFrontFacingTrianglesKHR = 0x00000020,
1211        CullOpaqueKHR = 0x00000040,
1212        CullNoOpaqueKHR = 0x00000080,
1213        SkipTrianglesKHR = 0x00000100,
1214        SkipAABBsKHR = 0x00000200,
1215        ForceOpacityMicromap2StateEXT = 0x00000400,
1216    },
1217
1218    RayQueryIntersection = {
1219        RayQueryCandidateIntersectionKHR = 0,
1220        RayQueryCommittedIntersectionKHR = 1,
1221    },
1222
1223    RayQueryCommittedIntersectionType = {
1224        RayQueryCommittedIntersectionNoneKHR = 0,
1225        RayQueryCommittedIntersectionTriangleKHR = 1,
1226        RayQueryCommittedIntersectionGeneratedKHR = 2,
1227    },
1228
1229    RayQueryCandidateIntersectionType = {
1230        RayQueryCandidateIntersectionTriangleKHR = 0,
1231        RayQueryCandidateIntersectionAABBKHR = 1,
1232    },
1233
1234    FragmentShadingRateShift = {
1235        Vertical2Pixels = 0,
1236        Vertical4Pixels = 1,
1237        Horizontal2Pixels = 2,
1238        Horizontal4Pixels = 3,
1239    },
1240
1241    FragmentShadingRateMask = {
1242        MaskNone = 0,
1243        Vertical2Pixels = 0x00000001,
1244        Vertical4Pixels = 0x00000002,
1245        Horizontal2Pixels = 0x00000004,
1246        Horizontal4Pixels = 0x00000008,
1247    },
1248
1249    FPDenormMode = {
1250        Preserve = 0,
1251        FlushToZero = 1,
1252    },
1253
1254    FPOperationMode = {
1255        IEEE = 0,
1256        ALT = 1,
1257    },
1258
1259    QuantizationModes = {
1260        TRN = 0,
1261        TRN_ZERO = 1,
1262        RND = 2,
1263        RND_ZERO = 3,
1264        RND_INF = 4,
1265        RND_MIN_INF = 5,
1266        RND_CONV = 6,
1267        RND_CONV_ODD = 7,
1268    },
1269
1270    OverflowModes = {
1271        WRAP = 0,
1272        SAT = 1,
1273        SAT_ZERO = 2,
1274        SAT_SYM = 3,
1275    },
1276
1277    PackedVectorFormat = {
1278        PackedVectorFormat4x8Bit = 0,
1279        PackedVectorFormat4x8BitKHR = 0,
1280    },
1281
1282    CooperativeMatrixOperandsShift = {
1283        MatrixASignedComponentsKHR = 0,
1284        MatrixBSignedComponentsKHR = 1,
1285        MatrixCSignedComponentsKHR = 2,
1286        MatrixResultSignedComponentsKHR = 3,
1287        SaturatingAccumulationKHR = 4,
1288    },
1289
1290    CooperativeMatrixOperandsMask = {
1291        MaskNone = 0,
1292        MatrixASignedComponentsKHR = 0x00000001,
1293        MatrixBSignedComponentsKHR = 0x00000002,
1294        MatrixCSignedComponentsKHR = 0x00000004,
1295        MatrixResultSignedComponentsKHR = 0x00000008,
1296        SaturatingAccumulationKHR = 0x00000010,
1297    },
1298
1299    CooperativeMatrixLayout = {
1300        RowMajorKHR = 0,
1301        ColumnMajorKHR = 1,
1302    },
1303
1304    CooperativeMatrixUse = {
1305        MatrixAKHR = 0,
1306        MatrixBKHR = 1,
1307        MatrixAccumulatorKHR = 2,
1308    },
1309
1310    InitializationModeQualifier = {
1311        InitOnDeviceReprogramINTEL = 0,
1312        InitOnDeviceResetINTEL = 1,
1313    },
1314
1315    HostAccessQualifier = {
1316        NoneINTEL = 0,
1317        ReadINTEL = 1,
1318        WriteINTEL = 2,
1319        ReadWriteINTEL = 3,
1320    },
1321
1322    LoadCacheControl = {
1323        UncachedINTEL = 0,
1324        CachedINTEL = 1,
1325        StreamingINTEL = 2,
1326        InvalidateAfterReadINTEL = 3,
1327        ConstCachedINTEL = 4,
1328    },
1329
1330    StoreCacheControl = {
1331        UncachedINTEL = 0,
1332        WriteThroughINTEL = 1,
1333        WriteBackINTEL = 2,
1334        StreamingINTEL = 3,
1335    },
1336
1337    Op = {
1338        OpNop = 0,
1339        OpUndef = 1,
1340        OpSourceContinued = 2,
1341        OpSource = 3,
1342        OpSourceExtension = 4,
1343        OpName = 5,
1344        OpMemberName = 6,
1345        OpString = 7,
1346        OpLine = 8,
1347        OpExtension = 10,
1348        OpExtInstImport = 11,
1349        OpExtInst = 12,
1350        OpMemoryModel = 14,
1351        OpEntryPoint = 15,
1352        OpExecutionMode = 16,
1353        OpCapability = 17,
1354        OpTypeVoid = 19,
1355        OpTypeBool = 20,
1356        OpTypeInt = 21,
1357        OpTypeFloat = 22,
1358        OpTypeVector = 23,
1359        OpTypeMatrix = 24,
1360        OpTypeImage = 25,
1361        OpTypeSampler = 26,
1362        OpTypeSampledImage = 27,
1363        OpTypeArray = 28,
1364        OpTypeRuntimeArray = 29,
1365        OpTypeStruct = 30,
1366        OpTypeOpaque = 31,
1367        OpTypePointer = 32,
1368        OpTypeFunction = 33,
1369        OpTypeEvent = 34,
1370        OpTypeDeviceEvent = 35,
1371        OpTypeReserveId = 36,
1372        OpTypeQueue = 37,
1373        OpTypePipe = 38,
1374        OpTypeForwardPointer = 39,
1375        OpConstantTrue = 41,
1376        OpConstantFalse = 42,
1377        OpConstant = 43,
1378        OpConstantComposite = 44,
1379        OpConstantSampler = 45,
1380        OpConstantNull = 46,
1381        OpSpecConstantTrue = 48,
1382        OpSpecConstantFalse = 49,
1383        OpSpecConstant = 50,
1384        OpSpecConstantComposite = 51,
1385        OpSpecConstantOp = 52,
1386        OpFunction = 54,
1387        OpFunctionParameter = 55,
1388        OpFunctionEnd = 56,
1389        OpFunctionCall = 57,
1390        OpVariable = 59,
1391        OpImageTexelPointer = 60,
1392        OpLoad = 61,
1393        OpStore = 62,
1394        OpCopyMemory = 63,
1395        OpCopyMemorySized = 64,
1396        OpAccessChain = 65,
1397        OpInBoundsAccessChain = 66,
1398        OpPtrAccessChain = 67,
1399        OpArrayLength = 68,
1400        OpGenericPtrMemSemantics = 69,
1401        OpInBoundsPtrAccessChain = 70,
1402        OpDecorate = 71,
1403        OpMemberDecorate = 72,
1404        OpDecorationGroup = 73,
1405        OpGroupDecorate = 74,
1406        OpGroupMemberDecorate = 75,
1407        OpVectorExtractDynamic = 77,
1408        OpVectorInsertDynamic = 78,
1409        OpVectorShuffle = 79,
1410        OpCompositeConstruct = 80,
1411        OpCompositeExtract = 81,
1412        OpCompositeInsert = 82,
1413        OpCopyObject = 83,
1414        OpTranspose = 84,
1415        OpSampledImage = 86,
1416        OpImageSampleImplicitLod = 87,
1417        OpImageSampleExplicitLod = 88,
1418        OpImageSampleDrefImplicitLod = 89,
1419        OpImageSampleDrefExplicitLod = 90,
1420        OpImageSampleProjImplicitLod = 91,
1421        OpImageSampleProjExplicitLod = 92,
1422        OpImageSampleProjDrefImplicitLod = 93,
1423        OpImageSampleProjDrefExplicitLod = 94,
1424        OpImageFetch = 95,
1425        OpImageGather = 96,
1426        OpImageDrefGather = 97,
1427        OpImageRead = 98,
1428        OpImageWrite = 99,
1429        OpImage = 100,
1430        OpImageQueryFormat = 101,
1431        OpImageQueryOrder = 102,
1432        OpImageQuerySizeLod = 103,
1433        OpImageQuerySize = 104,
1434        OpImageQueryLod = 105,
1435        OpImageQueryLevels = 106,
1436        OpImageQuerySamples = 107,
1437        OpConvertFToU = 109,
1438        OpConvertFToS = 110,
1439        OpConvertSToF = 111,
1440        OpConvertUToF = 112,
1441        OpUConvert = 113,
1442        OpSConvert = 114,
1443        OpFConvert = 115,
1444        OpQuantizeToF16 = 116,
1445        OpConvertPtrToU = 117,
1446        OpSatConvertSToU = 118,
1447        OpSatConvertUToS = 119,
1448        OpConvertUToPtr = 120,
1449        OpPtrCastToGeneric = 121,
1450        OpGenericCastToPtr = 122,
1451        OpGenericCastToPtrExplicit = 123,
1452        OpBitcast = 124,
1453        OpSNegate = 126,
1454        OpFNegate = 127,
1455        OpIAdd = 128,
1456        OpFAdd = 129,
1457        OpISub = 130,
1458        OpFSub = 131,
1459        OpIMul = 132,
1460        OpFMul = 133,
1461        OpUDiv = 134,
1462        OpSDiv = 135,
1463        OpFDiv = 136,
1464        OpUMod = 137,
1465        OpSRem = 138,
1466        OpSMod = 139,
1467        OpFRem = 140,
1468        OpFMod = 141,
1469        OpVectorTimesScalar = 142,
1470        OpMatrixTimesScalar = 143,
1471        OpVectorTimesMatrix = 144,
1472        OpMatrixTimesVector = 145,
1473        OpMatrixTimesMatrix = 146,
1474        OpOuterProduct = 147,
1475        OpDot = 148,
1476        OpIAddCarry = 149,
1477        OpISubBorrow = 150,
1478        OpUMulExtended = 151,
1479        OpSMulExtended = 152,
1480        OpAny = 154,
1481        OpAll = 155,
1482        OpIsNan = 156,
1483        OpIsInf = 157,
1484        OpIsFinite = 158,
1485        OpIsNormal = 159,
1486        OpSignBitSet = 160,
1487        OpLessOrGreater = 161,
1488        OpOrdered = 162,
1489        OpUnordered = 163,
1490        OpLogicalEqual = 164,
1491        OpLogicalNotEqual = 165,
1492        OpLogicalOr = 166,
1493        OpLogicalAnd = 167,
1494        OpLogicalNot = 168,
1495        OpSelect = 169,
1496        OpIEqual = 170,
1497        OpINotEqual = 171,
1498        OpUGreaterThan = 172,
1499        OpSGreaterThan = 173,
1500        OpUGreaterThanEqual = 174,
1501        OpSGreaterThanEqual = 175,
1502        OpULessThan = 176,
1503        OpSLessThan = 177,
1504        OpULessThanEqual = 178,
1505        OpSLessThanEqual = 179,
1506        OpFOrdEqual = 180,
1507        OpFUnordEqual = 181,
1508        OpFOrdNotEqual = 182,
1509        OpFUnordNotEqual = 183,
1510        OpFOrdLessThan = 184,
1511        OpFUnordLessThan = 185,
1512        OpFOrdGreaterThan = 186,
1513        OpFUnordGreaterThan = 187,
1514        OpFOrdLessThanEqual = 188,
1515        OpFUnordLessThanEqual = 189,
1516        OpFOrdGreaterThanEqual = 190,
1517        OpFUnordGreaterThanEqual = 191,
1518        OpShiftRightLogical = 194,
1519        OpShiftRightArithmetic = 195,
1520        OpShiftLeftLogical = 196,
1521        OpBitwiseOr = 197,
1522        OpBitwiseXor = 198,
1523        OpBitwiseAnd = 199,
1524        OpNot = 200,
1525        OpBitFieldInsert = 201,
1526        OpBitFieldSExtract = 202,
1527        OpBitFieldUExtract = 203,
1528        OpBitReverse = 204,
1529        OpBitCount = 205,
1530        OpDPdx = 207,
1531        OpDPdy = 208,
1532        OpFwidth = 209,
1533        OpDPdxFine = 210,
1534        OpDPdyFine = 211,
1535        OpFwidthFine = 212,
1536        OpDPdxCoarse = 213,
1537        OpDPdyCoarse = 214,
1538        OpFwidthCoarse = 215,
1539        OpEmitVertex = 218,
1540        OpEndPrimitive = 219,
1541        OpEmitStreamVertex = 220,
1542        OpEndStreamPrimitive = 221,
1543        OpControlBarrier = 224,
1544        OpMemoryBarrier = 225,
1545        OpAtomicLoad = 227,
1546        OpAtomicStore = 228,
1547        OpAtomicExchange = 229,
1548        OpAtomicCompareExchange = 230,
1549        OpAtomicCompareExchangeWeak = 231,
1550        OpAtomicIIncrement = 232,
1551        OpAtomicIDecrement = 233,
1552        OpAtomicIAdd = 234,
1553        OpAtomicISub = 235,
1554        OpAtomicSMin = 236,
1555        OpAtomicUMin = 237,
1556        OpAtomicSMax = 238,
1557        OpAtomicUMax = 239,
1558        OpAtomicAnd = 240,
1559        OpAtomicOr = 241,
1560        OpAtomicXor = 242,
1561        OpPhi = 245,
1562        OpLoopMerge = 246,
1563        OpSelectionMerge = 247,
1564        OpLabel = 248,
1565        OpBranch = 249,
1566        OpBranchConditional = 250,
1567        OpSwitch = 251,
1568        OpKill = 252,
1569        OpReturn = 253,
1570        OpReturnValue = 254,
1571        OpUnreachable = 255,
1572        OpLifetimeStart = 256,
1573        OpLifetimeStop = 257,
1574        OpGroupAsyncCopy = 259,
1575        OpGroupWaitEvents = 260,
1576        OpGroupAll = 261,
1577        OpGroupAny = 262,
1578        OpGroupBroadcast = 263,
1579        OpGroupIAdd = 264,
1580        OpGroupFAdd = 265,
1581        OpGroupFMin = 266,
1582        OpGroupUMin = 267,
1583        OpGroupSMin = 268,
1584        OpGroupFMax = 269,
1585        OpGroupUMax = 270,
1586        OpGroupSMax = 271,
1587        OpReadPipe = 274,
1588        OpWritePipe = 275,
1589        OpReservedReadPipe = 276,
1590        OpReservedWritePipe = 277,
1591        OpReserveReadPipePackets = 278,
1592        OpReserveWritePipePackets = 279,
1593        OpCommitReadPipe = 280,
1594        OpCommitWritePipe = 281,
1595        OpIsValidReserveId = 282,
1596        OpGetNumPipePackets = 283,
1597        OpGetMaxPipePackets = 284,
1598        OpGroupReserveReadPipePackets = 285,
1599        OpGroupReserveWritePipePackets = 286,
1600        OpGroupCommitReadPipe = 287,
1601        OpGroupCommitWritePipe = 288,
1602        OpEnqueueMarker = 291,
1603        OpEnqueueKernel = 292,
1604        OpGetKernelNDrangeSubGroupCount = 293,
1605        OpGetKernelNDrangeMaxSubGroupSize = 294,
1606        OpGetKernelWorkGroupSize = 295,
1607        OpGetKernelPreferredWorkGroupSizeMultiple = 296,
1608        OpRetainEvent = 297,
1609        OpReleaseEvent = 298,
1610        OpCreateUserEvent = 299,
1611        OpIsValidEvent = 300,
1612        OpSetUserEventStatus = 301,
1613        OpCaptureEventProfilingInfo = 302,
1614        OpGetDefaultQueue = 303,
1615        OpBuildNDRange = 304,
1616        OpImageSparseSampleImplicitLod = 305,
1617        OpImageSparseSampleExplicitLod = 306,
1618        OpImageSparseSampleDrefImplicitLod = 307,
1619        OpImageSparseSampleDrefExplicitLod = 308,
1620        OpImageSparseSampleProjImplicitLod = 309,
1621        OpImageSparseSampleProjExplicitLod = 310,
1622        OpImageSparseSampleProjDrefImplicitLod = 311,
1623        OpImageSparseSampleProjDrefExplicitLod = 312,
1624        OpImageSparseFetch = 313,
1625        OpImageSparseGather = 314,
1626        OpImageSparseDrefGather = 315,
1627        OpImageSparseTexelsResident = 316,
1628        OpNoLine = 317,
1629        OpAtomicFlagTestAndSet = 318,
1630        OpAtomicFlagClear = 319,
1631        OpImageSparseRead = 320,
1632        OpSizeOf = 321,
1633        OpTypePipeStorage = 322,
1634        OpConstantPipeStorage = 323,
1635        OpCreatePipeFromPipeStorage = 324,
1636        OpGetKernelLocalSizeForSubgroupCount = 325,
1637        OpGetKernelMaxNumSubgroups = 326,
1638        OpTypeNamedBarrier = 327,
1639        OpNamedBarrierInitialize = 328,
1640        OpMemoryNamedBarrier = 329,
1641        OpModuleProcessed = 330,
1642        OpExecutionModeId = 331,
1643        OpDecorateId = 332,
1644        OpGroupNonUniformElect = 333,
1645        OpGroupNonUniformAll = 334,
1646        OpGroupNonUniformAny = 335,
1647        OpGroupNonUniformAllEqual = 336,
1648        OpGroupNonUniformBroadcast = 337,
1649        OpGroupNonUniformBroadcastFirst = 338,
1650        OpGroupNonUniformBallot = 339,
1651        OpGroupNonUniformInverseBallot = 340,
1652        OpGroupNonUniformBallotBitExtract = 341,
1653        OpGroupNonUniformBallotBitCount = 342,
1654        OpGroupNonUniformBallotFindLSB = 343,
1655        OpGroupNonUniformBallotFindMSB = 344,
1656        OpGroupNonUniformShuffle = 345,
1657        OpGroupNonUniformShuffleXor = 346,
1658        OpGroupNonUniformShuffleUp = 347,
1659        OpGroupNonUniformShuffleDown = 348,
1660        OpGroupNonUniformIAdd = 349,
1661        OpGroupNonUniformFAdd = 350,
1662        OpGroupNonUniformIMul = 351,
1663        OpGroupNonUniformFMul = 352,
1664        OpGroupNonUniformSMin = 353,
1665        OpGroupNonUniformUMin = 354,
1666        OpGroupNonUniformFMin = 355,
1667        OpGroupNonUniformSMax = 356,
1668        OpGroupNonUniformUMax = 357,
1669        OpGroupNonUniformFMax = 358,
1670        OpGroupNonUniformBitwiseAnd = 359,
1671        OpGroupNonUniformBitwiseOr = 360,
1672        OpGroupNonUniformBitwiseXor = 361,
1673        OpGroupNonUniformLogicalAnd = 362,
1674        OpGroupNonUniformLogicalOr = 363,
1675        OpGroupNonUniformLogicalXor = 364,
1676        OpGroupNonUniformQuadBroadcast = 365,
1677        OpGroupNonUniformQuadSwap = 366,
1678        OpCopyLogical = 400,
1679        OpPtrEqual = 401,
1680        OpPtrNotEqual = 402,
1681        OpPtrDiff = 403,
1682        OpColorAttachmentReadEXT = 4160,
1683        OpDepthAttachmentReadEXT = 4161,
1684        OpStencilAttachmentReadEXT = 4162,
1685        OpTerminateInvocation = 4416,
1686        OpSubgroupBallotKHR = 4421,
1687        OpSubgroupFirstInvocationKHR = 4422,
1688        OpSubgroupAllKHR = 4428,
1689        OpSubgroupAnyKHR = 4429,
1690        OpSubgroupAllEqualKHR = 4430,
1691        OpGroupNonUniformRotateKHR = 4431,
1692        OpSubgroupReadInvocationKHR = 4432,
1693        OpTraceRayKHR = 4445,
1694        OpExecuteCallableKHR = 4446,
1695        OpConvertUToAccelerationStructureKHR = 4447,
1696        OpIgnoreIntersectionKHR = 4448,
1697        OpTerminateRayKHR = 4449,
1698        OpSDot = 4450,
1699        OpSDotKHR = 4450,
1700        OpUDot = 4451,
1701        OpUDotKHR = 4451,
1702        OpSUDot = 4452,
1703        OpSUDotKHR = 4452,
1704        OpSDotAccSat = 4453,
1705        OpSDotAccSatKHR = 4453,
1706        OpUDotAccSat = 4454,
1707        OpUDotAccSatKHR = 4454,
1708        OpSUDotAccSat = 4455,
1709        OpSUDotAccSatKHR = 4455,
1710        OpTypeCooperativeMatrixKHR = 4456,
1711        OpCooperativeMatrixLoadKHR = 4457,
1712        OpCooperativeMatrixStoreKHR = 4458,
1713        OpCooperativeMatrixMulAddKHR = 4459,
1714        OpCooperativeMatrixLengthKHR = 4460,
1715        OpTypeRayQueryKHR = 4472,
1716        OpRayQueryInitializeKHR = 4473,
1717        OpRayQueryTerminateKHR = 4474,
1718        OpRayQueryGenerateIntersectionKHR = 4475,
1719        OpRayQueryConfirmIntersectionKHR = 4476,
1720        OpRayQueryProceedKHR = 4477,
1721        OpRayQueryGetIntersectionTypeKHR = 4479,
1722        OpImageSampleWeightedQCOM = 4480,
1723        OpImageBoxFilterQCOM = 4481,
1724        OpImageBlockMatchSSDQCOM = 4482,
1725        OpImageBlockMatchSADQCOM = 4483,
1726        OpGroupIAddNonUniformAMD = 5000,
1727        OpGroupFAddNonUniformAMD = 5001,
1728        OpGroupFMinNonUniformAMD = 5002,
1729        OpGroupUMinNonUniformAMD = 5003,
1730        OpGroupSMinNonUniformAMD = 5004,
1731        OpGroupFMaxNonUniformAMD = 5005,
1732        OpGroupUMaxNonUniformAMD = 5006,
1733        OpGroupSMaxNonUniformAMD = 5007,
1734        OpFragmentMaskFetchAMD = 5011,
1735        OpFragmentFetchAMD = 5012,
1736        OpReadClockKHR = 5056,
1737        OpFinalizeNodePayloadsAMDX = 5075,
1738        OpFinishWritingNodePayloadAMDX = 5078,
1739        OpInitializeNodePayloadsAMDX = 5090,
1740        OpGroupNonUniformQuadAllKHR = 5110,
1741        OpGroupNonUniformQuadAnyKHR = 5111,
1742        OpHitObjectRecordHitMotionNV = 5249,
1743        OpHitObjectRecordHitWithIndexMotionNV = 5250,
1744        OpHitObjectRecordMissMotionNV = 5251,
1745        OpHitObjectGetWorldToObjectNV = 5252,
1746        OpHitObjectGetObjectToWorldNV = 5253,
1747        OpHitObjectGetObjectRayDirectionNV = 5254,
1748        OpHitObjectGetObjectRayOriginNV = 5255,
1749        OpHitObjectTraceRayMotionNV = 5256,
1750        OpHitObjectGetShaderRecordBufferHandleNV = 5257,
1751        OpHitObjectGetShaderBindingTableRecordIndexNV = 5258,
1752        OpHitObjectRecordEmptyNV = 5259,
1753        OpHitObjectTraceRayNV = 5260,
1754        OpHitObjectRecordHitNV = 5261,
1755        OpHitObjectRecordHitWithIndexNV = 5262,
1756        OpHitObjectRecordMissNV = 5263,
1757        OpHitObjectExecuteShaderNV = 5264,
1758        OpHitObjectGetCurrentTimeNV = 5265,
1759        OpHitObjectGetAttributesNV = 5266,
1760        OpHitObjectGetHitKindNV = 5267,
1761        OpHitObjectGetPrimitiveIndexNV = 5268,
1762        OpHitObjectGetGeometryIndexNV = 5269,
1763        OpHitObjectGetInstanceIdNV = 5270,
1764        OpHitObjectGetInstanceCustomIndexNV = 5271,
1765        OpHitObjectGetWorldRayDirectionNV = 5272,
1766        OpHitObjectGetWorldRayOriginNV = 5273,
1767        OpHitObjectGetRayTMaxNV = 5274,
1768        OpHitObjectGetRayTMinNV = 5275,
1769        OpHitObjectIsEmptyNV = 5276,
1770        OpHitObjectIsHitNV = 5277,
1771        OpHitObjectIsMissNV = 5278,
1772        OpReorderThreadWithHitObjectNV = 5279,
1773        OpReorderThreadWithHintNV = 5280,
1774        OpTypeHitObjectNV = 5281,
1775        OpImageSampleFootprintNV = 5283,
1776        OpEmitMeshTasksEXT = 5294,
1777        OpSetMeshOutputsEXT = 5295,
1778        OpGroupNonUniformPartitionNV = 5296,
1779        OpWritePackedPrimitiveIndices4x8NV = 5299,
1780        OpFetchMicroTriangleVertexPositionNV = 5300,
1781        OpFetchMicroTriangleVertexBarycentricNV = 5301,
1782        OpReportIntersectionKHR = 5334,
1783        OpReportIntersectionNV = 5334,
1784        OpIgnoreIntersectionNV = 5335,
1785        OpTerminateRayNV = 5336,
1786        OpTraceNV = 5337,
1787        OpTraceMotionNV = 5338,
1788        OpTraceRayMotionNV = 5339,
1789        OpRayQueryGetIntersectionTriangleVertexPositionsKHR = 5340,
1790        OpTypeAccelerationStructureKHR = 5341,
1791        OpTypeAccelerationStructureNV = 5341,
1792        OpExecuteCallableNV = 5344,
1793        OpTypeCooperativeMatrixNV = 5358,
1794        OpCooperativeMatrixLoadNV = 5359,
1795        OpCooperativeMatrixStoreNV = 5360,
1796        OpCooperativeMatrixMulAddNV = 5361,
1797        OpCooperativeMatrixLengthNV = 5362,
1798        OpBeginInvocationInterlockEXT = 5364,
1799        OpEndInvocationInterlockEXT = 5365,
1800        OpDemoteToHelperInvocation = 5380,
1801        OpDemoteToHelperInvocationEXT = 5380,
1802        OpIsHelperInvocationEXT = 5381,
1803        OpConvertUToImageNV = 5391,
1804        OpConvertUToSamplerNV = 5392,
1805        OpConvertImageToUNV = 5393,
1806        OpConvertSamplerToUNV = 5394,
1807        OpConvertUToSampledImageNV = 5395,
1808        OpConvertSampledImageToUNV = 5396,
1809        OpSamplerImageAddressingModeNV = 5397,
1810        OpSubgroupShuffleINTEL = 5571,
1811        OpSubgroupShuffleDownINTEL = 5572,
1812        OpSubgroupShuffleUpINTEL = 5573,
1813        OpSubgroupShuffleXorINTEL = 5574,
1814        OpSubgroupBlockReadINTEL = 5575,
1815        OpSubgroupBlockWriteINTEL = 5576,
1816        OpSubgroupImageBlockReadINTEL = 5577,
1817        OpSubgroupImageBlockWriteINTEL = 5578,
1818        OpSubgroupImageMediaBlockReadINTEL = 5580,
1819        OpSubgroupImageMediaBlockWriteINTEL = 5581,
1820        OpUCountLeadingZerosINTEL = 5585,
1821        OpUCountTrailingZerosINTEL = 5586,
1822        OpAbsISubINTEL = 5587,
1823        OpAbsUSubINTEL = 5588,
1824        OpIAddSatINTEL = 5589,
1825        OpUAddSatINTEL = 5590,
1826        OpIAverageINTEL = 5591,
1827        OpUAverageINTEL = 5592,
1828        OpIAverageRoundedINTEL = 5593,
1829        OpUAverageRoundedINTEL = 5594,
1830        OpISubSatINTEL = 5595,
1831        OpUSubSatINTEL = 5596,
1832        OpIMul32x16INTEL = 5597,
1833        OpUMul32x16INTEL = 5598,
1834        OpConstantFunctionPointerINTEL = 5600,
1835        OpFunctionPointerCallINTEL = 5601,
1836        OpAsmTargetINTEL = 5609,
1837        OpAsmINTEL = 5610,
1838        OpAsmCallINTEL = 5611,
1839        OpAtomicFMinEXT = 5614,
1840        OpAtomicFMaxEXT = 5615,
1841        OpAssumeTrueKHR = 5630,
1842        OpExpectKHR = 5631,
1843        OpDecorateString = 5632,
1844        OpDecorateStringGOOGLE = 5632,
1845        OpMemberDecorateString = 5633,
1846        OpMemberDecorateStringGOOGLE = 5633,
1847        OpVmeImageINTEL = 5699,
1848        OpTypeVmeImageINTEL = 5700,
1849        OpTypeAvcImePayloadINTEL = 5701,
1850        OpTypeAvcRefPayloadINTEL = 5702,
1851        OpTypeAvcSicPayloadINTEL = 5703,
1852        OpTypeAvcMcePayloadINTEL = 5704,
1853        OpTypeAvcMceResultINTEL = 5705,
1854        OpTypeAvcImeResultINTEL = 5706,
1855        OpTypeAvcImeResultSingleReferenceStreamoutINTEL = 5707,
1856        OpTypeAvcImeResultDualReferenceStreamoutINTEL = 5708,
1857        OpTypeAvcImeSingleReferenceStreaminINTEL = 5709,
1858        OpTypeAvcImeDualReferenceStreaminINTEL = 5710,
1859        OpTypeAvcRefResultINTEL = 5711,
1860        OpTypeAvcSicResultINTEL = 5712,
1861        OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL = 5713,
1862        OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL = 5714,
1863        OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL = 5715,
1864        OpSubgroupAvcMceSetInterShapePenaltyINTEL = 5716,
1865        OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL = 5717,
1866        OpSubgroupAvcMceSetInterDirectionPenaltyINTEL = 5718,
1867        OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL = 5719,
1868        OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL = 5720,
1869        OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL = 5721,
1870        OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL = 5722,
1871        OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL = 5723,
1872        OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL = 5724,
1873        OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL = 5725,
1874        OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL = 5726,
1875        OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL = 5727,
1876        OpSubgroupAvcMceSetAcOnlyHaarINTEL = 5728,
1877        OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL = 5729,
1878        OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL = 5730,
1879        OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL = 5731,
1880        OpSubgroupAvcMceConvertToImePayloadINTEL = 5732,
1881        OpSubgroupAvcMceConvertToImeResultINTEL = 5733,
1882        OpSubgroupAvcMceConvertToRefPayloadINTEL = 5734,
1883        OpSubgroupAvcMceConvertToRefResultINTEL = 5735,
1884        OpSubgroupAvcMceConvertToSicPayloadINTEL = 5736,
1885        OpSubgroupAvcMceConvertToSicResultINTEL = 5737,
1886        OpSubgroupAvcMceGetMotionVectorsINTEL = 5738,
1887        OpSubgroupAvcMceGetInterDistortionsINTEL = 5739,
1888        OpSubgroupAvcMceGetBestInterDistortionsINTEL = 5740,
1889        OpSubgroupAvcMceGetInterMajorShapeINTEL = 5741,
1890        OpSubgroupAvcMceGetInterMinorShapeINTEL = 5742,
1891        OpSubgroupAvcMceGetInterDirectionsINTEL = 5743,
1892        OpSubgroupAvcMceGetInterMotionVectorCountINTEL = 5744,
1893        OpSubgroupAvcMceGetInterReferenceIdsINTEL = 5745,
1894        OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL = 5746,
1895        OpSubgroupAvcImeInitializeINTEL = 5747,
1896        OpSubgroupAvcImeSetSingleReferenceINTEL = 5748,
1897        OpSubgroupAvcImeSetDualReferenceINTEL = 5749,
1898        OpSubgroupAvcImeRefWindowSizeINTEL = 5750,
1899        OpSubgroupAvcImeAdjustRefOffsetINTEL = 5751,
1900        OpSubgroupAvcImeConvertToMcePayloadINTEL = 5752,
1901        OpSubgroupAvcImeSetMaxMotionVectorCountINTEL = 5753,
1902        OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL = 5754,
1903        OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL = 5755,
1904        OpSubgroupAvcImeSetWeightedSadINTEL = 5756,
1905        OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL = 5757,
1906        OpSubgroupAvcImeEvaluateWithDualReferenceINTEL = 5758,
1907        OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL = 5759,
1908        OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL = 5760,
1909        OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL = 5761,
1910        OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL = 5762,
1911        OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL = 5763,
1912        OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL = 5764,
1913        OpSubgroupAvcImeConvertToMceResultINTEL = 5765,
1914        OpSubgroupAvcImeGetSingleReferenceStreaminINTEL = 5766,
1915        OpSubgroupAvcImeGetDualReferenceStreaminINTEL = 5767,
1916        OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL = 5768,
1917        OpSubgroupAvcImeStripDualReferenceStreamoutINTEL = 5769,
1918        OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL = 5770,
1919        OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL = 5771,
1920        OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL = 5772,
1921        OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL = 5773,
1922        OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL = 5774,
1923        OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL = 5775,
1924        OpSubgroupAvcImeGetBorderReachedINTEL = 5776,
1925        OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL = 5777,
1926        OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL = 5778,
1927        OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL = 5779,
1928        OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL = 5780,
1929        OpSubgroupAvcFmeInitializeINTEL = 5781,
1930        OpSubgroupAvcBmeInitializeINTEL = 5782,
1931        OpSubgroupAvcRefConvertToMcePayloadINTEL = 5783,
1932        OpSubgroupAvcRefSetBidirectionalMixDisableINTEL = 5784,
1933        OpSubgroupAvcRefSetBilinearFilterEnableINTEL = 5785,
1934        OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL = 5786,
1935        OpSubgroupAvcRefEvaluateWithDualReferenceINTEL = 5787,
1936        OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL = 5788,
1937        OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL = 5789,
1938        OpSubgroupAvcRefConvertToMceResultINTEL = 5790,
1939        OpSubgroupAvcSicInitializeINTEL = 5791,
1940        OpSubgroupAvcSicConfigureSkcINTEL = 5792,
1941        OpSubgroupAvcSicConfigureIpeLumaINTEL = 5793,
1942        OpSubgroupAvcSicConfigureIpeLumaChromaINTEL = 5794,
1943        OpSubgroupAvcSicGetMotionVectorMaskINTEL = 5795,
1944        OpSubgroupAvcSicConvertToMcePayloadINTEL = 5796,
1945        OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL = 5797,
1946        OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL = 5798,
1947        OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL = 5799,
1948        OpSubgroupAvcSicSetBilinearFilterEnableINTEL = 5800,
1949        OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL = 5801,
1950        OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL = 5802,
1951        OpSubgroupAvcSicEvaluateIpeINTEL = 5803,
1952        OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL = 5804,
1953        OpSubgroupAvcSicEvaluateWithDualReferenceINTEL = 5805,
1954        OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL = 5806,
1955        OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL = 5807,
1956        OpSubgroupAvcSicConvertToMceResultINTEL = 5808,
1957        OpSubgroupAvcSicGetIpeLumaShapeINTEL = 5809,
1958        OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL = 5810,
1959        OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL = 5811,
1960        OpSubgroupAvcSicGetPackedIpeLumaModesINTEL = 5812,
1961        OpSubgroupAvcSicGetIpeChromaModeINTEL = 5813,
1962        OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL = 5814,
1963        OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL = 5815,
1964        OpSubgroupAvcSicGetInterRawSadsINTEL = 5816,
1965        OpVariableLengthArrayINTEL = 5818,
1966        OpSaveMemoryINTEL = 5819,
1967        OpRestoreMemoryINTEL = 5820,
1968        OpArbitraryFloatSinCosPiINTEL = 5840,
1969        OpArbitraryFloatCastINTEL = 5841,
1970        OpArbitraryFloatCastFromIntINTEL = 5842,
1971        OpArbitraryFloatCastToIntINTEL = 5843,
1972        OpArbitraryFloatAddINTEL = 5846,
1973        OpArbitraryFloatSubINTEL = 5847,
1974        OpArbitraryFloatMulINTEL = 5848,
1975        OpArbitraryFloatDivINTEL = 5849,
1976        OpArbitraryFloatGTINTEL = 5850,
1977        OpArbitraryFloatGEINTEL = 5851,
1978        OpArbitraryFloatLTINTEL = 5852,
1979        OpArbitraryFloatLEINTEL = 5853,
1980        OpArbitraryFloatEQINTEL = 5854,
1981        OpArbitraryFloatRecipINTEL = 5855,
1982        OpArbitraryFloatRSqrtINTEL = 5856,
1983        OpArbitraryFloatCbrtINTEL = 5857,
1984        OpArbitraryFloatHypotINTEL = 5858,
1985        OpArbitraryFloatSqrtINTEL = 5859,
1986        OpArbitraryFloatLogINTEL = 5860,
1987        OpArbitraryFloatLog2INTEL = 5861,
1988        OpArbitraryFloatLog10INTEL = 5862,
1989        OpArbitraryFloatLog1pINTEL = 5863,
1990        OpArbitraryFloatExpINTEL = 5864,
1991        OpArbitraryFloatExp2INTEL = 5865,
1992        OpArbitraryFloatExp10INTEL = 5866,
1993        OpArbitraryFloatExpm1INTEL = 5867,
1994        OpArbitraryFloatSinINTEL = 5868,
1995        OpArbitraryFloatCosINTEL = 5869,
1996        OpArbitraryFloatSinCosINTEL = 5870,
1997        OpArbitraryFloatSinPiINTEL = 5871,
1998        OpArbitraryFloatCosPiINTEL = 5872,
1999        OpArbitraryFloatASinINTEL = 5873,
2000        OpArbitraryFloatASinPiINTEL = 5874,
2001        OpArbitraryFloatACosINTEL = 5875,
2002        OpArbitraryFloatACosPiINTEL = 5876,
2003        OpArbitraryFloatATanINTEL = 5877,
2004        OpArbitraryFloatATanPiINTEL = 5878,
2005        OpArbitraryFloatATan2INTEL = 5879,
2006        OpArbitraryFloatPowINTEL = 5880,
2007        OpArbitraryFloatPowRINTEL = 5881,
2008        OpArbitraryFloatPowNINTEL = 5882,
2009        OpLoopControlINTEL = 5887,
2010        OpAliasDomainDeclINTEL = 5911,
2011        OpAliasScopeDeclINTEL = 5912,
2012        OpAliasScopeListDeclINTEL = 5913,
2013        OpFixedSqrtINTEL = 5923,
2014        OpFixedRecipINTEL = 5924,
2015        OpFixedRsqrtINTEL = 5925,
2016        OpFixedSinINTEL = 5926,
2017        OpFixedCosINTEL = 5927,
2018        OpFixedSinCosINTEL = 5928,
2019        OpFixedSinPiINTEL = 5929,
2020        OpFixedCosPiINTEL = 5930,
2021        OpFixedSinCosPiINTEL = 5931,
2022        OpFixedLogINTEL = 5932,
2023        OpFixedExpINTEL = 5933,
2024        OpPtrCastToCrossWorkgroupINTEL = 5934,
2025        OpCrossWorkgroupCastToPtrINTEL = 5938,
2026        OpReadPipeBlockingINTEL = 5946,
2027        OpWritePipeBlockingINTEL = 5947,
2028        OpFPGARegINTEL = 5949,
2029        OpRayQueryGetRayTMinKHR = 6016,
2030        OpRayQueryGetRayFlagsKHR = 6017,
2031        OpRayQueryGetIntersectionTKHR = 6018,
2032        OpRayQueryGetIntersectionInstanceCustomIndexKHR = 6019,
2033        OpRayQueryGetIntersectionInstanceIdKHR = 6020,
2034        OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR = 6021,
2035        OpRayQueryGetIntersectionGeometryIndexKHR = 6022,
2036        OpRayQueryGetIntersectionPrimitiveIndexKHR = 6023,
2037        OpRayQueryGetIntersectionBarycentricsKHR = 6024,
2038        OpRayQueryGetIntersectionFrontFaceKHR = 6025,
2039        OpRayQueryGetIntersectionCandidateAABBOpaqueKHR = 6026,
2040        OpRayQueryGetIntersectionObjectRayDirectionKHR = 6027,
2041        OpRayQueryGetIntersectionObjectRayOriginKHR = 6028,
2042        OpRayQueryGetWorldRayDirectionKHR = 6029,
2043        OpRayQueryGetWorldRayOriginKHR = 6030,
2044        OpRayQueryGetIntersectionObjectToWorldKHR = 6031,
2045        OpRayQueryGetIntersectionWorldToObjectKHR = 6032,
2046        OpAtomicFAddEXT = 6035,
2047        OpTypeBufferSurfaceINTEL = 6086,
2048        OpTypeStructContinuedINTEL = 6090,
2049        OpConstantCompositeContinuedINTEL = 6091,
2050        OpSpecConstantCompositeContinuedINTEL = 6092,
2051        OpCompositeConstructContinuedINTEL = 6096,
2052        OpConvertFToBF16INTEL = 6116,
2053        OpConvertBF16ToFINTEL = 6117,
2054        OpControlBarrierArriveINTEL = 6142,
2055        OpControlBarrierWaitINTEL = 6143,
2056        OpGroupIMulKHR = 6401,
2057        OpGroupFMulKHR = 6402,
2058        OpGroupBitwiseAndKHR = 6403,
2059        OpGroupBitwiseOrKHR = 6404,
2060        OpGroupBitwiseXorKHR = 6405,
2061        OpGroupLogicalAndKHR = 6406,
2062        OpGroupLogicalOrKHR = 6407,
2063        OpGroupLogicalXorKHR = 6408,
2064        OpMaskedGatherINTEL = 6428,
2065        OpMaskedScatterINTEL = 6429,
2066    },
2067
2068}
2069
2070