LLVM: include/llvm/TargetParser/TargetParser.h Source File (original) (raw)

1

2

3

4

5

6

7

8

9

10

11

12

13

14#ifndef LLVM_TARGETPARSER_TARGETPARSER_H

15#define LLVM_TARGETPARSER_TARGETPARSER_H

16

22

23namespace llvm {

24

27

28

29

30

31

32

33

34

36

37

39

41

42

59

62

63

67

74

80

91

103

112

117

120

127

130};

131

132

138

139

140

143

144

148

149

152

153

155

156

158

159

161

162

164

165

167};

168

174

176

184

187

189

190

191

192

193LLVM_ABI std::pair<FeatureError, StringRef>

195}

196

202

203

205 const char *Key;

207

208

210

211

215};

216

217LLVM_ABI std::optional<llvm::StringMap>

221}

222

223#endif

This file defines the StringMap class.

Class used to store the subtarget bits in the tables created by tablegen.

This class consists of common code factored out of the SmallVector class to reduce code duplication b...

StringMap - This is an unconventional map that is specialized for handling keys that are "strings",...

StringRef - Represent a constant reference to a string, i.e.

Triple - Helper class for working with autoconf configuration names.

LLVM_ABI StringRef getArchNameR600(GPUKind AK)

GPUKind

GPU kinds supported by the AMDGPU target.

Definition TargetParser.h:38

@ GK_GFX600

Definition TargetParser.h:64

@ GK_SUMO

Definition TargetParser.h:54

@ GK_GFX701

Definition TargetParser.h:69

@ GK_GFX1030

Definition TargetParser.h:96

@ GK_GFX9_GENERIC

Definition TargetParser.h:121

@ GK_GFX704

Definition TargetParser.h:72

@ GK_GFX1251

Definition TargetParser.h:116

@ GK_GFX1013

Definition TargetParser.h:95

@ GK_R630

Definition TargetParser.h:44

@ GK_JUNIPER

Definition TargetParser.h:52

@ GK_GFX1033

Definition TargetParser.h:99

@ GK_RV730

Definition TargetParser.h:48

@ GK_GFX908

Definition TargetParser.h:85

@ GK_RV670

Definition TargetParser.h:46

@ GK_RV710

Definition TargetParser.h:47

@ GK_GFX10_3_GENERIC

Definition TargetParser.h:123

@ GK_AMDGCN_FIRST

Definition TargetParser.h:118

@ GK_GFX1031

Definition TargetParser.h:97

@ GK_GFX909

Definition TargetParser.h:86

@ GK_GFX942

Definition TargetParser.h:89

@ GK_GFX802

Definition TargetParser.h:76

@ GK_GFX1102

Definition TargetParser.h:106

@ GK_GFX904

Definition TargetParser.h:83

@ GK_GFX1101

Definition TargetParser.h:105

@ GK_TURKS

Definition TargetParser.h:58

@ GK_GFX1035

Definition TargetParser.h:101

@ GK_GFX803

Definition TargetParser.h:77

@ GK_GFX702

Definition TargetParser.h:70

@ GK_GFX703

Definition TargetParser.h:71

@ GK_GFX90A

Definition TargetParser.h:87

@ GK_GFX12_GENERIC

Definition TargetParser.h:125

@ GK_NONE

Definition TargetParser.h:40

@ GK_CAYMAN

Definition TargetParser.h:57

@ GK_GFX1200

Definition TargetParser.h:113

@ GK_GFX1250

Definition TargetParser.h:115

@ GK_R600_LAST

Definition TargetParser.h:61

@ GK_REDWOOD

Definition TargetParser.h:53

@ GK_GFX1150

Definition TargetParser.h:108

@ GK_CYPRESS

Definition TargetParser.h:51

@ GK_GFX1100

Definition TargetParser.h:104

@ GK_GFX950

Definition TargetParser.h:90

@ GK_GFX902

Definition TargetParser.h:82

@ GK_GFX705

Definition TargetParser.h:73

@ GK_GFX810

Definition TargetParser.h:79

@ GK_GFX9_4_GENERIC

Definition TargetParser.h:126

@ GK_GFX1151

Definition TargetParser.h:109

@ GK_GFX805

Definition TargetParser.h:78

@ GK_GFX10_1_GENERIC

Definition TargetParser.h:122

@ GK_BARTS

Definition TargetParser.h:55

@ GK_GFX801

Definition TargetParser.h:75

@ GK_CEDAR

Definition TargetParser.h:50

@ GK_GFX1153

Definition TargetParser.h:111

@ GK_GFX602

Definition TargetParser.h:66

@ GK_R600_FIRST

Definition TargetParser.h:60

@ GK_CAICOS

Definition TargetParser.h:56

@ GK_GFX1012

Definition TargetParser.h:94

@ GK_GFX601

