[Mesa-dev] [PATCH v2 10/22] clover/spirv: Import spirv.hpp11 version 1.0 (rev 12)
Francisco Jerez
currojerez at riseup.net
Tue Jan 23 22:06:00 UTC 2018
Pierre Moreau <pierre.morrow at free.fr> writes:
> Signed-off-by: Pierre Moreau <pierre.morrow at free.fr>
> ---
> .../state_trackers/clover/spirv/spirv.hpp11 | 997 +++++++++++++++++++++
> 1 file changed, 997 insertions(+)
> create mode 100644 src/gallium/state_trackers/clover/spirv/spirv.hpp11
Can you import this with an hpp extension please? All other .hpp files
under clover/ are also C++11, no need to confuse text editors. With
that fixed:
Acked-by: Francisco Jerez <currojerez at riseup.net>
>
> diff --git a/src/gallium/state_trackers/clover/spirv/spirv.hpp11 b/src/gallium/state_trackers/clover/spirv/spirv.hpp11
> new file mode 100644
> index 0000000000..792eeb1aa0
> --- /dev/null
> +++ b/src/gallium/state_trackers/clover/spirv/spirv.hpp11
> @@ -0,0 +1,997 @@
> +// Copyright (c) 2014-2017 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.
> +
> +// Enumeration tokens for SPIR-V, in various styles:
> +// C, C++, C++11, JSON, Lua, Python
> +//
> +// - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL
> +// - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL
> +// - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL
> +// - Lua will use tables, e.g.: spv.SourceLanguage.GLSL
> +// - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL']
> +//
> +// 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_HPP
> +#define spirv_HPP
> +
> +namespace spv {
> +
> +typedef unsigned int Id;
> +
> +#define SPV_VERSION 0x10000
> +#define SPV_REVISION 12
> +
> +static const unsigned int MagicNumber = 0x07230203;
> +static const unsigned int Version = 0x00010000;
> +static const unsigned int Revision = 12;
> +static const unsigned int OpCodeMask = 0xffff;
> +static const unsigned int WordCountShift = 16;
> +
> +enum class SourceLanguage : unsigned {
> + Unknown = 0,
> + ESSL = 1,
> + GLSL = 2,
> + OpenCL_C = 3,
> + OpenCL_CPP = 4,
> + HLSL = 5,
> + Max = 0x7fffffff,
> +};
> +
> +enum class ExecutionModel : unsigned {
> + Vertex = 0,
> + TessellationControl = 1,
> + TessellationEvaluation = 2,
> + Geometry = 3,
> + Fragment = 4,
> + GLCompute = 5,
> + Kernel = 6,
> + Max = 0x7fffffff,
> +};
> +
> +enum class AddressingModel : unsigned {
> + Logical = 0,
> + Physical32 = 1,
> + Physical64 = 2,
> + Max = 0x7fffffff,
> +};
> +
> +enum class MemoryModel : unsigned {
> + Simple = 0,
> + GLSL450 = 1,
> + OpenCL = 2,
> + Max = 0x7fffffff,
> +};
> +
> +enum class ExecutionMode : unsigned {
> + Invocations = 0,
> + SpacingEqual = 1,
> + SpacingFractionalEven = 2,
> + SpacingFractionalOdd = 3,
> + VertexOrderCw = 4,
> + VertexOrderCcw = 5,
> + PixelCenterInteger = 6,
> + OriginUpperLeft = 7,
> + OriginLowerLeft = 8,
> + EarlyFragmentTests = 9,
> + PointMode = 10,
> + Xfb = 11,
> + DepthReplacing = 12,
> + DepthGreater = 14,
> + DepthLess = 15,
> + DepthUnchanged = 16,
> + LocalSize = 17,
> + LocalSizeHint = 18,
> + InputPoints = 19,
> + InputLines = 20,
> + InputLinesAdjacency = 21,
> + Triangles = 22,
> + InputTrianglesAdjacency = 23,
> + Quads = 24,
> + Isolines = 25,
> + OutputVertices = 26,
> + OutputPoints = 27,
> + OutputLineStrip = 28,
> + OutputTriangleStrip = 29,
> + VecTypeHint = 30,
> + ContractionOff = 31,
> + PostDepthCoverage = 4446,
> + StencilRefReplacingEXT = 5027,
> + Max = 0x7fffffff,
> +};
> +
> +enum class StorageClass : unsigned {
> + UniformConstant = 0,
> + Input = 1,
> + Uniform = 2,
> + Output = 3,
> + Workgroup = 4,
> + CrossWorkgroup = 5,
> + Private = 6,
> + Function = 7,
> + Generic = 8,
> + PushConstant = 9,
> + AtomicCounter = 10,
> + Image = 11,
> + StorageBuffer = 12,
> + Max = 0x7fffffff,
> +};
> +
> +enum class Dim : unsigned {
> + Dim1D = 0,
> + Dim2D = 1,
> + Dim3D = 2,
> + Cube = 3,
> + Rect = 4,
> + Buffer = 5,
> + SubpassData = 6,
> + Max = 0x7fffffff,
> +};
> +
> +enum class SamplerAddressingMode : unsigned {
> + None = 0,
> + ClampToEdge = 1,
> + Clamp = 2,
> + Repeat = 3,
> + RepeatMirrored = 4,
> + Max = 0x7fffffff,
> +};
> +
> +enum class SamplerFilterMode : unsigned {
> + Nearest = 0,
> + Linear = 1,
> + Max = 0x7fffffff,
> +};
> +
> +enum class ImageFormat : unsigned {
> + Unknown = 0,
> + Rgba32f = 1,
> + Rgba16f = 2,
> + R32f = 3,
> + Rgba8 = 4,
> + Rgba8Snorm = 5,
> + Rg32f = 6,
> + Rg16f = 7,
> + R11fG11fB10f = 8,
> + R16f = 9,
> + Rgba16 = 10,
> + Rgb10A2 = 11,
> + Rg16 = 12,
> + Rg8 = 13,
> + R16 = 14,
> + R8 = 15,
> + Rgba16Snorm = 16,
> + Rg16Snorm = 17,
> + Rg8Snorm = 18,
> + R16Snorm = 19,
> + R8Snorm = 20,
> + Rgba32i = 21,
> + Rgba16i = 22,
> + Rgba8i = 23,
> + R32i = 24,
> + Rg32i = 25,
> + Rg16i = 26,
> + Rg8i = 27,
> + R16i = 28,
> + R8i = 29,
> + Rgba32ui = 30,
> + Rgba16ui = 31,
> + Rgba8ui = 32,
> + R32ui = 33,
> + Rgb10a2ui = 34,
> + Rg32ui = 35,
> + Rg16ui = 36,
> + Rg8ui = 37,
> + R16ui = 38,
> + R8ui = 39,
> + Max = 0x7fffffff,
> +};
> +
> +enum class ImageChannelOrder : unsigned {
> + R = 0,
> + A = 1,
> + RG = 2,
> + RA = 3,
> + RGB = 4,
> + RGBA = 5,
> + BGRA = 6,
> + ARGB = 7,
> + Intensity = 8,
> + Luminance = 9,
> + Rx = 10,
> + RGx = 11,
> + RGBx = 12,
> + Depth = 13,
> + DepthStencil = 14,
> + sRGB = 15,
> + sRGBx = 16,
> + sRGBA = 17,
> + sBGRA = 18,
> + ABGR = 19,
> + Max = 0x7fffffff,
> +};
> +
> +enum class ImageChannelDataType : unsigned {
> + SnormInt8 = 0,
> + SnormInt16 = 1,
> + UnormInt8 = 2,
> + UnormInt16 = 3,
> + UnormShort565 = 4,
> + UnormShort555 = 5,
> + UnormInt101010 = 6,
> + SignedInt8 = 7,
> + SignedInt16 = 8,
> + SignedInt32 = 9,
> + UnsignedInt8 = 10,
> + UnsignedInt16 = 11,
> + UnsignedInt32 = 12,
> + HalfFloat = 13,
> + Float = 14,
> + UnormInt24 = 15,
> + UnormInt101010_2 = 16,
> + Max = 0x7fffffff,
> +};
> +
> +enum class ImageOperandsShift : unsigned {
> + Bias = 0,
> + Lod = 1,
> + Grad = 2,
> + ConstOffset = 3,
> + Offset = 4,
> + ConstOffsets = 5,
> + Sample = 6,
> + MinLod = 7,
> + Max = 0x7fffffff,
> +};
> +
> +enum class ImageOperandsMask : unsigned {
> + MaskNone = 0,
> + Bias = 0x00000001,
> + Lod = 0x00000002,
> + Grad = 0x00000004,
> + ConstOffset = 0x00000008,
> + Offset = 0x00000010,
> + ConstOffsets = 0x00000020,
> + Sample = 0x00000040,
> + MinLod = 0x00000080,
> +};
> +
> +enum class FPFastMathModeShift : unsigned {
> + NotNaN = 0,
> + NotInf = 1,
> + NSZ = 2,
> + AllowRecip = 3,
> + Fast = 4,
> + Max = 0x7fffffff,
> +};
> +
> +enum class FPFastMathModeMask : unsigned {
> + MaskNone = 0,
> + NotNaN = 0x00000001,
> + NotInf = 0x00000002,
> + NSZ = 0x00000004,
> + AllowRecip = 0x00000008,
> + Fast = 0x00000010,
> +};
> +
> +enum class FPRoundingMode : unsigned {
> + RTE = 0,
> + RTZ = 1,
> + RTP = 2,
> + RTN = 3,
> + Max = 0x7fffffff,
> +};
> +
> +enum class LinkageType : unsigned {
> + Export = 0,
> + Import = 1,
> + Max = 0x7fffffff,
> +};
> +
> +enum class AccessQualifier : unsigned {
> + ReadOnly = 0,
> + WriteOnly = 1,
> + ReadWrite = 2,
> + Max = 0x7fffffff,
> +};
> +
> +enum class FunctionParameterAttribute : unsigned {
> + Zext = 0,
> + Sext = 1,
> + ByVal = 2,
> + Sret = 3,
> + NoAlias = 4,
> + NoCapture = 5,
> + NoWrite = 6,
> + NoReadWrite = 7,
> + Max = 0x7fffffff,
> +};
> +
> +enum class Decoration : unsigned {
> + RelaxedPrecision = 0,
> + SpecId = 1,
> + Block = 2,
> + BufferBlock = 3,
> + RowMajor = 4,
> + ColMajor = 5,
> + ArrayStride = 6,
> + MatrixStride = 7,
> + GLSLShared = 8,
> + GLSLPacked = 9,
> + CPacked = 10,
> + BuiltIn = 11,
> + NoPerspective = 13,
> + Flat = 14,
> + Patch = 15,
> + Centroid = 16,
> + Sample = 17,
> + Invariant = 18,
> + Restrict = 19,
> + Aliased = 20,
> + Volatile = 21,
> + Constant = 22,
> + Coherent = 23,
> + NonWritable = 24,
> + NonReadable = 25,
> + Uniform = 26,
> + SaturatedConversion = 28,
> + Stream = 29,
> + Location = 30,
> + Component = 31,
> + Index = 32,
> + Binding = 33,
> + DescriptorSet = 34,
> + Offset = 35,
> + XfbBuffer = 36,
> + XfbStride = 37,
> + FuncParamAttr = 38,
> + FPRoundingMode = 39,
> + FPFastMathMode = 40,
> + LinkageAttributes = 41,
> + NoContraction = 42,
> + InputAttachmentIndex = 43,
> + Alignment = 44,
> + ExplicitInterpAMD = 4999,
> + OverrideCoverageNV = 5248,
> + PassthroughNV = 5250,
> + ViewportRelativeNV = 5252,
> + SecondaryViewportRelativeNV = 5256,
> + Max = 0x7fffffff,
> +};
> +
> +enum class BuiltIn : unsigned {
> + Position = 0,
> + PointSize = 1,
> + ClipDistance = 3,
> + CullDistance = 4,
> + VertexId = 5,
> + InstanceId = 6,
> + PrimitiveId = 7,
> + InvocationId = 8,
> + Layer = 9,
> + ViewportIndex = 10,
> + TessLevelOuter = 11,
> + TessLevelInner = 12,
> + TessCoord = 13,
> + PatchVertices = 14,
> + FragCoord = 15,
> + PointCoord = 16,
> + FrontFacing = 17,
> + SampleId = 18,
> + SamplePosition = 19,
> + SampleMask = 20,
> + FragDepth = 22,
> + HelperInvocation = 23,
> + NumWorkgroups = 24,
> + WorkgroupSize = 25,
> + WorkgroupId = 26,
> + LocalInvocationId = 27,
> + GlobalInvocationId = 28,
> + LocalInvocationIndex = 29,
> + WorkDim = 30,
> + GlobalSize = 31,
> + EnqueuedWorkgroupSize = 32,
> + GlobalOffset = 33,
> + GlobalLinearId = 34,
> + SubgroupSize = 36,
> + SubgroupMaxSize = 37,
> + NumSubgroups = 38,
> + NumEnqueuedSubgroups = 39,
> + SubgroupId = 40,
> + SubgroupLocalInvocationId = 41,
> + VertexIndex = 42,
> + InstanceIndex = 43,
> + SubgroupEqMaskKHR = 4416,
> + SubgroupGeMaskKHR = 4417,
> + SubgroupGtMaskKHR = 4418,
> + SubgroupLeMaskKHR = 4419,
> + SubgroupLtMaskKHR = 4420,
> + BaseVertex = 4424,
> + BaseInstance = 4425,
> + DrawIndex = 4426,
> + DeviceIndex = 4438,
> + ViewIndex = 4440,
> + BaryCoordNoPerspAMD = 4992,
> + BaryCoordNoPerspCentroidAMD = 4993,
> + BaryCoordNoPerspSampleAMD = 4994,
> + BaryCoordSmoothAMD = 4995,
> + BaryCoordSmoothCentroidAMD = 4996,
> + BaryCoordSmoothSampleAMD = 4997,
> + BaryCoordPullModelAMD = 4998,
> + FragStencilRefEXT = 5014,
> + ViewportMaskNV = 5253,
> + SecondaryPositionNV = 5257,
> + SecondaryViewportMaskNV = 5258,
> + PositionPerViewNV = 5261,
> + ViewportMaskPerViewNV = 5262,
> + Max = 0x7fffffff,
> +};
> +
> +enum class SelectionControlShift : unsigned {
> + Flatten = 0,
> + DontFlatten = 1,
> + Max = 0x7fffffff,
> +};
> +
> +enum class SelectionControlMask : unsigned {
> + MaskNone = 0,
> + Flatten = 0x00000001,
> + DontFlatten = 0x00000002,
> +};
> +
> +enum class LoopControlShift : unsigned {
> + Unroll = 0,
> + DontUnroll = 1,
> + Max = 0x7fffffff,
> +};
> +
> +enum class LoopControlMask : unsigned {
> + MaskNone = 0,
> + Unroll = 0x00000001,
> + DontUnroll = 0x00000002,
> +};
> +
> +enum class FunctionControlShift : unsigned {
> + Inline = 0,
> + DontInline = 1,
> + Pure = 2,
> + Const = 3,
> + Max = 0x7fffffff,
> +};
> +
> +enum class FunctionControlMask : unsigned {
> + MaskNone = 0,
> + Inline = 0x00000001,
> + DontInline = 0x00000002,
> + Pure = 0x00000004,
> + Const = 0x00000008,
> +};
> +
> +enum class MemorySemanticsShift : unsigned {
> + Acquire = 1,
> + Release = 2,
> + AcquireRelease = 3,
> + SequentiallyConsistent = 4,
> + UniformMemory = 6,
> + SubgroupMemory = 7,
> + WorkgroupMemory = 8,
> + CrossWorkgroupMemory = 9,
> + AtomicCounterMemory = 10,
> + ImageMemory = 11,
> + Max = 0x7fffffff,
> +};
> +
> +enum class MemorySemanticsMask : unsigned {
> + MaskNone = 0,
> + Acquire = 0x00000002,
> + Release = 0x00000004,
> + AcquireRelease = 0x00000008,
> + SequentiallyConsistent = 0x00000010,
> + UniformMemory = 0x00000040,
> + SubgroupMemory = 0x00000080,
> + WorkgroupMemory = 0x00000100,
> + CrossWorkgroupMemory = 0x00000200,
> + AtomicCounterMemory = 0x00000400,
> + ImageMemory = 0x00000800,
> +};
> +
> +enum class MemoryAccessShift : unsigned {
> + Volatile = 0,
> + Aligned = 1,
> + Nontemporal = 2,
> + Max = 0x7fffffff,
> +};
> +
> +enum class MemoryAccessMask : unsigned {
> + MaskNone = 0,
> + Volatile = 0x00000001,
> + Aligned = 0x00000002,
> + Nontemporal = 0x00000004,
> +};
> +
> +enum class Scope : unsigned {
> + CrossDevice = 0,
> + Device = 1,
> + Workgroup = 2,
> + Subgroup = 3,
> + Invocation = 4,
> + Max = 0x7fffffff,
> +};
> +
> +enum class GroupOperation : unsigned {
> + Reduce = 0,
> + InclusiveScan = 1,
> + ExclusiveScan = 2,
> + Max = 0x7fffffff,
> +};
> +
> +enum class KernelEnqueueFlags : unsigned {
> + NoWait = 0,
> + WaitKernel = 1,
> + WaitWorkGroup = 2,
> + Max = 0x7fffffff,
> +};
> +
> +enum class KernelProfilingInfoShift : unsigned {
> + CmdExecTime = 0,
> + Max = 0x7fffffff,
> +};
> +
> +enum class KernelProfilingInfoMask : unsigned {
> + MaskNone = 0,
> + CmdExecTime = 0x00000001,
> +};
> +
> +enum class Capability : unsigned {
> + Matrix = 0,
> + Shader = 1,
> + Geometry = 2,
> + Tessellation = 3,
> + Addresses = 4,
> + Linkage = 5,
> + Kernel = 6,
> + Vector16 = 7,
> + Float16Buffer = 8,
> + Float16 = 9,
> + Float64 = 10,
> + Int64 = 11,
> + Int64Atomics = 12,
> + ImageBasic = 13,
> + ImageReadWrite = 14,
> + ImageMipmap = 15,
> + Pipes = 17,
> + Groups = 18,
> + DeviceEnqueue = 19,
> + LiteralSampler = 20,
> + AtomicStorage = 21,
> + Int16 = 22,
> + TessellationPointSize = 23,
> + GeometryPointSize = 24,
> + ImageGatherExtended = 25,
> + StorageImageMultisample = 27,
> + UniformBufferArrayDynamicIndexing = 28,
> + SampledImageArrayDynamicIndexing = 29,
> + StorageBufferArrayDynamicIndexing = 30,
> + StorageImageArrayDynamicIndexing = 31,
> + ClipDistance = 32,
> + CullDistance = 33,
> + ImageCubeArray = 34,
> + SampleRateShading = 35,
> + ImageRect = 36,
> + SampledRect = 37,
> + GenericPointer = 38,
> + Int8 = 39,
> + InputAttachment = 40,
> + SparseResidency = 41,
> + MinLod = 42,
> + Sampled1D = 43,
> + Image1D = 44,
> + SampledCubeArray = 45,
> + SampledBuffer = 46,
> + ImageBuffer = 47,
> + ImageMSArray = 48,
> + StorageImageExtendedFormats = 49,
> + ImageQuery = 50,
> + DerivativeControl = 51,
> + InterpolationFunction = 52,
> + TransformFeedback = 53,
> + GeometryStreams = 54,
> + StorageImageReadWithoutFormat = 55,
> + StorageImageWriteWithoutFormat = 56,
> + MultiViewport = 57,
> + SubgroupBallotKHR = 4423,
> + DrawParameters = 4427,
> + SubgroupVoteKHR = 4431,
> + StorageBuffer16BitAccess = 4433,
> + StorageUniformBufferBlock16 = 4433,
> + StorageUniform16 = 4434,
> + UniformAndStorageBuffer16BitAccess = 4434,
> + StoragePushConstant16 = 4435,
> + StorageInputOutput16 = 4436,
> + DeviceGroup = 4437,
> + MultiView = 4439,
> + VariablePointersStorageBuffer = 4441,
> + VariablePointers = 4442,
> + AtomicStorageOps = 4445,
> + SampleMaskPostDepthCoverage = 4447,
> + ImageGatherBiasLodAMD = 5009,
> + FragmentMaskAMD = 5010,
> + StencilExportEXT = 5013,
> + ImageReadWriteLodAMD = 5015,
> + SampleMaskOverrideCoverageNV = 5249,
> + GeometryShaderPassthroughNV = 5251,
> + ShaderViewportIndexLayerEXT = 5254,
> + ShaderViewportIndexLayerNV = 5254,
> + ShaderViewportMaskNV = 5255,
> + ShaderStereoViewNV = 5259,
> + PerViewAttributesNV = 5260,
> + SubgroupShuffleINTEL = 5568,
> + SubgroupBufferBlockIOINTEL = 5569,
> + SubgroupImageBlockIOINTEL = 5570,
> + Max = 0x7fffffff,
> +};
> +
> +enum class Op : unsigned {
> + OpNop = 0,
> + OpUndef = 1,
> + OpSourceContinued = 2,
> + OpSource = 3,
> + OpSourceExtension = 4,
> + OpName = 5,
> + OpMemberName = 6,
> + OpString = 7,
> + OpLine = 8,
> + OpExtension = 10,
> + OpExtInstImport = 11,
> + OpExtInst = 12,
> + OpMemoryModel = 14,
> + OpEntryPoint = 15,
> + OpExecutionMode = 16,
> + OpCapability = 17,
> + OpTypeVoid = 19,
> + OpTypeBool = 20,
> + OpTypeInt = 21,
> + OpTypeFloat = 22,
> + OpTypeVector = 23,
> + OpTypeMatrix = 24,
> + OpTypeImage = 25,
> + OpTypeSampler = 26,
> + OpTypeSampledImage = 27,
> + OpTypeArray = 28,
> + OpTypeRuntimeArray = 29,
> + OpTypeStruct = 30,
> + OpTypeOpaque = 31,
> + OpTypePointer = 32,
> + OpTypeFunction = 33,
> + OpTypeEvent = 34,
> + OpTypeDeviceEvent = 35,
> + OpTypeReserveId = 36,
> + OpTypeQueue = 37,
> + OpTypePipe = 38,
> + OpTypeForwardPointer = 39,
> + OpConstantTrue = 41,
> + OpConstantFalse = 42,
> + OpConstant = 43,
> + OpConstantComposite = 44,
> + OpConstantSampler = 45,
> + OpConstantNull = 46,
> + OpSpecConstantTrue = 48,
> + OpSpecConstantFalse = 49,
> + OpSpecConstant = 50,
> + OpSpecConstantComposite = 51,
> + OpSpecConstantOp = 52,
> + OpFunction = 54,
> + OpFunctionParameter = 55,
> + OpFunctionEnd = 56,
> + OpFunctionCall = 57,
> + OpVariable = 59,
> + OpImageTexelPointer = 60,
> + OpLoad = 61,
> + OpStore = 62,
> + OpCopyMemory = 63,
> + OpCopyMemorySized = 64,
> + OpAccessChain = 65,
> + OpInBoundsAccessChain = 66,
> + OpPtrAccessChain = 67,
> + OpArrayLength = 68,
> + OpGenericPtrMemSemantics = 69,
> + OpInBoundsPtrAccessChain = 70,
> + OpDecorate = 71,
> + OpMemberDecorate = 72,
> + OpDecorationGroup = 73,
> + OpGroupDecorate = 74,
> + OpGroupMemberDecorate = 75,
> + OpVectorExtractDynamic = 77,
> + OpVectorInsertDynamic = 78,
> + OpVectorShuffle = 79,
> + OpCompositeConstruct = 80,
> + OpCompositeExtract = 81,
> + OpCompositeInsert = 82,
> + OpCopyObject = 83,
> + OpTranspose = 84,
> + OpSampledImage = 86,
> + OpImageSampleImplicitLod = 87,
> + OpImageSampleExplicitLod = 88,
> + OpImageSampleDrefImplicitLod = 89,
> + OpImageSampleDrefExplicitLod = 90,
> + OpImageSampleProjImplicitLod = 91,
> + OpImageSampleProjExplicitLod = 92,
> + OpImageSampleProjDrefImplicitLod = 93,
> + OpImageSampleProjDrefExplicitLod = 94,
> + OpImageFetch = 95,
> + OpImageGather = 96,
> + OpImageDrefGather = 97,
> + OpImageRead = 98,
> + OpImageWrite = 99,
> + OpImage = 100,
> + OpImageQueryFormat = 101,
> + OpImageQueryOrder = 102,
> + OpImageQuerySizeLod = 103,
> + OpImageQuerySize = 104,
> + OpImageQueryLod = 105,
> + OpImageQueryLevels = 106,
> + OpImageQuerySamples = 107,
> + OpConvertFToU = 109,
> + OpConvertFToS = 110,
> + OpConvertSToF = 111,
> + OpConvertUToF = 112,
> + OpUConvert = 113,
> + OpSConvert = 114,
> + OpFConvert = 115,
> + OpQuantizeToF16 = 116,
> + OpConvertPtrToU = 117,
> + OpSatConvertSToU = 118,
> + OpSatConvertUToS = 119,
> + OpConvertUToPtr = 120,
> + OpPtrCastToGeneric = 121,
> + OpGenericCastToPtr = 122,
> + OpGenericCastToPtrExplicit = 123,
> + OpBitcast = 124,
> + OpSNegate = 126,
> + OpFNegate = 127,
> + OpIAdd = 128,
> + OpFAdd = 129,
> + OpISub = 130,
> + OpFSub = 131,
> + OpIMul = 132,
> + OpFMul = 133,
> + OpUDiv = 134,
> + OpSDiv = 135,
> + OpFDiv = 136,
> + OpUMod = 137,
> + OpSRem = 138,
> + OpSMod = 139,
> + OpFRem = 140,
> + OpFMod = 141,
> + OpVectorTimesScalar = 142,
> + OpMatrixTimesScalar = 143,
> + OpVectorTimesMatrix = 144,
> + OpMatrixTimesVector = 145,
> + OpMatrixTimesMatrix = 146,
> + OpOuterProduct = 147,
> + OpDot = 148,
> + OpIAddCarry = 149,
> + OpISubBorrow = 150,
> + OpUMulExtended = 151,
> + OpSMulExtended = 152,
> + OpAny = 154,
> + OpAll = 155,
> + OpIsNan = 156,
> + OpIsInf = 157,
> + OpIsFinite = 158,
> + OpIsNormal = 159,
> + OpSignBitSet = 160,
> + OpLessOrGreater = 161,
> + OpOrdered = 162,
> + OpUnordered = 163,
> + OpLogicalEqual = 164,
> + OpLogicalNotEqual = 165,
> + OpLogicalOr = 166,
> + OpLogicalAnd = 167,
> + OpLogicalNot = 168,
> + OpSelect = 169,
> + OpIEqual = 170,
> + OpINotEqual = 171,
> + OpUGreaterThan = 172,
> + OpSGreaterThan = 173,
> + OpUGreaterThanEqual = 174,
> + OpSGreaterThanEqual = 175,
> + OpULessThan = 176,
> + OpSLessThan = 177,
> + OpULessThanEqual = 178,
> + OpSLessThanEqual = 179,
> + OpFOrdEqual = 180,
> + OpFUnordEqual = 181,
> + OpFOrdNotEqual = 182,
> + OpFUnordNotEqual = 183,
> + OpFOrdLessThan = 184,
> + OpFUnordLessThan = 185,
> + OpFOrdGreaterThan = 186,
> + OpFUnordGreaterThan = 187,
> + OpFOrdLessThanEqual = 188,
> + OpFUnordLessThanEqual = 189,
> + OpFOrdGreaterThanEqual = 190,
> + OpFUnordGreaterThanEqual = 191,
> + OpShiftRightLogical = 194,
> + OpShiftRightArithmetic = 195,
> + OpShiftLeftLogical = 196,
> + OpBitwiseOr = 197,
> + OpBitwiseXor = 198,
> + OpBitwiseAnd = 199,
> + OpNot = 200,
> + OpBitFieldInsert = 201,
> + OpBitFieldSExtract = 202,
> + OpBitFieldUExtract = 203,
> + OpBitReverse = 204,
> + OpBitCount = 205,
> + OpDPdx = 207,
> + OpDPdy = 208,
> + OpFwidth = 209,
> + OpDPdxFine = 210,
> + OpDPdyFine = 211,
> + OpFwidthFine = 212,
> + OpDPdxCoarse = 213,
> + OpDPdyCoarse = 214,
> + OpFwidthCoarse = 215,
> + OpEmitVertex = 218,
> + OpEndPrimitive = 219,
> + OpEmitStreamVertex = 220,
> + OpEndStreamPrimitive = 221,
> + OpControlBarrier = 224,
> + OpMemoryBarrier = 225,
> + OpAtomicLoad = 227,
> + OpAtomicStore = 228,
> + OpAtomicExchange = 229,
> + OpAtomicCompareExchange = 230,
> + OpAtomicCompareExchangeWeak = 231,
> + OpAtomicIIncrement = 232,
> + OpAtomicIDecrement = 233,
> + OpAtomicIAdd = 234,
> + OpAtomicISub = 235,
> + OpAtomicSMin = 236,
> + OpAtomicUMin = 237,
> + OpAtomicSMax = 238,
> + OpAtomicUMax = 239,
> + OpAtomicAnd = 240,
> + OpAtomicOr = 241,
> + OpAtomicXor = 242,
> + OpPhi = 245,
> + OpLoopMerge = 246,
> + OpSelectionMerge = 247,
> + OpLabel = 248,
> + OpBranch = 249,
> + OpBranchConditional = 250,
> + OpSwitch = 251,
> + OpKill = 252,
> + OpReturn = 253,
> + OpReturnValue = 254,
> + OpUnreachable = 255,
> + OpLifetimeStart = 256,
> + OpLifetimeStop = 257,
> + OpGroupAsyncCopy = 259,
> + OpGroupWaitEvents = 260,
> + OpGroupAll = 261,
> + OpGroupAny = 262,
> + OpGroupBroadcast = 263,
> + OpGroupIAdd = 264,
> + OpGroupFAdd = 265,
> + OpGroupFMin = 266,
> + OpGroupUMin = 267,
> + OpGroupSMin = 268,
> + OpGroupFMax = 269,
> + OpGroupUMax = 270,
> + OpGroupSMax = 271,
> + OpReadPipe = 274,
> + OpWritePipe = 275,
> + OpReservedReadPipe = 276,
> + OpReservedWritePipe = 277,
> + OpReserveReadPipePackets = 278,
> + OpReserveWritePipePackets = 279,
> + OpCommitReadPipe = 280,
> + OpCommitWritePipe = 281,
> + OpIsValidReserveId = 282,
> + OpGetNumPipePackets = 283,
> + OpGetMaxPipePackets = 284,
> + OpGroupReserveReadPipePackets = 285,
> + OpGroupReserveWritePipePackets = 286,
> + OpGroupCommitReadPipe = 287,
> + OpGroupCommitWritePipe = 288,
> + OpEnqueueMarker = 291,
> + OpEnqueueKernel = 292,
> + OpGetKernelNDrangeSubGroupCount = 293,
> + OpGetKernelNDrangeMaxSubGroupSize = 294,
> + OpGetKernelWorkGroupSize = 295,
> + OpGetKernelPreferredWorkGroupSizeMultiple = 296,
> + OpRetainEvent = 297,
> + OpReleaseEvent = 298,
> + OpCreateUserEvent = 299,
> + OpIsValidEvent = 300,
> + OpSetUserEventStatus = 301,
> + OpCaptureEventProfilingInfo = 302,
> + OpGetDefaultQueue = 303,
> + OpBuildNDRange = 304,
> + OpImageSparseSampleImplicitLod = 305,
> + OpImageSparseSampleExplicitLod = 306,
> + OpImageSparseSampleDrefImplicitLod = 307,
> + OpImageSparseSampleDrefExplicitLod = 308,
> + OpImageSparseSampleProjImplicitLod = 309,
> + OpImageSparseSampleProjExplicitLod = 310,
> + OpImageSparseSampleProjDrefImplicitLod = 311,
> + OpImageSparseSampleProjDrefExplicitLod = 312,
> + OpImageSparseFetch = 313,
> + OpImageSparseGather = 314,
> + OpImageSparseDrefGather = 315,
> + OpImageSparseTexelsResident = 316,
> + OpNoLine = 317,
> + OpAtomicFlagTestAndSet = 318,
> + OpAtomicFlagClear = 319,
> + OpImageSparseRead = 320,
> + OpSubgroupBallotKHR = 4421,
> + OpSubgroupFirstInvocationKHR = 4422,
> + OpSubgroupAllKHR = 4428,
> + OpSubgroupAnyKHR = 4429,
> + OpSubgroupAllEqualKHR = 4430,
> + OpSubgroupReadInvocationKHR = 4432,
> + OpGroupIAddNonUniformAMD = 5000,
> + OpGroupFAddNonUniformAMD = 5001,
> + OpGroupFMinNonUniformAMD = 5002,
> + OpGroupUMinNonUniformAMD = 5003,
> + OpGroupSMinNonUniformAMD = 5004,
> + OpGroupFMaxNonUniformAMD = 5005,
> + OpGroupUMaxNonUniformAMD = 5006,
> + OpGroupSMaxNonUniformAMD = 5007,
> + OpFragmentMaskFetchAMD = 5011,
> + OpFragmentFetchAMD = 5012,
> + OpSubgroupShuffleINTEL = 5571,
> + OpSubgroupShuffleDownINTEL = 5572,
> + OpSubgroupShuffleUpINTEL = 5573,
> + OpSubgroupShuffleXorINTEL = 5574,
> + OpSubgroupBlockReadINTEL = 5575,
> + OpSubgroupBlockWriteINTEL = 5576,
> + OpSubgroupImageBlockReadINTEL = 5577,
> + OpSubgroupImageBlockWriteINTEL = 5578,
> + Max = 0x7fffffff,
> +};
> +
> +// Overload operator| for mask bit combining
> +
> +inline ImageOperandsMask operator|(ImageOperandsMask a, ImageOperandsMask b) { return ImageOperandsMask(unsigned(a) | unsigned(b)); }
> +inline FPFastMathModeMask operator|(FPFastMathModeMask a, FPFastMathModeMask b) { return FPFastMathModeMask(unsigned(a) | unsigned(b)); }
> +inline SelectionControlMask operator|(SelectionControlMask a, SelectionControlMask b) { return SelectionControlMask(unsigned(a) | unsigned(b)); }
> +inline LoopControlMask operator|(LoopControlMask a, LoopControlMask b) { return LoopControlMask(unsigned(a) | unsigned(b)); }
> +inline FunctionControlMask operator|(FunctionControlMask a, FunctionControlMask b) { return FunctionControlMask(unsigned(a) | unsigned(b)); }
> +inline MemorySemanticsMask operator|(MemorySemanticsMask a, MemorySemanticsMask b) { return MemorySemanticsMask(unsigned(a) | unsigned(b)); }
> +inline MemoryAccessMask operator|(MemoryAccessMask a, MemoryAccessMask b) { return MemoryAccessMask(unsigned(a) | unsigned(b)); }
> +inline KernelProfilingInfoMask operator|(KernelProfilingInfoMask a, KernelProfilingInfoMask b) { return KernelProfilingInfoMask(unsigned(a) | unsigned(b)); }
> +
> +} // end namespace spv
> +
> +#endif // #ifndef spirv_HPP
> +
> --
> 2.16.0
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 227 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20180123/9fc0a65f/attachment-0001.sig>
More information about the mesa-dev
mailing list