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