Home | History | Annotate | Download | only in 1.1
      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 = 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