clang 20.0.0git
Public Types | Public Attributes | List of all members
clang::TargetOptions Class Reference

Options for controlling the target. More...

#include "clang/Basic/TargetOptions.h"

Public Types

enum class  AMDGPUPrintfKind { Hostcall = 0 , Buffered = 1 }
 Enumeration values for AMDGPU printf lowering scheme. More...
 

Public Attributes

std::string Triple
 The name of the target triple to compile for.
 
std::string HostTriple
 When compiling for the device side, contains the triple used to compile for the host.
 
std::string CPU
 If given, the name of the target CPU to generate code for.
 
std::string TuneCPU
 If given, the name of the target CPU to tune code for.
 
std::string FPMath
 If given, the unit to use for floating point math.
 
std::string ABI
 If given, the name of the target ABI to use.
 
llvm::EABI EABIVersion = llvm::EABI::Default
 The EABI version to use.
 
std::string LinkerVersion
 If given, the version string of the linker in use.
 
std::vector< std::string > FeaturesAsWritten
 The list of target specific features to enable or disable, as written on the command line.
 
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 '-'.
 
llvm::StringMap< boolFeatureMap
 The map of which features have been enabled disabled based on the command line.
 
llvm::StringMap< boolOpenCLFeaturesMap
 Supported OpenCL extensions and optional core features.
 
std::vector< std::string > OpenCLExtensionsAsWritten
 The list of OpenCL extensions to enable or disable, as written on the command line.
 
bool ForceEnableInt128 = false
 If given, enables support for __int128_t and __uint128_t types.
 
bool NVPTXUseShortPointers = false
 If enabled, use 32-bit pointers for accessing const/local/shared address space.
 
bool AllowAMDGPUUnsafeFPAtomics = false
 If enabled, allow AMDGPU unsafe floating point atomics.
 
llvm::CodeObjectVersionKind CodeObjectVersion
 Code object version for AMDGPU.
 
AMDGPUPrintfKind AMDGPUPrintfKindVal = AMDGPUPrintfKind::Hostcall
 AMDGPU Printf lowering scheme.
 
std::string CodeModel
 
uint64_t LargeDataThreshold
 
llvm::VersionTuple SDKVersion
 The version of the SDK which was used during the compilation.
 
std::string DarwinTargetVariantTriple
 The name of the darwin target- ariant triple to compile for.
 
llvm::VersionTuple DarwinTargetVariantSDKVersion
 The version of the darwin target variant SDK which was used during the compilation.
 
std::string DxilValidatorVersion
 The validator version for dxil.
 
std::string HLSLEntry
 The entry point name for HLSL shader being compiled as specified by -E.
 

Detailed Description

Options for controlling the target.

Definition at line 26 of file TargetOptions.h.

Member Enumeration Documentation

◆ AMDGPUPrintfKind

Enumeration values for AMDGPU printf lowering scheme.

Enumerator
Hostcall 

printf lowering scheme involving hostcalls, currently used by HIP programs by default

Buffered 

printf lowering scheme involving implicit printf buffers,

Definition at line 86 of file TargetOptions.h.

Member Data Documentation

◆ ABI

std::string clang::TargetOptions::ABI

If given, the name of the target ABI to use.

Definition at line 45 of file TargetOptions.h.

Referenced by initTargetOptions().