/* | |
** 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; | |
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; | |
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 |