On 2018-01-23 — 14:06, Francisco Jerez wrote:
> Pierre Moreau <pierre.mor...@free.fr> writes:
> 
> > Signed-off-by: Pierre Moreau <pierre.mor...@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:

I kept the original ending from SPIRV-Headers, but they need to differentiate
it from the other C++ header which does not use C++11 features. I could drop
it, but I am a little concerned that someone might think it would be the
spirv.hpp file from SPIRV-Headers, which it isn’t.
If you think this is not an issue, I will drop it.

> 
> Acked-by: Francisco Jerez <curroje...@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



_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to