Home | History | Annotate | Download | only in libSPIRV
      1 //===- SPIRVNameMapEnum.h - SPIR-V NameMap enums ----------------*- C++ -*-===//
      2 //
      3 //                     The LLVM/SPIRV Translator
      4 //
      5 // This file is distributed under the University of Illinois Open Source
      6 // License. See LICENSE.TXT for details.
      7 //
      8 // Copyright (c) 2014 Advanced Micro Devices, Inc. All rights reserved.
      9 //
     10 // Permission is hereby granted, free of charge, to any person obtaining a
     11 // copy of this software and associated documentation files (the "Software"),
     12 // to deal with the Software without restriction, including without limitation
     13 // the rights to use, copy, modify, merge, publish, distribute, sublicense,
     14 // and/or sell copies of the Software, and to permit persons to whom the
     15 // Software is furnished to do so, subject to the following conditions:
     16 //
     17 // Redistributions of source code must retain the above copyright notice,
     18 // this list of conditions and the following disclaimers.
     19 // Redistributions in binary form must reproduce the above copyright notice,
     20 // this list of conditions and the following disclaimers in the documentation
     21 // and/or other materials provided with the distribution.
     22 // Neither the names of Advanced Micro Devices, Inc., nor the names of its
     23 // contributors may be used to endorse or promote products derived from this
     24 // Software without specific prior written permission.
     25 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
     26 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
     27 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
     28 // CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
     29 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
     30 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH
     31 // THE SOFTWARE.
     32 //
     33 //===----------------------------------------------------------------------===//
     34 /// \file
     35 ///
     36 /// This file defines SPIR-V NameMap enums.
     37 ///
     38 //===----------------------------------------------------------------------===//
     39 // WARNING:
     40 //
     41 // This file has been generated using `tools/spirv-tool/gen_spirv.bash` and
     42 // should not be modified manually. If the file needs to be updated, edit the
     43 // script and any other source file instead, before re-generating this file.
     44 //===----------------------------------------------------------------------===//
     45 
     46 #ifndef SPIRVNAMEMAPENUM_H_
     47 #define SPIRVNAMEMAPENUM_H_
     48 
     49 #include "spirv.hpp"
     50 #include "SPIRVEnum.h"
     51 
     52 using namespace spv;
     53 
     54 namespace SPIRV {
     55 
     56 template<> inline void
     57 SPIRVMap<SourceLanguage, std::string>::init() {
     58   add(SourceLanguageUnknown, "Unknown");
     59   add(SourceLanguageESSL, "ESSL");
     60   add(SourceLanguageGLSL, "GLSL");
     61   add(SourceLanguageOpenCL_C, "OpenCL_C");
     62   add(SourceLanguageOpenCL_CPP, "OpenCL_CPP");
     63 }
     64 SPIRV_DEF_NAMEMAP(SourceLanguage, SPIRVSourceLanguageNameMap)
     65 
     66 template<> inline void
     67 SPIRVMap<ExecutionModel, std::string>::init() {
     68   add(ExecutionModelVertex, "Vertex");
     69   add(ExecutionModelTessellationControl, "TessellationControl");
     70   add(ExecutionModelTessellationEvaluation, "TessellationEvaluation");
     71   add(ExecutionModelGeometry, "Geometry");
     72   add(ExecutionModelFragment, "Fragment");
     73   add(ExecutionModelGLCompute, "GLCompute");
     74   add(ExecutionModelKernel, "Kernel");
     75 }
     76 SPIRV_DEF_NAMEMAP(ExecutionModel, SPIRVExecutionModelNameMap)
     77 
     78 template<> inline void
     79 SPIRVMap<AddressingModel, std::string>::init() {
     80   add(AddressingModelLogical, "Logical");
     81   add(AddressingModelPhysical32, "Physical32");
     82   add(AddressingModelPhysical64, "Physical64");
     83 }
     84 SPIRV_DEF_NAMEMAP(AddressingModel, SPIRVAddressingModelNameMap)
     85 
     86 template<> inline void
     87 SPIRVMap<MemoryModel, std::string>::init() {
     88   add(MemoryModelSimple, "Simple");
     89   add(MemoryModelGLSL450, "GLSL450");
     90   add(MemoryModelOpenCL, "OpenCL");
     91 }
     92 SPIRV_DEF_NAMEMAP(MemoryModel, SPIRVMemoryModelNameMap)
     93 
     94 template<> inline void
     95 SPIRVMap<ExecutionMode, std::string>::init() {
     96   add(ExecutionModeInvocations, "Invocations");
     97   add(ExecutionModeSpacingEqual, "SpacingEqual");
     98   add(ExecutionModeSpacingFractionalEven, "SpacingFractionalEven");
     99   add(ExecutionModeSpacingFractionalOdd, "SpacingFractionalOdd");
    100   add(ExecutionModeVertexOrderCw, "VertexOrderCw");
    101   add(ExecutionModeVertexOrderCcw, "VertexOrderCcw");
    102   add(ExecutionModePixelCenterInteger, "PixelCenterInteger");
    103   add(ExecutionModeOriginUpperLeft, "OriginUpperLeft");
    104   add(ExecutionModeOriginLowerLeft, "OriginLowerLeft");
    105   add(ExecutionModeEarlyFragmentTests, "EarlyFragmentTests");
    106   add(ExecutionModePointMode, "PointMode");
    107   add(ExecutionModeXfb, "Xfb");
    108   add(ExecutionModeDepthReplacing, "DepthReplacing");
    109   add(ExecutionModeDepthGreater, "DepthGreater");
    110   add(ExecutionModeDepthLess, "DepthLess");
    111   add(ExecutionModeDepthUnchanged, "DepthUnchanged");
    112   add(ExecutionModeLocalSize, "LocalSize");
    113   add(ExecutionModeLocalSizeHint, "LocalSizeHint");
    114   add(ExecutionModeInputPoints, "InputPoints");
    115   add(ExecutionModeInputLines, "InputLines");
    116   add(ExecutionModeInputLinesAdjacency, "InputLinesAdjacency");
    117   add(ExecutionModeTriangles, "Triangles");
    118   add(ExecutionModeInputTrianglesAdjacency, "InputTrianglesAdjacency");
    119   add(ExecutionModeQuads, "Quads");
    120   add(ExecutionModeIsolines, "Isolines");
    121   add(ExecutionModeOutputVertices, "OutputVertices");
    122   add(ExecutionModeOutputPoints, "OutputPoints");
    123   add(ExecutionModeOutputLineStrip, "OutputLineStrip");
    124   add(ExecutionModeOutputTriangleStrip, "OutputTriangleStrip");
    125   add(ExecutionModeVecTypeHint, "VecTypeHint");
    126   add(ExecutionModeContractionOff, "ContractionOff");
    127 }
    128 SPIRV_DEF_NAMEMAP(ExecutionMode, SPIRVExecutionModeNameMap)
    129 
    130 template<> inline void
    131 SPIRVMap<StorageClass, std::string>::init() {
    132   add(StorageClassUniformConstant, "UniformConstant");
    133   add(StorageClassInput, "Input");
    134   add(StorageClassUniform, "Uniform");
    135   add(StorageClassOutput, "Output");
    136   add(StorageClassWorkgroup, "Workgroup");
    137   add(StorageClassCrossWorkgroup, "CrossWorkgroup");
    138   add(StorageClassPrivate, "Private");
    139   add(StorageClassFunction, "Function");
    140   add(StorageClassGeneric, "Generic");
    141   add(StorageClassPushConstant, "PushConstant");
    142   add(StorageClassAtomicCounter, "AtomicCounter");
    143   add(StorageClassImage, "Image");
    144 }
    145 SPIRV_DEF_NAMEMAP(StorageClass, SPIRVStorageClassNameMap)
    146 
    147 template<> inline void
    148 SPIRVMap<Dim, std::string>::init() {
    149   add(Dim1D, "1D");
    150   add(Dim2D, "2D");
    151   add(Dim3D, "3D");
    152   add(DimCube, "Cube");
    153   add(DimRect, "Rect");
    154   add(DimBuffer, "Buffer");
    155   add(DimSubpassData, "SubpassData");
    156 }
    157 SPIRV_DEF_NAMEMAP(Dim, SPIRVDimNameMap)
    158 
    159 template<> inline void
    160 SPIRVMap<SamplerAddressingMode, std::string>::init() {
    161   add(SamplerAddressingModeNone, "None");
    162   add(SamplerAddressingModeClampToEdge, "ClampToEdge");
    163   add(SamplerAddressingModeClamp, "Clamp");
    164   add(SamplerAddressingModeRepeat, "Repeat");
    165   add(SamplerAddressingModeRepeatMirrored, "RepeatMirrored");
    166 }
    167 SPIRV_DEF_NAMEMAP(SamplerAddressingMode, SPIRVSamplerAddressingModeNameMap)
    168 
    169 template<> inline void
    170 SPIRVMap<SamplerFilterMode, std::string>::init() {
    171   add(SamplerFilterModeNearest, "Nearest");
    172   add(SamplerFilterModeLinear, "Linear");
    173 }
    174 SPIRV_DEF_NAMEMAP(SamplerFilterMode, SPIRVSamplerFilterModeNameMap)
    175 
    176 template<> inline void
    177 SPIRVMap<ImageFormat, std::string>::init() {
    178   add(ImageFormatUnknown, "Unknown");
    179   add(ImageFormatRgba32f, "Rgba32f");
    180   add(ImageFormatRgba16f, "Rgba16f");
    181   add(ImageFormatR32f, "R32f");
    182   add(ImageFormatRgba8, "Rgba8");
    183   add(ImageFormatRgba8Snorm, "Rgba8Snorm");
    184   add(ImageFormatRg32f, "Rg32f");
    185   add(ImageFormatRg16f, "Rg16f");
    186   add(ImageFormatR11fG11fB10f, "R11fG11fB10f");
    187   add(ImageFormatR16f, "R16f");
    188   add(ImageFormatRgba16, "Rgba16");
    189   add(ImageFormatRgb10A2, "Rgb10A2");
    190   add(ImageFormatRg16, "Rg16");
    191   add(ImageFormatRg8, "Rg8");
    192   add(ImageFormatR16, "R16");
    193   add(ImageFormatR8, "R8");
    194   add(ImageFormatRgba16Snorm, "Rgba16Snorm");
    195   add(ImageFormatRg16Snorm, "Rg16Snorm");
    196   add(ImageFormatRg8Snorm, "Rg8Snorm");
    197   add(ImageFormatR16Snorm, "R16Snorm");
    198   add(ImageFormatR8Snorm, "R8Snorm");
    199   add(ImageFormatRgba32i, "Rgba32i");
    200   add(ImageFormatRgba16i, "Rgba16i");
    201   add(ImageFormatRgba8i, "Rgba8i");
    202   add(ImageFormatR32i, "R32i");
    203   add(ImageFormatRg32i, "Rg32i");
    204   add(ImageFormatRg16i, "Rg16i");
    205   add(ImageFormatRg8i, "Rg8i");
    206   add(ImageFormatR16i, "R16i");
    207   add(ImageFormatR8i, "R8i");
    208   add(ImageFormatRgba32ui, "Rgba32ui");
    209   add(ImageFormatRgba16ui, "Rgba16ui");
    210   add(ImageFormatRgba8ui, "Rgba8ui");
    211   add(ImageFormatR32ui, "R32ui");
    212   add(ImageFormatRgb10a2ui, "Rgb10a2ui");
    213   add(ImageFormatRg32ui, "Rg32ui");
    214   add(ImageFormatRg16ui, "Rg16ui");
    215   add(ImageFormatRg8ui, "Rg8ui");
    216   add(ImageFormatR16ui, "R16ui");
    217   add(ImageFormatR8ui, "R8ui");
    218 }
    219 SPIRV_DEF_NAMEMAP(ImageFormat, SPIRVImageFormatNameMap)
    220 
    221 template<> inline void
    222 SPIRVMap<ImageChannelOrder, std::string>::init() {
    223   add(ImageChannelOrderR, "R");
    224   add(ImageChannelOrderA, "A");
    225   add(ImageChannelOrderRG, "RG");
    226   add(ImageChannelOrderRA, "RA");
    227   add(ImageChannelOrderRGB, "RGB");
    228   add(ImageChannelOrderRGBA, "RGBA");
    229   add(ImageChannelOrderBGRA, "BGRA");
    230   add(ImageChannelOrderARGB, "ARGB");
    231   add(ImageChannelOrderIntensity, "Intensity");
    232   add(ImageChannelOrderLuminance, "Luminance");
    233   add(ImageChannelOrderRx, "Rx");
    234   add(ImageChannelOrderRGx, "RGx");
    235   add(ImageChannelOrderRGBx, "RGBx");
    236   add(ImageChannelOrderDepth, "Depth");
    237   add(ImageChannelOrderDepthStencil, "DepthStencil");
    238 }
    239 SPIRV_DEF_NAMEMAP(ImageChannelOrder, SPIRVImageChannelOrderNameMap)
    240 
    241 template<> inline void
    242 SPIRVMap<ImageChannelDataType, std::string>::init() {
    243   add(ImageChannelDataTypeSnormInt8, "SnormInt8");
    244   add(ImageChannelDataTypeSnormInt16, "SnormInt16");
    245   add(ImageChannelDataTypeUnormInt8, "UnormInt8");
    246   add(ImageChannelDataTypeUnormInt16, "UnormInt16");
    247   add(ImageChannelDataTypeUnormShort565, "UnormShort565");
    248   add(ImageChannelDataTypeUnormShort555, "UnormShort555");
    249   add(ImageChannelDataTypeUnormInt101010, "UnormInt101010");
    250   add(ImageChannelDataTypeSignedInt8, "SignedInt8");
    251   add(ImageChannelDataTypeSignedInt16, "SignedInt16");
    252   add(ImageChannelDataTypeSignedInt32, "SignedInt32");
    253   add(ImageChannelDataTypeUnsignedInt8, "UnsignedInt8");
    254   add(ImageChannelDataTypeUnsignedInt16, "UnsignedInt16");
    255   add(ImageChannelDataTypeUnsignedInt32, "UnsignedInt32");
    256   add(ImageChannelDataTypeHalfFloat, "HalfFloat");
    257   add(ImageChannelDataTypeFloat, "Float");
    258   add(ImageChannelDataTypeUnormInt24, "UnormInt24");
    259   add(ImageChannelDataTypeUnormInt101010_2, "UnormInt101010_2");
    260 }
    261 SPIRV_DEF_NAMEMAP(ImageChannelDataType, SPIRVImageChannelDataTypeNameMap)
    262 
    263 template<> inline void
    264 SPIRVMap<FPRoundingMode, std::string>::init() {
    265   add(FPRoundingModeRTE, "RTE");
    266   add(FPRoundingModeRTZ, "RTZ");
    267   add(FPRoundingModeRTP, "RTP");
    268   add(FPRoundingModeRTN, "RTN");
    269 }
    270 SPIRV_DEF_NAMEMAP(FPRoundingMode, SPIRVFPRoundingModeNameMap)
    271 
    272 template<> inline void
    273 SPIRVMap<LinkageType, std::string>::init() {
    274   add(LinkageTypeExport, "Export");
    275   add(LinkageTypeImport, "Import");
    276   add(LinkageTypeInternal, "Internal");
    277 }
    278 SPIRV_DEF_NAMEMAP(LinkageType, SPIRVLinkageTypeNameMap)
    279 
    280 template<> inline void
    281 SPIRVMap<AccessQualifier, std::string>::init() {
    282   add(AccessQualifierReadOnly, "ReadOnly");
    283   add(AccessQualifierWriteOnly, "WriteOnly");
    284   add(AccessQualifierReadWrite, "ReadWrite");
    285 }
    286 SPIRV_DEF_NAMEMAP(AccessQualifier, SPIRVAccessQualifierNameMap)
    287 
    288 template<> inline void
    289 SPIRVMap<FunctionParameterAttribute, std::string>::init() {
    290   add(FunctionParameterAttributeZext, "Zext");
    291   add(FunctionParameterAttributeSext, "Sext");
    292   add(FunctionParameterAttributeByVal, "ByVal");
    293   add(FunctionParameterAttributeSret, "Sret");
    294   add(FunctionParameterAttributeNoAlias, "NoAlias");
    295   add(FunctionParameterAttributeNoCapture, "NoCapture");
    296   add(FunctionParameterAttributeNoWrite, "NoWrite");
    297   add(FunctionParameterAttributeNoReadWrite, "NoReadWrite");
    298 }
    299 SPIRV_DEF_NAMEMAP(FunctionParameterAttribute, SPIRVFunctionParameterAttributeNameMap)
    300 
    301 template<> inline void
    302 SPIRVMap<Decoration, std::string>::init() {
    303   add(DecorationRelaxedPrecision, "RelaxedPrecision");
    304   add(DecorationSpecId, "SpecId");
    305   add(DecorationBlock, "Block");
    306   add(DecorationBufferBlock, "BufferBlock");
    307   add(DecorationRowMajor, "RowMajor");
    308   add(DecorationColMajor, "ColMajor");
    309   add(DecorationArrayStride, "ArrayStride");
    310   add(DecorationMatrixStride, "MatrixStride");
    311   add(DecorationGLSLShared, "GLSLShared");
    312   add(DecorationGLSLPacked, "GLSLPacked");
    313   add(DecorationCPacked, "CPacked");
    314   add(DecorationBuiltIn, "BuiltIn");
    315   add(DecorationNoPerspective, "NoPerspective");
    316   add(DecorationFlat, "Flat");
    317   add(DecorationPatch, "Patch");
    318   add(DecorationCentroid, "Centroid");
    319   add(DecorationSample, "Sample");
    320   add(DecorationInvariant, "Invariant");
    321   add(DecorationRestrict, "Restrict");
    322   add(DecorationAliased, "Aliased");
    323   add(DecorationVolatile, "Volatile");
    324   add(DecorationConstant, "Constant");
    325   add(DecorationCoherent, "Coherent");
    326   add(DecorationNonWritable, "NonWritable");
    327   add(DecorationNonReadable, "NonReadable");
    328   add(DecorationUniform, "Uniform");
    329   add(DecorationSaturatedConversion, "SaturatedConversion");
    330   add(DecorationStream, "Stream");
    331   add(DecorationLocation, "Location");
    332   add(DecorationComponent, "Component");
    333   add(DecorationIndex, "Index");
    334   add(DecorationBinding, "Binding");
    335   add(DecorationDescriptorSet, "DescriptorSet");
    336   add(DecorationOffset, "Offset");
    337   add(DecorationXfbBuffer, "XfbBuffer");
    338   add(DecorationXfbStride, "XfbStride");
    339   add(DecorationFuncParamAttr, "FuncParamAttr");
    340   add(DecorationFPRoundingMode, "FPRoundingMode");
    341   add(DecorationFPFastMathMode, "FPFastMathMode");
    342   add(DecorationLinkageAttributes, "LinkageAttributes");
    343   add(DecorationNoContraction, "NoContraction");
    344   add(DecorationInputAttachmentIndex, "InputAttachmentIndex");
    345   add(DecorationAlignment, "Alignment");
    346   add(DecorationMaxByteOffset, "MaxByteOffset");
    347 }
    348 SPIRV_DEF_NAMEMAP(Decoration, SPIRVDecorationNameMap)
    349 
    350 template<> inline void
    351 SPIRVMap<BuiltIn, std::string>::init() {
    352   add(BuiltInPosition, "BuiltInPosition");
    353   add(BuiltInPointSize, "BuiltInPointSize");
    354   add(BuiltInClipDistance, "BuiltInClipDistance");
    355   add(BuiltInCullDistance, "BuiltInCullDistance");
    356   add(BuiltInVertexId, "BuiltInVertexId");
    357   add(BuiltInInstanceId, "BuiltInInstanceId");
    358   add(BuiltInPrimitiveId, "BuiltInPrimitiveId");
    359   add(BuiltInInvocationId, "BuiltInInvocationId");
    360   add(BuiltInLayer, "BuiltInLayer");
    361   add(BuiltInViewportIndex, "BuiltInViewportIndex");
    362   add(BuiltInTessLevelOuter, "BuiltInTessLevelOuter");
    363   add(BuiltInTessLevelInner, "BuiltInTessLevelInner");
    364   add(BuiltInTessCoord, "BuiltInTessCoord");
    365   add(BuiltInPatchVertices, "BuiltInPatchVertices");
    366   add(BuiltInFragCoord, "BuiltInFragCoord");
    367   add(BuiltInPointCoord, "BuiltInPointCoord");
    368   add(BuiltInFrontFacing, "BuiltInFrontFacing");
    369   add(BuiltInSampleId, "BuiltInSampleId");
    370   add(BuiltInSamplePosition, "BuiltInSamplePosition");
    371   add(BuiltInSampleMask, "BuiltInSampleMask");
    372   add(BuiltInFragDepth, "BuiltInFragDepth");
    373   add(BuiltInHelperInvocation, "BuiltInHelperInvocation");
    374   add(BuiltInNumWorkgroups, "BuiltInNumWorkgroups");
    375   add(BuiltInWorkgroupSize, "BuiltInWorkgroupSize");
    376   add(BuiltInWorkgroupId, "BuiltInWorkgroupId");
    377   add(BuiltInLocalInvocationId, "BuiltInLocalInvocationId");
    378   add(BuiltInGlobalInvocationId, "BuiltInGlobalInvocationId");
    379   add(BuiltInLocalInvocationIndex, "BuiltInLocalInvocationIndex");
    380   add(BuiltInWorkDim, "BuiltInWorkDim");
    381   add(BuiltInGlobalSize, "BuiltInGlobalSize");
    382   add(BuiltInEnqueuedWorkgroupSize, "BuiltInEnqueuedWorkgroupSize");
    383   add(BuiltInGlobalOffset, "BuiltInGlobalOffset");
    384   add(BuiltInGlobalLinearId, "BuiltInGlobalLinearId");
    385   add(BuiltInSubgroupSize, "BuiltInSubgroupSize");
    386   add(BuiltInSubgroupMaxSize, "BuiltInSubgroupMaxSize");
    387   add(BuiltInNumSubgroups, "BuiltInNumSubgroups");
    388   add(BuiltInNumEnqueuedSubgroups, "BuiltInNumEnqueuedSubgroups");
    389   add(BuiltInSubgroupId, "BuiltInSubgroupId");
    390   add(BuiltInSubgroupLocalInvocationId, "BuiltInSubgroupLocalInvocationId");
    391   add(BuiltInVertexIndex, "BuiltInVertexIndex");
    392   add(BuiltInInstanceIndex, "BuiltInInstanceIndex");
    393 }
    394 SPIRV_DEF_NAMEMAP(BuiltIn, SPIRVBuiltInNameMap)
    395 
    396 template<> inline void
    397 SPIRVMap<Scope, std::string>::init() {
    398   add(ScopeCrossDevice, "CrossDevice");
    399   add(ScopeDevice, "Device");
    400   add(ScopeWorkgroup, "Workgroup");
    401   add(ScopeSubgroup, "Subgroup");
    402   add(ScopeInvocation, "Invocation");
    403 }
    404 SPIRV_DEF_NAMEMAP(Scope, SPIRVScopeNameMap)
    405 
    406 template<> inline void
    407 SPIRVMap<GroupOperation, std::string>::init() {
    408   add(GroupOperationReduce, "Reduce");
    409   add(GroupOperationInclusiveScan, "InclusiveScan");
    410   add(GroupOperationExclusiveScan, "ExclusiveScan");
    411 }
    412 SPIRV_DEF_NAMEMAP(GroupOperation, SPIRVGroupOperationNameMap)
    413 
    414 template<> inline void
    415 SPIRVMap<KernelEnqueueFlags, std::string>::init() {
    416   add(KernelEnqueueFlagsNoWait, "NoWait");
    417   add(KernelEnqueueFlagsWaitKernel, "WaitKernel");
    418   add(KernelEnqueueFlagsWaitWorkGroup, "WaitWorkGroup");
    419 }
    420 SPIRV_DEF_NAMEMAP(KernelEnqueueFlags, SPIRVKernelEnqueueFlagsNameMap)
    421 
    422 template<> inline void
    423 SPIRVMap<Capability, std::string>::init() {
    424   add(CapabilityMatrix, "Matrix");
    425   add(CapabilityShader, "Shader");
    426   add(CapabilityGeometry, "Geometry");
    427   add(CapabilityTessellation, "Tessellation");
    428   add(CapabilityAddresses, "Addresses");
    429   add(CapabilityLinkage, "Linkage");
    430   add(CapabilityKernel, "Kernel");
    431   add(CapabilityVector16, "Vector16");
    432   add(CapabilityFloat16Buffer, "Float16Buffer");
    433   add(CapabilityFloat16, "Float16");
    434   add(CapabilityFloat64, "Float64");
    435   add(CapabilityInt64, "Int64");
    436   add(CapabilityInt64Atomics, "Int64Atomics");
    437   add(CapabilityImageBasic, "ImageBasic");
    438   add(CapabilityImageReadWrite, "ImageReadWrite");
    439   add(CapabilityImageMipmap, "ImageMipmap");
    440   add(CapabilityPipes, "Pipes");
    441   add(CapabilityPipeStorage, "PipeStorage");
    442   add(CapabilityGroups, "Groups");
    443   add(CapabilityDeviceEnqueue, "DeviceEnqueue");
    444   add(CapabilityLiteralSampler, "LiteralSampler");
    445   add(CapabilityAtomicStorage, "AtomicStorage");
    446   add(CapabilityInt16, "Int16");
    447   add(CapabilityTessellationPointSize, "TessellationPointSize");
    448   add(CapabilityGeometryPointSize, "GeometryPointSize");
    449   add(CapabilityImageGatherExtended, "ImageGatherExtended");
    450   add(CapabilityStorageImageMultisample, "StorageImageMultisample");
    451   add(CapabilityUniformBufferArrayDynamicIndexing, "UniformBufferArrayDynamicIndexing");
    452   add(CapabilitySampledImageArrayDynamicIndexing, "SampledImageArrayDynamicIndexing");
    453   add(CapabilityStorageBufferArrayDynamicIndexing, "StorageBufferArrayDynamicIndexing");
    454   add(CapabilityStorageImageArrayDynamicIndexing, "StorageImageArrayDynamicIndexing");
    455   add(CapabilityClipDistance, "ClipDistance");
    456   add(CapabilityCullDistance, "CullDistance");
    457   add(CapabilityImageCubeArray, "ImageCubeArray");
    458   add(CapabilitySampleRateShading, "SampleRateShading");
    459   add(CapabilityImageRect, "ImageRect");
    460   add(CapabilitySampledRect, "SampledRect");
    461   add(CapabilityGenericPointer, "GenericPointer");
    462   add(CapabilityInt8, "Int8");
    463   add(CapabilityInputAttachment, "InputAttachment");
    464   add(CapabilitySparseResidency, "SparseResidency");
    465   add(CapabilityMinLod, "MinLod");
    466   add(CapabilitySampled1D, "Sampled1D");
    467   add(CapabilityImage1D, "Image1D");
    468   add(CapabilitySampledCubeArray, "SampledCubeArray");
    469   add(CapabilitySampledBuffer, "SampledBuffer");
    470   add(CapabilityImageBuffer, "ImageBuffer");
    471   add(CapabilityImageMSArray, "ImageMSArray");
    472   add(CapabilityStorageImageExtendedFormats, "StorageImageExtendedFormats");
    473   add(CapabilityImageQuery, "ImageQuery");
    474   add(CapabilityDerivativeControl, "DerivativeControl");
    475   add(CapabilityInterpolationFunction, "InterpolationFunction");
    476   add(CapabilityTransformFeedback, "TransformFeedback");
    477   add(CapabilityGeometryStreams, "GeometryStreams");
    478   add(CapabilityStorageImageReadWithoutFormat, "StorageImageReadWithoutFormat");
    479   add(CapabilityStorageImageWriteWithoutFormat, "StorageImageWriteWithoutFormat");
    480   add(CapabilityMultiViewport, "MultiViewport");
    481 }
    482 SPIRV_DEF_NAMEMAP(Capability, SPIRVCapabilityNameMap)
    483 
    484 } /* namespace SPIRV */
    485 
    486 #endif /* SPIRVNAMEMAPENUM_H_ */
    487