Merge pull request #39 from bashbaug/intel_enum_block
[platform/upstream/SPIRV-Headers.git] / include / spirv / 1.1 / spirv.py
1 # Copyright (c) 2014-2017 The Khronos Group Inc.
2
3 # Permission is hereby granted, free of charge, to any person obtaining a copy
4 # of this software and/or associated documentation files (the "Materials"),
5 # to deal in the Materials without restriction, including without limitation
6 # the rights to use, copy, modify, merge, publish, distribute, sublicense,
7 # and/or sell copies of the Materials, and to permit persons to whom the
8 # Materials are furnished to do so, subject to the following conditions:
9
10 # The above copyright notice and this permission notice shall be included in
11 # all copies or substantial portions of the Materials.
12
13 # MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS
14 # STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND
15 # HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/ 
16
17 # THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
18 # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
20 # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
22 # FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS
23 # IN THE MATERIALS.
24
25 # This header is automatically generated by the same tool that creates
26 # the Binary Section of the SPIR-V specification.
27
28 # Enumeration tokens for SPIR-V, in various styles:
29 #   C, C++, C++11, JSON, Lua, Python
30
31 # - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL
32 # - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL
33 # - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL
34 # - Lua will use tables, e.g.: spv.SourceLanguage.GLSL
35 # - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL']
36
37 # Some tokens act like mask values, which can be OR'd together,
38 # while others are mutually exclusive.  The mask-like ones have
39 # "Mask" in their name, and a parallel enum that has the shift
40 # amount (1 << x) for each corresponding enumerant.
41
42 spv = {
43     'MagicNumber' : 0x07230203,
44     'Version' : 0x00010100,
45     'Revision' : 7,
46     'OpCodeMask' : 0xffff,
47     'WordCountShift' : 16,
48
49     'SourceLanguage' : {
50         'Unknown' : 0,
51         'ESSL' : 1,
52         'GLSL' : 2,
53         'OpenCL_C' : 3,
54         'OpenCL_CPP' : 4,
55         'HLSL' : 5,
56     },
57
58     'ExecutionModel' : {
59         'Vertex' : 0,
60         'TessellationControl' : 1,
61         'TessellationEvaluation' : 2,
62         'Geometry' : 3,
63         'Fragment' : 4,
64         'GLCompute' : 5,
65         'Kernel' : 6,
66     },
67
68     'AddressingModel' : {
69         'Logical' : 0,
70         'Physical32' : 1,
71         'Physical64' : 2,
72     },
73
74     'MemoryModel' : {
75         'Simple' : 0,
76         'GLSL450' : 1,
77         'OpenCL' : 2,
78     },
79
80     'ExecutionMode' : {
81         'Invocations' : 0,
82         'SpacingEqual' : 1,
83         'SpacingFractionalEven' : 2,
84         'SpacingFractionalOdd' : 3,
85         'VertexOrderCw' : 4,
86         'VertexOrderCcw' : 5,
87         'PixelCenterInteger' : 6,
88         'OriginUpperLeft' : 7,
89         'OriginLowerLeft' : 8,
90         'EarlyFragmentTests' : 9,
91         'PointMode' : 10,
92         'Xfb' : 11,
93         'DepthReplacing' : 12,
94         'DepthGreater' : 14,
95         'DepthLess' : 15,
96         'DepthUnchanged' : 16,
97         'LocalSize' : 17,
98         'LocalSizeHint' : 18,
99         'InputPoints' : 19,
100         'InputLines' : 20,
101         'InputLinesAdjacency' : 21,
102         'Triangles' : 22,
103         'InputTrianglesAdjacency' : 23,
104         'Quads' : 24,
105         'Isolines' : 25,
106         'OutputVertices' : 26,
107         'OutputPoints' : 27,
108         'OutputLineStrip' : 28,
109         'OutputTriangleStrip' : 29,
110         'VecTypeHint' : 30,
111         'ContractionOff' : 31,
112         'Initializer' : 33,
113         'Finalizer' : 34,
114         'SubgroupSize' : 35,
115         'SubgroupsPerWorkgroup' : 36,
116     },
117
118     'StorageClass' : {
119         'UniformConstant' : 0,
120         'Input' : 1,
121         'Uniform' : 2,
122         'Output' : 3,
123         'Workgroup' : 4,
124         'CrossWorkgroup' : 5,
125         'Private' : 6,
126         'Function' : 7,
127         'Generic' : 8,
128         'PushConstant' : 9,
129         'AtomicCounter' : 10,
130         'Image' : 11,
131         'StorageBuffer' : 12,
132     },
133
134     'Dim' : {
135         'Dim1D' : 0,
136         'Dim2D' : 1,
137         'Dim3D' : 2,
138         'Cube' : 3,
139         'Rect' : 4,
140         'Buffer' : 5,
141         'SubpassData' : 6,
142     },
143
144     'SamplerAddressingMode' : {
145         'None' : 0,
146         'ClampToEdge' : 1,
147         'Clamp' : 2,
148         'Repeat' : 3,
149         'RepeatMirrored' : 4,
150     },
151
152     'SamplerFilterMode' : {
153         'Nearest' : 0,
154         'Linear' : 1,
155     },
156
157     'ImageFormat' : {
158         'Unknown' : 0,
159         'Rgba32f' : 1,
160         'Rgba16f' : 2,
161         'R32f' : 3,
162         'Rgba8' : 4,
163         'Rgba8Snorm' : 5,
164         'Rg32f' : 6,
165         'Rg16f' : 7,
166         'R11fG11fB10f' : 8,
167         'R16f' : 9,
168         'Rgba16' : 10,
169         'Rgb10A2' : 11,
170         'Rg16' : 12,
171         'Rg8' : 13,
172         'R16' : 14,
173         'R8' : 15,
174         'Rgba16Snorm' : 16,
175         'Rg16Snorm' : 17,
176         'Rg8Snorm' : 18,
177         'R16Snorm' : 19,
178         'R8Snorm' : 20,
179         'Rgba32i' : 21,
180         'Rgba16i' : 22,
181         'Rgba8i' : 23,
182         'R32i' : 24,
183         'Rg32i' : 25,
184         'Rg16i' : 26,
185         'Rg8i' : 27,
186         'R16i' : 28,
187         'R8i' : 29,
188         'Rgba32ui' : 30,
189         'Rgba16ui' : 31,
190         'Rgba8ui' : 32,
191         'R32ui' : 33,
192         'Rgb10a2ui' : 34,
193         'Rg32ui' : 35,
194         'Rg16ui' : 36,
195         'Rg8ui' : 37,
196         'R16ui' : 38,
197         'R8ui' : 39,
198     },
199
200     'ImageChannelOrder' : {
201         'R' : 0,
202         'A' : 1,
203         'RG' : 2,
204         'RA' : 3,
205         'RGB' : 4,
206         'RGBA' : 5,
207         'BGRA' : 6,
208         'ARGB' : 7,
209         'Intensity' : 8,
210         'Luminance' : 9,
211         'Rx' : 10,
212         'RGx' : 11,
213         'RGBx' : 12,
214         'Depth' : 13,
215         'DepthStencil' : 14,
216         'sRGB' : 15,
217         'sRGBx' : 16,
218         'sRGBA' : 17,
219         'sBGRA' : 18,
220         'ABGR' : 19,
221     },
222
223     'ImageChannelDataType' : {
224         'SnormInt8' : 0,
225         'SnormInt16' : 1,
226         'UnormInt8' : 2,
227         'UnormInt16' : 3,
228         'UnormShort565' : 4,
229         'UnormShort555' : 5,
230         'UnormInt101010' : 6,
231         'SignedInt8' : 7,
232         'SignedInt16' : 8,
233         'SignedInt32' : 9,
234         'UnsignedInt8' : 10,
235         'UnsignedInt16' : 11,
236         'UnsignedInt32' : 12,
237         'HalfFloat' : 13,
238         'Float' : 14,
239         'UnormInt24' : 15,
240         'UnormInt101010_2' : 16,
241     },
242
243     'ImageOperandsShift' : {
244         'Bias' : 0,
245         'Lod' : 1,
246         'Grad' : 2,
247         'ConstOffset' : 3,
248         'Offset' : 4,
249         'ConstOffsets' : 5,
250         'Sample' : 6,
251         'MinLod' : 7,
252     },
253
254     'ImageOperandsMask' : {
255         'MaskNone' : 0,
256         'Bias' : 0x00000001,
257         'Lod' : 0x00000002,
258         'Grad' : 0x00000004,
259         'ConstOffset' : 0x00000008,
260         'Offset' : 0x00000010,
261         'ConstOffsets' : 0x00000020,
262         'Sample' : 0x00000040,
263         'MinLod' : 0x00000080,
264     },
265
266     'FPFastMathModeShift' : {
267         'NotNaN' : 0,
268         'NotInf' : 1,
269         'NSZ' : 2,
270         'AllowRecip' : 3,
271         'Fast' : 4,
272     },
273
274     'FPFastMathModeMask' : {
275         'MaskNone' : 0,
276         'NotNaN' : 0x00000001,
277         'NotInf' : 0x00000002,
278         'NSZ' : 0x00000004,
279         'AllowRecip' : 0x00000008,
280         'Fast' : 0x00000010,
281     },
282
283     'FPRoundingMode' : {
284         'RTE' : 0,
285         'RTZ' : 1,
286         'RTP' : 2,
287         'RTN' : 3,
288     },
289
290     'LinkageType' : {
291         'Export' : 0,
292         'Import' : 1,
293     },
294
295     'AccessQualifier' : {
296         'ReadOnly' : 0,
297         'WriteOnly' : 1,
298         'ReadWrite' : 2,
299     },
300
301     'FunctionParameterAttribute' : {
302         'Zext' : 0,
303         'Sext' : 1,
304         'ByVal' : 2,
305         'Sret' : 3,
306         'NoAlias' : 4,
307         'NoCapture' : 5,
308         'NoWrite' : 6,
309         'NoReadWrite' : 7,
310     },
311
312     'Decoration' : {
313         'RelaxedPrecision' : 0,
314         'SpecId' : 1,
315         'Block' : 2,
316         'BufferBlock' : 3,
317         'RowMajor' : 4,
318         'ColMajor' : 5,
319         'ArrayStride' : 6,
320         'MatrixStride' : 7,
321         'GLSLShared' : 8,
322         'GLSLPacked' : 9,
323         'CPacked' : 10,
324         'BuiltIn' : 11,
325         'NoPerspective' : 13,
326         'Flat' : 14,
327         'Patch' : 15,
328         'Centroid' : 16,
329         'Sample' : 17,
330         'Invariant' : 18,
331         'Restrict' : 19,
332         'Aliased' : 20,
333         'Volatile' : 21,
334         'Constant' : 22,
335         'Coherent' : 23,
336         'NonWritable' : 24,
337         'NonReadable' : 25,
338         'Uniform' : 26,
339         'SaturatedConversion' : 28,
340         'Stream' : 29,
341         'Location' : 30,
342         'Component' : 31,
343         'Index' : 32,
344         'Binding' : 33,
345         'DescriptorSet' : 34,
346         'Offset' : 35,
347         'XfbBuffer' : 36,
348         'XfbStride' : 37,
349         'FuncParamAttr' : 38,
350         'FPRoundingMode' : 39,
351         'FPFastMathMode' : 40,
352         'LinkageAttributes' : 41,
353         'NoContraction' : 42,
354         'InputAttachmentIndex' : 43,
355         'Alignment' : 44,
356         'MaxByteOffset' : 45,
357         'OverrideCoverageNV' : 5248,
358         'PassthroughNV' : 5250,
359         'ViewportRelativeNV' : 5252,
360         'SecondaryViewportRelativeNV' : 5256,
361     },
362
363     'BuiltIn' : {
364         'Position' : 0,
365         'PointSize' : 1,
366         'ClipDistance' : 3,
367         'CullDistance' : 4,
368         'VertexId' : 5,
369         'InstanceId' : 6,
370         'PrimitiveId' : 7,
371         'InvocationId' : 8,
372         'Layer' : 9,
373         'ViewportIndex' : 10,
374         'TessLevelOuter' : 11,
375         'TessLevelInner' : 12,
376         'TessCoord' : 13,
377         'PatchVertices' : 14,
378         'FragCoord' : 15,
379         'PointCoord' : 16,
380         'FrontFacing' : 17,
381         'SampleId' : 18,
382         'SamplePosition' : 19,
383         'SampleMask' : 20,
384         'FragDepth' : 22,
385         'HelperInvocation' : 23,
386         'NumWorkgroups' : 24,
387         'WorkgroupSize' : 25,
388         'WorkgroupId' : 26,
389         'LocalInvocationId' : 27,
390         'GlobalInvocationId' : 28,
391         'LocalInvocationIndex' : 29,
392         'WorkDim' : 30,
393         'GlobalSize' : 31,
394         'EnqueuedWorkgroupSize' : 32,
395         'GlobalOffset' : 33,
396         'GlobalLinearId' : 34,
397         'SubgroupSize' : 36,
398         'SubgroupMaxSize' : 37,
399         'NumSubgroups' : 38,
400         'NumEnqueuedSubgroups' : 39,
401         'SubgroupId' : 40,
402         'SubgroupLocalInvocationId' : 41,
403         'VertexIndex' : 42,
404         'InstanceIndex' : 43,
405         'SubgroupEqMaskKHR' : 4416,
406         'SubgroupGeMaskKHR' : 4417,
407         'SubgroupGtMaskKHR' : 4418,
408         'SubgroupLeMaskKHR' : 4419,
409         'SubgroupLtMaskKHR' : 4420,
410         'BaseVertex' : 4424,
411         'BaseInstance' : 4425,
412         'DrawIndex' : 4426,
413         'DeviceIndex' : 4438,
414         'ViewIndex' : 4440,
415         'ViewportMaskNV' : 5253,
416         'SecondaryPositionNV' : 5257,
417         'SecondaryViewportMaskNV' : 5258,
418         'PositionPerViewNV' : 5261,
419         'ViewportMaskPerViewNV' : 5262,
420     },
421
422     'SelectionControlShift' : {
423         'Flatten' : 0,
424         'DontFlatten' : 1,
425     },
426
427     'SelectionControlMask' : {
428         'MaskNone' : 0,
429         'Flatten' : 0x00000001,
430         'DontFlatten' : 0x00000002,
431     },
432
433     'LoopControlShift' : {
434         'Unroll' : 0,
435         'DontUnroll' : 1,
436         'DependencyInfinite' : 2,
437         'DependencyLength' : 3,
438     },
439
440     'LoopControlMask' : {
441         'MaskNone' : 0,
442         'Unroll' : 0x00000001,
443         'DontUnroll' : 0x00000002,
444         'DependencyInfinite' : 0x00000004,
445         'DependencyLength' : 0x00000008,
446     },
447
448     'FunctionControlShift' : {
449         'Inline' : 0,
450         'DontInline' : 1,
451         'Pure' : 2,
452         'Const' : 3,
453     },
454
455     'FunctionControlMask' : {
456         'MaskNone' : 0,
457         'Inline' : 0x00000001,
458         'DontInline' : 0x00000002,
459         'Pure' : 0x00000004,
460         'Const' : 0x00000008,
461     },
462
463     'MemorySemanticsShift' : {
464         'Acquire' : 1,
465         'Release' : 2,
466         'AcquireRelease' : 3,
467         'SequentiallyConsistent' : 4,
468         'UniformMemory' : 6,
469         'SubgroupMemory' : 7,
470         'WorkgroupMemory' : 8,
471         'CrossWorkgroupMemory' : 9,
472         'AtomicCounterMemory' : 10,
473         'ImageMemory' : 11,
474     },
475
476     'MemorySemanticsMask' : {
477         'MaskNone' : 0,
478         'Acquire' : 0x00000002,
479         'Release' : 0x00000004,
480         'AcquireRelease' : 0x00000008,
481         'SequentiallyConsistent' : 0x00000010,
482         'UniformMemory' : 0x00000040,
483         'SubgroupMemory' : 0x00000080,
484         'WorkgroupMemory' : 0x00000100,
485         'CrossWorkgroupMemory' : 0x00000200,
486         'AtomicCounterMemory' : 0x00000400,
487         'ImageMemory' : 0x00000800,
488     },
489
490     'MemoryAccessShift' : {
491         'Volatile' : 0,
492         'Aligned' : 1,
493         'Nontemporal' : 2,
494     },
495
496     'MemoryAccessMask' : {
497         'MaskNone' : 0,
498         'Volatile' : 0x00000001,
499         'Aligned' : 0x00000002,
500         'Nontemporal' : 0x00000004,
501     },
502
503     'Scope' : {
504         'CrossDevice' : 0,
505         'Device' : 1,
506         'Workgroup' : 2,
507         'Subgroup' : 3,
508         'Invocation' : 4,
509     },
510
511     'GroupOperation' : {
512         'Reduce' : 0,
513         'InclusiveScan' : 1,
514         'ExclusiveScan' : 2,
515     },
516
517     'KernelEnqueueFlags' : {
518         'NoWait' : 0,
519         'WaitKernel' : 1,
520         'WaitWorkGroup' : 2,
521     },
522
523     'KernelProfilingInfoShift' : {
524         'CmdExecTime' : 0,
525     },
526
527     'KernelProfilingInfoMask' : {
528         'MaskNone' : 0,
529         'CmdExecTime' : 0x00000001,
530     },
531
532     'Capability' : {
533         'Matrix' : 0,
534         'Shader' : 1,
535         'Geometry' : 2,
536         'Tessellation' : 3,
537         'Addresses' : 4,
538         'Linkage' : 5,
539         'Kernel' : 6,
540         'Vector16' : 7,
541         'Float16Buffer' : 8,
542         'Float16' : 9,
543         'Float64' : 10,
544         'Int64' : 11,
545         'Int64Atomics' : 12,
546         'ImageBasic' : 13,
547         'ImageReadWrite' : 14,
548         'ImageMipmap' : 15,
549         'Pipes' : 17,
550         'Groups' : 18,
551         'DeviceEnqueue' : 19,
552         'LiteralSampler' : 20,
553         'AtomicStorage' : 21,
554         'Int16' : 22,
555         'TessellationPointSize' : 23,
556         'GeometryPointSize' : 24,
557         'ImageGatherExtended' : 25,
558         'StorageImageMultisample' : 27,
559         'UniformBufferArrayDynamicIndexing' : 28,
560         'SampledImageArrayDynamicIndexing' : 29,
561         'StorageBufferArrayDynamicIndexing' : 30,
562         'StorageImageArrayDynamicIndexing' : 31,
563         'ClipDistance' : 32,
564         'CullDistance' : 33,
565         'ImageCubeArray' : 34,
566         'SampleRateShading' : 35,
567         'ImageRect' : 36,
568         'SampledRect' : 37,
569         'GenericPointer' : 38,
570         'Int8' : 39,
571         'InputAttachment' : 40,
572         'SparseResidency' : 41,
573         'MinLod' : 42,
574         'Sampled1D' : 43,
575         'Image1D' : 44,
576         'SampledCubeArray' : 45,
577         'SampledBuffer' : 46,
578         'ImageBuffer' : 47,
579         'ImageMSArray' : 48,
580         'StorageImageExtendedFormats' : 49,
581         'ImageQuery' : 50,
582         'DerivativeControl' : 51,
583         'InterpolationFunction' : 52,
584         'TransformFeedback' : 53,
585         'GeometryStreams' : 54,
586         'StorageImageReadWithoutFormat' : 55,
587         'StorageImageWriteWithoutFormat' : 56,
588         'MultiViewport' : 57,
589         'SubgroupDispatch' : 58,
590         'NamedBarrier' : 59,
591         'PipeStorage' : 60,
592         'SubgroupBallotKHR' : 4423,
593         'DrawParameters' : 4427,
594         'SubgroupVoteKHR' : 4431,
595         'StorageBuffer16BitAccess' : 4433,
596         'StorageUniformBufferBlock16' : 4433,
597         'StorageUniform16' : 4434,
598         'UniformAndStorageBuffer16BitAccess' : 4434,
599         'StoragePushConstant16' : 4435,
600         'StorageInputOutput16' : 4436,
601         'DeviceGroup' : 4437,
602         'MultiView' : 4439,
603         'VariablePointersStorageBuffer' : 4441,
604         'VariablePointers' : 4442,
605         'SampleMaskOverrideCoverageNV' : 5249,
606         'GeometryShaderPassthroughNV' : 5251,
607         'ShaderViewportIndexLayerNV' : 5254,
608         'ShaderViewportMaskNV' : 5255,
609         'ShaderStereoViewNV' : 5259,
610         'PerViewAttributesNV' : 5260,
611     },
612
613     'Op' : {
614         'OpNop' : 0,
615         'OpUndef' : 1,
616         'OpSourceContinued' : 2,
617         'OpSource' : 3,
618         'OpSourceExtension' : 4,
619         'OpName' : 5,
620         'OpMemberName' : 6,
621         'OpString' : 7,
622         'OpLine' : 8,
623         'OpExtension' : 10,
624         'OpExtInstImport' : 11,
625         'OpExtInst' : 12,
626         'OpMemoryModel' : 14,
627         'OpEntryPoint' : 15,
628         'OpExecutionMode' : 16,
629         'OpCapability' : 17,
630         'OpTypeVoid' : 19,
631         'OpTypeBool' : 20,
632         'OpTypeInt' : 21,
633         'OpTypeFloat' : 22,
634         'OpTypeVector' : 23,
635         'OpTypeMatrix' : 24,
636         'OpTypeImage' : 25,
637         'OpTypeSampler' : 26,
638         'OpTypeSampledImage' : 27,
639         'OpTypeArray' : 28,
640         'OpTypeRuntimeArray' : 29,
641         'OpTypeStruct' : 30,
642         'OpTypeOpaque' : 31,
643         'OpTypePointer' : 32,
644         'OpTypeFunction' : 33,
645         'OpTypeEvent' : 34,
646         'OpTypeDeviceEvent' : 35,
647         'OpTypeReserveId' : 36,
648         'OpTypeQueue' : 37,
649         'OpTypePipe' : 38,
650         'OpTypeForwardPointer' : 39,
651         'OpConstantTrue' : 41,
652         'OpConstantFalse' : 42,
653         'OpConstant' : 43,
654         'OpConstantComposite' : 44,
655         'OpConstantSampler' : 45,
656         'OpConstantNull' : 46,
657         'OpSpecConstantTrue' : 48,
658         'OpSpecConstantFalse' : 49,
659         'OpSpecConstant' : 50,
660         'OpSpecConstantComposite' : 51,
661         'OpSpecConstantOp' : 52,
662         'OpFunction' : 54,
663         'OpFunctionParameter' : 55,
664         'OpFunctionEnd' : 56,
665         'OpFunctionCall' : 57,
666         'OpVariable' : 59,
667         'OpImageTexelPointer' : 60,
668         'OpLoad' : 61,
669         'OpStore' : 62,
670         'OpCopyMemory' : 63,
671         'OpCopyMemorySized' : 64,
672         'OpAccessChain' : 65,
673         'OpInBoundsAccessChain' : 66,
674         'OpPtrAccessChain' : 67,
675         'OpArrayLength' : 68,
676         'OpGenericPtrMemSemantics' : 69,
677         'OpInBoundsPtrAccessChain' : 70,
678         'OpDecorate' : 71,
679         'OpMemberDecorate' : 72,
680         'OpDecorationGroup' : 73,
681         'OpGroupDecorate' : 74,
682         'OpGroupMemberDecorate' : 75,
683         'OpVectorExtractDynamic' : 77,
684         'OpVectorInsertDynamic' : 78,
685         'OpVectorShuffle' : 79,
686         'OpCompositeConstruct' : 80,
687         'OpCompositeExtract' : 81,
688         'OpCompositeInsert' : 82,
689         'OpCopyObject' : 83,
690         'OpTranspose' : 84,
691         'OpSampledImage' : 86,
692         'OpImageSampleImplicitLod' : 87,
693         'OpImageSampleExplicitLod' : 88,
694         'OpImageSampleDrefImplicitLod' : 89,
695         'OpImageSampleDrefExplicitLod' : 90,
696         'OpImageSampleProjImplicitLod' : 91,
697         'OpImageSampleProjExplicitLod' : 92,
698         'OpImageSampleProjDrefImplicitLod' : 93,
699         'OpImageSampleProjDrefExplicitLod' : 94,
700         'OpImageFetch' : 95,
701         'OpImageGather' : 96,
702         'OpImageDrefGather' : 97,
703         'OpImageRead' : 98,
704         'OpImageWrite' : 99,
705         'OpImage' : 100,
706         'OpImageQueryFormat' : 101,
707         'OpImageQueryOrder' : 102,
708         'OpImageQuerySizeLod' : 103,
709         'OpImageQuerySize' : 104,
710         'OpImageQueryLod' : 105,
711         'OpImageQueryLevels' : 106,
712         'OpImageQuerySamples' : 107,
713         'OpConvertFToU' : 109,
714         'OpConvertFToS' : 110,
715         'OpConvertSToF' : 111,
716         'OpConvertUToF' : 112,
717         'OpUConvert' : 113,
718         'OpSConvert' : 114,
719         'OpFConvert' : 115,
720         'OpQuantizeToF16' : 116,
721         'OpConvertPtrToU' : 117,
722         'OpSatConvertSToU' : 118,
723         'OpSatConvertUToS' : 119,
724         'OpConvertUToPtr' : 120,
725         'OpPtrCastToGeneric' : 121,
726         'OpGenericCastToPtr' : 122,
727         'OpGenericCastToPtrExplicit' : 123,
728         'OpBitcast' : 124,
729         'OpSNegate' : 126,
730         'OpFNegate' : 127,
731         'OpIAdd' : 128,
732         'OpFAdd' : 129,
733         'OpISub' : 130,
734         'OpFSub' : 131,
735         'OpIMul' : 132,
736         'OpFMul' : 133,
737         'OpUDiv' : 134,
738         'OpSDiv' : 135,
739         'OpFDiv' : 136,
740         'OpUMod' : 137,
741         'OpSRem' : 138,
742         'OpSMod' : 139,
743         'OpFRem' : 140,
744         'OpFMod' : 141,
745         'OpVectorTimesScalar' : 142,
746         'OpMatrixTimesScalar' : 143,
747         'OpVectorTimesMatrix' : 144,
748         'OpMatrixTimesVector' : 145,
749         'OpMatrixTimesMatrix' : 146,
750         'OpOuterProduct' : 147,
751         'OpDot' : 148,
752         'OpIAddCarry' : 149,
753         'OpISubBorrow' : 150,
754         'OpUMulExtended' : 151,
755         'OpSMulExtended' : 152,
756         'OpAny' : 154,
757         'OpAll' : 155,
758         'OpIsNan' : 156,
759         'OpIsInf' : 157,
760         'OpIsFinite' : 158,
761         'OpIsNormal' : 159,
762         'OpSignBitSet' : 160,
763         'OpLessOrGreater' : 161,
764         'OpOrdered' : 162,
765         'OpUnordered' : 163,
766         'OpLogicalEqual' : 164,
767         'OpLogicalNotEqual' : 165,
768         'OpLogicalOr' : 166,
769         'OpLogicalAnd' : 167,
770         'OpLogicalNot' : 168,
771         'OpSelect' : 169,
772         'OpIEqual' : 170,
773         'OpINotEqual' : 171,
774         'OpUGreaterThan' : 172,
775         'OpSGreaterThan' : 173,
776         'OpUGreaterThanEqual' : 174,
777         'OpSGreaterThanEqual' : 175,
778         'OpULessThan' : 176,
779         'OpSLessThan' : 177,
780         'OpULessThanEqual' : 178,
781         'OpSLessThanEqual' : 179,
782         'OpFOrdEqual' : 180,
783         'OpFUnordEqual' : 181,
784         'OpFOrdNotEqual' : 182,
785         'OpFUnordNotEqual' : 183,
786         'OpFOrdLessThan' : 184,
787         'OpFUnordLessThan' : 185,
788         'OpFOrdGreaterThan' : 186,
789         'OpFUnordGreaterThan' : 187,
790         'OpFOrdLessThanEqual' : 188,
791         'OpFUnordLessThanEqual' : 189,
792         'OpFOrdGreaterThanEqual' : 190,
793         'OpFUnordGreaterThanEqual' : 191,
794         'OpShiftRightLogical' : 194,
795         'OpShiftRightArithmetic' : 195,
796         'OpShiftLeftLogical' : 196,
797         'OpBitwiseOr' : 197,
798         'OpBitwiseXor' : 198,
799         'OpBitwiseAnd' : 199,
800         'OpNot' : 200,
801         'OpBitFieldInsert' : 201,
802         'OpBitFieldSExtract' : 202,
803         'OpBitFieldUExtract' : 203,
804         'OpBitReverse' : 204,
805         'OpBitCount' : 205,
806         'OpDPdx' : 207,
807         'OpDPdy' : 208,
808         'OpFwidth' : 209,
809         'OpDPdxFine' : 210,
810         'OpDPdyFine' : 211,
811         'OpFwidthFine' : 212,
812         'OpDPdxCoarse' : 213,
813         'OpDPdyCoarse' : 214,
814         'OpFwidthCoarse' : 215,
815         'OpEmitVertex' : 218,
816         'OpEndPrimitive' : 219,
817         'OpEmitStreamVertex' : 220,
818         'OpEndStreamPrimitive' : 221,
819         'OpControlBarrier' : 224,
820         'OpMemoryBarrier' : 225,
821         'OpAtomicLoad' : 227,
822         'OpAtomicStore' : 228,
823         'OpAtomicExchange' : 229,
824         'OpAtomicCompareExchange' : 230,
825         'OpAtomicCompareExchangeWeak' : 231,
826         'OpAtomicIIncrement' : 232,
827         'OpAtomicIDecrement' : 233,
828         'OpAtomicIAdd' : 234,
829         'OpAtomicISub' : 235,
830         'OpAtomicSMin' : 236,
831         'OpAtomicUMin' : 237,
832         'OpAtomicSMax' : 238,
833         'OpAtomicUMax' : 239,
834         'OpAtomicAnd' : 240,
835         'OpAtomicOr' : 241,
836         'OpAtomicXor' : 242,
837         'OpPhi' : 245,
838         'OpLoopMerge' : 246,
839         'OpSelectionMerge' : 247,
840         'OpLabel' : 248,
841         'OpBranch' : 249,
842         'OpBranchConditional' : 250,
843         'OpSwitch' : 251,
844         'OpKill' : 252,
845         'OpReturn' : 253,
846         'OpReturnValue' : 254,
847         'OpUnreachable' : 255,
848         'OpLifetimeStart' : 256,
849         'OpLifetimeStop' : 257,
850         'OpGroupAsyncCopy' : 259,
851         'OpGroupWaitEvents' : 260,
852         'OpGroupAll' : 261,
853         'OpGroupAny' : 262,
854         'OpGroupBroadcast' : 263,
855         'OpGroupIAdd' : 264,
856         'OpGroupFAdd' : 265,
857         'OpGroupFMin' : 266,
858         'OpGroupUMin' : 267,
859         'OpGroupSMin' : 268,
860         'OpGroupFMax' : 269,
861         'OpGroupUMax' : 270,
862         'OpGroupSMax' : 271,
863         'OpReadPipe' : 274,
864         'OpWritePipe' : 275,
865         'OpReservedReadPipe' : 276,
866         'OpReservedWritePipe' : 277,
867         'OpReserveReadPipePackets' : 278,
868         'OpReserveWritePipePackets' : 279,
869         'OpCommitReadPipe' : 280,
870         'OpCommitWritePipe' : 281,
871         'OpIsValidReserveId' : 282,
872         'OpGetNumPipePackets' : 283,
873         'OpGetMaxPipePackets' : 284,
874         'OpGroupReserveReadPipePackets' : 285,
875         'OpGroupReserveWritePipePackets' : 286,
876         'OpGroupCommitReadPipe' : 287,
877         'OpGroupCommitWritePipe' : 288,
878         'OpEnqueueMarker' : 291,
879         'OpEnqueueKernel' : 292,
880         'OpGetKernelNDrangeSubGroupCount' : 293,
881         'OpGetKernelNDrangeMaxSubGroupSize' : 294,
882         'OpGetKernelWorkGroupSize' : 295,
883         'OpGetKernelPreferredWorkGroupSizeMultiple' : 296,
884         'OpRetainEvent' : 297,
885         'OpReleaseEvent' : 298,
886         'OpCreateUserEvent' : 299,
887         'OpIsValidEvent' : 300,
888         'OpSetUserEventStatus' : 301,
889         'OpCaptureEventProfilingInfo' : 302,
890         'OpGetDefaultQueue' : 303,
891         'OpBuildNDRange' : 304,
892         'OpImageSparseSampleImplicitLod' : 305,
893         'OpImageSparseSampleExplicitLod' : 306,
894         'OpImageSparseSampleDrefImplicitLod' : 307,
895         'OpImageSparseSampleDrefExplicitLod' : 308,
896         'OpImageSparseSampleProjImplicitLod' : 309,
897         'OpImageSparseSampleProjExplicitLod' : 310,
898         'OpImageSparseSampleProjDrefImplicitLod' : 311,
899         'OpImageSparseSampleProjDrefExplicitLod' : 312,
900         'OpImageSparseFetch' : 313,
901         'OpImageSparseGather' : 314,
902         'OpImageSparseDrefGather' : 315,
903         'OpImageSparseTexelsResident' : 316,
904         'OpNoLine' : 317,
905         'OpAtomicFlagTestAndSet' : 318,
906         'OpAtomicFlagClear' : 319,
907         'OpImageSparseRead' : 320,
908         'OpSizeOf' : 321,
909         'OpTypePipeStorage' : 322,
910         'OpConstantPipeStorage' : 323,
911         'OpCreatePipeFromPipeStorage' : 324,
912         'OpGetKernelLocalSizeForSubgroupCount' : 325,
913         'OpGetKernelMaxNumSubgroups' : 326,
914         'OpTypeNamedBarrier' : 327,
915         'OpNamedBarrierInitialize' : 328,
916         'OpMemoryNamedBarrier' : 329,
917         'OpModuleProcessed' : 330,
918         'OpSubgroupBallotKHR' : 4421,
919         'OpSubgroupFirstInvocationKHR' : 4422,
920         'OpSubgroupAllKHR' : 4428,
921         'OpSubgroupAnyKHR' : 4429,
922         'OpSubgroupAllEqualKHR' : 4430,
923         'OpSubgroupReadInvocationKHR' : 4432,
924     },
925
926 }
927