Merge pull request #39 from bashbaug/intel_enum_block
[platform/upstream/SPIRV-Headers.git] / include / spirv / 1.1 / spirv.lua
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