65ea5368ba86453b95a21a8e7796a16170a03475
[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     AtomicFloat32AddEXT = 6033,
1056     AtomicFloat64AddEXT = 6034,
1057     LongConstantCompositeINTEL = 6089,
1058     AtomicFloat16AddEXT = 6095,
1059 }
1060
1061 enum RayFlagsShift : uint
1062 {
1063     OpaqueKHR = 0,
1064     NoOpaqueKHR = 1,
1065     TerminateOnFirstHitKHR = 2,
1066     SkipClosestHitShaderKHR = 3,
1067     CullBackFacingTrianglesKHR = 4,
1068     CullFrontFacingTrianglesKHR = 5,
1069     CullOpaqueKHR = 6,
1070     CullNoOpaqueKHR = 7,
1071     SkipTrianglesKHR = 8,
1072     SkipAABBsKHR = 9,
1073 }
1074
1075 enum RayFlagsMask : uint
1076 {
1077     MaskNone = 0,
1078     OpaqueKHR = 0x00000001,
1079     NoOpaqueKHR = 0x00000002,
1080     TerminateOnFirstHitKHR = 0x00000004,
1081     SkipClosestHitShaderKHR = 0x00000008,
1082     CullBackFacingTrianglesKHR = 0x00000010,
1083     CullFrontFacingTrianglesKHR = 0x00000020,
1084     CullOpaqueKHR = 0x00000040,
1085     CullNoOpaqueKHR = 0x00000080,
1086     SkipTrianglesKHR = 0x00000100,
1087     SkipAABBsKHR = 0x00000200,
1088 }
1089
1090 enum RayQueryIntersection : uint
1091 {
1092     RayQueryCandidateIntersectionKHR = 0,
1093     RayQueryCommittedIntersectionKHR = 1,
1094 }
1095
1096 enum RayQueryCommittedIntersectionType : uint
1097 {
1098     RayQueryCommittedIntersectionNoneKHR = 0,
1099     RayQueryCommittedIntersectionTriangleKHR = 1,
1100     RayQueryCommittedIntersectionGeneratedKHR = 2,
1101 }
1102
1103 enum RayQueryCandidateIntersectionType : uint
1104 {
1105     RayQueryCandidateIntersectionTriangleKHR = 0,
1106     RayQueryCandidateIntersectionAABBKHR = 1,
1107 }
1108
1109 enum FragmentShadingRateShift : uint
1110 {
1111     Vertical2Pixels = 0,
1112     Vertical4Pixels = 1,
1113     Horizontal2Pixels = 2,
1114     Horizontal4Pixels = 3,
1115 }
1116
1117 enum FragmentShadingRateMask : uint
1118 {
1119     MaskNone = 0,
1120     Vertical2Pixels = 0x00000001,
1121     Vertical4Pixels = 0x00000002,
1122     Horizontal2Pixels = 0x00000004,
1123     Horizontal4Pixels = 0x00000008,
1124 }
1125
1126 enum FPDenormMode : uint
1127 {
1128     Preserve = 0,
1129     FlushToZero = 1,
1130 }
1131
1132 enum FPOperationMode : uint
1133 {
1134     IEEE = 0,
1135     ALT = 1,
1136 }
1137
1138 enum QuantizationModes : uint
1139 {
1140     TRN = 0,
1141     TRN_ZERO = 1,
1142     RND = 2,
1143     RND_ZERO = 3,
1144     RND_INF = 4,
1145     RND_MIN_INF = 5,
1146     RND_CONV = 6,
1147     RND_CONV_ODD = 7,
1148 }
1149
1150 enum OverflowModes : uint
1151 {
1152     WRAP = 0,
1153     SAT = 1,
1154     SAT_ZERO = 2,
1155     SAT_SYM = 3,
1156 }
1157
1158 enum PackedVectorFormat : uint
1159 {
1160     PackedVectorFormat4x8BitKHR = 0,
1161 }
1162
1163 enum Op : uint
1164 {
1165     OpNop = 0,
1166     OpUndef = 1,
1167     OpSourceContinued = 2,
1168     OpSource = 3,
1169     OpSourceExtension = 4,
1170     OpName = 5,
1171     OpMemberName = 6,
1172     OpString = 7,
1173     OpLine = 8,
1174     OpExtension = 10,
1175     OpExtInstImport = 11,
1176     OpExtInst = 12,
1177     OpMemoryModel = 14,
1178     OpEntryPoint = 15,
1179     OpExecutionMode = 16,
1180     OpCapability = 17,
1181     OpTypeVoid = 19,
1182     OpTypeBool = 20,
1183     OpTypeInt = 21,
1184     OpTypeFloat = 22,
1185     OpTypeVector = 23,
1186     OpTypeMatrix = 24,
1187     OpTypeImage = 25,
1188     OpTypeSampler = 26,
1189     OpTypeSampledImage = 27,
1190     OpTypeArray = 28,
1191     OpTypeRuntimeArray = 29,
1192     OpTypeStruct = 30,
1193     OpTypeOpaque = 31,
1194     OpTypePointer = 32,
1195     OpTypeFunction = 33,
1196     OpTypeEvent = 34,
1197     OpTypeDeviceEvent = 35,
1198     OpTypeReserveId = 36,
1199     OpTypeQueue = 37,
1200     OpTypePipe = 38,
1201     OpTypeForwardPointer = 39,
1202     OpConstantTrue = 41,
1203     OpConstantFalse = 42,
1204     OpConstant = 43,
1205     OpConstantComposite = 44,
1206     OpConstantSampler = 45,
1207     OpConstantNull = 46,
1208     OpSpecConstantTrue = 48,
1209     OpSpecConstantFalse = 49,
1210     OpSpecConstant = 50,
1211     OpSpecConstantComposite = 51,
1212     OpSpecConstantOp = 52,
1213     OpFunction = 54,
1214     OpFunctionParameter = 55,
1215     OpFunctionEnd = 56,
1216     OpFunctionCall = 57,
1217     OpVariable = 59,
1218     OpImageTexelPointer = 60,
1219     OpLoad = 61,
1220     OpStore = 62,
1221     OpCopyMemory = 63,
1222     OpCopyMemorySized = 64,
1223     OpAccessChain = 65,
1224     OpInBoundsAccessChain = 66,
1225     OpPtrAccessChain = 67,
1226     OpArrayLength = 68,
1227     OpGenericPtrMemSemantics = 69,
1228     OpInBoundsPtrAccessChain = 70,
1229     OpDecorate = 71,
1230     OpMemberDecorate = 72,
1231     OpDecorationGroup = 73,
1232     OpGroupDecorate = 74,
1233     OpGroupMemberDecorate = 75,
1234     OpVectorExtractDynamic = 77,
1235     OpVectorInsertDynamic = 78,
1236     OpVectorShuffle = 79,
1237     OpCompositeConstruct = 80,
1238     OpCompositeExtract = 81,
1239     OpCompositeInsert = 82,
1240     OpCopyObject = 83,
1241     OpTranspose = 84,
1242     OpSampledImage = 86,
1243     OpImageSampleImplicitLod = 87,
1244     OpImageSampleExplicitLod = 88,
1245     OpImageSampleDrefImplicitLod = 89,
1246     OpImageSampleDrefExplicitLod = 90,
1247     OpImageSampleProjImplicitLod = 91,
1248     OpImageSampleProjExplicitLod = 92,
1249     OpImageSampleProjDrefImplicitLod = 93,
1250     OpImageSampleProjDrefExplicitLod = 94,
1251     OpImageFetch = 95,
1252     OpImageGather = 96,
1253     OpImageDrefGather = 97,
1254     OpImageRead = 98,
1255     OpImageWrite = 99,
1256     OpImage = 100,
1257     OpImageQueryFormat = 101,
1258     OpImageQueryOrder = 102,
1259     OpImageQuerySizeLod = 103,
1260     OpImageQuerySize = 104,
1261     OpImageQueryLod = 105,
1262     OpImageQueryLevels = 106,
1263     OpImageQuerySamples = 107,
1264     OpConvertFToU = 109,
1265     OpConvertFToS = 110,
1266     OpConvertSToF = 111,
1267     OpConvertUToF = 112,
1268     OpUConvert = 113,
1269     OpSConvert = 114,
1270     OpFConvert = 115,
1271     OpQuantizeToF16 = 116,
1272     OpConvertPtrToU = 117,
1273     OpSatConvertSToU = 118,
1274     OpSatConvertUToS = 119,
1275     OpConvertUToPtr = 120,
1276     OpPtrCastToGeneric = 121,
1277     OpGenericCastToPtr = 122,
1278     OpGenericCastToPtrExplicit = 123,
1279     OpBitcast = 124,
1280     OpSNegate = 126,
1281     OpFNegate = 127,
1282     OpIAdd = 128,
1283     OpFAdd = 129,
1284     OpISub = 130,
1285     OpFSub = 131,
1286     OpIMul = 132,
1287     OpFMul = 133,
1288     OpUDiv = 134,
1289     OpSDiv = 135,
1290     OpFDiv = 136,
1291     OpUMod = 137,
1292     OpSRem = 138,
1293     OpSMod = 139,
1294     OpFRem = 140,
1295     OpFMod = 141,
1296     OpVectorTimesScalar = 142,
1297     OpMatrixTimesScalar = 143,
1298     OpVectorTimesMatrix = 144,
1299     OpMatrixTimesVector = 145,
1300     OpMatrixTimesMatrix = 146,
1301     OpOuterProduct = 147,
1302     OpDot = 148,
1303     OpIAddCarry = 149,
1304     OpISubBorrow = 150,
1305     OpUMulExtended = 151,
1306     OpSMulExtended = 152,
1307     OpAny = 154,
1308     OpAll = 155,
1309     OpIsNan = 156,
1310     OpIsInf = 157,
1311     OpIsFinite = 158,
1312     OpIsNormal = 159,
1313     OpSignBitSet = 160,
1314     OpLessOrGreater = 161,
1315     OpOrdered = 162,
1316     OpUnordered = 163,
1317     OpLogicalEqual = 164,
1318     OpLogicalNotEqual = 165,
1319     OpLogicalOr = 166,
1320     OpLogicalAnd = 167,
1321     OpLogicalNot = 168,
1322     OpSelect = 169,
1323     OpIEqual = 170,
1324     OpINotEqual = 171,
1325     OpUGreaterThan = 172,
1326     OpSGreaterThan = 173,
1327     OpUGreaterThanEqual = 174,
1328     OpSGreaterThanEqual = 175,
1329     OpULessThan = 176,
1330     OpSLessThan = 177,
1331     OpULessThanEqual = 178,
1332     OpSLessThanEqual = 179,
1333     OpFOrdEqual = 180,
1334     OpFUnordEqual = 181,
1335     OpFOrdNotEqual = 182,
1336     OpFUnordNotEqual = 183,
1337     OpFOrdLessThan = 184,
1338     OpFUnordLessThan = 185,
1339     OpFOrdGreaterThan = 186,
1340     OpFUnordGreaterThan = 187,
1341     OpFOrdLessThanEqual = 188,
1342     OpFUnordLessThanEqual = 189,
1343     OpFOrdGreaterThanEqual = 190,
1344     OpFUnordGreaterThanEqual = 191,
1345     OpShiftRightLogical = 194,
1346     OpShiftRightArithmetic = 195,
1347     OpShiftLeftLogical = 196,
1348     OpBitwiseOr = 197,
1349     OpBitwiseXor = 198,
1350     OpBitwiseAnd = 199,
1351     OpNot = 200,
1352     OpBitFieldInsert = 201,
1353     OpBitFieldSExtract = 202,
1354     OpBitFieldUExtract = 203,
1355     OpBitReverse = 204,
1356     OpBitCount = 205,
1357     OpDPdx = 207,
1358     OpDPdy = 208,
1359     OpFwidth = 209,
1360     OpDPdxFine = 210,
1361     OpDPdyFine = 211,
1362     OpFwidthFine = 212,
1363     OpDPdxCoarse = 213,
1364     OpDPdyCoarse = 214,
1365     OpFwidthCoarse = 215,
1366     OpEmitVertex = 218,
1367     OpEndPrimitive = 219,
1368     OpEmitStreamVertex = 220,
1369     OpEndStreamPrimitive = 221,
1370     OpControlBarrier = 224,
1371     OpMemoryBarrier = 225,
1372     OpAtomicLoad = 227,
1373     OpAtomicStore = 228,
1374     OpAtomicExchange = 229,
1375     OpAtomicCompareExchange = 230,
1376     OpAtomicCompareExchangeWeak = 231,
1377     OpAtomicIIncrement = 232,
1378     OpAtomicIDecrement = 233,
1379     OpAtomicIAdd = 234,
1380     OpAtomicISub = 235,
1381     OpAtomicSMin = 236,
1382     OpAtomicUMin = 237,
1383     OpAtomicSMax = 238,
1384     OpAtomicUMax = 239,
1385     OpAtomicAnd = 240,
1386     OpAtomicOr = 241,
1387     OpAtomicXor = 242,
1388     OpPhi = 245,
1389     OpLoopMerge = 246,
1390     OpSelectionMerge = 247,
1391     OpLabel = 248,
1392     OpBranch = 249,
1393     OpBranchConditional = 250,
1394     OpSwitch = 251,
1395     OpKill = 252,
1396     OpReturn = 253,
1397     OpReturnValue = 254,
1398     OpUnreachable = 255,
1399     OpLifetimeStart = 256,
1400     OpLifetimeStop = 257,
1401     OpGroupAsyncCopy = 259,
1402     OpGroupWaitEvents = 260,
1403     OpGroupAll = 261,
1404     OpGroupAny = 262,
1405     OpGroupBroadcast = 263,
1406     OpGroupIAdd = 264,
1407     OpGroupFAdd = 265,
1408     OpGroupFMin = 266,
1409     OpGroupUMin = 267,
1410     OpGroupSMin = 268,
1411     OpGroupFMax = 269,
1412     OpGroupUMax = 270,
1413     OpGroupSMax = 271,
1414     OpReadPipe = 274,
1415     OpWritePipe = 275,
1416     OpReservedReadPipe = 276,
1417     OpReservedWritePipe = 277,
1418     OpReserveReadPipePackets = 278,
1419     OpReserveWritePipePackets = 279,
1420     OpCommitReadPipe = 280,
1421     OpCommitWritePipe = 281,
1422     OpIsValidReserveId = 282,
1423     OpGetNumPipePackets = 283,
1424     OpGetMaxPipePackets = 284,
1425     OpGroupReserveReadPipePackets = 285,
1426     OpGroupReserveWritePipePackets = 286,
1427     OpGroupCommitReadPipe = 287,
1428     OpGroupCommitWritePipe = 288,
1429     OpEnqueueMarker = 291,
1430     OpEnqueueKernel = 292,
1431     OpGetKernelNDrangeSubGroupCount = 293,
1432     OpGetKernelNDrangeMaxSubGroupSize = 294,
1433     OpGetKernelWorkGroupSize = 295,
1434     OpGetKernelPreferredWorkGroupSizeMultiple = 296,
1435     OpRetainEvent = 297,
1436     OpReleaseEvent = 298,
1437     OpCreateUserEvent = 299,
1438     OpIsValidEvent = 300,
1439     OpSetUserEventStatus = 301,
1440     OpCaptureEventProfilingInfo = 302,
1441     OpGetDefaultQueue = 303,
1442     OpBuildNDRange = 304,
1443     OpImageSparseSampleImplicitLod = 305,
1444     OpImageSparseSampleExplicitLod = 306,
1445     OpImageSparseSampleDrefImplicitLod = 307,
1446     OpImageSparseSampleDrefExplicitLod = 308,
1447     OpImageSparseSampleProjImplicitLod = 309,
1448     OpImageSparseSampleProjExplicitLod = 310,
1449     OpImageSparseSampleProjDrefImplicitLod = 311,
1450     OpImageSparseSampleProjDrefExplicitLod = 312,
1451     OpImageSparseFetch = 313,
1452     OpImageSparseGather = 314,
1453     OpImageSparseDrefGather = 315,
1454     OpImageSparseTexelsResident = 316,
1455     OpNoLine = 317,
1456     OpAtomicFlagTestAndSet = 318,
1457     OpAtomicFlagClear = 319,
1458     OpImageSparseRead = 320,
1459     OpSizeOf = 321,
1460     OpTypePipeStorage = 322,
1461     OpConstantPipeStorage = 323,
1462     OpCreatePipeFromPipeStorage = 324,
1463     OpGetKernelLocalSizeForSubgroupCount = 325,
1464     OpGetKernelMaxNumSubgroups = 326,
1465     OpTypeNamedBarrier = 327,
1466     OpNamedBarrierInitialize = 328,
1467     OpMemoryNamedBarrier = 329,
1468     OpModuleProcessed = 330,
1469     OpExecutionModeId = 331,
1470     OpDecorateId = 332,
1471     OpGroupNonUniformElect = 333,
1472     OpGroupNonUniformAll = 334,
1473     OpGroupNonUniformAny = 335,
1474     OpGroupNonUniformAllEqual = 336,
1475     OpGroupNonUniformBroadcast = 337,
1476     OpGroupNonUniformBroadcastFirst = 338,
1477     OpGroupNonUniformBallot = 339,
1478     OpGroupNonUniformInverseBallot = 340,
1479     OpGroupNonUniformBallotBitExtract = 341,
1480     OpGroupNonUniformBallotBitCount = 342,
1481     OpGroupNonUniformBallotFindLSB = 343,
1482     OpGroupNonUniformBallotFindMSB = 344,
1483     OpGroupNonUniformShuffle = 345,
1484     OpGroupNonUniformShuffleXor = 346,
1485     OpGroupNonUniformShuffleUp = 347,
1486     OpGroupNonUniformShuffleDown = 348,
1487     OpGroupNonUniformIAdd = 349,
1488     OpGroupNonUniformFAdd = 350,
1489     OpGroupNonUniformIMul = 351,
1490     OpGroupNonUniformFMul = 352,
1491     OpGroupNonUniformSMin = 353,
1492     OpGroupNonUniformUMin = 354,
1493     OpGroupNonUniformFMin = 355,
1494     OpGroupNonUniformSMax = 356,
1495     OpGroupNonUniformUMax = 357,
1496     OpGroupNonUniformFMax = 358,
1497     OpGroupNonUniformBitwiseAnd = 359,
1498     OpGroupNonUniformBitwiseOr = 360,
1499     OpGroupNonUniformBitwiseXor = 361,
1500     OpGroupNonUniformLogicalAnd = 362,
1501     OpGroupNonUniformLogicalOr = 363,
1502     OpGroupNonUniformLogicalXor = 364,
1503     OpGroupNonUniformQuadBroadcast = 365,
1504     OpGroupNonUniformQuadSwap = 366,
1505     OpCopyLogical = 400,
1506     OpPtrEqual = 401,
1507     OpPtrNotEqual = 402,
1508     OpPtrDiff = 403,
1509     OpTerminateInvocation = 4416,
1510     OpSubgroupBallotKHR = 4421,
1511     OpSubgroupFirstInvocationKHR = 4422,
1512     OpSubgroupAllKHR = 4428,
1513     OpSubgroupAnyKHR = 4429,
1514     OpSubgroupAllEqualKHR = 4430,
1515     OpSubgroupReadInvocationKHR = 4432,
1516     OpTraceRayKHR = 4445,
1517     OpExecuteCallableKHR = 4446,
1518     OpConvertUToAccelerationStructureKHR = 4447,
1519     OpIgnoreIntersectionKHR = 4448,
1520     OpTerminateRayKHR = 4449,
1521     OpSDotKHR = 4450,
1522     OpUDotKHR = 4451,
1523     OpSUDotKHR = 4452,
1524     OpSDotAccSatKHR = 4453,
1525     OpUDotAccSatKHR = 4454,
1526     OpSUDotAccSatKHR = 4455,
1527     OpTypeRayQueryKHR = 4472,
1528     OpRayQueryInitializeKHR = 4473,
1529     OpRayQueryTerminateKHR = 4474,
1530     OpRayQueryGenerateIntersectionKHR = 4475,
1531     OpRayQueryConfirmIntersectionKHR = 4476,
1532     OpRayQueryProceedKHR = 4477,
1533     OpRayQueryGetIntersectionTypeKHR = 4479,
1534     OpGroupIAddNonUniformAMD = 5000,
1535     OpGroupFAddNonUniformAMD = 5001,
1536     OpGroupFMinNonUniformAMD = 5002,
1537     OpGroupUMinNonUniformAMD = 5003,
1538     OpGroupSMinNonUniformAMD = 5004,
1539     OpGroupFMaxNonUniformAMD = 5005,
1540     OpGroupUMaxNonUniformAMD = 5006,
1541     OpGroupSMaxNonUniformAMD = 5007,
1542     OpFragmentMaskFetchAMD = 5011,
1543     OpFragmentFetchAMD = 5012,
1544     OpReadClockKHR = 5056,
1545     OpImageSampleFootprintNV = 5283,
1546     OpGroupNonUniformPartitionNV = 5296,
1547     OpWritePackedPrimitiveIndices4x8NV = 5299,
1548     OpReportIntersectionKHR = 5334,
1549     OpReportIntersectionNV = 5334,
1550     OpIgnoreIntersectionNV = 5335,
1551     OpTerminateRayNV = 5336,
1552     OpTraceNV = 5337,
1553     OpTypeAccelerationStructureKHR = 5341,
1554     OpTypeAccelerationStructureNV = 5341,
1555     OpExecuteCallableNV = 5344,
1556     OpTypeCooperativeMatrixNV = 5358,
1557     OpCooperativeMatrixLoadNV = 5359,
1558     OpCooperativeMatrixStoreNV = 5360,
1559     OpCooperativeMatrixMulAddNV = 5361,
1560     OpCooperativeMatrixLengthNV = 5362,
1561     OpBeginInvocationInterlockEXT = 5364,
1562     OpEndInvocationInterlockEXT = 5365,
1563     OpDemoteToHelperInvocationEXT = 5380,
1564     OpIsHelperInvocationEXT = 5381,
1565     OpSubgroupShuffleINTEL = 5571,
1566     OpSubgroupShuffleDownINTEL = 5572,
1567     OpSubgroupShuffleUpINTEL = 5573,
1568     OpSubgroupShuffleXorINTEL = 5574,
1569     OpSubgroupBlockReadINTEL = 5575,
1570     OpSubgroupBlockWriteINTEL = 5576,
1571     OpSubgroupImageBlockReadINTEL = 5577,
1572     OpSubgroupImageBlockWriteINTEL = 5578,
1573     OpSubgroupImageMediaBlockReadINTEL = 5580,
1574     OpSubgroupImageMediaBlockWriteINTEL = 5581,
1575     OpUCountLeadingZerosINTEL = 5585,
1576     OpUCountTrailingZerosINTEL = 5586,
1577     OpAbsISubINTEL = 5587,
1578     OpAbsUSubINTEL = 5588,
1579     OpIAddSatINTEL = 5589,
1580     OpUAddSatINTEL = 5590,
1581     OpIAverageINTEL = 5591,
1582     OpUAverageINTEL = 5592,
1583     OpIAverageRoundedINTEL = 5593,
1584     OpUAverageRoundedINTEL = 5594,
1585     OpISubSatINTEL = 5595,
1586     OpUSubSatINTEL = 5596,
1587     OpIMul32x16INTEL = 5597,
1588     OpUMul32x16INTEL = 5598,
1589     OpConstFunctionPointerINTEL = 5600,
1590     OpFunctionPointerCallINTEL = 5601,
1591     OpAsmTargetINTEL = 5609,
1592     OpAsmINTEL = 5610,
1593     OpAsmCallINTEL = 5611,
1594     OpAtomicFMinEXT = 5614,
1595     OpAtomicFMaxEXT = 5615,
1596     OpAssumeTrueKHR = 5630,
1597     OpExpectKHR = 5631,
1598     OpDecorateString = 5632,
1599     OpDecorateStringGOOGLE = 5632,
1600     OpMemberDecorateString = 5633,
1601     OpMemberDecorateStringGOOGLE = 5633,
1602     OpVmeImageINTEL = 5699,
1603     OpTypeVmeImageINTEL = 5700,
1604     OpTypeAvcImePayloadINTEL = 5701,
1605     OpTypeAvcRefPayloadINTEL = 5702,
1606     OpTypeAvcSicPayloadINTEL = 5703,
1607     OpTypeAvcMcePayloadINTEL = 5704,
1608     OpTypeAvcMceResultINTEL = 5705,
1609     OpTypeAvcImeResultINTEL = 5706,
1610     OpTypeAvcImeResultSingleReferenceStreamoutINTEL = 5707,
1611     OpTypeAvcImeResultDualReferenceStreamoutINTEL = 5708,
1612     OpTypeAvcImeSingleReferenceStreaminINTEL = 5709,
1613     OpTypeAvcImeDualReferenceStreaminINTEL = 5710,
1614     OpTypeAvcRefResultINTEL = 5711,
1615     OpTypeAvcSicResultINTEL = 5712,
1616     OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL = 5713,
1617     OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL = 5714,
1618     OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL = 5715,
1619     OpSubgroupAvcMceSetInterShapePenaltyINTEL = 5716,
1620     OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL = 5717,
1621     OpSubgroupAvcMceSetInterDirectionPenaltyINTEL = 5718,
1622     OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL = 5719,
1623     OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL = 5720,
1624     OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL = 5721,
1625     OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL = 5722,
1626     OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL = 5723,
1627     OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL = 5724,
1628     OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL = 5725,
1629     OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL = 5726,
1630     OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL = 5727,
1631     OpSubgroupAvcMceSetAcOnlyHaarINTEL = 5728,
1632     OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL = 5729,
1633     OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL = 5730,
1634     OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL = 5731,
1635     OpSubgroupAvcMceConvertToImePayloadINTEL = 5732,
1636     OpSubgroupAvcMceConvertToImeResultINTEL = 5733,
1637     OpSubgroupAvcMceConvertToRefPayloadINTEL = 5734,
1638     OpSubgroupAvcMceConvertToRefResultINTEL = 5735,
1639     OpSubgroupAvcMceConvertToSicPayloadINTEL = 5736,
1640     OpSubgroupAvcMceConvertToSicResultINTEL = 5737,
1641     OpSubgroupAvcMceGetMotionVectorsINTEL = 5738,
1642     OpSubgroupAvcMceGetInterDistortionsINTEL = 5739,
1643     OpSubgroupAvcMceGetBestInterDistortionsINTEL = 5740,
1644     OpSubgroupAvcMceGetInterMajorShapeINTEL = 5741,
1645     OpSubgroupAvcMceGetInterMinorShapeINTEL = 5742,
1646     OpSubgroupAvcMceGetInterDirectionsINTEL = 5743,
1647     OpSubgroupAvcMceGetInterMotionVectorCountINTEL = 5744,
1648     OpSubgroupAvcMceGetInterReferenceIdsINTEL = 5745,
1649     OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL = 5746,
1650     OpSubgroupAvcImeInitializeINTEL = 5747,
1651     OpSubgroupAvcImeSetSingleReferenceINTEL = 5748,
1652     OpSubgroupAvcImeSetDualReferenceINTEL = 5749,
1653     OpSubgroupAvcImeRefWindowSizeINTEL = 5750,
1654     OpSubgroupAvcImeAdjustRefOffsetINTEL = 5751,
1655     OpSubgroupAvcImeConvertToMcePayloadINTEL = 5752,
1656     OpSubgroupAvcImeSetMaxMotionVectorCountINTEL = 5753,
1657     OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL = 5754,
1658     OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL = 5755,
1659     OpSubgroupAvcImeSetWeightedSadINTEL = 5756,
1660     OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL = 5757,
1661     OpSubgroupAvcImeEvaluateWithDualReferenceINTEL = 5758,
1662     OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL = 5759,
1663     OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL = 5760,
1664     OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL = 5761,
1665     OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL = 5762,
1666     OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL = 5763,
1667     OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL = 5764,
1668     OpSubgroupAvcImeConvertToMceResultINTEL = 5765,
1669     OpSubgroupAvcImeGetSingleReferenceStreaminINTEL = 5766,
1670     OpSubgroupAvcImeGetDualReferenceStreaminINTEL = 5767,
1671     OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL = 5768,
1672     OpSubgroupAvcImeStripDualReferenceStreamoutINTEL = 5769,
1673     OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL = 5770,
1674     OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL = 5771,
1675     OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL = 5772,
1676     OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL = 5773,
1677     OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL = 5774,
1678     OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL = 5775,
1679     OpSubgroupAvcImeGetBorderReachedINTEL = 5776,
1680     OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL = 5777,
1681     OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL = 5778,
1682     OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL = 5779,
1683     OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL = 5780,
1684     OpSubgroupAvcFmeInitializeINTEL = 5781,
1685     OpSubgroupAvcBmeInitializeINTEL = 5782,
1686     OpSubgroupAvcRefConvertToMcePayloadINTEL = 5783,
1687     OpSubgroupAvcRefSetBidirectionalMixDisableINTEL = 5784,
1688     OpSubgroupAvcRefSetBilinearFilterEnableINTEL = 5785,
1689     OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL = 5786,
1690     OpSubgroupAvcRefEvaluateWithDualReferenceINTEL = 5787,
1691     OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL = 5788,
1692     OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL = 5789,
1693     OpSubgroupAvcRefConvertToMceResultINTEL = 5790,
1694     OpSubgroupAvcSicInitializeINTEL = 5791,
1695     OpSubgroupAvcSicConfigureSkcINTEL = 5792,
1696     OpSubgroupAvcSicConfigureIpeLumaINTEL = 5793,
1697     OpSubgroupAvcSicConfigureIpeLumaChromaINTEL = 5794,
1698     OpSubgroupAvcSicGetMotionVectorMaskINTEL = 5795,
1699     OpSubgroupAvcSicConvertToMcePayloadINTEL = 5796,
1700     OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL = 5797,
1701     OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL = 5798,
1702     OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL = 5799,
1703     OpSubgroupAvcSicSetBilinearFilterEnableINTEL = 5800,
1704     OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL = 5801,
1705     OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL = 5802,
1706     OpSubgroupAvcSicEvaluateIpeINTEL = 5803,
1707     OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL = 5804,
1708     OpSubgroupAvcSicEvaluateWithDualReferenceINTEL = 5805,
1709     OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL = 5806,
1710     OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL = 5807,
1711     OpSubgroupAvcSicConvertToMceResultINTEL = 5808,
1712     OpSubgroupAvcSicGetIpeLumaShapeINTEL = 5809,
1713     OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL = 5810,
1714     OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL = 5811,
1715     OpSubgroupAvcSicGetPackedIpeLumaModesINTEL = 5812,
1716     OpSubgroupAvcSicGetIpeChromaModeINTEL = 5813,
1717     OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL = 5814,
1718     OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL = 5815,
1719     OpSubgroupAvcSicGetInterRawSadsINTEL = 5816,
1720     OpVariableLengthArrayINTEL = 5818,
1721     OpSaveMemoryINTEL = 5819,
1722     OpRestoreMemoryINTEL = 5820,
1723     OpArbitraryFloatSinCosPiINTEL = 5840,
1724     OpArbitraryFloatCastINTEL = 5841,
1725     OpArbitraryFloatCastFromIntINTEL = 5842,
1726     OpArbitraryFloatCastToIntINTEL = 5843,
1727     OpArbitraryFloatAddINTEL = 5846,
1728     OpArbitraryFloatSubINTEL = 5847,
1729     OpArbitraryFloatMulINTEL = 5848,
1730     OpArbitraryFloatDivINTEL = 5849,
1731     OpArbitraryFloatGTINTEL = 5850,
1732     OpArbitraryFloatGEINTEL = 5851,
1733     OpArbitraryFloatLTINTEL = 5852,
1734     OpArbitraryFloatLEINTEL = 5853,
1735     OpArbitraryFloatEQINTEL = 5854,
1736     OpArbitraryFloatRecipINTEL = 5855,
1737     OpArbitraryFloatRSqrtINTEL = 5856,
1738     OpArbitraryFloatCbrtINTEL = 5857,
1739     OpArbitraryFloatHypotINTEL = 5858,
1740     OpArbitraryFloatSqrtINTEL = 5859,
1741     OpArbitraryFloatLogINTEL = 5860,
1742     OpArbitraryFloatLog2INTEL = 5861,
1743     OpArbitraryFloatLog10INTEL = 5862,
1744     OpArbitraryFloatLog1pINTEL = 5863,
1745     OpArbitraryFloatExpINTEL = 5864,
1746     OpArbitraryFloatExp2INTEL = 5865,
1747     OpArbitraryFloatExp10INTEL = 5866,
1748     OpArbitraryFloatExpm1INTEL = 5867,
1749     OpArbitraryFloatSinINTEL = 5868,
1750     OpArbitraryFloatCosINTEL = 5869,
1751     OpArbitraryFloatSinCosINTEL = 5870,
1752     OpArbitraryFloatSinPiINTEL = 5871,
1753     OpArbitraryFloatCosPiINTEL = 5872,
1754     OpArbitraryFloatASinINTEL = 5873,
1755     OpArbitraryFloatASinPiINTEL = 5874,
1756     OpArbitraryFloatACosINTEL = 5875,
1757     OpArbitraryFloatACosPiINTEL = 5876,
1758     OpArbitraryFloatATanINTEL = 5877,
1759     OpArbitraryFloatATanPiINTEL = 5878,
1760     OpArbitraryFloatATan2INTEL = 5879,
1761     OpArbitraryFloatPowINTEL = 5880,
1762     OpArbitraryFloatPowRINTEL = 5881,
1763     OpArbitraryFloatPowNINTEL = 5882,
1764     OpLoopControlINTEL = 5887,
1765     OpFixedSqrtINTEL = 5923,
1766     OpFixedRecipINTEL = 5924,
1767     OpFixedRsqrtINTEL = 5925,
1768     OpFixedSinINTEL = 5926,
1769     OpFixedCosINTEL = 5927,
1770     OpFixedSinCosINTEL = 5928,
1771     OpFixedSinPiINTEL = 5929,
1772     OpFixedCosPiINTEL = 5930,
1773     OpFixedSinCosPiINTEL = 5931,
1774     OpFixedLogINTEL = 5932,
1775     OpFixedExpINTEL = 5933,
1776     OpPtrCastToCrossWorkgroupINTEL = 5934,
1777     OpCrossWorkgroupCastToPtrINTEL = 5938,
1778     OpReadPipeBlockingINTEL = 5946,
1779     OpWritePipeBlockingINTEL = 5947,
1780     OpFPGARegINTEL = 5949,
1781     OpRayQueryGetRayTMinKHR = 6016,
1782     OpRayQueryGetRayFlagsKHR = 6017,
1783     OpRayQueryGetIntersectionTKHR = 6018,
1784     OpRayQueryGetIntersectionInstanceCustomIndexKHR = 6019,
1785     OpRayQueryGetIntersectionInstanceIdKHR = 6020,
1786     OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR = 6021,
1787     OpRayQueryGetIntersectionGeometryIndexKHR = 6022,
1788     OpRayQueryGetIntersectionPrimitiveIndexKHR = 6023,
1789     OpRayQueryGetIntersectionBarycentricsKHR = 6024,
1790     OpRayQueryGetIntersectionFrontFaceKHR = 6025,
1791     OpRayQueryGetIntersectionCandidateAABBOpaqueKHR = 6026,
1792     OpRayQueryGetIntersectionObjectRayDirectionKHR = 6027,
1793     OpRayQueryGetIntersectionObjectRayOriginKHR = 6028,
1794     OpRayQueryGetWorldRayDirectionKHR = 6029,
1795     OpRayQueryGetWorldRayOriginKHR = 6030,
1796     OpRayQueryGetIntersectionObjectToWorldKHR = 6031,
1797     OpRayQueryGetIntersectionWorldToObjectKHR = 6032,
1798     OpAtomicFAddEXT = 6035,
1799     OpTypeBufferSurfaceINTEL = 6086,
1800     OpTypeStructContinuedINTEL = 6090,
1801     OpConstantCompositeContinuedINTEL = 6091,
1802     OpSpecConstantCompositeContinuedINTEL = 6092,
1803 }
1804
1805