14#ifndef LLVM_LIB_TARGET_SPIRV_COMMANDLINE_H
15#define LLVM_LIB_TARGET_SPIRV_COMMANDLINE_H
28 :
public cl::parser<std::set<SPIRV::Extension::Extension>> {
37 std::set<SPIRV::Extension::Extension> &Vals);
45 std::set<SPIRV::Extension::Extension> &AllowedExtensions);
49 static std::set<SPIRV::Extension::Extension>
StringRef - Represent a constant reference to a string, i.e.
Triple - Helper class for working with autoconf configuration names.
This namespace contains all of the command line option processing machinery.
This is an optimization pass for GlobalISel generic memory operations.
Implement std::hash so that hash_code can be used in STL containers.
SPIRVExtensionsParser(cl::Option &O)
static std::set< SPIRV::Extension::Extension > getValidExtensions(const Triple &TT)
Returns the list of extensions that are valid for a particular target environment (i....
bool parse(cl::Option &O, StringRef ArgName, StringRef ArgValue, std::set< SPIRV::Extension::Extension > &Vals)
Parses SPIR-V extension name from CLI arguments.
static StringRef checkExtensions(const std::vector< std::string > &ExtNames, std::set< SPIRV::Extension::Extension > &AllowedExtensions)
Validates and converts extension names into internal enum values.