/*
** Copyright (c) 2015 The Khronos Group Inc.
**
** Permission is hereby granted, free of charge, to any person obtaining a copy
** of this software and/or associated documentation files (the "Materials"),
** to deal in the Materials without restriction, including without limitation
** the rights to use, copy, modify, merge, publish, distribute, sublicense,
** and/or sell copies of the Materials, and to permit persons to whom the
** Materials are furnished to do so, subject to the following conditions:
**
** The above copyright notice and this permission notice shall be included in
** all copies or substantial portions of the Materials.
**
** MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS
** STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND
** HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/ 
**
** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
** OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
** THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
** FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS
** IN THE MATERIALS.
*/

/*
** This header is automatically generated by the same tool that creates
** the Binary Section of the SPIR-V specification.
*/

/*
** Specification revision 30.
** Enumeration tokens for SPIR-V, in three styles: C, C++, generic.
** - C++ will have the tokens in the "spv" name space, with no prefix.
** - C will have tokens with as "Spv" prefix.
**
** Some tokens act like mask values, which can be OR'd together,
** while others are mutually exclusive.  The mask-like ones have
** "Mask" in their name, and a parallel enum that has the shift
** amount (1 << x) for each corresponding enumerant.
*/

#ifndef spirv_H
#define spirv_H

#ifdef __cplusplus

