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