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