namespace spv {

const int MagicNumber = 0x07230203;
const int Version = 99;
const int Revision = 30;

typedef unsigned int Id;

const unsigned int OpCodeMask = 0xFFFF;
const unsigned int WordCountShift = 16;

enum SourceLanguage {
    SourceLanguageUnknown = 0,
    SourceLanguageESSL = 1,
    SourceLanguageGLSL = 2,
    SourceLanguageOpenCL = 3,
};

enum ExecutionModel {
    ExecutionModelVertex = 0,
    ExecutionModelTessellationControl = 1,
    ExecutionModelTessellationEvaluation = 2,
    ExecutionModelGeometry = 3,
    ExecutionModelFragment = 4,
    ExecutionModelGLCompute = 5,
    ExecutionModelKernel = 6,
};

enum AddressingModel {
    AddressingModelLogical = 0,
    AddressingModelPhysical32 = 1,
    AddressingModelPhysical64 = 2,
};

enum MemoryModel {
    MemoryModelSimple = 0,
    MemoryModelGLSL450 = 1,
    MemoryModelOpenCL12 = 2,
    MemoryModelOpenCL20 = 3,
    MemoryModelOpenCL21 = 4,
};

enum ExecutionMode {
    ExecutionModeInvocations = 0,
    ExecutionModeSpacingEqual = 1,
    ExecutionModeSpacingFractionalEven = 2,
    ExecutionModeSpacingFractionalOdd = 3,
    ExecutionModeVertexOrderCw = 4,
    ExecutionModeVertexOrderCcw = 5,
    ExecutionModePixelCenterInteger = 6,
    ExecutionModeOriginUpperLeft = 7,
    ExecutionModeEarlyFragmentTests = 8,
    ExecutionModePointMode = 9,
    ExecutionModeXfb = 10,
    ExecutionModeDepthReplacing = 11,
    ExecutionModeDepthAny = 12,
    ExecutionModeDepthGreater = 13,
    ExecutionModeDepthLess = 14,
    ExecutionModeDepthUnchanged = 15,
    ExecutionModeLocalSize = 16,
    ExecutionModeLocalSizeHint = 17,
    ExecutionModeInputPoints = 18,
    ExecutionModeInputLines = 19,
    ExecutionModeInputLinesAdjacency = 20,
    ExecutionModeInputTriangles = 21,
    ExecutionModeInputTrianglesAdjacency = 22,
    ExecutionModeInputQuads = 23,
    ExecutionModeInputIsolines = 24,
    ExecutionModeOutputVertices = 25,
    ExecutionModeOutputPoints = 26,
    ExecutionModeOutputLineStrip = 27,
    ExecutionModeOutputTriangleStrip = 28,
    ExecutionModeVecTypeHint = 29,
    ExecutionModeContractionOff = 30,
};

enum StorageClass {
    StorageClassUniformConstant = 0,
    StorageClassInput = 1,
    StorageClassUniform = 2,
    StorageClassOutput = 3,
    StorageClassWorkgroupLocal = 4,
    StorageClassWorkgroupGlobal = 5,
    StorageClassPrivateGlobal = 6,
    StorageClassFunction = 7,
    StorageClassGeneric = 8,
    StorageClassPrivate = 9,
    StorageClassAtomicCounter = 10,
};

enum Dim {
    Dim1D = 0,
    Dim2D = 1,
    Dim3D = 2,
    DimCube = 3,
    DimRect = 4,
    DimBuffer = 5,
};

enum SamplerAddressingMode {
    SamplerAddressingModeNone = 0,
    SamplerAddressingModeClampToEdge = 1,
    SamplerAddressingModeClamp = 2,
    SamplerAddressingModeRepeat = 3,
    SamplerAddressingModeRepeatMirrored = 4,
};

enum SamplerFilterMode {
    SamplerFilterModeNearest = 0,
    SamplerFilterModeLinear = 1,
};

enum FPFastMathModeShift {
    FPFastMathModeNotNaNShift = 0,
    FPFastMathModeNotInfShift = 1,
    FPFastMathModeNSZShift = 2,
    FPFastMathModeAllowRecipShift = 3,
    FPFastMathModeFastShift = 4,
};

enum FPFastMathModeMask {
    FPFastMathModeMaskNone = 0,
    FPFastMathModeNotNaNMask = 0x00000001,
    FPFastMathModeNotInfMask = 0x00000002,
    FPFastMathModeNSZMask = 0x00000004,
    FPFastMathModeAllowRecipMask = 0x00000008,
    FPFastMathModeFastMask = 0x00000010,
};

enum FPRoundingMode {
    FPRoundingModeRTE = 0,
    FPRoundingModeRTZ = 1,
    FPRoundingModeRTP = 2,
    FPRoundingModeRTN = 3,
};

enum LinkageType {
    LinkageTypeExport = 0,
    LinkageTypeImport = 1,
};

enum AccessQualifier {
    AccessQualifierReadOnly = 0,
    AccessQualifierWriteOnly = 1,
    AccessQualifierReadWrite = 2,
};

enum FunctionParameterAttribute {
    FunctionParameterAttributeZext = 0,
    FunctionParameterAttributeSext = 1,
    FunctionParameterAttributeByVal = 2,
    FunctionParameterAttributeSret = 3,
    FunctionParameterAttributeNoAlias = 4,
    FunctionParameterAttributeNoCapture = 5,
    FunctionParameterAttributeSVM = 6,
    FunctionParameterAttributeNoWrite = 7,
    FunctionParameterAttributeNoReadWrite = 8,
};

enum Decoration {
    DecorationPrecisionLow = 0,
    DecorationPrecisionMedium = 1,
    DecorationPrecisionHigh = 2,
    DecorationBlock = 3,
    DecorationBufferBlock = 4,
    DecorationRowMajor = 5,
    DecorationColMajor = 6,
    DecorationGLSLShared = 7,
    DecorationGLSLStd140 = 8,
    DecorationGLSLStd430 = 9,
    DecorationGLSLPacked = 10,
    DecorationSmooth = 11,
    DecorationNoperspective = 12,
    DecorationFlat = 13,
    DecorationPatch = 14,
    DecorationCentroid = 15,
    DecorationSample = 16,
    DecorationInvariant = 17,
    DecorationRestrict = 18,
    DecorationAliased = 19,
    DecorationVolatile = 20,
    DecorationConstant = 21,
    DecorationCoherent = 22,
    DecorationNonwritable = 23,
    DecorationNonreadable = 24,
    DecorationUniform = 25,
    DecorationNoStaticUse = 26,
    DecorationCPacked = 27,
    DecorationSaturatedConversion = 28,
    DecorationStream = 29,
    DecorationLocation = 30,
    DecorationComponent = 31,
    DecorationIndex = 32,
    DecorationBinding = 33,
    DecorationDescriptorSet = 34,
    DecorationOffset = 35,
    DecorationAlignment = 36,
    DecorationXfbBuffer = 37,
    DecorationStride = 38,
    DecorationBuiltIn = 39,
    DecorationFuncParamAttr = 40,
    DecorationFPRoundingMode = 41,
    DecorationFPFastMathMode = 42,
    DecorationLinkageAttributes = 43,
    DecorationSpecId = 44,
};

enum BuiltIn {
    BuiltInPosition = 0,
    BuiltInPointSize = 1,
    BuiltInClipVertex = 2,
    BuiltInClipDistance = 3,
    BuiltInCullDistance = 4,
    BuiltInVertexId = 5,
    BuiltInInstanceId = 6,
    BuiltInPrimitiveId = 7,
    BuiltInInvocationId = 8,
    BuiltInLayer = 9,
    BuiltInViewportIndex = 10,
    BuiltInTessLevelOuter = 11,
    BuiltInTessLevelInner = 12,
    BuiltInTessCoord = 13,
    BuiltInPatchVertices = 14,
    BuiltInFragCoord = 15,
    BuiltInPointCoord = 16,
    BuiltInFrontFacing = 17,
    BuiltInSampleId = 18,
    BuiltInSamplePosition = 19,
    BuiltInSampleMask = 20,
    BuiltInFragColor = 21,
    BuiltInFragDepth = 22,
    BuiltInHelperInvocation = 23,
    BuiltInNumWorkgroups = 24,
    BuiltInWorkgroupSize = 25,
    BuiltInWorkgroupId = 26,
    BuiltInLocalInvocationId = 27,
    BuiltInGlobalInvocationId = 28,
    BuiltInLocalInvocationIndex = 29,
    BuiltInWorkDim = 30,
    BuiltInGlobalSize = 31,
    BuiltInEnqueuedWorkgroupSize = 32,
    BuiltInGlobalOffset = 33,
    BuiltInGlobalLinearId = 34,
    BuiltInWorkgroupLinearId = 35,
    BuiltInSubgroupSize = 36,
    BuiltInSubgroupMaxSize = 37,
    BuiltInNumSubgroups = 38,
    BuiltInNumEnqueuedSubgroups = 39,
    BuiltInSubgroupId = 40,
    BuiltInSubgroupLocalInvocationId = 41,
};

enum SelectionControlShift {
    SelectionControlFlattenShift = 0,
    SelectionControlDontFlattenShift = 1,
};

enum SelectionControlMask {
    SelectionControlMaskNone = 0,
    SelectionControlFlattenMask = 0x00000001,
    SelectionControlDontFlattenMask = 0x00000002,
};

enum LoopControlShift {
    LoopControlUnrollShift = 0,
    LoopControlDontUnrollShift = 1,
};

enum LoopControlMask {
    LoopControlMaskNone = 0,
    LoopControlUnrollMask = 0x00000001,
    LoopControlDontUnrollMask = 0x00000002,
};

enum FunctionControlShift {
    FunctionControlInlineShift = 0,
    FunctionControlDontInlineShift = 1,
    FunctionControlPureShift = 2,
    FunctionControlConstShift = 3,
};

enum FunctionControlMask {
    FunctionControlMaskNone = 0,
    FunctionControlInlineMask = 0x00000001,
    FunctionControlDontInlineMask = 0x00000002,
    FunctionControlPureMask = 0x00000004,
    FunctionControlConstMask = 0x00000008,
};

enum MemorySemanticsShift {
    MemorySemanticsRelaxedShift = 0,
    MemorySemanticsSequentiallyConsistentShift = 1,
    MemorySemanticsAcquireShift = 2,
    MemorySemanticsReleaseShift = 3,
    MemorySemanticsUniformMemoryShift = 4,
    MemorySemanticsSubgroupMemoryShift = 5,
    MemorySemanticsWorkgroupLocalMemoryShift = 6,
    MemorySemanticsWorkgroupGlobalMemoryShift = 7,
    MemorySemanticsAtomicCounterMemoryShift = 8,
    MemorySemanticsImageMemoryShift = 9,
};

enum MemorySemanticsMask {
    MemorySemanticsMaskNone = 0,
    MemorySemanticsRelaxedMask = 0x00000001,
    MemorySemanticsSequentiallyConsistentMask = 0x00000002,
    MemorySemanticsAcquireMask = 0x00000004,
    MemorySemanticsReleaseMask = 0x00000008,
    MemorySemanticsUniformMemoryMask = 0x00000010,
    MemorySemanticsSubgroupMemoryMask = 0x00000020,
    MemorySemanticsWorkgroupLocalMemoryMask = 0x00000040,
    MemorySemanticsWorkgroupGlobalMemoryMask = 0x00000080,
    MemorySemanticsAtomicCounterMemoryMask = 0x00000100,
    MemorySemanticsImageMemoryMask = 0x00000200,
};

enum MemoryAccessShift {
    MemoryAccessVolatileShift = 0,
    MemoryAccessAlignedShift = 1,
};

enum MemoryAccessMask {
    MemoryAccessMaskNone = 0,
    MemoryAccessVolatileMask = 0x00000001,
    MemoryAccessAlignedMask = 0x00000002,
};

enum ExecutionScope {
    ExecutionScopeCrossDevice = 0,
    ExecutionScopeDevice = 1,
    ExecutionScopeWorkgroup = 2,
    ExecutionScopeSubgroup = 3,
};

enum GroupOperation {
    GroupOperationReduce = 0,
    GroupOperationInclusiveScan = 1,
    GroupOperationExclusiveScan = 2,
};

enum KernelEnqueueFlags {
    KernelEnqueueFlagsNoWait = 0,
    KernelEnqueueFlagsWaitKernel = 1,
    KernelEnqueueFlagsWaitWorkGroup = 2,
};

enum KernelProfilingInfoShift {
    KernelProfilingInfoCmdExecTimeShift = 0,
};

enum KernelProfilingInfoMask {
    KernelProfilingInfoMaskNone = 0,
    KernelProfilingInfoCmdExecTimeMask = 0x00000001,
};

enum Op {
    OpNop = 0,
    OpSource = 1,
    OpSourceExtension = 2,
    OpExtension = 3,
    OpExtInstImport = 4,
    OpMemoryModel = 5,
    OpEntryPoint = 6,
    OpExecutionMode = 7,
    OpTypeVoid = 8,
    OpTypeBool = 9,
    OpTypeInt = 10,
    OpTypeFloat = 11,
    OpTypeVector = 12,
    OpTypeMatrix = 13,
    OpTypeSampler = 14,
    OpTypeFilter = 15,
    OpTypeArray = 16,
    OpTypeRuntimeArray = 17,
    OpTypeStruct = 18,
    OpTypeOpaque = 19,
    OpTypePointer = 20,
    OpTypeFunction = 21,
    OpTypeEvent = 22,
    OpTypeDeviceEvent = 23,
    OpTypeReserveId = 24,
    OpTypeQueue = 25,
    OpTypePipe = 26,
    OpConstantTrue = 27,
    OpConstantFalse = 28,
    OpConstant = 29,
    OpConstantComposite = 30,
    OpConstantSampler = 31,
    OpConstantNullPointer = 32,
    OpConstantNullObject = 33,
    OpSpecConstantTrue = 34,
    OpSpecConstantFalse = 35,
    OpSpecConstant = 36,
    OpSpecConstantComposite = 37,
    OpVariable = 38,
    OpVariableArray = 39,
    OpFunction = 40,
    OpFunctionParameter = 41,
    OpFunctionEnd = 42,
    OpFunctionCall = 43,
    OpExtInst = 44,
    OpUndef = 45,
    OpLoad = 46,
    OpStore = 47,
    OpPhi = 48,
    OpDecorationGroup = 49,
    OpDecorate = 50,
    OpMemberDecorate = 51,
    OpGroupDecorate = 52,
    OpGroupMemberDecorate = 53,
    OpName = 54,
    OpMemberName = 55,
    OpString = 56,
    OpLine = 57,
    OpVectorExtractDynamic = 58,
    OpVectorInsertDynamic = 59,
    OpVectorShuffle = 60,
    OpCompositeConstruct = 61,
    OpCompositeExtract = 62,
    OpCompositeInsert = 63,
    OpCopyObject = 64,
    OpCopyMemory = 65,
    OpCopyMemorySized = 66,
    OpSampler = 67,
    OpTextureSample = 68,
    OpTextureSampleDref = 69,
    OpTextureSampleLod = 70,
    OpTextureSampleProj = 71,
    OpTextureSampleGrad = 72,
    OpTextureSampleOffset = 73,
    OpTextureSampleProjLod = 74,
    OpTextureSampleProjGrad = 75,
    OpTextureSampleLodOffset = 76,
    OpTextureSampleProjOffset = 77,
    OpTextureSampleGradOffset = 78,
    OpTextureSampleProjLodOffset = 79,
    OpTextureSampleProjGradOffset = 80,
    OpTextureFetchTexelLod = 81,
    OpTextureFetchTexelOffset = 82,
    OpTextureFetchSample = 83,
    OpTextureFetchTexel = 84,
    OpTextureGather = 85,
    OpTextureGatherOffset = 86,
    OpTextureGatherOffsets = 87,
    OpTextureQuerySizeLod = 88,
    OpTextureQuerySize = 89,
    OpTextureQueryLod = 90,
    OpTextureQueryLevels = 91,
    OpTextureQuerySamples = 92,
    OpAccessChain = 93,
    OpInBoundsAccessChain = 94,
    OpSNegate = 95,
    OpFNegate = 96,
    OpNot = 97,
    OpAny = 98,
    OpAll = 99,
    OpConvertFToU = 100,
    OpConvertFToS = 101,
    OpConvertSToF = 102,
    OpConvertUToF = 103,
    OpUConvert = 104,
    OpSConvert = 105,
    OpFConvert = 106,
    OpConvertPtrToU = 107,
    OpConvertUToPtr = 108,
    OpPtrCastToGeneric = 109,
    OpGenericCastToPtr = 110,
    OpBitcast = 111,
    OpTranspose = 112,
    OpIsNan = 113,
    OpIsInf = 114,
    OpIsFinite = 115,
    OpIsNormal = 116,
    OpSignBitSet = 117,
    OpLessOrGreater = 118,
    OpOrdered = 119,
    OpUnordered = 120,
    OpArrayLength = 121,
    OpIAdd = 122,
    OpFAdd = 123,
    OpISub = 124,
    OpFSub = 125,
    OpIMul = 126,
    OpFMul = 127,
    OpUDiv = 128,
    OpSDiv = 129,
    OpFDiv = 130,
    OpUMod = 131,
    OpSRem = 132,
    OpSMod = 133,
    OpFRem = 134,
    OpFMod = 135,
    OpVectorTimesScalar = 136,
    OpMatrixTimesScalar = 137,
    OpVectorTimesMatrix = 138,
    OpMatrixTimesVector = 139,
    OpMatrixTimesMatrix = 140,
    OpOuterProduct = 141,
    OpDot = 142,
    OpShiftRightLogical = 143,
    OpShiftRightArithmetic = 144,
    OpShiftLeftLogical = 145,
    OpLogicalOr = 146,
    OpLogicalXor = 147,
    OpLogicalAnd = 148,
    OpBitwiseOr = 149,
    OpBitwiseXor = 150,
    OpBitwiseAnd = 151,
    OpSelect = 152,
    OpIEqual = 153,
    OpFOrdEqual = 154,
    OpFUnordEqual = 155,
    OpINotEqual = 156,
    OpFOrdNotEqual = 157,
    OpFUnordNotEqual = 158,
    OpULessThan = 159,
    OpSLessThan = 160,
    OpFOrdLessThan = 161,
    OpFUnordLessThan = 162,
    OpUGreaterThan = 163,
    OpSGreaterThan = 164,
    OpFOrdGreaterThan = 165,
    OpFUnordGreaterThan = 166,
    OpULessThanEqual = 167,
    OpSLessThanEqual = 168,
    OpFOrdLessThanEqual = 169,
    OpFUnordLessThanEqual = 170,
    OpUGreaterThanEqual = 171,
    OpSGreaterThanEqual = 172,
    OpFOrdGreaterThanEqual = 173,
    OpFUnordGreaterThanEqual = 174,
    OpDPdx = 175,
    OpDPdy = 176,
    OpFwidth = 177,
    OpDPdxFine = 178,
    OpDPdyFine = 179,
    OpFwidthFine = 180,
    OpDPdxCoarse = 181,
    OpDPdyCoarse = 182,
    OpFwidthCoarse = 183,
    OpEmitVertex = 184,
    OpEndPrimitive = 185,
    OpEmitStreamVertex = 186,
    OpEndStreamPrimitive = 187,
    OpControlBarrier = 188,
    OpMemoryBarrier = 189,
    OpImagePointer = 190,
    OpAtomicInit = 191,
    OpAtomicLoad = 192,
    OpAtomicStore = 193,
    OpAtomicExchange = 194,
    OpAtomicCompareExchange = 195,
    OpAtomicCompareExchangeWeak = 196,
    OpAtomicIIncrement = 197,
    OpAtomicIDecrement = 198,
    OpAtomicIAdd = 199,
    OpAtomicISub = 200,
    OpAtomicUMin = 201,
    OpAtomicUMax = 202,
    OpAtomicAnd = 203,
    OpAtomicOr = 204,
    OpAtomicXor = 205,
    OpLoopMerge = 206,
    OpSelectionMerge = 207,
    OpLabel = 208,
    OpBranch = 209,
    OpBranchConditional = 210,
    OpSwitch = 211,
    OpKill = 212,
    OpReturn = 213,
    OpReturnValue = 214,
    OpUnreachable = 215,
    OpLifetimeStart = 216,
    OpLifetimeStop = 217,
    OpCompileFlag = 218,
    OpAsyncGroupCopy = 219,
    OpWaitGroupEvents = 220,
    OpGroupAll = 221,
    OpGroupAny = 222,
    OpGroupBroadcast = 223,
    OpGroupIAdd = 224,
    OpGroupFAdd = 225,
    OpGroupFMin = 226,
    OpGroupUMin = 227,
    OpGroupSMin = 228,
    OpGroupFMax = 229,
    OpGroupUMax = 230,
    OpGroupSMax = 231,
    OpGenericCastToPtrExplicit = 232,
    OpGenericPtrMemSemantics = 233,
    OpReadPipe = 234,
    OpWritePipe = 235,
    OpReservedReadPipe = 236,
    OpReservedWritePipe = 237,
    OpReserveReadPipePackets = 238,
    OpReserveWritePipePackets = 239,
    OpCommitReadPipe = 240,
    OpCommitWritePipe = 241,
    OpIsValidReserveId = 242,
    OpGetNumPipePackets = 243,
    OpGetMaxPipePackets = 244,
    OpGroupReserveReadPipePackets = 245,
    OpGroupReserveWritePipePackets = 246,
    OpGroupCommitReadPipe = 247,
    OpGroupCommitWritePipe = 248,
    OpEnqueueMarker = 249,
    OpEnqueueKernel = 250,
    OpGetKernelNDrangeSubGroupCount = 251,
    OpGetKernelNDrangeMaxSubGroupSize = 252,
    OpGetKernelWorkGroupSize = 253,
    OpGetKernelPreferredWorkGroupSizeMultiple = 254,
    OpRetainEvent = 255,
    OpReleaseEvent = 256,
    OpCreateUserEvent = 257,
    OpIsValidEvent = 258,
    OpSetUserEventStatus = 259,
    OpCaptureEventProfilingInfo = 260,
    OpGetDefaultQueue = 261,
    OpBuildNDRange = 262,
    OpSatConvertSToU = 263,
    OpSatConvertUToS = 264,
    OpAtomicIMin = 265,
    OpAtomicIMax = 266,
};

};  // end namespace spv

