class TargetOptions
Declaration
class TargetOptions { /* full declaration omitted */ };
Description
Options for controlling the target.
Declared at: clang/include/clang/Basic/TargetOptions.h:26
Member Variables
- public std::string Triple
- The name of the target triple to compile for.
- public std::string HostTriple
- When compiling for the device side, contains the triple used to compile for the host.
- public std::string CPU
- If given, the name of the target CPU to generate code for.
- public std::string TuneCPU
- If given, the name of the target CPU to tune code for.
- public std::string FPMath
- If given, the unit to use for floating point math.
- public std::string ABI
- If given, the name of the target ABI to use.
- public llvm::EABI EABIVersion
- The EABI version to use
- public std::string LinkerVersion
- If given, the version string of the linker in use.
- public std::vector<std::string> FeaturesAsWritten
- The list of target specific features to enable or disable, as written on the command line.
- public std::vector<std::string> Features
- The list of target specific features to enable or disable -- this should be a list of strings starting with by '+' or '-'.
- public llvm::StringMap<bool> FeatureMap
- The map of which features have been enabled disabled based on the command line.
- public llvm::StringMap<bool> OpenCLFeaturesMap
- Supported OpenCL extensions and optional core features.
- public std::vector<std::string> OpenCLExtensionsAsWritten
- The list of OpenCL extensions to enable or disable, as written on the command line.
- public bool ForceEnableInt128 = false
- If given, enables support for __int128_t and __uint128_t types.
- public bool NVPTXUseShortPointers = false
- public bool AllowAMDGPUUnsafeFPAtomics = false
- public clang::TargetOptions::CodeObjectVersionKind CodeObjectVersion
- public std::string CodeModel
- public llvm::VersionTuple SDKVersion
- The version of the SDK which was used during the compilation. The option is used for two different purposes: * on darwin the version is propagated to LLVM where it's used to support SDK Version metadata (See D55673). * CUDA compilation uses it to control parts of CUDA compilation in clang that depend on specific version of the CUDA SDK.
- public std::string DarwinTargetVariantTriple
- The name of the darwin target- ariant triple to compile for.
- public llvm::VersionTuple DarwinTargetVariantSDKVersion
- The version of the darwin target variant SDK which was used during the compilation.
- public std::string DxilValidatorVersion
- The validator version for dxil.