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