#endif  // #ifdef __cplusplus


#ifndef __cplusplus

const int SpvMagicNumber = 0x07230203;
const int SpvVersion = 99;
const int SpvRevision = 30;

typedef unsigned int SpvId;

const unsigned int SpvOpCodeMask = 0xFFFF;
const unsigned int SpvWordCountShift = 16;

typedef enum SpvSourceLanguage_ {
    SpvSourceLanguageUnknown = 0,
    SpvSourceLanguageESSL = 1,
    SpvSourceLanguageGLSL = 2,
    SpvSourceLanguageOpenCL = 3,
} SpvSourceLanguage;

typedef enum SpvExecutionModel_ {
    SpvExecutionModelVertex = 0,
    SpvExecutionModelTessellationControl = 1,
    SpvExecutionModelTessellationEvaluation = 2,
    SpvExecutionModelGeometry = 3,
    SpvExecutionModelFragment = 4,
    SpvExecutionModelGLCompute = 5,
    SpvExecutionModelKernel = 6,
} SpvExecutionModel;

typedef enum SpvAddressingModel_ {
    SpvAddressingModelLogical = 0,
    SpvAddressingModelPhysical32 = 1,
    SpvAddressingModelPhysical64 = 2,
} SpvAddressingModel;

typedef enum SpvMemoryModel_ {
    SpvMemoryModelSimple = 0,
    SpvMemoryModelGLSL450 = 1,
    SpvMemoryModelOpenCL12 = 2,
    SpvMemoryModelOpenCL20 = 3,
    SpvMemoryModelOpenCL21 = 4,
} SpvMemoryModel;

