clang: include/clang/Basic/TargetOptions.h Source File (original) (raw)

1

2

3

4

5

6

7

8

9

10

11

12

13

14#ifndef LLVM_CLANG_BASIC_TARGETOPTIONS_H

15#define LLVM_CLANG_BASIC_TARGETOPTIONS_H

16

18#include "llvm/Support/VersionTuple.h"

19#include "llvm/Target/TargetOptions.h"

20#include

21#include

22

24

25

27public:

28

30

31

32

34

35

37

38

40

41

43

44

46

47

49

50

52

53

55

56

57

59

60

61

63

64

66

67

68

70

71

73

74

75

77

78

80

81

83 llvm::CodeObjectVersionKind::COV_None;

84

85

87

88

90

91

93 };

94

95

97

98

99

100

101

103

104

105

107

108

109

110

111

112

113

115

116

118

119

120

122

123

125

126

128};

129

130}

131

132#endif

Defines the clang::OpenCLOptions class.

Options for controlling the target.

std::string Triple

The name of the target triple to compile for.

std::string DxilValidatorVersion

The validator version for dxil.

bool AllowAMDGPUUnsafeFPAtomics

If enabled, allow AMDGPU unsafe floating point atomics.

llvm::VersionTuple SDKVersion

The version of the SDK which was used during the compilation.

uint64_t LargeDataThreshold

std::string LinkerVersion

If given, the version string of the linker in use.

std::vector< std::string > Features

The list of target specific features to enable or disable – this should be a list of strings starting...

std::string DarwinTargetVariantTriple

The name of the darwin target- ariant triple to compile for.

std::string ABI

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

std::string TuneCPU

If given, the name of the target CPU to tune code for.

std::string CPU

If given, the name of the target CPU to generate code for.

llvm::VersionTuple DarwinTargetVariantSDKVersion

The version of the darwin target variant SDK which was used during the compilation.

std::string FPMath

If given, the unit to use for floating point math.

llvm::EABI EABIVersion

The EABI version to use.

bool ForceEnableInt128

If given, enables support for __int128_t and __uint128_t types.

llvm::CodeObjectVersionKind CodeObjectVersion

Code object version for AMDGPU.

std::string HostTriple

When compiling for the device side, contains the triple used to compile for the host.

std::vector< std::string > FeaturesAsWritten

The list of target specific features to enable or disable, as written on the command line.

bool NVPTXUseShortPointers

If enabled, use 32-bit pointers for accessing const/local/shared address space.

std::vector< std::string > OpenCLExtensionsAsWritten

The list of OpenCL extensions to enable or disable, as written on the command line.

AMDGPUPrintfKind

Enumeration values for AMDGPU printf lowering scheme.

@ Hostcall

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

@ Buffered

printf lowering scheme involving implicit printf buffers,

llvm::StringMap< bool > OpenCLFeaturesMap

Supported OpenCL extensions and optional core features.

llvm::StringMap< bool > FeatureMap

The map of which features have been enabled disabled based on the command line.

std::string HLSLEntry

The entry point name for HLSL shader being compiled as specified by -E.

AMDGPUPrintfKind AMDGPUPrintfKindVal

AMDGPU Printf lowering scheme.

The JSON file list parser is used to communicate input to InstallAPI.