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