typedef enum SpvExecutionMode_ {
    SpvExecutionModeInvocations = 0,
    SpvExecutionModeSpacingEqual = 1,
    SpvExecutionModeSpacingFractionalEven = 2,
    SpvExecutionModeSpacingFractionalOdd = 3,
    SpvExecutionModeVertexOrderCw = 4,
    SpvExecutionModeVertexOrderCcw = 5,
    SpvExecutionModePixelCenterInteger = 6,
    SpvExecutionModeOriginUpperLeft = 7,
    SpvExecutionModeEarlyFragmentTests = 8,
    SpvExecutionModePointMode = 9,
    SpvExecutionModeXfb = 10,
    SpvExecutionModeDepthReplacing = 11,
    SpvExecutionModeDepthAny = 12,
    SpvExecutionModeDepthGreater = 13,
    SpvExecutionModeDepthLess = 14,
    SpvExecutionModeDepthUnchanged = 15,
    SpvExecutionModeLocalSize = 16,
    SpvExecutionModeLocalSizeHint = 17,
    SpvExecutionModeInputPoints = 18,
    SpvExecutionModeInputLines = 19,
    SpvExecutionModeInputLinesAdjacency = 20,
    SpvExecutionModeInputTriangles = 21,
    SpvExecutionModeInputTrianglesAdjacency = 22,
    SpvExecutionModeInputQuads = 23,
    SpvExecutionModeInputIsolines = 24,
    SpvExecutionModeOutputVertices = 25,
    SpvExecutionModeOutputPoints = 26,
    SpvExecutionModeOutputLineStrip = 27,
    SpvExecutionModeOutputTriangleStrip = 28,
    SpvExecutionModeVecTypeHint = 29,
    SpvExecutionModeContractionOff = 30,
} SpvExecutionMode;

