LLVM 22.0.0git
|
Command line parser for toggling SPIR-V extensions. More...
#include "Target/SPIRV/SPIRVCommandLine.h"
Static Public Member Functions | |
static StringRef | checkExtensions (const std::vector< std::string > &ExtNames, std::set< SPIRV::Extension::Extension > &AllowedExtensions) |
Validates and converts extension names into internal enum values. | |
static std::set< SPIRV::Extension::Extension > | getValidExtensions (const Triple &TT) |
Returns the list of extensions that are valid for a particular target environment (i.e., OpenCL or Vulkan). | |
Additional Inherited Members | |
![]() | |
using | parser_data_type = std::set< SPIRV::Extension::Extension > |
![]() | |
SmallVector< OptionInfo, 8 > | Values |
![]() | |
Option & | Owner |
Command line parser for toggling SPIR-V extensions.
Definition at line 27 of file SPIRVCommandLine.h.
|
inline |
Definition at line 30 of file SPIRVCommandLine.h.
References SPIRV.
|
static |
Validates and converts extension names into internal enum values.
Definition at line 201 of file SPIRVCommandLine.cpp.
References SPIRVExtensionMap.
Referenced by llvm::SPIRVTranslate().
|
static |
Returns the list of extensions that are valid for a particular target environment (i.e., OpenCL or Vulkan).
Definition at line 219 of file SPIRVCommandLine.cpp.
References llvm::getSymbolicOperandAllowedEnvironments(), llvm::is_contained(), SPIRVExtensionMap, and llvm::Triple::Vulkan.
Referenced by llvm::SPIRVSubtarget::initAvailableExtensions().
bool SPIRVExtensionsParser::parse | ( | cl::Option & | O, |
StringRef | ArgName, | ||
StringRef | ArgValue, | ||
std::set< SPIRV::Extension::Extension > & | Vals | ||
) |
Parses SPIR-V extension name from CLI arguments.
Definition at line 152 of file SPIRVCommandLine.cpp.
References llvm::SmallVectorTemplateCommon< T, typename >::begin(), llvm::SmallVectorTemplateCommon< T, typename >::end(), llvm::is_contained(), SPIRVExtensionMap, llvm::StringRef::split(), starts_with(), llvm::StringRef::str(), and llvm::StringRef::substr().