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
42spv = {
43    MagicNumber = 0x07230203,
44    Version = 0x00010200,
45    Revision = 2,
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        HlslCounterBufferGOOGLE = 5634,
370        HlslSemanticGOOGLE = 5635,
371    },
372
373    BuiltIn = {
374        Position = 0,
375        PointSize = 1,
376        ClipDistance = 3,
377        CullDistance = 4,
378        VertexId = 5,
379        InstanceId = 6,
380        PrimitiveId = 7,
381        InvocationId = 8,
382        Layer = 9,
383        ViewportIndex = 10,
384        TessLevelOuter = 11,
385        TessLevelInner = 12,
386        TessCoord = 13,
387        PatchVertices = 14,
388        FragCoord = 15,
389        PointCoord = 16,
390        FrontFacing = 17,
391        SampleId = 18,
392        SamplePosition = 19,
393        SampleMask = 20,
394        FragDepth = 22,
395        HelperInvocation = 23,
396        NumWorkgroups = 24,
397        WorkgroupSize = 25,
398        WorkgroupId = 26,
399        LocalInvocationId = 27,
400        GlobalInvocationId = 28,
401        LocalInvocationIndex = 29,
402        WorkDim = 30,
403        GlobalSize = 31,
404        EnqueuedWorkgroupSize = 32,
405        GlobalOffset = 33,
406        GlobalLinearId = 34,
407        SubgroupSize = 36,
408        SubgroupMaxSize = 37,
409        NumSubgroups = 38,
410        NumEnqueuedSubgroups = 39,
411        SubgroupId = 40,
412        SubgroupLocalInvocationId = 41,
413        VertexIndex = 42,
414        InstanceIndex = 43,
415        SubgroupEqMaskKHR = 4416,
416        SubgroupGeMaskKHR = 4417,
417        SubgroupGtMaskKHR = 4418,
418        SubgroupLeMaskKHR = 4419,
419        SubgroupLtMaskKHR = 4420,
420        BaseVertex = 4424,
421        BaseInstance = 4425,
422        DrawIndex = 4426,
423        DeviceIndex = 4438,
424        ViewIndex = 4440,
425        BaryCoordNoPerspAMD = 4992,
426        BaryCoordNoPerspCentroidAMD = 4993,
427        BaryCoordNoPerspSampleAMD = 4994,
428        BaryCoordSmoothAMD = 4995,
429        BaryCoordSmoothCentroidAMD = 4996,
430        BaryCoordSmoothSampleAMD = 4997,
431        BaryCoordPullModelAMD = 4998,
432        FragStencilRefEXT = 5014,
433        ViewportMaskNV = 5253,
434        SecondaryPositionNV = 5257,
435        SecondaryViewportMaskNV = 5258,
436        PositionPerViewNV = 5261,
437        ViewportMaskPerViewNV = 5262,
438    },
439
440    SelectionControlShift = {
441        Flatten = 0,
442        DontFlatten = 1,
443    },
444
445    SelectionControlMask = {
446        MaskNone = 0,
447        Flatten = 0x00000001,
448        DontFlatten = 0x00000002,
449    },
450
451    LoopControlShift = {
452        Unroll = 0,
453        DontUnroll = 1,
454        DependencyInfinite = 2,
455        DependencyLength = 3,
456    },
457
458    LoopControlMask = {
459        MaskNone = 0,
460        Unroll = 0x00000001,
461        DontUnroll = 0x00000002,
462        DependencyInfinite = 0x00000004,
463        DependencyLength = 0x00000008,
464    },
465
466    FunctionControlShift = {
467        Inline = 0,
468        DontInline = 1,
469        Pure = 2,
470        Const = 3,
471    },
472
473    FunctionControlMask = {
474        MaskNone = 0,
475        Inline = 0x00000001,
476        DontInline = 0x00000002,
477        Pure = 0x00000004,
478        Const = 0x00000008,
479    },
480
481    MemorySemanticsShift = {
482        Acquire = 1,
483        Release = 2,
484        AcquireRelease = 3,
485        SequentiallyConsistent = 4,
486        UniformMemory = 6,
487        SubgroupMemory = 7,
488        WorkgroupMemory = 8,
489        CrossWorkgroupMemory = 9,
490        AtomicCounterMemory = 10,
491        ImageMemory = 11,
492    },
493
494    MemorySemanticsMask = {
495        MaskNone = 0,
496        Acquire = 0x00000002,
497        Release = 0x00000004,
498        AcquireRelease = 0x00000008,
499        SequentiallyConsistent = 0x00000010,
500        UniformMemory = 0x00000040,
501        SubgroupMemory = 0x00000080,
502        WorkgroupMemory = 0x00000100,
503        CrossWorkgroupMemory = 0x00000200,
504        AtomicCounterMemory = 0x00000400,
505        ImageMemory = 0x00000800,
506    },
507
508    MemoryAccessShift = {
509        Volatile = 0,
510        Aligned = 1,
511        Nontemporal = 2,
512    },
513
514    MemoryAccessMask = {
515        MaskNone = 0,
516        Volatile = 0x00000001,
517        Aligned = 0x00000002,
518        Nontemporal = 0x00000004,
519    },
520
521    Scope = {
522        CrossDevice = 0,
523        Device = 1,
524        Workgroup = 2,
525        Subgroup = 3,
526        Invocation = 4,
527    },
528
529    GroupOperation = {
530        Reduce = 0,
531        InclusiveScan = 1,
532        ExclusiveScan = 2,
533    },
534
535    KernelEnqueueFlags = {
536        NoWait = 0,
537        WaitKernel = 1,
538        WaitWorkGroup = 2,
539    },
540
541    KernelProfilingInfoShift = {
542        CmdExecTime = 0,
543    },
544
545    KernelProfilingInfoMask = {
546        MaskNone = 0,
547        CmdExecTime = 0x00000001,
548    },
549
550    Capability = {
551        Matrix = 0,
552        Shader = 1,
553        Geometry = 2,
554        Tessellation = 3,
555        Addresses = 4,
556        Linkage = 5,
557        Kernel = 6,
558        Vector16 = 7,
559        Float16Buffer = 8,
560        Float16 = 9,
561        Float64 = 10,
562        Int64 = 11,
563        Int64Atomics = 12,
564        ImageBasic = 13,
565        ImageReadWrite = 14,
566        ImageMipmap = 15,
567        Pipes = 17,
568        Groups = 18,
569        DeviceEnqueue = 19,
570        LiteralSampler = 20,
571        AtomicStorage = 21,
572        Int16 = 22,
573        TessellationPointSize = 23,
574        GeometryPointSize = 24,
575        ImageGatherExtended = 25,
576        StorageImageMultisample = 27,
577        UniformBufferArrayDynamicIndexing = 28,
578        SampledImageArrayDynamicIndexing = 29,
579        StorageBufferArrayDynamicIndexing = 30,
580        StorageImageArrayDynamicIndexing = 31,
581        ClipDistance = 32,
582        CullDistance = 33,
583        ImageCubeArray = 34,
584        SampleRateShading = 35,
585        ImageRect = 36,
586        SampledRect = 37,
587        GenericPointer = 38,
588        Int8 = 39,
589        InputAttachment = 40,
590        SparseResidency = 41,
591        MinLod = 42,
592        Sampled1D = 43,
593        Image1D = 44,
594        SampledCubeArray = 45,
595        SampledBuffer = 46,
596        ImageBuffer = 47,
597        ImageMSArray = 48,
598        StorageImageExtendedFormats = 49,
599        ImageQuery = 50,
600        DerivativeControl = 51,
601        InterpolationFunction = 52,
602        TransformFeedback = 53,
603        GeometryStreams = 54,
604        StorageImageReadWithoutFormat = 55,
605        StorageImageWriteWithoutFormat = 56,
606        MultiViewport = 57,
607        SubgroupDispatch = 58,
608        NamedBarrier = 59,
609        PipeStorage = 60,
610        SubgroupBallotKHR = 4423,
611        DrawParameters = 4427,
612        SubgroupVoteKHR = 4431,
613        StorageBuffer16BitAccess = 4433,
614        StorageUniformBufferBlock16 = 4433,
615        StorageUniform16 = 4434,
616        UniformAndStorageBuffer16BitAccess = 4434,
617        StoragePushConstant16 = 4435,
618        StorageInputOutput16 = 4436,
619        DeviceGroup = 4437,
620        MultiView = 4439,
621        VariablePointersStorageBuffer = 4441,
622        VariablePointers = 4442,
623        AtomicStorageOps = 4445,
624        SampleMaskPostDepthCoverage = 4447,
625        ImageGatherBiasLodAMD = 5009,
626        FragmentMaskAMD = 5010,
627        StencilExportEXT = 5013,
628        ImageReadWriteLodAMD = 5015,
629        SampleMaskOverrideCoverageNV = 5249,
630        GeometryShaderPassthroughNV = 5251,
631        ShaderViewportIndexLayerEXT = 5254,
632        ShaderViewportIndexLayerNV = 5254,
633        ShaderViewportMaskNV = 5255,
634        ShaderStereoViewNV = 5259,
635        PerViewAttributesNV = 5260,
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        OpDecorateStringGOOGLE = 5632,
973        OpMemberDecorateStringGOOGLE = 5633,
974    },
975
976}
977
978