typedef enum SpvStorageClass_ {
    SpvStorageClassUniformConstant = 0,
    SpvStorageClassInput = 1,
    SpvStorageClassUniform = 2,
    SpvStorageClassOutput = 3,
    SpvStorageClassWorkgroupLocal = 4,
    SpvStorageClassWorkgroupGlobal = 5,
    SpvStorageClassPrivateGlobal = 6,
    SpvStorageClassFunction = 7,
    SpvStorageClassGeneric = 8,
    SpvStorageClassPrivate = 9,
    SpvStorageClassAtomicCounter = 10,
} SpvStorageClass;

typedef enum SpvDim_ {
    SpvDim1D = 0,
    SpvDim2D = 1,
    SpvDim3D = 2,
    SpvDimCube = 3,
    SpvDimRect = 4,
    SpvDimBuffer = 5,
} SpvDim;

typedef enum SpvSamplerAddressingMode_ {
    SpvSamplerAddressingModeNone = 0,
    SpvSamplerAddressingModeClampToEdge = 1,
    SpvSamplerAddressingModeClamp = 2,
    SpvSamplerAddressingModeRepeat = 3,
    SpvSamplerAddressingModeRepeatMirrored = 4,
} SpvSamplerAddressingMode;

typedef enum SpvSamplerFilterMode_ {
    SpvSamplerFilterModeNearest = 0,
    SpvSamplerFilterModeLinear = 1,
} SpvSamplerFilterMode;

typedef enum SpvFPFastMathModeShift_ {
    SpvFPFastMathModeNotNaNShift = 0,
    SpvFPFastMathModeNotInfShift = 1,
    SpvFPFastMathModeNSZShift = 2,
    SpvFPFastMathModeAllowRecipShift = 3,
    SpvFPFastMathModeFastShift = 4,
} SpvFPFastMathModeShift;

typedef enum SpvFPFastMathModeMask_ {
    SpvFPFastMathModeMaskNone = 0,
    SpvFPFastMathModeNotNaNMask = 0x00000001,
    SpvFPFastMathModeNotInfMask = 0x00000002,
    SpvFPFastMathModeNSZMask = 0x00000004,
    SpvFPFastMathModeAllowRecipMask = 0x00000008,
    SpvFPFastMathModeFastMask = 0x00000010,
} SpvFPFastMathModeMask;

typedef enum SpvFPRoundingMode_ {
    SpvFPRoundingModeRTE = 0,
    SpvFPRoundingModeRTZ = 1,
    SpvFPRoundingModeRTP = 2,
    SpvFPRoundingModeRTN = 3,
} SpvFPRoundingMode;

typedef enum SpvLinkageType_ {
    SpvLinkageTypeExport = 0,
    SpvLinkageTypeImport = 1,
} SpvLinkageType;

typedef enum SpvAccessQualifier_ {
    SpvAccessQualifierReadOnly = 0,
    SpvAccessQualifierWriteOnly = 1,
    SpvAccessQualifierReadWrite = 2,
} SpvAccessQualifier;

typedef enum SpvFunctionParameterAttribute_ {
    SpvFunctionParameterAttributeZext = 0,
    SpvFunctionParameterAttributeSext = 1,
    SpvFunctionParameterAttributeByVal = 2,
    SpvFunctionParameterAttributeSret = 3,
    SpvFunctionParameterAttributeNoAlias = 4,
    SpvFunctionParameterAttributeNoCapture = 5,
    SpvFunctionParameterAttributeSVM = 6,
    SpvFunctionParameterAttributeNoWrite = 7,
    SpvFunctionParameterAttributeNoReadWrite = 8,
} SpvFunctionParameterAttribute;

typedef enum SpvDecoration_ {
    SpvDecorationPrecisionLow = 0,
    SpvDecorationPrecisionMedium = 1,
    SpvDecorationPrecisionHigh = 2,
    SpvDecorationBlock = 3,
    SpvDecorationBufferBlock = 4,
    SpvDecorationRowMajor = 5,
    SpvDecorationColMajor = 6,
    SpvDecorationGLSLShared = 7,
    SpvDecorationGLSLStd140 = 8,
    SpvDecorationGLSLStd430 = 9,
    SpvDecorationGLSLPacked = 10,
    SpvDecorationSmooth = 11,
    SpvDecorationNoperspective = 12,
    SpvDecorationFlat = 13,
    SpvDecorationPatch = 14,
    SpvDecorationCentroid = 15,
    SpvDecorationSample = 16,
    SpvDecorationInvariant = 17,
    SpvDecorationRestrict = 18,
    SpvDecorationAliased = 19,
    SpvDecorationVolatile = 20,
    SpvDecorationConstant = 21,
    SpvDecorationCoherent = 22,
    SpvDecorationNonwritable = 23,
    SpvDecorationNonreadable = 24,
    SpvDecorationUniform = 25,
    SpvDecorationNoStaticUse = 26,
    SpvDecorationCPacked = 27,
    SpvDecorationSaturatedConversion = 28,
    SpvDecorationStream = 29,
    SpvDecorationLocation = 30,
    SpvDecorationComponent = 31,
    SpvDecorationIndex = 32,
    SpvDecorationBinding = 33,
    SpvDecorationDescriptorSet = 34,
    SpvDecorationOffset = 35,
    SpvDecorationAlignment = 36,
    SpvDecorationXfbBuffer = 37,
    SpvDecorationStride = 38,
    SpvDecorationBuiltIn = 39,
    SpvDecorationFuncParamAttr = 40,
    SpvDecorationFPRoundingMode = 41,
    SpvDecorationFPFastMathMode = 42,
    SpvDecorationLinkageAttributes = 43,
    SpvDecorationSpecId = 44,
} SpvDecoration;

