|
clang 24.0.0git
|
Translate clang-cl options before and after offload argument filtering. More...
#include "/work/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/Driver/ClangCLArgs.h"
Public Member Functions | |
| ClangCLArgs (const llvm::opt::ArgList &Args, const llvm::Triple &HostTriple) | |
| The argument values must outlive this translator. | |
| bool | translateArg (llvm::opt::Arg *A, llvm::opt::DerivedArgList &DAL, const llvm::opt::DerivedArgList *Owner=nullptr) const |
| Append the canonical translation of A to DAL. | |
Static Public Member Functions | |
| static llvm::opt::DerivedArgList * | translateArgs (const llvm::opt::DerivedArgList &Args, const llvm::Triple &HostTriple, const llvm::opt::DerivedArgList &Owner) |
| Translate a filtered list that may contain new clang-cl options, replacing earlier /O expansions. | |
| static const char * | translateMacroDefinition (const char *Value, const llvm::opt::ArgList &Args) |
| Normalize MSVC's '#' macro separator, also used by Clang targeting MSVC and by arguments parsed after host/device filtering. | |
Translate clang-cl options before and after offload argument filtering.
Definition at line 26 of file ClangCLArgs.h.
| ClangCLArgs::ClangCLArgs | ( | const llvm::opt::ArgList & | Args, |
| const llvm::Triple & | HostTriple ) |
The argument values must outlive this translator.
Definition at line 25 of file ClangCLArgs.cpp.
Referenced by translateArgs().
| bool ClangCLArgs::translateArg | ( | llvm::opt::Arg * | A, |
| llvm::opt::DerivedArgList & | DAL, | ||
| const llvm::opt::DerivedArgList * | Owner = nullptr ) const |
Append the canonical translation of A to DAL.
Return false without modifying DAL if A is not handled. If supplied, Owner owns synthesized arguments instead of DAL and must outlive its consumers.
Definition at line 44 of file ClangCLArgs.cpp.
References clang::getDriverOptTable().
Referenced by translateArgs().
|
static |
Translate a filtered list that may contain new clang-cl options, replacing earlier /O expansions.
The caller owns the returned list; Owner owns its synthesized arguments and must outlive its consumers.
Definition at line 175 of file ClangCLArgs.cpp.
References ClangCLArgs(), and translateArg().
Referenced by clang::driver::Compilation::getArgsForToolChain(), and clang::driver::ToolChain::TranslateOpenMPTargetArgs().
|
static |
Normalize MSVC's '#' macro separator, also used by Clang targeting MSVC and by arguments parsed after host/device filtering.
Any replacement string has the lifetime of Args; otherwise return Value unchanged.
Definition at line 190 of file ClangCLArgs.cpp.
Referenced by clang::driver::ToolChain::TranslateOpenMPTargetArgs(), and clang::driver::ToolChain::TranslateXarchArgs().