elfxx-kvx-relocs.h revision 1.1 1 1.1 christos /* KVX-specific relocations table.
2 1.1 christos Copyright (C) 2009-2024 Free Software Foundation, Inc.
3 1.1 christos Contributed by Kalray SA.
4 1.1 christos
5 1.1 christos This file is part of BFD, the Binary File Descriptor library.
6 1.1 christos
7 1.1 christos This program is free software; you can redistribute it and/or modify
8 1.1 christos it under the terms of the GNU General Public License as published by
9 1.1 christos the Free Software Foundation; either version 3 of the License, or
10 1.1 christos (at your option) any later version.
11 1.1 christos
12 1.1 christos This program is distributed in the hope that it will be useful,
13 1.1 christos but WITHOUT ANY WARRANTY; without even the implied warranty of
14 1.1 christos MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 1.1 christos GNU General Public License for more details.
16 1.1 christos
17 1.1 christos You should have received a copy of the GNU General Public License
18 1.1 christos along with this program; see the file COPYING3. If not,
19 1.1 christos see <http://www.gnu.org/licenses/>. */
20 1.1 christos
21 1.1 christos #ifdef KVX_KV3_V1_KV3_V2_KV4_V1
22 1.1 christos static reloc_howto_type elf_kvx_howto_table[] =
23 1.1 christos {
24 1.1 christos HOWTO (R_KVX_NONE, /* type */
25 1.1 christos 0, /* rightshift */
26 1.1 christos 0, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
27 1.1 christos 32, /* bitsize */
28 1.1 christos false, /* pc_relative */
29 1.1 christos 0, /* bitpos (bit field offset) */
30 1.1 christos complain_overflow_bitfield, /* complain_on_overflow */
31 1.1 christos bfd_elf_generic_reloc, /* special_function */
32 1.1 christos "R_KVX_NONE", /* name */
33 1.1 christos false, /* partial_inplace */
34 1.1 christos 0, /* src_mask */
35 1.1 christos 0, /* dst_mask */
36 1.1 christos false), /* pcrel_offset */
37 1.1 christos HOWTO (R_KVX_16, /* type */
38 1.1 christos 0, /* rightshift */
39 1.1 christos 2, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
40 1.1 christos 16, /* bitsize */
41 1.1 christos false, /* pc_relative */
42 1.1 christos 0, /* bitpos (bit field offset) */
43 1.1 christos complain_overflow_unsigned, /* complain_on_overflow */
44 1.1 christos bfd_elf_generic_reloc, /* special_function */
45 1.1 christos "R_KVX_16", /* name */
46 1.1 christos false, /* partial_inplace */
47 1.1 christos 0x0, /* src_mask */
48 1.1 christos 0xffff, /* dst_mask */
49 1.1 christos false), /* pc_offset */
50 1.1 christos HOWTO (R_KVX_32, /* type */
51 1.1 christos 0, /* rightshift */
52 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
53 1.1 christos 32, /* bitsize */
54 1.1 christos false, /* pc_relative */
55 1.1 christos 0, /* bitpos (bit field offset) */
56 1.1 christos complain_overflow_unsigned, /* complain_on_overflow */
57 1.1 christos bfd_elf_generic_reloc, /* special_function */
58 1.1 christos "R_KVX_32", /* name */
59 1.1 christos false, /* partial_inplace */
60 1.1 christos 0x0, /* src_mask */
61 1.1 christos 0xffffffff, /* dst_mask */
62 1.1 christos false), /* pc_offset */
63 1.1 christos HOWTO (R_KVX_64, /* type */
64 1.1 christos 0, /* rightshift */
65 1.1 christos 8, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
66 1.1 christos 64, /* bitsize */
67 1.1 christos false, /* pc_relative */
68 1.1 christos 0, /* bitpos (bit field offset) */
69 1.1 christos complain_overflow_unsigned, /* complain_on_overflow */
70 1.1 christos bfd_elf_generic_reloc, /* special_function */
71 1.1 christos "R_KVX_64", /* name */
72 1.1 christos false, /* partial_inplace */
73 1.1 christos 0x0, /* src_mask */
74 1.1 christos 0xffffffffffffffff, /* dst_mask */
75 1.1 christos false), /* pc_offset */
76 1.1 christos HOWTO (R_KVX_S16_PCREL, /* type */
77 1.1 christos 0, /* rightshift */
78 1.1 christos 2, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
79 1.1 christos 16, /* bitsize */
80 1.1 christos true, /* pc_relative */
81 1.1 christos 0, /* bitpos (bit field offset) */
82 1.1 christos complain_overflow_signed, /* complain_on_overflow */
83 1.1 christos bfd_elf_generic_reloc, /* special_function */
84 1.1 christos "R_KVX_S16_PCREL", /* name */
85 1.1 christos false, /* partial_inplace */
86 1.1 christos 0x0, /* src_mask */
87 1.1 christos 0xffff, /* dst_mask */
88 1.1 christos true), /* pc_offset */
89 1.1 christos HOWTO (R_KVX_PCREL17, /* type */
90 1.1 christos 2, /* rightshift */
91 1.1 christos 3, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
92 1.1 christos 17, /* bitsize */
93 1.1 christos true, /* pc_relative */
94 1.1 christos 6, /* bitpos (bit field offset) */
95 1.1 christos complain_overflow_signed, /* complain_on_overflow */
96 1.1 christos bfd_elf_generic_reloc, /* special_function */
97 1.1 christos "R_KVX_PCREL17", /* name */
98 1.1 christos false, /* partial_inplace */
99 1.1 christos 0x0, /* src_mask */
100 1.1 christos 0x7fffc0, /* dst_mask */
101 1.1 christos true), /* pc_offset */
102 1.1 christos HOWTO (R_KVX_PCREL27, /* type */
103 1.1 christos 2, /* rightshift */
104 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
105 1.1 christos 27, /* bitsize */
106 1.1 christos true, /* pc_relative */
107 1.1 christos 0, /* bitpos (bit field offset) */
108 1.1 christos complain_overflow_signed, /* complain_on_overflow */
109 1.1 christos bfd_elf_generic_reloc, /* special_function */
110 1.1 christos "R_KVX_PCREL27", /* name */
111 1.1 christos false, /* partial_inplace */
112 1.1 christos 0x0, /* src_mask */
113 1.1 christos 0x7ffffff, /* dst_mask */
114 1.1 christos true), /* pc_offset */
115 1.1 christos HOWTO (R_KVX_32_PCREL, /* type */
116 1.1 christos 0, /* rightshift */
117 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
118 1.1 christos 32, /* bitsize */
119 1.1 christos true, /* pc_relative */
120 1.1 christos 0, /* bitpos (bit field offset) */
121 1.1 christos complain_overflow_signed, /* complain_on_overflow */
122 1.1 christos bfd_elf_generic_reloc, /* special_function */
123 1.1 christos "R_KVX_32_PCREL", /* name */
124 1.1 christos false, /* partial_inplace */
125 1.1 christos 0x0, /* src_mask */
126 1.1 christos 0xffffffff, /* dst_mask */
127 1.1 christos true), /* pc_offset */
128 1.1 christos HOWTO (R_KVX_S37_PCREL_LO10, /* type */
129 1.1 christos 0, /* rightshift */
130 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
131 1.1 christos 10, /* bitsize */
132 1.1 christos true, /* pc_relative */
133 1.1 christos 6, /* bitpos (bit field offset) */
134 1.1 christos complain_overflow_dont, /* complain_on_overflow */
135 1.1 christos bfd_elf_generic_reloc, /* special_function */
136 1.1 christos "R_KVX_S37_PCREL_LO10", /* name */
137 1.1 christos false, /* partial_inplace */
138 1.1 christos 0x0, /* src_mask */
139 1.1 christos 0xffc0, /* dst_mask */
140 1.1 christos true), /* pc_offset */
141 1.1 christos HOWTO (R_KVX_S37_PCREL_UP27, /* type */
142 1.1 christos 10, /* rightshift */
143 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
144 1.1 christos 27, /* bitsize */
145 1.1 christos true, /* pc_relative */
146 1.1 christos 0, /* bitpos (bit field offset) */
147 1.1 christos complain_overflow_dont, /* complain_on_overflow */
148 1.1 christos bfd_elf_generic_reloc, /* special_function */
149 1.1 christos "R_KVX_S37_PCREL_UP27", /* name */
150 1.1 christos false, /* partial_inplace */
151 1.1 christos 0x0, /* src_mask */
152 1.1 christos 0x7ffffff, /* dst_mask */
153 1.1 christos true), /* pc_offset */
154 1.1 christos HOWTO (R_KVX_S43_PCREL_LO10, /* type */
155 1.1 christos 0, /* rightshift */
156 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
157 1.1 christos 10, /* bitsize */
158 1.1 christos true, /* pc_relative */
159 1.1 christos 6, /* bitpos (bit field offset) */
160 1.1 christos complain_overflow_dont, /* complain_on_overflow */
161 1.1 christos bfd_elf_generic_reloc, /* special_function */
162 1.1 christos "R_KVX_S43_PCREL_LO10", /* name */
163 1.1 christos false, /* partial_inplace */
164 1.1 christos 0x0, /* src_mask */
165 1.1 christos 0xffc0, /* dst_mask */
166 1.1 christos true), /* pc_offset */
167 1.1 christos HOWTO (R_KVX_S43_PCREL_UP27, /* type */
168 1.1 christos 10, /* rightshift */
169 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
170 1.1 christos 27, /* bitsize */
171 1.1 christos true, /* pc_relative */
172 1.1 christos 0, /* bitpos (bit field offset) */
173 1.1 christos complain_overflow_dont, /* complain_on_overflow */
174 1.1 christos bfd_elf_generic_reloc, /* special_function */
175 1.1 christos "R_KVX_S43_PCREL_UP27", /* name */
176 1.1 christos false, /* partial_inplace */
177 1.1 christos 0x0, /* src_mask */
178 1.1 christos 0x7ffffff, /* dst_mask */
179 1.1 christos true), /* pc_offset */
180 1.1 christos HOWTO (R_KVX_S43_PCREL_EX6, /* type */
181 1.1 christos 37, /* rightshift */
182 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
183 1.1 christos 6, /* bitsize */
184 1.1 christos true, /* pc_relative */
185 1.1 christos 0, /* bitpos (bit field offset) */
186 1.1 christos complain_overflow_dont, /* complain_on_overflow */
187 1.1 christos bfd_elf_generic_reloc, /* special_function */
188 1.1 christos "R_KVX_S43_PCREL_EX6", /* name */
189 1.1 christos false, /* partial_inplace */
190 1.1 christos 0x0, /* src_mask */
191 1.1 christos 0x3f, /* dst_mask */
192 1.1 christos true), /* pc_offset */
193 1.1 christos HOWTO (R_KVX_S64_PCREL_LO10, /* type */
194 1.1 christos 0, /* rightshift */
195 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
196 1.1 christos 10, /* bitsize */
197 1.1 christos true, /* pc_relative */
198 1.1 christos 6, /* bitpos (bit field offset) */
199 1.1 christos complain_overflow_dont, /* complain_on_overflow */
200 1.1 christos bfd_elf_generic_reloc, /* special_function */
201 1.1 christos "R_KVX_S64_PCREL_LO10", /* name */
202 1.1 christos false, /* partial_inplace */
203 1.1 christos 0x0, /* src_mask */
204 1.1 christos 0xffc0, /* dst_mask */
205 1.1 christos true), /* pc_offset */
206 1.1 christos HOWTO (R_KVX_S64_PCREL_UP27, /* type */
207 1.1 christos 10, /* rightshift */
208 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
209 1.1 christos 27, /* bitsize */
210 1.1 christos true, /* pc_relative */
211 1.1 christos 0, /* bitpos (bit field offset) */
212 1.1 christos complain_overflow_dont, /* complain_on_overflow */
213 1.1 christos bfd_elf_generic_reloc, /* special_function */
214 1.1 christos "R_KVX_S64_PCREL_UP27", /* name */
215 1.1 christos false, /* partial_inplace */
216 1.1 christos 0x0, /* src_mask */
217 1.1 christos 0x7ffffff, /* dst_mask */
218 1.1 christos true), /* pc_offset */
219 1.1 christos HOWTO (R_KVX_S64_PCREL_EX27, /* type */
220 1.1 christos 37, /* rightshift */
221 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
222 1.1 christos 27, /* bitsize */
223 1.1 christos true, /* pc_relative */
224 1.1 christos 0, /* bitpos (bit field offset) */
225 1.1 christos complain_overflow_dont, /* complain_on_overflow */
226 1.1 christos bfd_elf_generic_reloc, /* special_function */
227 1.1 christos "R_KVX_S64_PCREL_EX27", /* name */
228 1.1 christos false, /* partial_inplace */
229 1.1 christos 0x0, /* src_mask */
230 1.1 christos 0x7ffffff, /* dst_mask */
231 1.1 christos true), /* pc_offset */
232 1.1 christos HOWTO (R_KVX_64_PCREL, /* type */
233 1.1 christos 0, /* rightshift */
234 1.1 christos 8, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
235 1.1 christos 64, /* bitsize */
236 1.1 christos true, /* pc_relative */
237 1.1 christos 0, /* bitpos (bit field offset) */
238 1.1 christos complain_overflow_signed, /* complain_on_overflow */
239 1.1 christos bfd_elf_generic_reloc, /* special_function */
240 1.1 christos "R_KVX_64_PCREL", /* name */
241 1.1 christos false, /* partial_inplace */
242 1.1 christos 0x0, /* src_mask */
243 1.1 christos 0xffffffffffffffff, /* dst_mask */
244 1.1 christos true), /* pc_offset */
245 1.1 christos HOWTO (R_KVX_S16, /* type */
246 1.1 christos 0, /* rightshift */
247 1.1 christos 2, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
248 1.1 christos 16, /* bitsize */
249 1.1 christos false, /* pc_relative */
250 1.1 christos 0, /* bitpos (bit field offset) */
251 1.1 christos complain_overflow_signed, /* complain_on_overflow */
252 1.1 christos bfd_elf_generic_reloc, /* special_function */
253 1.1 christos "R_KVX_S16", /* name */
254 1.1 christos false, /* partial_inplace */
255 1.1 christos 0x0, /* src_mask */
256 1.1 christos 0xffff, /* dst_mask */
257 1.1 christos false), /* pc_offset */
258 1.1 christos HOWTO (R_KVX_S32_LO5, /* type */
259 1.1 christos 0, /* rightshift */
260 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
261 1.1 christos 5, /* bitsize */
262 1.1 christos false, /* pc_relative */
263 1.1 christos 6, /* bitpos (bit field offset) */
264 1.1 christos complain_overflow_dont, /* complain_on_overflow */
265 1.1 christos bfd_elf_generic_reloc, /* special_function */
266 1.1 christos "R_KVX_S32_LO5", /* name */
267 1.1 christos false, /* partial_inplace */
268 1.1 christos 0x0, /* src_mask */
269 1.1 christos 0x7c0, /* dst_mask */
270 1.1 christos false), /* pc_offset */
271 1.1 christos HOWTO (R_KVX_S32_UP27, /* type */
272 1.1 christos 5, /* rightshift */
273 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
274 1.1 christos 27, /* bitsize */
275 1.1 christos false, /* pc_relative */
276 1.1 christos 0, /* bitpos (bit field offset) */
277 1.1 christos complain_overflow_dont, /* complain_on_overflow */
278 1.1 christos bfd_elf_generic_reloc, /* special_function */
279 1.1 christos "R_KVX_S32_UP27", /* name */
280 1.1 christos false, /* partial_inplace */
281 1.1 christos 0x0, /* src_mask */
282 1.1 christos 0x7ffffff, /* dst_mask */
283 1.1 christos false), /* pc_offset */
284 1.1 christos HOWTO (R_KVX_S37_LO10, /* type */
285 1.1 christos 0, /* rightshift */
286 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
287 1.1 christos 10, /* bitsize */
288 1.1 christos false, /* pc_relative */
289 1.1 christos 6, /* bitpos (bit field offset) */
290 1.1 christos complain_overflow_dont, /* complain_on_overflow */
291 1.1 christos bfd_elf_generic_reloc, /* special_function */
292 1.1 christos "R_KVX_S37_LO10", /* name */
293 1.1 christos false, /* partial_inplace */
294 1.1 christos 0x0, /* src_mask */
295 1.1 christos 0xffc0, /* dst_mask */
296 1.1 christos false), /* pc_offset */
297 1.1 christos HOWTO (R_KVX_S37_UP27, /* type */
298 1.1 christos 10, /* rightshift */
299 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
300 1.1 christos 27, /* bitsize */
301 1.1 christos false, /* pc_relative */
302 1.1 christos 0, /* bitpos (bit field offset) */
303 1.1 christos complain_overflow_dont, /* complain_on_overflow */
304 1.1 christos bfd_elf_generic_reloc, /* special_function */
305 1.1 christos "R_KVX_S37_UP27", /* name */
306 1.1 christos false, /* partial_inplace */
307 1.1 christos 0x0, /* src_mask */
308 1.1 christos 0x7ffffff, /* dst_mask */
309 1.1 christos false), /* pc_offset */
310 1.1 christos HOWTO (R_KVX_S37_GOTOFF_LO10, /* type */
311 1.1 christos 0, /* rightshift */
312 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
313 1.1 christos 10, /* bitsize */
314 1.1 christos false, /* pc_relative */
315 1.1 christos 6, /* bitpos (bit field offset) */
316 1.1 christos complain_overflow_dont, /* complain_on_overflow */
317 1.1 christos bfd_elf_generic_reloc, /* special_function */
318 1.1 christos "R_KVX_S37_GOTOFF_LO10", /* name */
319 1.1 christos false, /* partial_inplace */
320 1.1 christos 0x0, /* src_mask */
321 1.1 christos 0xffc0, /* dst_mask */
322 1.1 christos false), /* pc_offset */
323 1.1 christos HOWTO (R_KVX_S37_GOTOFF_UP27, /* type */
324 1.1 christos 10, /* rightshift */
325 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
326 1.1 christos 27, /* bitsize */
327 1.1 christos false, /* pc_relative */
328 1.1 christos 0, /* bitpos (bit field offset) */
329 1.1 christos complain_overflow_dont, /* complain_on_overflow */
330 1.1 christos bfd_elf_generic_reloc, /* special_function */
331 1.1 christos "R_KVX_S37_GOTOFF_UP27", /* name */
332 1.1 christos false, /* partial_inplace */
333 1.1 christos 0x0, /* src_mask */
334 1.1 christos 0x7ffffff, /* dst_mask */
335 1.1 christos false), /* pc_offset */
336 1.1 christos HOWTO (R_KVX_S43_GOTOFF_LO10, /* type */
337 1.1 christos 0, /* rightshift */
338 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
339 1.1 christos 10, /* bitsize */
340 1.1 christos false, /* pc_relative */
341 1.1 christos 6, /* bitpos (bit field offset) */
342 1.1 christos complain_overflow_dont, /* complain_on_overflow */
343 1.1 christos bfd_elf_generic_reloc, /* special_function */
344 1.1 christos "R_KVX_S43_GOTOFF_LO10", /* name */
345 1.1 christos false, /* partial_inplace */
346 1.1 christos 0x0, /* src_mask */
347 1.1 christos 0xffc0, /* dst_mask */
348 1.1 christos false), /* pc_offset */
349 1.1 christos HOWTO (R_KVX_S43_GOTOFF_UP27, /* type */
350 1.1 christos 10, /* rightshift */
351 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
352 1.1 christos 27, /* bitsize */
353 1.1 christos false, /* pc_relative */
354 1.1 christos 0, /* bitpos (bit field offset) */
355 1.1 christos complain_overflow_dont, /* complain_on_overflow */
356 1.1 christos bfd_elf_generic_reloc, /* special_function */
357 1.1 christos "R_KVX_S43_GOTOFF_UP27", /* name */
358 1.1 christos false, /* partial_inplace */
359 1.1 christos 0x0, /* src_mask */
360 1.1 christos 0x7ffffff, /* dst_mask */
361 1.1 christos false), /* pc_offset */
362 1.1 christos HOWTO (R_KVX_S43_GOTOFF_EX6, /* type */
363 1.1 christos 37, /* rightshift */
364 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
365 1.1 christos 6, /* bitsize */
366 1.1 christos false, /* pc_relative */
367 1.1 christos 0, /* bitpos (bit field offset) */
368 1.1 christos complain_overflow_dont, /* complain_on_overflow */
369 1.1 christos bfd_elf_generic_reloc, /* special_function */
370 1.1 christos "R_KVX_S43_GOTOFF_EX6", /* name */
371 1.1 christos false, /* partial_inplace */
372 1.1 christos 0x0, /* src_mask */
373 1.1 christos 0x3f, /* dst_mask */
374 1.1 christos false), /* pc_offset */
375 1.1 christos HOWTO (R_KVX_32_GOTOFF, /* type */
376 1.1 christos 0, /* rightshift */
377 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
378 1.1 christos 32, /* bitsize */
379 1.1 christos false, /* pc_relative */
380 1.1 christos 0, /* bitpos (bit field offset) */
381 1.1 christos complain_overflow_dont, /* complain_on_overflow */
382 1.1 christos bfd_elf_generic_reloc, /* special_function */
383 1.1 christos "R_KVX_32_GOTOFF", /* name */
384 1.1 christos false, /* partial_inplace */
385 1.1 christos 0x0, /* src_mask */
386 1.1 christos 0xffffffff, /* dst_mask */
387 1.1 christos false), /* pc_offset */
388 1.1 christos HOWTO (R_KVX_64_GOTOFF, /* type */
389 1.1 christos 0, /* rightshift */
390 1.1 christos 8, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
391 1.1 christos 64, /* bitsize */
392 1.1 christos false, /* pc_relative */
393 1.1 christos 0, /* bitpos (bit field offset) */
394 1.1 christos complain_overflow_dont, /* complain_on_overflow */
395 1.1 christos bfd_elf_generic_reloc, /* special_function */
396 1.1 christos "R_KVX_64_GOTOFF", /* name */
397 1.1 christos false, /* partial_inplace */
398 1.1 christos 0x0, /* src_mask */
399 1.1 christos 0xffffffffffffffff, /* dst_mask */
400 1.1 christos false), /* pc_offset */
401 1.1 christos HOWTO (R_KVX_32_GOT, /* type */
402 1.1 christos 0, /* rightshift */
403 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
404 1.1 christos 32, /* bitsize */
405 1.1 christos false, /* pc_relative */
406 1.1 christos 0, /* bitpos (bit field offset) */
407 1.1 christos complain_overflow_unsigned, /* complain_on_overflow */
408 1.1 christos bfd_elf_generic_reloc, /* special_function */
409 1.1 christos "R_KVX_32_GOT", /* name */
410 1.1 christos false, /* partial_inplace */
411 1.1 christos 0x0, /* src_mask */
412 1.1 christos 0xffffffff, /* dst_mask */
413 1.1 christos false), /* pc_offset */
414 1.1 christos HOWTO (R_KVX_S37_GOT_LO10, /* type */
415 1.1 christos 0, /* rightshift */
416 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
417 1.1 christos 10, /* bitsize */
418 1.1 christos false, /* pc_relative */
419 1.1 christos 6, /* bitpos (bit field offset) */
420 1.1 christos complain_overflow_dont, /* complain_on_overflow */
421 1.1 christos bfd_elf_generic_reloc, /* special_function */
422 1.1 christos "R_KVX_S37_GOT_LO10", /* name */
423 1.1 christos false, /* partial_inplace */
424 1.1 christos 0x0, /* src_mask */
425 1.1 christos 0xffc0, /* dst_mask */
426 1.1 christos false), /* pc_offset */
427 1.1 christos HOWTO (R_KVX_S37_GOT_UP27, /* type */
428 1.1 christos 10, /* rightshift */
429 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
430 1.1 christos 27, /* bitsize */
431 1.1 christos false, /* pc_relative */
432 1.1 christos 0, /* bitpos (bit field offset) */
433 1.1 christos complain_overflow_dont, /* complain_on_overflow */
434 1.1 christos bfd_elf_generic_reloc, /* special_function */
435 1.1 christos "R_KVX_S37_GOT_UP27", /* name */
436 1.1 christos false, /* partial_inplace */
437 1.1 christos 0x0, /* src_mask */
438 1.1 christos 0x7ffffff, /* dst_mask */
439 1.1 christos false), /* pc_offset */
440 1.1 christos HOWTO (R_KVX_S43_GOT_LO10, /* type */
441 1.1 christos 0, /* rightshift */
442 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
443 1.1 christos 10, /* bitsize */
444 1.1 christos false, /* pc_relative */
445 1.1 christos 6, /* bitpos (bit field offset) */
446 1.1 christos complain_overflow_dont, /* complain_on_overflow */
447 1.1 christos bfd_elf_generic_reloc, /* special_function */
448 1.1 christos "R_KVX_S43_GOT_LO10", /* name */
449 1.1 christos false, /* partial_inplace */
450 1.1 christos 0x0, /* src_mask */
451 1.1 christos 0xffc0, /* dst_mask */
452 1.1 christos false), /* pc_offset */
453 1.1 christos HOWTO (R_KVX_S43_GOT_UP27, /* type */
454 1.1 christos 10, /* rightshift */
455 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
456 1.1 christos 27, /* bitsize */
457 1.1 christos false, /* pc_relative */
458 1.1 christos 0, /* bitpos (bit field offset) */
459 1.1 christos complain_overflow_dont, /* complain_on_overflow */
460 1.1 christos bfd_elf_generic_reloc, /* special_function */
461 1.1 christos "R_KVX_S43_GOT_UP27", /* name */
462 1.1 christos false, /* partial_inplace */
463 1.1 christos 0x0, /* src_mask */
464 1.1 christos 0x7ffffff, /* dst_mask */
465 1.1 christos false), /* pc_offset */
466 1.1 christos HOWTO (R_KVX_S43_GOT_EX6, /* type */
467 1.1 christos 37, /* rightshift */
468 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
469 1.1 christos 6, /* bitsize */
470 1.1 christos false, /* pc_relative */
471 1.1 christos 0, /* bitpos (bit field offset) */
472 1.1 christos complain_overflow_dont, /* complain_on_overflow */
473 1.1 christos bfd_elf_generic_reloc, /* special_function */
474 1.1 christos "R_KVX_S43_GOT_EX6", /* name */
475 1.1 christos false, /* partial_inplace */
476 1.1 christos 0x0, /* src_mask */
477 1.1 christos 0x3f, /* dst_mask */
478 1.1 christos false), /* pc_offset */
479 1.1 christos HOWTO (R_KVX_64_GOT, /* type */
480 1.1 christos 0, /* rightshift */
481 1.1 christos 8, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
482 1.1 christos 64, /* bitsize */
483 1.1 christos false, /* pc_relative */
484 1.1 christos 0, /* bitpos (bit field offset) */
485 1.1 christos complain_overflow_dont, /* complain_on_overflow */
486 1.1 christos bfd_elf_generic_reloc, /* special_function */
487 1.1 christos "R_KVX_64_GOT", /* name */
488 1.1 christos false, /* partial_inplace */
489 1.1 christos 0x0, /* src_mask */
490 1.1 christos 0xffffffffffffffff, /* dst_mask */
491 1.1 christos false), /* pc_offset */
492 1.1 christos HOWTO (R_KVX_GLOB_DAT, /* type */
493 1.1 christos 0, /* rightshift */
494 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
495 1.1 christos 32, /* bitsize */
496 1.1 christos false, /* pc_relative */
497 1.1 christos 0, /* bitpos (bit field offset) */
498 1.1 christos complain_overflow_dont, /* complain_on_overflow */
499 1.1 christos bfd_elf_generic_reloc, /* special_function */
500 1.1 christos "R_KVX_GLOB_DAT", /* name */
501 1.1 christos false, /* partial_inplace */
502 1.1 christos 0x0, /* src_mask */
503 1.1 christos 0xffffffff, /* dst_mask */
504 1.1 christos false), /* pc_offset */
505 1.1 christos HOWTO (R_KVX_COPY, /* type */
506 1.1 christos 0, /* rightshift */
507 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
508 1.1 christos 32, /* bitsize */
509 1.1 christos false, /* pc_relative */
510 1.1 christos 0, /* bitpos (bit field offset) */
511 1.1 christos complain_overflow_dont, /* complain_on_overflow */
512 1.1 christos bfd_elf_generic_reloc, /* special_function */
513 1.1 christos "R_KVX_COPY", /* name */
514 1.1 christos false, /* partial_inplace */
515 1.1 christos 0x0, /* src_mask */
516 1.1 christos 0xffffffff, /* dst_mask */
517 1.1 christos false), /* pc_offset */
518 1.1 christos HOWTO (R_KVX_JMP_SLOT, /* type */
519 1.1 christos 0, /* rightshift */
520 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
521 1.1 christos 32, /* bitsize */
522 1.1 christos false, /* pc_relative */
523 1.1 christos 0, /* bitpos (bit field offset) */
524 1.1 christos complain_overflow_dont, /* complain_on_overflow */
525 1.1 christos bfd_elf_generic_reloc, /* special_function */
526 1.1 christos "R_KVX_JMP_SLOT", /* name */
527 1.1 christos false, /* partial_inplace */
528 1.1 christos 0x0, /* src_mask */
529 1.1 christos 0xffffffff, /* dst_mask */
530 1.1 christos false), /* pc_offset */
531 1.1 christos HOWTO (R_KVX_RELATIVE, /* type */
532 1.1 christos 0, /* rightshift */
533 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
534 1.1 christos 32, /* bitsize */
535 1.1 christos false, /* pc_relative */
536 1.1 christos 0, /* bitpos (bit field offset) */
537 1.1 christos complain_overflow_dont, /* complain_on_overflow */
538 1.1 christos bfd_elf_generic_reloc, /* special_function */
539 1.1 christos "R_KVX_RELATIVE", /* name */
540 1.1 christos false, /* partial_inplace */
541 1.1 christos 0x0, /* src_mask */
542 1.1 christos 0xffffffff, /* dst_mask */
543 1.1 christos false), /* pc_offset */
544 1.1 christos HOWTO (R_KVX_S43_LO10, /* type */
545 1.1 christos 0, /* rightshift */
546 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
547 1.1 christos 10, /* bitsize */
548 1.1 christos false, /* pc_relative */
549 1.1 christos 6, /* bitpos (bit field offset) */
550 1.1 christos complain_overflow_dont, /* complain_on_overflow */
551 1.1 christos bfd_elf_generic_reloc, /* special_function */
552 1.1 christos "R_KVX_S43_LO10", /* name */
553 1.1 christos false, /* partial_inplace */
554 1.1 christos 0x0, /* src_mask */
555 1.1 christos 0xffc0, /* dst_mask */
556 1.1 christos false), /* pc_offset */
557 1.1 christos HOWTO (R_KVX_S43_UP27, /* type */
558 1.1 christos 10, /* rightshift */
559 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
560 1.1 christos 27, /* bitsize */
561 1.1 christos false, /* pc_relative */
562 1.1 christos 0, /* bitpos (bit field offset) */
563 1.1 christos complain_overflow_dont, /* complain_on_overflow */
564 1.1 christos bfd_elf_generic_reloc, /* special_function */
565 1.1 christos "R_KVX_S43_UP27", /* name */
566 1.1 christos false, /* partial_inplace */
567 1.1 christos 0x0, /* src_mask */
568 1.1 christos 0x7ffffff, /* dst_mask */
569 1.1 christos false), /* pc_offset */
570 1.1 christos HOWTO (R_KVX_S43_EX6, /* type */
571 1.1 christos 37, /* rightshift */
572 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
573 1.1 christos 6, /* bitsize */
574 1.1 christos false, /* pc_relative */
575 1.1 christos 0, /* bitpos (bit field offset) */
576 1.1 christos complain_overflow_dont, /* complain_on_overflow */
577 1.1 christos bfd_elf_generic_reloc, /* special_function */
578 1.1 christos "R_KVX_S43_EX6", /* name */
579 1.1 christos false, /* partial_inplace */
580 1.1 christos 0x0, /* src_mask */
581 1.1 christos 0x3f, /* dst_mask */
582 1.1 christos false), /* pc_offset */
583 1.1 christos HOWTO (R_KVX_S64_LO10, /* type */
584 1.1 christos 0, /* rightshift */
585 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
586 1.1 christos 10, /* bitsize */
587 1.1 christos false, /* pc_relative */
588 1.1 christos 6, /* bitpos (bit field offset) */
589 1.1 christos complain_overflow_dont, /* complain_on_overflow */
590 1.1 christos bfd_elf_generic_reloc, /* special_function */
591 1.1 christos "R_KVX_S64_LO10", /* name */
592 1.1 christos false, /* partial_inplace */
593 1.1 christos 0x0, /* src_mask */
594 1.1 christos 0xffc0, /* dst_mask */
595 1.1 christos false), /* pc_offset */
596 1.1 christos HOWTO (R_KVX_S64_UP27, /* type */
597 1.1 christos 10, /* rightshift */
598 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
599 1.1 christos 27, /* bitsize */
600 1.1 christos false, /* pc_relative */
601 1.1 christos 0, /* bitpos (bit field offset) */
602 1.1 christos complain_overflow_dont, /* complain_on_overflow */
603 1.1 christos bfd_elf_generic_reloc, /* special_function */
604 1.1 christos "R_KVX_S64_UP27", /* name */
605 1.1 christos false, /* partial_inplace */
606 1.1 christos 0x0, /* src_mask */
607 1.1 christos 0x7ffffff, /* dst_mask */
608 1.1 christos false), /* pc_offset */
609 1.1 christos HOWTO (R_KVX_S64_EX27, /* type */
610 1.1 christos 37, /* rightshift */
611 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
612 1.1 christos 27, /* bitsize */
613 1.1 christos false, /* pc_relative */
614 1.1 christos 0, /* bitpos (bit field offset) */
615 1.1 christos complain_overflow_dont, /* complain_on_overflow */
616 1.1 christos bfd_elf_generic_reloc, /* special_function */
617 1.1 christos "R_KVX_S64_EX27", /* name */
618 1.1 christos false, /* partial_inplace */
619 1.1 christos 0x0, /* src_mask */
620 1.1 christos 0x7ffffff, /* dst_mask */
621 1.1 christos false), /* pc_offset */
622 1.1 christos HOWTO (R_KVX_S37_GOTADDR_LO10, /* type */
623 1.1 christos 0, /* rightshift */
624 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
625 1.1 christos 10, /* bitsize */
626 1.1 christos true, /* pc_relative */
627 1.1 christos 6, /* bitpos (bit field offset) */
628 1.1 christos complain_overflow_dont, /* complain_on_overflow */
629 1.1 christos bfd_elf_generic_reloc, /* special_function */
630 1.1 christos "R_KVX_S37_GOTADDR_LO10", /* name */
631 1.1 christos false, /* partial_inplace */
632 1.1 christos 0x0, /* src_mask */
633 1.1 christos 0xffc0, /* dst_mask */
634 1.1 christos true), /* pc_offset */
635 1.1 christos HOWTO (R_KVX_S37_GOTADDR_UP27, /* type */
636 1.1 christos 10, /* rightshift */
637 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
638 1.1 christos 27, /* bitsize */
639 1.1 christos true, /* pc_relative */
640 1.1 christos 0, /* bitpos (bit field offset) */
641 1.1 christos complain_overflow_dont, /* complain_on_overflow */
642 1.1 christos bfd_elf_generic_reloc, /* special_function */
643 1.1 christos "R_KVX_S37_GOTADDR_UP27", /* name */
644 1.1 christos false, /* partial_inplace */
645 1.1 christos 0x0, /* src_mask */
646 1.1 christos 0x7ffffff, /* dst_mask */
647 1.1 christos true), /* pc_offset */
648 1.1 christos HOWTO (R_KVX_S43_GOTADDR_LO10, /* type */
649 1.1 christos 0, /* rightshift */
650 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
651 1.1 christos 10, /* bitsize */
652 1.1 christos true, /* pc_relative */
653 1.1 christos 6, /* bitpos (bit field offset) */
654 1.1 christos complain_overflow_dont, /* complain_on_overflow */
655 1.1 christos bfd_elf_generic_reloc, /* special_function */
656 1.1 christos "R_KVX_S43_GOTADDR_LO10", /* name */
657 1.1 christos false, /* partial_inplace */
658 1.1 christos 0x0, /* src_mask */
659 1.1 christos 0xffc0, /* dst_mask */
660 1.1 christos true), /* pc_offset */
661 1.1 christos HOWTO (R_KVX_S43_GOTADDR_UP27, /* type */
662 1.1 christos 10, /* rightshift */
663 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
664 1.1 christos 27, /* bitsize */
665 1.1 christos true, /* pc_relative */
666 1.1 christos 0, /* bitpos (bit field offset) */
667 1.1 christos complain_overflow_dont, /* complain_on_overflow */
668 1.1 christos bfd_elf_generic_reloc, /* special_function */
669 1.1 christos "R_KVX_S43_GOTADDR_UP27", /* name */
670 1.1 christos false, /* partial_inplace */
671 1.1 christos 0x0, /* src_mask */
672 1.1 christos 0x7ffffff, /* dst_mask */
673 1.1 christos true), /* pc_offset */
674 1.1 christos HOWTO (R_KVX_S43_GOTADDR_EX6, /* type */
675 1.1 christos 37, /* rightshift */
676 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
677 1.1 christos 6, /* bitsize */
678 1.1 christos true, /* pc_relative */
679 1.1 christos 0, /* bitpos (bit field offset) */
680 1.1 christos complain_overflow_dont, /* complain_on_overflow */
681 1.1 christos bfd_elf_generic_reloc, /* special_function */
682 1.1 christos "R_KVX_S43_GOTADDR_EX6", /* name */
683 1.1 christos false, /* partial_inplace */
684 1.1 christos 0x0, /* src_mask */
685 1.1 christos 0x3f, /* dst_mask */
686 1.1 christos true), /* pc_offset */
687 1.1 christos HOWTO (R_KVX_S64_GOTADDR_LO10, /* type */
688 1.1 christos 0, /* rightshift */
689 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
690 1.1 christos 10, /* bitsize */
691 1.1 christos true, /* pc_relative */
692 1.1 christos 6, /* bitpos (bit field offset) */
693 1.1 christos complain_overflow_dont, /* complain_on_overflow */
694 1.1 christos bfd_elf_generic_reloc, /* special_function */
695 1.1 christos "R_KVX_S64_GOTADDR_LO10", /* name */
696 1.1 christos false, /* partial_inplace */
697 1.1 christos 0x0, /* src_mask */
698 1.1 christos 0xffc0, /* dst_mask */
699 1.1 christos true), /* pc_offset */
700 1.1 christos HOWTO (R_KVX_S64_GOTADDR_UP27, /* type */
701 1.1 christos 10, /* rightshift */
702 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
703 1.1 christos 27, /* bitsize */
704 1.1 christos true, /* pc_relative */
705 1.1 christos 0, /* bitpos (bit field offset) */
706 1.1 christos complain_overflow_dont, /* complain_on_overflow */
707 1.1 christos bfd_elf_generic_reloc, /* special_function */
708 1.1 christos "R_KVX_S64_GOTADDR_UP27", /* name */
709 1.1 christos false, /* partial_inplace */
710 1.1 christos 0x0, /* src_mask */
711 1.1 christos 0x7ffffff, /* dst_mask */
712 1.1 christos true), /* pc_offset */
713 1.1 christos HOWTO (R_KVX_S64_GOTADDR_EX27, /* type */
714 1.1 christos 37, /* rightshift */
715 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
716 1.1 christos 27, /* bitsize */
717 1.1 christos true, /* pc_relative */
718 1.1 christos 0, /* bitpos (bit field offset) */
719 1.1 christos complain_overflow_dont, /* complain_on_overflow */
720 1.1 christos bfd_elf_generic_reloc, /* special_function */
721 1.1 christos "R_KVX_S64_GOTADDR_EX27", /* name */
722 1.1 christos false, /* partial_inplace */
723 1.1 christos 0x0, /* src_mask */
724 1.1 christos 0x7ffffff, /* dst_mask */
725 1.1 christos true), /* pc_offset */
726 1.1 christos HOWTO (R_KVX_64_DTPMOD, /* type */
727 1.1 christos 0, /* rightshift */
728 1.1 christos 8, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
729 1.1 christos 64, /* bitsize */
730 1.1 christos false, /* pc_relative */
731 1.1 christos 0, /* bitpos (bit field offset) */
732 1.1 christos complain_overflow_dont, /* complain_on_overflow */
733 1.1 christos bfd_elf_generic_reloc, /* special_function */
734 1.1 christos "R_KVX_64_DTPMOD", /* name */
735 1.1 christos false, /* partial_inplace */
736 1.1 christos 0x0, /* src_mask */
737 1.1 christos 0xffffffffffffffff, /* dst_mask */
738 1.1 christos false), /* pc_offset */
739 1.1 christos HOWTO (R_KVX_64_DTPOFF, /* type */
740 1.1 christos 0, /* rightshift */
741 1.1 christos 8, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
742 1.1 christos 64, /* bitsize */
743 1.1 christos false, /* pc_relative */
744 1.1 christos 0, /* bitpos (bit field offset) */
745 1.1 christos complain_overflow_dont, /* complain_on_overflow */
746 1.1 christos bfd_elf_generic_reloc, /* special_function */
747 1.1 christos "R_KVX_64_DTPOFF", /* name */
748 1.1 christos false, /* partial_inplace */
749 1.1 christos 0x0, /* src_mask */
750 1.1 christos 0xffffffffffffffff, /* dst_mask */
751 1.1 christos false), /* pc_offset */
752 1.1 christos HOWTO (R_KVX_S37_TLS_DTPOFF_LO10, /* type */
753 1.1 christos 0, /* rightshift */
754 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
755 1.1 christos 10, /* bitsize */
756 1.1 christos false, /* pc_relative */
757 1.1 christos 6, /* bitpos (bit field offset) */
758 1.1 christos complain_overflow_dont, /* complain_on_overflow */
759 1.1 christos bfd_elf_generic_reloc, /* special_function */
760 1.1 christos "R_KVX_S37_TLS_DTPOFF_LO10", /* name */
761 1.1 christos false, /* partial_inplace */
762 1.1 christos 0x0, /* src_mask */
763 1.1 christos 0xffc0, /* dst_mask */
764 1.1 christos false), /* pc_offset */
765 1.1 christos HOWTO (R_KVX_S37_TLS_DTPOFF_UP27, /* type */
766 1.1 christos 10, /* rightshift */
767 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
768 1.1 christos 27, /* bitsize */
769 1.1 christos false, /* pc_relative */
770 1.1 christos 0, /* bitpos (bit field offset) */
771 1.1 christos complain_overflow_dont, /* complain_on_overflow */
772 1.1 christos bfd_elf_generic_reloc, /* special_function */
773 1.1 christos "R_KVX_S37_TLS_DTPOFF_UP27", /* name */
774 1.1 christos false, /* partial_inplace */
775 1.1 christos 0x0, /* src_mask */
776 1.1 christos 0x7ffffff, /* dst_mask */
777 1.1 christos false), /* pc_offset */
778 1.1 christos HOWTO (R_KVX_S43_TLS_DTPOFF_LO10, /* type */
779 1.1 christos 0, /* rightshift */
780 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
781 1.1 christos 10, /* bitsize */
782 1.1 christos false, /* pc_relative */
783 1.1 christos 6, /* bitpos (bit field offset) */
784 1.1 christos complain_overflow_dont, /* complain_on_overflow */
785 1.1 christos bfd_elf_generic_reloc, /* special_function */
786 1.1 christos "R_KVX_S43_TLS_DTPOFF_LO10", /* name */
787 1.1 christos false, /* partial_inplace */
788 1.1 christos 0x0, /* src_mask */
789 1.1 christos 0xffc0, /* dst_mask */
790 1.1 christos false), /* pc_offset */
791 1.1 christos HOWTO (R_KVX_S43_TLS_DTPOFF_UP27, /* type */
792 1.1 christos 10, /* rightshift */
793 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
794 1.1 christos 27, /* bitsize */
795 1.1 christos false, /* pc_relative */
796 1.1 christos 0, /* bitpos (bit field offset) */
797 1.1 christos complain_overflow_dont, /* complain_on_overflow */
798 1.1 christos bfd_elf_generic_reloc, /* special_function */
799 1.1 christos "R_KVX_S43_TLS_DTPOFF_UP27", /* name */
800 1.1 christos false, /* partial_inplace */
801 1.1 christos 0x0, /* src_mask */
802 1.1 christos 0x7ffffff, /* dst_mask */
803 1.1 christos false), /* pc_offset */
804 1.1 christos HOWTO (R_KVX_S43_TLS_DTPOFF_EX6, /* type */
805 1.1 christos 37, /* rightshift */
806 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
807 1.1 christos 6, /* bitsize */
808 1.1 christos false, /* pc_relative */
809 1.1 christos 0, /* bitpos (bit field offset) */
810 1.1 christos complain_overflow_dont, /* complain_on_overflow */
811 1.1 christos bfd_elf_generic_reloc, /* special_function */
812 1.1 christos "R_KVX_S43_TLS_DTPOFF_EX6", /* name */
813 1.1 christos false, /* partial_inplace */
814 1.1 christos 0x0, /* src_mask */
815 1.1 christos 0x3f, /* dst_mask */
816 1.1 christos false), /* pc_offset */
817 1.1 christos HOWTO (R_KVX_S37_TLS_GD_LO10, /* type */
818 1.1 christos 0, /* rightshift */
819 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
820 1.1 christos 10, /* bitsize */
821 1.1 christos false, /* pc_relative */
822 1.1 christos 6, /* bitpos (bit field offset) */
823 1.1 christos complain_overflow_dont, /* complain_on_overflow */
824 1.1 christos bfd_elf_generic_reloc, /* special_function */
825 1.1 christos "R_KVX_S37_TLS_GD_LO10", /* name */
826 1.1 christos false, /* partial_inplace */
827 1.1 christos 0x0, /* src_mask */
828 1.1 christos 0xffc0, /* dst_mask */
829 1.1 christos false), /* pc_offset */
830 1.1 christos HOWTO (R_KVX_S37_TLS_GD_UP27, /* type */
831 1.1 christos 10, /* rightshift */
832 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
833 1.1 christos 27, /* bitsize */
834 1.1 christos false, /* pc_relative */
835 1.1 christos 0, /* bitpos (bit field offset) */
836 1.1 christos complain_overflow_dont, /* complain_on_overflow */
837 1.1 christos bfd_elf_generic_reloc, /* special_function */
838 1.1 christos "R_KVX_S37_TLS_GD_UP27", /* name */
839 1.1 christos false, /* partial_inplace */
840 1.1 christos 0x0, /* src_mask */
841 1.1 christos 0x7ffffff, /* dst_mask */
842 1.1 christos false), /* pc_offset */
843 1.1 christos HOWTO (R_KVX_S43_TLS_GD_LO10, /* type */
844 1.1 christos 0, /* rightshift */
845 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
846 1.1 christos 10, /* bitsize */
847 1.1 christos false, /* pc_relative */
848 1.1 christos 6, /* bitpos (bit field offset) */
849 1.1 christos complain_overflow_dont, /* complain_on_overflow */
850 1.1 christos bfd_elf_generic_reloc, /* special_function */
851 1.1 christos "R_KVX_S43_TLS_GD_LO10", /* name */
852 1.1 christos false, /* partial_inplace */
853 1.1 christos 0x0, /* src_mask */
854 1.1 christos 0xffc0, /* dst_mask */
855 1.1 christos false), /* pc_offset */
856 1.1 christos HOWTO (R_KVX_S43_TLS_GD_UP27, /* type */
857 1.1 christos 10, /* rightshift */
858 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
859 1.1 christos 27, /* bitsize */
860 1.1 christos false, /* pc_relative */
861 1.1 christos 0, /* bitpos (bit field offset) */
862 1.1 christos complain_overflow_dont, /* complain_on_overflow */
863 1.1 christos bfd_elf_generic_reloc, /* special_function */
864 1.1 christos "R_KVX_S43_TLS_GD_UP27", /* name */
865 1.1 christos false, /* partial_inplace */
866 1.1 christos 0x0, /* src_mask */
867 1.1 christos 0x7ffffff, /* dst_mask */
868 1.1 christos false), /* pc_offset */
869 1.1 christos HOWTO (R_KVX_S43_TLS_GD_EX6, /* type */
870 1.1 christos 37, /* rightshift */
871 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
872 1.1 christos 6, /* bitsize */
873 1.1 christos false, /* pc_relative */
874 1.1 christos 0, /* bitpos (bit field offset) */
875 1.1 christos complain_overflow_dont, /* complain_on_overflow */
876 1.1 christos bfd_elf_generic_reloc, /* special_function */
877 1.1 christos "R_KVX_S43_TLS_GD_EX6", /* name */
878 1.1 christos false, /* partial_inplace */
879 1.1 christos 0x0, /* src_mask */
880 1.1 christos 0x3f, /* dst_mask */
881 1.1 christos false), /* pc_offset */
882 1.1 christos HOWTO (R_KVX_S37_TLS_LD_LO10, /* type */
883 1.1 christos 0, /* rightshift */
884 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
885 1.1 christos 10, /* bitsize */
886 1.1 christos false, /* pc_relative */
887 1.1 christos 6, /* bitpos (bit field offset) */
888 1.1 christos complain_overflow_dont, /* complain_on_overflow */
889 1.1 christos bfd_elf_generic_reloc, /* special_function */
890 1.1 christos "R_KVX_S37_TLS_LD_LO10", /* name */
891 1.1 christos false, /* partial_inplace */
892 1.1 christos 0x0, /* src_mask */
893 1.1 christos 0xffc0, /* dst_mask */
894 1.1 christos false), /* pc_offset */
895 1.1 christos HOWTO (R_KVX_S37_TLS_LD_UP27, /* type */
896 1.1 christos 10, /* rightshift */
897 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
898 1.1 christos 27, /* bitsize */
899 1.1 christos false, /* pc_relative */
900 1.1 christos 0, /* bitpos (bit field offset) */
901 1.1 christos complain_overflow_dont, /* complain_on_overflow */
902 1.1 christos bfd_elf_generic_reloc, /* special_function */
903 1.1 christos "R_KVX_S37_TLS_LD_UP27", /* name */
904 1.1 christos false, /* partial_inplace */
905 1.1 christos 0x0, /* src_mask */
906 1.1 christos 0x7ffffff, /* dst_mask */
907 1.1 christos false), /* pc_offset */
908 1.1 christos HOWTO (R_KVX_S43_TLS_LD_LO10, /* type */
909 1.1 christos 0, /* rightshift */
910 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
911 1.1 christos 10, /* bitsize */
912 1.1 christos false, /* pc_relative */
913 1.1 christos 6, /* bitpos (bit field offset) */
914 1.1 christos complain_overflow_dont, /* complain_on_overflow */
915 1.1 christos bfd_elf_generic_reloc, /* special_function */
916 1.1 christos "R_KVX_S43_TLS_LD_LO10", /* name */
917 1.1 christos false, /* partial_inplace */
918 1.1 christos 0x0, /* src_mask */
919 1.1 christos 0xffc0, /* dst_mask */
920 1.1 christos false), /* pc_offset */
921 1.1 christos HOWTO (R_KVX_S43_TLS_LD_UP27, /* type */
922 1.1 christos 10, /* rightshift */
923 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
924 1.1 christos 27, /* bitsize */
925 1.1 christos false, /* pc_relative */
926 1.1 christos 0, /* bitpos (bit field offset) */
927 1.1 christos complain_overflow_dont, /* complain_on_overflow */
928 1.1 christos bfd_elf_generic_reloc, /* special_function */
929 1.1 christos "R_KVX_S43_TLS_LD_UP27", /* name */
930 1.1 christos false, /* partial_inplace */
931 1.1 christos 0x0, /* src_mask */
932 1.1 christos 0x7ffffff, /* dst_mask */
933 1.1 christos false), /* pc_offset */
934 1.1 christos HOWTO (R_KVX_S43_TLS_LD_EX6, /* type */
935 1.1 christos 37, /* rightshift */
936 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
937 1.1 christos 6, /* bitsize */
938 1.1 christos false, /* pc_relative */
939 1.1 christos 0, /* bitpos (bit field offset) */
940 1.1 christos complain_overflow_dont, /* complain_on_overflow */
941 1.1 christos bfd_elf_generic_reloc, /* special_function */
942 1.1 christos "R_KVX_S43_TLS_LD_EX6", /* name */
943 1.1 christos false, /* partial_inplace */
944 1.1 christos 0x0, /* src_mask */
945 1.1 christos 0x3f, /* dst_mask */
946 1.1 christos false), /* pc_offset */
947 1.1 christos HOWTO (R_KVX_64_TPOFF, /* type */
948 1.1 christos 0, /* rightshift */
949 1.1 christos 8, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
950 1.1 christos 64, /* bitsize */
951 1.1 christos false, /* pc_relative */
952 1.1 christos 0, /* bitpos (bit field offset) */
953 1.1 christos complain_overflow_dont, /* complain_on_overflow */
954 1.1 christos bfd_elf_generic_reloc, /* special_function */
955 1.1 christos "R_KVX_64_TPOFF", /* name */
956 1.1 christos false, /* partial_inplace */
957 1.1 christos 0x0, /* src_mask */
958 1.1 christos 0xffffffffffffffff, /* dst_mask */
959 1.1 christos false), /* pc_offset */
960 1.1 christos HOWTO (R_KVX_S37_TLS_IE_LO10, /* type */
961 1.1 christos 0, /* rightshift */
962 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
963 1.1 christos 10, /* bitsize */
964 1.1 christos false, /* pc_relative */
965 1.1 christos 6, /* bitpos (bit field offset) */
966 1.1 christos complain_overflow_dont, /* complain_on_overflow */
967 1.1 christos bfd_elf_generic_reloc, /* special_function */
968 1.1 christos "R_KVX_S37_TLS_IE_LO10", /* name */
969 1.1 christos false, /* partial_inplace */
970 1.1 christos 0x0, /* src_mask */
971 1.1 christos 0xffc0, /* dst_mask */
972 1.1 christos false), /* pc_offset */
973 1.1 christos HOWTO (R_KVX_S37_TLS_IE_UP27, /* type */
974 1.1 christos 10, /* rightshift */
975 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
976 1.1 christos 27, /* bitsize */
977 1.1 christos false, /* pc_relative */
978 1.1 christos 0, /* bitpos (bit field offset) */
979 1.1 christos complain_overflow_dont, /* complain_on_overflow */
980 1.1 christos bfd_elf_generic_reloc, /* special_function */
981 1.1 christos "R_KVX_S37_TLS_IE_UP27", /* name */
982 1.1 christos false, /* partial_inplace */
983 1.1 christos 0x0, /* src_mask */
984 1.1 christos 0x7ffffff, /* dst_mask */
985 1.1 christos false), /* pc_offset */
986 1.1 christos HOWTO (R_KVX_S43_TLS_IE_LO10, /* type */
987 1.1 christos 0, /* rightshift */
988 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
989 1.1 christos 10, /* bitsize */
990 1.1 christos false, /* pc_relative */
991 1.1 christos 6, /* bitpos (bit field offset) */
992 1.1 christos complain_overflow_dont, /* complain_on_overflow */
993 1.1 christos bfd_elf_generic_reloc, /* special_function */
994 1.1 christos "R_KVX_S43_TLS_IE_LO10", /* name */
995 1.1 christos false, /* partial_inplace */
996 1.1 christos 0x0, /* src_mask */
997 1.1 christos 0xffc0, /* dst_mask */
998 1.1 christos false), /* pc_offset */
999 1.1 christos HOWTO (R_KVX_S43_TLS_IE_UP27, /* type */
1000 1.1 christos 10, /* rightshift */
1001 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
1002 1.1 christos 27, /* bitsize */
1003 1.1 christos false, /* pc_relative */
1004 1.1 christos 0, /* bitpos (bit field offset) */
1005 1.1 christos complain_overflow_dont, /* complain_on_overflow */
1006 1.1 christos bfd_elf_generic_reloc, /* special_function */
1007 1.1 christos "R_KVX_S43_TLS_IE_UP27", /* name */
1008 1.1 christos false, /* partial_inplace */
1009 1.1 christos 0x0, /* src_mask */
1010 1.1 christos 0x7ffffff, /* dst_mask */
1011 1.1 christos false), /* pc_offset */
1012 1.1 christos HOWTO (R_KVX_S43_TLS_IE_EX6, /* type */
1013 1.1 christos 37, /* rightshift */
1014 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
1015 1.1 christos 6, /* bitsize */
1016 1.1 christos false, /* pc_relative */
1017 1.1 christos 0, /* bitpos (bit field offset) */
1018 1.1 christos complain_overflow_dont, /* complain_on_overflow */
1019 1.1 christos bfd_elf_generic_reloc, /* special_function */
1020 1.1 christos "R_KVX_S43_TLS_IE_EX6", /* name */
1021 1.1 christos false, /* partial_inplace */
1022 1.1 christos 0x0, /* src_mask */
1023 1.1 christos 0x3f, /* dst_mask */
1024 1.1 christos false), /* pc_offset */
1025 1.1 christos HOWTO (R_KVX_S37_TLS_LE_LO10, /* type */
1026 1.1 christos 0, /* rightshift */
1027 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
1028 1.1 christos 10, /* bitsize */
1029 1.1 christos false, /* pc_relative */
1030 1.1 christos 6, /* bitpos (bit field offset) */
1031 1.1 christos complain_overflow_dont, /* complain_on_overflow */
1032 1.1 christos bfd_elf_generic_reloc, /* special_function */
1033 1.1 christos "R_KVX_S37_TLS_LE_LO10", /* name */
1034 1.1 christos false, /* partial_inplace */
1035 1.1 christos 0x0, /* src_mask */
1036 1.1 christos 0xffc0, /* dst_mask */
1037 1.1 christos false), /* pc_offset */
1038 1.1 christos HOWTO (R_KVX_S37_TLS_LE_UP27, /* type */
1039 1.1 christos 10, /* rightshift */
1040 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
1041 1.1 christos 27, /* bitsize */
1042 1.1 christos false, /* pc_relative */
1043 1.1 christos 0, /* bitpos (bit field offset) */
1044 1.1 christos complain_overflow_dont, /* complain_on_overflow */
1045 1.1 christos bfd_elf_generic_reloc, /* special_function */
1046 1.1 christos "R_KVX_S37_TLS_LE_UP27", /* name */
1047 1.1 christos false, /* partial_inplace */
1048 1.1 christos 0x0, /* src_mask */
1049 1.1 christos 0x7ffffff, /* dst_mask */
1050 1.1 christos false), /* pc_offset */
1051 1.1 christos HOWTO (R_KVX_S43_TLS_LE_LO10, /* type */
1052 1.1 christos 0, /* rightshift */
1053 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
1054 1.1 christos 10, /* bitsize */
1055 1.1 christos false, /* pc_relative */
1056 1.1 christos 6, /* bitpos (bit field offset) */
1057 1.1 christos complain_overflow_dont, /* complain_on_overflow */
1058 1.1 christos bfd_elf_generic_reloc, /* special_function */
1059 1.1 christos "R_KVX_S43_TLS_LE_LO10", /* name */
1060 1.1 christos false, /* partial_inplace */
1061 1.1 christos 0x0, /* src_mask */
1062 1.1 christos 0xffc0, /* dst_mask */
1063 1.1 christos false), /* pc_offset */
1064 1.1 christos HOWTO (R_KVX_S43_TLS_LE_UP27, /* type */
1065 1.1 christos 10, /* rightshift */
1066 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
1067 1.1 christos 27, /* bitsize */
1068 1.1 christos false, /* pc_relative */
1069 1.1 christos 0, /* bitpos (bit field offset) */
1070 1.1 christos complain_overflow_dont, /* complain_on_overflow */
1071 1.1 christos bfd_elf_generic_reloc, /* special_function */
1072 1.1 christos "R_KVX_S43_TLS_LE_UP27", /* name */
1073 1.1 christos false, /* partial_inplace */
1074 1.1 christos 0x0, /* src_mask */
1075 1.1 christos 0x7ffffff, /* dst_mask */
1076 1.1 christos false), /* pc_offset */
1077 1.1 christos HOWTO (R_KVX_S43_TLS_LE_EX6, /* type */
1078 1.1 christos 37, /* rightshift */
1079 1.1 christos 4, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
1080 1.1 christos 6, /* bitsize */
1081 1.1 christos false, /* pc_relative */
1082 1.1 christos 0, /* bitpos (bit field offset) */
1083 1.1 christos complain_overflow_dont, /* complain_on_overflow */
1084 1.1 christos bfd_elf_generic_reloc, /* special_function */
1085 1.1 christos "R_KVX_S43_TLS_LE_EX6", /* name */
1086 1.1 christos false, /* partial_inplace */
1087 1.1 christos 0x0, /* src_mask */
1088 1.1 christos 0x3f, /* dst_mask */
1089 1.1 christos false), /* pc_offset */
1090 1.1 christos HOWTO (R_KVX_8, /* type */
1091 1.1 christos 0, /* rightshift */
1092 1.1 christos 1, /* size (0 = byte, 1 = short, 2 = long, 3 = invalid, 4 = 64bits, 8 = 128bits) */
1093 1.1 christos 8, /* bitsize */
1094 1.1 christos false, /* pc_relative */
1095 1.1 christos 0, /* bitpos (bit field offset) */
1096 1.1 christos complain_overflow_unsigned, /* complain_on_overflow */
1097 1.1 christos bfd_elf_generic_reloc, /* special_function */
1098 1.1 christos "R_KVX_8", /* name */
1099 1.1 christos false, /* partial_inplace */
1100 1.1 christos 0x0, /* src_mask */
1101 1.1 christos 0xff, /* dst_mask */
1102 1.1 christos false), /* pc_offset */
1103 1.1 christos };
1104 1.1 christos
1105 1.1 christos #endif /* KVX_KV3_V1_KV3_V2_KV4_V1 */
1106