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.