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