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