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