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