Add SPV_KHR_shader_ballot enumerants.
[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' : 3,
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         'SubgroupEqMaskKHR' : 4416,
400         'SubgroupGeMaskKHR' : 4417,
401         'SubgroupGtMaskKHR' : 4418,
402         'SubgroupLeMaskKHR' : 4419,
403         'SubgroupLtMaskKHR' : 4420,
404     },
405
406     'SelectionControlShift' : {
407         'Flatten' : 0,
408         'DontFlatten' : 1,
409     },
410
411     'SelectionControlMask' : {
412         'MaskNone' : 0,
413         'Flatten' : 0x00000001,
414         'DontFlatten' : 0x00000002,
415     },
416
417     'LoopControlShift' : {
418         'Unroll' : 0,
419         'DontUnroll' : 1,
420         'DependencyInfinite' : 2,
421         'DependencyLength' : 3,
422     },
423
424     'LoopControlMask' : {
425         'MaskNone' : 0,
426         'Unroll' : 0x00000001,
427         'DontUnroll' : 0x00000002,
428         'DependencyInfinite' : 0x00000004,
429         'DependencyLength' : 0x00000008,
430     },
431
432     'FunctionControlShift' : {
433         'Inline' : 0,
434         'DontInline' : 1,
435         'Pure' : 2,
436         'Const' : 3,
437     },
438
439     'FunctionControlMask' : {
440         'MaskNone' : 0,
441         'Inline' : 0x00000001,
442         'DontInline' : 0x00000002,
443         'Pure' : 0x00000004,
444         'Const' : 0x00000008,
445     },
446
447     'MemorySemanticsShift' : {
448         'Acquire' : 1,
449         'Release' : 2,
450         'AcquireRelease' : 3,
451         'SequentiallyConsistent' : 4,
452         'UniformMemory' : 6,
453         'SubgroupMemory' : 7,
454         'WorkgroupMemory' : 8,
455         'CrossWorkgroupMemory' : 9,
456         'AtomicCounterMemory' : 10,
457         'ImageMemory' : 11,
458     },
459
460     'MemorySemanticsMask' : {
461         'MaskNone' : 0,
462         'Acquire' : 0x00000002,
463         'Release' : 0x00000004,
464         'AcquireRelease' : 0x00000008,
465         'SequentiallyConsistent' : 0x00000010,
466         'UniformMemory' : 0x00000040,
467         'SubgroupMemory' : 0x00000080,
468         'WorkgroupMemory' : 0x00000100,
469         'CrossWorkgroupMemory' : 0x00000200,
470         'AtomicCounterMemory' : 0x00000400,
471         'ImageMemory' : 0x00000800,
472     },
473
474     'MemoryAccessShift' : {
475         'Volatile' : 0,
476         'Aligned' : 1,
477         'Nontemporal' : 2,
478     },
479
480     'MemoryAccessMask' : {
481         'MaskNone' : 0,
482         'Volatile' : 0x00000001,
483         'Aligned' : 0x00000002,
484         'Nontemporal' : 0x00000004,
485     },
486
487     'Scope' : {
488         'CrossDevice' : 0,
489         'Device' : 1,
490         'Workgroup' : 2,
491         'Subgroup' : 3,
492         'Invocation' : 4,
493     },
494
495     'GroupOperation' : {
496         'Reduce' : 0,
497         'InclusiveScan' : 1,
498         'ExclusiveScan' : 2,
499     },
500
501     'KernelEnqueueFlags' : {
502         'NoWait' : 0,
503         'WaitKernel' : 1,
504         'WaitWorkGroup' : 2,
505     },
506
507     'KernelProfilingInfoShift' : {
508         'CmdExecTime' : 0,
509     },
510
511     'KernelProfilingInfoMask' : {
512         'MaskNone' : 0,
513         'CmdExecTime' : 0x00000001,
514     },
515
516     'Capability' : {
517         'Matrix' : 0,
518         'Shader' : 1,
519         'Geometry' : 2,
520         'Tessellation' : 3,
521         'Addresses' : 4,
522         'Linkage' : 5,
523         'Kernel' : 6,
524         'Vector16' : 7,
525         'Float16Buffer' : 8,
526         'Float16' : 9,
527         'Float64' : 10,
528         'Int64' : 11,
529         'Int64Atomics' : 12,
530         'ImageBasic' : 13,
531         'ImageReadWrite' : 14,
532         'ImageMipmap' : 15,
533         'Pipes' : 17,
534         'Groups' : 18,
535         'DeviceEnqueue' : 19,
536         'LiteralSampler' : 20,
537         'AtomicStorage' : 21,
538         'Int16' : 22,
539         'TessellationPointSize' : 23,
540         'GeometryPointSize' : 24,
541         'ImageGatherExtended' : 25,
542         'StorageImageMultisample' : 27,
543         'UniformBufferArrayDynamicIndexing' : 28,
544         'SampledImageArrayDynamicIndexing' : 29,
545         'StorageBufferArrayDynamicIndexing' : 30,
546         'StorageImageArrayDynamicIndexing' : 31,
547         'ClipDistance' : 32,
548         'CullDistance' : 33,
549         'ImageCubeArray' : 34,
550         'SampleRateShading' : 35,
551         'ImageRect' : 36,
552         'SampledRect' : 37,
553         'GenericPointer' : 38,
554         'Int8' : 39,
555         'InputAttachment' : 40,
556         'SparseResidency' : 41,
557         'MinLod' : 42,
558         'Sampled1D' : 43,
559         'Image1D' : 44,
560         'SampledCubeArray' : 45,
561         'SampledBuffer' : 46,
562         'ImageBuffer' : 47,
563         'ImageMSArray' : 48,
564         'StorageImageExtendedFormats' : 49,
565         'ImageQuery' : 50,
566         'DerivativeControl' : 51,
567         'InterpolationFunction' : 52,
568         'TransformFeedback' : 53,
569         'GeometryStreams' : 54,
570         'StorageImageReadWithoutFormat' : 55,
571         'StorageImageWriteWithoutFormat' : 56,
572         'MultiViewport' : 57,
573         'SubgroupDispatch' : 58,
574         'NamedBarrier' : 59,
575         'PipeStorage' : 60,
576         'SubgroupBallotKHR' : 4423,
577     },
578
579     'Op' : {
580         'OpNop' : 0,
581         'OpUndef' : 1,
582         'OpSourceContinued' : 2,
583         'OpSource' : 3,
584         'OpSourceExtension' : 4,
585         'OpName' : 5,
586         'OpMemberName' : 6,
587         'OpString' : 7,
588         'OpLine' : 8,
589         'OpExtension' : 10,
590         'OpExtInstImport' : 11,
591         'OpExtInst' : 12,
592         'OpMemoryModel' : 14,
593         'OpEntryPoint' : 15,
594         'OpExecutionMode' : 16,
595         'OpCapability' : 17,
596         'OpTypeVoid' : 19,
597         'OpTypeBool' : 20,
598         'OpTypeInt' : 21,
599         'OpTypeFloat' : 22,
600         'OpTypeVector' : 23,
601         'OpTypeMatrix' : 24,
602         'OpTypeImage' : 25,
603         'OpTypeSampler' : 26,
604         'OpTypeSampledImage' : 27,
605         'OpTypeArray' : 28,
606         'OpTypeRuntimeArray' : 29,
607         'OpTypeStruct' : 30,
608         'OpTypeOpaque' : 31,
609         'OpTypePointer' : 32,
610         'OpTypeFunction' : 33,
611         'OpTypeEvent' : 34,
612         'OpTypeDeviceEvent' : 35,
613         'OpTypeReserveId' : 36,
614         'OpTypeQueue' : 37,
615         'OpTypePipe' : 38,
616         'OpTypeForwardPointer' : 39,
617         'OpConstantTrue' : 41,
618         'OpConstantFalse' : 42,
619         'OpConstant' : 43,
620         'OpConstantComposite' : 44,
621         'OpConstantSampler' : 45,
622         'OpConstantNull' : 46,
623         'OpSpecConstantTrue' : 48,
624         'OpSpecConstantFalse' : 49,
625         'OpSpecConstant' : 50,
626         'OpSpecConstantComposite' : 51,
627         'OpSpecConstantOp' : 52,
628         'OpFunction' : 54,
629         'OpFunctionParameter' : 55,
630         'OpFunctionEnd' : 56,
631         'OpFunctionCall' : 57,
632         'OpVariable' : 59,
633         'OpImageTexelPointer' : 60,
634         'OpLoad' : 61,
635         'OpStore' : 62,
636         'OpCopyMemory' : 63,
637         'OpCopyMemorySized' : 64,
638         'OpAccessChain' : 65,
639         'OpInBoundsAccessChain' : 66,
640         'OpPtrAccessChain' : 67,
641         'OpArrayLength' : 68,
642         'OpGenericPtrMemSemantics' : 69,
643         'OpInBoundsPtrAccessChain' : 70,
644         'OpDecorate' : 71,
645         'OpMemberDecorate' : 72,
646         'OpDecorationGroup' : 73,
647         'OpGroupDecorate' : 74,
648         'OpGroupMemberDecorate' : 75,
649         'OpVectorExtractDynamic' : 77,
650         'OpVectorInsertDynamic' : 78,
651         'OpVectorShuffle' : 79,
652         'OpCompositeConstruct' : 80,
653         'OpCompositeExtract' : 81,
654         'OpCompositeInsert' : 82,
655         'OpCopyObject' : 83,
656         'OpTranspose' : 84,
657         'OpSampledImage' : 86,
658         'OpImageSampleImplicitLod' : 87,
659         'OpImageSampleExplicitLod' : 88,
660         'OpImageSampleDrefImplicitLod' : 89,
661         'OpImageSampleDrefExplicitLod' : 90,
662         'OpImageSampleProjImplicitLod' : 91,
663         'OpImageSampleProjExplicitLod' : 92,
664         'OpImageSampleProjDrefImplicitLod' : 93,
665         'OpImageSampleProjDrefExplicitLod' : 94,
666         'OpImageFetch' : 95,
667         'OpImageGather' : 96,
668         'OpImageDrefGather' : 97,
669         'OpImageRead' : 98,
670         'OpImageWrite' : 99,
671         'OpImage' : 100,
672         'OpImageQueryFormat' : 101,
673         'OpImageQueryOrder' : 102,
674         'OpImageQuerySizeLod' : 103,
675         'OpImageQuerySize' : 104,
676         'OpImageQueryLod' : 105,
677         'OpImageQueryLevels' : 106,
678         'OpImageQuerySamples' : 107,
679         'OpConvertFToU' : 109,
680         'OpConvertFToS' : 110,
681         'OpConvertSToF' : 111,
682         'OpConvertUToF' : 112,
683         'OpUConvert' : 113,
684         'OpSConvert' : 114,
685         'OpFConvert' : 115,
686         'OpQuantizeToF16' : 116,
687         'OpConvertPtrToU' : 117,
688         'OpSatConvertSToU' : 118,
689         'OpSatConvertUToS' : 119,
690         'OpConvertUToPtr' : 120,
691         'OpPtrCastToGeneric' : 121,
692         'OpGenericCastToPtr' : 122,
693         'OpGenericCastToPtrExplicit' : 123,
694         'OpBitcast' : 124,
695         'OpSNegate' : 126,
696         'OpFNegate' : 127,
697         'OpIAdd' : 128,
698         'OpFAdd' : 129,
699         'OpISub' : 130,
700         'OpFSub' : 131,
701         'OpIMul' : 132,
702         'OpFMul' : 133,
703         'OpUDiv' : 134,
704         'OpSDiv' : 135,
705         'OpFDiv' : 136,
706         'OpUMod' : 137,
707         'OpSRem' : 138,
708         'OpSMod' : 139,
709         'OpFRem' : 140,
710         'OpFMod' : 141,
711         'OpVectorTimesScalar' : 142,
712         'OpMatrixTimesScalar' : 143,
713         'OpVectorTimesMatrix' : 144,
714         'OpMatrixTimesVector' : 145,
715         'OpMatrixTimesMatrix' : 146,
716         'OpOuterProduct' : 147,
717         'OpDot' : 148,
718         'OpIAddCarry' : 149,
719         'OpISubBorrow' : 150,
720         'OpUMulExtended' : 151,
721         'OpSMulExtended' : 152,
722         'OpAny' : 154,
723         'OpAll' : 155,
724         'OpIsNan' : 156,
725         'OpIsInf' : 157,
726         'OpIsFinite' : 158,
727         'OpIsNormal' : 159,
728         'OpSignBitSet' : 160,
729         'OpLessOrGreater' : 161,
730         'OpOrdered' : 162,
731         'OpUnordered' : 163,
732         'OpLogicalEqual' : 164,
733         'OpLogicalNotEqual' : 165,
734         'OpLogicalOr' : 166,
735         'OpLogicalAnd' : 167,
736         'OpLogicalNot' : 168,
737         'OpSelect' : 169,
738         'OpIEqual' : 170,
739         'OpINotEqual' : 171,
740         'OpUGreaterThan' : 172,
741         'OpSGreaterThan' : 173,
742         'OpUGreaterThanEqual' : 174,
743         'OpSGreaterThanEqual' : 175,
744         'OpULessThan' : 176,
745         'OpSLessThan' : 177,
746         'OpULessThanEqual' : 178,
747         'OpSLessThanEqual' : 179,
748         'OpFOrdEqual' : 180,
749         'OpFUnordEqual' : 181,
750         'OpFOrdNotEqual' : 182,
751         'OpFUnordNotEqual' : 183,
752         'OpFOrdLessThan' : 184,
753         'OpFUnordLessThan' : 185,
754         'OpFOrdGreaterThan' : 186,
755         'OpFUnordGreaterThan' : 187,
756         'OpFOrdLessThanEqual' : 188,
757         'OpFUnordLessThanEqual' : 189,
758         'OpFOrdGreaterThanEqual' : 190,
759         'OpFUnordGreaterThanEqual' : 191,
760         'OpShiftRightLogical' : 194,
761         'OpShiftRightArithmetic' : 195,
762         'OpShiftLeftLogical' : 196,
763         'OpBitwiseOr' : 197,
764         'OpBitwiseXor' : 198,
765         'OpBitwiseAnd' : 199,
766         'OpNot' : 200,
767         'OpBitFieldInsert' : 201,
768         'OpBitFieldSExtract' : 202,
769         'OpBitFieldUExtract' : 203,
770         'OpBitReverse' : 204,
771         'OpBitCount' : 205,
772         'OpDPdx' : 207,
773         'OpDPdy' : 208,
774         'OpFwidth' : 209,
775         'OpDPdxFine' : 210,
776         'OpDPdyFine' : 211,
777         'OpFwidthFine' : 212,
778         'OpDPdxCoarse' : 213,
779         'OpDPdyCoarse' : 214,
780         'OpFwidthCoarse' : 215,
781         'OpEmitVertex' : 218,
782         'OpEndPrimitive' : 219,
783         'OpEmitStreamVertex' : 220,
784         'OpEndStreamPrimitive' : 221,
785         'OpControlBarrier' : 224,
786         'OpMemoryBarrier' : 225,
787         'OpAtomicLoad' : 227,
788         'OpAtomicStore' : 228,
789         'OpAtomicExchange' : 229,
790         'OpAtomicCompareExchange' : 230,
791         'OpAtomicCompareExchangeWeak' : 231,
792         'OpAtomicIIncrement' : 232,
793         'OpAtomicIDecrement' : 233,
794         'OpAtomicIAdd' : 234,
795         'OpAtomicISub' : 235,
796         'OpAtomicSMin' : 236,
797         'OpAtomicUMin' : 237,
798         'OpAtomicSMax' : 238,
799         'OpAtomicUMax' : 239,
800         'OpAtomicAnd' : 240,
801         'OpAtomicOr' : 241,
802         'OpAtomicXor' : 242,
803         'OpPhi' : 245,
804         'OpLoopMerge' : 246,
805         'OpSelectionMerge' : 247,
806         'OpLabel' : 248,
807         'OpBranch' : 249,
808         'OpBranchConditional' : 250,
809         'OpSwitch' : 251,
810         'OpKill' : 252,
811         'OpReturn' : 253,
812         'OpReturnValue' : 254,
813         'OpUnreachable' : 255,
814         'OpLifetimeStart' : 256,
815         'OpLifetimeStop' : 257,
816         'OpGroupAsyncCopy' : 259,
817         'OpGroupWaitEvents' : 260,
818         'OpGroupAll' : 261,
819         'OpGroupAny' : 262,
820         'OpGroupBroadcast' : 263,
821         'OpGroupIAdd' : 264,
822         'OpGroupFAdd' : 265,
823         'OpGroupFMin' : 266,
824         'OpGroupUMin' : 267,
825         'OpGroupSMin' : 268,
826         'OpGroupFMax' : 269,
827         'OpGroupUMax' : 270,
828         'OpGroupSMax' : 271,
829         'OpReadPipe' : 274,
830         'OpWritePipe' : 275,
831         'OpReservedReadPipe' : 276,
832         'OpReservedWritePipe' : 277,
833         'OpReserveReadPipePackets' : 278,
834         'OpReserveWritePipePackets' : 279,
835         'OpCommitReadPipe' : 280,
836         'OpCommitWritePipe' : 281,
837         'OpIsValidReserveId' : 282,
838         'OpGetNumPipePackets' : 283,
839         'OpGetMaxPipePackets' : 284,
840         'OpGroupReserveReadPipePackets' : 285,
841         'OpGroupReserveWritePipePackets' : 286,
842         'OpGroupCommitReadPipe' : 287,
843         'OpGroupCommitWritePipe' : 288,
844         'OpEnqueueMarker' : 291,
845         'OpEnqueueKernel' : 292,
846         'OpGetKernelNDrangeSubGroupCount' : 293,
847         'OpGetKernelNDrangeMaxSubGroupSize' : 294,
848         'OpGetKernelWorkGroupSize' : 295,
849         'OpGetKernelPreferredWorkGroupSizeMultiple' : 296,
850         'OpRetainEvent' : 297,
851         'OpReleaseEvent' : 298,
852         'OpCreateUserEvent' : 299,
853         'OpIsValidEvent' : 300,
854         'OpSetUserEventStatus' : 301,
855         'OpCaptureEventProfilingInfo' : 302,
856         'OpGetDefaultQueue' : 303,
857         'OpBuildNDRange' : 304,
858         'OpImageSparseSampleImplicitLod' : 305,
859         'OpImageSparseSampleExplicitLod' : 306,
860         'OpImageSparseSampleDrefImplicitLod' : 307,
861         'OpImageSparseSampleDrefExplicitLod' : 308,
862         'OpImageSparseSampleProjImplicitLod' : 309,
863         'OpImageSparseSampleProjExplicitLod' : 310,
864         'OpImageSparseSampleProjDrefImplicitLod' : 311,
865         'OpImageSparseSampleProjDrefExplicitLod' : 312,
866         'OpImageSparseFetch' : 313,
867         'OpImageSparseGather' : 314,
868         'OpImageSparseDrefGather' : 315,
869         'OpImageSparseTexelsResident' : 316,
870         'OpNoLine' : 317,
871         'OpAtomicFlagTestAndSet' : 318,
872         'OpAtomicFlagClear' : 319,
873         'OpImageSparseRead' : 320,
874         'OpSizeOf' : 321,
875         'OpTypePipeStorage' : 322,
876         'OpConstantPipeStorage' : 323,
877         'OpCreatePipeFromPipeStorage' : 324,
878         'OpGetKernelLocalSizeForSubgroupCount' : 325,
879         'OpGetKernelMaxNumSubgroups' : 326,
880         'OpTypeNamedBarrier' : 327,
881         'OpNamedBarrierInitialize' : 328,
882         'OpMemoryNamedBarrier' : 329,
883         'OpModuleProcessed' : 330,
884         'OpSubgroupBallotKHR' : 4421,
885         'OpSubgroupFirstInvocationKHR' : 4422,
886     },
887
888 }
889