Definition TargetParser.h:65

@ GK_RS880

Definition TargetParser.h:45

@ GK_GFX700

Definition TargetParser.h:68

@ GK_AMDGCN_GENERIC_FIRST

Definition TargetParser.h:128

@ GK_GFX90C

Definition TargetParser.h:88

@ GK_GFX1152

Definition TargetParser.h:110

@ GK_GFX906

Definition TargetParser.h:84

@ GK_GFX1034

Definition TargetParser.h:100

@ GK_GFX1010

Definition TargetParser.h:92

@ GK_GFX1201

Definition TargetParser.h:114

@ GK_GFX1103

Definition TargetParser.h:107

@ GK_AMDGCN_LAST

Definition TargetParser.h:119

@ GK_GFX1036

Definition TargetParser.h:102

@ GK_AMDGCN_GENERIC_LAST

Definition TargetParser.h:129

@ GK_GFX11_GENERIC

Definition TargetParser.h:124

@ GK_RV770

Definition TargetParser.h:49

@ GK_GFX1011

Definition TargetParser.h:93

@ GK_GFX900

Definition TargetParser.h:81

@ GK_GFX1032

Definition TargetParser.h:98

@ GK_R600

Definition TargetParser.h:43

LLVM_ABI StringRef getCanonicalArchName(const Triple &T, StringRef Arch)

LLVM_ABI void fillValidArchListR600(SmallVectorImpl< StringRef > &Values)

LLVM_ABI StringRef getArchFamilyNameAMDGCN(GPUKind AK)

LLVM_ABI IsaVersion getIsaVersion(StringRef GPU)

LLVM_ABI void fillValidArchListAMDGCN(SmallVectorImpl< StringRef > &Values)

LLVM_ABI GPUKind parseArchAMDGCN(StringRef CPU)

FeatureError

Definition TargetParser.h:169

@ UNSUPPORTED_TARGET_FEATURE

Definition TargetParser.h:172

@ INVALID_FEATURE_COMBINATION

Definition TargetParser.h:171

@ NO_ERROR

Definition TargetParser.h:170

ArchFeatureKind

Definition TargetParser.h:141

@ FEATURE_FAST_DENORMAL_F32

Definition TargetParser.h:151

@ FEATURE_SRAMECC

Definition TargetParser.h:160

@ FEATURE_NONE

Definition TargetParser.h:142

@ FEATURE_XNACK

Definition TargetParser.h:157

@ FEATURE_FAST_FMA_F32

Definition TargetParser.h:150

@ FEATURE_WAVE32

Definition TargetParser.h:154

@ FEATURE_LDEXP

Definition TargetParser.h:146

@ FEATURE_FP64

Definition TargetParser.h:147

@ FEATURE_WGP

Definition TargetParser.h:163

@ FEATURE_FMA

Definition TargetParser.h:145

@ FEATURE_XNACK_ALWAYS

Definition TargetParser.h:166

LLVM_ABI std::pair< FeatureError, StringRef > fillAMDGPUFeatureMap(StringRef GPU, const Triple &T, StringMap< bool > &Features)

Fills Features map with default values for given target GPU.

LLVM_ABI StringRef getArchNameAMDGCN(GPUKind AK)

LLVM_ABI unsigned getArchAttrAMDGCN(GPUKind AK)

LLVM_ABI unsigned getArchAttrR600(GPUKind AK)

LLVM_ABI GPUKind parseArchR600(StringRef CPU)

This is an optimization pass for GlobalISel generic memory operations.

ArrayRef(const T &OneElt) -> ArrayRef< T >

LLVM_ABI std::optional< llvm::StringMap< bool > > getCPUDefaultTargetFeatures(StringRef CPU, ArrayRef< BasicSubtargetSubTypeKV > ProcDesc, ArrayRef< BasicSubtargetFeatureKV > ProcFeatures)

Instruction set architecture version.

Definition TargetParser.h:133

unsigned Minor

Definition TargetParser.h:135

unsigned Stepping

Definition TargetParser.h:136

unsigned Major

Definition TargetParser.h:134

Definition TargetParser.h:197

FeatureBitArray Implies

K-V bit mask.

Definition TargetParser.h:200

const char * Key

K-V key string.

Definition TargetParser.h:198

unsigned Value

K-V integer value.

Definition TargetParser.h:199

Used to provide key value pairs for feature and CPU bit flags.

Definition TargetParser.h:204

FeatureBitArray Implies

K-V bit mask.

Definition TargetParser.h:206

bool operator<(const BasicSubtargetSubTypeKV &Other) const

Compare routine for std::is_sorted.

Definition TargetParser.h:212

bool operator<(StringRef S) const

Compare routine for std::lower_bound.

Definition TargetParser.h:209

const char * Key

K-V key string.

Definition TargetParser.h:205