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