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