xref: /netbsd-src/external/gpl3/binutils/dist/bfd/libbfd.h (revision dd7241df2fae9da4ea2bd20a68f001fa86ecf909)
1 /* DO NOT EDIT!  -*- buffer-read-only: t -*-  This file is automatically
2    generated from "libbfd-in.h", "libbfd.c", "bfd.c", "bfdio.c",
3    "archive.c", "archures.c", "bfdwin.c", "cache.c", "hash.c", "linker.c",
4    "opncls.c", "reloc.c", "section.c", "stabs.c" and "targets.c".
5    Run "make headers" in your build bfd/ to regenerate.  */
6 
7 /* libbfd.h -- Declarations used by bfd library *implementation*.
8    (This include file is not for users of the library.)
9 
10    Copyright (C) 1990-2024 Free Software Foundation, Inc.
11 
12    Written by Cygnus Support.
13 
14    This file is part of BFD, the Binary File Descriptor library.
15 
16    This program is free software; you can redistribute it and/or modify
17    it under the terms of the GNU General Public License as published by
18    the Free Software Foundation; either version 3 of the License, or
19    (at your option) any later version.
20 
21    This program is distributed in the hope that it will be useful,
22    but WITHOUT ANY WARRANTY; without even the implied warranty of
23    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
24    GNU General Public License for more details.
25 
26    You should have received a copy of the GNU General Public License
27    along with this program; if not, write to the Free Software
28    Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
29    MA 02110-1301, USA.  */
30 
31 #ifndef _LIBBFD_H
32 #define _LIBBFD_H 1
33 
34 #ifndef ATTRIBUTE_HIDDEN
35 #if HAVE_HIDDEN
36 #define ATTRIBUTE_HIDDEN __attribute__ ((__visibility__ ("hidden")))
37 #else
38 #define ATTRIBUTE_HIDDEN
39 #endif
40 #endif
41 
42 #include "hashtab.h"
43 
44 #ifdef __cplusplus
45 extern "C" {
46 #endif
47 
48 /* Set a tdata field.  Can't use the other macros for this, since they
49    do casts, and casting to the left of assignment isn't portable.  */
50 #define set_tdata(bfd, v) ((bfd)->tdata.any = (v))
51 
52 /* If BFD_IN_MEMORY is set for a BFD, then the iostream fields points
53    to an instance of this structure.  */
54 
55 struct bfd_in_memory
56 {
57   /* Size of buffer.  */
58   bfd_size_type size;
59   /* Buffer holding contents of BFD.  */
60   bfd_byte *buffer;
61 };
62 
63 struct section_hash_entry
64 {
65   struct bfd_hash_entry root;
66   asection section;
67 };
68 
69 /* Unique section id.  */
70 extern unsigned int _bfd_section_id ATTRIBUTE_HIDDEN;
71 
72 /* tdata for an archive.  For an input archive, cache
73    needs to be free()'d.  For an output archive, symdefs do.  */
74 
75 struct artdata
76 {
77   ufile_ptr first_file_filepos;
78   /* Speed up searching the armap */
79   htab_t cache;
80   carsym *symdefs;		/* The symdef entries.  */
81   symindex symdef_count;	/* How many there are.  */
82   char *extended_names;		/* Clever intel extension.  */
83   bfd_size_type extended_names_size; /* Size of extended names.  */
84   /* When more compilers are standard C, this can be a time_t.  */
85   long  armap_timestamp;	/* Timestamp value written into armap.
86 				   This is used for BSD archives to check
87 				   that the timestamp is recent enough
88 				   for the BSD linker to not complain,
89 				   just before we finish writing an
90 				   archive.  */
91   file_ptr armap_datepos;	/* Position within archive to seek to
92 				   rewrite the date field.  */
93   void *tdata;			/* Backend specific information.  */
94 };
95 
96 #define bfd_ardata(bfd) ((bfd)->tdata.aout_ar_data)
97 
98 /* Goes in bfd's arelt_data slot */
99 struct areltdata
100 {
101   char * arch_header;		/* It's actually a string.  */
102   bfd_size_type parsed_size;	/* Octets of filesize not including ar_hdr.  */
103   bfd_size_type extra_size;	/* BSD4.4: extra bytes after the header.  */
104   char *filename;		/* Null-terminated.  */
105   file_ptr origin;		/* For element of a thin archive.  */
106   void *parent_cache;		/* Where and how to find this member.  */
107   file_ptr key;
108 };
109 
110 #define arelt_size(bfd) (((struct areltdata *)((bfd)->arelt_data))->parsed_size)
111 
112 extern void *bfd_malloc
113   (bfd_size_type) ATTRIBUTE_HIDDEN;
114 
115 static inline char *
bfd_strdup(const char * str)116 bfd_strdup (const char *str)
117 {
118   size_t len = strlen (str) + 1;
119   char *buf = bfd_malloc (len);
120   if (buf != NULL)
121     memcpy (buf, str, len);
122   return buf;
123 }
124 
125 extern bfd * _bfd_create_empty_archive_element_shell
126   (bfd *) ATTRIBUTE_HIDDEN;
127 extern bfd * _bfd_look_for_bfd_in_cache
128   (bfd *, file_ptr) ATTRIBUTE_HIDDEN;
129 extern bool _bfd_add_bfd_to_archive_cache
130   (bfd *, file_ptr, bfd *) ATTRIBUTE_HIDDEN;
131 extern bool _bfd_generic_mkarchive
132   (bfd *) ATTRIBUTE_HIDDEN;
133 extern char *_bfd_append_relative_path
134   (bfd *, char *) ATTRIBUTE_HIDDEN;
135 extern bfd_cleanup bfd_generic_archive_p
136   (bfd *) ATTRIBUTE_HIDDEN;
137 extern bool bfd_slurp_armap
138   (bfd *) ATTRIBUTE_HIDDEN;
139 #define bfd_slurp_bsd_armap bfd_slurp_armap
140 #define bfd_slurp_coff_armap bfd_slurp_armap
141 extern bool _bfd_archive_64_bit_slurp_armap
142   (bfd *) ATTRIBUTE_HIDDEN;
143 extern bool _bfd_archive_64_bit_write_armap
144   (bfd *, unsigned int, struct orl *, unsigned int, int) ATTRIBUTE_HIDDEN;
145 #define _bfd_archive_64_bit_slurp_extended_name_table \
146   _bfd_slurp_extended_name_table
147 #define _bfd_archive_64_bit_construct_extended_name_table \
148   _bfd_archive_coff_construct_extended_name_table
149 #define _bfd_archive_64_bit_truncate_arname \
150   bfd_dont_truncate_arname
151 #define _bfd_archive_64_bit_read_ar_hdr \
152   _bfd_generic_read_ar_hdr
153 #define _bfd_archive_64_bit_write_ar_hdr \
154   _bfd_generic_write_ar_hdr
155 #define _bfd_archive_64_bit_openr_next_archived_file \
156   bfd_generic_openr_next_archived_file
157 #define _bfd_archive_64_bit_get_elt_at_index \
158   _bfd_generic_get_elt_at_index
159 #define _bfd_archive_64_bit_generic_stat_arch_elt \
160   bfd_generic_stat_arch_elt
161 #define _bfd_archive_64_bit_update_armap_timestamp _bfd_bool_bfd_true
162 
163 extern bool _bfd_slurp_extended_name_table
164   (bfd *) ATTRIBUTE_HIDDEN;
165 extern bool _bfd_construct_extended_name_table
166   (bfd *, bool, char **, bfd_size_type *) ATTRIBUTE_HIDDEN;
167 extern bool _bfd_write_archive_contents
168   (bfd *) ATTRIBUTE_HIDDEN;
169 extern bool _bfd_compute_and_write_armap
170   (bfd *, unsigned int) ATTRIBUTE_HIDDEN;
171 extern bfd *_bfd_get_elt_at_filepos
172   (bfd *, file_ptr, struct bfd_link_info *) ATTRIBUTE_HIDDEN;
173 extern bfd *_bfd_generic_get_elt_at_index
174   (bfd *, symindex) ATTRIBUTE_HIDDEN;
175 
176 extern bool _bfd_bool_bfd_false
177   (bfd *) ATTRIBUTE_HIDDEN;
178 extern bool _bfd_bool_bfd_asymbol_false
179   (bfd *, asymbol *) ATTRIBUTE_HIDDEN;
180 extern bool _bfd_bool_bfd_false_error
181   (bfd *) ATTRIBUTE_HIDDEN;
182 extern bool _bfd_bool_bfd_link_false_error
183   (bfd *, struct bfd_link_info *) ATTRIBUTE_HIDDEN;
184 extern bool _bfd_bool_bfd_true
185   (bfd *) ATTRIBUTE_HIDDEN;
186 extern bool _bfd_bool_bfd_link_true
187   (bfd *, struct bfd_link_info *) ATTRIBUTE_HIDDEN;
188 extern bool _bfd_bool_bfd_bfd_true
189   (bfd *, bfd *) ATTRIBUTE_HIDDEN;
190 extern bool _bfd_bool_bfd_uint_true
191   (bfd *, unsigned int) ATTRIBUTE_HIDDEN;
192 extern bool _bfd_bool_bfd_asection_bfd_asection_true
193   (bfd *, asection *, bfd *, asection *) ATTRIBUTE_HIDDEN;
194 extern bool _bfd_bool_bfd_asymbol_bfd_asymbol_true
195   (bfd *, asymbol *, bfd *, asymbol *) ATTRIBUTE_HIDDEN;
196 extern bool _bfd_bool_bfd_ptr_true
197   (bfd *, void *) ATTRIBUTE_HIDDEN;
198 extern void *_bfd_ptr_bfd_null_error
199   (bfd *) ATTRIBUTE_HIDDEN;
200 extern int _bfd_int_bfd_0
201   (bfd *) ATTRIBUTE_HIDDEN;
202 extern unsigned int _bfd_uint_bfd_0
203   (bfd *) ATTRIBUTE_HIDDEN;
204 extern long _bfd_long_bfd_0
205   (bfd *) ATTRIBUTE_HIDDEN;
206 extern long _bfd_long_bfd_n1_error
207   (bfd *) ATTRIBUTE_HIDDEN;
208 extern void _bfd_void_bfd
209   (bfd *) ATTRIBUTE_HIDDEN;
210 extern void _bfd_void_bfd_link
211   (bfd *, struct bfd_link_info *) ATTRIBUTE_HIDDEN;
212 extern void _bfd_void_bfd_asection
213   (bfd *, asection *) ATTRIBUTE_HIDDEN;
214 
215 extern bfd_cleanup _bfd_dummy_target
216   (bfd *) ATTRIBUTE_HIDDEN;
217 #define _bfd_no_cleanup _bfd_void_bfd
218 
219 extern void bfd_dont_truncate_arname
220   (bfd *, const char *, char *) ATTRIBUTE_HIDDEN;
221 extern void bfd_bsd_truncate_arname
222   (bfd *, const char *, char *) ATTRIBUTE_HIDDEN;
223 extern void bfd_gnu_truncate_arname
224   (bfd *, const char *, char *) ATTRIBUTE_HIDDEN;
225 
226 extern bool _bfd_bsd_write_armap
227   (bfd *, unsigned int, struct orl *, unsigned int, int) ATTRIBUTE_HIDDEN;
228 
229 extern bool _bfd_coff_write_armap
230   (bfd *, unsigned int, struct orl *, unsigned int, int) ATTRIBUTE_HIDDEN;
231 
232 extern void *_bfd_generic_read_ar_hdr
233   (bfd *) ATTRIBUTE_HIDDEN;
234 extern void _bfd_ar_spacepad
235   (char *, size_t, const char *, long) ATTRIBUTE_HIDDEN;
236 extern bool _bfd_ar_sizepad
237   (char *, size_t, bfd_size_type) ATTRIBUTE_HIDDEN;
238 
239 extern void *_bfd_generic_read_ar_hdr_mag
240   (bfd *, const char *) ATTRIBUTE_HIDDEN;
241 
242 extern bool _bfd_generic_write_ar_hdr
243   (bfd *, bfd *) ATTRIBUTE_HIDDEN;
244 
245 extern bool _bfd_bsd44_write_ar_hdr
246   (bfd *, bfd *) ATTRIBUTE_HIDDEN;
247 
248 extern bfd * bfd_generic_openr_next_archived_file
249   (bfd *, bfd *) ATTRIBUTE_HIDDEN;
250 
251 extern int bfd_generic_stat_arch_elt
252   (bfd *, struct stat *) ATTRIBUTE_HIDDEN;
253 
254 #define _bfd_read_ar_hdr(abfd) \
255 	BFD_SEND (abfd, _bfd_read_ar_hdr_fn, (abfd))
256 #define _bfd_write_ar_hdr(archive, abfd)	 \
257 	BFD_SEND (abfd, _bfd_write_ar_hdr_fn, (archive, abfd))
258 
259 /* Generic routines to use for BFD_JUMP_TABLE_GENERIC.  Use
260    BFD_JUMP_TABLE_GENERIC (_bfd_generic).  */
261 
262 #define _bfd_generic_close_and_cleanup _bfd_archive_close_and_cleanup
263 extern bool _bfd_archive_close_and_cleanup
264   (bfd *) ATTRIBUTE_HIDDEN;
265 extern void _bfd_unlink_from_archive_parent (bfd *) ATTRIBUTE_HIDDEN;
266 #define _bfd_generic_bfd_free_cached_info _bfd_free_cached_info
267 extern bool _bfd_generic_new_section_hook
268   (bfd *, asection *) ATTRIBUTE_HIDDEN;
269 extern bool _bfd_generic_get_section_contents
270   (bfd *, asection *, void *, file_ptr, bfd_size_type) ATTRIBUTE_HIDDEN;
271 extern bool _bfd_generic_get_section_contents_in_window
272   (bfd *, asection *, bfd_window *, file_ptr, bfd_size_type) ATTRIBUTE_HIDDEN;
273 
274 /* Generic routines to use for BFD_JUMP_TABLE_COPY.  Use
275    BFD_JUMP_TABLE_COPY (_bfd_generic).  */
276 
277 #define _bfd_generic_bfd_copy_private_bfd_data _bfd_bool_bfd_bfd_true
278 #define _bfd_generic_bfd_merge_private_bfd_data \
279   _bfd_bool_bfd_link_true
280 #define _bfd_generic_bfd_set_private_flags _bfd_bool_bfd_uint_true
281 #define _bfd_generic_bfd_copy_private_section_data \
282   _bfd_bool_bfd_asection_bfd_asection_true
283 #define _bfd_generic_bfd_copy_private_symbol_data \
284   _bfd_bool_bfd_asymbol_bfd_asymbol_true
285 #define _bfd_generic_bfd_copy_private_header_data _bfd_bool_bfd_bfd_true
286 #define _bfd_generic_bfd_print_private_bfd_data _bfd_bool_bfd_ptr_true
287 
288 extern bool _bfd_generic_init_private_section_data
289   (bfd *, asection *, bfd *, asection *, struct bfd_link_info *)
290   ATTRIBUTE_HIDDEN;
291 
292 /* Routines to use for BFD_JUMP_TABLE_CORE when there is no core file
293    support.  Use BFD_JUMP_TABLE_CORE (_bfd_nocore).  */
294 
295 extern char *_bfd_nocore_core_file_failing_command
296   (bfd *) ATTRIBUTE_HIDDEN;
297 extern int _bfd_nocore_core_file_failing_signal
298   (bfd *) ATTRIBUTE_HIDDEN;
299 extern bool _bfd_nocore_core_file_matches_executable_p
300   (bfd *, bfd *) ATTRIBUTE_HIDDEN;
301 extern int _bfd_nocore_core_file_pid
302   (bfd *) ATTRIBUTE_HIDDEN;
303 
304 /* Routines to use for BFD_JUMP_TABLE_ARCHIVE when there is no archive
305    file support.  Use BFD_JUMP_TABLE_ARCHIVE (_bfd_noarchive).  */
306 
307 #define _bfd_noarchive_slurp_armap _bfd_bool_bfd_false_error
308 #define _bfd_noarchive_slurp_extended_name_table _bfd_bool_bfd_false_error
309 extern bool _bfd_noarchive_construct_extended_name_table
310   (bfd *, char **, bfd_size_type *, const char **) ATTRIBUTE_HIDDEN;
311 extern void _bfd_noarchive_truncate_arname
312   (bfd *, const char *, char *) ATTRIBUTE_HIDDEN;
313 extern bool _bfd_noarchive_write_armap
314   (bfd *, unsigned int, struct orl *, unsigned int, int) ATTRIBUTE_HIDDEN;
315 #define _bfd_noarchive_read_ar_hdr _bfd_ptr_bfd_null_error
316 extern bool _bfd_noarchive_write_ar_hdr
317   (bfd *, bfd *) ATTRIBUTE_HIDDEN;
318 extern bfd *
319 _bfd_noarchive_openr_next_archived_file
320   (bfd *, bfd *) ATTRIBUTE_HIDDEN;
321 extern bfd * _bfd_noarchive_get_elt_at_index
322   (bfd *, symindex) ATTRIBUTE_HIDDEN;
323 #define _bfd_noarchive_generic_stat_arch_elt bfd_generic_stat_arch_elt
324 #define _bfd_noarchive_update_armap_timestamp _bfd_bool_bfd_false_error
325 
326 /* Routines to use for BFD_JUMP_TABLE_ARCHIVE to get BSD style
327    archives.  Use BFD_JUMP_TABLE_ARCHIVE (_bfd_archive_bsd).  */
328 
329 #define _bfd_archive_bsd_slurp_armap bfd_slurp_bsd_armap
330 #define _bfd_archive_bsd_slurp_extended_name_table \
331   _bfd_slurp_extended_name_table
332 extern bool _bfd_archive_bsd_construct_extended_name_table
333   (bfd *, char **, bfd_size_type *, const char **) ATTRIBUTE_HIDDEN;
334 #define _bfd_archive_bsd_truncate_arname bfd_bsd_truncate_arname
335 #define _bfd_archive_bsd_write_armap _bfd_bsd_write_armap
336 #define _bfd_archive_bsd_read_ar_hdr _bfd_generic_read_ar_hdr
337 #define _bfd_archive_bsd_write_ar_hdr _bfd_generic_write_ar_hdr
338 #define _bfd_archive_bsd_openr_next_archived_file \
339   bfd_generic_openr_next_archived_file
340 #define _bfd_archive_bsd_get_elt_at_index _bfd_generic_get_elt_at_index
341 #define _bfd_archive_bsd_generic_stat_arch_elt \
342   bfd_generic_stat_arch_elt
343 extern bool _bfd_archive_bsd_update_armap_timestamp
344   (bfd *) ATTRIBUTE_HIDDEN;
345 
346 /* Routines to use for BFD_JUMP_TABLE_ARCHIVE to get COFF style
347    archives.  Use BFD_JUMP_TABLE_ARCHIVE (_bfd_archive_coff).  */
348 
349 #define _bfd_archive_coff_slurp_armap bfd_slurp_coff_armap
350 #define _bfd_archive_coff_slurp_extended_name_table \
351   _bfd_slurp_extended_name_table
352 extern bool _bfd_archive_coff_construct_extended_name_table
353   (bfd *, char **, bfd_size_type *, const char **) ATTRIBUTE_HIDDEN;
354 #define _bfd_archive_coff_truncate_arname bfd_dont_truncate_arname
355 #define _bfd_archive_coff_write_armap _bfd_coff_write_armap
356 #define _bfd_archive_coff_read_ar_hdr _bfd_generic_read_ar_hdr
357 #define _bfd_archive_coff_write_ar_hdr _bfd_generic_write_ar_hdr
358 #define _bfd_archive_coff_openr_next_archived_file \
359   bfd_generic_openr_next_archived_file
360 #define _bfd_archive_coff_get_elt_at_index _bfd_generic_get_elt_at_index
361 #define _bfd_archive_coff_generic_stat_arch_elt \
362   bfd_generic_stat_arch_elt
363 #define _bfd_archive_coff_update_armap_timestamp _bfd_bool_bfd_true
364 
365 /* Routines to use for BFD_JUMP_TABLE_ARCHIVE to get BSD4.4 style
366    archives.  Use BFD_JUMP_TABLE_ARCHIVE (_bfd_archive_bsd44).  */
367 
368 #define _bfd_archive_bsd44_slurp_armap bfd_slurp_bsd_armap
369 #define _bfd_archive_bsd44_slurp_extended_name_table \
370   _bfd_slurp_extended_name_table
371 extern bool _bfd_archive_bsd44_construct_extended_name_table
372   (bfd *, char **, bfd_size_type *, const char **) ATTRIBUTE_HIDDEN;
373 #define _bfd_archive_bsd44_truncate_arname bfd_bsd_truncate_arname
374 #define _bfd_archive_bsd44_write_armap _bfd_bsd_write_armap
375 #define _bfd_archive_bsd44_read_ar_hdr _bfd_generic_read_ar_hdr
376 #define _bfd_archive_bsd44_write_ar_hdr _bfd_bsd44_write_ar_hdr
377 #define _bfd_archive_bsd44_openr_next_archived_file \
378   bfd_generic_openr_next_archived_file
379 #define _bfd_archive_bsd44_get_elt_at_index _bfd_generic_get_elt_at_index
380 #define _bfd_archive_bsd44_generic_stat_arch_elt \
381   bfd_generic_stat_arch_elt
382 #define _bfd_archive_bsd44_update_armap_timestamp \
383   _bfd_archive_bsd_update_armap_timestamp
384 
385 /* Routines to use for BFD_JUMP_TABLE_ARCHIVE to get VMS style
386    archives.  Use BFD_JUMP_TABLE_ARCHIVE (_bfd_vms_lib).  Some of them
387    are irrelevant.  */
388 
389 extern bool _bfd_vms_lib_write_archive_contents
390   (bfd *) ATTRIBUTE_HIDDEN;
391 #define _bfd_vms_lib_slurp_armap _bfd_noarchive_slurp_armap
392 #define _bfd_vms_lib_slurp_extended_name_table \
393   _bfd_noarchive_slurp_extended_name_table
394 #define _bfd_vms_lib_construct_extended_name_table \
395   _bfd_noarchive_construct_extended_name_table
396 #define _bfd_vms_lib_truncate_arname _bfd_noarchive_truncate_arname
397 #define _bfd_vms_lib_write_armap _bfd_noarchive_write_armap
398 #define _bfd_vms_lib_read_ar_hdr _bfd_noarchive_read_ar_hdr
399 #define _bfd_vms_lib_write_ar_hdr _bfd_noarchive_write_ar_hdr
400 extern bfd *_bfd_vms_lib_openr_next_archived_file
401   (bfd *, bfd *) ATTRIBUTE_HIDDEN;
402 extern bfd *_bfd_vms_lib_get_elt_at_index
403   (bfd *, symindex) ATTRIBUTE_HIDDEN;
404 extern int _bfd_vms_lib_generic_stat_arch_elt
405   (bfd *, struct stat *) ATTRIBUTE_HIDDEN;
406 #define _bfd_vms_lib_update_armap_timestamp _bfd_bool_bfd_true
407 
408 /* Extra routines for VMS style archives.  */
409 
410 extern symindex _bfd_vms_lib_find_symbol
411   (bfd *, const char *) ATTRIBUTE_HIDDEN;
412 extern bfd *_bfd_vms_lib_get_imagelib_file
413   (bfd *) ATTRIBUTE_HIDDEN;
414 extern bfd_cleanup _bfd_vms_lib_alpha_archive_p
415   (bfd *) ATTRIBUTE_HIDDEN;
416 extern bfd_cleanup _bfd_vms_lib_ia64_archive_p
417   (bfd *) ATTRIBUTE_HIDDEN;
418 extern bool _bfd_vms_lib_alpha_mkarchive
419   (bfd *) ATTRIBUTE_HIDDEN;
420 extern bool _bfd_vms_lib_ia64_mkarchive
421   (bfd *) ATTRIBUTE_HIDDEN;
422 
423 /* Routines to use for BFD_JUMP_TABLE_SYMBOLS where there is no symbol
424    support.  Use BFD_JUMP_TABLE_SYMBOLS (_bfd_nosymbols).  */
425 
426 #define _bfd_nosymbols_get_symtab_upper_bound _bfd_long_bfd_n1_error
427 extern long _bfd_nosymbols_canonicalize_symtab
428   (bfd *, asymbol **) ATTRIBUTE_HIDDEN;
429 #define _bfd_nosymbols_make_empty_symbol _bfd_generic_make_empty_symbol
430 extern void _bfd_nosymbols_print_symbol
431   (bfd *, void *, asymbol *, bfd_print_symbol_type) ATTRIBUTE_HIDDEN;
432 extern void _bfd_nosymbols_get_symbol_info
433   (bfd *, asymbol *, symbol_info *) ATTRIBUTE_HIDDEN;
434 extern const char * _bfd_nosymbols_get_symbol_version_string
435   (bfd *, asymbol *, bool, bool *) ATTRIBUTE_HIDDEN;
436 extern bool _bfd_nosymbols_bfd_is_local_label_name
437   (bfd *, const char *) ATTRIBUTE_HIDDEN;
438 #define _bfd_nosymbols_bfd_is_target_special_symbol _bfd_bool_bfd_asymbol_false
439 extern alent *_bfd_nosymbols_get_lineno
440   (bfd *, asymbol *) ATTRIBUTE_HIDDEN;
441 extern bool _bfd_nosymbols_find_nearest_line
442   (bfd *, asymbol **, asection *, bfd_vma,
443    const char **, const char **, unsigned int *, unsigned int *)
444   ATTRIBUTE_HIDDEN;
445 extern bool _bfd_nosymbols_find_nearest_line_with_alt
446   (bfd *, const char *, asymbol **, asection *, bfd_vma,
447    const char **, const char **, unsigned int *, unsigned int *)
448   ATTRIBUTE_HIDDEN;
449 extern bool _bfd_nosymbols_find_line
450   (bfd *, asymbol **, asymbol *, const char **, unsigned int *)
451   ATTRIBUTE_HIDDEN;
452 extern bool _bfd_nosymbols_find_inliner_info
453   (bfd *, const char **, const char **, unsigned int *) ATTRIBUTE_HIDDEN;
454 extern asymbol *_bfd_nosymbols_bfd_make_debug_symbol
455   (bfd *) ATTRIBUTE_HIDDEN;
456 extern long _bfd_nosymbols_read_minisymbols
457   (bfd *, bool, void **, unsigned int *) ATTRIBUTE_HIDDEN;
458 extern asymbol *_bfd_nosymbols_minisymbol_to_symbol
459   (bfd *, bool, const void *, asymbol *) ATTRIBUTE_HIDDEN;
460 
461 /* Routines to use for BFD_JUMP_TABLE_RELOCS when there is no reloc
462    support.  Use BFD_JUMP_TABLE_RELOCS (_bfd_norelocs).  */
463 
464 extern long _bfd_norelocs_get_reloc_upper_bound
465   (bfd *, asection *) ATTRIBUTE_HIDDEN;
466 extern long _bfd_norelocs_canonicalize_reloc
467   (bfd *, asection *, arelent **, asymbol **) ATTRIBUTE_HIDDEN;
468 extern void _bfd_norelocs_set_reloc
469   (bfd *, asection *, arelent **, unsigned int) ATTRIBUTE_HIDDEN;
470 extern reloc_howto_type *_bfd_norelocs_bfd_reloc_type_lookup
471   (bfd *, bfd_reloc_code_real_type) ATTRIBUTE_HIDDEN;
472 extern reloc_howto_type *_bfd_norelocs_bfd_reloc_name_lookup
473   (bfd *, const char *) ATTRIBUTE_HIDDEN;
474 
475 /* Routines to use for BFD_JUMP_TABLE_WRITE for targets which may not
476    be written.  Use BFD_JUMP_TABLE_WRITE (_bfd_nowrite).  */
477 
478 extern bool _bfd_nowrite_set_arch_mach
479   (bfd *, enum bfd_architecture, unsigned long) ATTRIBUTE_HIDDEN;
480 extern bool _bfd_nowrite_set_section_contents
481   (bfd *, asection *, const void *, file_ptr, bfd_size_type) ATTRIBUTE_HIDDEN;
482 
483 /* Generic routines to use for BFD_JUMP_TABLE_WRITE.  Use
484    BFD_JUMP_TABLE_WRITE (_bfd_generic).  */
485 
486 #define _bfd_generic_set_arch_mach bfd_default_set_arch_mach
487 extern bool _bfd_generic_set_section_contents
488   (bfd *, asection *, const void *, file_ptr, bfd_size_type) ATTRIBUTE_HIDDEN;
489 
490 /* Routines to use for BFD_JUMP_TABLE_LINK for targets which do not
491    support linking.  Use BFD_JUMP_TABLE_LINK (_bfd_nolink).  */
492 
493 extern int _bfd_nolink_sizeof_headers
494   (bfd *, struct bfd_link_info *) ATTRIBUTE_HIDDEN;
495 extern bfd_byte *_bfd_nolink_bfd_get_relocated_section_contents
496   (bfd *, struct bfd_link_info *, struct bfd_link_order *,
497    bfd_byte *, bool, asymbol **) ATTRIBUTE_HIDDEN;
498 extern bool _bfd_nolink_bfd_relax_section
499   (bfd *, asection *, struct bfd_link_info *, bool *) ATTRIBUTE_HIDDEN;
500 #define _bfd_nolink_bfd_gc_sections _bfd_bool_bfd_link_false_error
501 extern bool _bfd_nolink_bfd_lookup_section_flags
502   (struct bfd_link_info *, struct flag_info *, asection *) ATTRIBUTE_HIDDEN;
503 #define _bfd_nolink_bfd_merge_sections _bfd_bool_bfd_link_false_error
504 extern bool _bfd_nolink_bfd_is_group_section
505   (bfd *, const asection *) ATTRIBUTE_HIDDEN;
506 extern const char *_bfd_nolink_bfd_group_name
507   (bfd *, const asection *) ATTRIBUTE_HIDDEN;
508 extern bool _bfd_nolink_bfd_discard_group
509   (bfd *, asection *) ATTRIBUTE_HIDDEN;
510 extern struct bfd_link_hash_table *_bfd_nolink_bfd_link_hash_table_create
511   (bfd *) ATTRIBUTE_HIDDEN;
512 #define _bfd_nolink_bfd_link_add_symbols _bfd_bool_bfd_link_false_error
513 extern void _bfd_nolink_bfd_link_just_syms
514   (asection *, struct bfd_link_info *) ATTRIBUTE_HIDDEN;
515 extern void _bfd_nolink_bfd_copy_link_hash_symbol_type
516   (bfd *, struct bfd_link_hash_entry *, struct bfd_link_hash_entry *)
517   ATTRIBUTE_HIDDEN;
518 #define _bfd_nolink_bfd_final_link _bfd_bool_bfd_link_false_error
519 extern bool _bfd_nolink_bfd_link_split_section
520   (bfd *, struct bfd_section *) ATTRIBUTE_HIDDEN;
521 extern bool _bfd_nolink_section_already_linked
522   (bfd *, asection *, struct bfd_link_info *) ATTRIBUTE_HIDDEN;
523 extern bool _bfd_nolink_bfd_define_common_symbol
524   (bfd *, struct bfd_link_info *, struct bfd_link_hash_entry *)
525   ATTRIBUTE_HIDDEN;
526 #define _bfd_nolink_bfd_link_hide_symbol \
527   _bfd_generic_link_hide_symbol
528 extern struct bfd_link_hash_entry *_bfd_nolink_bfd_define_start_stop
529   (struct bfd_link_info *, const char *, asection *) ATTRIBUTE_HIDDEN;
530 #define _bfd_nolink_bfd_link_check_relocs \
531   _bfd_generic_link_check_relocs
532 
533 /* Routines to use for BFD_JUMP_TABLE_DYNAMIC for targets which do not
534    have dynamic symbols or relocs.  Use BFD_JUMP_TABLE_DYNAMIC
535    (_bfd_nodynamic).  */
536 
537 #define _bfd_nodynamic_get_dynamic_symtab_upper_bound _bfd_long_bfd_n1_error
538 #define _bfd_nodynamic_canonicalize_dynamic_symtab \
539   _bfd_nosymbols_canonicalize_symtab
540 extern long _bfd_nodynamic_get_synthetic_symtab
541   (bfd *, long, asymbol **, long, asymbol **, asymbol **) ATTRIBUTE_HIDDEN;
542 #define _bfd_nodynamic_get_dynamic_reloc_upper_bound _bfd_long_bfd_n1_error
543 extern long _bfd_nodynamic_canonicalize_dynamic_reloc
544   (bfd *, arelent **, asymbol **) ATTRIBUTE_HIDDEN;
545 
546 /* Generic routine to determine of the given symbol is a local
547    label.  */
548 extern bool bfd_generic_is_local_label_name
549   (bfd *, const char *) ATTRIBUTE_HIDDEN;
550 
551 /* Generic minisymbol routines.  */
552 extern long _bfd_generic_read_minisymbols
553   (bfd *, bool, void **, unsigned int *) ATTRIBUTE_HIDDEN;
554 extern asymbol *_bfd_generic_minisymbol_to_symbol
555   (bfd *, bool, const void *, asymbol *) ATTRIBUTE_HIDDEN;
556 
557 /* Find the nearest line using .stab/.stabstr sections.  */
558 extern bool _bfd_stab_section_find_nearest_line
559   (bfd *, asymbol **, asection *, bfd_vma, bool *,
560    const char **, const char **, unsigned int *, void **) ATTRIBUTE_HIDDEN;
561 
562 /* Find the nearest line using DWARF 1 debugging information.  */
563 extern bool _bfd_dwarf1_find_nearest_line
564   (bfd *, asymbol **, asection *, bfd_vma,
565    const char **, const char **, unsigned int *) ATTRIBUTE_HIDDEN;
566 
567 /* Clean up the data used to handle DWARF 1 debugging information. */
568 extern void _bfd_dwarf1_cleanup_debug_info
569   (bfd *, void **) ATTRIBUTE_HIDDEN;
570 
571 struct dwarf_debug_section
572 {
573   const char * uncompressed_name;
574   const char * compressed_name;
575 };
576 
577 /* Map of uncompressed DWARF debug section name to compressed one.  It
578    is terminated by NULL uncompressed_name.  */
579 
580 extern const struct dwarf_debug_section dwarf_debug_sections[] ATTRIBUTE_HIDDEN;
581 
582 /* Find the nearest line using DWARF 2 debugging information.  */
583 extern int _bfd_dwarf2_find_nearest_line
584   (bfd *, asymbol **, asymbol *, asection *, bfd_vma,
585    const char **, const char **, unsigned int *, unsigned int *,
586    const struct dwarf_debug_section *, void **) ATTRIBUTE_HIDDEN;
587 
588 /* Find the nearest line using DWARF 2 debugging information, with
589    the option of specifying a .gnu_debugaltlink file.  */
590 extern int _bfd_dwarf2_find_nearest_line_with_alt
591   (bfd *, const char *, asymbol **, asymbol *, asection *, bfd_vma,
592    const char **, const char **, unsigned int *, unsigned int *,
593    const struct dwarf_debug_section *, void **) ATTRIBUTE_HIDDEN;
594 
595 /* Find the bias between DWARF addresses and real addresses.  */
596 extern bfd_signed_vma _bfd_dwarf2_find_symbol_bias
597   (asymbol **, void **) ATTRIBUTE_HIDDEN;
598 
599 /* Find inliner info after calling bfd_find_nearest_line. */
600 extern bool _bfd_dwarf2_find_inliner_info
601   (bfd *, const char **, const char **, unsigned int *, void **)
602   ATTRIBUTE_HIDDEN;
603 
604 /* Read DWARF 2 debugging information. */
605 extern bool _bfd_dwarf2_slurp_debug_info
606   (bfd *, bfd *, const struct dwarf_debug_section *, asymbol **, void **,
607    bool) ATTRIBUTE_HIDDEN;
608 
609 /* Clean up the data used to handle DWARF 2 debugging information. */
610 extern void _bfd_dwarf2_cleanup_debug_info
611   (bfd *, void **) ATTRIBUTE_HIDDEN;
612 
613 extern void _bfd_stab_cleanup
614   (bfd *, void **) ATTRIBUTE_HIDDEN;
615 
616 /* Create a new section entry.  */
617 extern struct bfd_hash_entry *bfd_section_hash_newfunc
618   (struct bfd_hash_entry *, struct bfd_hash_table *, const char *)
619   ATTRIBUTE_HIDDEN;
620 
621 /* A routine to create entries for a bfd_link_hash_table.  */
622 extern struct bfd_hash_entry *_bfd_link_hash_newfunc
623   (struct bfd_hash_entry *entry, struct bfd_hash_table *table,
624    const char *string) ATTRIBUTE_HIDDEN;
625 
626 /* Initialize a bfd_link_hash_table.  */
627 extern bool _bfd_link_hash_table_init
628   (struct bfd_link_hash_table *, bfd *,
629    struct bfd_hash_entry *(*) (struct bfd_hash_entry *,
630 			       struct bfd_hash_table *,
631 			       const char *),
632    unsigned int) ATTRIBUTE_HIDDEN;
633 
634 /* Generic link hash table creation routine.  */
635 extern struct bfd_link_hash_table *_bfd_generic_link_hash_table_create
636   (bfd *) ATTRIBUTE_HIDDEN;
637 
638 /* Generic link hash table destruction routine.  */
639 extern void _bfd_generic_link_hash_table_free
640   (bfd *) ATTRIBUTE_HIDDEN;
641 
642 /* Generic add symbol routine.  */
643 extern bool _bfd_generic_link_add_symbols
644   (bfd *, struct bfd_link_info *) ATTRIBUTE_HIDDEN;
645 
646 /* Generic archive add symbol routine.  */
647 extern bool _bfd_generic_link_add_archive_symbols
648   (bfd *, struct bfd_link_info *,
649    bool (*) (bfd *, struct bfd_link_info *,
650 		    struct bfd_link_hash_entry *, const char *,
651 		    bool *)) ATTRIBUTE_HIDDEN;
652 
653 /* Forward declaration to avoid prototype errors.  */
654 typedef struct bfd_link_hash_entry _bfd_link_hash_entry;
655 
656 /* Generic routine to add a single symbol.  */
657 extern bool _bfd_generic_link_add_one_symbol
658   (struct bfd_link_info *, bfd *, const char *name, flagword,
659    asection *, bfd_vma, const char *, bool copy,
660    bool constructor, struct bfd_link_hash_entry **) ATTRIBUTE_HIDDEN;
661 
662 /* Generic routine to mark section as supplying symbols only.  */
663 extern void _bfd_generic_link_just_syms
664   (asection *, struct bfd_link_info *) ATTRIBUTE_HIDDEN;
665 
666 /* Generic routine that does nothing.  */
667 extern void _bfd_generic_copy_link_hash_symbol_type
668   (bfd *, struct bfd_link_hash_entry *, struct bfd_link_hash_entry *)
669   ATTRIBUTE_HIDDEN;
670 
671 /* Generic link routine.  */
672 extern bool _bfd_generic_final_link
673   (bfd *, struct bfd_link_info *) ATTRIBUTE_HIDDEN;
674 
675 extern bool _bfd_generic_link_split_section
676   (bfd *, struct bfd_section *) ATTRIBUTE_HIDDEN;
677 
678 extern bool _bfd_generic_section_already_linked
679   (bfd *, asection *, struct bfd_link_info *) ATTRIBUTE_HIDDEN;
680 
681 /* Generic reloc_link_order processing routine.  */
682 extern bool _bfd_generic_reloc_link_order
683   (bfd *, struct bfd_link_info *, asection *, struct bfd_link_order *)
684   ATTRIBUTE_HIDDEN;
685 
686 /* Default link order processing routine.  */
687 extern bool _bfd_default_link_order
688   (bfd *, struct bfd_link_info *, asection *, struct bfd_link_order *)
689   ATTRIBUTE_HIDDEN;
690 
691 /* Count the number of reloc entries in a link order list.  */
692 extern unsigned int _bfd_count_link_order_relocs
693   (struct bfd_link_order *) ATTRIBUTE_HIDDEN;
694 
695 /* Final link relocation routine.  */
696 extern bfd_reloc_status_type _bfd_final_link_relocate
697   (reloc_howto_type *, bfd *, asection *, bfd_byte *,
698    bfd_vma, bfd_vma, bfd_vma) ATTRIBUTE_HIDDEN;
699 
700 /* Relocate a particular location by a howto and a value.  */
701 extern bfd_reloc_status_type _bfd_relocate_contents
702   (reloc_howto_type *, bfd *, bfd_vma, bfd_byte *) ATTRIBUTE_HIDDEN;
703 
704 /* Clear a given location using a given howto.  */
705 extern bfd_reloc_status_type _bfd_clear_contents
706   (reloc_howto_type *, bfd *, asection *, bfd_byte *, bfd_vma) ATTRIBUTE_HIDDEN;
707 
708 /* Register a SEC_MERGE section as a candidate for merging.  */
709 
710 extern bool _bfd_add_merge_section
711   (bfd *, void **, asection *, void **) ATTRIBUTE_HIDDEN;
712 
713 /* Attempt to merge SEC_MERGE sections.  */
714 
715 extern bool _bfd_merge_sections
716   (bfd *, struct bfd_link_info *, void *, void (*) (bfd *, asection *))
717   ATTRIBUTE_HIDDEN;
718 
719 /* Write out a merged section.  */
720 
721 extern bool _bfd_write_merged_section
722   (bfd *, asection *, void *) ATTRIBUTE_HIDDEN;
723 
724 /* Find an offset within a modified SEC_MERGE section.  */
725 
726 extern bfd_vma _bfd_merged_section_offset
727   (bfd *, asection **, void *, bfd_vma) ATTRIBUTE_HIDDEN;
728 
729 /* Tidy up when done.  */
730 
731 extern void _bfd_merge_sections_free (void *) ATTRIBUTE_HIDDEN;
732 
733 /* Macros to tell if bfds are read or write enabled.
734 
735    Note that bfds open for read may be scribbled into if the fd passed
736    to bfd_fdopenr is actually open both for read and write
737    simultaneously.  However an output bfd will never be open for
738    read.  Therefore sometimes you want to check bfd_read_p or
739    !bfd_read_p, and only sometimes bfd_write_p.
740 */
741 
742 #define	bfd_read_p(abfd) \
743   ((abfd)->direction == read_direction || (abfd)->direction == both_direction)
744 #define	bfd_write_p(abfd) \
745   ((abfd)->direction == write_direction || (abfd)->direction == both_direction)
746 
747 extern void bfd_assert
748   (const char*,int) ATTRIBUTE_HIDDEN;
749 
750 #define BFD_ASSERT(x) \
751   do { if (!(x)) bfd_assert(__FILE__,__LINE__); } while (0)
752 
753 #define BFD_FAIL() \
754   do { bfd_assert(__FILE__,__LINE__); } while (0)
755 
756 extern void _bfd_abort
757   (const char *, int, const char *) ATTRIBUTE_NORETURN ATTRIBUTE_HIDDEN;
758 
759 /* if gcc >= 2.6, we can give a function name, too */
760 #if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 6)
761 #define __PRETTY_FUNCTION__  ((char *) NULL)
762 #endif
763 
764 #undef abort
765 #define abort() _bfd_abort (__FILE__, __LINE__, __PRETTY_FUNCTION__)
766 
767 /* Manipulate a system FILE but using BFD's "file_ptr", rather than
768    the system "off_t" or "off64_t", as the offset.  */
769 extern file_ptr _bfd_real_ftell
770   (FILE *) ATTRIBUTE_HIDDEN;
771 extern int _bfd_real_fseek
772   (FILE *, file_ptr, int) ATTRIBUTE_HIDDEN;
773 extern FILE *_bfd_real_fopen
774   (const char *, const char *) ATTRIBUTE_HIDDEN;
775 
776 /* List of supported target vectors, and the default vector (if
777    bfd_default_vector[0] is NULL, there is no default).  */
778 extern const bfd_target *const *const bfd_target_vector ATTRIBUTE_HIDDEN;
779 extern const bfd_target *bfd_default_vector[] ATTRIBUTE_HIDDEN;
780 
781 /* List of associated target vectors.  */
782 extern const bfd_target *const *const bfd_associated_vector ATTRIBUTE_HIDDEN;
783 
784 /* Functions shared by the ECOFF and MIPS ELF backends, which have no
785    other common header files.  */
786 
787 struct ecoff_debug_info;
788 struct ecoff_debug_swap;
789 struct ecoff_extr;
790 struct ecoff_find_line;
791 
792 extern void _bfd_ecoff_free_ecoff_debug_info
793   (struct ecoff_debug_info *debug);
794 extern bool _bfd_ecoff_locate_line
795   (bfd *, asection *, bfd_vma, struct ecoff_debug_info * const,
796    const struct ecoff_debug_swap * const, struct ecoff_find_line *,
797    const char **, const char **, unsigned int *) ATTRIBUTE_HIDDEN;
798 extern bool _bfd_ecoff_get_accumulated_pdr
799   (void *, bfd_byte *) ATTRIBUTE_HIDDEN;
800 extern bool _bfd_ecoff_get_accumulated_sym
801   (void *, bfd_byte *) ATTRIBUTE_HIDDEN;
802 extern bool _bfd_ecoff_get_accumulated_ss
803   (void *, bfd_byte *) ATTRIBUTE_HIDDEN;
804 
805 extern bfd_vma _bfd_get_gp_value
806   (bfd *) ATTRIBUTE_HIDDEN;
807 extern void _bfd_set_gp_value
808   (bfd *, bfd_vma) ATTRIBUTE_HIDDEN;
809 
810 /* Function shared by the COFF and ELF SH backends, which have no
811    other common header files.  */
812 
813 #ifndef _bfd_sh_align_load_span
814 extern bool _bfd_sh_align_load_span
815   (bfd *, asection *, bfd_byte *,
816    bool (*) (bfd *, asection *, void *, bfd_byte *, bfd_vma),
817    void *, bfd_vma **, bfd_vma *, bfd_vma, bfd_vma, bool *) ATTRIBUTE_HIDDEN;
818 #endif
819 
820 /* This is the shape of the elements inside the already_linked hash
821    table. It maps a name onto a list of already_linked elements with
822    the same name.  */
823 
824 struct bfd_section_already_linked_hash_entry
825 {
826   struct bfd_hash_entry root;
827   struct bfd_section_already_linked *entry;
828 };
829 
830 struct bfd_section_already_linked
831 {
832   struct bfd_section_already_linked *next;
833   asection *sec;
834 };
835 
836 extern struct bfd_section_already_linked_hash_entry *
837   bfd_section_already_linked_table_lookup (const char *) ATTRIBUTE_HIDDEN;
838 extern bool bfd_section_already_linked_table_insert
839   (struct bfd_section_already_linked_hash_entry *, asection *)
840   ATTRIBUTE_HIDDEN;
841 extern void bfd_section_already_linked_table_traverse
842   (bool (*) (struct bfd_section_already_linked_hash_entry *,
843 		    void *), void *) ATTRIBUTE_HIDDEN;
844 
845 extern bfd_vma _bfd_read_unsigned_leb128
846   (bfd *, bfd_byte *, unsigned int *) ATTRIBUTE_HIDDEN;
847 extern bfd_signed_vma _bfd_read_signed_leb128
848   (bfd *, bfd_byte *, unsigned int *) ATTRIBUTE_HIDDEN;
849 extern bfd_vma _bfd_safe_read_leb128
850   (bfd *, bfd_byte **, bool, const bfd_byte * const) ATTRIBUTE_HIDDEN;
851 extern bfd_byte * _bfd_write_unsigned_leb128
852   (bfd_byte *, bfd_byte *, bfd_vma) ATTRIBUTE_HIDDEN;
853 
854 extern struct bfd_link_info *_bfd_get_link_info (bfd *);
855 
856 extern bool _bfd_link_keep_memory (struct bfd_link_info *)
857   ATTRIBUTE_HIDDEN;
858 
859 #if GCC_VERSION >= 7000
860 #define _bfd_mul_overflow(a, b, res) __builtin_mul_overflow (a, b, res)
861 #else
862 /* Assumes unsigned values.  Careful!  Args evaluated multiple times.  */
863 #define _bfd_mul_overflow(a, b, res) \
864   ((*res) = (a), (*res) *= (b), (b) != 0 && (*res) / (b) != (a))
865 #endif
866 
867 #ifdef __GNUC__
868 #define _bfd_constant_p(v) __builtin_constant_p (v)
869 #else
870 #define _bfd_constant_p(v) 0
871 #endif
872 
873 static inline void *
_bfd_alloc_and_read(bfd * abfd,bfd_size_type asize,bfd_size_type rsize)874 _bfd_alloc_and_read (bfd *abfd, bfd_size_type asize, bfd_size_type rsize)
875 {
876   void *mem;
877   if (!_bfd_constant_p (rsize))
878     {
879       ufile_ptr filesize = bfd_get_file_size (abfd);
880       if (filesize != 0 && rsize > filesize)
881 	{
882 	  bfd_set_error (bfd_error_file_truncated);
883 	  return NULL;
884 	}
885     }
886   mem = bfd_alloc (abfd, asize);
887   if (mem != NULL)
888     {
889       if (bfd_read (mem, rsize, abfd) == rsize)
890 	return mem;
891       bfd_release (abfd, mem);
892     }
893   return NULL;
894 }
895 
896 static inline void *
_bfd_malloc_and_read(bfd * abfd,bfd_size_type asize,bfd_size_type rsize)897 _bfd_malloc_and_read (bfd *abfd, bfd_size_type asize, bfd_size_type rsize)
898 {
899   void *mem;
900   if (!_bfd_constant_p (rsize))
901     {
902       ufile_ptr filesize = bfd_get_file_size (abfd);
903       if (filesize != 0 && rsize > filesize)
904 	{
905 	  bfd_set_error (bfd_error_file_truncated);
906 	  return NULL;
907 	}
908     }
909   mem = bfd_malloc (asize);
910   if (mem != NULL)
911     {
912       if (bfd_read (mem, rsize, abfd) == rsize)
913 	return mem;
914       free (mem);
915     }
916   return NULL;
917 }
918 /* Extracted from libbfd.c.  */
919 void *bfd_malloc (bfd_size_type /*size*/) ATTRIBUTE_HIDDEN;
920 
921 void *bfd_realloc (void */*mem*/, bfd_size_type /*size*/) ATTRIBUTE_HIDDEN;
922 
923 void *bfd_realloc_or_free (void */*mem*/, bfd_size_type /*size*/) ATTRIBUTE_HIDDEN;
924 
925 void *bfd_zmalloc (bfd_size_type /*size*/) ATTRIBUTE_HIDDEN;
926 
927 bool bfd_write_bigendian_4byte_int (bfd *, unsigned int) ATTRIBUTE_HIDDEN;
928 
929 unsigned int bfd_log2 (bfd_vma x) ATTRIBUTE_HIDDEN;
930 
931 /* Extracted from bfd.c.  */
932 void _bfd_clear_error_data (void) ATTRIBUTE_HIDDEN;
933 
934 char *bfd_asprintf (const char *fmt, ...) ATTRIBUTE_HIDDEN;
935 
936 bfd_error_handler_type _bfd_set_error_handler_caching (bfd *) ATTRIBUTE_HIDDEN;
937 
938 const char *_bfd_get_error_program_name (void) ATTRIBUTE_HIDDEN;
939 
940 bool bfd_lock (void) ATTRIBUTE_HIDDEN;
941 
942 bool bfd_unlock (void) ATTRIBUTE_HIDDEN;
943 
944 /* Extracted from bfdio.c.  */
945 struct bfd_iovec
946 {
947   /* To avoid problems with macros, a "b" rather than "f"
948      prefix is prepended to each method name.  */
949   /* Attempt to read/write NBYTES on ABFD's IOSTREAM storing/fetching
950      bytes starting at PTR.  Return the number of bytes actually
951      transfered (a read past end-of-file returns less than NBYTES),
952      or -1 (setting <<bfd_error>>) if an error occurs.  */
953   file_ptr (*bread) (struct bfd *abfd, void *ptr, file_ptr nbytes);
954   file_ptr (*bwrite) (struct bfd *abfd, const void *ptr,
955 		      file_ptr nbytes);
956   /* Return the current IOSTREAM file offset, or -1 (setting <<bfd_error>>
957      if an error occurs.  */
958   file_ptr (*btell) (struct bfd *abfd);
959   /* For the following, on successful completion a value of 0 is returned.
960      Otherwise, a value of -1 is returned (and <<bfd_error>> is set).  */
961   int (*bseek) (struct bfd *abfd, file_ptr offset, int whence);
962   int (*bclose) (struct bfd *abfd);
963   int (*bflush) (struct bfd *abfd);
964   int (*bstat) (struct bfd *abfd, struct stat *sb);
965   /* Mmap a part of the files. ADDR, LEN, PROT, FLAGS and OFFSET are the usual
966      mmap parameter, except that LEN and OFFSET do not need to be page
967      aligned.  Returns (void *)-1 on failure, mmapped address on success.
968      Also write in MAP_ADDR the address of the page aligned buffer and in
969      MAP_LEN the size mapped (a page multiple).  Use unmap with MAP_ADDR and
970      MAP_LEN to unmap.  */
971   void *(*bmmap) (struct bfd *abfd, void *addr, bfd_size_type len,
972 		  int prot, int flags, file_ptr offset,
973 		  void **map_addr, bfd_size_type *map_len);
974 };
975 extern const struct bfd_iovec _bfd_memory_iovec;
976 
977 /* Extracted from archive.c.  */
978 /* Used in generating armaps (archive tables of contents).  */
979 struct orl             /* Output ranlib.  */
980 {
981   char **name;         /* Symbol name.  */
982   union
983   {
984     file_ptr pos;
985     bfd *abfd;
986   } u;                 /* bfd* or file position.  */
987   int namidx;          /* Index into string table.  */
988 };
989 
990 /* Extracted from archures.c.  */
991 extern const bfd_arch_info_type bfd_default_arch_struct;
992 
993 const bfd_arch_info_type *bfd_default_compatible
994    (const bfd_arch_info_type *a, const bfd_arch_info_type *b) ATTRIBUTE_HIDDEN;
995 
996 bool bfd_default_scan
997    (const struct bfd_arch_info *info, const char *string) ATTRIBUTE_HIDDEN;
998 
999 void *bfd_arch_default_fill (bfd_size_type count,
1000     bool is_bigendian,
1001     bool code) ATTRIBUTE_HIDDEN;
1002 
1003 /* Extracted from bfdwin.c.  */
1004 typedef struct _bfd_window_internal
1005 {
1006   struct _bfd_window_internal *next;
1007   void *data;
1008   bfd_size_type size;
1009   int refcount : 31;           /* should be enough...  */
1010   unsigned mapped : 1;         /* 1 = mmap, 0 = malloc */
1011 }
1012 bfd_window_internal;
1013 
1014 /* Extracted from cache.c.  */
1015 bool bfd_cache_init (bfd *abfd) ATTRIBUTE_HIDDEN;
1016 
1017 FILE* bfd_open_file (bfd *abfd) ATTRIBUTE_HIDDEN;
1018 
1019 /* Extracted from hash.c.  */
1020 struct bfd_strtab_hash *_bfd_stringtab_init (void) ATTRIBUTE_HIDDEN;
1021 
1022 struct bfd_strtab_hash *_bfd_xcoff_stringtab_init
1023    (bool /*isxcoff64*/) ATTRIBUTE_HIDDEN;
1024 
1025 void _bfd_stringtab_free (struct bfd_strtab_hash *) ATTRIBUTE_HIDDEN;
1026 
1027 bfd_size_type _bfd_stringtab_add
1028    (struct bfd_strtab_hash *, const char *,
1029     bool /*hash*/, bool /*copy*/) ATTRIBUTE_HIDDEN;
1030 
1031 bfd_size_type _bfd_stringtab_size (struct bfd_strtab_hash *) ATTRIBUTE_HIDDEN;
1032 
1033 bool _bfd_stringtab_emit (bfd *, struct bfd_strtab_hash *) ATTRIBUTE_HIDDEN;
1034 
1035 /* Extracted from linker.c.  */
1036 bool _bfd_generic_verify_endian_match
1037    (bfd *ibfd, struct bfd_link_info *info) ATTRIBUTE_HIDDEN;
1038 
1039 /* Extracted from opncls.c.  */
1040 bfd *_bfd_new_bfd (void) ATTRIBUTE_HIDDEN;
1041 
1042 bfd *_bfd_new_bfd_contained_in (bfd *) ATTRIBUTE_HIDDEN;
1043 
1044 bool _bfd_free_cached_info (bfd *) ATTRIBUTE_HIDDEN;
1045 
1046 /* Extracted from reloc.c.  */
1047 #ifdef _BFD_MAKE_TABLE_bfd_reloc_code_real
1048 
1049 static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@",
1050 
1051   "BFD_RELOC_64",
1052   "BFD_RELOC_32",
1053   "BFD_RELOC_26",
1054   "BFD_RELOC_24",
1055   "BFD_RELOC_16",
1056   "BFD_RELOC_14",
1057   "BFD_RELOC_8",
1058   "BFD_RELOC_64_PCREL",
1059   "BFD_RELOC_32_PCREL",
1060   "BFD_RELOC_24_PCREL",
1061   "BFD_RELOC_16_PCREL",
1062   "BFD_RELOC_12_PCREL",
1063   "BFD_RELOC_8_PCREL",
1064   "BFD_RELOC_32_SECREL",
1065   "BFD_RELOC_16_SECIDX",
1066   "BFD_RELOC_32_GOT_PCREL",
1067   "BFD_RELOC_16_GOT_PCREL",
1068   "BFD_RELOC_8_GOT_PCREL",
1069   "BFD_RELOC_32_GOTOFF",
1070   "BFD_RELOC_16_GOTOFF",
1071   "BFD_RELOC_LO16_GOTOFF",
1072   "BFD_RELOC_HI16_GOTOFF",
1073   "BFD_RELOC_HI16_S_GOTOFF",
1074   "BFD_RELOC_8_GOTOFF",
1075   "BFD_RELOC_64_PLT_PCREL",
1076   "BFD_RELOC_32_PLT_PCREL",
1077   "BFD_RELOC_24_PLT_PCREL",
1078   "BFD_RELOC_16_PLT_PCREL",
1079   "BFD_RELOC_8_PLT_PCREL",
1080   "BFD_RELOC_64_PLTOFF",
1081   "BFD_RELOC_32_PLTOFF",
1082   "BFD_RELOC_16_PLTOFF",
1083   "BFD_RELOC_LO16_PLTOFF",
1084   "BFD_RELOC_HI16_PLTOFF",
1085   "BFD_RELOC_HI16_S_PLTOFF",
1086   "BFD_RELOC_8_PLTOFF",
1087   "BFD_RELOC_SIZE32",
1088   "BFD_RELOC_SIZE64",
1089   "BFD_RELOC_68K_GLOB_DAT",
1090   "BFD_RELOC_68K_JMP_SLOT",
1091   "BFD_RELOC_68K_RELATIVE",
1092   "BFD_RELOC_68K_TLS_GD32",
1093   "BFD_RELOC_68K_TLS_GD16",
1094   "BFD_RELOC_68K_TLS_GD8",
1095   "BFD_RELOC_68K_TLS_LDM32",
1096   "BFD_RELOC_68K_TLS_LDM16",
1097   "BFD_RELOC_68K_TLS_LDM8",
1098   "BFD_RELOC_68K_TLS_LDO32",
1099   "BFD_RELOC_68K_TLS_LDO16",
1100   "BFD_RELOC_68K_TLS_LDO8",
1101   "BFD_RELOC_68K_TLS_IE32",
1102   "BFD_RELOC_68K_TLS_IE16",
1103   "BFD_RELOC_68K_TLS_IE8",
1104   "BFD_RELOC_68K_TLS_LE32",
1105   "BFD_RELOC_68K_TLS_LE16",
1106   "BFD_RELOC_68K_TLS_LE8",
1107   "BFD_RELOC_32_BASEREL",
1108   "BFD_RELOC_16_BASEREL",
1109   "BFD_RELOC_LO16_BASEREL",
1110   "BFD_RELOC_HI16_BASEREL",
1111   "BFD_RELOC_HI16_S_BASEREL",
1112   "BFD_RELOC_8_BASEREL",
1113   "BFD_RELOC_RVA",
1114   "BFD_RELOC_8_FFnn",
1115   "BFD_RELOC_32_PCREL_S2",
1116   "BFD_RELOC_16_PCREL_S2",
1117   "BFD_RELOC_23_PCREL_S2",
1118   "BFD_RELOC_HI22",
1119   "BFD_RELOC_LO10",
1120   "BFD_RELOC_GPREL16",
1121   "BFD_RELOC_GPREL32",
1122   "BFD_RELOC_NONE",
1123   "BFD_RELOC_SPARC_WDISP22",
1124   "BFD_RELOC_SPARC22",
1125   "BFD_RELOC_SPARC13",
1126   "BFD_RELOC_SPARC_GOT10",
1127   "BFD_RELOC_SPARC_GOT13",
1128   "BFD_RELOC_SPARC_GOT22",
1129   "BFD_RELOC_SPARC_PC10",
1130   "BFD_RELOC_SPARC_PC22",
1131   "BFD_RELOC_SPARC_WPLT30",
1132   "BFD_RELOC_SPARC_COPY",
1133   "BFD_RELOC_SPARC_GLOB_DAT",
1134   "BFD_RELOC_SPARC_JMP_SLOT",
1135   "BFD_RELOC_SPARC_RELATIVE",
1136   "BFD_RELOC_SPARC_UA16",
1137   "BFD_RELOC_SPARC_UA32",
1138   "BFD_RELOC_SPARC_UA64",
1139   "BFD_RELOC_SPARC_GOTDATA_HIX22",
1140   "BFD_RELOC_SPARC_GOTDATA_LOX10",
1141   "BFD_RELOC_SPARC_GOTDATA_OP_HIX22",
1142   "BFD_RELOC_SPARC_GOTDATA_OP_LOX10",
1143   "BFD_RELOC_SPARC_GOTDATA_OP",
1144   "BFD_RELOC_SPARC_JMP_IREL",
1145   "BFD_RELOC_SPARC_IRELATIVE",
1146   "BFD_RELOC_SPARC_BASE13",
1147   "BFD_RELOC_SPARC_BASE22",
1148   "BFD_RELOC_SPARC_10",
1149   "BFD_RELOC_SPARC_11",
1150   "BFD_RELOC_SPARC_OLO10",
1151   "BFD_RELOC_SPARC_HH22",
1152   "BFD_RELOC_SPARC_HM10",
1153   "BFD_RELOC_SPARC_LM22",
1154   "BFD_RELOC_SPARC_PC_HH22",
1155   "BFD_RELOC_SPARC_PC_HM10",
1156   "BFD_RELOC_SPARC_PC_LM22",
1157   "BFD_RELOC_SPARC_WDISP16",
1158   "BFD_RELOC_SPARC_WDISP19",
1159   "BFD_RELOC_SPARC_7",
1160   "BFD_RELOC_SPARC_6",
1161   "BFD_RELOC_SPARC_5",
1162   "BFD_RELOC_SPARC_PLT32",
1163   "BFD_RELOC_SPARC_PLT64",
1164   "BFD_RELOC_SPARC_HIX22",
1165   "BFD_RELOC_SPARC_LOX10",
1166   "BFD_RELOC_SPARC_H44",
1167   "BFD_RELOC_SPARC_M44",
1168   "BFD_RELOC_SPARC_L44",
1169   "BFD_RELOC_SPARC_REGISTER",
1170   "BFD_RELOC_SPARC_H34",
1171   "BFD_RELOC_SPARC_SIZE32",
1172   "BFD_RELOC_SPARC_SIZE64",
1173   "BFD_RELOC_SPARC_WDISP10",
1174   "BFD_RELOC_SPARC_REV32",
1175   "BFD_RELOC_SPARC_TLS_GD_HI22",
1176   "BFD_RELOC_SPARC_TLS_GD_LO10",
1177   "BFD_RELOC_SPARC_TLS_GD_ADD",
1178   "BFD_RELOC_SPARC_TLS_GD_CALL",
1179   "BFD_RELOC_SPARC_TLS_LDM_HI22",
1180   "BFD_RELOC_SPARC_TLS_LDM_LO10",
1181   "BFD_RELOC_SPARC_TLS_LDM_ADD",
1182   "BFD_RELOC_SPARC_TLS_LDM_CALL",
1183   "BFD_RELOC_SPARC_TLS_LDO_HIX22",
1184   "BFD_RELOC_SPARC_TLS_LDO_LOX10",
1185   "BFD_RELOC_SPARC_TLS_LDO_ADD",
1186   "BFD_RELOC_SPARC_TLS_IE_HI22",
1187   "BFD_RELOC_SPARC_TLS_IE_LO10",
1188   "BFD_RELOC_SPARC_TLS_IE_LD",
1189   "BFD_RELOC_SPARC_TLS_IE_LDX",
1190   "BFD_RELOC_SPARC_TLS_IE_ADD",
1191   "BFD_RELOC_SPARC_TLS_LE_HIX22",
1192   "BFD_RELOC_SPARC_TLS_LE_LOX10",
1193   "BFD_RELOC_SPARC_TLS_DTPMOD32",
1194   "BFD_RELOC_SPARC_TLS_DTPMOD64",
1195   "BFD_RELOC_SPARC_TLS_DTPOFF32",
1196   "BFD_RELOC_SPARC_TLS_DTPOFF64",
1197   "BFD_RELOC_SPARC_TLS_TPOFF32",
1198   "BFD_RELOC_SPARC_TLS_TPOFF64",
1199   "BFD_RELOC_SPU_IMM7",
1200   "BFD_RELOC_SPU_IMM8",
1201   "BFD_RELOC_SPU_IMM10",
1202   "BFD_RELOC_SPU_IMM10W",
1203   "BFD_RELOC_SPU_IMM16",
1204   "BFD_RELOC_SPU_IMM16W",
1205   "BFD_RELOC_SPU_IMM18",
1206   "BFD_RELOC_SPU_PCREL9a",
1207   "BFD_RELOC_SPU_PCREL9b",
1208   "BFD_RELOC_SPU_PCREL16",
1209   "BFD_RELOC_SPU_LO16",
1210   "BFD_RELOC_SPU_HI16",
1211   "BFD_RELOC_SPU_PPU32",
1212   "BFD_RELOC_SPU_PPU64",
1213   "BFD_RELOC_SPU_ADD_PIC",
1214   "BFD_RELOC_ALPHA_GPDISP_HI16",
1215   "BFD_RELOC_ALPHA_GPDISP_LO16",
1216   "BFD_RELOC_ALPHA_GPDISP",
1217   "BFD_RELOC_ALPHA_LITERAL",
1218   "BFD_RELOC_ALPHA_ELF_LITERAL",
1219   "BFD_RELOC_ALPHA_LITUSE",
1220   "BFD_RELOC_ALPHA_HINT",
1221   "BFD_RELOC_ALPHA_LINKAGE",
1222   "BFD_RELOC_ALPHA_CODEADDR",
1223   "BFD_RELOC_ALPHA_GPREL_HI16",
1224   "BFD_RELOC_ALPHA_GPREL_LO16",
1225   "BFD_RELOC_ALPHA_BRSGP",
1226   "BFD_RELOC_ALPHA_NOP",
1227   "BFD_RELOC_ALPHA_BSR",
1228   "BFD_RELOC_ALPHA_LDA",
1229   "BFD_RELOC_ALPHA_BOH",
1230   "BFD_RELOC_ALPHA_TLSGD",
1231   "BFD_RELOC_ALPHA_TLSLDM",
1232   "BFD_RELOC_ALPHA_DTPMOD64",
1233   "BFD_RELOC_ALPHA_GOTDTPREL16",
1234   "BFD_RELOC_ALPHA_DTPREL64",
1235   "BFD_RELOC_ALPHA_DTPREL_HI16",
1236   "BFD_RELOC_ALPHA_DTPREL_LO16",
1237   "BFD_RELOC_ALPHA_DTPREL16",
1238   "BFD_RELOC_ALPHA_GOTTPREL16",
1239   "BFD_RELOC_ALPHA_TPREL64",
1240   "BFD_RELOC_ALPHA_TPREL_HI16",
1241   "BFD_RELOC_ALPHA_TPREL_LO16",
1242   "BFD_RELOC_ALPHA_TPREL16",
1243   "BFD_RELOC_MIPS_JMP",
1244   "BFD_RELOC_MICROMIPS_JMP",
1245   "BFD_RELOC_MIPS16_JMP",
1246   "BFD_RELOC_MIPS16_GPREL",
1247   "BFD_RELOC_HI16",
1248   "BFD_RELOC_HI16_S",
1249   "BFD_RELOC_LO16",
1250   "BFD_RELOC_HI16_PCREL",
1251   "BFD_RELOC_HI16_S_PCREL",
1252   "BFD_RELOC_LO16_PCREL",
1253   "BFD_RELOC_MIPS16_GOT16",
1254   "BFD_RELOC_MIPS16_CALL16",
1255   "BFD_RELOC_MIPS16_HI16",
1256   "BFD_RELOC_MIPS16_HI16_S",
1257   "BFD_RELOC_MIPS16_LO16",
1258   "BFD_RELOC_MIPS16_TLS_GD",
1259   "BFD_RELOC_MIPS16_TLS_LDM",
1260   "BFD_RELOC_MIPS16_TLS_DTPREL_HI16",
1261   "BFD_RELOC_MIPS16_TLS_DTPREL_LO16",
1262   "BFD_RELOC_MIPS16_TLS_GOTTPREL",
1263   "BFD_RELOC_MIPS16_TLS_TPREL_HI16",
1264   "BFD_RELOC_MIPS16_TLS_TPREL_LO16",
1265   "BFD_RELOC_MIPS_LITERAL",
1266   "BFD_RELOC_MICROMIPS_LITERAL",
1267   "BFD_RELOC_MICROMIPS_7_PCREL_S1",
1268   "BFD_RELOC_MICROMIPS_10_PCREL_S1",
1269   "BFD_RELOC_MICROMIPS_16_PCREL_S1",
1270   "BFD_RELOC_MIPS16_16_PCREL_S1",
1271   "BFD_RELOC_MIPS_21_PCREL_S2",
1272   "BFD_RELOC_MIPS_26_PCREL_S2",
1273   "BFD_RELOC_MIPS_18_PCREL_S3",
1274   "BFD_RELOC_MIPS_19_PCREL_S2",
1275   "BFD_RELOC_MICROMIPS_GPREL16",
1276   "BFD_RELOC_MICROMIPS_HI16",
1277   "BFD_RELOC_MICROMIPS_HI16_S",
1278   "BFD_RELOC_MICROMIPS_LO16",
1279   "BFD_RELOC_MIPS_GOT16",
1280   "BFD_RELOC_MICROMIPS_GOT16",
1281   "BFD_RELOC_MIPS_CALL16",
1282   "BFD_RELOC_MICROMIPS_CALL16",
1283   "BFD_RELOC_MIPS_GOT_HI16",
1284   "BFD_RELOC_MICROMIPS_GOT_HI16",
1285   "BFD_RELOC_MIPS_GOT_LO16",
1286   "BFD_RELOC_MICROMIPS_GOT_LO16",
1287   "BFD_RELOC_MIPS_CALL_HI16",
1288   "BFD_RELOC_MICROMIPS_CALL_HI16",
1289   "BFD_RELOC_MIPS_CALL_LO16",
1290   "BFD_RELOC_MICROMIPS_CALL_LO16",
1291   "BFD_RELOC_MIPS_SUB",
1292   "BFD_RELOC_MICROMIPS_SUB",
1293   "BFD_RELOC_MIPS_GOT_PAGE",
1294   "BFD_RELOC_MICROMIPS_GOT_PAGE",
1295   "BFD_RELOC_MIPS_GOT_OFST",
1296   "BFD_RELOC_MICROMIPS_GOT_OFST",
1297   "BFD_RELOC_MIPS_GOT_DISP",
1298   "BFD_RELOC_MICROMIPS_GOT_DISP",
1299   "BFD_RELOC_MIPS_SHIFT5",
1300   "BFD_RELOC_MIPS_SHIFT6",
1301   "BFD_RELOC_MIPS_INSERT_A",
1302   "BFD_RELOC_MIPS_INSERT_B",
1303   "BFD_RELOC_MIPS_DELETE",
1304   "BFD_RELOC_MIPS_HIGHEST",
1305   "BFD_RELOC_MICROMIPS_HIGHEST",
1306   "BFD_RELOC_MIPS_HIGHER",
1307   "BFD_RELOC_MICROMIPS_HIGHER",
1308   "BFD_RELOC_MIPS_SCN_DISP",
1309   "BFD_RELOC_MICROMIPS_SCN_DISP",
1310   "BFD_RELOC_MIPS_16",
1311   "BFD_RELOC_MIPS_RELGOT",
1312   "BFD_RELOC_MIPS_JALR",
1313   "BFD_RELOC_MICROMIPS_JALR",
1314   "BFD_RELOC_MIPS_TLS_DTPMOD32",
1315   "BFD_RELOC_MIPS_TLS_DTPREL32",
1316   "BFD_RELOC_MIPS_TLS_DTPMOD64",
1317   "BFD_RELOC_MIPS_TLS_DTPREL64",
1318   "BFD_RELOC_MIPS_TLS_GD",
1319   "BFD_RELOC_MICROMIPS_TLS_GD",
1320   "BFD_RELOC_MIPS_TLS_LDM",
1321   "BFD_RELOC_MICROMIPS_TLS_LDM",
1322   "BFD_RELOC_MIPS_TLS_DTPREL_HI16",
1323   "BFD_RELOC_MICROMIPS_TLS_DTPREL_HI16",
1324   "BFD_RELOC_MIPS_TLS_DTPREL_LO16",
1325   "BFD_RELOC_MICROMIPS_TLS_DTPREL_LO16",
1326   "BFD_RELOC_MIPS_TLS_GOTTPREL",
1327   "BFD_RELOC_MICROMIPS_TLS_GOTTPREL",
1328   "BFD_RELOC_MIPS_TLS_TPREL32",
1329   "BFD_RELOC_MIPS_TLS_TPREL64",
1330   "BFD_RELOC_MIPS_TLS_TPREL_HI16",
1331   "BFD_RELOC_MICROMIPS_TLS_TPREL_HI16",
1332   "BFD_RELOC_MIPS_TLS_TPREL_LO16",
1333   "BFD_RELOC_MICROMIPS_TLS_TPREL_LO16",
1334   "BFD_RELOC_MIPS_EH",
1335   "BFD_RELOC_MIPS_COPY",
1336   "BFD_RELOC_MIPS_JUMP_SLOT",
1337   "BFD_RELOC_MOXIE_10_PCREL",
1338   "BFD_RELOC_FT32_10",
1339   "BFD_RELOC_FT32_20",
1340   "BFD_RELOC_FT32_17",
1341   "BFD_RELOC_FT32_18",
1342   "BFD_RELOC_FT32_RELAX",
1343   "BFD_RELOC_FT32_SC0",
1344   "BFD_RELOC_FT32_SC1",
1345   "BFD_RELOC_FT32_15",
1346   "BFD_RELOC_FT32_DIFF32",
1347   "BFD_RELOC_FRV_LABEL16",
1348   "BFD_RELOC_FRV_LABEL24",
1349   "BFD_RELOC_FRV_LO16",
1350   "BFD_RELOC_FRV_HI16",
1351   "BFD_RELOC_FRV_GPREL12",
1352   "BFD_RELOC_FRV_GPRELU12",
1353   "BFD_RELOC_FRV_GPREL32",
1354   "BFD_RELOC_FRV_GPRELHI",
1355   "BFD_RELOC_FRV_GPRELLO",
1356   "BFD_RELOC_FRV_GOT12",
1357   "BFD_RELOC_FRV_GOTHI",
1358   "BFD_RELOC_FRV_GOTLO",
1359   "BFD_RELOC_FRV_FUNCDESC",
1360   "BFD_RELOC_FRV_FUNCDESC_GOT12",
1361   "BFD_RELOC_FRV_FUNCDESC_GOTHI",
1362   "BFD_RELOC_FRV_FUNCDESC_GOTLO",
1363   "BFD_RELOC_FRV_FUNCDESC_VALUE",
1364   "BFD_RELOC_FRV_FUNCDESC_GOTOFF12",
1365   "BFD_RELOC_FRV_FUNCDESC_GOTOFFHI",
1366   "BFD_RELOC_FRV_FUNCDESC_GOTOFFLO",
1367   "BFD_RELOC_FRV_GOTOFF12",
1368   "BFD_RELOC_FRV_GOTOFFHI",
1369   "BFD_RELOC_FRV_GOTOFFLO",
1370   "BFD_RELOC_FRV_GETTLSOFF",
1371   "BFD_RELOC_FRV_TLSDESC_VALUE",
1372   "BFD_RELOC_FRV_GOTTLSDESC12",
1373   "BFD_RELOC_FRV_GOTTLSDESCHI",
1374   "BFD_RELOC_FRV_GOTTLSDESCLO",
1375   "BFD_RELOC_FRV_TLSMOFF12",
1376   "BFD_RELOC_FRV_TLSMOFFHI",
1377   "BFD_RELOC_FRV_TLSMOFFLO",
1378   "BFD_RELOC_FRV_GOTTLSOFF12",
1379   "BFD_RELOC_FRV_GOTTLSOFFHI",
1380   "BFD_RELOC_FRV_GOTTLSOFFLO",
1381   "BFD_RELOC_FRV_TLSOFF",
1382   "BFD_RELOC_FRV_TLSDESC_RELAX",
1383   "BFD_RELOC_FRV_GETTLSOFF_RELAX",
1384   "BFD_RELOC_FRV_TLSOFF_RELAX",
1385   "BFD_RELOC_FRV_TLSMOFF",
1386   "BFD_RELOC_MN10300_GOTOFF24",
1387   "BFD_RELOC_MN10300_GOT32",
1388   "BFD_RELOC_MN10300_GOT24",
1389   "BFD_RELOC_MN10300_GOT16",
1390   "BFD_RELOC_MN10300_COPY",
1391   "BFD_RELOC_MN10300_GLOB_DAT",
1392   "BFD_RELOC_MN10300_JMP_SLOT",
1393   "BFD_RELOC_MN10300_RELATIVE",
1394   "BFD_RELOC_MN10300_SYM_DIFF",
1395   "BFD_RELOC_MN10300_ALIGN",
1396   "BFD_RELOC_MN10300_TLS_GD",
1397   "BFD_RELOC_MN10300_TLS_LD",
1398   "BFD_RELOC_MN10300_TLS_LDO",
1399   "BFD_RELOC_MN10300_TLS_GOTIE",
1400   "BFD_RELOC_MN10300_TLS_IE",
1401   "BFD_RELOC_MN10300_TLS_LE",
1402   "BFD_RELOC_MN10300_TLS_DTPMOD",
1403   "BFD_RELOC_MN10300_TLS_DTPOFF",
1404   "BFD_RELOC_MN10300_TLS_TPOFF",
1405   "BFD_RELOC_MN10300_32_PCREL",
1406   "BFD_RELOC_MN10300_16_PCREL",
1407   "BFD_RELOC_386_GOT32",
1408   "BFD_RELOC_386_PLT32",
1409   "BFD_RELOC_386_COPY",
1410   "BFD_RELOC_386_GLOB_DAT",
1411   "BFD_RELOC_386_JUMP_SLOT",
1412   "BFD_RELOC_386_RELATIVE",
1413   "BFD_RELOC_386_GOTOFF",
1414   "BFD_RELOC_386_GOTPC",
1415   "BFD_RELOC_386_TLS_TPOFF",
1416   "BFD_RELOC_386_TLS_IE",
1417   "BFD_RELOC_386_TLS_GOTIE",
1418   "BFD_RELOC_386_TLS_LE",
1419   "BFD_RELOC_386_TLS_GD",
1420   "BFD_RELOC_386_TLS_LDM",
1421   "BFD_RELOC_386_TLS_LDO_32",
1422   "BFD_RELOC_386_TLS_IE_32",
1423   "BFD_RELOC_386_TLS_LE_32",
1424   "BFD_RELOC_386_TLS_DTPMOD32",
1425   "BFD_RELOC_386_TLS_DTPOFF32",
1426   "BFD_RELOC_386_TLS_TPOFF32",
1427   "BFD_RELOC_386_TLS_GOTDESC",
1428   "BFD_RELOC_386_TLS_DESC_CALL",
1429   "BFD_RELOC_386_TLS_DESC",
1430   "BFD_RELOC_386_IRELATIVE",
1431   "BFD_RELOC_386_GOT32X",
1432   "BFD_RELOC_X86_64_GOT32",
1433   "BFD_RELOC_X86_64_PLT32",
1434   "BFD_RELOC_X86_64_COPY",
1435   "BFD_RELOC_X86_64_GLOB_DAT",
1436   "BFD_RELOC_X86_64_JUMP_SLOT",
1437   "BFD_RELOC_X86_64_RELATIVE",
1438   "BFD_RELOC_X86_64_GOTPCREL",
1439   "BFD_RELOC_X86_64_32S",
1440   "BFD_RELOC_X86_64_DTPMOD64",
1441   "BFD_RELOC_X86_64_DTPOFF64",
1442   "BFD_RELOC_X86_64_TPOFF64",
1443   "BFD_RELOC_X86_64_TLSGD",
1444   "BFD_RELOC_X86_64_TLSLD",
1445   "BFD_RELOC_X86_64_DTPOFF32",
1446   "BFD_RELOC_X86_64_GOTTPOFF",
1447   "BFD_RELOC_X86_64_TPOFF32",
1448   "BFD_RELOC_X86_64_GOTOFF64",
1449   "BFD_RELOC_X86_64_GOTPC32",
1450   "BFD_RELOC_X86_64_GOT64",
1451   "BFD_RELOC_X86_64_GOTPCREL64",
1452   "BFD_RELOC_X86_64_GOTPC64",
1453   "BFD_RELOC_X86_64_GOTPLT64",
1454   "BFD_RELOC_X86_64_PLTOFF64",
1455   "BFD_RELOC_X86_64_GOTPC32_TLSDESC",
1456   "BFD_RELOC_X86_64_TLSDESC_CALL",
1457   "BFD_RELOC_X86_64_TLSDESC",
1458   "BFD_RELOC_X86_64_IRELATIVE",
1459   "BFD_RELOC_X86_64_PC32_BND",
1460   "BFD_RELOC_X86_64_PLT32_BND",
1461   "BFD_RELOC_X86_64_GOTPCRELX",
1462   "BFD_RELOC_X86_64_REX_GOTPCRELX",
1463   "BFD_RELOC_X86_64_CODE_4_GOTPCRELX",
1464   "BFD_RELOC_X86_64_CODE_4_GOTTPOFF",
1465   "BFD_RELOC_X86_64_CODE_4_GOTPC32_TLSDESC",
1466   "BFD_RELOC_NS32K_IMM_8",
1467   "BFD_RELOC_NS32K_IMM_16",
1468   "BFD_RELOC_NS32K_IMM_32",
1469   "BFD_RELOC_NS32K_IMM_8_PCREL",
1470   "BFD_RELOC_NS32K_IMM_16_PCREL",
1471   "BFD_RELOC_NS32K_IMM_32_PCREL",
1472   "BFD_RELOC_NS32K_DISP_8",
1473   "BFD_RELOC_NS32K_DISP_16",
1474   "BFD_RELOC_NS32K_DISP_32",
1475   "BFD_RELOC_NS32K_DISP_8_PCREL",
1476   "BFD_RELOC_NS32K_DISP_16_PCREL",
1477   "BFD_RELOC_NS32K_DISP_32_PCREL",
1478   "BFD_RELOC_PDP11_DISP_8_PCREL",
1479   "BFD_RELOC_PDP11_DISP_6_PCREL",
1480   "BFD_RELOC_PJ_CODE_HI16",
1481   "BFD_RELOC_PJ_CODE_LO16",
1482   "BFD_RELOC_PJ_CODE_DIR16",
1483   "BFD_RELOC_PJ_CODE_DIR32",
1484   "BFD_RELOC_PJ_CODE_REL16",
1485   "BFD_RELOC_PJ_CODE_REL32",
1486   "BFD_RELOC_PPC_B26",
1487   "BFD_RELOC_PPC_BA26",
1488   "BFD_RELOC_PPC_TOC16",
1489   "BFD_RELOC_PPC_TOC16_LO",
1490   "BFD_RELOC_PPC_TOC16_HI",
1491   "BFD_RELOC_PPC_B16",
1492   "BFD_RELOC_PPC_B16_BRTAKEN",
1493   "BFD_RELOC_PPC_B16_BRNTAKEN",
1494   "BFD_RELOC_PPC_BA16",
1495   "BFD_RELOC_PPC_BA16_BRTAKEN",
1496   "BFD_RELOC_PPC_BA16_BRNTAKEN",
1497   "BFD_RELOC_PPC_COPY",
1498   "BFD_RELOC_PPC_GLOB_DAT",
1499   "BFD_RELOC_PPC_JMP_SLOT",
1500   "BFD_RELOC_PPC_RELATIVE",
1501   "BFD_RELOC_PPC_LOCAL24PC",
1502   "BFD_RELOC_PPC_EMB_NADDR32",
1503   "BFD_RELOC_PPC_EMB_NADDR16",
1504   "BFD_RELOC_PPC_EMB_NADDR16_LO",
1505   "BFD_RELOC_PPC_EMB_NADDR16_HI",
1506   "BFD_RELOC_PPC_EMB_NADDR16_HA",
1507   "BFD_RELOC_PPC_EMB_SDAI16",
1508   "BFD_RELOC_PPC_EMB_SDA2I16",
1509   "BFD_RELOC_PPC_EMB_SDA2REL",
1510   "BFD_RELOC_PPC_EMB_SDA21",
1511   "BFD_RELOC_PPC_EMB_MRKREF",
1512   "BFD_RELOC_PPC_EMB_RELSEC16",
1513   "BFD_RELOC_PPC_EMB_RELST_LO",
1514   "BFD_RELOC_PPC_EMB_RELST_HI",
1515   "BFD_RELOC_PPC_EMB_RELST_HA",
1516   "BFD_RELOC_PPC_EMB_BIT_FLD",
1517   "BFD_RELOC_PPC_EMB_RELSDA",
1518   "BFD_RELOC_PPC_VLE_REL8",
1519   "BFD_RELOC_PPC_VLE_REL15",
1520   "BFD_RELOC_PPC_VLE_REL24",
1521   "BFD_RELOC_PPC_VLE_LO16A",
1522   "BFD_RELOC_PPC_VLE_LO16D",
1523   "BFD_RELOC_PPC_VLE_HI16A",
1524   "BFD_RELOC_PPC_VLE_HI16D",
1525   "BFD_RELOC_PPC_VLE_HA16A",
1526   "BFD_RELOC_PPC_VLE_HA16D",
1527   "BFD_RELOC_PPC_VLE_SDA21",
1528   "BFD_RELOC_PPC_VLE_SDA21_LO",
1529   "BFD_RELOC_PPC_VLE_SDAREL_LO16A",
1530   "BFD_RELOC_PPC_VLE_SDAREL_LO16D",
1531   "BFD_RELOC_PPC_VLE_SDAREL_HI16A",
1532   "BFD_RELOC_PPC_VLE_SDAREL_HI16D",
1533   "BFD_RELOC_PPC_VLE_SDAREL_HA16A",
1534   "BFD_RELOC_PPC_VLE_SDAREL_HA16D",
1535   "BFD_RELOC_PPC_16DX_HA",
1536   "BFD_RELOC_PPC_REL16DX_HA",
1537   "BFD_RELOC_PPC_NEG",
1538   "BFD_RELOC_PPC64_HIGHER",
1539   "BFD_RELOC_PPC64_HIGHER_S",
1540   "BFD_RELOC_PPC64_HIGHEST",
1541   "BFD_RELOC_PPC64_HIGHEST_S",
1542   "BFD_RELOC_PPC64_TOC16_LO",
1543   "BFD_RELOC_PPC64_TOC16_HI",
1544   "BFD_RELOC_PPC64_TOC16_HA",
1545   "BFD_RELOC_PPC64_TOC",
1546   "BFD_RELOC_PPC64_PLTGOT16",
1547   "BFD_RELOC_PPC64_PLTGOT16_LO",
1548   "BFD_RELOC_PPC64_PLTGOT16_HI",
1549   "BFD_RELOC_PPC64_PLTGOT16_HA",
1550   "BFD_RELOC_PPC64_ADDR16_DS",
1551   "BFD_RELOC_PPC64_ADDR16_LO_DS",
1552   "BFD_RELOC_PPC64_GOT16_DS",
1553   "BFD_RELOC_PPC64_GOT16_LO_DS",
1554   "BFD_RELOC_PPC64_PLT16_LO_DS",
1555   "BFD_RELOC_PPC64_SECTOFF_DS",
1556   "BFD_RELOC_PPC64_SECTOFF_LO_DS",
1557   "BFD_RELOC_PPC64_TOC16_DS",
1558   "BFD_RELOC_PPC64_TOC16_LO_DS",
1559   "BFD_RELOC_PPC64_PLTGOT16_DS",
1560   "BFD_RELOC_PPC64_PLTGOT16_LO_DS",
1561   "BFD_RELOC_PPC64_ADDR16_HIGH",
1562   "BFD_RELOC_PPC64_ADDR16_HIGHA",
1563   "BFD_RELOC_PPC64_REL16_HIGH",
1564   "BFD_RELOC_PPC64_REL16_HIGHA",
1565   "BFD_RELOC_PPC64_REL16_HIGHER",
1566   "BFD_RELOC_PPC64_REL16_HIGHERA",
1567   "BFD_RELOC_PPC64_REL16_HIGHEST",
1568   "BFD_RELOC_PPC64_REL16_HIGHESTA",
1569   "BFD_RELOC_PPC64_ADDR64_LOCAL",
1570   "BFD_RELOC_PPC64_ENTRY",
1571   "BFD_RELOC_PPC64_REL24_NOTOC",
1572   "BFD_RELOC_PPC64_REL24_P9NOTOC",
1573   "BFD_RELOC_PPC64_D34",
1574   "BFD_RELOC_PPC64_D34_LO",
1575   "BFD_RELOC_PPC64_D34_HI30",
1576   "BFD_RELOC_PPC64_D34_HA30",
1577   "BFD_RELOC_PPC64_PCREL34",
1578   "BFD_RELOC_PPC64_GOT_PCREL34",
1579   "BFD_RELOC_PPC64_PLT_PCREL34",
1580   "BFD_RELOC_PPC64_ADDR16_HIGHER34",
1581   "BFD_RELOC_PPC64_ADDR16_HIGHERA34",
1582   "BFD_RELOC_PPC64_ADDR16_HIGHEST34",
1583   "BFD_RELOC_PPC64_ADDR16_HIGHESTA34",
1584   "BFD_RELOC_PPC64_REL16_HIGHER34",
1585   "BFD_RELOC_PPC64_REL16_HIGHERA34",
1586   "BFD_RELOC_PPC64_REL16_HIGHEST34",
1587   "BFD_RELOC_PPC64_REL16_HIGHESTA34",
1588   "BFD_RELOC_PPC64_D28",
1589   "BFD_RELOC_PPC64_PCREL28",
1590   "BFD_RELOC_PPC_TLS",
1591   "BFD_RELOC_PPC_TLSGD",
1592   "BFD_RELOC_PPC_TLSLD",
1593   "BFD_RELOC_PPC_TLSLE",
1594   "BFD_RELOC_PPC_TLSIE",
1595   "BFD_RELOC_PPC_TLSM",
1596   "BFD_RELOC_PPC_TLSML",
1597   "BFD_RELOC_PPC_DTPMOD",
1598   "BFD_RELOC_PPC_TPREL16",
1599   "BFD_RELOC_PPC_TPREL16_LO",
1600   "BFD_RELOC_PPC_TPREL16_HI",
1601   "BFD_RELOC_PPC_TPREL16_HA",
1602   "BFD_RELOC_PPC_TPREL",
1603   "BFD_RELOC_PPC_DTPREL16",
1604   "BFD_RELOC_PPC_DTPREL16_LO",
1605   "BFD_RELOC_PPC_DTPREL16_HI",
1606   "BFD_RELOC_PPC_DTPREL16_HA",
1607   "BFD_RELOC_PPC_DTPREL",
1608   "BFD_RELOC_PPC_GOT_TLSGD16",
1609   "BFD_RELOC_PPC_GOT_TLSGD16_LO",
1610   "BFD_RELOC_PPC_GOT_TLSGD16_HI",
1611   "BFD_RELOC_PPC_GOT_TLSGD16_HA",
1612   "BFD_RELOC_PPC_GOT_TLSLD16",
1613   "BFD_RELOC_PPC_GOT_TLSLD16_LO",
1614   "BFD_RELOC_PPC_GOT_TLSLD16_HI",
1615   "BFD_RELOC_PPC_GOT_TLSLD16_HA",
1616   "BFD_RELOC_PPC_GOT_TPREL16",
1617   "BFD_RELOC_PPC_GOT_TPREL16_LO",
1618   "BFD_RELOC_PPC_GOT_TPREL16_HI",
1619   "BFD_RELOC_PPC_GOT_TPREL16_HA",
1620   "BFD_RELOC_PPC_GOT_DTPREL16",
1621   "BFD_RELOC_PPC_GOT_DTPREL16_LO",
1622   "BFD_RELOC_PPC_GOT_DTPREL16_HI",
1623   "BFD_RELOC_PPC_GOT_DTPREL16_HA",
1624   "BFD_RELOC_PPC64_TLSGD",
1625   "BFD_RELOC_PPC64_TLSLD",
1626   "BFD_RELOC_PPC64_TLSLE",
1627   "BFD_RELOC_PPC64_TLSIE",
1628   "BFD_RELOC_PPC64_TLSM",
1629   "BFD_RELOC_PPC64_TLSML",
1630   "BFD_RELOC_PPC64_TPREL16_DS",
1631   "BFD_RELOC_PPC64_TPREL16_LO_DS",
1632   "BFD_RELOC_PPC64_TPREL16_HIGH",
1633   "BFD_RELOC_PPC64_TPREL16_HIGHA",
1634   "BFD_RELOC_PPC64_TPREL16_HIGHER",
1635   "BFD_RELOC_PPC64_TPREL16_HIGHERA",
1636   "BFD_RELOC_PPC64_TPREL16_HIGHEST",
1637   "BFD_RELOC_PPC64_TPREL16_HIGHESTA",
1638   "BFD_RELOC_PPC64_DTPREL16_DS",
1639   "BFD_RELOC_PPC64_DTPREL16_LO_DS",
1640   "BFD_RELOC_PPC64_DTPREL16_HIGH",
1641   "BFD_RELOC_PPC64_DTPREL16_HIGHA",
1642   "BFD_RELOC_PPC64_DTPREL16_HIGHER",
1643   "BFD_RELOC_PPC64_DTPREL16_HIGHERA",
1644   "BFD_RELOC_PPC64_DTPREL16_HIGHEST",
1645   "BFD_RELOC_PPC64_DTPREL16_HIGHESTA",
1646   "BFD_RELOC_PPC64_TPREL34",
1647   "BFD_RELOC_PPC64_DTPREL34",
1648   "BFD_RELOC_PPC64_GOT_TLSGD_PCREL34",
1649   "BFD_RELOC_PPC64_GOT_TLSLD_PCREL34",
1650   "BFD_RELOC_PPC64_GOT_TPREL_PCREL34",
1651   "BFD_RELOC_PPC64_GOT_DTPREL_PCREL34",
1652   "BFD_RELOC_PPC64_TLS_PCREL",
1653   "BFD_RELOC_I370_D12",
1654   "BFD_RELOC_CTOR",
1655   "BFD_RELOC_ARM_PCREL_BRANCH",
1656   "BFD_RELOC_ARM_PCREL_BLX",
1657   "BFD_RELOC_THUMB_PCREL_BLX",
1658   "BFD_RELOC_ARM_PCREL_CALL",
1659   "BFD_RELOC_ARM_PCREL_JUMP",
1660   "BFD_RELOC_THUMB_PCREL_BRANCH5",
1661   "BFD_RELOC_THUMB_PCREL_BFCSEL",
1662   "BFD_RELOC_ARM_THUMB_BF17",
1663   "BFD_RELOC_ARM_THUMB_BF13",
1664   "BFD_RELOC_ARM_THUMB_BF19",
1665   "BFD_RELOC_ARM_THUMB_LOOP12",
1666   "BFD_RELOC_THUMB_PCREL_BRANCH7",
1667   "BFD_RELOC_THUMB_PCREL_BRANCH9",
1668   "BFD_RELOC_THUMB_PCREL_BRANCH12",
1669   "BFD_RELOC_THUMB_PCREL_BRANCH20",
1670   "BFD_RELOC_THUMB_PCREL_BRANCH23",
1671   "BFD_RELOC_THUMB_PCREL_BRANCH25",
1672   "BFD_RELOC_ARM_OFFSET_IMM",
1673   "BFD_RELOC_ARM_THUMB_OFFSET",
1674   "BFD_RELOC_ARM_TARGET1",
1675   "BFD_RELOC_ARM_ROSEGREL32",
1676   "BFD_RELOC_ARM_SBREL32",
1677   "BFD_RELOC_ARM_TARGET2",
1678   "BFD_RELOC_ARM_PREL31",
1679   "BFD_RELOC_ARM_MOVW",
1680   "BFD_RELOC_ARM_MOVT",
1681   "BFD_RELOC_ARM_MOVW_PCREL",
1682   "BFD_RELOC_ARM_MOVT_PCREL",
1683   "BFD_RELOC_ARM_THUMB_MOVW",
1684   "BFD_RELOC_ARM_THUMB_MOVT",
1685   "BFD_RELOC_ARM_THUMB_MOVW_PCREL",
1686   "BFD_RELOC_ARM_THUMB_MOVT_PCREL",
1687   "BFD_RELOC_ARM_GOTFUNCDESC",
1688   "BFD_RELOC_ARM_GOTOFFFUNCDESC",
1689   "BFD_RELOC_ARM_FUNCDESC",
1690   "BFD_RELOC_ARM_FUNCDESC_VALUE",
1691   "BFD_RELOC_ARM_TLS_GD32_FDPIC",
1692   "BFD_RELOC_ARM_TLS_LDM32_FDPIC",
1693   "BFD_RELOC_ARM_TLS_IE32_FDPIC",
1694   "BFD_RELOC_ARM_JUMP_SLOT",
1695   "BFD_RELOC_ARM_GLOB_DAT",
1696   "BFD_RELOC_ARM_GOT32",
1697   "BFD_RELOC_ARM_PLT32",
1698   "BFD_RELOC_ARM_RELATIVE",
1699   "BFD_RELOC_ARM_GOTOFF",
1700   "BFD_RELOC_ARM_GOTPC",
1701   "BFD_RELOC_ARM_GOT_PREL",
1702   "BFD_RELOC_ARM_TLS_GD32",
1703   "BFD_RELOC_ARM_TLS_LDO32",
1704   "BFD_RELOC_ARM_TLS_LDM32",
1705   "BFD_RELOC_ARM_TLS_DTPOFF32",
1706   "BFD_RELOC_ARM_TLS_DTPMOD32",
1707   "BFD_RELOC_ARM_TLS_TPOFF32",
1708   "BFD_RELOC_ARM_TLS_IE32",
1709   "BFD_RELOC_ARM_TLS_LE32",
1710   "BFD_RELOC_ARM_TLS_GOTDESC",
1711   "BFD_RELOC_ARM_TLS_CALL",
1712   "BFD_RELOC_ARM_THM_TLS_CALL",
1713   "BFD_RELOC_ARM_TLS_DESCSEQ",
1714   "BFD_RELOC_ARM_THM_TLS_DESCSEQ",
1715   "BFD_RELOC_ARM_TLS_DESC",
1716   "BFD_RELOC_ARM_ALU_PC_G0_NC",
1717   "BFD_RELOC_ARM_ALU_PC_G0",
1718   "BFD_RELOC_ARM_ALU_PC_G1_NC",
1719   "BFD_RELOC_ARM_ALU_PC_G1",
1720   "BFD_RELOC_ARM_ALU_PC_G2",
1721   "BFD_RELOC_ARM_LDR_PC_G0",
1722   "BFD_RELOC_ARM_LDR_PC_G1",
1723   "BFD_RELOC_ARM_LDR_PC_G2",
1724   "BFD_RELOC_ARM_LDRS_PC_G0",
1725   "BFD_RELOC_ARM_LDRS_PC_G1",
1726   "BFD_RELOC_ARM_LDRS_PC_G2",
1727   "BFD_RELOC_ARM_LDC_PC_G0",
1728   "BFD_RELOC_ARM_LDC_PC_G1",
1729   "BFD_RELOC_ARM_LDC_PC_G2",
1730   "BFD_RELOC_ARM_ALU_SB_G0_NC",
1731   "BFD_RELOC_ARM_ALU_SB_G0",
1732   "BFD_RELOC_ARM_ALU_SB_G1_NC",
1733   "BFD_RELOC_ARM_ALU_SB_G1",
1734   "BFD_RELOC_ARM_ALU_SB_G2",
1735   "BFD_RELOC_ARM_LDR_SB_G0",
1736   "BFD_RELOC_ARM_LDR_SB_G1",
1737   "BFD_RELOC_ARM_LDR_SB_G2",
1738   "BFD_RELOC_ARM_LDRS_SB_G0",
1739   "BFD_RELOC_ARM_LDRS_SB_G1",
1740   "BFD_RELOC_ARM_LDRS_SB_G2",
1741   "BFD_RELOC_ARM_LDC_SB_G0",
1742   "BFD_RELOC_ARM_LDC_SB_G1",
1743   "BFD_RELOC_ARM_LDC_SB_G2",
1744   "BFD_RELOC_ARM_V4BX",
1745   "BFD_RELOC_ARM_IRELATIVE",
1746   "BFD_RELOC_ARM_THUMB_ALU_ABS_G0_NC",
1747   "BFD_RELOC_ARM_THUMB_ALU_ABS_G1_NC",
1748   "BFD_RELOC_ARM_THUMB_ALU_ABS_G2_NC",
1749   "BFD_RELOC_ARM_THUMB_ALU_ABS_G3_NC",
1750   "BFD_RELOC_ARM_IMMEDIATE",
1751   "BFD_RELOC_ARM_ADRL_IMMEDIATE",
1752   "BFD_RELOC_ARM_T32_IMMEDIATE",
1753   "BFD_RELOC_ARM_T32_ADD_IMM",
1754   "BFD_RELOC_ARM_T32_IMM12",
1755   "BFD_RELOC_ARM_T32_ADD_PC12",
1756   "BFD_RELOC_ARM_SHIFT_IMM",
1757   "BFD_RELOC_ARM_SMC",
1758   "BFD_RELOC_ARM_HVC",
1759   "BFD_RELOC_ARM_SWI",
1760   "BFD_RELOC_ARM_MULTI",
1761   "BFD_RELOC_ARM_CP_OFF_IMM",
1762   "BFD_RELOC_ARM_CP_OFF_IMM_S2",
1763   "BFD_RELOC_ARM_T32_CP_OFF_IMM",
1764   "BFD_RELOC_ARM_T32_CP_OFF_IMM_S2",
1765   "BFD_RELOC_ARM_T32_VLDR_VSTR_OFF_IMM",
1766   "BFD_RELOC_ARM_ADR_IMM",
1767   "BFD_RELOC_ARM_LDR_IMM",
1768   "BFD_RELOC_ARM_LITERAL",
1769   "BFD_RELOC_ARM_IN_POOL",
1770   "BFD_RELOC_ARM_OFFSET_IMM8",
1771   "BFD_RELOC_ARM_T32_OFFSET_U8",
1772   "BFD_RELOC_ARM_T32_OFFSET_IMM",
1773   "BFD_RELOC_ARM_HWLITERAL",
1774   "BFD_RELOC_ARM_THUMB_ADD",
1775   "BFD_RELOC_ARM_THUMB_IMM",
1776   "BFD_RELOC_ARM_THUMB_SHIFT",
1777   "BFD_RELOC_SH_PCDISP8BY2",
1778   "BFD_RELOC_SH_PCDISP12BY2",
1779   "BFD_RELOC_SH_IMM3",
1780   "BFD_RELOC_SH_IMM3U",
1781   "BFD_RELOC_SH_DISP12",
1782   "BFD_RELOC_SH_DISP12BY2",
1783   "BFD_RELOC_SH_DISP12BY4",
1784   "BFD_RELOC_SH_DISP12BY8",
1785   "BFD_RELOC_SH_DISP20",
1786   "BFD_RELOC_SH_DISP20BY8",
1787   "BFD_RELOC_SH_IMM4",
1788   "BFD_RELOC_SH_IMM4BY2",
1789   "BFD_RELOC_SH_IMM4BY4",
1790   "BFD_RELOC_SH_IMM8",
1791   "BFD_RELOC_SH_IMM8BY2",
1792   "BFD_RELOC_SH_IMM8BY4",
1793   "BFD_RELOC_SH_PCRELIMM8BY2",
1794   "BFD_RELOC_SH_PCRELIMM8BY4",
1795   "BFD_RELOC_SH_SWITCH16",
1796   "BFD_RELOC_SH_SWITCH32",
1797   "BFD_RELOC_SH_USES",
1798   "BFD_RELOC_SH_COUNT",
1799   "BFD_RELOC_SH_ALIGN",
1800   "BFD_RELOC_SH_CODE",
1801   "BFD_RELOC_SH_DATA",
1802   "BFD_RELOC_SH_LABEL",
1803   "BFD_RELOC_SH_LOOP_START",
1804   "BFD_RELOC_SH_LOOP_END",
1805   "BFD_RELOC_SH_COPY",
1806   "BFD_RELOC_SH_GLOB_DAT",
1807   "BFD_RELOC_SH_JMP_SLOT",
1808   "BFD_RELOC_SH_RELATIVE",
1809   "BFD_RELOC_SH_GOTPC",
1810   "BFD_RELOC_SH_GOT_LOW16",
1811   "BFD_RELOC_SH_GOT_MEDLOW16",
1812   "BFD_RELOC_SH_GOT_MEDHI16",
1813   "BFD_RELOC_SH_GOT_HI16",
1814   "BFD_RELOC_SH_GOTPLT_LOW16",
1815   "BFD_RELOC_SH_GOTPLT_MEDLOW16",
1816   "BFD_RELOC_SH_GOTPLT_MEDHI16",
1817   "BFD_RELOC_SH_GOTPLT_HI16",
1818   "BFD_RELOC_SH_PLT_LOW16",
1819   "BFD_RELOC_SH_PLT_MEDLOW16",
1820   "BFD_RELOC_SH_PLT_MEDHI16",
1821   "BFD_RELOC_SH_PLT_HI16",
1822   "BFD_RELOC_SH_GOTOFF_LOW16",
1823   "BFD_RELOC_SH_GOTOFF_MEDLOW16",
1824   "BFD_RELOC_SH_GOTOFF_MEDHI16",
1825   "BFD_RELOC_SH_GOTOFF_HI16",
1826   "BFD_RELOC_SH_GOTPC_LOW16",
1827   "BFD_RELOC_SH_GOTPC_MEDLOW16",
1828   "BFD_RELOC_SH_GOTPC_MEDHI16",
1829   "BFD_RELOC_SH_GOTPC_HI16",
1830   "BFD_RELOC_SH_COPY64",
1831   "BFD_RELOC_SH_GLOB_DAT64",
1832   "BFD_RELOC_SH_JMP_SLOT64",
1833   "BFD_RELOC_SH_RELATIVE64",
1834   "BFD_RELOC_SH_GOT10BY4",
1835   "BFD_RELOC_SH_GOT10BY8",
1836   "BFD_RELOC_SH_GOTPLT10BY4",
1837   "BFD_RELOC_SH_GOTPLT10BY8",
1838   "BFD_RELOC_SH_GOTPLT32",
1839   "BFD_RELOC_SH_SHMEDIA_CODE",
1840   "BFD_RELOC_SH_IMMU5",
1841   "BFD_RELOC_SH_IMMS6",
1842   "BFD_RELOC_SH_IMMS6BY32",
1843   "BFD_RELOC_SH_IMMU6",
1844   "BFD_RELOC_SH_IMMS10",
1845   "BFD_RELOC_SH_IMMS10BY2",
1846   "BFD_RELOC_SH_IMMS10BY4",
1847   "BFD_RELOC_SH_IMMS10BY8",
1848   "BFD_RELOC_SH_IMMS16",
1849   "BFD_RELOC_SH_IMMU16",
1850   "BFD_RELOC_SH_IMM_LOW16",
1851   "BFD_RELOC_SH_IMM_LOW16_PCREL",
1852   "BFD_RELOC_SH_IMM_MEDLOW16",
1853   "BFD_RELOC_SH_IMM_MEDLOW16_PCREL",
1854   "BFD_RELOC_SH_IMM_MEDHI16",
1855   "BFD_RELOC_SH_IMM_MEDHI16_PCREL",
1856   "BFD_RELOC_SH_IMM_HI16",
1857   "BFD_RELOC_SH_IMM_HI16_PCREL",
1858   "BFD_RELOC_SH_PT_16",
1859   "BFD_RELOC_SH_TLS_GD_32",
1860   "BFD_RELOC_SH_TLS_LD_32",
1861   "BFD_RELOC_SH_TLS_LDO_32",
1862   "BFD_RELOC_SH_TLS_IE_32",
1863   "BFD_RELOC_SH_TLS_LE_32",
1864   "BFD_RELOC_SH_TLS_DTPMOD32",
1865   "BFD_RELOC_SH_TLS_DTPOFF32",
1866   "BFD_RELOC_SH_TLS_TPOFF32",
1867   "BFD_RELOC_SH_GOT20",
1868   "BFD_RELOC_SH_GOTOFF20",
1869   "BFD_RELOC_SH_GOTFUNCDESC",
1870   "BFD_RELOC_SH_GOTFUNCDESC20",
1871   "BFD_RELOC_SH_GOTOFFFUNCDESC",
1872   "BFD_RELOC_SH_GOTOFFFUNCDESC20",
1873   "BFD_RELOC_SH_FUNCDESC",
1874   "BFD_RELOC_ARC_NONE",
1875   "BFD_RELOC_ARC_8",
1876   "BFD_RELOC_ARC_16",
1877   "BFD_RELOC_ARC_24",
1878   "BFD_RELOC_ARC_32",
1879   "BFD_RELOC_ARC_N8",
1880   "BFD_RELOC_ARC_N16",
1881   "BFD_RELOC_ARC_N24",
1882   "BFD_RELOC_ARC_N32",
1883   "BFD_RELOC_ARC_SDA",
1884   "BFD_RELOC_ARC_SECTOFF",
1885   "BFD_RELOC_ARC_S21H_PCREL",
1886   "BFD_RELOC_ARC_S21W_PCREL",
1887   "BFD_RELOC_ARC_S25H_PCREL",
1888   "BFD_RELOC_ARC_S25W_PCREL",
1889   "BFD_RELOC_ARC_SDA32",
1890   "BFD_RELOC_ARC_SDA_LDST",
1891   "BFD_RELOC_ARC_SDA_LDST1",
1892   "BFD_RELOC_ARC_SDA_LDST2",
1893   "BFD_RELOC_ARC_SDA16_LD",
1894   "BFD_RELOC_ARC_SDA16_LD1",
1895   "BFD_RELOC_ARC_SDA16_LD2",
1896   "BFD_RELOC_ARC_S13_PCREL",
1897   "BFD_RELOC_ARC_W",
1898   "BFD_RELOC_ARC_32_ME",
1899   "BFD_RELOC_ARC_32_ME_S",
1900   "BFD_RELOC_ARC_N32_ME",
1901   "BFD_RELOC_ARC_SECTOFF_ME",
1902   "BFD_RELOC_ARC_SDA32_ME",
1903   "BFD_RELOC_ARC_W_ME",
1904   "BFD_RELOC_AC_SECTOFF_U8",
1905   "BFD_RELOC_AC_SECTOFF_U8_1",
1906   "BFD_RELOC_AC_SECTOFF_U8_2",
1907   "BFD_RELOC_AC_SECTOFF_S9",
1908   "BFD_RELOC_AC_SECTOFF_S9_1",
1909   "BFD_RELOC_AC_SECTOFF_S9_2",
1910   "BFD_RELOC_ARC_SECTOFF_ME_1",
1911   "BFD_RELOC_ARC_SECTOFF_ME_2",
1912   "BFD_RELOC_ARC_SECTOFF_1",
1913   "BFD_RELOC_ARC_SECTOFF_2",
1914   "BFD_RELOC_ARC_SDA_12",
1915   "BFD_RELOC_ARC_SDA16_ST2",
1916   "BFD_RELOC_ARC_32_PCREL",
1917   "BFD_RELOC_ARC_PC32",
1918   "BFD_RELOC_ARC_GOT32",
1919   "BFD_RELOC_ARC_GOTPC32",
1920   "BFD_RELOC_ARC_PLT32",
1921   "BFD_RELOC_ARC_COPY",
1922   "BFD_RELOC_ARC_GLOB_DAT",
1923   "BFD_RELOC_ARC_JMP_SLOT",
1924   "BFD_RELOC_ARC_RELATIVE",
1925   "BFD_RELOC_ARC_GOTOFF",
1926   "BFD_RELOC_ARC_GOTPC",
1927   "BFD_RELOC_ARC_S21W_PCREL_PLT",
1928   "BFD_RELOC_ARC_S25H_PCREL_PLT",
1929   "BFD_RELOC_ARC_TLS_DTPMOD",
1930   "BFD_RELOC_ARC_TLS_TPOFF",
1931   "BFD_RELOC_ARC_TLS_GD_GOT",
1932   "BFD_RELOC_ARC_TLS_GD_LD",
1933   "BFD_RELOC_ARC_TLS_GD_CALL",
1934   "BFD_RELOC_ARC_TLS_IE_GOT",
1935   "BFD_RELOC_ARC_TLS_DTPOFF",
1936   "BFD_RELOC_ARC_TLS_DTPOFF_S9",
1937   "BFD_RELOC_ARC_TLS_LE_S9",
1938   "BFD_RELOC_ARC_TLS_LE_32",
1939   "BFD_RELOC_ARC_S25W_PCREL_PLT",
1940   "BFD_RELOC_ARC_S21H_PCREL_PLT",
1941   "BFD_RELOC_ARC_NPS_CMEM16",
1942   "BFD_RELOC_ARC_JLI_SECTOFF",
1943   "BFD_RELOC_BFIN_16_IMM",
1944   "BFD_RELOC_BFIN_16_HIGH",
1945   "BFD_RELOC_BFIN_4_PCREL",
1946   "BFD_RELOC_BFIN_5_PCREL",
1947   "BFD_RELOC_BFIN_16_LOW",
1948   "BFD_RELOC_BFIN_10_PCREL",
1949   "BFD_RELOC_BFIN_11_PCREL",
1950   "BFD_RELOC_BFIN_12_PCREL_JUMP",
1951   "BFD_RELOC_BFIN_12_PCREL_JUMP_S",
1952   "BFD_RELOC_BFIN_24_PCREL_CALL_X",
1953   "BFD_RELOC_BFIN_24_PCREL_JUMP_L",
1954   "BFD_RELOC_BFIN_GOT17M4",
1955   "BFD_RELOC_BFIN_GOTHI",
1956   "BFD_RELOC_BFIN_GOTLO",
1957   "BFD_RELOC_BFIN_FUNCDESC",
1958   "BFD_RELOC_BFIN_FUNCDESC_GOT17M4",
1959   "BFD_RELOC_BFIN_FUNCDESC_GOTHI",
1960   "BFD_RELOC_BFIN_FUNCDESC_GOTLO",
1961   "BFD_RELOC_BFIN_FUNCDESC_VALUE",
1962   "BFD_RELOC_BFIN_FUNCDESC_GOTOFF17M4",
1963   "BFD_RELOC_BFIN_FUNCDESC_GOTOFFHI",
1964   "BFD_RELOC_BFIN_FUNCDESC_GOTOFFLO",
1965   "BFD_RELOC_BFIN_GOTOFF17M4",
1966   "BFD_RELOC_BFIN_GOTOFFHI",
1967   "BFD_RELOC_BFIN_GOTOFFLO",
1968   "BFD_RELOC_BFIN_GOT",
1969   "BFD_RELOC_BFIN_PLTPC",
1970   "BFD_ARELOC_BFIN_PUSH",
1971   "BFD_ARELOC_BFIN_CONST",
1972   "BFD_ARELOC_BFIN_ADD",
1973   "BFD_ARELOC_BFIN_SUB",
1974   "BFD_ARELOC_BFIN_MULT",
1975   "BFD_ARELOC_BFIN_DIV",
1976   "BFD_ARELOC_BFIN_MOD",
1977   "BFD_ARELOC_BFIN_LSHIFT",
1978   "BFD_ARELOC_BFIN_RSHIFT",
1979   "BFD_ARELOC_BFIN_AND",
1980   "BFD_ARELOC_BFIN_OR",
1981   "BFD_ARELOC_BFIN_XOR",
1982   "BFD_ARELOC_BFIN_LAND",
1983   "BFD_ARELOC_BFIN_LOR",
1984   "BFD_ARELOC_BFIN_LEN",
1985   "BFD_ARELOC_BFIN_NEG",
1986   "BFD_ARELOC_BFIN_COMP",
1987   "BFD_ARELOC_BFIN_PAGE",
1988   "BFD_ARELOC_BFIN_HWPAGE",
1989   "BFD_ARELOC_BFIN_ADDR",
1990   "BFD_RELOC_D10V_10_PCREL_R",
1991   "BFD_RELOC_D10V_10_PCREL_L",
1992   "BFD_RELOC_D10V_18",
1993   "BFD_RELOC_D10V_18_PCREL",
1994   "BFD_RELOC_D30V_6",
1995   "BFD_RELOC_D30V_9_PCREL",
1996   "BFD_RELOC_D30V_9_PCREL_R",
1997   "BFD_RELOC_D30V_15",
1998   "BFD_RELOC_D30V_15_PCREL",
1999   "BFD_RELOC_D30V_15_PCREL_R",
2000   "BFD_RELOC_D30V_21",
2001   "BFD_RELOC_D30V_21_PCREL",
2002   "BFD_RELOC_D30V_21_PCREL_R",
2003   "BFD_RELOC_D30V_32",
2004   "BFD_RELOC_D30V_32_PCREL",
2005   "BFD_RELOC_DLX_HI16_S",
2006   "BFD_RELOC_DLX_LO16",
2007   "BFD_RELOC_DLX_JMP26",
2008   "BFD_RELOC_M32C_HI8",
2009   "BFD_RELOC_M32C_RL_JUMP",
2010   "BFD_RELOC_M32C_RL_1ADDR",
2011   "BFD_RELOC_M32C_RL_2ADDR",
2012   "BFD_RELOC_M32R_24",
2013   "BFD_RELOC_M32R_10_PCREL",
2014   "BFD_RELOC_M32R_18_PCREL",
2015   "BFD_RELOC_M32R_26_PCREL",
2016   "BFD_RELOC_M32R_HI16_ULO",
2017   "BFD_RELOC_M32R_HI16_SLO",
2018   "BFD_RELOC_M32R_LO16",
2019   "BFD_RELOC_M32R_SDA16",
2020   "BFD_RELOC_M32R_GOT24",
2021   "BFD_RELOC_M32R_26_PLTREL",
2022   "BFD_RELOC_M32R_COPY",
2023   "BFD_RELOC_M32R_GLOB_DAT",
2024   "BFD_RELOC_M32R_JMP_SLOT",
2025   "BFD_RELOC_M32R_RELATIVE",
2026   "BFD_RELOC_M32R_GOTOFF",
2027   "BFD_RELOC_M32R_GOTOFF_HI_ULO",
2028   "BFD_RELOC_M32R_GOTOFF_HI_SLO",
2029   "BFD_RELOC_M32R_GOTOFF_LO",
2030   "BFD_RELOC_M32R_GOTPC24",
2031   "BFD_RELOC_M32R_GOT16_HI_ULO",
2032   "BFD_RELOC_M32R_GOT16_HI_SLO",
2033   "BFD_RELOC_M32R_GOT16_LO",
2034   "BFD_RELOC_M32R_GOTPC_HI_ULO",
2035   "BFD_RELOC_M32R_GOTPC_HI_SLO",
2036   "BFD_RELOC_M32R_GOTPC_LO",
2037   "BFD_RELOC_NDS32_20",
2038   "BFD_RELOC_NDS32_9_PCREL",
2039   "BFD_RELOC_NDS32_WORD_9_PCREL",
2040   "BFD_RELOC_NDS32_15_PCREL",
2041   "BFD_RELOC_NDS32_17_PCREL",
2042   "BFD_RELOC_NDS32_25_PCREL",
2043   "BFD_RELOC_NDS32_HI20",
2044   "BFD_RELOC_NDS32_LO12S3",
2045   "BFD_RELOC_NDS32_LO12S2",
2046   "BFD_RELOC_NDS32_LO12S1",
2047   "BFD_RELOC_NDS32_LO12S0",
2048   "BFD_RELOC_NDS32_LO12S0_ORI",
2049   "BFD_RELOC_NDS32_SDA15S3",
2050   "BFD_RELOC_NDS32_SDA15S2",
2051   "BFD_RELOC_NDS32_SDA15S1",
2052   "BFD_RELOC_NDS32_SDA15S0",
2053   "BFD_RELOC_NDS32_SDA16S3",
2054   "BFD_RELOC_NDS32_SDA17S2",
2055   "BFD_RELOC_NDS32_SDA18S1",
2056   "BFD_RELOC_NDS32_SDA19S0",
2057   "BFD_RELOC_NDS32_GOT20",
2058   "BFD_RELOC_NDS32_9_PLTREL",
2059   "BFD_RELOC_NDS32_25_PLTREL",
2060   "BFD_RELOC_NDS32_COPY",
2061   "BFD_RELOC_NDS32_GLOB_DAT",
2062   "BFD_RELOC_NDS32_JMP_SLOT",
2063   "BFD_RELOC_NDS32_RELATIVE",
2064   "BFD_RELOC_NDS32_GOTOFF",
2065   "BFD_RELOC_NDS32_GOTOFF_HI20",
2066   "BFD_RELOC_NDS32_GOTOFF_LO12",
2067   "BFD_RELOC_NDS32_GOTPC20",
2068   "BFD_RELOC_NDS32_GOT_HI20",
2069   "BFD_RELOC_NDS32_GOT_LO12",
2070   "BFD_RELOC_NDS32_GOTPC_HI20",
2071   "BFD_RELOC_NDS32_GOTPC_LO12",
2072   "BFD_RELOC_NDS32_INSN16",
2073   "BFD_RELOC_NDS32_LABEL",
2074   "BFD_RELOC_NDS32_LONGCALL1",
2075   "BFD_RELOC_NDS32_LONGCALL2",
2076   "BFD_RELOC_NDS32_LONGCALL3",
2077   "BFD_RELOC_NDS32_LONGJUMP1",
2078   "BFD_RELOC_NDS32_LONGJUMP2",
2079   "BFD_RELOC_NDS32_LONGJUMP3",
2080   "BFD_RELOC_NDS32_LOADSTORE",
2081   "BFD_RELOC_NDS32_9_FIXED",
2082   "BFD_RELOC_NDS32_15_FIXED",
2083   "BFD_RELOC_NDS32_17_FIXED",
2084   "BFD_RELOC_NDS32_25_FIXED",
2085   "BFD_RELOC_NDS32_LONGCALL4",
2086   "BFD_RELOC_NDS32_LONGCALL5",
2087   "BFD_RELOC_NDS32_LONGCALL6",
2088   "BFD_RELOC_NDS32_LONGJUMP4",
2089   "BFD_RELOC_NDS32_LONGJUMP5",
2090   "BFD_RELOC_NDS32_LONGJUMP6",
2091   "BFD_RELOC_NDS32_LONGJUMP7",
2092   "BFD_RELOC_NDS32_PLTREL_HI20",
2093   "BFD_RELOC_NDS32_PLTREL_LO12",
2094   "BFD_RELOC_NDS32_PLT_GOTREL_HI20",
2095   "BFD_RELOC_NDS32_PLT_GOTREL_LO12",
2096   "BFD_RELOC_NDS32_SDA12S2_DP",
2097   "BFD_RELOC_NDS32_SDA12S2_SP",
2098   "BFD_RELOC_NDS32_LO12S2_DP",
2099   "BFD_RELOC_NDS32_LO12S2_SP",
2100   "BFD_RELOC_NDS32_DWARF2_OP1",
2101   "BFD_RELOC_NDS32_DWARF2_OP2",
2102   "BFD_RELOC_NDS32_DWARF2_LEB",
2103   "BFD_RELOC_NDS32_UPDATE_TA",
2104   "BFD_RELOC_NDS32_PLT_GOTREL_LO20",
2105   "BFD_RELOC_NDS32_PLT_GOTREL_LO15",
2106   "BFD_RELOC_NDS32_PLT_GOTREL_LO19",
2107   "BFD_RELOC_NDS32_GOT_LO15",
2108   "BFD_RELOC_NDS32_GOT_LO19",
2109   "BFD_RELOC_NDS32_GOTOFF_LO15",
2110   "BFD_RELOC_NDS32_GOTOFF_LO19",
2111   "BFD_RELOC_NDS32_GOT15S2",
2112   "BFD_RELOC_NDS32_GOT17S2",
2113   "BFD_RELOC_NDS32_5",
2114   "BFD_RELOC_NDS32_10_UPCREL",
2115   "BFD_RELOC_NDS32_SDA_FP7U2_RELA",
2116   "BFD_RELOC_NDS32_RELAX_ENTRY",
2117   "BFD_RELOC_NDS32_GOT_SUFF",
2118   "BFD_RELOC_NDS32_GOTOFF_SUFF",
2119   "BFD_RELOC_NDS32_PLT_GOT_SUFF",
2120   "BFD_RELOC_NDS32_MULCALL_SUFF",
2121   "BFD_RELOC_NDS32_PTR",
2122   "BFD_RELOC_NDS32_PTR_COUNT",
2123   "BFD_RELOC_NDS32_PTR_RESOLVED",
2124   "BFD_RELOC_NDS32_PLTBLOCK",
2125   "BFD_RELOC_NDS32_RELAX_REGION_BEGIN",
2126   "BFD_RELOC_NDS32_RELAX_REGION_END",
2127   "BFD_RELOC_NDS32_MINUEND",
2128   "BFD_RELOC_NDS32_SUBTRAHEND",
2129   "BFD_RELOC_NDS32_DIFF8",
2130   "BFD_RELOC_NDS32_DIFF16",
2131   "BFD_RELOC_NDS32_DIFF32",
2132   "BFD_RELOC_NDS32_DIFF_ULEB128",
2133   "BFD_RELOC_NDS32_EMPTY",
2134   "BFD_RELOC_NDS32_25_ABS",
2135   "BFD_RELOC_NDS32_DATA",
2136   "BFD_RELOC_NDS32_TRAN",
2137   "BFD_RELOC_NDS32_17IFC_PCREL",
2138   "BFD_RELOC_NDS32_10IFCU_PCREL",
2139   "BFD_RELOC_NDS32_TPOFF",
2140   "BFD_RELOC_NDS32_GOTTPOFF",
2141   "BFD_RELOC_NDS32_TLS_LE_HI20",
2142   "BFD_RELOC_NDS32_TLS_LE_LO12",
2143   "BFD_RELOC_NDS32_TLS_LE_20",
2144   "BFD_RELOC_NDS32_TLS_LE_15S0",
2145   "BFD_RELOC_NDS32_TLS_LE_15S1",
2146   "BFD_RELOC_NDS32_TLS_LE_15S2",
2147   "BFD_RELOC_NDS32_TLS_LE_ADD",
2148   "BFD_RELOC_NDS32_TLS_LE_LS",
2149   "BFD_RELOC_NDS32_TLS_IE_HI20",
2150   "BFD_RELOC_NDS32_TLS_IE_LO12",
2151   "BFD_RELOC_NDS32_TLS_IE_LO12S2",
2152   "BFD_RELOC_NDS32_TLS_IEGP_HI20",
2153   "BFD_RELOC_NDS32_TLS_IEGP_LO12",
2154   "BFD_RELOC_NDS32_TLS_IEGP_LO12S2",
2155   "BFD_RELOC_NDS32_TLS_IEGP_LW",
2156   "BFD_RELOC_NDS32_TLS_DESC",
2157   "BFD_RELOC_NDS32_TLS_DESC_HI20",
2158   "BFD_RELOC_NDS32_TLS_DESC_LO12",
2159   "BFD_RELOC_NDS32_TLS_DESC_20",
2160   "BFD_RELOC_NDS32_TLS_DESC_SDA17S2",
2161   "BFD_RELOC_NDS32_TLS_DESC_ADD",
2162   "BFD_RELOC_NDS32_TLS_DESC_FUNC",
2163   "BFD_RELOC_NDS32_TLS_DESC_CALL",
2164   "BFD_RELOC_NDS32_TLS_DESC_MEM",
2165   "BFD_RELOC_NDS32_REMOVE",
2166   "BFD_RELOC_NDS32_GROUP",
2167   "BFD_RELOC_NDS32_LSI",
2168   "BFD_RELOC_V850_9_PCREL",
2169   "BFD_RELOC_V850_22_PCREL",
2170   "BFD_RELOC_V850_SDA_16_16_OFFSET",
2171   "BFD_RELOC_V850_SDA_15_16_OFFSET",
2172   "BFD_RELOC_V850_ZDA_16_16_OFFSET",
2173   "BFD_RELOC_V850_ZDA_15_16_OFFSET",
2174   "BFD_RELOC_V850_TDA_6_8_OFFSET",
2175   "BFD_RELOC_V850_TDA_7_8_OFFSET",
2176   "BFD_RELOC_V850_TDA_7_7_OFFSET",
2177   "BFD_RELOC_V850_TDA_16_16_OFFSET",
2178   "BFD_RELOC_V850_TDA_4_5_OFFSET",
2179   "BFD_RELOC_V850_TDA_4_4_OFFSET",
2180   "BFD_RELOC_V850_SDA_16_16_SPLIT_OFFSET",
2181   "BFD_RELOC_V850_ZDA_16_16_SPLIT_OFFSET",
2182   "BFD_RELOC_V850_CALLT_6_7_OFFSET",
2183   "BFD_RELOC_V850_CALLT_16_16_OFFSET",
2184   "BFD_RELOC_V850_LONGCALL",
2185   "BFD_RELOC_V850_LONGJUMP",
2186   "BFD_RELOC_V850_ALIGN",
2187   "BFD_RELOC_V850_LO16_SPLIT_OFFSET",
2188   "BFD_RELOC_V850_16_PCREL",
2189   "BFD_RELOC_V850_17_PCREL",
2190   "BFD_RELOC_V850_23",
2191   "BFD_RELOC_V850_32_PCREL",
2192   "BFD_RELOC_V850_32_ABS",
2193   "BFD_RELOC_V850_16_SPLIT_OFFSET",
2194   "BFD_RELOC_V850_16_S1",
2195   "BFD_RELOC_V850_LO16_S1",
2196   "BFD_RELOC_V850_CALLT_15_16_OFFSET",
2197   "BFD_RELOC_V850_32_GOTPCREL",
2198   "BFD_RELOC_V850_16_GOT",
2199   "BFD_RELOC_V850_32_GOT",
2200   "BFD_RELOC_V850_22_PLT_PCREL",
2201   "BFD_RELOC_V850_32_PLT_PCREL",
2202   "BFD_RELOC_V850_COPY",
2203   "BFD_RELOC_V850_GLOB_DAT",
2204   "BFD_RELOC_V850_JMP_SLOT",
2205   "BFD_RELOC_V850_RELATIVE",
2206   "BFD_RELOC_V850_16_GOTOFF",
2207   "BFD_RELOC_V850_32_GOTOFF",
2208   "BFD_RELOC_V850_CODE",
2209   "BFD_RELOC_V850_DATA",
2210   "BFD_RELOC_TIC30_LDP",
2211   "BFD_RELOC_TIC54X_PARTLS7",
2212   "BFD_RELOC_TIC54X_PARTMS9",
2213   "BFD_RELOC_TIC54X_23",
2214   "BFD_RELOC_TIC54X_16_OF_23",
2215   "BFD_RELOC_TIC54X_MS7_OF_23",
2216   "BFD_RELOC_C6000_PCR_S21",
2217   "BFD_RELOC_C6000_PCR_S12",
2218   "BFD_RELOC_C6000_PCR_S10",
2219   "BFD_RELOC_C6000_PCR_S7",
2220   "BFD_RELOC_C6000_ABS_S16",
2221   "BFD_RELOC_C6000_ABS_L16",
2222   "BFD_RELOC_C6000_ABS_H16",
2223   "BFD_RELOC_C6000_SBR_U15_B",
2224   "BFD_RELOC_C6000_SBR_U15_H",
2225   "BFD_RELOC_C6000_SBR_U15_W",
2226   "BFD_RELOC_C6000_SBR_S16",
2227   "BFD_RELOC_C6000_SBR_L16_B",
2228   "BFD_RELOC_C6000_SBR_L16_H",
2229   "BFD_RELOC_C6000_SBR_L16_W",
2230   "BFD_RELOC_C6000_SBR_H16_B",
2231   "BFD_RELOC_C6000_SBR_H16_H",
2232   "BFD_RELOC_C6000_SBR_H16_W",
2233   "BFD_RELOC_C6000_SBR_GOT_U15_W",
2234   "BFD_RELOC_C6000_SBR_GOT_L16_W",
2235   "BFD_RELOC_C6000_SBR_GOT_H16_W",
2236   "BFD_RELOC_C6000_DSBT_INDEX",
2237   "BFD_RELOC_C6000_PREL31",
2238   "BFD_RELOC_C6000_COPY",
2239   "BFD_RELOC_C6000_JUMP_SLOT",
2240   "BFD_RELOC_C6000_EHTYPE",
2241   "BFD_RELOC_C6000_PCR_H16",
2242   "BFD_RELOC_C6000_PCR_L16",
2243   "BFD_RELOC_C6000_ALIGN",
2244   "BFD_RELOC_C6000_FPHEAD",
2245   "BFD_RELOC_C6000_NOCMP",
2246   "BFD_RELOC_FR30_48",
2247   "BFD_RELOC_FR30_20",
2248   "BFD_RELOC_FR30_6_IN_4",
2249   "BFD_RELOC_FR30_8_IN_8",
2250   "BFD_RELOC_FR30_9_IN_8",
2251   "BFD_RELOC_FR30_10_IN_8",
2252   "BFD_RELOC_FR30_9_PCREL",
2253   "BFD_RELOC_FR30_12_PCREL",
2254   "BFD_RELOC_MCORE_PCREL_IMM8BY4",
2255   "BFD_RELOC_MCORE_PCREL_IMM11BY2",
2256   "BFD_RELOC_MCORE_PCREL_IMM4BY2",
2257   "BFD_RELOC_MCORE_PCREL_32",
2258   "BFD_RELOC_MCORE_PCREL_JSR_IMM11BY2",
2259   "BFD_RELOC_MCORE_RVA",
2260   "BFD_RELOC_MEP_8",
2261   "BFD_RELOC_MEP_16",
2262   "BFD_RELOC_MEP_32",
2263   "BFD_RELOC_MEP_PCREL8A2",
2264   "BFD_RELOC_MEP_PCREL12A2",
2265   "BFD_RELOC_MEP_PCREL17A2",
2266   "BFD_RELOC_MEP_PCREL24A2",
2267   "BFD_RELOC_MEP_PCABS24A2",
2268   "BFD_RELOC_MEP_LOW16",
2269   "BFD_RELOC_MEP_HI16U",
2270   "BFD_RELOC_MEP_HI16S",
2271   "BFD_RELOC_MEP_GPREL",
2272   "BFD_RELOC_MEP_TPREL",
2273   "BFD_RELOC_MEP_TPREL7",
2274   "BFD_RELOC_MEP_TPREL7A2",
2275   "BFD_RELOC_MEP_TPREL7A4",
2276   "BFD_RELOC_MEP_UIMM24",
2277   "BFD_RELOC_MEP_ADDR24A4",
2278   "BFD_RELOC_MEP_GNU_VTINHERIT",
2279   "BFD_RELOC_MEP_GNU_VTENTRY",
2280   "BFD_RELOC_METAG_HIADDR16",
2281   "BFD_RELOC_METAG_LOADDR16",
2282   "BFD_RELOC_METAG_RELBRANCH",
2283   "BFD_RELOC_METAG_GETSETOFF",
2284   "BFD_RELOC_METAG_HIOG",
2285   "BFD_RELOC_METAG_LOOG",
2286   "BFD_RELOC_METAG_REL8",
2287   "BFD_RELOC_METAG_REL16",
2288   "BFD_RELOC_METAG_HI16_GOTOFF",
2289   "BFD_RELOC_METAG_LO16_GOTOFF",
2290   "BFD_RELOC_METAG_GETSET_GOTOFF",
2291   "BFD_RELOC_METAG_GETSET_GOT",
2292   "BFD_RELOC_METAG_HI16_GOTPC",
2293   "BFD_RELOC_METAG_LO16_GOTPC",
2294   "BFD_RELOC_METAG_HI16_PLT",
2295   "BFD_RELOC_METAG_LO16_PLT",
2296   "BFD_RELOC_METAG_RELBRANCH_PLT",
2297   "BFD_RELOC_METAG_GOTOFF",
2298   "BFD_RELOC_METAG_PLT",
2299   "BFD_RELOC_METAG_COPY",
2300   "BFD_RELOC_METAG_JMP_SLOT",
2301   "BFD_RELOC_METAG_RELATIVE",
2302   "BFD_RELOC_METAG_GLOB_DAT",
2303   "BFD_RELOC_METAG_TLS_GD",
2304   "BFD_RELOC_METAG_TLS_LDM",
2305   "BFD_RELOC_METAG_TLS_LDO_HI16",
2306   "BFD_RELOC_METAG_TLS_LDO_LO16",
2307   "BFD_RELOC_METAG_TLS_LDO",
2308   "BFD_RELOC_METAG_TLS_IE",
2309   "BFD_RELOC_METAG_TLS_IENONPIC",
2310   "BFD_RELOC_METAG_TLS_IENONPIC_HI16",
2311   "BFD_RELOC_METAG_TLS_IENONPIC_LO16",
2312   "BFD_RELOC_METAG_TLS_TPOFF",
2313   "BFD_RELOC_METAG_TLS_DTPMOD",
2314   "BFD_RELOC_METAG_TLS_DTPOFF",
2315   "BFD_RELOC_METAG_TLS_LE",
2316   "BFD_RELOC_METAG_TLS_LE_HI16",
2317   "BFD_RELOC_METAG_TLS_LE_LO16",
2318   "BFD_RELOC_MMIX_GETA",
2319   "BFD_RELOC_MMIX_GETA_1",
2320   "BFD_RELOC_MMIX_GETA_2",
2321   "BFD_RELOC_MMIX_GETA_3",
2322   "BFD_RELOC_MMIX_CBRANCH",
2323   "BFD_RELOC_MMIX_CBRANCH_J",
2324   "BFD_RELOC_MMIX_CBRANCH_1",
2325   "BFD_RELOC_MMIX_CBRANCH_2",
2326   "BFD_RELOC_MMIX_CBRANCH_3",
2327   "BFD_RELOC_MMIX_PUSHJ",
2328   "BFD_RELOC_MMIX_PUSHJ_1",
2329   "BFD_RELOC_MMIX_PUSHJ_2",
2330   "BFD_RELOC_MMIX_PUSHJ_3",
2331   "BFD_RELOC_MMIX_PUSHJ_STUBBABLE",
2332   "BFD_RELOC_MMIX_JMP",
2333   "BFD_RELOC_MMIX_JMP_1",
2334   "BFD_RELOC_MMIX_JMP_2",
2335   "BFD_RELOC_MMIX_JMP_3",
2336   "BFD_RELOC_MMIX_ADDR19",
2337   "BFD_RELOC_MMIX_ADDR27",
2338   "BFD_RELOC_MMIX_REG_OR_BYTE",
2339   "BFD_RELOC_MMIX_REG",
2340   "BFD_RELOC_MMIX_BASE_PLUS_OFFSET",
2341   "BFD_RELOC_MMIX_LOCAL",
2342   "BFD_RELOC_AVR_7_PCREL",
2343   "BFD_RELOC_AVR_13_PCREL",
2344   "BFD_RELOC_AVR_16_PM",
2345   "BFD_RELOC_AVR_LO8_LDI",
2346   "BFD_RELOC_AVR_HI8_LDI",
2347   "BFD_RELOC_AVR_HH8_LDI",
2348   "BFD_RELOC_AVR_MS8_LDI",
2349   "BFD_RELOC_AVR_LO8_LDI_NEG",
2350   "BFD_RELOC_AVR_HI8_LDI_NEG",
2351   "BFD_RELOC_AVR_HH8_LDI_NEG",
2352   "BFD_RELOC_AVR_MS8_LDI_NEG",
2353   "BFD_RELOC_AVR_LO8_LDI_PM",
2354   "BFD_RELOC_AVR_LO8_LDI_GS",
2355   "BFD_RELOC_AVR_HI8_LDI_PM",
2356   "BFD_RELOC_AVR_HI8_LDI_GS",
2357   "BFD_RELOC_AVR_HH8_LDI_PM",
2358   "BFD_RELOC_AVR_LO8_LDI_PM_NEG",
2359   "BFD_RELOC_AVR_HI8_LDI_PM_NEG",
2360   "BFD_RELOC_AVR_HH8_LDI_PM_NEG",
2361   "BFD_RELOC_AVR_CALL",
2362   "BFD_RELOC_AVR_LDI",
2363   "BFD_RELOC_AVR_6",
2364   "BFD_RELOC_AVR_6_ADIW",
2365   "BFD_RELOC_AVR_8_LO",
2366   "BFD_RELOC_AVR_8_HI",
2367   "BFD_RELOC_AVR_8_HLO",
2368   "BFD_RELOC_AVR_DIFF8",
2369   "BFD_RELOC_AVR_DIFF16",
2370   "BFD_RELOC_AVR_DIFF32",
2371   "BFD_RELOC_AVR_LDS_STS_16",
2372   "BFD_RELOC_AVR_PORT6",
2373   "BFD_RELOC_AVR_PORT5",
2374   "BFD_RELOC_RISCV_HI20",
2375   "BFD_RELOC_RISCV_PCREL_HI20",
2376   "BFD_RELOC_RISCV_PCREL_LO12_I",
2377   "BFD_RELOC_RISCV_PCREL_LO12_S",
2378   "BFD_RELOC_RISCV_LO12_I",
2379   "BFD_RELOC_RISCV_LO12_S",
2380   "BFD_RELOC_RISCV_GPREL12_I",
2381   "BFD_RELOC_RISCV_GPREL12_S",
2382   "BFD_RELOC_RISCV_TPREL_HI20",
2383   "BFD_RELOC_RISCV_TPREL_LO12_I",
2384   "BFD_RELOC_RISCV_TPREL_LO12_S",
2385   "BFD_RELOC_RISCV_TPREL_ADD",
2386   "BFD_RELOC_RISCV_CALL",
2387   "BFD_RELOC_RISCV_CALL_PLT",
2388   "BFD_RELOC_RISCV_ADD8",
2389   "BFD_RELOC_RISCV_ADD16",
2390   "BFD_RELOC_RISCV_ADD32",
2391   "BFD_RELOC_RISCV_ADD64",
2392   "BFD_RELOC_RISCV_SUB8",
2393   "BFD_RELOC_RISCV_SUB16",
2394   "BFD_RELOC_RISCV_SUB32",
2395   "BFD_RELOC_RISCV_SUB64",
2396   "BFD_RELOC_RISCV_GOT_HI20",
2397   "BFD_RELOC_RISCV_TLS_GOT_HI20",
2398   "BFD_RELOC_RISCV_TLS_GD_HI20",
2399   "BFD_RELOC_RISCV_JMP",
2400   "BFD_RELOC_RISCV_TLS_DTPMOD32",
2401   "BFD_RELOC_RISCV_TLS_DTPREL32",
2402   "BFD_RELOC_RISCV_TLS_DTPMOD64",
2403   "BFD_RELOC_RISCV_TLS_DTPREL64",
2404   "BFD_RELOC_RISCV_TLS_TPREL32",
2405   "BFD_RELOC_RISCV_TLS_TPREL64",
2406   "BFD_RELOC_RISCV_ALIGN",
2407   "BFD_RELOC_RISCV_RVC_BRANCH",
2408   "BFD_RELOC_RISCV_RVC_JUMP",
2409   "BFD_RELOC_RISCV_RELAX",
2410   "BFD_RELOC_RISCV_CFA",
2411   "BFD_RELOC_RISCV_SUB6",
2412   "BFD_RELOC_RISCV_SET6",
2413   "BFD_RELOC_RISCV_SET8",
2414   "BFD_RELOC_RISCV_SET16",
2415   "BFD_RELOC_RISCV_SET32",
2416   "BFD_RELOC_RISCV_32_PCREL",
2417   "BFD_RELOC_RISCV_SET_ULEB128",
2418   "BFD_RELOC_RISCV_SUB_ULEB128",
2419   "BFD_RELOC_RL78_NEG8",
2420   "BFD_RELOC_RL78_NEG16",
2421   "BFD_RELOC_RL78_NEG24",
2422   "BFD_RELOC_RL78_NEG32",
2423   "BFD_RELOC_RL78_16_OP",
2424   "BFD_RELOC_RL78_24_OP",
2425   "BFD_RELOC_RL78_32_OP",
2426   "BFD_RELOC_RL78_8U",
2427   "BFD_RELOC_RL78_16U",
2428   "BFD_RELOC_RL78_24U",
2429   "BFD_RELOC_RL78_DIR3U_PCREL",
2430   "BFD_RELOC_RL78_DIFF",
2431   "BFD_RELOC_RL78_GPRELB",
2432   "BFD_RELOC_RL78_GPRELW",
2433   "BFD_RELOC_RL78_GPRELL",
2434   "BFD_RELOC_RL78_SYM",
2435   "BFD_RELOC_RL78_OP_SUBTRACT",
2436   "BFD_RELOC_RL78_OP_NEG",
2437   "BFD_RELOC_RL78_OP_AND",
2438   "BFD_RELOC_RL78_OP_SHRA",
2439   "BFD_RELOC_RL78_ABS8",
2440   "BFD_RELOC_RL78_ABS16",
2441   "BFD_RELOC_RL78_ABS16_REV",
2442   "BFD_RELOC_RL78_ABS32",
2443   "BFD_RELOC_RL78_ABS32_REV",
2444   "BFD_RELOC_RL78_ABS16U",
2445   "BFD_RELOC_RL78_ABS16UW",
2446   "BFD_RELOC_RL78_ABS16UL",
2447   "BFD_RELOC_RL78_RELAX",
2448   "BFD_RELOC_RL78_HI16",
2449   "BFD_RELOC_RL78_HI8",
2450   "BFD_RELOC_RL78_LO16",
2451   "BFD_RELOC_RL78_CODE",
2452   "BFD_RELOC_RL78_SADDR",
2453   "BFD_RELOC_RX_NEG8",
2454   "BFD_RELOC_RX_NEG16",
2455   "BFD_RELOC_RX_NEG24",
2456   "BFD_RELOC_RX_NEG32",
2457   "BFD_RELOC_RX_16_OP",
2458   "BFD_RELOC_RX_24_OP",
2459   "BFD_RELOC_RX_32_OP",
2460   "BFD_RELOC_RX_8U",
2461   "BFD_RELOC_RX_16U",
2462   "BFD_RELOC_RX_24U",
2463   "BFD_RELOC_RX_DIR3U_PCREL",
2464   "BFD_RELOC_RX_DIFF",
2465   "BFD_RELOC_RX_GPRELB",
2466   "BFD_RELOC_RX_GPRELW",
2467   "BFD_RELOC_RX_GPRELL",
2468   "BFD_RELOC_RX_SYM",
2469   "BFD_RELOC_RX_OP_SUBTRACT",
2470   "BFD_RELOC_RX_OP_NEG",
2471   "BFD_RELOC_RX_ABS8",
2472   "BFD_RELOC_RX_ABS16",
2473   "BFD_RELOC_RX_ABS16_REV",
2474   "BFD_RELOC_RX_ABS32",
2475   "BFD_RELOC_RX_ABS32_REV",
2476   "BFD_RELOC_RX_ABS16U",
2477   "BFD_RELOC_RX_ABS16UW",
2478   "BFD_RELOC_RX_ABS16UL",
2479   "BFD_RELOC_RX_RELAX",
2480   "BFD_RELOC_390_12",
2481   "BFD_RELOC_390_GOT12",
2482   "BFD_RELOC_390_PLT32",
2483   "BFD_RELOC_390_COPY",
2484   "BFD_RELOC_390_GLOB_DAT",
2485   "BFD_RELOC_390_JMP_SLOT",
2486   "BFD_RELOC_390_RELATIVE",
2487   "BFD_RELOC_390_GOTPC",
2488   "BFD_RELOC_390_GOT16",
2489   "BFD_RELOC_390_PC12DBL",
2490   "BFD_RELOC_390_PLT12DBL",
2491   "BFD_RELOC_390_PC16DBL",
2492   "BFD_RELOC_390_PLT16DBL",
2493   "BFD_RELOC_390_PC24DBL",
2494   "BFD_RELOC_390_PLT24DBL",
2495   "BFD_RELOC_390_PC32DBL",
2496   "BFD_RELOC_390_PLT32DBL",
2497   "BFD_RELOC_390_GOTPCDBL",
2498   "BFD_RELOC_390_GOT64",
2499   "BFD_RELOC_390_PLT64",
2500   "BFD_RELOC_390_GOTENT",
2501   "BFD_RELOC_390_GOTOFF64",
2502   "BFD_RELOC_390_GOTPLT12",
2503   "BFD_RELOC_390_GOTPLT16",
2504   "BFD_RELOC_390_GOTPLT32",
2505   "BFD_RELOC_390_GOTPLT64",
2506   "BFD_RELOC_390_GOTPLTENT",
2507   "BFD_RELOC_390_PLTOFF16",
2508   "BFD_RELOC_390_PLTOFF32",
2509   "BFD_RELOC_390_PLTOFF64",
2510   "BFD_RELOC_390_TLS_LOAD",
2511   "BFD_RELOC_390_TLS_GDCALL",
2512   "BFD_RELOC_390_TLS_LDCALL",
2513   "BFD_RELOC_390_TLS_GD32",
2514   "BFD_RELOC_390_TLS_GD64",
2515   "BFD_RELOC_390_TLS_GOTIE12",
2516   "BFD_RELOC_390_TLS_GOTIE32",
2517   "BFD_RELOC_390_TLS_GOTIE64",
2518   "BFD_RELOC_390_TLS_LDM32",
2519   "BFD_RELOC_390_TLS_LDM64",
2520   "BFD_RELOC_390_TLS_IE32",
2521   "BFD_RELOC_390_TLS_IE64",
2522   "BFD_RELOC_390_TLS_IEENT",
2523   "BFD_RELOC_390_TLS_LE32",
2524   "BFD_RELOC_390_TLS_LE64",
2525   "BFD_RELOC_390_TLS_LDO32",
2526   "BFD_RELOC_390_TLS_LDO64",
2527   "BFD_RELOC_390_TLS_DTPMOD",
2528   "BFD_RELOC_390_TLS_DTPOFF",
2529   "BFD_RELOC_390_TLS_TPOFF",
2530   "BFD_RELOC_390_20",
2531   "BFD_RELOC_390_GOT20",
2532   "BFD_RELOC_390_GOTPLT20",
2533   "BFD_RELOC_390_TLS_GOTIE20",
2534   "BFD_RELOC_390_IRELATIVE",
2535   "BFD_RELOC_SCORE_GPREL15",
2536   "BFD_RELOC_SCORE_DUMMY2",
2537   "BFD_RELOC_SCORE_JMP",
2538   "BFD_RELOC_SCORE_BRANCH",
2539   "BFD_RELOC_SCORE_IMM30",
2540   "BFD_RELOC_SCORE_IMM32",
2541   "BFD_RELOC_SCORE16_JMP",
2542   "BFD_RELOC_SCORE16_BRANCH",
2543   "BFD_RELOC_SCORE_BCMP",
2544   "BFD_RELOC_SCORE_GOT15",
2545   "BFD_RELOC_SCORE_GOT_LO16",
2546   "BFD_RELOC_SCORE_CALL15",
2547   "BFD_RELOC_SCORE_DUMMY_HI16",
2548   "BFD_RELOC_IP2K_FR9",
2549   "BFD_RELOC_IP2K_BANK",
2550   "BFD_RELOC_IP2K_ADDR16CJP",
2551   "BFD_RELOC_IP2K_PAGE3",
2552   "BFD_RELOC_IP2K_LO8DATA",
2553   "BFD_RELOC_IP2K_HI8DATA",
2554   "BFD_RELOC_IP2K_EX8DATA",
2555   "BFD_RELOC_IP2K_LO8INSN",
2556   "BFD_RELOC_IP2K_HI8INSN",
2557   "BFD_RELOC_IP2K_PC_SKIP",
2558   "BFD_RELOC_IP2K_TEXT",
2559   "BFD_RELOC_IP2K_FR_OFFSET",
2560   "BFD_RELOC_VPE4KMATH_DATA",
2561   "BFD_RELOC_VPE4KMATH_INSN",
2562   "BFD_RELOC_VTABLE_INHERIT",
2563   "BFD_RELOC_VTABLE_ENTRY",
2564   "BFD_RELOC_IA64_IMM14",
2565   "BFD_RELOC_IA64_IMM22",
2566   "BFD_RELOC_IA64_IMM64",
2567   "BFD_RELOC_IA64_DIR32MSB",
2568   "BFD_RELOC_IA64_DIR32LSB",
2569   "BFD_RELOC_IA64_DIR64MSB",
2570   "BFD_RELOC_IA64_DIR64LSB",
2571   "BFD_RELOC_IA64_GPREL22",
2572   "BFD_RELOC_IA64_GPREL64I",
2573   "BFD_RELOC_IA64_GPREL32MSB",
2574   "BFD_RELOC_IA64_GPREL32LSB",
2575   "BFD_RELOC_IA64_GPREL64MSB",
2576   "BFD_RELOC_IA64_GPREL64LSB",
2577   "BFD_RELOC_IA64_LTOFF22",
2578   "BFD_RELOC_IA64_LTOFF64I",
2579   "BFD_RELOC_IA64_PLTOFF22",
2580   "BFD_RELOC_IA64_PLTOFF64I",
2581   "BFD_RELOC_IA64_PLTOFF64MSB",
2582   "BFD_RELOC_IA64_PLTOFF64LSB",
2583   "BFD_RELOC_IA64_FPTR64I",
2584   "BFD_RELOC_IA64_FPTR32MSB",
2585   "BFD_RELOC_IA64_FPTR32LSB",
2586   "BFD_RELOC_IA64_FPTR64MSB",
2587   "BFD_RELOC_IA64_FPTR64LSB",
2588   "BFD_RELOC_IA64_PCREL21B",
2589   "BFD_RELOC_IA64_PCREL21BI",
2590   "BFD_RELOC_IA64_PCREL21M",
2591   "BFD_RELOC_IA64_PCREL21F",
2592   "BFD_RELOC_IA64_PCREL22",
2593   "BFD_RELOC_IA64_PCREL60B",
2594   "BFD_RELOC_IA64_PCREL64I",
2595   "BFD_RELOC_IA64_PCREL32MSB",
2596   "BFD_RELOC_IA64_PCREL32LSB",
2597   "BFD_RELOC_IA64_PCREL64MSB",
2598   "BFD_RELOC_IA64_PCREL64LSB",
2599   "BFD_RELOC_IA64_LTOFF_FPTR22",
2600   "BFD_RELOC_IA64_LTOFF_FPTR64I",
2601   "BFD_RELOC_IA64_LTOFF_FPTR32MSB",
2602   "BFD_RELOC_IA64_LTOFF_FPTR32LSB",
2603   "BFD_RELOC_IA64_LTOFF_FPTR64MSB",
2604   "BFD_RELOC_IA64_LTOFF_FPTR64LSB",
2605   "BFD_RELOC_IA64_SEGREL32MSB",
2606   "BFD_RELOC_IA64_SEGREL32LSB",
2607   "BFD_RELOC_IA64_SEGREL64MSB",
2608   "BFD_RELOC_IA64_SEGREL64LSB",
2609   "BFD_RELOC_IA64_SECREL32MSB",
2610   "BFD_RELOC_IA64_SECREL32LSB",
2611   "BFD_RELOC_IA64_SECREL64MSB",
2612   "BFD_RELOC_IA64_SECREL64LSB",
2613   "BFD_RELOC_IA64_REL32MSB",
2614   "BFD_RELOC_IA64_REL32LSB",
2615   "BFD_RELOC_IA64_REL64MSB",
2616   "BFD_RELOC_IA64_REL64LSB",
2617   "BFD_RELOC_IA64_LTV32MSB",
2618   "BFD_RELOC_IA64_LTV32LSB",
2619   "BFD_RELOC_IA64_LTV64MSB",
2620   "BFD_RELOC_IA64_LTV64LSB",
2621   "BFD_RELOC_IA64_IPLTMSB",
2622   "BFD_RELOC_IA64_IPLTLSB",
2623   "BFD_RELOC_IA64_COPY",
2624   "BFD_RELOC_IA64_LTOFF22X",
2625   "BFD_RELOC_IA64_LDXMOV",
2626   "BFD_RELOC_IA64_TPREL14",
2627   "BFD_RELOC_IA64_TPREL22",
2628   "BFD_RELOC_IA64_TPREL64I",
2629   "BFD_RELOC_IA64_TPREL64MSB",
2630   "BFD_RELOC_IA64_TPREL64LSB",
2631   "BFD_RELOC_IA64_LTOFF_TPREL22",
2632   "BFD_RELOC_IA64_DTPMOD64MSB",
2633   "BFD_RELOC_IA64_DTPMOD64LSB",
2634   "BFD_RELOC_IA64_LTOFF_DTPMOD22",
2635   "BFD_RELOC_IA64_DTPREL14",
2636   "BFD_RELOC_IA64_DTPREL22",
2637   "BFD_RELOC_IA64_DTPREL64I",
2638   "BFD_RELOC_IA64_DTPREL32MSB",
2639   "BFD_RELOC_IA64_DTPREL32LSB",
2640   "BFD_RELOC_IA64_DTPREL64MSB",
2641   "BFD_RELOC_IA64_DTPREL64LSB",
2642   "BFD_RELOC_IA64_LTOFF_DTPREL22",
2643   "BFD_RELOC_M68HC11_HI8",
2644   "BFD_RELOC_M68HC11_LO8",
2645   "BFD_RELOC_M68HC11_3B",
2646   "BFD_RELOC_M68HC11_RL_JUMP",
2647   "BFD_RELOC_M68HC11_RL_GROUP",
2648   "BFD_RELOC_M68HC11_LO16",
2649   "BFD_RELOC_M68HC11_PAGE",
2650   "BFD_RELOC_M68HC11_24",
2651   "BFD_RELOC_M68HC12_5B",
2652   "BFD_RELOC_XGATE_RL_JUMP",
2653   "BFD_RELOC_XGATE_RL_GROUP",
2654   "BFD_RELOC_XGATE_LO16",
2655   "BFD_RELOC_XGATE_GPAGE",
2656   "BFD_RELOC_XGATE_24",
2657   "BFD_RELOC_XGATE_PCREL_9",
2658   "BFD_RELOC_XGATE_PCREL_10",
2659   "BFD_RELOC_XGATE_IMM8_LO",
2660   "BFD_RELOC_XGATE_IMM8_HI",
2661   "BFD_RELOC_XGATE_IMM3",
2662   "BFD_RELOC_XGATE_IMM4",
2663   "BFD_RELOC_XGATE_IMM5",
2664   "BFD_RELOC_M68HC12_9B",
2665   "BFD_RELOC_M68HC12_16B",
2666   "BFD_RELOC_M68HC12_9_PCREL",
2667   "BFD_RELOC_M68HC12_10_PCREL",
2668   "BFD_RELOC_M68HC12_LO8XG",
2669   "BFD_RELOC_M68HC12_HI8XG",
2670   "BFD_RELOC_S12Z_15_PCREL",
2671   "BFD_RELOC_CR16_NUM8",
2672   "BFD_RELOC_CR16_NUM16",
2673   "BFD_RELOC_CR16_NUM32",
2674   "BFD_RELOC_CR16_NUM32a",
2675   "BFD_RELOC_CR16_REGREL0",
2676   "BFD_RELOC_CR16_REGREL4",
2677   "BFD_RELOC_CR16_REGREL4a",
2678   "BFD_RELOC_CR16_REGREL14",
2679   "BFD_RELOC_CR16_REGREL14a",
2680   "BFD_RELOC_CR16_REGREL16",
2681   "BFD_RELOC_CR16_REGREL20",
2682   "BFD_RELOC_CR16_REGREL20a",
2683   "BFD_RELOC_CR16_ABS20",
2684   "BFD_RELOC_CR16_ABS24",
2685   "BFD_RELOC_CR16_IMM4",
2686   "BFD_RELOC_CR16_IMM8",
2687   "BFD_RELOC_CR16_IMM16",
2688   "BFD_RELOC_CR16_IMM20",
2689   "BFD_RELOC_CR16_IMM24",
2690   "BFD_RELOC_CR16_IMM32",
2691   "BFD_RELOC_CR16_IMM32a",
2692   "BFD_RELOC_CR16_DISP4",
2693   "BFD_RELOC_CR16_DISP8",
2694   "BFD_RELOC_CR16_DISP16",
2695   "BFD_RELOC_CR16_DISP20",
2696   "BFD_RELOC_CR16_DISP24",
2697   "BFD_RELOC_CR16_DISP24a",
2698   "BFD_RELOC_CR16_SWITCH8",
2699   "BFD_RELOC_CR16_SWITCH16",
2700   "BFD_RELOC_CR16_SWITCH32",
2701   "BFD_RELOC_CR16_GOT_REGREL20",
2702   "BFD_RELOC_CR16_GOTC_REGREL20",
2703   "BFD_RELOC_CR16_GLOB_DAT",
2704   "BFD_RELOC_CRX_REL4",
2705   "BFD_RELOC_CRX_REL8",
2706   "BFD_RELOC_CRX_REL8_CMP",
2707   "BFD_RELOC_CRX_REL16",
2708   "BFD_RELOC_CRX_REL24",
2709   "BFD_RELOC_CRX_REL32",
2710   "BFD_RELOC_CRX_REGREL12",
2711   "BFD_RELOC_CRX_REGREL22",
2712   "BFD_RELOC_CRX_REGREL28",
2713   "BFD_RELOC_CRX_REGREL32",
2714   "BFD_RELOC_CRX_ABS16",
2715   "BFD_RELOC_CRX_ABS32",
2716   "BFD_RELOC_CRX_NUM8",
2717   "BFD_RELOC_CRX_NUM16",
2718   "BFD_RELOC_CRX_NUM32",
2719   "BFD_RELOC_CRX_IMM16",
2720   "BFD_RELOC_CRX_IMM32",
2721   "BFD_RELOC_CRX_SWITCH8",
2722   "BFD_RELOC_CRX_SWITCH16",
2723   "BFD_RELOC_CRX_SWITCH32",
2724   "BFD_RELOC_CRIS_BDISP8",
2725   "BFD_RELOC_CRIS_UNSIGNED_5",
2726   "BFD_RELOC_CRIS_SIGNED_6",
2727   "BFD_RELOC_CRIS_UNSIGNED_6",
2728   "BFD_RELOC_CRIS_SIGNED_8",
2729   "BFD_RELOC_CRIS_UNSIGNED_8",
2730   "BFD_RELOC_CRIS_SIGNED_16",
2731   "BFD_RELOC_CRIS_UNSIGNED_16",
2732   "BFD_RELOC_CRIS_LAPCQ_OFFSET",
2733   "BFD_RELOC_CRIS_UNSIGNED_4",
2734   "BFD_RELOC_CRIS_COPY",
2735   "BFD_RELOC_CRIS_GLOB_DAT",
2736   "BFD_RELOC_CRIS_JUMP_SLOT",
2737   "BFD_RELOC_CRIS_RELATIVE",
2738   "BFD_RELOC_CRIS_32_GOT",
2739   "BFD_RELOC_CRIS_16_GOT",
2740   "BFD_RELOC_CRIS_32_GOTPLT",
2741   "BFD_RELOC_CRIS_16_GOTPLT",
2742   "BFD_RELOC_CRIS_32_GOTREL",
2743   "BFD_RELOC_CRIS_32_PLT_GOTREL",
2744   "BFD_RELOC_CRIS_32_PLT_PCREL",
2745   "BFD_RELOC_CRIS_32_GOT_GD",
2746   "BFD_RELOC_CRIS_16_GOT_GD",
2747   "BFD_RELOC_CRIS_32_GD",
2748   "BFD_RELOC_CRIS_DTP",
2749   "BFD_RELOC_CRIS_32_DTPREL",
2750   "BFD_RELOC_CRIS_16_DTPREL",
2751   "BFD_RELOC_CRIS_32_GOT_TPREL",
2752   "BFD_RELOC_CRIS_16_GOT_TPREL",
2753   "BFD_RELOC_CRIS_32_TPREL",
2754   "BFD_RELOC_CRIS_16_TPREL",
2755   "BFD_RELOC_CRIS_DTPMOD",
2756   "BFD_RELOC_CRIS_32_IE",
2757   "BFD_RELOC_OR1K_REL_26",
2758   "BFD_RELOC_OR1K_SLO16",
2759   "BFD_RELOC_OR1K_PCREL_PG21",
2760   "BFD_RELOC_OR1K_LO13",
2761   "BFD_RELOC_OR1K_SLO13",
2762   "BFD_RELOC_OR1K_GOTPC_HI16",
2763   "BFD_RELOC_OR1K_GOTPC_LO16",
2764   "BFD_RELOC_OR1K_GOT_AHI16",
2765   "BFD_RELOC_OR1K_GOT16",
2766   "BFD_RELOC_OR1K_GOT_PG21",
2767   "BFD_RELOC_OR1K_GOT_LO13",
2768   "BFD_RELOC_OR1K_PLT26",
2769   "BFD_RELOC_OR1K_PLTA26",
2770   "BFD_RELOC_OR1K_GOTOFF_SLO16",
2771   "BFD_RELOC_OR1K_COPY",
2772   "BFD_RELOC_OR1K_GLOB_DAT",
2773   "BFD_RELOC_OR1K_JMP_SLOT",
2774   "BFD_RELOC_OR1K_RELATIVE",
2775   "BFD_RELOC_OR1K_TLS_GD_HI16",
2776   "BFD_RELOC_OR1K_TLS_GD_LO16",
2777   "BFD_RELOC_OR1K_TLS_GD_PG21",
2778   "BFD_RELOC_OR1K_TLS_GD_LO13",
2779   "BFD_RELOC_OR1K_TLS_LDM_HI16",
2780   "BFD_RELOC_OR1K_TLS_LDM_LO16",
2781   "BFD_RELOC_OR1K_TLS_LDM_PG21",
2782   "BFD_RELOC_OR1K_TLS_LDM_LO13",
2783   "BFD_RELOC_OR1K_TLS_LDO_HI16",
2784   "BFD_RELOC_OR1K_TLS_LDO_LO16",
2785   "BFD_RELOC_OR1K_TLS_IE_HI16",
2786   "BFD_RELOC_OR1K_TLS_IE_AHI16",
2787   "BFD_RELOC_OR1K_TLS_IE_LO16",
2788   "BFD_RELOC_OR1K_TLS_IE_PG21",
2789   "BFD_RELOC_OR1K_TLS_IE_LO13",
2790   "BFD_RELOC_OR1K_TLS_LE_HI16",
2791   "BFD_RELOC_OR1K_TLS_LE_AHI16",
2792   "BFD_RELOC_OR1K_TLS_LE_LO16",
2793   "BFD_RELOC_OR1K_TLS_LE_SLO16",
2794   "BFD_RELOC_OR1K_TLS_TPOFF",
2795   "BFD_RELOC_OR1K_TLS_DTPOFF",
2796   "BFD_RELOC_OR1K_TLS_DTPMOD",
2797   "BFD_RELOC_H8_DIR16A8",
2798   "BFD_RELOC_H8_DIR16R8",
2799   "BFD_RELOC_H8_DIR24A8",
2800   "BFD_RELOC_H8_DIR24R8",
2801   "BFD_RELOC_H8_DIR32A16",
2802   "BFD_RELOC_H8_DISP32A16",
2803   "BFD_RELOC_XSTORMY16_REL_12",
2804   "BFD_RELOC_XSTORMY16_12",
2805   "BFD_RELOC_XSTORMY16_24",
2806   "BFD_RELOC_XSTORMY16_FPTR16",
2807   "BFD_RELOC_RELC",
2808   "BFD_RELOC_VAX_GLOB_DAT",
2809   "BFD_RELOC_VAX_GLOB_REF",
2810   "BFD_RELOC_VAX_JMP_SLOT",
2811   "BFD_RELOC_VAX_RELATIVE",
2812   "BFD_RELOC_MT_PC16",
2813   "BFD_RELOC_MT_HI16",
2814   "BFD_RELOC_MT_LO16",
2815   "BFD_RELOC_MT_GNU_VTINHERIT",
2816   "BFD_RELOC_MT_GNU_VTENTRY",
2817   "BFD_RELOC_MT_PCINSN8",
2818   "BFD_RELOC_MSP430_10_PCREL",
2819   "BFD_RELOC_MSP430_16_PCREL",
2820   "BFD_RELOC_MSP430_16",
2821   "BFD_RELOC_MSP430_16_PCREL_BYTE",
2822   "BFD_RELOC_MSP430_16_BYTE",
2823   "BFD_RELOC_MSP430_2X_PCREL",
2824   "BFD_RELOC_MSP430_RL_PCREL",
2825   "BFD_RELOC_MSP430_ABS8",
2826   "BFD_RELOC_MSP430X_PCR20_EXT_SRC",
2827   "BFD_RELOC_MSP430X_PCR20_EXT_DST",
2828   "BFD_RELOC_MSP430X_PCR20_EXT_ODST",
2829   "BFD_RELOC_MSP430X_ABS20_EXT_SRC",
2830   "BFD_RELOC_MSP430X_ABS20_EXT_DST",
2831   "BFD_RELOC_MSP430X_ABS20_EXT_ODST",
2832   "BFD_RELOC_MSP430X_ABS20_ADR_SRC",
2833   "BFD_RELOC_MSP430X_ABS20_ADR_DST",
2834   "BFD_RELOC_MSP430X_PCR16",
2835   "BFD_RELOC_MSP430X_PCR20_CALL",
2836   "BFD_RELOC_MSP430X_ABS16",
2837   "BFD_RELOC_MSP430_ABS_HI16",
2838   "BFD_RELOC_MSP430_PREL31",
2839   "BFD_RELOC_MSP430_SYM_DIFF",
2840   "BFD_RELOC_MSP430_SET_ULEB128",
2841   "BFD_RELOC_MSP430_SUB_ULEB128",
2842   "BFD_RELOC_NIOS2_S16",
2843   "BFD_RELOC_NIOS2_U16",
2844   "BFD_RELOC_NIOS2_CALL26",
2845   "BFD_RELOC_NIOS2_IMM5",
2846   "BFD_RELOC_NIOS2_CACHE_OPX",
2847   "BFD_RELOC_NIOS2_IMM6",
2848   "BFD_RELOC_NIOS2_IMM8",
2849   "BFD_RELOC_NIOS2_HI16",
2850   "BFD_RELOC_NIOS2_LO16",
2851   "BFD_RELOC_NIOS2_HIADJ16",
2852   "BFD_RELOC_NIOS2_GPREL",
2853   "BFD_RELOC_NIOS2_UJMP",
2854   "BFD_RELOC_NIOS2_CJMP",
2855   "BFD_RELOC_NIOS2_CALLR",
2856   "BFD_RELOC_NIOS2_ALIGN",
2857   "BFD_RELOC_NIOS2_GOT16",
2858   "BFD_RELOC_NIOS2_CALL16",
2859   "BFD_RELOC_NIOS2_GOTOFF_LO",
2860   "BFD_RELOC_NIOS2_GOTOFF_HA",
2861   "BFD_RELOC_NIOS2_PCREL_LO",
2862   "BFD_RELOC_NIOS2_PCREL_HA",
2863   "BFD_RELOC_NIOS2_TLS_GD16",
2864   "BFD_RELOC_NIOS2_TLS_LDM16",
2865   "BFD_RELOC_NIOS2_TLS_LDO16",
2866   "BFD_RELOC_NIOS2_TLS_IE16",
2867   "BFD_RELOC_NIOS2_TLS_LE16",
2868   "BFD_RELOC_NIOS2_TLS_DTPMOD",
2869   "BFD_RELOC_NIOS2_TLS_DTPREL",
2870   "BFD_RELOC_NIOS2_TLS_TPREL",
2871   "BFD_RELOC_NIOS2_COPY",
2872   "BFD_RELOC_NIOS2_GLOB_DAT",
2873   "BFD_RELOC_NIOS2_JUMP_SLOT",
2874   "BFD_RELOC_NIOS2_RELATIVE",
2875   "BFD_RELOC_NIOS2_GOTOFF",
2876   "BFD_RELOC_NIOS2_CALL26_NOAT",
2877   "BFD_RELOC_NIOS2_GOT_LO",
2878   "BFD_RELOC_NIOS2_GOT_HA",
2879   "BFD_RELOC_NIOS2_CALL_LO",
2880   "BFD_RELOC_NIOS2_CALL_HA",
2881   "BFD_RELOC_NIOS2_R2_S12",
2882   "BFD_RELOC_NIOS2_R2_I10_1_PCREL",
2883   "BFD_RELOC_NIOS2_R2_T1I7_1_PCREL",
2884   "BFD_RELOC_NIOS2_R2_T1I7_2",
2885   "BFD_RELOC_NIOS2_R2_T2I4",
2886   "BFD_RELOC_NIOS2_R2_T2I4_1",
2887   "BFD_RELOC_NIOS2_R2_T2I4_2",
2888   "BFD_RELOC_NIOS2_R2_X1I7_2",
2889   "BFD_RELOC_NIOS2_R2_X2L5",
2890   "BFD_RELOC_NIOS2_R2_F1I5_2",
2891   "BFD_RELOC_NIOS2_R2_L5I4X1",
2892   "BFD_RELOC_NIOS2_R2_T1X1I6",
2893   "BFD_RELOC_NIOS2_R2_T1X1I6_2",
2894   "BFD_RELOC_PRU_U16",
2895   "BFD_RELOC_PRU_U16_PMEMIMM",
2896   "BFD_RELOC_PRU_LDI32",
2897   "BFD_RELOC_PRU_S10_PCREL",
2898   "BFD_RELOC_PRU_U8_PCREL",
2899   "BFD_RELOC_PRU_32_PMEM",
2900   "BFD_RELOC_PRU_16_PMEM",
2901   "BFD_RELOC_PRU_GNU_DIFF8",
2902   "BFD_RELOC_PRU_GNU_DIFF16",
2903   "BFD_RELOC_PRU_GNU_DIFF32",
2904   "BFD_RELOC_PRU_GNU_DIFF16_PMEM",
2905   "BFD_RELOC_PRU_GNU_DIFF32_PMEM",
2906   "BFD_RELOC_IQ2000_OFFSET_16",
2907   "BFD_RELOC_IQ2000_OFFSET_21",
2908   "BFD_RELOC_IQ2000_UHI16",
2909   "BFD_RELOC_XTENSA_RTLD",
2910   "BFD_RELOC_XTENSA_GLOB_DAT",
2911   "BFD_RELOC_XTENSA_JMP_SLOT",
2912   "BFD_RELOC_XTENSA_RELATIVE",
2913   "BFD_RELOC_XTENSA_PLT",
2914   "BFD_RELOC_XTENSA_DIFF8",
2915   "BFD_RELOC_XTENSA_DIFF16",
2916   "BFD_RELOC_XTENSA_DIFF32",
2917   "BFD_RELOC_XTENSA_SLOT0_OP",
2918   "BFD_RELOC_XTENSA_SLOT1_OP",
2919   "BFD_RELOC_XTENSA_SLOT2_OP",
2920   "BFD_RELOC_XTENSA_SLOT3_OP",
2921   "BFD_RELOC_XTENSA_SLOT4_OP",
2922   "BFD_RELOC_XTENSA_SLOT5_OP",
2923   "BFD_RELOC_XTENSA_SLOT6_OP",
2924   "BFD_RELOC_XTENSA_SLOT7_OP",
2925   "BFD_RELOC_XTENSA_SLOT8_OP",
2926   "BFD_RELOC_XTENSA_SLOT9_OP",
2927   "BFD_RELOC_XTENSA_SLOT10_OP",
2928   "BFD_RELOC_XTENSA_SLOT11_OP",
2929   "BFD_RELOC_XTENSA_SLOT12_OP",
2930   "BFD_RELOC_XTENSA_SLOT13_OP",
2931   "BFD_RELOC_XTENSA_SLOT14_OP",
2932   "BFD_RELOC_XTENSA_SLOT0_ALT",
2933   "BFD_RELOC_XTENSA_SLOT1_ALT",
2934   "BFD_RELOC_XTENSA_SLOT2_ALT",
2935   "BFD_RELOC_XTENSA_SLOT3_ALT",
2936   "BFD_RELOC_XTENSA_SLOT4_ALT",
2937   "BFD_RELOC_XTENSA_SLOT5_ALT",
2938   "BFD_RELOC_XTENSA_SLOT6_ALT",
2939   "BFD_RELOC_XTENSA_SLOT7_ALT",
2940   "BFD_RELOC_XTENSA_SLOT8_ALT",
2941   "BFD_RELOC_XTENSA_SLOT9_ALT",
2942   "BFD_RELOC_XTENSA_SLOT10_ALT",
2943   "BFD_RELOC_XTENSA_SLOT11_ALT",
2944   "BFD_RELOC_XTENSA_SLOT12_ALT",
2945   "BFD_RELOC_XTENSA_SLOT13_ALT",
2946   "BFD_RELOC_XTENSA_SLOT14_ALT",
2947   "BFD_RELOC_XTENSA_OP0",
2948   "BFD_RELOC_XTENSA_OP1",
2949   "BFD_RELOC_XTENSA_OP2",
2950   "BFD_RELOC_XTENSA_ASM_EXPAND",
2951   "BFD_RELOC_XTENSA_ASM_SIMPLIFY",
2952   "BFD_RELOC_XTENSA_TLSDESC_FN",
2953   "BFD_RELOC_XTENSA_TLSDESC_ARG",
2954   "BFD_RELOC_XTENSA_TLS_DTPOFF",
2955   "BFD_RELOC_XTENSA_TLS_TPOFF",
2956   "BFD_RELOC_XTENSA_TLS_FUNC",
2957   "BFD_RELOC_XTENSA_TLS_ARG",
2958   "BFD_RELOC_XTENSA_TLS_CALL",
2959   "BFD_RELOC_XTENSA_PDIFF8",
2960   "BFD_RELOC_XTENSA_PDIFF16",
2961   "BFD_RELOC_XTENSA_PDIFF32",
2962   "BFD_RELOC_XTENSA_NDIFF8",
2963   "BFD_RELOC_XTENSA_NDIFF16",
2964   "BFD_RELOC_XTENSA_NDIFF32",
2965   "BFD_RELOC_Z80_DISP8",
2966   "BFD_RELOC_Z80_BYTE0",
2967   "BFD_RELOC_Z80_BYTE1",
2968   "BFD_RELOC_Z80_BYTE2",
2969   "BFD_RELOC_Z80_BYTE3",
2970   "BFD_RELOC_Z80_WORD0",
2971   "BFD_RELOC_Z80_WORD1",
2972   "BFD_RELOC_Z80_16_BE",
2973   "BFD_RELOC_Z8K_DISP7",
2974   "BFD_RELOC_Z8K_CALLR",
2975   "BFD_RELOC_Z8K_IMM4L",
2976   "BFD_RELOC_LM32_CALL",
2977   "BFD_RELOC_LM32_BRANCH",
2978   "BFD_RELOC_LM32_16_GOT",
2979   "BFD_RELOC_LM32_GOTOFF_HI16",
2980   "BFD_RELOC_LM32_GOTOFF_LO16",
2981   "BFD_RELOC_LM32_COPY",
2982   "BFD_RELOC_LM32_GLOB_DAT",
2983   "BFD_RELOC_LM32_JMP_SLOT",
2984   "BFD_RELOC_LM32_RELATIVE",
2985   "BFD_RELOC_MACH_O_SECTDIFF",
2986   "BFD_RELOC_MACH_O_LOCAL_SECTDIFF",
2987   "BFD_RELOC_MACH_O_PAIR",
2988   "BFD_RELOC_MACH_O_SUBTRACTOR32",
2989   "BFD_RELOC_MACH_O_SUBTRACTOR64",
2990   "BFD_RELOC_MACH_O_X86_64_BRANCH32",
2991   "BFD_RELOC_MACH_O_X86_64_BRANCH8",
2992   "BFD_RELOC_MACH_O_X86_64_GOT",
2993   "BFD_RELOC_MACH_O_X86_64_GOT_LOAD",
2994   "BFD_RELOC_MACH_O_X86_64_PCREL32_1",
2995   "BFD_RELOC_MACH_O_X86_64_PCREL32_2",
2996   "BFD_RELOC_MACH_O_X86_64_PCREL32_4",
2997   "BFD_RELOC_MACH_O_X86_64_TLV",
2998   "BFD_RELOC_MACH_O_ARM64_ADDEND",
2999   "BFD_RELOC_MACH_O_ARM64_GOT_LOAD_PAGE21",
3000   "BFD_RELOC_MACH_O_ARM64_GOT_LOAD_PAGEOFF12",
3001   "BFD_RELOC_MACH_O_ARM64_POINTER_TO_GOT",
3002   "BFD_RELOC_MICROBLAZE_32_LO",
3003   "BFD_RELOC_MICROBLAZE_32_LO_PCREL",
3004   "BFD_RELOC_MICROBLAZE_32_ROSDA",
3005   "BFD_RELOC_MICROBLAZE_32_RWSDA",
3006   "BFD_RELOC_MICROBLAZE_32_SYM_OP_SYM",
3007   "BFD_RELOC_MICROBLAZE_32_NONE",
3008   "BFD_RELOC_MICROBLAZE_64_NONE",
3009   "BFD_RELOC_MICROBLAZE_64_GOTPC",
3010   "BFD_RELOC_MICROBLAZE_64_GOT",
3011   "BFD_RELOC_MICROBLAZE_64_PLT",
3012   "BFD_RELOC_MICROBLAZE_64_GOTOFF",
3013   "BFD_RELOC_MICROBLAZE_32_GOTOFF",
3014   "BFD_RELOC_MICROBLAZE_COPY",
3015   "BFD_RELOC_MICROBLAZE_64_TLS",
3016   "BFD_RELOC_MICROBLAZE_64_TLSGD",
3017   "BFD_RELOC_MICROBLAZE_64_TLSLD",
3018   "BFD_RELOC_MICROBLAZE_32_TLSDTPMOD",
3019   "BFD_RELOC_MICROBLAZE_32_TLSDTPREL",
3020   "BFD_RELOC_MICROBLAZE_64_TLSDTPREL",
3021   "BFD_RELOC_MICROBLAZE_64_TLSGOTTPREL",
3022   "BFD_RELOC_MICROBLAZE_64_TLSTPREL",
3023   "BFD_RELOC_MICROBLAZE_64_TEXTPCREL",
3024   "BFD_RELOC_MICROBLAZE_64_TEXTREL",
3025   "BFD_RELOC_KVX_RELOC_START",
3026   "BFD_RELOC_KVX_NONE",
3027   "BFD_RELOC_KVX_16",
3028   "BFD_RELOC_KVX_32",
3029   "BFD_RELOC_KVX_64",
3030   "BFD_RELOC_KVX_S16_PCREL",
3031   "BFD_RELOC_KVX_PCREL17",
3032   "BFD_RELOC_KVX_PCREL27",
3033   "BFD_RELOC_KVX_32_PCREL",
3034   "BFD_RELOC_KVX_S37_PCREL_LO10",
3035   "BFD_RELOC_KVX_S37_PCREL_UP27",
3036   "BFD_RELOC_KVX_S43_PCREL_LO10",
3037   "BFD_RELOC_KVX_S43_PCREL_UP27",
3038   "BFD_RELOC_KVX_S43_PCREL_EX6",
3039   "BFD_RELOC_KVX_S64_PCREL_LO10",
3040   "BFD_RELOC_KVX_S64_PCREL_UP27",
3041   "BFD_RELOC_KVX_S64_PCREL_EX27",
3042   "BFD_RELOC_KVX_64_PCREL",
3043   "BFD_RELOC_KVX_S16",
3044   "BFD_RELOC_KVX_S32_LO5",
3045   "BFD_RELOC_KVX_S32_UP27",
3046   "BFD_RELOC_KVX_S37_LO10",
3047   "BFD_RELOC_KVX_S37_UP27",
3048   "BFD_RELOC_KVX_S37_GOTOFF_LO10",
3049   "BFD_RELOC_KVX_S37_GOTOFF_UP27",
3050   "BFD_RELOC_KVX_S43_GOTOFF_LO10",
3051   "BFD_RELOC_KVX_S43_GOTOFF_UP27",
3052   "BFD_RELOC_KVX_S43_GOTOFF_EX6",
3053   "BFD_RELOC_KVX_32_GOTOFF",
3054   "BFD_RELOC_KVX_64_GOTOFF",
3055   "BFD_RELOC_KVX_32_GOT",
3056   "BFD_RELOC_KVX_S37_GOT_LO10",
3057   "BFD_RELOC_KVX_S37_GOT_UP27",
3058   "BFD_RELOC_KVX_S43_GOT_LO10",
3059   "BFD_RELOC_KVX_S43_GOT_UP27",
3060   "BFD_RELOC_KVX_S43_GOT_EX6",
3061   "BFD_RELOC_KVX_64_GOT",
3062   "BFD_RELOC_KVX_GLOB_DAT",
3063   "BFD_RELOC_KVX_COPY",
3064   "BFD_RELOC_KVX_JMP_SLOT",
3065   "BFD_RELOC_KVX_RELATIVE",
3066   "BFD_RELOC_KVX_S43_LO10",
3067   "BFD_RELOC_KVX_S43_UP27",
3068   "BFD_RELOC_KVX_S43_EX6",
3069   "BFD_RELOC_KVX_S64_LO10",
3070   "BFD_RELOC_KVX_S64_UP27",
3071   "BFD_RELOC_KVX_S64_EX27",
3072   "BFD_RELOC_KVX_S37_GOTADDR_LO10",
3073   "BFD_RELOC_KVX_S37_GOTADDR_UP27",
3074   "BFD_RELOC_KVX_S43_GOTADDR_LO10",
3075   "BFD_RELOC_KVX_S43_GOTADDR_UP27",
3076   "BFD_RELOC_KVX_S43_GOTADDR_EX6",
3077   "BFD_RELOC_KVX_S64_GOTADDR_LO10",
3078   "BFD_RELOC_KVX_S64_GOTADDR_UP27",
3079   "BFD_RELOC_KVX_S64_GOTADDR_EX27",
3080   "BFD_RELOC_KVX_64_DTPMOD",
3081   "BFD_RELOC_KVX_64_DTPOFF",
3082   "BFD_RELOC_KVX_S37_TLS_DTPOFF_LO10",
3083   "BFD_RELOC_KVX_S37_TLS_DTPOFF_UP27",
3084   "BFD_RELOC_KVX_S43_TLS_DTPOFF_LO10",
3085   "BFD_RELOC_KVX_S43_TLS_DTPOFF_UP27",
3086   "BFD_RELOC_KVX_S43_TLS_DTPOFF_EX6",
3087   "BFD_RELOC_KVX_S37_TLS_GD_LO10",
3088   "BFD_RELOC_KVX_S37_TLS_GD_UP27",
3089   "BFD_RELOC_KVX_S43_TLS_GD_LO10",
3090   "BFD_RELOC_KVX_S43_TLS_GD_UP27",
3091   "BFD_RELOC_KVX_S43_TLS_GD_EX6",
3092   "BFD_RELOC_KVX_S37_TLS_LD_LO10",
3093   "BFD_RELOC_KVX_S37_TLS_LD_UP27",
3094   "BFD_RELOC_KVX_S43_TLS_LD_LO10",
3095   "BFD_RELOC_KVX_S43_TLS_LD_UP27",
3096   "BFD_RELOC_KVX_S43_TLS_LD_EX6",
3097   "BFD_RELOC_KVX_64_TPOFF",
3098   "BFD_RELOC_KVX_S37_TLS_IE_LO10",
3099   "BFD_RELOC_KVX_S37_TLS_IE_UP27",
3100   "BFD_RELOC_KVX_S43_TLS_IE_LO10",
3101   "BFD_RELOC_KVX_S43_TLS_IE_UP27",
3102   "BFD_RELOC_KVX_S43_TLS_IE_EX6",
3103   "BFD_RELOC_KVX_S37_TLS_LE_LO10",
3104   "BFD_RELOC_KVX_S37_TLS_LE_UP27",
3105   "BFD_RELOC_KVX_S43_TLS_LE_LO10",
3106   "BFD_RELOC_KVX_S43_TLS_LE_UP27",
3107   "BFD_RELOC_KVX_S43_TLS_LE_EX6",
3108   "BFD_RELOC_KVX_8",
3109   "BFD_RELOC_KVX_RELOC_END",
3110   "BFD_RELOC_AARCH64_RELOC_START",
3111   "BFD_RELOC_AARCH64_NULL",
3112   "BFD_RELOC_AARCH64_NONE",
3113   "BFD_RELOC_AARCH64_64",
3114   "BFD_RELOC_AARCH64_32",
3115   "BFD_RELOC_AARCH64_16",
3116   "BFD_RELOC_AARCH64_64_PCREL",
3117   "BFD_RELOC_AARCH64_32_PCREL",
3118   "BFD_RELOC_AARCH64_16_PCREL",
3119   "BFD_RELOC_AARCH64_MOVW_G0",
3120   "BFD_RELOC_AARCH64_MOVW_G0_NC",
3121   "BFD_RELOC_AARCH64_MOVW_G1",
3122   "BFD_RELOC_AARCH64_MOVW_G1_NC",
3123   "BFD_RELOC_AARCH64_MOVW_G2",
3124   "BFD_RELOC_AARCH64_MOVW_G2_NC",
3125   "BFD_RELOC_AARCH64_MOVW_G3",
3126   "BFD_RELOC_AARCH64_MOVW_G0_S",
3127   "BFD_RELOC_AARCH64_MOVW_G1_S",
3128   "BFD_RELOC_AARCH64_MOVW_G2_S",
3129   "BFD_RELOC_AARCH64_MOVW_PREL_G0",
3130   "BFD_RELOC_AARCH64_MOVW_PREL_G0_NC",
3131   "BFD_RELOC_AARCH64_MOVW_PREL_G1",
3132   "BFD_RELOC_AARCH64_MOVW_PREL_G1_NC",
3133   "BFD_RELOC_AARCH64_MOVW_PREL_G2",
3134   "BFD_RELOC_AARCH64_MOVW_PREL_G2_NC",
3135   "BFD_RELOC_AARCH64_MOVW_PREL_G3",
3136   "BFD_RELOC_AARCH64_LD_LO19_PCREL",
3137   "BFD_RELOC_AARCH64_ADR_LO21_PCREL",
3138   "BFD_RELOC_AARCH64_ADR_HI21_PCREL",
3139   "BFD_RELOC_AARCH64_ADR_HI21_NC_PCREL",
3140   "BFD_RELOC_AARCH64_ADD_LO12",
3141   "BFD_RELOC_AARCH64_LDST8_LO12",
3142   "BFD_RELOC_AARCH64_TSTBR14",
3143   "BFD_RELOC_AARCH64_BRANCH19",
3144   "BFD_RELOC_AARCH64_JUMP26",
3145   "BFD_RELOC_AARCH64_CALL26",
3146   "BFD_RELOC_AARCH64_LDST16_LO12",
3147   "BFD_RELOC_AARCH64_LDST32_LO12",
3148   "BFD_RELOC_AARCH64_LDST64_LO12",
3149   "BFD_RELOC_AARCH64_LDST128_LO12",
3150   "BFD_RELOC_AARCH64_GOT_LD_PREL19",
3151   "BFD_RELOC_AARCH64_ADR_GOT_PAGE",
3152   "BFD_RELOC_AARCH64_LD64_GOT_LO12_NC",
3153   "BFD_RELOC_AARCH64_LD32_GOT_LO12_NC",
3154   "BFD_RELOC_AARCH64_MOVW_GOTOFF_G0_NC",
3155   "BFD_RELOC_AARCH64_MOVW_GOTOFF_G1",
3156   "BFD_RELOC_AARCH64_LD64_GOTOFF_LO15",
3157   "BFD_RELOC_AARCH64_LD32_GOTPAGE_LO14",
3158   "BFD_RELOC_AARCH64_LD64_GOTPAGE_LO15",
3159   "BFD_RELOC_AARCH64_TLSGD_ADR_PAGE21",
3160   "BFD_RELOC_AARCH64_TLSGD_ADR_PREL21",
3161   "BFD_RELOC_AARCH64_TLSGD_ADD_LO12_NC",
3162   "BFD_RELOC_AARCH64_TLSGD_MOVW_G0_NC",
3163   "BFD_RELOC_AARCH64_TLSGD_MOVW_G1",
3164   "BFD_RELOC_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21",
3165   "BFD_RELOC_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC",
3166   "BFD_RELOC_AARCH64_TLSIE_LD32_GOTTPREL_LO12_NC",
3167   "BFD_RELOC_AARCH64_TLSIE_LD_GOTTPREL_PREL19",
3168   "BFD_RELOC_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC",
3169   "BFD_RELOC_AARCH64_TLSIE_MOVW_GOTTPREL_G1",
3170   "BFD_RELOC_AARCH64_TLSLD_ADD_DTPREL_HI12",
3171   "BFD_RELOC_AARCH64_TLSLD_ADD_DTPREL_LO12",
3172   "BFD_RELOC_AARCH64_TLSLD_ADD_DTPREL_LO12_NC",
3173   "BFD_RELOC_AARCH64_TLSLD_ADD_LO12_NC",
3174   "BFD_RELOC_AARCH64_TLSLD_ADR_PAGE21",
3175   "BFD_RELOC_AARCH64_TLSLD_ADR_PREL21",
3176   "BFD_RELOC_AARCH64_TLSLD_LDST16_DTPREL_LO12",
3177   "BFD_RELOC_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC",
3178   "BFD_RELOC_AARCH64_TLSLD_LDST32_DTPREL_LO12",
3179   "BFD_RELOC_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC",
3180   "BFD_RELOC_AARCH64_TLSLD_LDST64_DTPREL_LO12",
3181   "BFD_RELOC_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC",
3182   "BFD_RELOC_AARCH64_TLSLD_LDST8_DTPREL_LO12",
3183   "BFD_RELOC_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC",
3184   "BFD_RELOC_AARCH64_TLSLD_MOVW_DTPREL_G0",
3185   "BFD_RELOC_AARCH64_TLSLD_MOVW_DTPREL_G0_NC",
3186   "BFD_RELOC_AARCH64_TLSLD_MOVW_DTPREL_G1",
3187   "BFD_RELOC_AARCH64_TLSLD_MOVW_DTPREL_G1_NC",
3188   "BFD_RELOC_AARCH64_TLSLD_MOVW_DTPREL_G2",
3189   "BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G2",
3190   "BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G1",
3191   "BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G1_NC",
3192   "BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G0",
3193   "BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G0_NC",
3194   "BFD_RELOC_AARCH64_TLSLE_ADD_TPREL_HI12",
3195   "BFD_RELOC_AARCH64_TLSLE_ADD_TPREL_LO12",
3196   "BFD_RELOC_AARCH64_TLSLE_ADD_TPREL_LO12_NC",
3197   "BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12",
3198   "BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12_NC",
3199   "BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12",
3200   "BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12_NC",
3201   "BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12",
3202   "BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12_NC",
3203   "BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12",
3204   "BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12_NC",
3205   "BFD_RELOC_AARCH64_TLSDESC_LD_PREL19",
3206   "BFD_RELOC_AARCH64_TLSDESC_ADR_PREL21",
3207   "BFD_RELOC_AARCH64_TLSDESC_ADR_PAGE21",
3208   "BFD_RELOC_AARCH64_TLSDESC_LD64_LO12",
3209   "BFD_RELOC_AARCH64_TLSDESC_LD32_LO12_NC",
3210   "BFD_RELOC_AARCH64_TLSDESC_ADD_LO12",
3211   "BFD_RELOC_AARCH64_TLSDESC_OFF_G1",
3212   "BFD_RELOC_AARCH64_TLSDESC_OFF_G0_NC",
3213   "BFD_RELOC_AARCH64_TLSDESC_LDR",
3214   "BFD_RELOC_AARCH64_TLSDESC_ADD",
3215   "BFD_RELOC_AARCH64_TLSDESC_CALL",
3216   "BFD_RELOC_AARCH64_COPY",
3217   "BFD_RELOC_AARCH64_GLOB_DAT",
3218   "BFD_RELOC_AARCH64_JUMP_SLOT",
3219   "BFD_RELOC_AARCH64_RELATIVE",
3220   "BFD_RELOC_AARCH64_TLS_DTPMOD",
3221   "BFD_RELOC_AARCH64_TLS_DTPREL",
3222   "BFD_RELOC_AARCH64_TLS_TPREL",
3223   "BFD_RELOC_AARCH64_TLSDESC",
3224   "BFD_RELOC_AARCH64_IRELATIVE",
3225   "BFD_RELOC_AARCH64_RELOC_END",
3226   "BFD_RELOC_AARCH64_GAS_INTERNAL_FIXUP",
3227   "BFD_RELOC_AARCH64_LDST_LO12",
3228   "BFD_RELOC_AARCH64_TLSLD_LDST_DTPREL_LO12",
3229   "BFD_RELOC_AARCH64_TLSLD_LDST_DTPREL_LO12_NC",
3230   "BFD_RELOC_AARCH64_TLSLE_LDST_TPREL_LO12",
3231   "BFD_RELOC_AARCH64_TLSLE_LDST_TPREL_LO12_NC",
3232   "BFD_RELOC_AARCH64_LD_GOT_LO12_NC",
3233   "BFD_RELOC_AARCH64_TLSIE_LD_GOTTPREL_LO12_NC",
3234   "BFD_RELOC_AARCH64_TLSDESC_LD_LO12_NC",
3235   "BFD_RELOC_TILEPRO_COPY",
3236   "BFD_RELOC_TILEPRO_GLOB_DAT",
3237   "BFD_RELOC_TILEPRO_JMP_SLOT",
3238   "BFD_RELOC_TILEPRO_RELATIVE",
3239   "BFD_RELOC_TILEPRO_BROFF_X1",
3240   "BFD_RELOC_TILEPRO_JOFFLONG_X1",
3241   "BFD_RELOC_TILEPRO_JOFFLONG_X1_PLT",
3242   "BFD_RELOC_TILEPRO_IMM8_X0",
3243   "BFD_RELOC_TILEPRO_IMM8_Y0",
3244   "BFD_RELOC_TILEPRO_IMM8_X1",
3245   "BFD_RELOC_TILEPRO_IMM8_Y1",
3246   "BFD_RELOC_TILEPRO_DEST_IMM8_X1",
3247   "BFD_RELOC_TILEPRO_MT_IMM15_X1",
3248   "BFD_RELOC_TILEPRO_MF_IMM15_X1",
3249   "BFD_RELOC_TILEPRO_IMM16_X0",
3250   "BFD_RELOC_TILEPRO_IMM16_X1",
3251   "BFD_RELOC_TILEPRO_IMM16_X0_LO",
3252   "BFD_RELOC_TILEPRO_IMM16_X1_LO",
3253   "BFD_RELOC_TILEPRO_IMM16_X0_HI",
3254   "BFD_RELOC_TILEPRO_IMM16_X1_HI",
3255   "BFD_RELOC_TILEPRO_IMM16_X0_HA",
3256   "BFD_RELOC_TILEPRO_IMM16_X1_HA",
3257   "BFD_RELOC_TILEPRO_IMM16_X0_PCREL",
3258   "BFD_RELOC_TILEPRO_IMM16_X1_PCREL",
3259   "BFD_RELOC_TILEPRO_IMM16_X0_LO_PCREL",
3260   "BFD_RELOC_TILEPRO_IMM16_X1_LO_PCREL",
3261   "BFD_RELOC_TILEPRO_IMM16_X0_HI_PCREL",
3262   "BFD_RELOC_TILEPRO_IMM16_X1_HI_PCREL",
3263   "BFD_RELOC_TILEPRO_IMM16_X0_HA_PCREL",
3264   "BFD_RELOC_TILEPRO_IMM16_X1_HA_PCREL",
3265   "BFD_RELOC_TILEPRO_IMM16_X0_GOT",
3266   "BFD_RELOC_TILEPRO_IMM16_X1_GOT",
3267   "BFD_RELOC_TILEPRO_IMM16_X0_GOT_LO",
3268   "BFD_RELOC_TILEPRO_IMM16_X1_GOT_LO",
3269   "BFD_RELOC_TILEPRO_IMM16_X0_GOT_HI",
3270   "BFD_RELOC_TILEPRO_IMM16_X1_GOT_HI",
3271   "BFD_RELOC_TILEPRO_IMM16_X0_GOT_HA",
3272   "BFD_RELOC_TILEPRO_IMM16_X1_GOT_HA",
3273   "BFD_RELOC_TILEPRO_MMSTART_X0",
3274   "BFD_RELOC_TILEPRO_MMEND_X0",
3275   "BFD_RELOC_TILEPRO_MMSTART_X1",
3276   "BFD_RELOC_TILEPRO_MMEND_X1",
3277   "BFD_RELOC_TILEPRO_SHAMT_X0",
3278   "BFD_RELOC_TILEPRO_SHAMT_X1",
3279   "BFD_RELOC_TILEPRO_SHAMT_Y0",
3280   "BFD_RELOC_TILEPRO_SHAMT_Y1",
3281   "BFD_RELOC_TILEPRO_TLS_GD_CALL",
3282   "BFD_RELOC_TILEPRO_IMM8_X0_TLS_GD_ADD",
3283   "BFD_RELOC_TILEPRO_IMM8_X1_TLS_GD_ADD",
3284   "BFD_RELOC_TILEPRO_IMM8_Y0_TLS_GD_ADD",
3285   "BFD_RELOC_TILEPRO_IMM8_Y1_TLS_GD_ADD",
3286   "BFD_RELOC_TILEPRO_TLS_IE_LOAD",
3287   "BFD_RELOC_TILEPRO_IMM16_X0_TLS_GD",
3288   "BFD_RELOC_TILEPRO_IMM16_X1_TLS_GD",
3289   "BFD_RELOC_TILEPRO_IMM16_X0_TLS_GD_LO",
3290   "BFD_RELOC_TILEPRO_IMM16_X1_TLS_GD_LO",
3291   "BFD_RELOC_TILEPRO_IMM16_X0_TLS_GD_HI",
3292   "BFD_RELOC_TILEPRO_IMM16_X1_TLS_GD_HI",
3293   "BFD_RELOC_TILEPRO_IMM16_X0_TLS_GD_HA",
3294   "BFD_RELOC_TILEPRO_IMM16_X1_TLS_GD_HA",
3295   "BFD_RELOC_TILEPRO_IMM16_X0_TLS_IE",
3296   "BFD_RELOC_TILEPRO_IMM16_X1_TLS_IE",
3297   "BFD_RELOC_TILEPRO_IMM16_X0_TLS_IE_LO",
3298   "BFD_RELOC_TILEPRO_IMM16_X1_TLS_IE_LO",
3299   "BFD_RELOC_TILEPRO_IMM16_X0_TLS_IE_HI",
3300   "BFD_RELOC_TILEPRO_IMM16_X1_TLS_IE_HI",
3301   "BFD_RELOC_TILEPRO_IMM16_X0_TLS_IE_HA",
3302   "BFD_RELOC_TILEPRO_IMM16_X1_TLS_IE_HA",
3303   "BFD_RELOC_TILEPRO_TLS_DTPMOD32",
3304   "BFD_RELOC_TILEPRO_TLS_DTPOFF32",
3305   "BFD_RELOC_TILEPRO_TLS_TPOFF32",
3306   "BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE",
3307   "BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE",
3308   "BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_LO",
3309   "BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_LO",
3310   "BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HI",
3311   "BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HI",
3312   "BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HA",
3313   "BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HA",
3314   "BFD_RELOC_TILEGX_HW0",
3315   "BFD_RELOC_TILEGX_HW1",
3316   "BFD_RELOC_TILEGX_HW2",
3317   "BFD_RELOC_TILEGX_HW3",
3318   "BFD_RELOC_TILEGX_HW0_LAST",
3319   "BFD_RELOC_TILEGX_HW1_LAST",
3320   "BFD_RELOC_TILEGX_HW2_LAST",
3321   "BFD_RELOC_TILEGX_COPY",
3322   "BFD_RELOC_TILEGX_GLOB_DAT",
3323   "BFD_RELOC_TILEGX_JMP_SLOT",
3324   "BFD_RELOC_TILEGX_RELATIVE",
3325   "BFD_RELOC_TILEGX_BROFF_X1",
3326   "BFD_RELOC_TILEGX_JUMPOFF_X1",
3327   "BFD_RELOC_TILEGX_JUMPOFF_X1_PLT",
3328   "BFD_RELOC_TILEGX_IMM8_X0",
3329   "BFD_RELOC_TILEGX_IMM8_Y0",
3330   "BFD_RELOC_TILEGX_IMM8_X1",
3331   "BFD_RELOC_TILEGX_IMM8_Y1",
3332   "BFD_RELOC_TILEGX_DEST_IMM8_X1",
3333   "BFD_RELOC_TILEGX_MT_IMM14_X1",
3334   "BFD_RELOC_TILEGX_MF_IMM14_X1",
3335   "BFD_RELOC_TILEGX_MMSTART_X0",
3336   "BFD_RELOC_TILEGX_MMEND_X0",
3337   "BFD_RELOC_TILEGX_SHAMT_X0",
3338   "BFD_RELOC_TILEGX_SHAMT_X1",
3339   "BFD_RELOC_TILEGX_SHAMT_Y0",
3340   "BFD_RELOC_TILEGX_SHAMT_Y1",
3341   "BFD_RELOC_TILEGX_IMM16_X0_HW0",
3342   "BFD_RELOC_TILEGX_IMM16_X1_HW0",
3343   "BFD_RELOC_TILEGX_IMM16_X0_HW1",
3344   "BFD_RELOC_TILEGX_IMM16_X1_HW1",
3345   "BFD_RELOC_TILEGX_IMM16_X0_HW2",
3346   "BFD_RELOC_TILEGX_IMM16_X1_HW2",
3347   "BFD_RELOC_TILEGX_IMM16_X0_HW3",
3348   "BFD_RELOC_TILEGX_IMM16_X1_HW3",
3349   "BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST",
3350   "BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST",
3351   "BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST",
3352   "BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST",
3353   "BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST",
3354   "BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST",
3355   "BFD_RELOC_TILEGX_IMM16_X0_HW0_PCREL",
3356   "BFD_RELOC_TILEGX_IMM16_X1_HW0_PCREL",
3357   "BFD_RELOC_TILEGX_IMM16_X0_HW1_PCREL",
3358   "BFD_RELOC_TILEGX_IMM16_X1_HW1_PCREL",
3359   "BFD_RELOC_TILEGX_IMM16_X0_HW2_PCREL",
3360   "BFD_RELOC_TILEGX_IMM16_X1_HW2_PCREL",
3361   "BFD_RELOC_TILEGX_IMM16_X0_HW3_PCREL",
3362   "BFD_RELOC_TILEGX_IMM16_X1_HW3_PCREL",
3363   "BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_PCREL",
3364   "BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_PCREL",
3365   "BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_PCREL",
3366   "BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_PCREL",
3367   "BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_PCREL",
3368   "BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_PCREL",
3369   "BFD_RELOC_TILEGX_IMM16_X0_HW0_GOT",
3370   "BFD_RELOC_TILEGX_IMM16_X1_HW0_GOT",
3371   "BFD_RELOC_TILEGX_IMM16_X0_HW0_PLT_PCREL",
3372   "BFD_RELOC_TILEGX_IMM16_X1_HW0_PLT_PCREL",
3373   "BFD_RELOC_TILEGX_IMM16_X0_HW1_PLT_PCREL",
3374   "BFD_RELOC_TILEGX_IMM16_X1_HW1_PLT_PCREL",
3375   "BFD_RELOC_TILEGX_IMM16_X0_HW2_PLT_PCREL",
3376   "BFD_RELOC_TILEGX_IMM16_X1_HW2_PLT_PCREL",
3377   "BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_GOT",
3378   "BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_GOT",
3379   "BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_GOT",
3380   "BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_GOT",
3381   "BFD_RELOC_TILEGX_IMM16_X0_HW3_PLT_PCREL",
3382   "BFD_RELOC_TILEGX_IMM16_X1_HW3_PLT_PCREL",
3383   "BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_GD",
3384   "BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_GD",
3385   "BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_LE",
3386   "BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_LE",
3387   "BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_LE",
3388   "BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_LE",
3389   "BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_LE",
3390   "BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_LE",
3391   "BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_GD",
3392   "BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_GD",
3393   "BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_GD",
3394   "BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_GD",
3395   "BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_IE",
3396   "BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_IE",
3397   "BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_PLT_PCREL",
3398   "BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_PLT_PCREL",
3399   "BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_PLT_PCREL",
3400   "BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_PLT_PCREL",
3401   "BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_PLT_PCREL",
3402   "BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_PLT_PCREL",
3403   "BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_IE",
3404   "BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_IE",
3405   "BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_IE",
3406   "BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_IE",
3407   "BFD_RELOC_TILEGX_TLS_DTPMOD64",
3408   "BFD_RELOC_TILEGX_TLS_DTPOFF64",
3409   "BFD_RELOC_TILEGX_TLS_TPOFF64",
3410   "BFD_RELOC_TILEGX_TLS_DTPMOD32",
3411   "BFD_RELOC_TILEGX_TLS_DTPOFF32",
3412   "BFD_RELOC_TILEGX_TLS_TPOFF32",
3413   "BFD_RELOC_TILEGX_TLS_GD_CALL",
3414   "BFD_RELOC_TILEGX_IMM8_X0_TLS_GD_ADD",
3415   "BFD_RELOC_TILEGX_IMM8_X1_TLS_GD_ADD",
3416   "BFD_RELOC_TILEGX_IMM8_Y0_TLS_GD_ADD",
3417   "BFD_RELOC_TILEGX_IMM8_Y1_TLS_GD_ADD",
3418   "BFD_RELOC_TILEGX_TLS_IE_LOAD",
3419   "BFD_RELOC_TILEGX_IMM8_X0_TLS_ADD",
3420   "BFD_RELOC_TILEGX_IMM8_X1_TLS_ADD",
3421   "BFD_RELOC_TILEGX_IMM8_Y0_TLS_ADD",
3422   "BFD_RELOC_TILEGX_IMM8_Y1_TLS_ADD",
3423   "BFD_RELOC_BPF_64",
3424   "BFD_RELOC_BPF_DISP32",
3425   "BFD_RELOC_BPF_DISPCALL32",
3426   "BFD_RELOC_BPF_DISP16",
3427   "BFD_RELOC_EPIPHANY_SIMM8",
3428   "BFD_RELOC_EPIPHANY_SIMM24",
3429   "BFD_RELOC_EPIPHANY_HIGH",
3430   "BFD_RELOC_EPIPHANY_LOW",
3431   "BFD_RELOC_EPIPHANY_SIMM11",
3432   "BFD_RELOC_EPIPHANY_IMM11",
3433   "BFD_RELOC_EPIPHANY_IMM8",
3434   "BFD_RELOC_VISIUM_HI16",
3435   "BFD_RELOC_VISIUM_LO16",
3436   "BFD_RELOC_VISIUM_IM16",
3437   "BFD_RELOC_VISIUM_REL16",
3438   "BFD_RELOC_VISIUM_HI16_PCREL",
3439   "BFD_RELOC_VISIUM_LO16_PCREL",
3440   "BFD_RELOC_VISIUM_IM16_PCREL",
3441   "BFD_RELOC_WASM32_LEB128",
3442   "BFD_RELOC_WASM32_LEB128_GOT",
3443   "BFD_RELOC_WASM32_LEB128_GOT_CODE",
3444   "BFD_RELOC_WASM32_LEB128_PLT",
3445   "BFD_RELOC_WASM32_PLT_INDEX",
3446   "BFD_RELOC_WASM32_ABS32_CODE",
3447   "BFD_RELOC_WASM32_COPY",
3448   "BFD_RELOC_WASM32_CODE_POINTER",
3449   "BFD_RELOC_WASM32_INDEX",
3450   "BFD_RELOC_WASM32_PLT_SIG",
3451   "BFD_RELOC_CKCORE_NONE",
3452   "BFD_RELOC_CKCORE_ADDR32",
3453   "BFD_RELOC_CKCORE_PCREL_IMM8BY4",
3454   "BFD_RELOC_CKCORE_PCREL_IMM11BY2",
3455   "BFD_RELOC_CKCORE_PCREL_IMM4BY2",
3456   "BFD_RELOC_CKCORE_PCREL32",
3457   "BFD_RELOC_CKCORE_PCREL_JSR_IMM11BY2",
3458   "BFD_RELOC_CKCORE_GNU_VTINHERIT",
3459   "BFD_RELOC_CKCORE_GNU_VTENTRY",
3460   "BFD_RELOC_CKCORE_RELATIVE",
3461   "BFD_RELOC_CKCORE_COPY",
3462   "BFD_RELOC_CKCORE_GLOB_DAT",
3463   "BFD_RELOC_CKCORE_JUMP_SLOT",
3464   "BFD_RELOC_CKCORE_GOTOFF",
3465   "BFD_RELOC_CKCORE_GOTPC",
3466   "BFD_RELOC_CKCORE_GOT32",
3467   "BFD_RELOC_CKCORE_PLT32",
3468   "BFD_RELOC_CKCORE_ADDRGOT",
3469   "BFD_RELOC_CKCORE_ADDRPLT",
3470   "BFD_RELOC_CKCORE_PCREL_IMM26BY2",
3471   "BFD_RELOC_CKCORE_PCREL_IMM16BY2",
3472   "BFD_RELOC_CKCORE_PCREL_IMM16BY4",
3473   "BFD_RELOC_CKCORE_PCREL_IMM10BY2",
3474   "BFD_RELOC_CKCORE_PCREL_IMM10BY4",
3475   "BFD_RELOC_CKCORE_ADDR_HI16",
3476   "BFD_RELOC_CKCORE_ADDR_LO16",
3477   "BFD_RELOC_CKCORE_GOTPC_HI16",
3478   "BFD_RELOC_CKCORE_GOTPC_LO16",
3479   "BFD_RELOC_CKCORE_GOTOFF_HI16",
3480   "BFD_RELOC_CKCORE_GOTOFF_LO16",
3481   "BFD_RELOC_CKCORE_GOT12",
3482   "BFD_RELOC_CKCORE_GOT_HI16",
3483   "BFD_RELOC_CKCORE_GOT_LO16",
3484   "BFD_RELOC_CKCORE_PLT12",
3485   "BFD_RELOC_CKCORE_PLT_HI16",
3486   "BFD_RELOC_CKCORE_PLT_LO16",
3487   "BFD_RELOC_CKCORE_ADDRGOT_HI16",
3488   "BFD_RELOC_CKCORE_ADDRGOT_LO16",
3489   "BFD_RELOC_CKCORE_ADDRPLT_HI16",
3490   "BFD_RELOC_CKCORE_ADDRPLT_LO16",
3491   "BFD_RELOC_CKCORE_PCREL_JSR_IMM26BY2",
3492   "BFD_RELOC_CKCORE_TOFFSET_LO16",
3493   "BFD_RELOC_CKCORE_DOFFSET_LO16",
3494   "BFD_RELOC_CKCORE_PCREL_IMM18BY2",
3495   "BFD_RELOC_CKCORE_DOFFSET_IMM18",
3496   "BFD_RELOC_CKCORE_DOFFSET_IMM18BY2",
3497   "BFD_RELOC_CKCORE_DOFFSET_IMM18BY4",
3498   "BFD_RELOC_CKCORE_GOTOFF_IMM18",
3499   "BFD_RELOC_CKCORE_GOT_IMM18BY4",
3500   "BFD_RELOC_CKCORE_PLT_IMM18BY4",
3501   "BFD_RELOC_CKCORE_PCREL_IMM7BY4",
3502   "BFD_RELOC_CKCORE_TLS_LE32",
3503   "BFD_RELOC_CKCORE_TLS_IE32",
3504   "BFD_RELOC_CKCORE_TLS_GD32",
3505   "BFD_RELOC_CKCORE_TLS_LDM32",
3506   "BFD_RELOC_CKCORE_TLS_LDO32",
3507   "BFD_RELOC_CKCORE_TLS_DTPMOD32",
3508   "BFD_RELOC_CKCORE_TLS_DTPOFF32",
3509   "BFD_RELOC_CKCORE_TLS_TPOFF32",
3510   "BFD_RELOC_CKCORE_PCREL_FLRW_IMM8BY4",
3511   "BFD_RELOC_CKCORE_NOJSRI",
3512   "BFD_RELOC_CKCORE_CALLGRAPH",
3513   "BFD_RELOC_CKCORE_IRELATIVE",
3514   "BFD_RELOC_CKCORE_PCREL_BLOOP_IMM4BY4",
3515   "BFD_RELOC_CKCORE_PCREL_BLOOP_IMM12BY4",
3516   "BFD_RELOC_S12Z_OPR",
3517   "BFD_RELOC_LARCH_TLS_DTPMOD32",
3518   "BFD_RELOC_LARCH_TLS_DTPREL32",
3519   "BFD_RELOC_LARCH_TLS_DTPMOD64",
3520   "BFD_RELOC_LARCH_TLS_DTPREL64",
3521   "BFD_RELOC_LARCH_TLS_TPREL32",
3522   "BFD_RELOC_LARCH_TLS_TPREL64",
3523   "BFD_RELOC_LARCH_TLS_DESC32",
3524   "BFD_RELOC_LARCH_TLS_DESC64",
3525   "BFD_RELOC_LARCH_MARK_LA",
3526   "BFD_RELOC_LARCH_MARK_PCREL",
3527   "BFD_RELOC_LARCH_SOP_PUSH_PCREL",
3528   "BFD_RELOC_LARCH_SOP_PUSH_ABSOLUTE",
3529   "BFD_RELOC_LARCH_SOP_PUSH_DUP",
3530   "BFD_RELOC_LARCH_SOP_PUSH_GPREL",
3531   "BFD_RELOC_LARCH_SOP_PUSH_TLS_TPREL",
3532   "BFD_RELOC_LARCH_SOP_PUSH_TLS_GOT",
3533   "BFD_RELOC_LARCH_SOP_PUSH_TLS_GD",
3534   "BFD_RELOC_LARCH_SOP_PUSH_PLT_PCREL",
3535   "BFD_RELOC_LARCH_SOP_ASSERT",
3536   "BFD_RELOC_LARCH_SOP_NOT",
3537   "BFD_RELOC_LARCH_SOP_SUB",
3538   "BFD_RELOC_LARCH_SOP_SL",
3539   "BFD_RELOC_LARCH_SOP_SR",
3540   "BFD_RELOC_LARCH_SOP_ADD",
3541   "BFD_RELOC_LARCH_SOP_AND",
3542   "BFD_RELOC_LARCH_SOP_IF_ELSE",
3543   "BFD_RELOC_LARCH_SOP_POP_32_S_10_5",
3544   "BFD_RELOC_LARCH_SOP_POP_32_U_10_12",
3545   "BFD_RELOC_LARCH_SOP_POP_32_S_10_12",
3546   "BFD_RELOC_LARCH_SOP_POP_32_S_10_16",
3547   "BFD_RELOC_LARCH_SOP_POP_32_S_10_16_S2",
3548   "BFD_RELOC_LARCH_SOP_POP_32_S_5_20",
3549   "BFD_RELOC_LARCH_SOP_POP_32_S_0_5_10_16_S2",
3550   "BFD_RELOC_LARCH_SOP_POP_32_S_0_10_10_16_S2",
3551   "BFD_RELOC_LARCH_SOP_POP_32_U",
3552   "BFD_RELOC_LARCH_ADD8",
3553   "BFD_RELOC_LARCH_ADD16",
3554   "BFD_RELOC_LARCH_ADD24",
3555   "BFD_RELOC_LARCH_ADD32",
3556   "BFD_RELOC_LARCH_ADD64",
3557   "BFD_RELOC_LARCH_SUB8",
3558   "BFD_RELOC_LARCH_SUB16",
3559   "BFD_RELOC_LARCH_SUB24",
3560   "BFD_RELOC_LARCH_SUB32",
3561   "BFD_RELOC_LARCH_SUB64",
3562   "BFD_RELOC_LARCH_B16",
3563   "BFD_RELOC_LARCH_B21",
3564   "BFD_RELOC_LARCH_B26",
3565   "BFD_RELOC_LARCH_ABS_HI20",
3566   "BFD_RELOC_LARCH_ABS_LO12",
3567   "BFD_RELOC_LARCH_ABS64_LO20",
3568   "BFD_RELOC_LARCH_ABS64_HI12",
3569   "BFD_RELOC_LARCH_PCALA_HI20",
3570   "BFD_RELOC_LARCH_PCALA_LO12",
3571   "BFD_RELOC_LARCH_PCALA64_LO20",
3572   "BFD_RELOC_LARCH_PCALA64_HI12",
3573   "BFD_RELOC_LARCH_GOT_PC_HI20",
3574   "BFD_RELOC_LARCH_GOT_PC_LO12",
3575   "BFD_RELOC_LARCH_GOT64_PC_LO20",
3576   "BFD_RELOC_LARCH_GOT64_PC_HI12",
3577   "BFD_RELOC_LARCH_GOT_HI20",
3578   "BFD_RELOC_LARCH_GOT_LO12",
3579   "BFD_RELOC_LARCH_GOT64_LO20",
3580   "BFD_RELOC_LARCH_GOT64_HI12",
3581   "BFD_RELOC_LARCH_TLS_LE_HI20",
3582   "BFD_RELOC_LARCH_TLS_LE_LO12",
3583   "BFD_RELOC_LARCH_TLS_LE64_LO20",
3584   "BFD_RELOC_LARCH_TLS_LE64_HI12",
3585   "BFD_RELOC_LARCH_TLS_IE_PC_HI20",
3586   "BFD_RELOC_LARCH_TLS_IE_PC_LO12",
3587   "BFD_RELOC_LARCH_TLS_IE64_PC_LO20",
3588   "BFD_RELOC_LARCH_TLS_IE64_PC_HI12",
3589   "BFD_RELOC_LARCH_TLS_IE_HI20",
3590   "BFD_RELOC_LARCH_TLS_IE_LO12",
3591   "BFD_RELOC_LARCH_TLS_IE64_LO20",
3592   "BFD_RELOC_LARCH_TLS_IE64_HI12",
3593   "BFD_RELOC_LARCH_TLS_LD_PC_HI20",
3594   "BFD_RELOC_LARCH_TLS_LD_HI20",
3595   "BFD_RELOC_LARCH_TLS_GD_PC_HI20",
3596   "BFD_RELOC_LARCH_TLS_GD_HI20",
3597   "BFD_RELOC_LARCH_32_PCREL",
3598   "BFD_RELOC_LARCH_RELAX",
3599   "BFD_RELOC_LARCH_DELETE",
3600   "BFD_RELOC_LARCH_ALIGN",
3601   "BFD_RELOC_LARCH_PCREL20_S2",
3602   "BFD_RELOC_LARCH_CFA",
3603   "BFD_RELOC_LARCH_ADD6",
3604   "BFD_RELOC_LARCH_SUB6",
3605   "BFD_RELOC_LARCH_ADD_ULEB128",
3606   "BFD_RELOC_LARCH_SUB_ULEB128",
3607   "BFD_RELOC_LARCH_64_PCREL",
3608   "BFD_RELOC_LARCH_CALL36",
3609   "BFD_RELOC_LARCH_TLS_DESC_PC_HI20",
3610   "BFD_RELOC_LARCH_TLS_DESC_PC_LO12",
3611   "BFD_RELOC_LARCH_TLS_DESC64_PC_LO20",
3612   "BFD_RELOC_LARCH_TLS_DESC64_PC_HI12",
3613   "BFD_RELOC_LARCH_TLS_DESC_HI20",
3614   "BFD_RELOC_LARCH_TLS_DESC_LO12",
3615   "BFD_RELOC_LARCH_TLS_DESC64_LO20",
3616   "BFD_RELOC_LARCH_TLS_DESC64_HI12",
3617   "BFD_RELOC_LARCH_TLS_DESC_LD",
3618   "BFD_RELOC_LARCH_TLS_DESC_CALL",
3619   "BFD_RELOC_LARCH_TLS_LE_HI20_R",
3620   "BFD_RELOC_LARCH_TLS_LE_ADD_R",
3621   "BFD_RELOC_LARCH_TLS_LE_LO12_R",
3622   "BFD_RELOC_LARCH_TLS_LD_PCREL20_S2",
3623   "BFD_RELOC_LARCH_TLS_GD_PCREL20_S2",
3624   "BFD_RELOC_LARCH_TLS_DESC_PCREL20_S2",
3625  "@@overflow: BFD_RELOC_UNUSED@@",
3626 };
3627 #endif
3628 
3629 reloc_howto_type *bfd_default_reloc_type_lookup
3630    (bfd *abfd, bfd_reloc_code_real_type  code) ATTRIBUTE_HIDDEN;
3631 
3632 bool bfd_generic_relax_section
3633    (bfd *abfd,
3634     asection *section,
3635     struct bfd_link_info *,
3636     bool *) ATTRIBUTE_HIDDEN;
3637 
3638 bool bfd_generic_gc_sections
3639    (bfd *, struct bfd_link_info *) ATTRIBUTE_HIDDEN;
3640 
3641 bool bfd_generic_lookup_section_flags
3642    (struct bfd_link_info *, struct flag_info *, asection *) ATTRIBUTE_HIDDEN;
3643 
3644 bool bfd_generic_merge_sections
3645    (bfd *, struct bfd_link_info *) ATTRIBUTE_HIDDEN;
3646 
3647 bfd_byte *bfd_generic_get_relocated_section_contents
3648    (bfd *abfd,
3649     struct bfd_link_info *link_info,
3650     struct bfd_link_order *link_order,
3651     bfd_byte *data,
3652     bool relocatable,
3653     asymbol **symbols) ATTRIBUTE_HIDDEN;
3654 
3655 void _bfd_generic_set_reloc
3656    (bfd *abfd,
3657     sec_ptr section,
3658     arelent **relptr,
3659     unsigned int count) ATTRIBUTE_HIDDEN;
3660 
3661 bool _bfd_unrecognized_reloc
3662    (bfd * abfd,
3663     sec_ptr section,
3664     unsigned int r_type) ATTRIBUTE_HIDDEN;
3665 
3666 /* Extracted from section.c.  */
3667 bool _bfd_section_size_insane (bfd *abfd, asection *sec) ATTRIBUTE_HIDDEN;
3668 
3669 /* Extracted from stabs.c.  */
3670 bool _bfd_link_section_stabs
3671    (bfd *, struct stab_info *, asection *, asection *, void **,
3672     bfd_size_type *) ATTRIBUTE_HIDDEN;
3673 
3674 bool _bfd_discard_section_stabs
3675    (bfd *, asection *, void *, bool (*) (bfd_vma, void *), void *) ATTRIBUTE_HIDDEN;
3676 
3677 bool _bfd_write_section_stabs
3678    (bfd *, struct stab_info *, asection *, void **, bfd_byte *) ATTRIBUTE_HIDDEN;
3679 
3680 bool _bfd_write_stab_strings (bfd *, struct stab_info *) ATTRIBUTE_HIDDEN;
3681 
3682 bfd_vma _bfd_stab_section_offset (asection *, void *, bfd_vma) ATTRIBUTE_HIDDEN;
3683 
3684 /* Extracted from targets.c.  */
3685 /* Cached _bfd_check_format messages are put in this.  */
3686 struct per_xvec_message
3687 {
3688   struct per_xvec_message *next;
3689   char message[];
3690 };
3691 
3692 struct per_xvec_message **_bfd_per_xvec_warn (const bfd_target *, size_t) ATTRIBUTE_HIDDEN;
3693 
3694 #ifdef __cplusplus
3695 }
3696 #endif
3697 #endif
3698