]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - bfd/libbfd.h
gas/Dwarf: record functions
[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
a2c58332 9 Copyright (C) 1990-2022 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
6395a102 180 (bfd *, file_ptr, struct bfd_link_info *) 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
574ec108 896 (bfd *, bfd_byte **, bool, const bfd_byte * const) ATTRIBUTE_HIDDEN;
7d81bc93 897extern bfd_byte * _bfd_write_unsigned_leb128
47485a31 898 (bfd_byte *, bfd_byte *, bfd_vma) ATTRIBUTE_HIDDEN;
1f4361a7 899
8c0546e9
L
900extern struct bfd_link_info *_bfd_get_link_info (bfd *);
901
a8dde0a2
L
902extern bool _bfd_link_keep_memory (struct bfd_link_info *)
903 ATTRIBUTE_HIDDEN;
904
1f4361a7
AM
905#if GCC_VERSION >= 7000
906#define _bfd_mul_overflow(a, b, res) __builtin_mul_overflow (a, b, res)
907#else
908/* Assumes unsigned values. Careful! Args evaluated multiple times. */
909#define _bfd_mul_overflow(a, b, res) \
910 ((*res) = (a), (*res) *= (b), (b) != 0 && (*res) / (b) != (a))
911#endif
2bb3687b 912
2c7c5554
AM
913#ifdef __GNUC__
914#define _bfd_constant_p(v) __builtin_constant_p (v)
915#else
916#define _bfd_constant_p(v) 0
917#endif
918
2bb3687b
AM
919static inline bfd_byte *
920_bfd_alloc_and_read (bfd *abfd, bfd_size_type asize, bfd_size_type rsize)
921{
2c7c5554
AM
922 bfd_byte *mem;
923 if (!_bfd_constant_p (rsize))
924 {
925 ufile_ptr filesize = bfd_get_file_size (abfd);
926 if (filesize != 0 && rsize > filesize)
927 {
928 bfd_set_error (bfd_error_file_truncated);
929 return NULL;
930 }
931 }
932 mem = bfd_alloc (abfd, asize);
2bb3687b
AM
933 if (mem != NULL)
934 {
935 if (bfd_bread (mem, rsize, abfd) == rsize)
936 return mem;
937 bfd_release (abfd, mem);
938 }
939 return NULL;
940}
941
942static inline bfd_byte *
943_bfd_malloc_and_read (bfd *abfd, bfd_size_type asize, bfd_size_type rsize)
944{
2c7c5554
AM
945 bfd_byte *mem;
946 if (!_bfd_constant_p (rsize))
947 {
948 ufile_ptr filesize = bfd_get_file_size (abfd);
949 if (filesize != 0 && rsize > filesize)
950 {
951 bfd_set_error (bfd_error_file_truncated);
952 return NULL;
953 }
954 }
955 mem = bfd_malloc (asize);
2bb3687b
AM
956 if (mem != NULL)
957 {
958 if (bfd_bread (mem, rsize, abfd) == rsize)
959 return mem;
960 free (mem);
961 }
962 return NULL;
963}
e61463e1 964/* Extracted from libbfd.c. */
bd6d8601
NC
965extern void * bfd_malloc (bfd_size_type SIZE) ATTRIBUTE_HIDDEN;
966
967extern void * bfd_realloc (void * MEM, bfd_size_type SIZE) ATTRIBUTE_HIDDEN;
968
969extern void * bfd_realloc_or_free (void * MEM, bfd_size_type SIZE) ATTRIBUTE_HIDDEN;
970
971extern void * bfd_zmalloc (bfd_size_type SIZE) ATTRIBUTE_HIDDEN;
972
0a1b45a2 973bool bfd_write_bigendian_4byte_int (bfd *, unsigned int);
252b5132 974
c58b9523 975unsigned int bfd_log2 (bfd_vma x);
252b5132 976
93509525 977/* Extracted from bfdio.c. */
40838a72
AC
978struct bfd_iovec
979{
980 /* To avoid problems with macros, a "b" rather than "f"
981 prefix is prepended to each method name. */
982 /* Attempt to read/write NBYTES on ABFD's IOSTREAM storing/fetching
983 bytes starting at PTR. Return the number of bytes actually
984 transfered (a read past end-of-file returns less than NBYTES),
985 or -1 (setting <<bfd_error>>) if an error occurs. */
986 file_ptr (*bread) (struct bfd *abfd, void *ptr, file_ptr nbytes);
987 file_ptr (*bwrite) (struct bfd *abfd, const void *ptr,
988 file_ptr nbytes);
989 /* Return the current IOSTREAM file offset, or -1 (setting <<bfd_error>>
990 if an error occurs. */
991 file_ptr (*btell) (struct bfd *abfd);
992 /* For the following, on successful completion a value of 0 is returned.
07d6d2b8 993 Otherwise, a value of -1 is returned (and <<bfd_error>> is set). */
40838a72 994 int (*bseek) (struct bfd *abfd, file_ptr offset, int whence);
405bf443 995 int (*bclose) (struct bfd *abfd);
40838a72
AC
996 int (*bflush) (struct bfd *abfd);
997 int (*bstat) (struct bfd *abfd, struct stat *sb);
4c95ab76
TG
998 /* Mmap a part of the files. ADDR, LEN, PROT, FLAGS and OFFSET are the usual
999 mmap parameter, except that LEN and OFFSET do not need to be page
1000 aligned. Returns (void *)-1 on failure, mmapped address on success.
1001 Also write in MAP_ADDR the address of the page aligned buffer and in
1002 MAP_LEN the size mapped (a page multiple). Use unmap with MAP_ADDR and
1003 MAP_LEN to unmap. */
25b88f33 1004 void *(*bmmap) (struct bfd *abfd, void *addr, bfd_size_type len,
4c95ab76
TG
1005 int prot, int flags, file_ptr offset,
1006 void **map_addr, bfd_size_type *map_len);
40838a72 1007};
65077aa8 1008extern const struct bfd_iovec _bfd_memory_iovec;
93509525
KD
1009/* Extracted from bfdwin.c. */
1010struct _bfd_window_internal {
1011 struct _bfd_window_internal *next;
c58b9523 1012 void *data;
93509525
KD
1013 bfd_size_type size;
1014 int refcount : 31; /* should be enough... */
1015 unsigned mapped : 1; /* 1 = mmap, 0 = malloc */
1016};
e61463e1 1017/* Extracted from cache.c. */
0a1b45a2 1018bool bfd_cache_init (bfd *abfd);
252b5132 1019
0a1b45a2 1020bool bfd_cache_close (bfd *abfd);
252b5132 1021
c58b9523 1022FILE* bfd_open_file (bfd *abfd);
252b5132 1023
e61463e1 1024/* Extracted from reloc.c. */
252b5132
RH
1025#ifdef _BFD_MAKE_TABLE_bfd_reloc_code_real
1026
1027static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@",
1028
1029 "BFD_RELOC_64",
1030 "BFD_RELOC_32",
1031 "BFD_RELOC_26",
1032 "BFD_RELOC_24",
1033 "BFD_RELOC_16",
1034 "BFD_RELOC_14",
1035 "BFD_RELOC_8",
1036 "BFD_RELOC_64_PCREL",
1037 "BFD_RELOC_32_PCREL",
1038 "BFD_RELOC_24_PCREL",
1039 "BFD_RELOC_16_PCREL",
1040 "BFD_RELOC_12_PCREL",
1041 "BFD_RELOC_8_PCREL",
6482c264 1042 "BFD_RELOC_32_SECREL",
252b5132
RH
1043 "BFD_RELOC_32_GOT_PCREL",
1044 "BFD_RELOC_16_GOT_PCREL",
1045 "BFD_RELOC_8_GOT_PCREL",
1046 "BFD_RELOC_32_GOTOFF",
1047 "BFD_RELOC_16_GOTOFF",
1048 "BFD_RELOC_LO16_GOTOFF",
1049 "BFD_RELOC_HI16_GOTOFF",
1050 "BFD_RELOC_HI16_S_GOTOFF",
1051 "BFD_RELOC_8_GOTOFF",
5bd4f169 1052 "BFD_RELOC_64_PLT_PCREL",
252b5132
RH
1053 "BFD_RELOC_32_PLT_PCREL",
1054 "BFD_RELOC_24_PLT_PCREL",
1055 "BFD_RELOC_16_PLT_PCREL",
1056 "BFD_RELOC_8_PLT_PCREL",
5bd4f169 1057 "BFD_RELOC_64_PLTOFF",
252b5132
RH
1058 "BFD_RELOC_32_PLTOFF",
1059 "BFD_RELOC_16_PLTOFF",
1060 "BFD_RELOC_LO16_PLTOFF",
1061 "BFD_RELOC_HI16_PLTOFF",
1062 "BFD_RELOC_HI16_S_PLTOFF",
1063 "BFD_RELOC_8_PLTOFF",
1788fc08
L
1064 "BFD_RELOC_SIZE32",
1065 "BFD_RELOC_SIZE64",
252b5132
RH
1066 "BFD_RELOC_68K_GLOB_DAT",
1067 "BFD_RELOC_68K_JMP_SLOT",
1068 "BFD_RELOC_68K_RELATIVE",
cf869cce
NC
1069 "BFD_RELOC_68K_TLS_GD32",
1070 "BFD_RELOC_68K_TLS_GD16",
1071 "BFD_RELOC_68K_TLS_GD8",
1072 "BFD_RELOC_68K_TLS_LDM32",
1073 "BFD_RELOC_68K_TLS_LDM16",
1074 "BFD_RELOC_68K_TLS_LDM8",
1075 "BFD_RELOC_68K_TLS_LDO32",
1076 "BFD_RELOC_68K_TLS_LDO16",
1077 "BFD_RELOC_68K_TLS_LDO8",
1078 "BFD_RELOC_68K_TLS_IE32",
1079 "BFD_RELOC_68K_TLS_IE16",
1080 "BFD_RELOC_68K_TLS_IE8",
1081 "BFD_RELOC_68K_TLS_LE32",
1082 "BFD_RELOC_68K_TLS_LE16",
1083 "BFD_RELOC_68K_TLS_LE8",
252b5132
RH
1084 "BFD_RELOC_32_BASEREL",
1085 "BFD_RELOC_16_BASEREL",
1086 "BFD_RELOC_LO16_BASEREL",
1087 "BFD_RELOC_HI16_BASEREL",
1088 "BFD_RELOC_HI16_S_BASEREL",
1089 "BFD_RELOC_8_BASEREL",
1090 "BFD_RELOC_RVA",
1091 "BFD_RELOC_8_FFnn",
1092 "BFD_RELOC_32_PCREL_S2",
1093 "BFD_RELOC_16_PCREL_S2",
1094 "BFD_RELOC_23_PCREL_S2",
1095 "BFD_RELOC_HI22",
1096 "BFD_RELOC_LO10",
1097 "BFD_RELOC_GPREL16",
1098 "BFD_RELOC_GPREL32",
252b5132
RH
1099 "BFD_RELOC_NONE",
1100 "BFD_RELOC_SPARC_WDISP22",
1101 "BFD_RELOC_SPARC22",
1102 "BFD_RELOC_SPARC13",
1103 "BFD_RELOC_SPARC_GOT10",
1104 "BFD_RELOC_SPARC_GOT13",
1105 "BFD_RELOC_SPARC_GOT22",
1106 "BFD_RELOC_SPARC_PC10",
1107 "BFD_RELOC_SPARC_PC22",
1108 "BFD_RELOC_SPARC_WPLT30",
1109 "BFD_RELOC_SPARC_COPY",
1110 "BFD_RELOC_SPARC_GLOB_DAT",
1111 "BFD_RELOC_SPARC_JMP_SLOT",
1112 "BFD_RELOC_SPARC_RELATIVE",
0f2712ed 1113 "BFD_RELOC_SPARC_UA16",
252b5132 1114 "BFD_RELOC_SPARC_UA32",
0f2712ed 1115 "BFD_RELOC_SPARC_UA64",
739f7f82
DM
1116 "BFD_RELOC_SPARC_GOTDATA_HIX22",
1117 "BFD_RELOC_SPARC_GOTDATA_LOX10",
1118 "BFD_RELOC_SPARC_GOTDATA_OP_HIX22",
1119 "BFD_RELOC_SPARC_GOTDATA_OP_LOX10",
1120 "BFD_RELOC_SPARC_GOTDATA_OP",
d0c9aeb3
DM
1121 "BFD_RELOC_SPARC_JMP_IREL",
1122 "BFD_RELOC_SPARC_IRELATIVE",
252b5132
RH
1123 "BFD_RELOC_SPARC_BASE13",
1124 "BFD_RELOC_SPARC_BASE22",
1125 "BFD_RELOC_SPARC_10",
1126 "BFD_RELOC_SPARC_11",
1127 "BFD_RELOC_SPARC_OLO10",
1128 "BFD_RELOC_SPARC_HH22",
1129 "BFD_RELOC_SPARC_HM10",
1130 "BFD_RELOC_SPARC_LM22",
1131 "BFD_RELOC_SPARC_PC_HH22",
1132 "BFD_RELOC_SPARC_PC_HM10",
1133 "BFD_RELOC_SPARC_PC_LM22",
1134 "BFD_RELOC_SPARC_WDISP16",
1135 "BFD_RELOC_SPARC_WDISP19",
1136 "BFD_RELOC_SPARC_7",
1137 "BFD_RELOC_SPARC_6",
1138 "BFD_RELOC_SPARC_5",
bd5e6e7e 1139 "BFD_RELOC_SPARC_PLT32",
252b5132
RH
1140 "BFD_RELOC_SPARC_PLT64",
1141 "BFD_RELOC_SPARC_HIX22",
1142 "BFD_RELOC_SPARC_LOX10",
1143 "BFD_RELOC_SPARC_H44",
1144 "BFD_RELOC_SPARC_M44",
1145 "BFD_RELOC_SPARC_L44",
1146 "BFD_RELOC_SPARC_REGISTER",
2615994e
DM
1147 "BFD_RELOC_SPARC_H34",
1148 "BFD_RELOC_SPARC_SIZE32",
1149 "BFD_RELOC_SPARC_SIZE64",
1150 "BFD_RELOC_SPARC_WDISP10",
252b5132 1151 "BFD_RELOC_SPARC_REV32",
b9734f35
JJ
1152 "BFD_RELOC_SPARC_TLS_GD_HI22",
1153 "BFD_RELOC_SPARC_TLS_GD_LO10",
1154 "BFD_RELOC_SPARC_TLS_GD_ADD",
1155 "BFD_RELOC_SPARC_TLS_GD_CALL",
1156 "BFD_RELOC_SPARC_TLS_LDM_HI22",
1157 "BFD_RELOC_SPARC_TLS_LDM_LO10",
1158 "BFD_RELOC_SPARC_TLS_LDM_ADD",
1159 "BFD_RELOC_SPARC_TLS_LDM_CALL",
1160 "BFD_RELOC_SPARC_TLS_LDO_HIX22",
1161 "BFD_RELOC_SPARC_TLS_LDO_LOX10",
1162 "BFD_RELOC_SPARC_TLS_LDO_ADD",
1163 "BFD_RELOC_SPARC_TLS_IE_HI22",
1164 "BFD_RELOC_SPARC_TLS_IE_LO10",
1165 "BFD_RELOC_SPARC_TLS_IE_LD",
1166 "BFD_RELOC_SPARC_TLS_IE_LDX",
1167 "BFD_RELOC_SPARC_TLS_IE_ADD",
1168 "BFD_RELOC_SPARC_TLS_LE_HIX22",
1169 "BFD_RELOC_SPARC_TLS_LE_LOX10",
1170 "BFD_RELOC_SPARC_TLS_DTPMOD32",
1171 "BFD_RELOC_SPARC_TLS_DTPMOD64",
1172 "BFD_RELOC_SPARC_TLS_DTPOFF32",
1173 "BFD_RELOC_SPARC_TLS_DTPOFF64",
1174 "BFD_RELOC_SPARC_TLS_TPOFF32",
1175 "BFD_RELOC_SPARC_TLS_TPOFF64",
e9f53129
AM
1176 "BFD_RELOC_SPU_IMM7",
1177 "BFD_RELOC_SPU_IMM8",
1178 "BFD_RELOC_SPU_IMM10",
1179 "BFD_RELOC_SPU_IMM10W",
1180 "BFD_RELOC_SPU_IMM16",
1181 "BFD_RELOC_SPU_IMM16W",
1182 "BFD_RELOC_SPU_IMM18",
1183 "BFD_RELOC_SPU_PCREL9a",
1184 "BFD_RELOC_SPU_PCREL9b",
1185 "BFD_RELOC_SPU_PCREL16",
1186 "BFD_RELOC_SPU_LO16",
1187 "BFD_RELOC_SPU_HI16",
ece5ef60
AM
1188 "BFD_RELOC_SPU_PPU32",
1189 "BFD_RELOC_SPU_PPU64",
8fdcc58d 1190 "BFD_RELOC_SPU_ADD_PIC",
252b5132
RH
1191 "BFD_RELOC_ALPHA_GPDISP_HI16",
1192 "BFD_RELOC_ALPHA_GPDISP_LO16",
1193 "BFD_RELOC_ALPHA_GPDISP",
1194 "BFD_RELOC_ALPHA_LITERAL",
1195 "BFD_RELOC_ALPHA_ELF_LITERAL",
1196 "BFD_RELOC_ALPHA_LITUSE",
1197 "BFD_RELOC_ALPHA_HINT",
1198 "BFD_RELOC_ALPHA_LINKAGE",
1199 "BFD_RELOC_ALPHA_CODEADDR",
dfe57ca0
RH
1200 "BFD_RELOC_ALPHA_GPREL_HI16",
1201 "BFD_RELOC_ALPHA_GPREL_LO16",
7793f4d0 1202 "BFD_RELOC_ALPHA_BRSGP",
0c376465
TG
1203 "BFD_RELOC_ALPHA_NOP",
1204 "BFD_RELOC_ALPHA_BSR",
1205 "BFD_RELOC_ALPHA_LDA",
1206 "BFD_RELOC_ALPHA_BOH",
3765b1be
RH
1207 "BFD_RELOC_ALPHA_TLSGD",
1208 "BFD_RELOC_ALPHA_TLSLDM",
1209 "BFD_RELOC_ALPHA_DTPMOD64",
1210 "BFD_RELOC_ALPHA_GOTDTPREL16",
1211 "BFD_RELOC_ALPHA_DTPREL64",
1212 "BFD_RELOC_ALPHA_DTPREL_HI16",
1213 "BFD_RELOC_ALPHA_DTPREL_LO16",
1214 "BFD_RELOC_ALPHA_DTPREL16",
1215 "BFD_RELOC_ALPHA_GOTTPREL16",
1216 "BFD_RELOC_ALPHA_TPREL64",
1217 "BFD_RELOC_ALPHA_TPREL_HI16",
1218 "BFD_RELOC_ALPHA_TPREL_LO16",
1219 "BFD_RELOC_ALPHA_TPREL16",
252b5132 1220 "BFD_RELOC_MIPS_JMP",
df58fc94 1221 "BFD_RELOC_MICROMIPS_JMP",
252b5132
RH
1222 "BFD_RELOC_MIPS16_JMP",
1223 "BFD_RELOC_MIPS16_GPREL",
1224 "BFD_RELOC_HI16",
1225 "BFD_RELOC_HI16_S",
1226 "BFD_RELOC_LO16",
d7128ce4
AM
1227 "BFD_RELOC_HI16_PCREL",
1228 "BFD_RELOC_HI16_S_PCREL",
1229 "BFD_RELOC_LO16_PCREL",
738e5348
RS
1230 "BFD_RELOC_MIPS16_GOT16",
1231 "BFD_RELOC_MIPS16_CALL16",
d6f16593
MR
1232 "BFD_RELOC_MIPS16_HI16",
1233 "BFD_RELOC_MIPS16_HI16_S",
1234 "BFD_RELOC_MIPS16_LO16",
d0f13682
CLT
1235 "BFD_RELOC_MIPS16_TLS_GD",
1236 "BFD_RELOC_MIPS16_TLS_LDM",
1237 "BFD_RELOC_MIPS16_TLS_DTPREL_HI16",
1238 "BFD_RELOC_MIPS16_TLS_DTPREL_LO16",
1239 "BFD_RELOC_MIPS16_TLS_GOTTPREL",
1240 "BFD_RELOC_MIPS16_TLS_TPREL_HI16",
1241 "BFD_RELOC_MIPS16_TLS_TPREL_LO16",
252b5132 1242 "BFD_RELOC_MIPS_LITERAL",
df58fc94
RS
1243 "BFD_RELOC_MICROMIPS_LITERAL",
1244 "BFD_RELOC_MICROMIPS_7_PCREL_S1",
1245 "BFD_RELOC_MICROMIPS_10_PCREL_S1",
1246 "BFD_RELOC_MICROMIPS_16_PCREL_S1",
c9775dde 1247 "BFD_RELOC_MIPS16_16_PCREL_S1",
7361da2c
AB
1248 "BFD_RELOC_MIPS_21_PCREL_S2",
1249 "BFD_RELOC_MIPS_26_PCREL_S2",
1250 "BFD_RELOC_MIPS_18_PCREL_S3",
1251 "BFD_RELOC_MIPS_19_PCREL_S2",
df58fc94
RS
1252 "BFD_RELOC_MICROMIPS_GPREL16",
1253 "BFD_RELOC_MICROMIPS_HI16",
1254 "BFD_RELOC_MICROMIPS_HI16_S",
1255 "BFD_RELOC_MICROMIPS_LO16",
252b5132 1256 "BFD_RELOC_MIPS_GOT16",
df58fc94 1257 "BFD_RELOC_MICROMIPS_GOT16",
252b5132 1258 "BFD_RELOC_MIPS_CALL16",
df58fc94 1259 "BFD_RELOC_MICROMIPS_CALL16",
252b5132 1260 "BFD_RELOC_MIPS_GOT_HI16",
df58fc94 1261 "BFD_RELOC_MICROMIPS_GOT_HI16",
252b5132 1262 "BFD_RELOC_MIPS_GOT_LO16",
df58fc94 1263 "BFD_RELOC_MICROMIPS_GOT_LO16",
252b5132 1264 "BFD_RELOC_MIPS_CALL_HI16",
df58fc94 1265 "BFD_RELOC_MICROMIPS_CALL_HI16",
252b5132 1266 "BFD_RELOC_MIPS_CALL_LO16",
df58fc94 1267 "BFD_RELOC_MICROMIPS_CALL_LO16",
3f830999 1268 "BFD_RELOC_MIPS_SUB",
df58fc94 1269 "BFD_RELOC_MICROMIPS_SUB",
3f830999 1270 "BFD_RELOC_MIPS_GOT_PAGE",
df58fc94 1271 "BFD_RELOC_MICROMIPS_GOT_PAGE",
3f830999 1272 "BFD_RELOC_MIPS_GOT_OFST",
df58fc94 1273 "BFD_RELOC_MICROMIPS_GOT_OFST",
3f830999 1274 "BFD_RELOC_MIPS_GOT_DISP",
df58fc94 1275 "BFD_RELOC_MICROMIPS_GOT_DISP",
c2feb664
NC
1276 "BFD_RELOC_MIPS_SHIFT5",
1277 "BFD_RELOC_MIPS_SHIFT6",
1278 "BFD_RELOC_MIPS_INSERT_A",
1279 "BFD_RELOC_MIPS_INSERT_B",
1280 "BFD_RELOC_MIPS_DELETE",
1281 "BFD_RELOC_MIPS_HIGHEST",
df58fc94 1282 "BFD_RELOC_MICROMIPS_HIGHEST",
c2feb664 1283 "BFD_RELOC_MIPS_HIGHER",
df58fc94 1284 "BFD_RELOC_MICROMIPS_HIGHER",
c2feb664 1285 "BFD_RELOC_MIPS_SCN_DISP",
df58fc94 1286 "BFD_RELOC_MICROMIPS_SCN_DISP",
c2feb664
NC
1287 "BFD_RELOC_MIPS_REL16",
1288 "BFD_RELOC_MIPS_RELGOT",
1289 "BFD_RELOC_MIPS_JALR",
df58fc94 1290 "BFD_RELOC_MICROMIPS_JALR",
0f20cc35
DJ
1291 "BFD_RELOC_MIPS_TLS_DTPMOD32",
1292 "BFD_RELOC_MIPS_TLS_DTPREL32",
1293 "BFD_RELOC_MIPS_TLS_DTPMOD64",
1294 "BFD_RELOC_MIPS_TLS_DTPREL64",
1295 "BFD_RELOC_MIPS_TLS_GD",
df58fc94 1296 "BFD_RELOC_MICROMIPS_TLS_GD",
0f20cc35 1297 "BFD_RELOC_MIPS_TLS_LDM",
df58fc94 1298 "BFD_RELOC_MICROMIPS_TLS_LDM",
0f20cc35 1299 "BFD_RELOC_MIPS_TLS_DTPREL_HI16",
df58fc94 1300 "BFD_RELOC_MICROMIPS_TLS_DTPREL_HI16",
0f20cc35 1301 "BFD_RELOC_MIPS_TLS_DTPREL_LO16",
df58fc94 1302 "BFD_RELOC_MICROMIPS_TLS_DTPREL_LO16",
0f20cc35 1303 "BFD_RELOC_MIPS_TLS_GOTTPREL",
df58fc94 1304 "BFD_RELOC_MICROMIPS_TLS_GOTTPREL",
0f20cc35
DJ
1305 "BFD_RELOC_MIPS_TLS_TPREL32",
1306 "BFD_RELOC_MIPS_TLS_TPREL64",
1307 "BFD_RELOC_MIPS_TLS_TPREL_HI16",
df58fc94 1308 "BFD_RELOC_MICROMIPS_TLS_TPREL_HI16",
0f20cc35 1309 "BFD_RELOC_MIPS_TLS_TPREL_LO16",
df58fc94 1310 "BFD_RELOC_MICROMIPS_TLS_TPREL_LO16",
067ec077 1311 "BFD_RELOC_MIPS_EH",
8ad30312 1312
0a44bf69
RS
1313 "BFD_RELOC_MIPS_COPY",
1314 "BFD_RELOC_MIPS_JUMP_SLOT",
1315
f865a31d
AG
1316 "BFD_RELOC_MOXIE_10_PCREL",
1317
3f8107ab
AM
1318 "BFD_RELOC_FT32_10",
1319 "BFD_RELOC_FT32_20",
1320 "BFD_RELOC_FT32_17",
1321 "BFD_RELOC_FT32_18",
81b42bca
JB
1322 "BFD_RELOC_FT32_RELAX",
1323 "BFD_RELOC_FT32_SC0",
1324 "BFD_RELOC_FT32_SC1",
3b4b0a62 1325 "BFD_RELOC_FT32_15",
81b42bca 1326 "BFD_RELOC_FT32_DIFF32",
3f8107ab 1327
bb3fff1e
AM
1328 "BFD_RELOC_FRV_LABEL16",
1329 "BFD_RELOC_FRV_LABEL24",
1330 "BFD_RELOC_FRV_LO16",
1331 "BFD_RELOC_FRV_HI16",
1332 "BFD_RELOC_FRV_GPREL12",
1333 "BFD_RELOC_FRV_GPRELU12",
1334 "BFD_RELOC_FRV_GPREL32",
1335 "BFD_RELOC_FRV_GPRELHI",
1336 "BFD_RELOC_FRV_GPRELLO",
51532845
AO
1337 "BFD_RELOC_FRV_GOT12",
1338 "BFD_RELOC_FRV_GOTHI",
1339 "BFD_RELOC_FRV_GOTLO",
1340 "BFD_RELOC_FRV_FUNCDESC",
1341 "BFD_RELOC_FRV_FUNCDESC_GOT12",
1342 "BFD_RELOC_FRV_FUNCDESC_GOTHI",
1343 "BFD_RELOC_FRV_FUNCDESC_GOTLO",
1344 "BFD_RELOC_FRV_FUNCDESC_VALUE",
1345 "BFD_RELOC_FRV_FUNCDESC_GOTOFF12",
1346 "BFD_RELOC_FRV_FUNCDESC_GOTOFFHI",
1347 "BFD_RELOC_FRV_FUNCDESC_GOTOFFLO",
1348 "BFD_RELOC_FRV_GOTOFF12",
1349 "BFD_RELOC_FRV_GOTOFFHI",
1350 "BFD_RELOC_FRV_GOTOFFLO",
90219bd0
AO
1351 "BFD_RELOC_FRV_GETTLSOFF",
1352 "BFD_RELOC_FRV_TLSDESC_VALUE",
1353 "BFD_RELOC_FRV_GOTTLSDESC12",
1354 "BFD_RELOC_FRV_GOTTLSDESCHI",
1355 "BFD_RELOC_FRV_GOTTLSDESCLO",
1356 "BFD_RELOC_FRV_TLSMOFF12",
1357 "BFD_RELOC_FRV_TLSMOFFHI",
1358 "BFD_RELOC_FRV_TLSMOFFLO",
1359 "BFD_RELOC_FRV_GOTTLSOFF12",
1360 "BFD_RELOC_FRV_GOTTLSOFFHI",
1361 "BFD_RELOC_FRV_GOTTLSOFFLO",
1362 "BFD_RELOC_FRV_TLSOFF",
1363 "BFD_RELOC_FRV_TLSDESC_RELAX",
1364 "BFD_RELOC_FRV_GETTLSOFF_RELAX",
1365 "BFD_RELOC_FRV_TLSOFF_RELAX",
1366 "BFD_RELOC_FRV_TLSMOFF",
8ad30312 1367
03a12831
AO
1368 "BFD_RELOC_MN10300_GOTOFF24",
1369 "BFD_RELOC_MN10300_GOT32",
1370 "BFD_RELOC_MN10300_GOT24",
1371 "BFD_RELOC_MN10300_GOT16",
1372 "BFD_RELOC_MN10300_COPY",
1373 "BFD_RELOC_MN10300_GLOB_DAT",
1374 "BFD_RELOC_MN10300_JMP_SLOT",
1375 "BFD_RELOC_MN10300_RELATIVE",
bfff1642 1376 "BFD_RELOC_MN10300_SYM_DIFF",
569006e5 1377 "BFD_RELOC_MN10300_ALIGN",
0a22ae8e
NC
1378 "BFD_RELOC_MN10300_TLS_GD",
1379 "BFD_RELOC_MN10300_TLS_LD",
1380 "BFD_RELOC_MN10300_TLS_LDO",
1381 "BFD_RELOC_MN10300_TLS_GOTIE",
1382 "BFD_RELOC_MN10300_TLS_IE",
1383 "BFD_RELOC_MN10300_TLS_LE",
1384 "BFD_RELOC_MN10300_TLS_DTPMOD",
1385 "BFD_RELOC_MN10300_TLS_DTPOFF",
1386 "BFD_RELOC_MN10300_TLS_TPOFF",
1387 "BFD_RELOC_MN10300_32_PCREL",
1388 "BFD_RELOC_MN10300_16_PCREL",
252b5132
RH
1389
1390 "BFD_RELOC_386_GOT32",
1391 "BFD_RELOC_386_PLT32",
1392 "BFD_RELOC_386_COPY",
1393 "BFD_RELOC_386_GLOB_DAT",
1394 "BFD_RELOC_386_JUMP_SLOT",
1395 "BFD_RELOC_386_RELATIVE",
1396 "BFD_RELOC_386_GOTOFF",
1397 "BFD_RELOC_386_GOTPC",
37e55690
JJ
1398 "BFD_RELOC_386_TLS_TPOFF",
1399 "BFD_RELOC_386_TLS_IE",
1400 "BFD_RELOC_386_TLS_GOTIE",
13ae64f3
JJ
1401 "BFD_RELOC_386_TLS_LE",
1402 "BFD_RELOC_386_TLS_GD",
1403 "BFD_RELOC_386_TLS_LDM",
1404 "BFD_RELOC_386_TLS_LDO_32",
1405 "BFD_RELOC_386_TLS_IE_32",
1406 "BFD_RELOC_386_TLS_LE_32",
1407 "BFD_RELOC_386_TLS_DTPMOD32",
1408 "BFD_RELOC_386_TLS_DTPOFF32",
1409 "BFD_RELOC_386_TLS_TPOFF32",
67a4f2b7
AO
1410 "BFD_RELOC_386_TLS_GOTDESC",
1411 "BFD_RELOC_386_TLS_DESC_CALL",
1412 "BFD_RELOC_386_TLS_DESC",
cbe950e9 1413 "BFD_RELOC_386_IRELATIVE",
02a86693 1414 "BFD_RELOC_386_GOT32X",
8d88c4ca
NC
1415 "BFD_RELOC_X86_64_GOT32",
1416 "BFD_RELOC_X86_64_PLT32",
1417 "BFD_RELOC_X86_64_COPY",
1418 "BFD_RELOC_X86_64_GLOB_DAT",
1419 "BFD_RELOC_X86_64_JUMP_SLOT",
1420 "BFD_RELOC_X86_64_RELATIVE",
1421 "BFD_RELOC_X86_64_GOTPCREL",
1422 "BFD_RELOC_X86_64_32S",
bffbf940
JJ
1423 "BFD_RELOC_X86_64_DTPMOD64",
1424 "BFD_RELOC_X86_64_DTPOFF64",
1425 "BFD_RELOC_X86_64_TPOFF64",
1426 "BFD_RELOC_X86_64_TLSGD",
1427 "BFD_RELOC_X86_64_TLSLD",
1428 "BFD_RELOC_X86_64_DTPOFF32",
1429 "BFD_RELOC_X86_64_GOTTPOFF",
1430 "BFD_RELOC_X86_64_TPOFF32",
d6ab8113
JB
1431 "BFD_RELOC_X86_64_GOTOFF64",
1432 "BFD_RELOC_X86_64_GOTPC32",
7b81dfbb
AJ
1433 "BFD_RELOC_X86_64_GOT64",
1434 "BFD_RELOC_X86_64_GOTPCREL64",
1435 "BFD_RELOC_X86_64_GOTPC64",
1436 "BFD_RELOC_X86_64_GOTPLT64",
1437 "BFD_RELOC_X86_64_PLTOFF64",
67a4f2b7
AO
1438 "BFD_RELOC_X86_64_GOTPC32_TLSDESC",
1439 "BFD_RELOC_X86_64_TLSDESC_CALL",
1440 "BFD_RELOC_X86_64_TLSDESC",
cbe950e9 1441 "BFD_RELOC_X86_64_IRELATIVE",
c3320543
L
1442 "BFD_RELOC_X86_64_PC32_BND",
1443 "BFD_RELOC_X86_64_PLT32_BND",
56ceb5b5
L
1444 "BFD_RELOC_X86_64_GOTPCRELX",
1445 "BFD_RELOC_X86_64_REX_GOTPCRELX",
252b5132
RH
1446 "BFD_RELOC_NS32K_IMM_8",
1447 "BFD_RELOC_NS32K_IMM_16",
1448 "BFD_RELOC_NS32K_IMM_32",
1449 "BFD_RELOC_NS32K_IMM_8_PCREL",
1450 "BFD_RELOC_NS32K_IMM_16_PCREL",
1451 "BFD_RELOC_NS32K_IMM_32_PCREL",
1452 "BFD_RELOC_NS32K_DISP_8",
1453 "BFD_RELOC_NS32K_DISP_16",
1454 "BFD_RELOC_NS32K_DISP_32",
1455 "BFD_RELOC_NS32K_DISP_8_PCREL",
1456 "BFD_RELOC_NS32K_DISP_16_PCREL",
1457 "BFD_RELOC_NS32K_DISP_32_PCREL",
e135f41b
NC
1458 "BFD_RELOC_PDP11_DISP_8_PCREL",
1459 "BFD_RELOC_PDP11_DISP_6_PCREL",
0bcb993b
ILT
1460 "BFD_RELOC_PJ_CODE_HI16",
1461 "BFD_RELOC_PJ_CODE_LO16",
1462 "BFD_RELOC_PJ_CODE_DIR16",
1463 "BFD_RELOC_PJ_CODE_DIR32",
1464 "BFD_RELOC_PJ_CODE_REL16",
1465 "BFD_RELOC_PJ_CODE_REL32",
252b5132
RH
1466 "BFD_RELOC_PPC_B26",
1467 "BFD_RELOC_PPC_BA26",
1468 "BFD_RELOC_PPC_TOC16",
4a403be0
CC
1469 "BFD_RELOC_PPC_TOC16_LO",
1470 "BFD_RELOC_PPC_TOC16_HI",
252b5132
RH
1471 "BFD_RELOC_PPC_B16",
1472 "BFD_RELOC_PPC_B16_BRTAKEN",
1473 "BFD_RELOC_PPC_B16_BRNTAKEN",
1474 "BFD_RELOC_PPC_BA16",
1475 "BFD_RELOC_PPC_BA16_BRTAKEN",
1476 "BFD_RELOC_PPC_BA16_BRNTAKEN",
1477 "BFD_RELOC_PPC_COPY",
1478 "BFD_RELOC_PPC_GLOB_DAT",
1479 "BFD_RELOC_PPC_JMP_SLOT",
1480 "BFD_RELOC_PPC_RELATIVE",
1481 "BFD_RELOC_PPC_LOCAL24PC",
1482 "BFD_RELOC_PPC_EMB_NADDR32",
1483 "BFD_RELOC_PPC_EMB_NADDR16",
1484 "BFD_RELOC_PPC_EMB_NADDR16_LO",
1485 "BFD_RELOC_PPC_EMB_NADDR16_HI",
1486 "BFD_RELOC_PPC_EMB_NADDR16_HA",
1487 "BFD_RELOC_PPC_EMB_SDAI16",
1488 "BFD_RELOC_PPC_EMB_SDA2I16",
1489 "BFD_RELOC_PPC_EMB_SDA2REL",
1490 "BFD_RELOC_PPC_EMB_SDA21",
1491 "BFD_RELOC_PPC_EMB_MRKREF",
1492 "BFD_RELOC_PPC_EMB_RELSEC16",
1493 "BFD_RELOC_PPC_EMB_RELST_LO",
1494 "BFD_RELOC_PPC_EMB_RELST_HI",
1495 "BFD_RELOC_PPC_EMB_RELST_HA",
1496 "BFD_RELOC_PPC_EMB_BIT_FLD",
1497 "BFD_RELOC_PPC_EMB_RELSDA",
b9c361e0
JL
1498 "BFD_RELOC_PPC_VLE_REL8",
1499 "BFD_RELOC_PPC_VLE_REL15",
1500 "BFD_RELOC_PPC_VLE_REL24",
1501 "BFD_RELOC_PPC_VLE_LO16A",
1502 "BFD_RELOC_PPC_VLE_LO16D",
1503 "BFD_RELOC_PPC_VLE_HI16A",
1504 "BFD_RELOC_PPC_VLE_HI16D",
1505 "BFD_RELOC_PPC_VLE_HA16A",
1506 "BFD_RELOC_PPC_VLE_HA16D",
1507 "BFD_RELOC_PPC_VLE_SDA21",
1508 "BFD_RELOC_PPC_VLE_SDA21_LO",
1509 "BFD_RELOC_PPC_VLE_SDAREL_LO16A",
1510 "BFD_RELOC_PPC_VLE_SDAREL_LO16D",
1511 "BFD_RELOC_PPC_VLE_SDAREL_HI16A",
1512 "BFD_RELOC_PPC_VLE_SDAREL_HI16D",
1513 "BFD_RELOC_PPC_VLE_SDAREL_HA16A",
1514 "BFD_RELOC_PPC_VLE_SDAREL_HA16D",
7ba71655 1515 "BFD_RELOC_PPC_16DX_HA",
a680de9a 1516 "BFD_RELOC_PPC_REL16DX_HA",
c5df7e44 1517 "BFD_RELOC_PPC_NEG",
5bd4f169
AM
1518 "BFD_RELOC_PPC64_HIGHER",
1519 "BFD_RELOC_PPC64_HIGHER_S",
1520 "BFD_RELOC_PPC64_HIGHEST",
1521 "BFD_RELOC_PPC64_HIGHEST_S",
1522 "BFD_RELOC_PPC64_TOC16_LO",
1523 "BFD_RELOC_PPC64_TOC16_HI",
1524 "BFD_RELOC_PPC64_TOC16_HA",
1525 "BFD_RELOC_PPC64_TOC",
dc810e39 1526 "BFD_RELOC_PPC64_PLTGOT16",
5bd4f169
AM
1527 "BFD_RELOC_PPC64_PLTGOT16_LO",
1528 "BFD_RELOC_PPC64_PLTGOT16_HI",
1529 "BFD_RELOC_PPC64_PLTGOT16_HA",
1530 "BFD_RELOC_PPC64_ADDR16_DS",
1531 "BFD_RELOC_PPC64_ADDR16_LO_DS",
1532 "BFD_RELOC_PPC64_GOT16_DS",
1533 "BFD_RELOC_PPC64_GOT16_LO_DS",
1534 "BFD_RELOC_PPC64_PLT16_LO_DS",
1535 "BFD_RELOC_PPC64_SECTOFF_DS",
1536 "BFD_RELOC_PPC64_SECTOFF_LO_DS",
1537 "BFD_RELOC_PPC64_TOC16_DS",
1538 "BFD_RELOC_PPC64_TOC16_LO_DS",
1539 "BFD_RELOC_PPC64_PLTGOT16_DS",
1540 "BFD_RELOC_PPC64_PLTGOT16_LO_DS",
f9c6b907
AM
1541 "BFD_RELOC_PPC64_ADDR16_HIGH",
1542 "BFD_RELOC_PPC64_ADDR16_HIGHA",
4a969973
AM
1543 "BFD_RELOC_PPC64_REL16_HIGH",
1544 "BFD_RELOC_PPC64_REL16_HIGHA",
1545 "BFD_RELOC_PPC64_REL16_HIGHER",
1546 "BFD_RELOC_PPC64_REL16_HIGHERA",
1547 "BFD_RELOC_PPC64_REL16_HIGHEST",
1548 "BFD_RELOC_PPC64_REL16_HIGHESTA",
45965137 1549 "BFD_RELOC_PPC64_ADDR64_LOCAL",
006589cf 1550 "BFD_RELOC_PPC64_ENTRY",
05d0e962 1551 "BFD_RELOC_PPC64_REL24_NOTOC",
7aba54da 1552 "BFD_RELOC_PPC64_REL24_P9NOTOC",
5663e321
AM
1553 "BFD_RELOC_PPC64_D34",
1554 "BFD_RELOC_PPC64_D34_LO",
1555 "BFD_RELOC_PPC64_D34_HI30",
1556 "BFD_RELOC_PPC64_D34_HA30",
1557 "BFD_RELOC_PPC64_PCREL34",
1558 "BFD_RELOC_PPC64_GOT_PCREL34",
1559 "BFD_RELOC_PPC64_PLT_PCREL34",
1560 "BFD_RELOC_PPC64_ADDR16_HIGHER34",
1561 "BFD_RELOC_PPC64_ADDR16_HIGHERA34",
1562 "BFD_RELOC_PPC64_ADDR16_HIGHEST34",
1563 "BFD_RELOC_PPC64_ADDR16_HIGHESTA34",
1564 "BFD_RELOC_PPC64_REL16_HIGHER34",
1565 "BFD_RELOC_PPC64_REL16_HIGHERA34",
1566 "BFD_RELOC_PPC64_REL16_HIGHEST34",
1567 "BFD_RELOC_PPC64_REL16_HIGHESTA34",
1568 "BFD_RELOC_PPC64_D28",
1569 "BFD_RELOC_PPC64_PCREL28",
411e1bfb 1570 "BFD_RELOC_PPC_TLS",
727fc41e
AM
1571 "BFD_RELOC_PPC_TLSGD",
1572 "BFD_RELOC_PPC_TLSLD",
1b2cb8e2
CC
1573 "BFD_RELOC_PPC_TLSLE",
1574 "BFD_RELOC_PPC_TLSIE",
1575 "BFD_RELOC_PPC_TLSM",
1576 "BFD_RELOC_PPC_TLSML",
411e1bfb
AM
1577 "BFD_RELOC_PPC_DTPMOD",
1578 "BFD_RELOC_PPC_TPREL16",
1579 "BFD_RELOC_PPC_TPREL16_LO",
1580 "BFD_RELOC_PPC_TPREL16_HI",
1581 "BFD_RELOC_PPC_TPREL16_HA",
1582 "BFD_RELOC_PPC_TPREL",
1583 "BFD_RELOC_PPC_DTPREL16",
1584 "BFD_RELOC_PPC_DTPREL16_LO",
1585 "BFD_RELOC_PPC_DTPREL16_HI",
1586 "BFD_RELOC_PPC_DTPREL16_HA",
1587 "BFD_RELOC_PPC_DTPREL",
1588 "BFD_RELOC_PPC_GOT_TLSGD16",
1589 "BFD_RELOC_PPC_GOT_TLSGD16_LO",
1590 "BFD_RELOC_PPC_GOT_TLSGD16_HI",
1591 "BFD_RELOC_PPC_GOT_TLSGD16_HA",
1592 "BFD_RELOC_PPC_GOT_TLSLD16",
1593 "BFD_RELOC_PPC_GOT_TLSLD16_LO",
1594 "BFD_RELOC_PPC_GOT_TLSLD16_HI",
1595 "BFD_RELOC_PPC_GOT_TLSLD16_HA",
1596 "BFD_RELOC_PPC_GOT_TPREL16",
1597 "BFD_RELOC_PPC_GOT_TPREL16_LO",
1598 "BFD_RELOC_PPC_GOT_TPREL16_HI",
1599 "BFD_RELOC_PPC_GOT_TPREL16_HA",
1600 "BFD_RELOC_PPC_GOT_DTPREL16",
1601 "BFD_RELOC_PPC_GOT_DTPREL16_LO",
1602 "BFD_RELOC_PPC_GOT_DTPREL16_HI",
1603 "BFD_RELOC_PPC_GOT_DTPREL16_HA",
1b2cb8e2
CC
1604 "BFD_RELOC_PPC64_TLSGD",
1605 "BFD_RELOC_PPC64_TLSLD",
1606 "BFD_RELOC_PPC64_TLSLE",
1607 "BFD_RELOC_PPC64_TLSIE",
1608 "BFD_RELOC_PPC64_TLSM",
1609 "BFD_RELOC_PPC64_TLSML",
411e1bfb
AM
1610 "BFD_RELOC_PPC64_TPREL16_DS",
1611 "BFD_RELOC_PPC64_TPREL16_LO_DS",
334d91b9
AM
1612 "BFD_RELOC_PPC64_TPREL16_HIGH",
1613 "BFD_RELOC_PPC64_TPREL16_HIGHA",
411e1bfb
AM
1614 "BFD_RELOC_PPC64_TPREL16_HIGHER",
1615 "BFD_RELOC_PPC64_TPREL16_HIGHERA",
1616 "BFD_RELOC_PPC64_TPREL16_HIGHEST",
1617 "BFD_RELOC_PPC64_TPREL16_HIGHESTA",
1618 "BFD_RELOC_PPC64_DTPREL16_DS",
1619 "BFD_RELOC_PPC64_DTPREL16_LO_DS",
334d91b9
AM
1620 "BFD_RELOC_PPC64_DTPREL16_HIGH",
1621 "BFD_RELOC_PPC64_DTPREL16_HIGHA",
411e1bfb
AM
1622 "BFD_RELOC_PPC64_DTPREL16_HIGHER",
1623 "BFD_RELOC_PPC64_DTPREL16_HIGHERA",
1624 "BFD_RELOC_PPC64_DTPREL16_HIGHEST",
1625 "BFD_RELOC_PPC64_DTPREL16_HIGHESTA",
c213164a
AM
1626 "BFD_RELOC_PPC64_TPREL34",
1627 "BFD_RELOC_PPC64_DTPREL34",
87c69f97
AM
1628 "BFD_RELOC_PPC64_GOT_TLSGD_PCREL34",
1629 "BFD_RELOC_PPC64_GOT_TLSLD_PCREL34",
1630 "BFD_RELOC_PPC64_GOT_TPREL_PCREL34",
1631 "BFD_RELOC_PPC64_GOT_DTPREL_PCREL34",
c213164a 1632 "BFD_RELOC_PPC64_TLS_PCREL",
5b93d8bb 1633 "BFD_RELOC_I370_D12",
252b5132
RH
1634 "BFD_RELOC_CTOR",
1635 "BFD_RELOC_ARM_PCREL_BRANCH",
dfc5f959
NC
1636 "BFD_RELOC_ARM_PCREL_BLX",
1637 "BFD_RELOC_THUMB_PCREL_BLX",
39b41c9c
PB
1638 "BFD_RELOC_ARM_PCREL_CALL",
1639 "BFD_RELOC_ARM_PCREL_JUMP",
e12437dc 1640 "BFD_RELOC_THUMB_PCREL_BRANCH5",
f6b2b12d 1641 "BFD_RELOC_THUMB_PCREL_BFCSEL",
e5d6e09e 1642 "BFD_RELOC_ARM_THUMB_BF17",
1889da70 1643 "BFD_RELOC_ARM_THUMB_BF13",
1caf72a5 1644 "BFD_RELOC_ARM_THUMB_BF19",
60f993ce 1645 "BFD_RELOC_ARM_THUMB_LOOP12",
c19d1205
ZW
1646 "BFD_RELOC_THUMB_PCREL_BRANCH7",
1647 "BFD_RELOC_THUMB_PCREL_BRANCH9",
1648 "BFD_RELOC_THUMB_PCREL_BRANCH12",
1649 "BFD_RELOC_THUMB_PCREL_BRANCH20",
1650 "BFD_RELOC_THUMB_PCREL_BRANCH23",
1651 "BFD_RELOC_THUMB_PCREL_BRANCH25",
1652 "BFD_RELOC_ARM_OFFSET_IMM",
1653 "BFD_RELOC_ARM_THUMB_OFFSET",
1654 "BFD_RELOC_ARM_TARGET1",
1655 "BFD_RELOC_ARM_ROSEGREL32",
1656 "BFD_RELOC_ARM_SBREL32",
1657 "BFD_RELOC_ARM_TARGET2",
1658 "BFD_RELOC_ARM_PREL31",
b6895b4f
PB
1659 "BFD_RELOC_ARM_MOVW",
1660 "BFD_RELOC_ARM_MOVT",
1661 "BFD_RELOC_ARM_MOVW_PCREL",
1662 "BFD_RELOC_ARM_MOVT_PCREL",
1663 "BFD_RELOC_ARM_THUMB_MOVW",
1664 "BFD_RELOC_ARM_THUMB_MOVT",
1665 "BFD_RELOC_ARM_THUMB_MOVW_PCREL",
1666 "BFD_RELOC_ARM_THUMB_MOVT_PCREL",
ffa389a3
AM
1667 "BFD_RELOC_ARM_GOTFUNCDESC",
1668 "BFD_RELOC_ARM_GOTOFFFUNCDESC",
1669 "BFD_RELOC_ARM_FUNCDESC",
1670 "BFD_RELOC_ARM_FUNCDESC_VALUE",
1671 "BFD_RELOC_ARM_TLS_GD32_FDPIC",
1672 "BFD_RELOC_ARM_TLS_LDM32_FDPIC",
1673 "BFD_RELOC_ARM_TLS_IE32_FDPIC",
c19d1205
ZW
1674 "BFD_RELOC_ARM_JUMP_SLOT",
1675 "BFD_RELOC_ARM_GLOB_DAT",
1676 "BFD_RELOC_ARM_GOT32",
1677 "BFD_RELOC_ARM_PLT32",
1678 "BFD_RELOC_ARM_RELATIVE",
1679 "BFD_RELOC_ARM_GOTOFF",
1680 "BFD_RELOC_ARM_GOTPC",
b43420e6 1681 "BFD_RELOC_ARM_GOT_PREL",
c19d1205
ZW
1682 "BFD_RELOC_ARM_TLS_GD32",
1683 "BFD_RELOC_ARM_TLS_LDO32",
1684 "BFD_RELOC_ARM_TLS_LDM32",
1685 "BFD_RELOC_ARM_TLS_DTPOFF32",
1686 "BFD_RELOC_ARM_TLS_DTPMOD32",
1687 "BFD_RELOC_ARM_TLS_TPOFF32",
1688 "BFD_RELOC_ARM_TLS_IE32",
1689 "BFD_RELOC_ARM_TLS_LE32",
0855e32b
NS
1690 "BFD_RELOC_ARM_TLS_GOTDESC",
1691 "BFD_RELOC_ARM_TLS_CALL",
1692 "BFD_RELOC_ARM_THM_TLS_CALL",
1693 "BFD_RELOC_ARM_TLS_DESCSEQ",
1694 "BFD_RELOC_ARM_THM_TLS_DESCSEQ",
1695 "BFD_RELOC_ARM_TLS_DESC",
4962c51a
MS
1696 "BFD_RELOC_ARM_ALU_PC_G0_NC",
1697 "BFD_RELOC_ARM_ALU_PC_G0",
1698 "BFD_RELOC_ARM_ALU_PC_G1_NC",
1699 "BFD_RELOC_ARM_ALU_PC_G1",
1700 "BFD_RELOC_ARM_ALU_PC_G2",
1701 "BFD_RELOC_ARM_LDR_PC_G0",
1702 "BFD_RELOC_ARM_LDR_PC_G1",
1703 "BFD_RELOC_ARM_LDR_PC_G2",
1704 "BFD_RELOC_ARM_LDRS_PC_G0",
1705 "BFD_RELOC_ARM_LDRS_PC_G1",
1706 "BFD_RELOC_ARM_LDRS_PC_G2",
1707 "BFD_RELOC_ARM_LDC_PC_G0",
1708 "BFD_RELOC_ARM_LDC_PC_G1",
1709 "BFD_RELOC_ARM_LDC_PC_G2",
1710 "BFD_RELOC_ARM_ALU_SB_G0_NC",
1711 "BFD_RELOC_ARM_ALU_SB_G0",
1712 "BFD_RELOC_ARM_ALU_SB_G1_NC",
1713 "BFD_RELOC_ARM_ALU_SB_G1",
1714 "BFD_RELOC_ARM_ALU_SB_G2",
1715 "BFD_RELOC_ARM_LDR_SB_G0",
1716 "BFD_RELOC_ARM_LDR_SB_G1",
1717 "BFD_RELOC_ARM_LDR_SB_G2",
1718 "BFD_RELOC_ARM_LDRS_SB_G0",
1719 "BFD_RELOC_ARM_LDRS_SB_G1",
1720 "BFD_RELOC_ARM_LDRS_SB_G2",
1721 "BFD_RELOC_ARM_LDC_SB_G0",
1722 "BFD_RELOC_ARM_LDC_SB_G1",
1723 "BFD_RELOC_ARM_LDC_SB_G2",
845b51d6 1724 "BFD_RELOC_ARM_V4BX",
5b806d27 1725 "BFD_RELOC_ARM_IRELATIVE",
72d98d16
MG
1726 "BFD_RELOC_ARM_THUMB_ALU_ABS_G0_NC",
1727 "BFD_RELOC_ARM_THUMB_ALU_ABS_G1_NC",
1728 "BFD_RELOC_ARM_THUMB_ALU_ABS_G2_NC",
1729 "BFD_RELOC_ARM_THUMB_ALU_ABS_G3_NC",
252b5132 1730 "BFD_RELOC_ARM_IMMEDIATE",
3b62fea8 1731 "BFD_RELOC_ARM_ADRL_IMMEDIATE",
c19d1205 1732 "BFD_RELOC_ARM_T32_IMMEDIATE",
16805f35 1733 "BFD_RELOC_ARM_T32_ADD_IMM",
92e90b6e 1734 "BFD_RELOC_ARM_T32_IMM12",
e9f89963 1735 "BFD_RELOC_ARM_T32_ADD_PC12",
252b5132 1736 "BFD_RELOC_ARM_SHIFT_IMM",
3eb17e6b 1737 "BFD_RELOC_ARM_SMC",
876e93c1 1738 "BFD_RELOC_ARM_HVC",
252b5132
RH
1739 "BFD_RELOC_ARM_SWI",
1740 "BFD_RELOC_ARM_MULTI",
1741 "BFD_RELOC_ARM_CP_OFF_IMM",
e16bb312 1742 "BFD_RELOC_ARM_CP_OFF_IMM_S2",
8f06b2d8
PB
1743 "BFD_RELOC_ARM_T32_CP_OFF_IMM",
1744 "BFD_RELOC_ARM_T32_CP_OFF_IMM_S2",
32c36c3c 1745 "BFD_RELOC_ARM_T32_VLDR_VSTR_OFF_IMM",
252b5132
RH
1746 "BFD_RELOC_ARM_ADR_IMM",
1747 "BFD_RELOC_ARM_LDR_IMM",
1748 "BFD_RELOC_ARM_LITERAL",
1749 "BFD_RELOC_ARM_IN_POOL",
1750 "BFD_RELOC_ARM_OFFSET_IMM8",
c19d1205
ZW
1751 "BFD_RELOC_ARM_T32_OFFSET_U8",
1752 "BFD_RELOC_ARM_T32_OFFSET_IMM",
252b5132
RH
1753 "BFD_RELOC_ARM_HWLITERAL",
1754 "BFD_RELOC_ARM_THUMB_ADD",
1755 "BFD_RELOC_ARM_THUMB_IMM",
1756 "BFD_RELOC_ARM_THUMB_SHIFT",
252b5132
RH
1757 "BFD_RELOC_SH_PCDISP8BY2",
1758 "BFD_RELOC_SH_PCDISP12BY2",
1d70c7fb
AO
1759 "BFD_RELOC_SH_IMM3",
1760 "BFD_RELOC_SH_IMM3U",
1761 "BFD_RELOC_SH_DISP12",
1762 "BFD_RELOC_SH_DISP12BY2",
1763 "BFD_RELOC_SH_DISP12BY4",
1764 "BFD_RELOC_SH_DISP12BY8",
1765 "BFD_RELOC_SH_DISP20",
1766 "BFD_RELOC_SH_DISP20BY8",
252b5132
RH
1767 "BFD_RELOC_SH_IMM4",
1768 "BFD_RELOC_SH_IMM4BY2",
1769 "BFD_RELOC_SH_IMM4BY4",
1770 "BFD_RELOC_SH_IMM8",
1771 "BFD_RELOC_SH_IMM8BY2",
1772 "BFD_RELOC_SH_IMM8BY4",
1773 "BFD_RELOC_SH_PCRELIMM8BY2",
1774 "BFD_RELOC_SH_PCRELIMM8BY4",
1775 "BFD_RELOC_SH_SWITCH16",
1776 "BFD_RELOC_SH_SWITCH32",
1777 "BFD_RELOC_SH_USES",
1778 "BFD_RELOC_SH_COUNT",
1779 "BFD_RELOC_SH_ALIGN",
1780 "BFD_RELOC_SH_CODE",
1781 "BFD_RELOC_SH_DATA",
1782 "BFD_RELOC_SH_LABEL",
015551fc
JR
1783 "BFD_RELOC_SH_LOOP_START",
1784 "BFD_RELOC_SH_LOOP_END",
5b343f5a
NC
1785 "BFD_RELOC_SH_COPY",
1786 "BFD_RELOC_SH_GLOB_DAT",
1787 "BFD_RELOC_SH_JMP_SLOT",
1788 "BFD_RELOC_SH_RELATIVE",
1789 "BFD_RELOC_SH_GOTPC",
54327882
AM
1790 "BFD_RELOC_SH_GOT_LOW16",
1791 "BFD_RELOC_SH_GOT_MEDLOW16",
1792 "BFD_RELOC_SH_GOT_MEDHI16",
1793 "BFD_RELOC_SH_GOT_HI16",
1794 "BFD_RELOC_SH_GOTPLT_LOW16",
1795 "BFD_RELOC_SH_GOTPLT_MEDLOW16",
1796 "BFD_RELOC_SH_GOTPLT_MEDHI16",
1797 "BFD_RELOC_SH_GOTPLT_HI16",
1798 "BFD_RELOC_SH_PLT_LOW16",
1799 "BFD_RELOC_SH_PLT_MEDLOW16",
1800 "BFD_RELOC_SH_PLT_MEDHI16",
1801 "BFD_RELOC_SH_PLT_HI16",
1802 "BFD_RELOC_SH_GOTOFF_LOW16",
1803 "BFD_RELOC_SH_GOTOFF_MEDLOW16",
1804 "BFD_RELOC_SH_GOTOFF_MEDHI16",
1805 "BFD_RELOC_SH_GOTOFF_HI16",
1806 "BFD_RELOC_SH_GOTPC_LOW16",
1807 "BFD_RELOC_SH_GOTPC_MEDLOW16",
1808 "BFD_RELOC_SH_GOTPC_MEDHI16",
1809 "BFD_RELOC_SH_GOTPC_HI16",
1810 "BFD_RELOC_SH_COPY64",
1811 "BFD_RELOC_SH_GLOB_DAT64",
1812 "BFD_RELOC_SH_JMP_SLOT64",
1813 "BFD_RELOC_SH_RELATIVE64",
1814 "BFD_RELOC_SH_GOT10BY4",
1815 "BFD_RELOC_SH_GOT10BY8",
1816 "BFD_RELOC_SH_GOTPLT10BY4",
1817 "BFD_RELOC_SH_GOTPLT10BY8",
1818 "BFD_RELOC_SH_GOTPLT32",
1819 "BFD_RELOC_SH_SHMEDIA_CODE",
1820 "BFD_RELOC_SH_IMMU5",
1821 "BFD_RELOC_SH_IMMS6",
1822 "BFD_RELOC_SH_IMMS6BY32",
1823 "BFD_RELOC_SH_IMMU6",
1824 "BFD_RELOC_SH_IMMS10",
1825 "BFD_RELOC_SH_IMMS10BY2",
1826 "BFD_RELOC_SH_IMMS10BY4",
1827 "BFD_RELOC_SH_IMMS10BY8",
1828 "BFD_RELOC_SH_IMMS16",
1829 "BFD_RELOC_SH_IMMU16",
1830 "BFD_RELOC_SH_IMM_LOW16",
1831 "BFD_RELOC_SH_IMM_LOW16_PCREL",
1832 "BFD_RELOC_SH_IMM_MEDLOW16",
1833 "BFD_RELOC_SH_IMM_MEDLOW16_PCREL",
1834 "BFD_RELOC_SH_IMM_MEDHI16",
1835 "BFD_RELOC_SH_IMM_MEDHI16_PCREL",
1836 "BFD_RELOC_SH_IMM_HI16",
1837 "BFD_RELOC_SH_IMM_HI16_PCREL",
1838 "BFD_RELOC_SH_PT_16",
3376eaf5
KK
1839 "BFD_RELOC_SH_TLS_GD_32",
1840 "BFD_RELOC_SH_TLS_LD_32",
1841 "BFD_RELOC_SH_TLS_LDO_32",
1842 "BFD_RELOC_SH_TLS_IE_32",
1843 "BFD_RELOC_SH_TLS_LE_32",
1844 "BFD_RELOC_SH_TLS_DTPMOD32",
1845 "BFD_RELOC_SH_TLS_DTPOFF32",
1846 "BFD_RELOC_SH_TLS_TPOFF32",
8e45593f
NC
1847 "BFD_RELOC_SH_GOT20",
1848 "BFD_RELOC_SH_GOTOFF20",
1849 "BFD_RELOC_SH_GOTFUNCDESC",
1850 "BFD_RELOC_SH_GOTFUNCDESC20",
1851 "BFD_RELOC_SH_GOTOFFFUNCDESC",
1852 "BFD_RELOC_SH_GOTOFFFUNCDESC20",
1853 "BFD_RELOC_SH_FUNCDESC",
886a2506
NC
1854 "BFD_RELOC_ARC_NONE",
1855 "BFD_RELOC_ARC_8",
1856 "BFD_RELOC_ARC_16",
1857 "BFD_RELOC_ARC_24",
1858 "BFD_RELOC_ARC_32",
1859 "BFD_RELOC_ARC_N8",
1860 "BFD_RELOC_ARC_N16",
1861 "BFD_RELOC_ARC_N24",
1862 "BFD_RELOC_ARC_N32",
1863 "BFD_RELOC_ARC_SDA",
1864 "BFD_RELOC_ARC_SECTOFF",
1865 "BFD_RELOC_ARC_S21H_PCREL",
1866 "BFD_RELOC_ARC_S21W_PCREL",
1867 "BFD_RELOC_ARC_S25H_PCREL",
1868 "BFD_RELOC_ARC_S25W_PCREL",
1869 "BFD_RELOC_ARC_SDA32",
1870 "BFD_RELOC_ARC_SDA_LDST",
1871 "BFD_RELOC_ARC_SDA_LDST1",
1872 "BFD_RELOC_ARC_SDA_LDST2",
1873 "BFD_RELOC_ARC_SDA16_LD",
1874 "BFD_RELOC_ARC_SDA16_LD1",
1875 "BFD_RELOC_ARC_SDA16_LD2",
1876 "BFD_RELOC_ARC_S13_PCREL",
1877 "BFD_RELOC_ARC_W",
1878 "BFD_RELOC_ARC_32_ME",
1879 "BFD_RELOC_ARC_32_ME_S",
1880 "BFD_RELOC_ARC_N32_ME",
1881 "BFD_RELOC_ARC_SECTOFF_ME",
1882 "BFD_RELOC_ARC_SDA32_ME",
1883 "BFD_RELOC_ARC_W_ME",
1884 "BFD_RELOC_AC_SECTOFF_U8",
1885 "BFD_RELOC_AC_SECTOFF_U8_1",
1886 "BFD_RELOC_AC_SECTOFF_U8_2",
a87aa054
CM
1887 "BFD_RELOC_AC_SECTOFF_S9",
1888 "BFD_RELOC_AC_SECTOFF_S9_1",
1889 "BFD_RELOC_AC_SECTOFF_S9_2",
886a2506
NC
1890 "BFD_RELOC_ARC_SECTOFF_ME_1",
1891 "BFD_RELOC_ARC_SECTOFF_ME_2",
1892 "BFD_RELOC_ARC_SECTOFF_1",
1893 "BFD_RELOC_ARC_SECTOFF_2",
a87aa054 1894 "BFD_RELOC_ARC_SDA_12",
886a2506 1895 "BFD_RELOC_ARC_SDA16_ST2",
6f4b1afc 1896 "BFD_RELOC_ARC_32_PCREL",
886a2506
NC
1897 "BFD_RELOC_ARC_PC32",
1898 "BFD_RELOC_ARC_GOT32",
1899 "BFD_RELOC_ARC_GOTPC32",
1900 "BFD_RELOC_ARC_PLT32",
1901 "BFD_RELOC_ARC_COPY",
1902 "BFD_RELOC_ARC_GLOB_DAT",
1903 "BFD_RELOC_ARC_JMP_SLOT",
1904 "BFD_RELOC_ARC_RELATIVE",
1905 "BFD_RELOC_ARC_GOTOFF",
1906 "BFD_RELOC_ARC_GOTPC",
1907 "BFD_RELOC_ARC_S21W_PCREL_PLT",
1908 "BFD_RELOC_ARC_S25H_PCREL_PLT",
1909 "BFD_RELOC_ARC_TLS_DTPMOD",
1910 "BFD_RELOC_ARC_TLS_TPOFF",
1911 "BFD_RELOC_ARC_TLS_GD_GOT",
1912 "BFD_RELOC_ARC_TLS_GD_LD",
1913 "BFD_RELOC_ARC_TLS_GD_CALL",
1914 "BFD_RELOC_ARC_TLS_IE_GOT",
1915 "BFD_RELOC_ARC_TLS_DTPOFF",
1916 "BFD_RELOC_ARC_TLS_DTPOFF_S9",
1917 "BFD_RELOC_ARC_TLS_LE_S9",
1918 "BFD_RELOC_ARC_TLS_LE_32",
1919 "BFD_RELOC_ARC_S25W_PCREL_PLT",
1920 "BFD_RELOC_ARC_S21H_PCREL_PLT",
4b0c052e 1921 "BFD_RELOC_ARC_NPS_CMEM16",
684d5a10 1922 "BFD_RELOC_ARC_JLI_SECTOFF",
0f64bb02
CM
1923 "BFD_RELOC_BFIN_16_IMM",
1924 "BFD_RELOC_BFIN_16_HIGH",
1925 "BFD_RELOC_BFIN_4_PCREL",
1926 "BFD_RELOC_BFIN_5_PCREL",
1927 "BFD_RELOC_BFIN_16_LOW",
1928 "BFD_RELOC_BFIN_10_PCREL",
1929 "BFD_RELOC_BFIN_11_PCREL",
1930 "BFD_RELOC_BFIN_12_PCREL_JUMP",
1931 "BFD_RELOC_BFIN_12_PCREL_JUMP_S",
1932 "BFD_RELOC_BFIN_24_PCREL_CALL_X",
1933 "BFD_RELOC_BFIN_24_PCREL_JUMP_L",
48d502e1
BS
1934 "BFD_RELOC_BFIN_GOT17M4",
1935 "BFD_RELOC_BFIN_GOTHI",
1936 "BFD_RELOC_BFIN_GOTLO",
1937 "BFD_RELOC_BFIN_FUNCDESC",
1938 "BFD_RELOC_BFIN_FUNCDESC_GOT17M4",
1939 "BFD_RELOC_BFIN_FUNCDESC_GOTHI",
1940 "BFD_RELOC_BFIN_FUNCDESC_GOTLO",
1941 "BFD_RELOC_BFIN_FUNCDESC_VALUE",
1942 "BFD_RELOC_BFIN_FUNCDESC_GOTOFF17M4",
1943 "BFD_RELOC_BFIN_FUNCDESC_GOTOFFHI",
1944 "BFD_RELOC_BFIN_FUNCDESC_GOTOFFLO",
1945 "BFD_RELOC_BFIN_GOTOFF17M4",
1946 "BFD_RELOC_BFIN_GOTOFFHI",
1947 "BFD_RELOC_BFIN_GOTOFFLO",
0f64bb02
CM
1948 "BFD_RELOC_BFIN_GOT",
1949 "BFD_RELOC_BFIN_PLTPC",
1950 "BFD_ARELOC_BFIN_PUSH",
1951 "BFD_ARELOC_BFIN_CONST",
1952 "BFD_ARELOC_BFIN_ADD",
1953 "BFD_ARELOC_BFIN_SUB",
1954 "BFD_ARELOC_BFIN_MULT",
1955 "BFD_ARELOC_BFIN_DIV",
1956 "BFD_ARELOC_BFIN_MOD",
1957 "BFD_ARELOC_BFIN_LSHIFT",
1958 "BFD_ARELOC_BFIN_RSHIFT",
1959 "BFD_ARELOC_BFIN_AND",
1960 "BFD_ARELOC_BFIN_OR",
1961 "BFD_ARELOC_BFIN_XOR",
1962 "BFD_ARELOC_BFIN_LAND",
1963 "BFD_ARELOC_BFIN_LOR",
1964 "BFD_ARELOC_BFIN_LEN",
1965 "BFD_ARELOC_BFIN_NEG",
1966 "BFD_ARELOC_BFIN_COMP",
1967 "BFD_ARELOC_BFIN_PAGE",
1968 "BFD_ARELOC_BFIN_HWPAGE",
1969 "BFD_ARELOC_BFIN_ADDR",
252b5132
RH
1970 "BFD_RELOC_D10V_10_PCREL_R",
1971 "BFD_RELOC_D10V_10_PCREL_L",
1972 "BFD_RELOC_D10V_18",
1973 "BFD_RELOC_D10V_18_PCREL",
1974 "BFD_RELOC_D30V_6",
1975 "BFD_RELOC_D30V_9_PCREL",
1976 "BFD_RELOC_D30V_9_PCREL_R",
1977 "BFD_RELOC_D30V_15",
1978 "BFD_RELOC_D30V_15_PCREL",
1979 "BFD_RELOC_D30V_15_PCREL_R",
1980 "BFD_RELOC_D30V_21",
1981 "BFD_RELOC_D30V_21_PCREL",
1982 "BFD_RELOC_D30V_21_PCREL_R",
1983 "BFD_RELOC_D30V_32",
1984 "BFD_RELOC_D30V_32_PCREL",
d172d4ba
NC
1985 "BFD_RELOC_DLX_HI16_S",
1986 "BFD_RELOC_DLX_LO16",
1987 "BFD_RELOC_DLX_JMP26",
fd54057a 1988 "BFD_RELOC_M32C_HI8",
6772dd07
DD
1989 "BFD_RELOC_M32C_RL_JUMP",
1990 "BFD_RELOC_M32C_RL_1ADDR",
1991 "BFD_RELOC_M32C_RL_2ADDR",
252b5132
RH
1992 "BFD_RELOC_M32R_24",
1993 "BFD_RELOC_M32R_10_PCREL",
1994 "BFD_RELOC_M32R_18_PCREL",
1995 "BFD_RELOC_M32R_26_PCREL",
1996 "BFD_RELOC_M32R_HI16_ULO",
1997 "BFD_RELOC_M32R_HI16_SLO",
1998 "BFD_RELOC_M32R_LO16",
1999 "BFD_RELOC_M32R_SDA16",
7653c69b
NC
2000 "BFD_RELOC_M32R_GOT24",
2001 "BFD_RELOC_M32R_26_PLTREL",
2002 "BFD_RELOC_M32R_COPY",
2003 "BFD_RELOC_M32R_GLOB_DAT",
2004 "BFD_RELOC_M32R_JMP_SLOT",
2005 "BFD_RELOC_M32R_RELATIVE",
2006 "BFD_RELOC_M32R_GOTOFF",
097f809a
NC
2007 "BFD_RELOC_M32R_GOTOFF_HI_ULO",
2008 "BFD_RELOC_M32R_GOTOFF_HI_SLO",
2009 "BFD_RELOC_M32R_GOTOFF_LO",
7653c69b
NC
2010 "BFD_RELOC_M32R_GOTPC24",
2011 "BFD_RELOC_M32R_GOT16_HI_ULO",
2012 "BFD_RELOC_M32R_GOT16_HI_SLO",
2013 "BFD_RELOC_M32R_GOT16_LO",
2014 "BFD_RELOC_M32R_GOTPC_HI_ULO",
2015 "BFD_RELOC_M32R_GOTPC_HI_SLO",
2016 "BFD_RELOC_M32R_GOTPC_LO",
35c08157
KLC
2017 "BFD_RELOC_NDS32_20",
2018 "BFD_RELOC_NDS32_9_PCREL",
2019 "BFD_RELOC_NDS32_WORD_9_PCREL",
2020 "BFD_RELOC_NDS32_15_PCREL",
2021 "BFD_RELOC_NDS32_17_PCREL",
2022 "BFD_RELOC_NDS32_25_PCREL",
2023 "BFD_RELOC_NDS32_HI20",
2024 "BFD_RELOC_NDS32_LO12S3",
2025 "BFD_RELOC_NDS32_LO12S2",
2026 "BFD_RELOC_NDS32_LO12S1",
2027 "BFD_RELOC_NDS32_LO12S0",
2028 "BFD_RELOC_NDS32_LO12S0_ORI",
2029 "BFD_RELOC_NDS32_SDA15S3",
2030 "BFD_RELOC_NDS32_SDA15S2",
2031 "BFD_RELOC_NDS32_SDA15S1",
2032 "BFD_RELOC_NDS32_SDA15S0",
2033 "BFD_RELOC_NDS32_SDA16S3",
2034 "BFD_RELOC_NDS32_SDA17S2",
2035 "BFD_RELOC_NDS32_SDA18S1",
2036 "BFD_RELOC_NDS32_SDA19S0",
2037 "BFD_RELOC_NDS32_GOT20",
2038 "BFD_RELOC_NDS32_9_PLTREL",
2039 "BFD_RELOC_NDS32_25_PLTREL",
2040 "BFD_RELOC_NDS32_COPY",
2041 "BFD_RELOC_NDS32_GLOB_DAT",
2042 "BFD_RELOC_NDS32_JMP_SLOT",
2043 "BFD_RELOC_NDS32_RELATIVE",
2044 "BFD_RELOC_NDS32_GOTOFF",
2045 "BFD_RELOC_NDS32_GOTOFF_HI20",
2046 "BFD_RELOC_NDS32_GOTOFF_LO12",
2047 "BFD_RELOC_NDS32_GOTPC20",
2048 "BFD_RELOC_NDS32_GOT_HI20",
2049 "BFD_RELOC_NDS32_GOT_LO12",
2050 "BFD_RELOC_NDS32_GOTPC_HI20",
2051 "BFD_RELOC_NDS32_GOTPC_LO12",
2052 "BFD_RELOC_NDS32_INSN16",
2053 "BFD_RELOC_NDS32_LABEL",
2054 "BFD_RELOC_NDS32_LONGCALL1",
2055 "BFD_RELOC_NDS32_LONGCALL2",
2056 "BFD_RELOC_NDS32_LONGCALL3",
2057 "BFD_RELOC_NDS32_LONGJUMP1",
2058 "BFD_RELOC_NDS32_LONGJUMP2",
2059 "BFD_RELOC_NDS32_LONGJUMP3",
2060 "BFD_RELOC_NDS32_LOADSTORE",
2061 "BFD_RELOC_NDS32_9_FIXED",
2062 "BFD_RELOC_NDS32_15_FIXED",
2063 "BFD_RELOC_NDS32_17_FIXED",
2064 "BFD_RELOC_NDS32_25_FIXED",
1c8f6a4d
KLC
2065 "BFD_RELOC_NDS32_LONGCALL4",
2066 "BFD_RELOC_NDS32_LONGCALL5",
2067 "BFD_RELOC_NDS32_LONGCALL6",
2068 "BFD_RELOC_NDS32_LONGJUMP4",
2069 "BFD_RELOC_NDS32_LONGJUMP5",
2070 "BFD_RELOC_NDS32_LONGJUMP6",
2071 "BFD_RELOC_NDS32_LONGJUMP7",
35c08157
KLC
2072 "BFD_RELOC_NDS32_PLTREL_HI20",
2073 "BFD_RELOC_NDS32_PLTREL_LO12",
2074 "BFD_RELOC_NDS32_PLT_GOTREL_HI20",
2075 "BFD_RELOC_NDS32_PLT_GOTREL_LO12",
2076 "BFD_RELOC_NDS32_SDA12S2_DP",
2077 "BFD_RELOC_NDS32_SDA12S2_SP",
2078 "BFD_RELOC_NDS32_LO12S2_DP",
2079 "BFD_RELOC_NDS32_LO12S2_SP",
2080 "BFD_RELOC_NDS32_DWARF2_OP1",
2081 "BFD_RELOC_NDS32_DWARF2_OP2",
2082 "BFD_RELOC_NDS32_DWARF2_LEB",
2083 "BFD_RELOC_NDS32_UPDATE_TA",
2084 "BFD_RELOC_NDS32_PLT_GOTREL_LO20",
2085 "BFD_RELOC_NDS32_PLT_GOTREL_LO15",
2086 "BFD_RELOC_NDS32_PLT_GOTREL_LO19",
2087 "BFD_RELOC_NDS32_GOT_LO15",
2088 "BFD_RELOC_NDS32_GOT_LO19",
2089 "BFD_RELOC_NDS32_GOTOFF_LO15",
2090 "BFD_RELOC_NDS32_GOTOFF_LO19",
2091 "BFD_RELOC_NDS32_GOT15S2",
2092 "BFD_RELOC_NDS32_GOT17S2",
2093 "BFD_RELOC_NDS32_5",
2094 "BFD_RELOC_NDS32_10_UPCREL",
2095 "BFD_RELOC_NDS32_SDA_FP7U2_RELA",
2096 "BFD_RELOC_NDS32_RELAX_ENTRY",
2097 "BFD_RELOC_NDS32_GOT_SUFF",
2098 "BFD_RELOC_NDS32_GOTOFF_SUFF",
2099 "BFD_RELOC_NDS32_PLT_GOT_SUFF",
2100 "BFD_RELOC_NDS32_MULCALL_SUFF",
2101 "BFD_RELOC_NDS32_PTR",
2102 "BFD_RELOC_NDS32_PTR_COUNT",
2103 "BFD_RELOC_NDS32_PTR_RESOLVED",
2104 "BFD_RELOC_NDS32_PLTBLOCK",
2105 "BFD_RELOC_NDS32_RELAX_REGION_BEGIN",
2106 "BFD_RELOC_NDS32_RELAX_REGION_END",
2107 "BFD_RELOC_NDS32_MINUEND",
2108 "BFD_RELOC_NDS32_SUBTRAHEND",
2109 "BFD_RELOC_NDS32_DIFF8",
2110 "BFD_RELOC_NDS32_DIFF16",
2111 "BFD_RELOC_NDS32_DIFF32",
2112 "BFD_RELOC_NDS32_DIFF_ULEB128",
1c8f6a4d 2113 "BFD_RELOC_NDS32_EMPTY",
35c08157
KLC
2114 "BFD_RELOC_NDS32_25_ABS",
2115 "BFD_RELOC_NDS32_DATA",
2116 "BFD_RELOC_NDS32_TRAN",
2117 "BFD_RELOC_NDS32_17IFC_PCREL",
2118 "BFD_RELOC_NDS32_10IFCU_PCREL",
1c8f6a4d 2119 "BFD_RELOC_NDS32_TPOFF",
fbaf61ad 2120 "BFD_RELOC_NDS32_GOTTPOFF",
1c8f6a4d
KLC
2121 "BFD_RELOC_NDS32_TLS_LE_HI20",
2122 "BFD_RELOC_NDS32_TLS_LE_LO12",
1c8f6a4d
KLC
2123 "BFD_RELOC_NDS32_TLS_LE_20",
2124 "BFD_RELOC_NDS32_TLS_LE_15S0",
2125 "BFD_RELOC_NDS32_TLS_LE_15S1",
2126 "BFD_RELOC_NDS32_TLS_LE_15S2",
fbaf61ad
NC
2127 "BFD_RELOC_NDS32_TLS_LE_ADD",
2128 "BFD_RELOC_NDS32_TLS_LE_LS",
2129 "BFD_RELOC_NDS32_TLS_IE_HI20",
2130 "BFD_RELOC_NDS32_TLS_IE_LO12",
2131 "BFD_RELOC_NDS32_TLS_IE_LO12S2",
2132 "BFD_RELOC_NDS32_TLS_IEGP_HI20",
2133 "BFD_RELOC_NDS32_TLS_IEGP_LO12",
2134 "BFD_RELOC_NDS32_TLS_IEGP_LO12S2",
2135 "BFD_RELOC_NDS32_TLS_IEGP_LW",
2136 "BFD_RELOC_NDS32_TLS_DESC",
2137 "BFD_RELOC_NDS32_TLS_DESC_HI20",
2138 "BFD_RELOC_NDS32_TLS_DESC_LO12",
2139 "BFD_RELOC_NDS32_TLS_DESC_20",
2140 "BFD_RELOC_NDS32_TLS_DESC_SDA17S2",
2141 "BFD_RELOC_NDS32_TLS_DESC_ADD",
2142 "BFD_RELOC_NDS32_TLS_DESC_FUNC",
2143 "BFD_RELOC_NDS32_TLS_DESC_CALL",
2144 "BFD_RELOC_NDS32_TLS_DESC_MEM",
2145 "BFD_RELOC_NDS32_REMOVE",
2146 "BFD_RELOC_NDS32_GROUP",
2147 "BFD_RELOC_NDS32_LSI",
252b5132
RH
2148 "BFD_RELOC_V850_9_PCREL",
2149 "BFD_RELOC_V850_22_PCREL",
2150 "BFD_RELOC_V850_SDA_16_16_OFFSET",
2151 "BFD_RELOC_V850_SDA_15_16_OFFSET",
2152 "BFD_RELOC_V850_ZDA_16_16_OFFSET",
2153 "BFD_RELOC_V850_ZDA_15_16_OFFSET",
2154 "BFD_RELOC_V850_TDA_6_8_OFFSET",
2155 "BFD_RELOC_V850_TDA_7_8_OFFSET",
2156 "BFD_RELOC_V850_TDA_7_7_OFFSET",
2157 "BFD_RELOC_V850_TDA_16_16_OFFSET",
2158 "BFD_RELOC_V850_TDA_4_5_OFFSET",
2159 "BFD_RELOC_V850_TDA_4_4_OFFSET",
2160 "BFD_RELOC_V850_SDA_16_16_SPLIT_OFFSET",
2161 "BFD_RELOC_V850_ZDA_16_16_SPLIT_OFFSET",
2162 "BFD_RELOC_V850_CALLT_6_7_OFFSET",
2163 "BFD_RELOC_V850_CALLT_16_16_OFFSET",
86aba9db
NC
2164 "BFD_RELOC_V850_LONGCALL",
2165 "BFD_RELOC_V850_LONGJUMP",
2166 "BFD_RELOC_V850_ALIGN",
1e50d24d 2167 "BFD_RELOC_V850_LO16_SPLIT_OFFSET",
1cd986c5
NC
2168 "BFD_RELOC_V850_16_PCREL",
2169 "BFD_RELOC_V850_17_PCREL",
2170 "BFD_RELOC_V850_23",
2171 "BFD_RELOC_V850_32_PCREL",
2172 "BFD_RELOC_V850_32_ABS",
2173 "BFD_RELOC_V850_16_SPLIT_OFFSET",
2174 "BFD_RELOC_V850_16_S1",
2175 "BFD_RELOC_V850_LO16_S1",
2176 "BFD_RELOC_V850_CALLT_15_16_OFFSET",
2177 "BFD_RELOC_V850_32_GOTPCREL",
2178 "BFD_RELOC_V850_16_GOT",
2179 "BFD_RELOC_V850_32_GOT",
2180 "BFD_RELOC_V850_22_PLT_PCREL",
2181 "BFD_RELOC_V850_32_PLT_PCREL",
2182 "BFD_RELOC_V850_COPY",
2183 "BFD_RELOC_V850_GLOB_DAT",
2184 "BFD_RELOC_V850_JMP_SLOT",
2185 "BFD_RELOC_V850_RELATIVE",
2186 "BFD_RELOC_V850_16_GOTOFF",
2187 "BFD_RELOC_V850_32_GOTOFF",
2188 "BFD_RELOC_V850_CODE",
2189 "BFD_RELOC_V850_DATA",
252b5132 2190 "BFD_RELOC_TIC30_LDP",
81635ce4
TW
2191 "BFD_RELOC_TIC54X_PARTLS7",
2192 "BFD_RELOC_TIC54X_PARTMS9",
2193 "BFD_RELOC_TIC54X_23",
2194 "BFD_RELOC_TIC54X_16_OF_23",
2195 "BFD_RELOC_TIC54X_MS7_OF_23",
40b36596
JM
2196 "BFD_RELOC_C6000_PCR_S21",
2197 "BFD_RELOC_C6000_PCR_S12",
2198 "BFD_RELOC_C6000_PCR_S10",
2199 "BFD_RELOC_C6000_PCR_S7",
2200 "BFD_RELOC_C6000_ABS_S16",
2201 "BFD_RELOC_C6000_ABS_L16",
2202 "BFD_RELOC_C6000_ABS_H16",
2203 "BFD_RELOC_C6000_SBR_U15_B",
2204 "BFD_RELOC_C6000_SBR_U15_H",
2205 "BFD_RELOC_C6000_SBR_U15_W",
2206 "BFD_RELOC_C6000_SBR_S16",
2207 "BFD_RELOC_C6000_SBR_L16_B",
2208 "BFD_RELOC_C6000_SBR_L16_H",
2209 "BFD_RELOC_C6000_SBR_L16_W",
2210 "BFD_RELOC_C6000_SBR_H16_B",
2211 "BFD_RELOC_C6000_SBR_H16_H",
2212 "BFD_RELOC_C6000_SBR_H16_W",
2213 "BFD_RELOC_C6000_SBR_GOT_U15_W",
2214 "BFD_RELOC_C6000_SBR_GOT_L16_W",
2215 "BFD_RELOC_C6000_SBR_GOT_H16_W",
2216 "BFD_RELOC_C6000_DSBT_INDEX",
2217 "BFD_RELOC_C6000_PREL31",
2218 "BFD_RELOC_C6000_COPY",
ac145307
BS
2219 "BFD_RELOC_C6000_JUMP_SLOT",
2220 "BFD_RELOC_C6000_EHTYPE",
2221 "BFD_RELOC_C6000_PCR_H16",
2222 "BFD_RELOC_C6000_PCR_L16",
40b36596
JM
2223 "BFD_RELOC_C6000_ALIGN",
2224 "BFD_RELOC_C6000_FPHEAD",
2225 "BFD_RELOC_C6000_NOCMP",
252b5132
RH
2226 "BFD_RELOC_FR30_48",
2227 "BFD_RELOC_FR30_20",
2228 "BFD_RELOC_FR30_6_IN_4",
2229 "BFD_RELOC_FR30_8_IN_8",
2230 "BFD_RELOC_FR30_9_IN_8",
2231 "BFD_RELOC_FR30_10_IN_8",
2232 "BFD_RELOC_FR30_9_PCREL",
2233 "BFD_RELOC_FR30_12_PCREL",
2234 "BFD_RELOC_MCORE_PCREL_IMM8BY4",
2235 "BFD_RELOC_MCORE_PCREL_IMM11BY2",
2236 "BFD_RELOC_MCORE_PCREL_IMM4BY2",
2237 "BFD_RELOC_MCORE_PCREL_32",
2238 "BFD_RELOC_MCORE_PCREL_JSR_IMM11BY2",
2d1d084f 2239 "BFD_RELOC_MCORE_RVA",
d9352518
DB
2240 "BFD_RELOC_MEP_8",
2241 "BFD_RELOC_MEP_16",
2242 "BFD_RELOC_MEP_32",
2243 "BFD_RELOC_MEP_PCREL8A2",
2244 "BFD_RELOC_MEP_PCREL12A2",
2245 "BFD_RELOC_MEP_PCREL17A2",
2246 "BFD_RELOC_MEP_PCREL24A2",
2247 "BFD_RELOC_MEP_PCABS24A2",
2248 "BFD_RELOC_MEP_LOW16",
2249 "BFD_RELOC_MEP_HI16U",
2250 "BFD_RELOC_MEP_HI16S",
2251 "BFD_RELOC_MEP_GPREL",
2252 "BFD_RELOC_MEP_TPREL",
2253 "BFD_RELOC_MEP_TPREL7",
2254 "BFD_RELOC_MEP_TPREL7A2",
2255 "BFD_RELOC_MEP_TPREL7A4",
2256 "BFD_RELOC_MEP_UIMM24",
2257 "BFD_RELOC_MEP_ADDR24A4",
2258 "BFD_RELOC_MEP_GNU_VTINHERIT",
2259 "BFD_RELOC_MEP_GNU_VTENTRY",
2260
a3c62988
NC
2261 "BFD_RELOC_METAG_HIADDR16",
2262 "BFD_RELOC_METAG_LOADDR16",
2263 "BFD_RELOC_METAG_RELBRANCH",
2264 "BFD_RELOC_METAG_GETSETOFF",
2265 "BFD_RELOC_METAG_HIOG",
2266 "BFD_RELOC_METAG_LOOG",
2267 "BFD_RELOC_METAG_REL8",
2268 "BFD_RELOC_METAG_REL16",
2269 "BFD_RELOC_METAG_HI16_GOTOFF",
2270 "BFD_RELOC_METAG_LO16_GOTOFF",
2271 "BFD_RELOC_METAG_GETSET_GOTOFF",
2272 "BFD_RELOC_METAG_GETSET_GOT",
2273 "BFD_RELOC_METAG_HI16_GOTPC",
2274 "BFD_RELOC_METAG_LO16_GOTPC",
2275 "BFD_RELOC_METAG_HI16_PLT",
2276 "BFD_RELOC_METAG_LO16_PLT",
2277 "BFD_RELOC_METAG_RELBRANCH_PLT",
2278 "BFD_RELOC_METAG_GOTOFF",
2279 "BFD_RELOC_METAG_PLT",
2280 "BFD_RELOC_METAG_COPY",
2281 "BFD_RELOC_METAG_JMP_SLOT",
2282 "BFD_RELOC_METAG_RELATIVE",
2283 "BFD_RELOC_METAG_GLOB_DAT",
2284 "BFD_RELOC_METAG_TLS_GD",
2285 "BFD_RELOC_METAG_TLS_LDM",
2286 "BFD_RELOC_METAG_TLS_LDO_HI16",
2287 "BFD_RELOC_METAG_TLS_LDO_LO16",
2288 "BFD_RELOC_METAG_TLS_LDO",
2289 "BFD_RELOC_METAG_TLS_IE",
2290 "BFD_RELOC_METAG_TLS_IENONPIC",
2291 "BFD_RELOC_METAG_TLS_IENONPIC_HI16",
2292 "BFD_RELOC_METAG_TLS_IENONPIC_LO16",
2293 "BFD_RELOC_METAG_TLS_TPOFF",
2294 "BFD_RELOC_METAG_TLS_DTPMOD",
2295 "BFD_RELOC_METAG_TLS_DTPOFF",
2296 "BFD_RELOC_METAG_TLS_LE",
2297 "BFD_RELOC_METAG_TLS_LE_HI16",
2298 "BFD_RELOC_METAG_TLS_LE_LO16",
3c3bdf30
NC
2299 "BFD_RELOC_MMIX_GETA",
2300 "BFD_RELOC_MMIX_GETA_1",
2301 "BFD_RELOC_MMIX_GETA_2",
2302 "BFD_RELOC_MMIX_GETA_3",
2303 "BFD_RELOC_MMIX_CBRANCH",
2304 "BFD_RELOC_MMIX_CBRANCH_J",
2305 "BFD_RELOC_MMIX_CBRANCH_1",
2306 "BFD_RELOC_MMIX_CBRANCH_2",
2307 "BFD_RELOC_MMIX_CBRANCH_3",
2308 "BFD_RELOC_MMIX_PUSHJ",
2309 "BFD_RELOC_MMIX_PUSHJ_1",
2310 "BFD_RELOC_MMIX_PUSHJ_2",
2311 "BFD_RELOC_MMIX_PUSHJ_3",
f60ebe14 2312 "BFD_RELOC_MMIX_PUSHJ_STUBBABLE",
3c3bdf30
NC
2313 "BFD_RELOC_MMIX_JMP",
2314 "BFD_RELOC_MMIX_JMP_1",
2315 "BFD_RELOC_MMIX_JMP_2",
2316 "BFD_RELOC_MMIX_JMP_3",
2317 "BFD_RELOC_MMIX_ADDR19",
2318 "BFD_RELOC_MMIX_ADDR27",
2319 "BFD_RELOC_MMIX_REG_OR_BYTE",
2320 "BFD_RELOC_MMIX_REG",
2321 "BFD_RELOC_MMIX_BASE_PLUS_OFFSET",
2322 "BFD_RELOC_MMIX_LOCAL",
adde6300
AM
2323 "BFD_RELOC_AVR_7_PCREL",
2324 "BFD_RELOC_AVR_13_PCREL",
2325 "BFD_RELOC_AVR_16_PM",
2326 "BFD_RELOC_AVR_LO8_LDI",
2327 "BFD_RELOC_AVR_HI8_LDI",
2328 "BFD_RELOC_AVR_HH8_LDI",
df406460 2329 "BFD_RELOC_AVR_MS8_LDI",
adde6300
AM
2330 "BFD_RELOC_AVR_LO8_LDI_NEG",
2331 "BFD_RELOC_AVR_HI8_LDI_NEG",
2332 "BFD_RELOC_AVR_HH8_LDI_NEG",
df406460 2333 "BFD_RELOC_AVR_MS8_LDI_NEG",
adde6300 2334 "BFD_RELOC_AVR_LO8_LDI_PM",
28c9d252 2335 "BFD_RELOC_AVR_LO8_LDI_GS",
adde6300 2336 "BFD_RELOC_AVR_HI8_LDI_PM",
28c9d252 2337 "BFD_RELOC_AVR_HI8_LDI_GS",
adde6300
AM
2338 "BFD_RELOC_AVR_HH8_LDI_PM",
2339 "BFD_RELOC_AVR_LO8_LDI_PM_NEG",
2340 "BFD_RELOC_AVR_HI8_LDI_PM_NEG",
2341 "BFD_RELOC_AVR_HH8_LDI_PM_NEG",
2342 "BFD_RELOC_AVR_CALL",
4c52953f
AM
2343 "BFD_RELOC_AVR_LDI",
2344 "BFD_RELOC_AVR_6",
2345 "BFD_RELOC_AVR_6_ADIW",
99700d6f
NC
2346 "BFD_RELOC_AVR_8_LO",
2347 "BFD_RELOC_AVR_8_HI",
40551fb8 2348 "BFD_RELOC_AVR_8_HLO",
85cf705b
NC
2349 "BFD_RELOC_AVR_DIFF8",
2350 "BFD_RELOC_AVR_DIFF16",
2351 "BFD_RELOC_AVR_DIFF32",
f36e8886 2352 "BFD_RELOC_AVR_LDS_STS_16",
75f58085
BS
2353 "BFD_RELOC_AVR_PORT6",
2354 "BFD_RELOC_AVR_PORT5",
e23eba97
NC
2355 "BFD_RELOC_RISCV_HI20",
2356 "BFD_RELOC_RISCV_PCREL_HI20",
2357 "BFD_RELOC_RISCV_PCREL_LO12_I",
2358 "BFD_RELOC_RISCV_PCREL_LO12_S",
2359 "BFD_RELOC_RISCV_LO12_I",
2360 "BFD_RELOC_RISCV_LO12_S",
2361 "BFD_RELOC_RISCV_GPREL12_I",
2362 "BFD_RELOC_RISCV_GPREL12_S",
2363 "BFD_RELOC_RISCV_TPREL_HI20",
2364 "BFD_RELOC_RISCV_TPREL_LO12_I",
2365 "BFD_RELOC_RISCV_TPREL_LO12_S",
2366 "BFD_RELOC_RISCV_TPREL_ADD",
2367 "BFD_RELOC_RISCV_CALL",
2368 "BFD_RELOC_RISCV_CALL_PLT",
2369 "BFD_RELOC_RISCV_ADD8",
2370 "BFD_RELOC_RISCV_ADD16",
2371 "BFD_RELOC_RISCV_ADD32",
2372 "BFD_RELOC_RISCV_ADD64",
2373 "BFD_RELOC_RISCV_SUB8",
2374 "BFD_RELOC_RISCV_SUB16",
2375 "BFD_RELOC_RISCV_SUB32",
2376 "BFD_RELOC_RISCV_SUB64",
2377 "BFD_RELOC_RISCV_GOT_HI20",
2378 "BFD_RELOC_RISCV_TLS_GOT_HI20",
2379 "BFD_RELOC_RISCV_TLS_GD_HI20",
2380 "BFD_RELOC_RISCV_JMP",
2381 "BFD_RELOC_RISCV_TLS_DTPMOD32",
2382 "BFD_RELOC_RISCV_TLS_DTPREL32",
2383 "BFD_RELOC_RISCV_TLS_DTPMOD64",
2384 "BFD_RELOC_RISCV_TLS_DTPREL64",
2385 "BFD_RELOC_RISCV_TLS_TPREL32",
2386 "BFD_RELOC_RISCV_TLS_TPREL64",
2387 "BFD_RELOC_RISCV_ALIGN",
2388 "BFD_RELOC_RISCV_RVC_BRANCH",
2389 "BFD_RELOC_RISCV_RVC_JUMP",
2390 "BFD_RELOC_RISCV_RVC_LUI",
2391 "BFD_RELOC_RISCV_GPREL_I",
2392 "BFD_RELOC_RISCV_GPREL_S",
45f76423
AW
2393 "BFD_RELOC_RISCV_TPREL_I",
2394 "BFD_RELOC_RISCV_TPREL_S",
2395 "BFD_RELOC_RISCV_RELAX",
2396 "BFD_RELOC_RISCV_CFA",
2397 "BFD_RELOC_RISCV_SUB6",
2398 "BFD_RELOC_RISCV_SET6",
2399 "BFD_RELOC_RISCV_SET8",
2400 "BFD_RELOC_RISCV_SET16",
2401 "BFD_RELOC_RISCV_SET32",
a6cbf936 2402 "BFD_RELOC_RISCV_32_PCREL",
99c513f6
DD
2403 "BFD_RELOC_RL78_NEG8",
2404 "BFD_RELOC_RL78_NEG16",
2405 "BFD_RELOC_RL78_NEG24",
2406 "BFD_RELOC_RL78_NEG32",
2407 "BFD_RELOC_RL78_16_OP",
2408 "BFD_RELOC_RL78_24_OP",
2409 "BFD_RELOC_RL78_32_OP",
2410 "BFD_RELOC_RL78_8U",
2411 "BFD_RELOC_RL78_16U",
2412 "BFD_RELOC_RL78_24U",
2413 "BFD_RELOC_RL78_DIR3U_PCREL",
2414 "BFD_RELOC_RL78_DIFF",
2415 "BFD_RELOC_RL78_GPRELB",
2416 "BFD_RELOC_RL78_GPRELW",
2417 "BFD_RELOC_RL78_GPRELL",
2418 "BFD_RELOC_RL78_SYM",
2419 "BFD_RELOC_RL78_OP_SUBTRACT",
2420 "BFD_RELOC_RL78_OP_NEG",
2421 "BFD_RELOC_RL78_OP_AND",
2422 "BFD_RELOC_RL78_OP_SHRA",
2423 "BFD_RELOC_RL78_ABS8",
2424 "BFD_RELOC_RL78_ABS16",
2425 "BFD_RELOC_RL78_ABS16_REV",
2426 "BFD_RELOC_RL78_ABS32",
2427 "BFD_RELOC_RL78_ABS32_REV",
2428 "BFD_RELOC_RL78_ABS16U",
2429 "BFD_RELOC_RL78_ABS16UW",
2430 "BFD_RELOC_RL78_ABS16UL",
2431 "BFD_RELOC_RL78_RELAX",
2432 "BFD_RELOC_RL78_HI16",
2433 "BFD_RELOC_RL78_HI8",
2434 "BFD_RELOC_RL78_LO16",
4107ae22 2435 "BFD_RELOC_RL78_CODE",
54f66250 2436 "BFD_RELOC_RL78_SADDR",
c7927a3c
NC
2437 "BFD_RELOC_RX_NEG8",
2438 "BFD_RELOC_RX_NEG16",
2439 "BFD_RELOC_RX_NEG24",
2440 "BFD_RELOC_RX_NEG32",
2441 "BFD_RELOC_RX_16_OP",
2442 "BFD_RELOC_RX_24_OP",
2443 "BFD_RELOC_RX_32_OP",
2444 "BFD_RELOC_RX_8U",
2445 "BFD_RELOC_RX_16U",
2446 "BFD_RELOC_RX_24U",
2447 "BFD_RELOC_RX_DIR3U_PCREL",
2448 "BFD_RELOC_RX_DIFF",
2449 "BFD_RELOC_RX_GPRELB",
2450 "BFD_RELOC_RX_GPRELW",
2451 "BFD_RELOC_RX_GPRELL",
2452 "BFD_RELOC_RX_SYM",
2453 "BFD_RELOC_RX_OP_SUBTRACT",
9689e3a3 2454 "BFD_RELOC_RX_OP_NEG",
c7927a3c
NC
2455 "BFD_RELOC_RX_ABS8",
2456 "BFD_RELOC_RX_ABS16",
e8ef21bf 2457 "BFD_RELOC_RX_ABS16_REV",
c7927a3c 2458 "BFD_RELOC_RX_ABS32",
e8ef21bf 2459 "BFD_RELOC_RX_ABS32_REV",
c7927a3c
NC
2460 "BFD_RELOC_RX_ABS16U",
2461 "BFD_RELOC_RX_ABS16UW",
2462 "BFD_RELOC_RX_ABS16UL",
2463 "BFD_RELOC_RX_RELAX",
a85d7ed0
NC
2464 "BFD_RELOC_390_12",
2465 "BFD_RELOC_390_GOT12",
2466 "BFD_RELOC_390_PLT32",
2467 "BFD_RELOC_390_COPY",
2468 "BFD_RELOC_390_GLOB_DAT",
2469 "BFD_RELOC_390_JMP_SLOT",
2470 "BFD_RELOC_390_RELATIVE",
2471 "BFD_RELOC_390_GOTPC",
2472 "BFD_RELOC_390_GOT16",
fb798c50
AK
2473 "BFD_RELOC_390_PC12DBL",
2474 "BFD_RELOC_390_PLT12DBL",
a85d7ed0
NC
2475 "BFD_RELOC_390_PC16DBL",
2476 "BFD_RELOC_390_PLT16DBL",
fb798c50
AK
2477 "BFD_RELOC_390_PC24DBL",
2478 "BFD_RELOC_390_PLT24DBL",
a85d7ed0
NC
2479 "BFD_RELOC_390_PC32DBL",
2480 "BFD_RELOC_390_PLT32DBL",
2481 "BFD_RELOC_390_GOTPCDBL",
2482 "BFD_RELOC_390_GOT64",
2483 "BFD_RELOC_390_PLT64",
2484 "BFD_RELOC_390_GOTENT",
5236c819
MS
2485 "BFD_RELOC_390_GOTOFF64",
2486 "BFD_RELOC_390_GOTPLT12",
2487 "BFD_RELOC_390_GOTPLT16",
2488 "BFD_RELOC_390_GOTPLT32",
2489 "BFD_RELOC_390_GOTPLT64",
2490 "BFD_RELOC_390_GOTPLTENT",
2491 "BFD_RELOC_390_PLTOFF16",
2492 "BFD_RELOC_390_PLTOFF32",
2493 "BFD_RELOC_390_PLTOFF64",
69fc87f1
MS
2494 "BFD_RELOC_390_TLS_LOAD",
2495 "BFD_RELOC_390_TLS_GDCALL",
2496 "BFD_RELOC_390_TLS_LDCALL",
2497 "BFD_RELOC_390_TLS_GD32",
2498 "BFD_RELOC_390_TLS_GD64",
2499 "BFD_RELOC_390_TLS_GOTIE12",
2500 "BFD_RELOC_390_TLS_GOTIE32",
2501 "BFD_RELOC_390_TLS_GOTIE64",
2502 "BFD_RELOC_390_TLS_LDM32",
2503 "BFD_RELOC_390_TLS_LDM64",
2504 "BFD_RELOC_390_TLS_IE32",
2505 "BFD_RELOC_390_TLS_IE64",
2506 "BFD_RELOC_390_TLS_IEENT",
2507 "BFD_RELOC_390_TLS_LE32",
2508 "BFD_RELOC_390_TLS_LE64",
2509 "BFD_RELOC_390_TLS_LDO32",
2510 "BFD_RELOC_390_TLS_LDO64",
2511 "BFD_RELOC_390_TLS_DTPMOD",
2512 "BFD_RELOC_390_TLS_DTPOFF",
2513 "BFD_RELOC_390_TLS_TPOFF",
bd1ea41b
MS
2514 "BFD_RELOC_390_20",
2515 "BFD_RELOC_390_GOT20",
2516 "BFD_RELOC_390_GOTPLT20",
2517 "BFD_RELOC_390_TLS_GOTIE20",
470b557a 2518 "BFD_RELOC_390_IRELATIVE",
1c0d3aa6
NC
2519 "BFD_RELOC_SCORE_GPREL15",
2520 "BFD_RELOC_SCORE_DUMMY2",
2521 "BFD_RELOC_SCORE_JMP",
2522 "BFD_RELOC_SCORE_BRANCH",
c3b7224a
NC
2523 "BFD_RELOC_SCORE_IMM30",
2524 "BFD_RELOC_SCORE_IMM32",
1c0d3aa6
NC
2525 "BFD_RELOC_SCORE16_JMP",
2526 "BFD_RELOC_SCORE16_BRANCH",
c3b7224a 2527 "BFD_RELOC_SCORE_BCMP",
1c0d3aa6
NC
2528 "BFD_RELOC_SCORE_GOT15",
2529 "BFD_RELOC_SCORE_GOT_LO16",
2530 "BFD_RELOC_SCORE_CALL15",
2531 "BFD_RELOC_SCORE_DUMMY_HI16",
cf88bb9f
NC
2532 "BFD_RELOC_IP2K_FR9",
2533 "BFD_RELOC_IP2K_BANK",
2534 "BFD_RELOC_IP2K_ADDR16CJP",
2535 "BFD_RELOC_IP2K_PAGE3",
2536 "BFD_RELOC_IP2K_LO8DATA",
2537 "BFD_RELOC_IP2K_HI8DATA",
2538 "BFD_RELOC_IP2K_EX8DATA",
2539 "BFD_RELOC_IP2K_LO8INSN",
2540 "BFD_RELOC_IP2K_HI8INSN",
2541 "BFD_RELOC_IP2K_PC_SKIP",
2542 "BFD_RELOC_IP2K_TEXT",
2543 "BFD_RELOC_IP2K_FR_OFFSET",
2544 "BFD_RELOC_VPE4KMATH_DATA",
2545 "BFD_RELOC_VPE4KMATH_INSN",
252b5132
RH
2546 "BFD_RELOC_VTABLE_INHERIT",
2547 "BFD_RELOC_VTABLE_ENTRY",
800eeca4
JW
2548 "BFD_RELOC_IA64_IMM14",
2549 "BFD_RELOC_IA64_IMM22",
2550 "BFD_RELOC_IA64_IMM64",
2551 "BFD_RELOC_IA64_DIR32MSB",
2552 "BFD_RELOC_IA64_DIR32LSB",
2553 "BFD_RELOC_IA64_DIR64MSB",
2554 "BFD_RELOC_IA64_DIR64LSB",
2555 "BFD_RELOC_IA64_GPREL22",
2556 "BFD_RELOC_IA64_GPREL64I",
2557 "BFD_RELOC_IA64_GPREL32MSB",
2558 "BFD_RELOC_IA64_GPREL32LSB",
2559 "BFD_RELOC_IA64_GPREL64MSB",
2560 "BFD_RELOC_IA64_GPREL64LSB",
2561 "BFD_RELOC_IA64_LTOFF22",
2562 "BFD_RELOC_IA64_LTOFF64I",
2563 "BFD_RELOC_IA64_PLTOFF22",
2564 "BFD_RELOC_IA64_PLTOFF64I",
2565 "BFD_RELOC_IA64_PLTOFF64MSB",
2566 "BFD_RELOC_IA64_PLTOFF64LSB",
2567 "BFD_RELOC_IA64_FPTR64I",
2568 "BFD_RELOC_IA64_FPTR32MSB",
2569 "BFD_RELOC_IA64_FPTR32LSB",
2570 "BFD_RELOC_IA64_FPTR64MSB",
2571 "BFD_RELOC_IA64_FPTR64LSB",
2572 "BFD_RELOC_IA64_PCREL21B",
748abff6 2573 "BFD_RELOC_IA64_PCREL21BI",
800eeca4
JW
2574 "BFD_RELOC_IA64_PCREL21M",
2575 "BFD_RELOC_IA64_PCREL21F",
748abff6
RH
2576 "BFD_RELOC_IA64_PCREL22",
2577 "BFD_RELOC_IA64_PCREL60B",
2578 "BFD_RELOC_IA64_PCREL64I",
800eeca4
JW
2579 "BFD_RELOC_IA64_PCREL32MSB",
2580 "BFD_RELOC_IA64_PCREL32LSB",
2581 "BFD_RELOC_IA64_PCREL64MSB",
2582 "BFD_RELOC_IA64_PCREL64LSB",
2583 "BFD_RELOC_IA64_LTOFF_FPTR22",
2584 "BFD_RELOC_IA64_LTOFF_FPTR64I",
a4bd8390
JW
2585 "BFD_RELOC_IA64_LTOFF_FPTR32MSB",
2586 "BFD_RELOC_IA64_LTOFF_FPTR32LSB",
800eeca4
JW
2587 "BFD_RELOC_IA64_LTOFF_FPTR64MSB",
2588 "BFD_RELOC_IA64_LTOFF_FPTR64LSB",
800eeca4
JW
2589 "BFD_RELOC_IA64_SEGREL32MSB",
2590 "BFD_RELOC_IA64_SEGREL32LSB",
2591 "BFD_RELOC_IA64_SEGREL64MSB",
2592 "BFD_RELOC_IA64_SEGREL64LSB",
2593 "BFD_RELOC_IA64_SECREL32MSB",
2594 "BFD_RELOC_IA64_SECREL32LSB",
2595 "BFD_RELOC_IA64_SECREL64MSB",
2596 "BFD_RELOC_IA64_SECREL64LSB",
2597 "BFD_RELOC_IA64_REL32MSB",
2598 "BFD_RELOC_IA64_REL32LSB",
2599 "BFD_RELOC_IA64_REL64MSB",
2600 "BFD_RELOC_IA64_REL64LSB",
2601 "BFD_RELOC_IA64_LTV32MSB",
2602 "BFD_RELOC_IA64_LTV32LSB",
2603 "BFD_RELOC_IA64_LTV64MSB",
2604 "BFD_RELOC_IA64_LTV64LSB",
2605 "BFD_RELOC_IA64_IPLTMSB",
2606 "BFD_RELOC_IA64_IPLTLSB",
800eeca4 2607 "BFD_RELOC_IA64_COPY",
13ae64f3
JJ
2608 "BFD_RELOC_IA64_LTOFF22X",
2609 "BFD_RELOC_IA64_LDXMOV",
2610 "BFD_RELOC_IA64_TPREL14",
800eeca4 2611 "BFD_RELOC_IA64_TPREL22",
13ae64f3 2612 "BFD_RELOC_IA64_TPREL64I",
800eeca4
JW
2613 "BFD_RELOC_IA64_TPREL64MSB",
2614 "BFD_RELOC_IA64_TPREL64LSB",
13ae64f3
JJ
2615 "BFD_RELOC_IA64_LTOFF_TPREL22",
2616 "BFD_RELOC_IA64_DTPMOD64MSB",
2617 "BFD_RELOC_IA64_DTPMOD64LSB",
2618 "BFD_RELOC_IA64_LTOFF_DTPMOD22",
2619 "BFD_RELOC_IA64_DTPREL14",
2620 "BFD_RELOC_IA64_DTPREL22",
2621 "BFD_RELOC_IA64_DTPREL64I",
2622 "BFD_RELOC_IA64_DTPREL32MSB",
2623 "BFD_RELOC_IA64_DTPREL32LSB",
2624 "BFD_RELOC_IA64_DTPREL64MSB",
2625 "BFD_RELOC_IA64_DTPREL64LSB",
2626 "BFD_RELOC_IA64_LTOFF_DTPREL22",
60bcf0fa
NC
2627 "BFD_RELOC_M68HC11_HI8",
2628 "BFD_RELOC_M68HC11_LO8",
2629 "BFD_RELOC_M68HC11_3B",
e8d5d179
L
2630 "BFD_RELOC_M68HC11_RL_JUMP",
2631 "BFD_RELOC_M68HC11_RL_GROUP",
2632 "BFD_RELOC_M68HC11_LO16",
2633 "BFD_RELOC_M68HC11_PAGE",
2634 "BFD_RELOC_M68HC11_24",
28d39d1a 2635 "BFD_RELOC_M68HC12_5B",
f6c1a2d5
NC
2636 "BFD_RELOC_XGATE_RL_JUMP",
2637 "BFD_RELOC_XGATE_RL_GROUP",
2638 "BFD_RELOC_XGATE_LO16",
2639 "BFD_RELOC_XGATE_GPAGE",
2640 "BFD_RELOC_XGATE_24",
2641 "BFD_RELOC_XGATE_PCREL_9",
2642 "BFD_RELOC_XGATE_PCREL_10",
2643 "BFD_RELOC_XGATE_IMM8_LO",
2644 "BFD_RELOC_XGATE_IMM8_HI",
2645 "BFD_RELOC_XGATE_IMM3",
2646 "BFD_RELOC_XGATE_IMM4",
2647 "BFD_RELOC_XGATE_IMM5",
6927f982
NC
2648 "BFD_RELOC_M68HC12_9B",
2649 "BFD_RELOC_M68HC12_16B",
2650 "BFD_RELOC_M68HC12_9_PCREL",
2651 "BFD_RELOC_M68HC12_10_PCREL",
2652 "BFD_RELOC_M68HC12_LO8XG",
2653 "BFD_RELOC_M68HC12_HI8XG",
7b4ae824 2654 "BFD_RELOC_S12Z_15_PCREL",
3d3d428f
NC
2655 "BFD_RELOC_CR16_NUM8",
2656 "BFD_RELOC_CR16_NUM16",
2657 "BFD_RELOC_CR16_NUM32",
2658 "BFD_RELOC_CR16_NUM32a",
2659 "BFD_RELOC_CR16_REGREL0",
2660 "BFD_RELOC_CR16_REGREL4",
2661 "BFD_RELOC_CR16_REGREL4a",
2662 "BFD_RELOC_CR16_REGREL14",
2663 "BFD_RELOC_CR16_REGREL14a",
2664 "BFD_RELOC_CR16_REGREL16",
2665 "BFD_RELOC_CR16_REGREL20",
2666 "BFD_RELOC_CR16_REGREL20a",
2667 "BFD_RELOC_CR16_ABS20",
2668 "BFD_RELOC_CR16_ABS24",
2669 "BFD_RELOC_CR16_IMM4",
2670 "BFD_RELOC_CR16_IMM8",
2671 "BFD_RELOC_CR16_IMM16",
2672 "BFD_RELOC_CR16_IMM20",
2673 "BFD_RELOC_CR16_IMM24",
2674 "BFD_RELOC_CR16_IMM32",
2675 "BFD_RELOC_CR16_IMM32a",
2676 "BFD_RELOC_CR16_DISP4",
2677 "BFD_RELOC_CR16_DISP8",
2678 "BFD_RELOC_CR16_DISP16",
2679 "BFD_RELOC_CR16_DISP20",
2680 "BFD_RELOC_CR16_DISP24",
2681 "BFD_RELOC_CR16_DISP24a",
7fac7ff4
NC
2682 "BFD_RELOC_CR16_SWITCH8",
2683 "BFD_RELOC_CR16_SWITCH16",
2684 "BFD_RELOC_CR16_SWITCH32",
99706f30
SR
2685 "BFD_RELOC_CR16_GOT_REGREL20",
2686 "BFD_RELOC_CR16_GOTC_REGREL20",
2687 "BFD_RELOC_CR16_GLOB_DAT",
1fe1f39c
NC
2688 "BFD_RELOC_CRX_REL4",
2689 "BFD_RELOC_CRX_REL8",
2690 "BFD_RELOC_CRX_REL8_CMP",
2691 "BFD_RELOC_CRX_REL16",
2692 "BFD_RELOC_CRX_REL24",
2693 "BFD_RELOC_CRX_REL32",
2694 "BFD_RELOC_CRX_REGREL12",
2695 "BFD_RELOC_CRX_REGREL22",
2696 "BFD_RELOC_CRX_REGREL28",
2697 "BFD_RELOC_CRX_REGREL32",
2698 "BFD_RELOC_CRX_ABS16",
2699 "BFD_RELOC_CRX_ABS32",
2700 "BFD_RELOC_CRX_NUM8",
2701 "BFD_RELOC_CRX_NUM16",
2702 "BFD_RELOC_CRX_NUM32",
2703 "BFD_RELOC_CRX_IMM16",
2704 "BFD_RELOC_CRX_IMM32",
6cd7f07e
NC
2705 "BFD_RELOC_CRX_SWITCH8",
2706 "BFD_RELOC_CRX_SWITCH16",
2707 "BFD_RELOC_CRX_SWITCH32",
06c15ad7
HPN
2708 "BFD_RELOC_CRIS_BDISP8",
2709 "BFD_RELOC_CRIS_UNSIGNED_5",
2710 "BFD_RELOC_CRIS_SIGNED_6",
2711 "BFD_RELOC_CRIS_UNSIGNED_6",
bac23f82
HPN
2712 "BFD_RELOC_CRIS_SIGNED_8",
2713 "BFD_RELOC_CRIS_UNSIGNED_8",
2714 "BFD_RELOC_CRIS_SIGNED_16",
2715 "BFD_RELOC_CRIS_UNSIGNED_16",
2716 "BFD_RELOC_CRIS_LAPCQ_OFFSET",
06c15ad7 2717 "BFD_RELOC_CRIS_UNSIGNED_4",
58d29fc3
HPN
2718 "BFD_RELOC_CRIS_COPY",
2719 "BFD_RELOC_CRIS_GLOB_DAT",
2720 "BFD_RELOC_CRIS_JUMP_SLOT",
2721 "BFD_RELOC_CRIS_RELATIVE",
2722 "BFD_RELOC_CRIS_32_GOT",
2723 "BFD_RELOC_CRIS_16_GOT",
2724 "BFD_RELOC_CRIS_32_GOTPLT",
2725 "BFD_RELOC_CRIS_16_GOTPLT",
2726 "BFD_RELOC_CRIS_32_GOTREL",
2727 "BFD_RELOC_CRIS_32_PLT_GOTREL",
2728 "BFD_RELOC_CRIS_32_PLT_PCREL",
3926fc54
HPN
2729 "BFD_RELOC_CRIS_32_GOT_GD",
2730 "BFD_RELOC_CRIS_16_GOT_GD",
2731 "BFD_RELOC_CRIS_32_GD",
2732 "BFD_RELOC_CRIS_DTP",
2733 "BFD_RELOC_CRIS_32_DTPREL",
2734 "BFD_RELOC_CRIS_16_DTPREL",
2735 "BFD_RELOC_CRIS_32_GOT_TPREL",
2736 "BFD_RELOC_CRIS_16_GOT_TPREL",
2737 "BFD_RELOC_CRIS_32_TPREL",
2738 "BFD_RELOC_CRIS_16_TPREL",
2739 "BFD_RELOC_CRIS_DTPMOD",
75f500d7 2740 "BFD_RELOC_CRIS_32_IE",
73589c9d 2741 "BFD_RELOC_OR1K_REL_26",
1c4f3780 2742 "BFD_RELOC_OR1K_SLO16",
c8e98e36
SH
2743 "BFD_RELOC_OR1K_PCREL_PG21",
2744 "BFD_RELOC_OR1K_LO13",
2745 "BFD_RELOC_OR1K_SLO13",
73589c9d
CS
2746 "BFD_RELOC_OR1K_GOTPC_HI16",
2747 "BFD_RELOC_OR1K_GOTPC_LO16",
a41513ef 2748 "BFD_RELOC_OR1K_GOT_AHI16",
73589c9d 2749 "BFD_RELOC_OR1K_GOT16",
c8e98e36
SH
2750 "BFD_RELOC_OR1K_GOT_PG21",
2751 "BFD_RELOC_OR1K_GOT_LO13",
73589c9d 2752 "BFD_RELOC_OR1K_PLT26",
c8e98e36 2753 "BFD_RELOC_OR1K_PLTA26",
1c4f3780 2754 "BFD_RELOC_OR1K_GOTOFF_SLO16",
73589c9d
CS
2755 "BFD_RELOC_OR1K_COPY",
2756 "BFD_RELOC_OR1K_GLOB_DAT",
2757 "BFD_RELOC_OR1K_JMP_SLOT",
2758 "BFD_RELOC_OR1K_RELATIVE",
2759 "BFD_RELOC_OR1K_TLS_GD_HI16",
2760 "BFD_RELOC_OR1K_TLS_GD_LO16",
c8e98e36
SH
2761 "BFD_RELOC_OR1K_TLS_GD_PG21",
2762 "BFD_RELOC_OR1K_TLS_GD_LO13",
73589c9d
CS
2763 "BFD_RELOC_OR1K_TLS_LDM_HI16",
2764 "BFD_RELOC_OR1K_TLS_LDM_LO16",
c8e98e36
SH
2765 "BFD_RELOC_OR1K_TLS_LDM_PG21",
2766 "BFD_RELOC_OR1K_TLS_LDM_LO13",
73589c9d
CS
2767 "BFD_RELOC_OR1K_TLS_LDO_HI16",
2768 "BFD_RELOC_OR1K_TLS_LDO_LO16",
2769 "BFD_RELOC_OR1K_TLS_IE_HI16",
1c4f3780 2770 "BFD_RELOC_OR1K_TLS_IE_AHI16",
73589c9d 2771 "BFD_RELOC_OR1K_TLS_IE_LO16",
c8e98e36
SH
2772 "BFD_RELOC_OR1K_TLS_IE_PG21",
2773 "BFD_RELOC_OR1K_TLS_IE_LO13",
73589c9d 2774 "BFD_RELOC_OR1K_TLS_LE_HI16",
1c4f3780 2775 "BFD_RELOC_OR1K_TLS_LE_AHI16",
73589c9d 2776 "BFD_RELOC_OR1K_TLS_LE_LO16",
1c4f3780 2777 "BFD_RELOC_OR1K_TLS_LE_SLO16",
73589c9d
CS
2778 "BFD_RELOC_OR1K_TLS_TPOFF",
2779 "BFD_RELOC_OR1K_TLS_DTPOFF",
2780 "BFD_RELOC_OR1K_TLS_DTPMOD",
e01b0e69
JR
2781 "BFD_RELOC_H8_DIR16A8",
2782 "BFD_RELOC_H8_DIR16R8",
2783 "BFD_RELOC_H8_DIR24A8",
2784 "BFD_RELOC_H8_DIR24R8",
2785 "BFD_RELOC_H8_DIR32A16",
81f5558e 2786 "BFD_RELOC_H8_DISP32A16",
93fbbb04 2787 "BFD_RELOC_XSTORMY16_REL_12",
5fd63999 2788 "BFD_RELOC_XSTORMY16_12",
93fbbb04
GK
2789 "BFD_RELOC_XSTORMY16_24",
2790 "BFD_RELOC_XSTORMY16_FPTR16",
d9352518
DB
2791 "BFD_RELOC_RELC",
2792
d70c5fc7
NC
2793 "BFD_RELOC_XC16X_PAG",
2794 "BFD_RELOC_XC16X_POF",
2795 "BFD_RELOC_XC16X_SEG",
2796 "BFD_RELOC_XC16X_SOF",
08e0ee05
AM
2797 "BFD_RELOC_VAX_GLOB_DAT",
2798 "BFD_RELOC_VAX_JMP_SLOT",
2799 "BFD_RELOC_VAX_RELATIVE",
d031aafb
NS
2800 "BFD_RELOC_MT_PC16",
2801 "BFD_RELOC_MT_HI16",
2802 "BFD_RELOC_MT_LO16",
2803 "BFD_RELOC_MT_GNU_VTINHERIT",
2804 "BFD_RELOC_MT_GNU_VTENTRY",
2805 "BFD_RELOC_MT_PCINSN8",
2469cfa2
NC
2806 "BFD_RELOC_MSP430_10_PCREL",
2807 "BFD_RELOC_MSP430_16_PCREL",
2808 "BFD_RELOC_MSP430_16",
2809 "BFD_RELOC_MSP430_16_PCREL_BYTE",
2810 "BFD_RELOC_MSP430_16_BYTE",
b18c562e
NC
2811 "BFD_RELOC_MSP430_2X_PCREL",
2812 "BFD_RELOC_MSP430_RL_PCREL",
13761a11
NC
2813 "BFD_RELOC_MSP430_ABS8",
2814 "BFD_RELOC_MSP430X_PCR20_EXT_SRC",
2815 "BFD_RELOC_MSP430X_PCR20_EXT_DST",
2816 "BFD_RELOC_MSP430X_PCR20_EXT_ODST",
2817 "BFD_RELOC_MSP430X_ABS20_EXT_SRC",
2818 "BFD_RELOC_MSP430X_ABS20_EXT_DST",
2819 "BFD_RELOC_MSP430X_ABS20_EXT_ODST",
2820 "BFD_RELOC_MSP430X_ABS20_ADR_SRC",
2821 "BFD_RELOC_MSP430X_ABS20_ADR_DST",
2822 "BFD_RELOC_MSP430X_PCR16",
2823 "BFD_RELOC_MSP430X_PCR20_CALL",
2824 "BFD_RELOC_MSP430X_ABS16",
2825 "BFD_RELOC_MSP430_ABS_HI16",
2826 "BFD_RELOC_MSP430_PREL31",
2827 "BFD_RELOC_MSP430_SYM_DIFF",
7d81bc93
JL
2828 "BFD_RELOC_MSP430_SET_ULEB128",
2829 "BFD_RELOC_MSP430_SUB_ULEB128",
36591ba1
SL
2830 "BFD_RELOC_NIOS2_S16",
2831 "BFD_RELOC_NIOS2_U16",
2832 "BFD_RELOC_NIOS2_CALL26",
2833 "BFD_RELOC_NIOS2_IMM5",
2834 "BFD_RELOC_NIOS2_CACHE_OPX",
2835 "BFD_RELOC_NIOS2_IMM6",
2836 "BFD_RELOC_NIOS2_IMM8",
2837 "BFD_RELOC_NIOS2_HI16",
2838 "BFD_RELOC_NIOS2_LO16",
2839 "BFD_RELOC_NIOS2_HIADJ16",
2840 "BFD_RELOC_NIOS2_GPREL",
2841 "BFD_RELOC_NIOS2_UJMP",
2842 "BFD_RELOC_NIOS2_CJMP",
2843 "BFD_RELOC_NIOS2_CALLR",
2844 "BFD_RELOC_NIOS2_ALIGN",
2845 "BFD_RELOC_NIOS2_GOT16",
2846 "BFD_RELOC_NIOS2_CALL16",
2847 "BFD_RELOC_NIOS2_GOTOFF_LO",
2848 "BFD_RELOC_NIOS2_GOTOFF_HA",
2849 "BFD_RELOC_NIOS2_PCREL_LO",
2850 "BFD_RELOC_NIOS2_PCREL_HA",
2851 "BFD_RELOC_NIOS2_TLS_GD16",
2852 "BFD_RELOC_NIOS2_TLS_LDM16",
2853 "BFD_RELOC_NIOS2_TLS_LDO16",
2854 "BFD_RELOC_NIOS2_TLS_IE16",
2855 "BFD_RELOC_NIOS2_TLS_LE16",
2856 "BFD_RELOC_NIOS2_TLS_DTPMOD",
2857 "BFD_RELOC_NIOS2_TLS_DTPREL",
2858 "BFD_RELOC_NIOS2_TLS_TPREL",
2859 "BFD_RELOC_NIOS2_COPY",
2860 "BFD_RELOC_NIOS2_GLOB_DAT",
2861 "BFD_RELOC_NIOS2_JUMP_SLOT",
2862 "BFD_RELOC_NIOS2_RELATIVE",
2863 "BFD_RELOC_NIOS2_GOTOFF",
78058a5e 2864 "BFD_RELOC_NIOS2_CALL26_NOAT",
1c2de463
SL
2865 "BFD_RELOC_NIOS2_GOT_LO",
2866 "BFD_RELOC_NIOS2_GOT_HA",
2867 "BFD_RELOC_NIOS2_CALL_LO",
2868 "BFD_RELOC_NIOS2_CALL_HA",
8c163c5a
SL
2869 "BFD_RELOC_NIOS2_R2_S12",
2870 "BFD_RELOC_NIOS2_R2_I10_1_PCREL",
2871 "BFD_RELOC_NIOS2_R2_T1I7_1_PCREL",
2872 "BFD_RELOC_NIOS2_R2_T1I7_2",
2873 "BFD_RELOC_NIOS2_R2_T2I4",
2874 "BFD_RELOC_NIOS2_R2_T2I4_1",
2875 "BFD_RELOC_NIOS2_R2_T2I4_2",
2876 "BFD_RELOC_NIOS2_R2_X1I7_2",
2877 "BFD_RELOC_NIOS2_R2_X2L5",
2878 "BFD_RELOC_NIOS2_R2_F1I5_2",
2879 "BFD_RELOC_NIOS2_R2_L5I4X1",
2880 "BFD_RELOC_NIOS2_R2_T1X1I6",
2881 "BFD_RELOC_NIOS2_R2_T1X1I6_2",
889294f6
DD
2882 "BFD_RELOC_PRU_U16",
2883 "BFD_RELOC_PRU_U16_PMEMIMM",
2884 "BFD_RELOC_PRU_LDI32",
2885 "BFD_RELOC_PRU_S10_PCREL",
2886 "BFD_RELOC_PRU_U8_PCREL",
2887 "BFD_RELOC_PRU_32_PMEM",
2888 "BFD_RELOC_PRU_16_PMEM",
2889 "BFD_RELOC_PRU_GNU_DIFF8",
2890 "BFD_RELOC_PRU_GNU_DIFF16",
2891 "BFD_RELOC_PRU_GNU_DIFF32",
2892 "BFD_RELOC_PRU_GNU_DIFF16_PMEM",
2893 "BFD_RELOC_PRU_GNU_DIFF32_PMEM",
a75473eb
SC
2894 "BFD_RELOC_IQ2000_OFFSET_16",
2895 "BFD_RELOC_IQ2000_OFFSET_21",
2896 "BFD_RELOC_IQ2000_UHI16",
e0001a05
NC
2897 "BFD_RELOC_XTENSA_RTLD",
2898 "BFD_RELOC_XTENSA_GLOB_DAT",
2899 "BFD_RELOC_XTENSA_JMP_SLOT",
2900 "BFD_RELOC_XTENSA_RELATIVE",
2901 "BFD_RELOC_XTENSA_PLT",
43cd72b9
BW
2902 "BFD_RELOC_XTENSA_DIFF8",
2903 "BFD_RELOC_XTENSA_DIFF16",
2904 "BFD_RELOC_XTENSA_DIFF32",
2905 "BFD_RELOC_XTENSA_SLOT0_OP",
2906 "BFD_RELOC_XTENSA_SLOT1_OP",
2907 "BFD_RELOC_XTENSA_SLOT2_OP",
2908 "BFD_RELOC_XTENSA_SLOT3_OP",
2909 "BFD_RELOC_XTENSA_SLOT4_OP",
2910 "BFD_RELOC_XTENSA_SLOT5_OP",
2911 "BFD_RELOC_XTENSA_SLOT6_OP",
2912 "BFD_RELOC_XTENSA_SLOT7_OP",
2913 "BFD_RELOC_XTENSA_SLOT8_OP",
2914 "BFD_RELOC_XTENSA_SLOT9_OP",
2915 "BFD_RELOC_XTENSA_SLOT10_OP",
2916 "BFD_RELOC_XTENSA_SLOT11_OP",
2917 "BFD_RELOC_XTENSA_SLOT12_OP",
2918 "BFD_RELOC_XTENSA_SLOT13_OP",
2919 "BFD_RELOC_XTENSA_SLOT14_OP",
2920 "BFD_RELOC_XTENSA_SLOT0_ALT",
2921 "BFD_RELOC_XTENSA_SLOT1_ALT",
2922 "BFD_RELOC_XTENSA_SLOT2_ALT",
2923 "BFD_RELOC_XTENSA_SLOT3_ALT",
2924 "BFD_RELOC_XTENSA_SLOT4_ALT",
2925 "BFD_RELOC_XTENSA_SLOT5_ALT",
2926 "BFD_RELOC_XTENSA_SLOT6_ALT",
2927 "BFD_RELOC_XTENSA_SLOT7_ALT",
2928 "BFD_RELOC_XTENSA_SLOT8_ALT",
2929 "BFD_RELOC_XTENSA_SLOT9_ALT",
2930 "BFD_RELOC_XTENSA_SLOT10_ALT",
2931 "BFD_RELOC_XTENSA_SLOT11_ALT",
2932 "BFD_RELOC_XTENSA_SLOT12_ALT",
2933 "BFD_RELOC_XTENSA_SLOT13_ALT",
2934 "BFD_RELOC_XTENSA_SLOT14_ALT",
e0001a05
NC
2935 "BFD_RELOC_XTENSA_OP0",
2936 "BFD_RELOC_XTENSA_OP1",
2937 "BFD_RELOC_XTENSA_OP2",
2938 "BFD_RELOC_XTENSA_ASM_EXPAND",
2939 "BFD_RELOC_XTENSA_ASM_SIMPLIFY",
28dbbc02
BW
2940 "BFD_RELOC_XTENSA_TLSDESC_FN",
2941 "BFD_RELOC_XTENSA_TLSDESC_ARG",
2942 "BFD_RELOC_XTENSA_TLS_DTPOFF",
2943 "BFD_RELOC_XTENSA_TLS_TPOFF",
2944 "BFD_RELOC_XTENSA_TLS_FUNC",
2945 "BFD_RELOC_XTENSA_TLS_ARG",
2946 "BFD_RELOC_XTENSA_TLS_CALL",
30ce8e47
MF
2947 "BFD_RELOC_XTENSA_PDIFF8",
2948 "BFD_RELOC_XTENSA_PDIFF16",
2949 "BFD_RELOC_XTENSA_PDIFF32",
2950 "BFD_RELOC_XTENSA_NDIFF8",
2951 "BFD_RELOC_XTENSA_NDIFF16",
2952 "BFD_RELOC_XTENSA_NDIFF32",
3c9b82ba 2953 "BFD_RELOC_Z80_DISP8",
6655dba2
SB
2954 "BFD_RELOC_Z80_BYTE0",
2955 "BFD_RELOC_Z80_BYTE1",
2956 "BFD_RELOC_Z80_BYTE2",
2957 "BFD_RELOC_Z80_BYTE3",
2958 "BFD_RELOC_Z80_WORD0",
2959 "BFD_RELOC_Z80_WORD1",
9fc0b501 2960 "BFD_RELOC_Z80_16_BE",
c0524131
NC
2961 "BFD_RELOC_Z8K_DISP7",
2962 "BFD_RELOC_Z8K_CALLR",
2963 "BFD_RELOC_Z8K_IMM4L",
84e94c90
NC
2964 "BFD_RELOC_LM32_CALL",
2965 "BFD_RELOC_LM32_BRANCH",
2966 "BFD_RELOC_LM32_16_GOT",
2967 "BFD_RELOC_LM32_GOTOFF_HI16",
2968 "BFD_RELOC_LM32_GOTOFF_LO16",
2969 "BFD_RELOC_LM32_COPY",
2970 "BFD_RELOC_LM32_GLOB_DAT",
2971 "BFD_RELOC_LM32_JMP_SLOT",
2972 "BFD_RELOC_LM32_RELATIVE",
92bc0e80 2973 "BFD_RELOC_MACH_O_SECTDIFF",
e1e81ed3 2974 "BFD_RELOC_MACH_O_LOCAL_SECTDIFF",
92bc0e80 2975 "BFD_RELOC_MACH_O_PAIR",
f075eb5e
TG
2976 "BFD_RELOC_MACH_O_SUBTRACTOR32",
2977 "BFD_RELOC_MACH_O_SUBTRACTOR64",
f88af2f1
TG
2978 "BFD_RELOC_MACH_O_X86_64_BRANCH32",
2979 "BFD_RELOC_MACH_O_X86_64_BRANCH8",
2980 "BFD_RELOC_MACH_O_X86_64_GOT",
2981 "BFD_RELOC_MACH_O_X86_64_GOT_LOAD",
f88af2f1
TG
2982 "BFD_RELOC_MACH_O_X86_64_PCREL32_1",
2983 "BFD_RELOC_MACH_O_X86_64_PCREL32_2",
2984 "BFD_RELOC_MACH_O_X86_64_PCREL32_4",
ed1299fe 2985 "BFD_RELOC_MACH_O_X86_64_TLV",
f075eb5e
TG
2986 "BFD_RELOC_MACH_O_ARM64_ADDEND",
2987 "BFD_RELOC_MACH_O_ARM64_GOT_LOAD_PAGE21",
2988 "BFD_RELOC_MACH_O_ARM64_GOT_LOAD_PAGEOFF12",
2989 "BFD_RELOC_MACH_O_ARM64_POINTER_TO_GOT",
7ba29e2a
NC
2990 "BFD_RELOC_MICROBLAZE_32_LO",
2991 "BFD_RELOC_MICROBLAZE_32_LO_PCREL",
2992 "BFD_RELOC_MICROBLAZE_32_ROSDA",
2993 "BFD_RELOC_MICROBLAZE_32_RWSDA",
2994 "BFD_RELOC_MICROBLAZE_32_SYM_OP_SYM",
2995 "BFD_RELOC_MICROBLAZE_64_NONE",
2996 "BFD_RELOC_MICROBLAZE_64_GOTPC",
2997 "BFD_RELOC_MICROBLAZE_64_GOT",
2998 "BFD_RELOC_MICROBLAZE_64_PLT",
2999 "BFD_RELOC_MICROBLAZE_64_GOTOFF",
3000 "BFD_RELOC_MICROBLAZE_32_GOTOFF",
3001 "BFD_RELOC_MICROBLAZE_COPY",
69b06cc8
ME
3002 "BFD_RELOC_MICROBLAZE_64_TLS",
3003 "BFD_RELOC_MICROBLAZE_64_TLSGD",
3004 "BFD_RELOC_MICROBLAZE_64_TLSLD",
3005 "BFD_RELOC_MICROBLAZE_32_TLSDTPMOD",
3006 "BFD_RELOC_MICROBLAZE_32_TLSDTPREL",
3007 "BFD_RELOC_MICROBLAZE_64_TLSDTPREL",
3008 "BFD_RELOC_MICROBLAZE_64_TLSGOTTPREL",
3009 "BFD_RELOC_MICROBLAZE_64_TLSTPREL",
3f0a5f17
ME
3010 "BFD_RELOC_MICROBLAZE_64_TEXTPCREL",
3011 "BFD_RELOC_MICROBLAZE_64_TEXTREL",
a6bb11b2 3012 "BFD_RELOC_AARCH64_RELOC_START",
b7f28d87 3013 "BFD_RELOC_AARCH64_NULL",
a6bb11b2
YZ
3014 "BFD_RELOC_AARCH64_NONE",
3015 "BFD_RELOC_AARCH64_64",
3016 "BFD_RELOC_AARCH64_32",
3017 "BFD_RELOC_AARCH64_16",
3018 "BFD_RELOC_AARCH64_64_PCREL",
3019 "BFD_RELOC_AARCH64_32_PCREL",
3020 "BFD_RELOC_AARCH64_16_PCREL",
3021 "BFD_RELOC_AARCH64_MOVW_G0",
3022 "BFD_RELOC_AARCH64_MOVW_G0_NC",
3023 "BFD_RELOC_AARCH64_MOVW_G1",
3024 "BFD_RELOC_AARCH64_MOVW_G1_NC",
3025 "BFD_RELOC_AARCH64_MOVW_G2",
3026 "BFD_RELOC_AARCH64_MOVW_G2_NC",
3027 "BFD_RELOC_AARCH64_MOVW_G3",
3028 "BFD_RELOC_AARCH64_MOVW_G0_S",
3029 "BFD_RELOC_AARCH64_MOVW_G1_S",
3030 "BFD_RELOC_AARCH64_MOVW_G2_S",
32247401
RL
3031 "BFD_RELOC_AARCH64_MOVW_PREL_G0",
3032 "BFD_RELOC_AARCH64_MOVW_PREL_G0_NC",
3033 "BFD_RELOC_AARCH64_MOVW_PREL_G1",
3034 "BFD_RELOC_AARCH64_MOVW_PREL_G1_NC",
3035 "BFD_RELOC_AARCH64_MOVW_PREL_G2",
3036 "BFD_RELOC_AARCH64_MOVW_PREL_G2_NC",
3037 "BFD_RELOC_AARCH64_MOVW_PREL_G3",
a6bb11b2
YZ
3038 "BFD_RELOC_AARCH64_LD_LO19_PCREL",
3039 "BFD_RELOC_AARCH64_ADR_LO21_PCREL",
a06ea964
NC
3040 "BFD_RELOC_AARCH64_ADR_HI21_PCREL",
3041 "BFD_RELOC_AARCH64_ADR_HI21_NC_PCREL",
a6bb11b2
YZ
3042 "BFD_RELOC_AARCH64_ADD_LO12",
3043 "BFD_RELOC_AARCH64_LDST8_LO12",
3044 "BFD_RELOC_AARCH64_TSTBR14",
a06ea964 3045 "BFD_RELOC_AARCH64_BRANCH19",
a06ea964 3046 "BFD_RELOC_AARCH64_JUMP26",
a6bb11b2 3047 "BFD_RELOC_AARCH64_CALL26",
a06ea964
NC
3048 "BFD_RELOC_AARCH64_LDST16_LO12",
3049 "BFD_RELOC_AARCH64_LDST32_LO12",
3050 "BFD_RELOC_AARCH64_LDST64_LO12",
3051 "BFD_RELOC_AARCH64_LDST128_LO12",
a6bb11b2
YZ
3052 "BFD_RELOC_AARCH64_GOT_LD_PREL19",
3053 "BFD_RELOC_AARCH64_ADR_GOT_PAGE",
3054 "BFD_RELOC_AARCH64_LD64_GOT_LO12_NC",
3055 "BFD_RELOC_AARCH64_LD32_GOT_LO12_NC",
ca632371 3056 "BFD_RELOC_AARCH64_MOVW_GOTOFF_G0_NC",
654248e7 3057 "BFD_RELOC_AARCH64_MOVW_GOTOFF_G1",
87f5fbcc 3058 "BFD_RELOC_AARCH64_LD64_GOTOFF_LO15",
3d715ce4 3059 "BFD_RELOC_AARCH64_LD32_GOTPAGE_LO14",
a921b5bd 3060 "BFD_RELOC_AARCH64_LD64_GOTPAGE_LO15",
a06ea964 3061 "BFD_RELOC_AARCH64_TLSGD_ADR_PAGE21",
96c20bc1 3062 "BFD_RELOC_AARCH64_TLSGD_ADR_PREL21",
a6bb11b2 3063 "BFD_RELOC_AARCH64_TLSGD_ADD_LO12_NC",
3e8286c0 3064 "BFD_RELOC_AARCH64_TLSGD_MOVW_G0_NC",
1aa66fb1 3065 "BFD_RELOC_AARCH64_TLSGD_MOVW_G1",
a06ea964 3066 "BFD_RELOC_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21",
a06ea964 3067 "BFD_RELOC_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC",
a6bb11b2
YZ
3068 "BFD_RELOC_AARCH64_TLSIE_LD32_GOTTPREL_LO12_NC",
3069 "BFD_RELOC_AARCH64_TLSIE_LD_GOTTPREL_PREL19",
3b957e5b
RL
3070 "BFD_RELOC_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC",
3071 "BFD_RELOC_AARCH64_TLSIE_MOVW_GOTTPREL_G1",
49df5539 3072 "BFD_RELOC_AARCH64_TLSLD_ADD_DTPREL_HI12",
70151fb5 3073 "BFD_RELOC_AARCH64_TLSLD_ADD_DTPREL_LO12",
13289c10 3074 "BFD_RELOC_AARCH64_TLSLD_ADD_DTPREL_LO12_NC",
a12fad50 3075 "BFD_RELOC_AARCH64_TLSLD_ADD_LO12_NC",
1107e076 3076 "BFD_RELOC_AARCH64_TLSLD_ADR_PAGE21",
6c37fedc 3077 "BFD_RELOC_AARCH64_TLSLD_ADR_PREL21",
4c562523
JW
3078 "BFD_RELOC_AARCH64_TLSLD_LDST16_DTPREL_LO12",
3079 "BFD_RELOC_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC",
3080 "BFD_RELOC_AARCH64_TLSLD_LDST32_DTPREL_LO12",
3081 "BFD_RELOC_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC",
3082 "BFD_RELOC_AARCH64_TLSLD_LDST64_DTPREL_LO12",
3083 "BFD_RELOC_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC",
3084 "BFD_RELOC_AARCH64_TLSLD_LDST8_DTPREL_LO12",
3085 "BFD_RELOC_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC",
49df5539
JW
3086 "BFD_RELOC_AARCH64_TLSLD_MOVW_DTPREL_G0",
3087 "BFD_RELOC_AARCH64_TLSLD_MOVW_DTPREL_G0_NC",
3088 "BFD_RELOC_AARCH64_TLSLD_MOVW_DTPREL_G1",
3089 "BFD_RELOC_AARCH64_TLSLD_MOVW_DTPREL_G1_NC",
3090 "BFD_RELOC_AARCH64_TLSLD_MOVW_DTPREL_G2",
a6bb11b2
YZ
3091 "BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G2",
3092 "BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G1",
3093 "BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G1_NC",
3094 "BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G0",
3095 "BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G0_NC",
a06ea964
NC
3096 "BFD_RELOC_AARCH64_TLSLE_ADD_TPREL_HI12",
3097 "BFD_RELOC_AARCH64_TLSLE_ADD_TPREL_LO12",
3098 "BFD_RELOC_AARCH64_TLSLE_ADD_TPREL_LO12_NC",
84f1b9fb
RL
3099 "BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12",
3100 "BFD_RELOC_AARCH64_TLSLE_LDST16_TPREL_LO12_NC",
3101 "BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12",
3102 "BFD_RELOC_AARCH64_TLSLE_LDST32_TPREL_LO12_NC",
3103 "BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12",
3104 "BFD_RELOC_AARCH64_TLSLE_LDST64_TPREL_LO12_NC",
3105 "BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12",
3106 "BFD_RELOC_AARCH64_TLSLE_LDST8_TPREL_LO12_NC",
a6bb11b2
YZ
3107 "BFD_RELOC_AARCH64_TLSDESC_LD_PREL19",
3108 "BFD_RELOC_AARCH64_TLSDESC_ADR_PREL21",
3109 "BFD_RELOC_AARCH64_TLSDESC_ADR_PAGE21",
f955cccf 3110 "BFD_RELOC_AARCH64_TLSDESC_LD64_LO12",
a6bb11b2 3111 "BFD_RELOC_AARCH64_TLSDESC_LD32_LO12_NC",
f955cccf 3112 "BFD_RELOC_AARCH64_TLSDESC_ADD_LO12",
a6bb11b2
YZ
3113 "BFD_RELOC_AARCH64_TLSDESC_OFF_G1",
3114 "BFD_RELOC_AARCH64_TLSDESC_OFF_G0_NC",
3115 "BFD_RELOC_AARCH64_TLSDESC_LDR",
3116 "BFD_RELOC_AARCH64_TLSDESC_ADD",
3117 "BFD_RELOC_AARCH64_TLSDESC_CALL",
3118 "BFD_RELOC_AARCH64_COPY",
3119 "BFD_RELOC_AARCH64_GLOB_DAT",
3120 "BFD_RELOC_AARCH64_JUMP_SLOT",
3121 "BFD_RELOC_AARCH64_RELATIVE",
3122 "BFD_RELOC_AARCH64_TLS_DTPMOD",
3123 "BFD_RELOC_AARCH64_TLS_DTPREL",
3124 "BFD_RELOC_AARCH64_TLS_TPREL",
3125 "BFD_RELOC_AARCH64_TLSDESC",
3126 "BFD_RELOC_AARCH64_IRELATIVE",
3127 "BFD_RELOC_AARCH64_RELOC_END",
3128 "BFD_RELOC_AARCH64_GAS_INTERNAL_FIXUP",
3129 "BFD_RELOC_AARCH64_LDST_LO12",
4c562523
JW
3130 "BFD_RELOC_AARCH64_TLSLD_LDST_DTPREL_LO12",
3131 "BFD_RELOC_AARCH64_TLSLD_LDST_DTPREL_LO12_NC",
84f1b9fb
RL
3132 "BFD_RELOC_AARCH64_TLSLE_LDST_TPREL_LO12",
3133 "BFD_RELOC_AARCH64_TLSLE_LDST_TPREL_LO12_NC",
a6bb11b2
YZ
3134 "BFD_RELOC_AARCH64_LD_GOT_LO12_NC",
3135 "BFD_RELOC_AARCH64_TLSIE_LD_GOTTPREL_LO12_NC",
3136 "BFD_RELOC_AARCH64_TLSDESC_LD_LO12_NC",
aa137e4d
NC
3137 "BFD_RELOC_TILEPRO_COPY",
3138 "BFD_RELOC_TILEPRO_GLOB_DAT",
3139 "BFD_RELOC_TILEPRO_JMP_SLOT",
3140 "BFD_RELOC_TILEPRO_RELATIVE",
3141 "BFD_RELOC_TILEPRO_BROFF_X1",
3142 "BFD_RELOC_TILEPRO_JOFFLONG_X1",
3143 "BFD_RELOC_TILEPRO_JOFFLONG_X1_PLT",
3144 "BFD_RELOC_TILEPRO_IMM8_X0",
3145 "BFD_RELOC_TILEPRO_IMM8_Y0",
3146 "BFD_RELOC_TILEPRO_IMM8_X1",
3147 "BFD_RELOC_TILEPRO_IMM8_Y1",
3148 "BFD_RELOC_TILEPRO_DEST_IMM8_X1",
3149 "BFD_RELOC_TILEPRO_MT_IMM15_X1",
3150 "BFD_RELOC_TILEPRO_MF_IMM15_X1",
3151 "BFD_RELOC_TILEPRO_IMM16_X0",
3152 "BFD_RELOC_TILEPRO_IMM16_X1",
3153 "BFD_RELOC_TILEPRO_IMM16_X0_LO",
3154 "BFD_RELOC_TILEPRO_IMM16_X1_LO",
3155 "BFD_RELOC_TILEPRO_IMM16_X0_HI",
3156 "BFD_RELOC_TILEPRO_IMM16_X1_HI",
3157 "BFD_RELOC_TILEPRO_IMM16_X0_HA",
3158 "BFD_RELOC_TILEPRO_IMM16_X1_HA",
3159 "BFD_RELOC_TILEPRO_IMM16_X0_PCREL",
3160 "BFD_RELOC_TILEPRO_IMM16_X1_PCREL",
3161 "BFD_RELOC_TILEPRO_IMM16_X0_LO_PCREL",
3162 "BFD_RELOC_TILEPRO_IMM16_X1_LO_PCREL",
3163 "BFD_RELOC_TILEPRO_IMM16_X0_HI_PCREL",
3164 "BFD_RELOC_TILEPRO_IMM16_X1_HI_PCREL",
3165 "BFD_RELOC_TILEPRO_IMM16_X0_HA_PCREL",
3166 "BFD_RELOC_TILEPRO_IMM16_X1_HA_PCREL",
3167 "BFD_RELOC_TILEPRO_IMM16_X0_GOT",
3168 "BFD_RELOC_TILEPRO_IMM16_X1_GOT",
3169 "BFD_RELOC_TILEPRO_IMM16_X0_GOT_LO",
3170 "BFD_RELOC_TILEPRO_IMM16_X1_GOT_LO",
3171 "BFD_RELOC_TILEPRO_IMM16_X0_GOT_HI",
3172 "BFD_RELOC_TILEPRO_IMM16_X1_GOT_HI",
3173 "BFD_RELOC_TILEPRO_IMM16_X0_GOT_HA",
3174 "BFD_RELOC_TILEPRO_IMM16_X1_GOT_HA",
3175 "BFD_RELOC_TILEPRO_MMSTART_X0",
3176 "BFD_RELOC_TILEPRO_MMEND_X0",
3177 "BFD_RELOC_TILEPRO_MMSTART_X1",
3178 "BFD_RELOC_TILEPRO_MMEND_X1",
3179 "BFD_RELOC_TILEPRO_SHAMT_X0",
3180 "BFD_RELOC_TILEPRO_SHAMT_X1",
3181 "BFD_RELOC_TILEPRO_SHAMT_Y0",
3182 "BFD_RELOC_TILEPRO_SHAMT_Y1",
6f7be959
WL
3183 "BFD_RELOC_TILEPRO_TLS_GD_CALL",
3184 "BFD_RELOC_TILEPRO_IMM8_X0_TLS_GD_ADD",
3185 "BFD_RELOC_TILEPRO_IMM8_X1_TLS_GD_ADD",
3186 "BFD_RELOC_TILEPRO_IMM8_Y0_TLS_GD_ADD",
3187 "BFD_RELOC_TILEPRO_IMM8_Y1_TLS_GD_ADD",
3188 "BFD_RELOC_TILEPRO_TLS_IE_LOAD",
aa137e4d
NC
3189 "BFD_RELOC_TILEPRO_IMM16_X0_TLS_GD",
3190 "BFD_RELOC_TILEPRO_IMM16_X1_TLS_GD",
3191 "BFD_RELOC_TILEPRO_IMM16_X0_TLS_GD_LO",
3192 "BFD_RELOC_TILEPRO_IMM16_X1_TLS_GD_LO",
3193 "BFD_RELOC_TILEPRO_IMM16_X0_TLS_GD_HI",
3194 "BFD_RELOC_TILEPRO_IMM16_X1_TLS_GD_HI",
3195 "BFD_RELOC_TILEPRO_IMM16_X0_TLS_GD_HA",
3196 "BFD_RELOC_TILEPRO_IMM16_X1_TLS_GD_HA",
3197 "BFD_RELOC_TILEPRO_IMM16_X0_TLS_IE",
3198 "BFD_RELOC_TILEPRO_IMM16_X1_TLS_IE",
3199 "BFD_RELOC_TILEPRO_IMM16_X0_TLS_IE_LO",
3200 "BFD_RELOC_TILEPRO_IMM16_X1_TLS_IE_LO",
3201 "BFD_RELOC_TILEPRO_IMM16_X0_TLS_IE_HI",
3202 "BFD_RELOC_TILEPRO_IMM16_X1_TLS_IE_HI",
3203 "BFD_RELOC_TILEPRO_IMM16_X0_TLS_IE_HA",
3204 "BFD_RELOC_TILEPRO_IMM16_X1_TLS_IE_HA",
3205 "BFD_RELOC_TILEPRO_TLS_DTPMOD32",
3206 "BFD_RELOC_TILEPRO_TLS_DTPOFF32",
3207 "BFD_RELOC_TILEPRO_TLS_TPOFF32",
6f7be959
WL
3208 "BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE",
3209 "BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE",
3210 "BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_LO",
3211 "BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_LO",
3212 "BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HI",
3213 "BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HI",
3214 "BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HA",
3215 "BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HA",
aa137e4d
NC
3216 "BFD_RELOC_TILEGX_HW0",
3217 "BFD_RELOC_TILEGX_HW1",
3218 "BFD_RELOC_TILEGX_HW2",
3219 "BFD_RELOC_TILEGX_HW3",
3220 "BFD_RELOC_TILEGX_HW0_LAST",
3221 "BFD_RELOC_TILEGX_HW1_LAST",
3222 "BFD_RELOC_TILEGX_HW2_LAST",
3223 "BFD_RELOC_TILEGX_COPY",
3224 "BFD_RELOC_TILEGX_GLOB_DAT",
3225 "BFD_RELOC_TILEGX_JMP_SLOT",
3226 "BFD_RELOC_TILEGX_RELATIVE",
3227 "BFD_RELOC_TILEGX_BROFF_X1",
3228 "BFD_RELOC_TILEGX_JUMPOFF_X1",
3229 "BFD_RELOC_TILEGX_JUMPOFF_X1_PLT",
3230 "BFD_RELOC_TILEGX_IMM8_X0",
3231 "BFD_RELOC_TILEGX_IMM8_Y0",
3232 "BFD_RELOC_TILEGX_IMM8_X1",
3233 "BFD_RELOC_TILEGX_IMM8_Y1",
3234 "BFD_RELOC_TILEGX_DEST_IMM8_X1",
3235 "BFD_RELOC_TILEGX_MT_IMM14_X1",
3236 "BFD_RELOC_TILEGX_MF_IMM14_X1",
3237 "BFD_RELOC_TILEGX_MMSTART_X0",
3238 "BFD_RELOC_TILEGX_MMEND_X0",
3239 "BFD_RELOC_TILEGX_SHAMT_X0",
3240 "BFD_RELOC_TILEGX_SHAMT_X1",
3241 "BFD_RELOC_TILEGX_SHAMT_Y0",
3242 "BFD_RELOC_TILEGX_SHAMT_Y1",
3243 "BFD_RELOC_TILEGX_IMM16_X0_HW0",
3244 "BFD_RELOC_TILEGX_IMM16_X1_HW0",
3245 "BFD_RELOC_TILEGX_IMM16_X0_HW1",
3246 "BFD_RELOC_TILEGX_IMM16_X1_HW1",
3247 "BFD_RELOC_TILEGX_IMM16_X0_HW2",
3248 "BFD_RELOC_TILEGX_IMM16_X1_HW2",
3249 "BFD_RELOC_TILEGX_IMM16_X0_HW3",
3250 "BFD_RELOC_TILEGX_IMM16_X1_HW3",
3251 "BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST",
3252 "BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST",
3253 "BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST",
3254 "BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST",
3255 "BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST",
3256 "BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST",
3257 "BFD_RELOC_TILEGX_IMM16_X0_HW0_PCREL",
3258 "BFD_RELOC_TILEGX_IMM16_X1_HW0_PCREL",
3259 "BFD_RELOC_TILEGX_IMM16_X0_HW1_PCREL",
3260 "BFD_RELOC_TILEGX_IMM16_X1_HW1_PCREL",
3261 "BFD_RELOC_TILEGX_IMM16_X0_HW2_PCREL",
3262 "BFD_RELOC_TILEGX_IMM16_X1_HW2_PCREL",
3263 "BFD_RELOC_TILEGX_IMM16_X0_HW3_PCREL",
3264 "BFD_RELOC_TILEGX_IMM16_X1_HW3_PCREL",
3265 "BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_PCREL",
3266 "BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_PCREL",
3267 "BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_PCREL",
3268 "BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_PCREL",
3269 "BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_PCREL",
3270 "BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_PCREL",
3271 "BFD_RELOC_TILEGX_IMM16_X0_HW0_GOT",
3272 "BFD_RELOC_TILEGX_IMM16_X1_HW0_GOT",
e5b95258
WL
3273 "BFD_RELOC_TILEGX_IMM16_X0_HW0_PLT_PCREL",
3274 "BFD_RELOC_TILEGX_IMM16_X1_HW0_PLT_PCREL",
3275 "BFD_RELOC_TILEGX_IMM16_X0_HW1_PLT_PCREL",
3276 "BFD_RELOC_TILEGX_IMM16_X1_HW1_PLT_PCREL",
3277 "BFD_RELOC_TILEGX_IMM16_X0_HW2_PLT_PCREL",
3278 "BFD_RELOC_TILEGX_IMM16_X1_HW2_PLT_PCREL",
aa137e4d
NC
3279 "BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_GOT",
3280 "BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_GOT",
3281 "BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_GOT",
3282 "BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_GOT",
e5b95258
WL
3283 "BFD_RELOC_TILEGX_IMM16_X0_HW3_PLT_PCREL",
3284 "BFD_RELOC_TILEGX_IMM16_X1_HW3_PLT_PCREL",
aa137e4d
NC
3285 "BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_GD",
3286 "BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_GD",
6f7be959
WL
3287 "BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_LE",
3288 "BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_LE",
3289 "BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_LE",
3290 "BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_LE",
3291 "BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_LE",
3292 "BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_LE",
aa137e4d
NC
3293 "BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_GD",
3294 "BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_GD",
3295 "BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_GD",
3296 "BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_GD",
aa137e4d
NC
3297 "BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_IE",
3298 "BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_IE",
e5b95258
WL
3299 "BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_PLT_PCREL",
3300 "BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_PLT_PCREL",
3301 "BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_PLT_PCREL",
3302 "BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_PLT_PCREL",
3303 "BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_PLT_PCREL",
3304 "BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_PLT_PCREL",
aa137e4d
NC
3305 "BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_IE",
3306 "BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_IE",
3307 "BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_IE",
3308 "BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_IE",
aa137e4d
NC
3309 "BFD_RELOC_TILEGX_TLS_DTPMOD64",
3310 "BFD_RELOC_TILEGX_TLS_DTPOFF64",
3311 "BFD_RELOC_TILEGX_TLS_TPOFF64",
3312 "BFD_RELOC_TILEGX_TLS_DTPMOD32",
3313 "BFD_RELOC_TILEGX_TLS_DTPOFF32",
3314 "BFD_RELOC_TILEGX_TLS_TPOFF32",
6f7be959
WL
3315 "BFD_RELOC_TILEGX_TLS_GD_CALL",
3316 "BFD_RELOC_TILEGX_IMM8_X0_TLS_GD_ADD",
3317 "BFD_RELOC_TILEGX_IMM8_X1_TLS_GD_ADD",
3318 "BFD_RELOC_TILEGX_IMM8_Y0_TLS_GD_ADD",
3319 "BFD_RELOC_TILEGX_IMM8_Y1_TLS_GD_ADD",
3320 "BFD_RELOC_TILEGX_TLS_IE_LOAD",
3321 "BFD_RELOC_TILEGX_IMM8_X0_TLS_ADD",
3322 "BFD_RELOC_TILEGX_IMM8_X1_TLS_ADD",
3323 "BFD_RELOC_TILEGX_IMM8_Y0_TLS_ADD",
3324 "BFD_RELOC_TILEGX_IMM8_Y1_TLS_ADD",
fd0de36e
JM
3325 "BFD_RELOC_BPF_64",
3326 "BFD_RELOC_BPF_32",
3327 "BFD_RELOC_BPF_16",
3328 "BFD_RELOC_BPF_DISP16",
3329 "BFD_RELOC_BPF_DISP32",
cfb8c092
NC
3330 "BFD_RELOC_EPIPHANY_SIMM8",
3331 "BFD_RELOC_EPIPHANY_SIMM24",
3332 "BFD_RELOC_EPIPHANY_HIGH",
3333 "BFD_RELOC_EPIPHANY_LOW",
3334 "BFD_RELOC_EPIPHANY_SIMM11",
3335 "BFD_RELOC_EPIPHANY_IMM11",
3336 "BFD_RELOC_EPIPHANY_IMM8",
d924db55
EB
3337 "BFD_RELOC_VISIUM_HI16",
3338 "BFD_RELOC_VISIUM_LO16",
3339 "BFD_RELOC_VISIUM_IM16",
3340 "BFD_RELOC_VISIUM_REL16",
3341 "BFD_RELOC_VISIUM_HI16_PCREL",
3342 "BFD_RELOC_VISIUM_LO16_PCREL",
3343 "BFD_RELOC_VISIUM_IM16_PCREL",
f96bd6c2
PC
3344 "BFD_RELOC_WASM32_LEB128",
3345 "BFD_RELOC_WASM32_LEB128_GOT",
3346 "BFD_RELOC_WASM32_LEB128_GOT_CODE",
3347 "BFD_RELOC_WASM32_LEB128_PLT",
3348 "BFD_RELOC_WASM32_PLT_INDEX",
3349 "BFD_RELOC_WASM32_ABS32_CODE",
3350 "BFD_RELOC_WASM32_COPY",
3351 "BFD_RELOC_WASM32_CODE_POINTER",
3352 "BFD_RELOC_WASM32_INDEX",
3353 "BFD_RELOC_WASM32_PLT_SIG",
b8891f8d
AJ
3354 "BFD_RELOC_CKCORE_NONE",
3355 "BFD_RELOC_CKCORE_ADDR32",
3356 "BFD_RELOC_CKCORE_PCREL_IMM8BY4",
3357 "BFD_RELOC_CKCORE_PCREL_IMM11BY2",
3358 "BFD_RELOC_CKCORE_PCREL_IMM4BY2",
3359 "BFD_RELOC_CKCORE_PCREL32",
3360 "BFD_RELOC_CKCORE_PCREL_JSR_IMM11BY2",
3361 "BFD_RELOC_CKCORE_GNU_VTINHERIT",
3362 "BFD_RELOC_CKCORE_GNU_VTENTRY",
3363 "BFD_RELOC_CKCORE_RELATIVE",
3364 "BFD_RELOC_CKCORE_COPY",
3365 "BFD_RELOC_CKCORE_GLOB_DAT",
3366 "BFD_RELOC_CKCORE_JUMP_SLOT",
3367 "BFD_RELOC_CKCORE_GOTOFF",
3368 "BFD_RELOC_CKCORE_GOTPC",
3369 "BFD_RELOC_CKCORE_GOT32",
3370 "BFD_RELOC_CKCORE_PLT32",
3371 "BFD_RELOC_CKCORE_ADDRGOT",
3372 "BFD_RELOC_CKCORE_ADDRPLT",
3373 "BFD_RELOC_CKCORE_PCREL_IMM26BY2",
3374 "BFD_RELOC_CKCORE_PCREL_IMM16BY2",
3375 "BFD_RELOC_CKCORE_PCREL_IMM16BY4",
3376 "BFD_RELOC_CKCORE_PCREL_IMM10BY2",
3377 "BFD_RELOC_CKCORE_PCREL_IMM10BY4",
3378 "BFD_RELOC_CKCORE_ADDR_HI16",
3379 "BFD_RELOC_CKCORE_ADDR_LO16",
3380 "BFD_RELOC_CKCORE_GOTPC_HI16",
3381 "BFD_RELOC_CKCORE_GOTPC_LO16",
3382 "BFD_RELOC_CKCORE_GOTOFF_HI16",
3383 "BFD_RELOC_CKCORE_GOTOFF_LO16",
3384 "BFD_RELOC_CKCORE_GOT12",
3385 "BFD_RELOC_CKCORE_GOT_HI16",
3386 "BFD_RELOC_CKCORE_GOT_LO16",
3387 "BFD_RELOC_CKCORE_PLT12",
3388 "BFD_RELOC_CKCORE_PLT_HI16",
3389 "BFD_RELOC_CKCORE_PLT_LO16",
3390 "BFD_RELOC_CKCORE_ADDRGOT_HI16",
3391 "BFD_RELOC_CKCORE_ADDRGOT_LO16",
3392 "BFD_RELOC_CKCORE_ADDRPLT_HI16",
3393 "BFD_RELOC_CKCORE_ADDRPLT_LO16",
3394 "BFD_RELOC_CKCORE_PCREL_JSR_IMM26BY2",
3395 "BFD_RELOC_CKCORE_TOFFSET_LO16",
3396 "BFD_RELOC_CKCORE_DOFFSET_LO16",
3397 "BFD_RELOC_CKCORE_PCREL_IMM18BY2",
3398 "BFD_RELOC_CKCORE_DOFFSET_IMM18",
3399 "BFD_RELOC_CKCORE_DOFFSET_IMM18BY2",
3400 "BFD_RELOC_CKCORE_DOFFSET_IMM18BY4",
3401 "BFD_RELOC_CKCORE_GOTOFF_IMM18",
3402 "BFD_RELOC_CKCORE_GOT_IMM18BY4",
3403 "BFD_RELOC_CKCORE_PLT_IMM18BY4",
3404 "BFD_RELOC_CKCORE_PCREL_IMM7BY4",
3405 "BFD_RELOC_CKCORE_TLS_LE32",
3406 "BFD_RELOC_CKCORE_TLS_IE32",
3407 "BFD_RELOC_CKCORE_TLS_GD32",
3408 "BFD_RELOC_CKCORE_TLS_LDM32",
3409 "BFD_RELOC_CKCORE_TLS_LDO32",
3410 "BFD_RELOC_CKCORE_TLS_DTPMOD32",
3411 "BFD_RELOC_CKCORE_TLS_DTPOFF32",
3412 "BFD_RELOC_CKCORE_TLS_TPOFF32",
3413 "BFD_RELOC_CKCORE_PCREL_FLRW_IMM8BY4",
3414 "BFD_RELOC_CKCORE_NOJSRI",
3415 "BFD_RELOC_CKCORE_CALLGRAPH",
3416 "BFD_RELOC_CKCORE_IRELATIVE",
3417 "BFD_RELOC_CKCORE_PCREL_BLOOP_IMM4BY4",
3418 "BFD_RELOC_CKCORE_PCREL_BLOOP_IMM12BY4",
d5dcaf1b 3419 "BFD_RELOC_S12Z_OPR",
e214f8db 3420 "BFD_RELOC_LARCH_TLS_DTPMOD32",
3421 "BFD_RELOC_LARCH_TLS_DTPREL32",
3422 "BFD_RELOC_LARCH_TLS_DTPMOD64",
3423 "BFD_RELOC_LARCH_TLS_DTPREL64",
3424 "BFD_RELOC_LARCH_TLS_TPREL32",
3425 "BFD_RELOC_LARCH_TLS_TPREL64",
3426 "BFD_RELOC_LARCH_MARK_LA",
3427 "BFD_RELOC_LARCH_MARK_PCREL",
3428 "BFD_RELOC_LARCH_SOP_PUSH_PCREL",
3429 "BFD_RELOC_LARCH_SOP_PUSH_ABSOLUTE",
3430 "BFD_RELOC_LARCH_SOP_PUSH_DUP",
3431 "BFD_RELOC_LARCH_SOP_PUSH_GPREL",
3432 "BFD_RELOC_LARCH_SOP_PUSH_TLS_TPREL",
3433 "BFD_RELOC_LARCH_SOP_PUSH_TLS_GOT",
3434 "BFD_RELOC_LARCH_SOP_PUSH_TLS_GD",
3435 "BFD_RELOC_LARCH_SOP_PUSH_PLT_PCREL",
3436 "BFD_RELOC_LARCH_SOP_ASSERT",
3437 "BFD_RELOC_LARCH_SOP_NOT",
3438 "BFD_RELOC_LARCH_SOP_SUB",
3439 "BFD_RELOC_LARCH_SOP_SL",
3440 "BFD_RELOC_LARCH_SOP_SR",
3441 "BFD_RELOC_LARCH_SOP_ADD",
3442 "BFD_RELOC_LARCH_SOP_AND",
3443 "BFD_RELOC_LARCH_SOP_IF_ELSE",
3444 "BFD_RELOC_LARCH_SOP_POP_32_S_10_5",
3445 "BFD_RELOC_LARCH_SOP_POP_32_U_10_12",
3446 "BFD_RELOC_LARCH_SOP_POP_32_S_10_12",
3447 "BFD_RELOC_LARCH_SOP_POP_32_S_10_16",
3448 "BFD_RELOC_LARCH_SOP_POP_32_S_10_16_S2",
3449 "BFD_RELOC_LARCH_SOP_POP_32_S_5_20",
3450 "BFD_RELOC_LARCH_SOP_POP_32_S_0_5_10_16_S2",
3451 "BFD_RELOC_LARCH_SOP_POP_32_S_0_10_10_16_S2",
3452 "BFD_RELOC_LARCH_SOP_POP_32_U",
3453 "BFD_RELOC_LARCH_ADD8",
3454 "BFD_RELOC_LARCH_ADD16",
3455 "BFD_RELOC_LARCH_ADD24",
3456 "BFD_RELOC_LARCH_ADD32",
3457 "BFD_RELOC_LARCH_ADD64",
3458 "BFD_RELOC_LARCH_SUB8",
3459 "BFD_RELOC_LARCH_SUB16",
3460 "BFD_RELOC_LARCH_SUB24",
3461 "BFD_RELOC_LARCH_SUB32",
3462 "BFD_RELOC_LARCH_SUB64",
252b5132
RH
3463 "@@overflow: BFD_RELOC_UNUSED@@",
3464};
3465#endif
3466
c58b9523
AM
3467reloc_howto_type *bfd_default_reloc_type_lookup
3468 (bfd *abfd, bfd_reloc_code_real_type code);
252b5132 3469
0a1b45a2 3470bool bfd_generic_relax_section
c58b9523 3471 (bfd *abfd,
252b5132
RH
3472 asection *section,
3473 struct bfd_link_info *,
0a1b45a2 3474 bool *);
252b5132 3475
0a1b45a2 3476bool bfd_generic_gc_sections
c58b9523 3477 (bfd *, struct bfd_link_info *);
252b5132 3478
0a1b45a2 3479bool bfd_generic_lookup_section_flags
b9c361e0 3480 (struct bfd_link_info *, struct flag_info *, asection *);
ae17ab41 3481
0a1b45a2 3482bool bfd_generic_merge_sections
c58b9523 3483 (bfd *, struct bfd_link_info *);
8550eb6e 3484
c58b9523 3485bfd_byte *bfd_generic_get_relocated_section_contents
360cfc9c 3486 (bfd *abfd,
290b3896 3487 struct bfd_link_info *link_info,
360cfc9c
AM
3488 struct bfd_link_order *link_order,
3489 bfd_byte *data,
0a1b45a2 3490 bool relocatable,
360cfc9c 3491 asymbol **symbols);
252b5132 3492
23186865
JM
3493void _bfd_generic_set_reloc
3494 (bfd *abfd,
3495 sec_ptr section,
3496 arelent **relptr,
3497 unsigned int count);
3498
0a1b45a2 3499bool _bfd_unrecognized_reloc
47aeb64c
NC
3500 (bfd * abfd,
3501 sec_ptr section,
3502 unsigned int r_type);
3503
e61463e1 3504/* Extracted from archures.c. */
252b5132 3505extern const bfd_arch_info_type bfd_default_arch_struct;
c58b9523
AM
3506const bfd_arch_info_type *bfd_default_compatible
3507 (const bfd_arch_info_type *a, const bfd_arch_info_type *b);
252b5132 3508
0a1b45a2 3509bool bfd_default_scan
c58b9523 3510 (const struct bfd_arch_info *info, const char *string);
252b5132 3511
b7761f11 3512void *bfd_arch_default_fill (bfd_size_type count,
0a1b45a2
AM
3513 bool is_bigendian,
3514 bool code);
b7761f11 3515
1047201f 3516/* Extracted from linker.c. */
0a1b45a2 3517bool _bfd_generic_verify_endian_match
50e03d47 3518 (bfd *ibfd, struct bfd_link_info *info);
1047201f 3519
55172d69
PA
3520#ifdef __cplusplus
3521}
3522#endif
0b439543 3523#endif