LLVM: include/llvm/ExecutionEngine/JITLink/riscv.h Source File (original) (raw)

Go to the documentation of this file.

1

2

3

4

5

6

7

8

9

10

11

12

13#ifndef LLVM_EXECUTIONENGINE_JITLINK_RISCV_H

14#define LLVM_EXECUTIONENGINE_JITLINK_RISCV_H

15

18

19namespace llvm {

22

23

24

26

27

28

29

30

31

32

34

35

36

37

38

39

41

42

43

44

45

46

48

49

50

51

52

53

55

56

57

58

59

61

62

63

64

65

67

68

69

70

71

73

74

75

76

77

79

80

81

82

83

85

86

87

88

89

91

92

93

94

95

97

98

99

100

101

103

104

105

106

107

108

110

111

112

113

114

116

117

118

119

120

122

123

124

125

126

128

129

130

131

132

134

135

136

137

138

140

141

142

143

144

146

147

148

149

150

152

153

154

155

156

158

159

160

161

162

164

165

166

167

168

170

171

172

173

174

176

177

178

179

180

182

183

184

185

186

188

189

190

191

192

194

195

196

197

198

200

201

202

203

204

206

207

208

209

210

212

213

214

215

216

218

219

220

221

222

224

225

226

227

228

230

231

232

233

234

236};

237

238

239

241}

242}

243}

244

245#endif

EdgeKind_riscv

Represents riscv fixups.

Definition riscv.h:25

@ R_RISCV_SUB32

32 bits label subtraction

Definition riscv.h:151

@ R_RISCV_LO12_S

Low 12 bits of 32-bit pointer value relocation, used by S type instruction format.

Definition riscv.h:109

@ R_RISCV_JAL

High 20 bits of PC-relative jump pointer value relocation.

Definition riscv.h:54

@ R_RISCV_ADD8

8 bits label addition

Definition riscv.h:115

@ R_RISCV_HI20

High 20 bits of 32-bit pointer value relocation.

Definition riscv.h:96

@ R_RISCV_PCREL_LO12_I

Low 12 bits of PC relative relocation, used by I type instruction format.

Definition riscv.h:84

@ R_RISCV_SUB8

8 bits label subtraction

Definition riscv.h:139

@ R_RISCV_SET6

Local label assignment.

Definition riscv.h:181

@ R_RISCV_CALL_PLT

PC relative call by PLT.

Definition riscv.h:66

@ R_RISCV_SET_ULEB128

Set ULEB128-encoded value.

Definition riscv.h:229

@ R_RISCV_SET32

Local label assignment.

Definition riscv.h:199

@ R_RISCV_RVC_JUMP

11-bit PC-relative jump offset

Definition riscv.h:169

@ R_RISCV_SUB6

6 bits label subtraction

Definition riscv.h:175

@ R_RISCV_CALL

PC relative call.

Definition riscv.h:60

@ CallRelaxable

An auipc/jalr pair eligible for linker relaxation.

Definition riscv.h:211

@ R_RISCV_BRANCH

PC-relative branch pointer value relocation.

Definition riscv.h:47

@ R_RISCV_PCREL_LO12_S

Low 12 bits of PC relative relocation, used by S type instruction format.

Definition riscv.h:90

@ R_RISCV_SUB_ULEB128

Subtract from ULEB128-encoded value.

Definition riscv.h:235

@ R_RISCV_32

A plain 32-bit pointer value relocation.

Definition riscv.h:33

@ R_RISCV_RVC_BRANCH

8-bit PC-relative branch offset

Definition riscv.h:163

@ R_RISCV_64

A plain 64-bit pointer value relocation.

Definition riscv.h:40

@ R_RISCV_LO12_I

Low 12 bits of 32-bit pointer value relocation.

Definition riscv.h:102

@ NegDelta32

32-bit negative delta.

Definition riscv.h:223

@ R_RISCV_32_PCREL

32 bits PC relative relocation

Definition riscv.h:205

@ R_RISCV_SET16

Local label assignment.

Definition riscv.h:193

@ AlignRelaxable

Alignment requirement used by linker relaxation.

Definition riscv.h:217

@ R_RISCV_PCREL_HI20

High 20 bits of PC relative relocation.

Definition riscv.h:78

@ R_RISCV_ADD64

64 bits label addition

Definition riscv.h:133

@ R_RISCV_ADD32

32 bits label addition

Definition riscv.h:127

@ R_RISCV_GOT_HI20

PC relative GOT offset.

Definition riscv.h:72

@ R_RISCV_SUB16

16 bits label subtraction

Definition riscv.h:145

@ R_RISCV_SET8

Local label assignment.

Definition riscv.h:187

@ R_RISCV_ADD16

16 bits label addition

Definition riscv.h:121

@ R_RISCV_SUB64

64 bits label subtraction

Definition riscv.h:157

LLVM_ABI const char * getEdgeKindName(Edge::Kind K)

Returns a string name for the given riscv edge.

This is an optimization pass for GlobalISel generic memory operations.