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