typedef enum SpvBuiltIn_ {
    SpvBuiltInPosition = 0,
    SpvBuiltInPointSize = 1,
    SpvBuiltInClipVertex = 2,
    SpvBuiltInClipDistance = 3,
    SpvBuiltInCullDistance = 4,
    SpvBuiltInVertexId = 5,
    SpvBuiltInInstanceId = 6,
    SpvBuiltInPrimitiveId = 7,
    SpvBuiltInInvocationId = 8,
    SpvBuiltInLayer = 9,
    SpvBuiltInViewportIndex = 10,
    SpvBuiltInTessLevelOuter = 11,
    SpvBuiltInTessLevelInner = 12,
    SpvBuiltInTessCoord = 13,
    SpvBuiltInPatchVertices = 14,
    SpvBuiltInFragCoord = 15,
    SpvBuiltInPointCoord = 16,
    SpvBuiltInFrontFacing = 17,
    SpvBuiltInSampleId = 18,
    SpvBuiltInSamplePosition = 19,
    SpvBuiltInSampleMask = 20,
    SpvBuiltInFragColor = 21,
    SpvBuiltInFragDepth = 22,
    SpvBuiltInHelperInvocation = 23,
    SpvBuiltInNumWorkgroups = 24,
    SpvBuiltInWorkgroupSize = 25,
    SpvBuiltInWorkgroupId = 26,
    SpvBuiltInLocalInvocationId = 27,
    SpvBuiltInGlobalInvocationId = 28,
    SpvBuiltInLocalInvocationIndex = 29,
    SpvBuiltInWorkDim = 30,
    SpvBuiltInGlobalSize = 31,
    SpvBuiltInEnqueuedWorkgroupSize = 32,
    SpvBuiltInGlobalOffset = 33,
    SpvBuiltInGlobalLinearId = 34,
    SpvBuiltInWorkgroupLinearId = 35,
    SpvBuiltInSubgroupSize = 36,
    SpvBuiltInSubgroupMaxSize = 37,
    SpvBuiltInNumSubgroups = 38,
    SpvBuiltInNumEnqueuedSubgroups = 39,
    SpvBuiltInSubgroupId = 40,
    SpvBuiltInSubgroupLocalInvocationId = 41,
} SpvBuiltIn;

typedef enum SpvSelectionControlShift_ {
    SpvSelectionControlFlattenShift = 0,
    SpvSelectionControlDontFlattenShift = 1,
} SpvSelectionControlShift;

typedef enum SpvSelectionControlMask_ {
    SpvSelectionControlMaskNone = 0,
    SpvSelectionControlFlattenMask = 0x00000001,
    SpvSelectionControlDontFlattenMask = 0x00000002,
} SpvSelectionControlMask;

typedef enum SpvLoopControlShift_ {
    SpvLoopControlUnrollShift = 0,
    SpvLoopControlDontUnrollShift = 1,
} SpvLoopControlShift;

typedef enum SpvLoopControlMask_ {
    SpvLoopControlMaskNone = 0,
    SpvLoopControlUnrollMask = 0x00000001,
    SpvLoopControlDontUnrollMask = 0x00000002,
} SpvLoopControlMask;

typedef enum SpvFunctionControlShift_ {
    SpvFunctionControlInlineShift = 0,
    SpvFunctionControlDontInlineShift = 1,
    SpvFunctionControlPureShift = 2,
    SpvFunctionControlConstShift = 3,
} SpvFunctionControlShift;

typedef enum SpvFunctionControlMask_ {
    SpvFunctionControlMaskNone = 0,
    SpvFunctionControlInlineMask = 0x00000001,
    SpvFunctionControlDontInlineMask = 0x00000002,
    SpvFunctionControlPureMask = 0x00000004,
    SpvFunctionControlConstMask = 0x00000008,
} SpvFunctionControlMask;

typedef enum SpvMemorySemanticsShift_ {
    SpvMemorySemanticsRelaxedShift = 0,
    SpvMemorySemanticsSequentiallyConsistentShift = 1,
    SpvMemorySemanticsAcquireShift = 2,
    SpvMemorySemanticsReleaseShift = 3,
    SpvMemorySemanticsUniformMemoryShift = 4,
    SpvMemorySemanticsSubgroupMemoryShift = 5,
    SpvMemorySemanticsWorkgroupLocalMemoryShift = 6,
    SpvMemorySemanticsWorkgroupGlobalMemoryShift = 7,
    SpvMemorySemanticsAtomicCounterMemoryShift = 8,
    SpvMemorySemanticsImageMemoryShift = 9,
} SpvMemorySemanticsShift;

typedef enum SpvMemorySemanticsMask_ {
    SpvMemorySemanticsMaskNone = 0,
    SpvMemorySemanticsRelaxedMask = 0x00000001,
    SpvMemorySemanticsSequentiallyConsistentMask = 0x00000002,
    SpvMemorySemanticsAcquireMask = 0x00000004,
    SpvMemorySemanticsReleaseMask = 0x00000008,
    SpvMemorySemanticsUniformMemoryMask = 0x00000010,
    SpvMemorySemanticsSubgroupMemoryMask = 0x00000020,
    SpvMemorySemanticsWorkgroupLocalMemoryMask = 0x00000040,
    SpvMemorySemanticsWorkgroupGlobalMemoryMask = 0x00000080,
    SpvMemorySemanticsAtomicCounterMemoryMask = 0x00000100,
    SpvMemorySemanticsImageMemoryMask = 0x00000200,
} SpvMemorySemanticsMask;

typedef enum SpvMemoryAccessShift_ {
    SpvMemoryAccessVolatileShift = 0,
    SpvMemoryAccessAlignedShift = 1,
} SpvMemoryAccessShift;

typedef enum SpvMemoryAccessMask_ {
    SpvMemoryAccessMaskNone = 0,
    SpvMemoryAccessVolatileMask = 0x00000001,
    SpvMemoryAccessAlignedMask = 0x00000002,
} SpvMemoryAccessMask;

typedef enum SpvExecutionScope_ {
    SpvExecutionScopeCrossDevice = 0,
    SpvExecutionScopeDevice = 1,
    SpvExecutionScopeWorkgroup = 2,
    SpvExecutionScopeSubgroup = 3,
} SpvExecutionScope;

