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