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