typedef enum SpvGroupOperation_ {
    SpvGroupOperationReduce = 0,
    SpvGroupOperationInclusiveScan = 1,
    SpvGroupOperationExclusiveScan = 2,
} SpvGroupOperation;

typedef enum SpvKernelEnqueueFlags_ {
    SpvKernelEnqueueFlagsNoWait = 0,
    SpvKernelEnqueueFlagsWaitKernel = 1,
    SpvKernelEnqueueFlagsWaitWorkGroup = 2,
} SpvKernelEnqueueFlags;

typedef enum SpvKernelProfilingInfoShift_ {
    SpvKernelProfilingInfoCmdExecTimeShift = 0,
} SpvKernelProfilingInfoShift;

typedef enum SpvKernelProfilingInfoMask_ {
    SpvKernelProfilingInfoMaskNone = 0,
    SpvKernelProfilingInfoCmdExecTimeMask = 0x00000001,
} SpvKernelProfilingInfoMask;

typedef enum SpvOp_ {
    SpvOpNop = 0,
    SpvOpSource = 1,
    SpvOpSourceExtension = 2,
    SpvOpExtension = 3,
    SpvOpExtInstImport = 4,
    SpvOpMemoryModel = 5,
    SpvOpEntryPoint = 6,
    SpvOpExecutionMode = 7,
    SpvOpTypeVoid = 8,
    SpvOpTypeBool = 9,
    SpvOpTypeInt = 10,
    SpvOpTypeFloat = 11,
    SpvOpTypeVector = 12,
    SpvOpTypeMatrix = 13,
    SpvOpTypeSampler = 14,
    SpvOpTypeFilter = 15,
    SpvOpTypeArray = 16,
    SpvOpTypeRuntimeArray = 17,
    SpvOpTypeStruct = 18,
    SpvOpTypeOpaque = 19,
    SpvOpTypePointer = 20,
    SpvOpTypeFunction = 21,
    SpvOpTypeEvent = 22,
    SpvOpTypeDeviceEvent = 23,
    SpvOpTypeReserveId = 24,
    SpvOpTypeQueue = 25,
    SpvOpTypePipe = 26,
    SpvOpConstantTrue = 27,
    SpvOpConstantFalse = 28,
    SpvOpConstant = 29,
    SpvOpConstantComposite = 30,
    SpvOpConstantSampler = 31,
    SpvOpConstantNullPointer = 32,
    SpvOpConstantNullObject = 33,
    SpvOpSpecConstantTrue = 34,
    SpvOpSpecConstantFalse = 35,
    SpvOpSpecConstant = 36,
    SpvOpSpecConstantComposite = 37,
    SpvOpVariable = 38,
    SpvOpVariableArray = 39,
    SpvOpFunction = 40,
    SpvOpFunctionParameter = 41,
    SpvOpFunctionEnd = 42,
    SpvOpFunctionCall = 43,
    SpvOpExtInst = 44,
    SpvOpUndef = 45,
    SpvOpLoad = 46,
    SpvOpStore = 47,
    SpvOpPhi = 48,
    SpvOpDecorationGroup = 49,
    SpvOpDecorate = 50,
    SpvOpMemberDecorate = 51,
    SpvOpGroupDecorate = 52,
    SpvOpGroupMemberDecorate = 53,
    SpvOpName = 54,
    SpvOpMemberName = 55,
    SpvOpString = 56,
    SpvOpLine = 57,
    SpvOpVectorExtractDynamic = 58,
    SpvOpVectorInsertDynamic = 59,
    SpvOpVectorShuffle = 60,
    SpvOpCompositeConstruct = 61,
    SpvOpCompositeExtract = 62,
    SpvOpCompositeInsert = 63,
    SpvOpCopyObject = 64,
    SpvOpCopyMemory = 65,
    SpvOpCopyMemorySized = 66,
    SpvOpSampler = 67,
    SpvOpTextureSample = 68,
    SpvOpTextureSampleDref = 69,
    SpvOpTextureSampleLod = 70,
    SpvOpTextureSampleProj = 71,
    SpvOpTextureSampleGrad = 72,
    SpvOpTextureSampleOffset = 73,
    SpvOpTextureSampleProjLod = 74,
    SpvOpTextureSampleProjGrad = 75,
    SpvOpTextureSampleLodOffset = 76,
    SpvOpTextureSampleProjOffset = 77,
    SpvOpTextureSampleGradOffset = 78,
    SpvOpTextureSampleProjLodOffset = 79,
    SpvOpTextureSampleProjGradOffset = 80,
    SpvOpTextureFetchTexelLod = 81,
    SpvOpTextureFetchTexelOffset = 82,
    SpvOpTextureFetchSample = 83,
    SpvOpTextureFetchTexel = 84,
    SpvOpTextureGather = 85,
    SpvOpTextureGatherOffset = 86,
    SpvOpTextureGatherOffsets = 87,
    SpvOpTextureQuerySizeLod = 88,
    SpvOpTextureQuerySize = 89,
    SpvOpTextureQueryLod = 90,
    SpvOpTextureQueryLevels = 91,
    SpvOpTextureQuerySamples = 92,
    SpvOpAccessChain = 93,
    SpvOpInBoundsAccessChain = 94,
    SpvOpSNegate = 95,
    SpvOpFNegate = 96,
    SpvOpNot = 97,
    SpvOpAny = 98,
    SpvOpAll = 99,
    SpvOpConvertFToU = 100,
    SpvOpConvertFToS = 101,
    SpvOpConvertSToF = 102,
    SpvOpConvertUToF = 103,
    SpvOpUConvert = 104,
    SpvOpSConvert = 105,
    SpvOpFConvert = 106,
    SpvOpConvertPtrToU = 107,
    SpvOpConvertUToPtr = 108,
    SpvOpPtrCastToGeneric = 109,
    SpvOpGenericCastToPtr = 110,
    SpvOpBitcast = 111,
    SpvOpTranspose = 112,
    SpvOpIsNan = 113,
    SpvOpIsInf = 114,
    SpvOpIsFinite = 115,
    SpvOpIsNormal = 116,
    SpvOpSignBitSet = 117,
    SpvOpLessOrGreater = 118,
    SpvOpOrdered = 119,
    SpvOpUnordered = 120,
    SpvOpArrayLength = 121,
    SpvOpIAdd = 122,
    SpvOpFAdd = 123,
    SpvOpISub = 124,
    SpvOpFSub = 125,
    SpvOpIMul = 126,
    SpvOpFMul = 127,
    SpvOpUDiv = 128,
    SpvOpSDiv = 129,
    SpvOpFDiv = 130,
    SpvOpUMod = 131,
    SpvOpSRem = 132,
    SpvOpSMod = 133,
    SpvOpFRem = 134,
    SpvOpFMod = 135,
    SpvOpVectorTimesScalar = 136,
    SpvOpMatrixTimesScalar = 137,
    SpvOpVectorTimesMatrix = 138,
    SpvOpMatrixTimesVector = 139,
    SpvOpMatrixTimesMatrix = 140,
    SpvOpOuterProduct = 141,
    SpvOpDot = 142,
    SpvOpShiftRightLogical = 143,
    SpvOpShiftRightArithmetic = 144,
    SpvOpShiftLeftLogical = 145,
    SpvOpLogicalOr = 146,
    SpvOpLogicalXor = 147,
    SpvOpLogicalAnd = 148,
    SpvOpBitwiseOr = 149,
    SpvOpBitwiseXor = 150,
    SpvOpBitwiseAnd = 151,
    SpvOpSelect = 152,
    SpvOpIEqual = 153,
    SpvOpFOrdEqual = 154,
    SpvOpFUnordEqual = 155,
    SpvOpINotEqual = 156,
    SpvOpFOrdNotEqual = 157,
    SpvOpFUnordNotEqual = 158,
    SpvOpULessThan = 159,
    SpvOpSLessThan = 160,
    SpvOpFOrdLessThan = 161,
    SpvOpFUnordLessThan = 162,
    SpvOpUGreaterThan = 163,
    SpvOpSGreaterThan = 164,
    SpvOpFOrdGreaterThan = 165,
    SpvOpFUnordGreaterThan = 166,
    SpvOpULessThanEqual = 167,
    SpvOpSLessThanEqual = 168,
    SpvOpFOrdLessThanEqual = 169,
    SpvOpFUnordLessThanEqual = 170,
    SpvOpUGreaterThanEqual = 171,
    SpvOpSGreaterThanEqual = 172,
    SpvOpFOrdGreaterThanEqual = 173,
    SpvOpFUnordGreaterThanEqual = 174,
    SpvOpDPdx = 175,
    SpvOpDPdy = 176,
    SpvOpFwidth = 177,
    SpvOpDPdxFine = 178,
    SpvOpDPdyFine = 179,
    SpvOpFwidthFine = 180,
    SpvOpDPdxCoarse = 181,
    SpvOpDPdyCoarse = 182,
    SpvOpFwidthCoarse = 183,
    SpvOpEmitVertex = 184,
    SpvOpEndPrimitive = 185,
    SpvOpEmitStreamVertex = 186,
    SpvOpEndStreamPrimitive = 187,
    SpvOpControlBarrier = 188,
    SpvOpMemoryBarrier = 189,
    SpvOpImagePointer = 190,
    SpvOpAtomicInit = 191,
    SpvOpAtomicLoad = 192,
    SpvOpAtomicStore = 193,
    SpvOpAtomicExchange = 194,
    SpvOpAtomicCompareExchange = 195,
    SpvOpAtomicCompareExchangeWeak = 196,
    SpvOpAtomicIIncrement = 197,
    SpvOpAtomicIDecrement = 198,
    SpvOpAtomicIAdd = 199,
    SpvOpAtomicISub = 200,
    SpvOpAtomicUMin = 201,
    SpvOpAtomicUMax = 202,
    SpvOpAtomicAnd = 203,
    SpvOpAtomicOr = 204,
    SpvOpAtomicXor = 205,
    SpvOpLoopMerge = 206,
    SpvOpSelectionMerge = 207,
    SpvOpLabel = 208,
    SpvOpBranch = 209,
    SpvOpBranchConditional = 210,
    SpvOpSwitch = 211,
    SpvOpKill = 212,
    SpvOpReturn = 213,
    SpvOpReturnValue = 214,
    SpvOpUnreachable = 215,
    SpvOpLifetimeStart = 216,
    SpvOpLifetimeStop = 217,
    SpvOpCompileFlag = 218,
    SpvOpAsyncGroupCopy = 219,
    SpvOpWaitGroupEvents = 220,
    SpvOpGroupAll = 221,
    SpvOpGroupAny = 222,
    SpvOpGroupBroadcast = 223,
    SpvOpGroupIAdd = 224,
    SpvOpGroupFAdd = 225,
    SpvOpGroupFMin = 226,
    SpvOpGroupUMin = 227,
    SpvOpGroupSMin = 228,
    SpvOpGroupFMax = 229,
    SpvOpGroupUMax = 230,
    SpvOpGroupSMax = 231,
    SpvOpGenericCastToPtrExplicit = 232,
    SpvOpGenericPtrMemSemantics = 233,
    SpvOpReadPipe = 234,
    SpvOpWritePipe = 235,
    SpvOpReservedReadPipe = 236,
    SpvOpReservedWritePipe = 237,
    SpvOpReserveReadPipePackets = 238,
    SpvOpReserveWritePipePackets = 239,
    SpvOpCommitReadPipe = 240,
    SpvOpCommitWritePipe = 241,
    SpvOpIsValidReserveId = 242,
    SpvOpGetNumPipePackets = 243,
    SpvOpGetMaxPipePackets = 244,
    SpvOpGroupReserveReadPipePackets = 245,
    SpvOpGroupReserveWritePipePackets = 246,
    SpvOpGroupCommitReadPipe = 247,
    SpvOpGroupCommitWritePipe = 248,
    SpvOpEnqueueMarker = 249,
    SpvOpEnqueueKernel = 250,
    SpvOpGetKernelNDrangeSubGroupCount = 251,
    SpvOpGetKernelNDrangeMaxSubGroupSize = 252,
    SpvOpGetKernelWorkGroupSize = 253,
    SpvOpGetKernelPreferredWorkGroupSizeMultiple = 254,
    SpvOpRetainEvent = 255,
    SpvOpReleaseEvent = 256,
    SpvOpCreateUserEvent = 257,
    SpvOpIsValidEvent = 258,
    SpvOpSetUserEventStatus = 259,
    SpvOpCaptureEventProfilingInfo = 260,
    SpvOpGetDefaultQueue = 261,
    SpvOpBuildNDRange = 262,
    SpvOpSatConvertSToU = 263,
    SpvOpSatConvertUToS = 264,
    SpvOpAtomicIMin = 265,
    SpvOpAtomicIMax = 266,
} SpvOp;

#endif  // #ifndef __cplusplus

#endif  // #ifndef spirv_H
