Rev 5197 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 5197 | Rev 6324 | ||
---|---|---|---|
Line 5... | Line 5... | ||
5 | "linker.c", "simple.c" and "compress.c". |
5 | "linker.c", "simple.c" and "compress.c". |
6 | Run "make headers" in your build bfd/ to regenerate. */ |
6 | Run "make headers" in your build bfd/ to regenerate. */ |
Line 7... | Line 7... | ||
7 | 7 | ||
Line 8... | Line 8... | ||
8 | /* Main header file for the bfd library -- portable access to object files. |
8 | /* Main header file for the bfd library -- portable access to object files. |
Line 9... | Line 9... | ||
9 | 9 | ||
Line 10... | Line 10... | ||
10 | Copyright 1990-2013 Free Software Foundation, Inc. |
10 | Copyright (C) 1990-2015 Free Software Foundation, Inc. |
Line 277... | Line 277... | ||
277 | alent; |
277 | alent; |
278 | 278 | ||
279 | /* Object and core file sections. */ |
279 | /* Object and core file sections. */ |
Line 280... | Line 280... | ||
280 | 280 | ||
281 | #define align_power(addr, align) \ |
281 | #define align_power(addr, align) \ |
Line 282... | Line 282... | ||
282 | (((addr) + ((bfd_vma) 1 << (align)) - 1) & ((bfd_vma) -1 << (align))) |
282 | (((addr) + ((bfd_vma) 1 << (align)) - 1) & (-((bfd_vma) 1 << (align)))) |
Line 283... | Line 283... | ||
283 | 283 | ||
284 | typedef struct bfd_section *sec_ptr; |
284 | typedef struct bfd_section *sec_ptr; |
Line 297... | Line 297... | ||
297 | #define bfd_get_section_flags(bfd, ptr) ((void) bfd, (ptr)->flags) |
297 | #define bfd_get_section_flags(bfd, ptr) ((void) bfd, (ptr)->flags) |
298 | #define bfd_get_section_userdata(bfd, ptr) ((void) bfd, (ptr)->userdata) |
298 | #define bfd_get_section_userdata(bfd, ptr) ((void) bfd, (ptr)->userdata) |
Line 299... | Line 299... | ||
299 | 299 | ||
Line 300... | Line 300... | ||
300 | #define bfd_is_com_section(ptr) (((ptr)->flags & SEC_IS_COMMON) != 0) |
300 | #define bfd_is_com_section(ptr) (((ptr)->flags & SEC_IS_COMMON) != 0) |
301 | 301 | ||
302 | #define bfd_set_section_vma(bfd, ptr, val) (((ptr)->vma = (ptr)->lma = (val)), ((ptr)->user_set_vma = TRUE), TRUE) |
302 | #define bfd_get_section_limit_octets(bfd, sec) \ |
- | 303 | ((bfd)->direction != write_direction && (sec)->rawsize != 0 \ |
|
303 | #define bfd_set_section_alignment(bfd, ptr, val) (((ptr)->alignment_power = (val)),TRUE) |
304 | ? (sec)->rawsize : (sec)->size) |
304 | #define bfd_set_section_userdata(bfd, ptr, val) (((ptr)->userdata = (val)),TRUE) |
305 | |
305 | /* Find the address one past the end of SEC. */ |
- | |
306 | #define bfd_get_section_limit(bfd, sec) \ |
306 | /* Find the address one past the end of SEC. */ |
Line 307... | Line 307... | ||
307 | (((bfd)->direction != write_direction && (sec)->rawsize != 0 \ |
307 | #define bfd_get_section_limit(bfd, sec) \ |
308 | ? (sec)->rawsize : (sec)->size) / bfd_octets_per_byte (bfd)) |
308 | (bfd_get_section_limit_octets(bfd, sec) / bfd_octets_per_byte (bfd)) |
309 | 309 | ||
310 | /* Return TRUE if input section SEC has been discarded. */ |
310 | /* Return TRUE if input section SEC has been discarded. */ |
Line 442... | Line 442... | ||
442 | /* Allows the default size of a hash table to be configured. New hash |
442 | /* Allows the default size of a hash table to be configured. New hash |
443 | tables allocated using bfd_hash_table_init will be created with |
443 | tables allocated using bfd_hash_table_init will be created with |
444 | this size. */ |
444 | this size. */ |
445 | extern unsigned long bfd_hash_set_default_size (unsigned long); |
445 | extern unsigned long bfd_hash_set_default_size (unsigned long); |
Line -... | Line 446... | ||
- | 446 | ||
- | 447 | /* Types of compressed DWARF debug sections. We currently support |
|
- | 448 | zlib. */ |
|
- | 449 | enum compressed_debug_section_type |
|
- | 450 | { |
|
- | 451 | COMPRESS_DEBUG_NONE = 0, |
|
- | 452 | COMPRESS_DEBUG = 1 << 0, |
|
- | 453 | COMPRESS_DEBUG_GNU_ZLIB = COMPRESS_DEBUG | 1 << 1, |
|
- | 454 | COMPRESS_DEBUG_GABI_ZLIB = COMPRESS_DEBUG | 1 << 2 |
|
- | 455 | }; |
|
446 | 456 | ||
447 | /* This structure is used to keep track of stabs in sections |
457 | /* This structure is used to keep track of stabs in sections |
Line 448... | Line 458... | ||
448 | information while linking. */ |
458 | information while linking. */ |
449 | 459 | ||
Line 522... | Line 532... | ||
522 | 532 | ||
Line 523... | Line 533... | ||
523 | #define bfd_get_dynamic_symcount(abfd) ((abfd)->dynsymcount) |
533 | #define bfd_get_dynamic_symcount(abfd) ((abfd)->dynsymcount) |
Line 524... | Line -... | ||
524 | - | ||
525 | #define bfd_get_symbol_leading_char(abfd) ((abfd)->xvec->symbol_leading_char) |
- | |
526 | 534 | ||
527 | #define bfd_set_cacheable(abfd,bool) (((abfd)->cacheable = bool), TRUE) |
535 | #define bfd_get_symbol_leading_char(abfd) ((abfd)->xvec->symbol_leading_char) |
528 | 536 | ||
Line 529... | Line 537... | ||
529 | extern bfd_boolean bfd_cache_close |
537 | extern bfd_boolean bfd_cache_close |
Line 668... | Line 676... | ||
668 | (bfd *, enum dynamic_lib_link_class); |
676 | (bfd *, enum dynamic_lib_link_class); |
669 | extern int bfd_elf_get_dyn_lib_class |
677 | extern int bfd_elf_get_dyn_lib_class |
670 | (bfd *); |
678 | (bfd *); |
671 | extern struct bfd_link_needed_list *bfd_elf_get_runpath_list |
679 | extern struct bfd_link_needed_list *bfd_elf_get_runpath_list |
672 | (bfd *, struct bfd_link_info *); |
680 | (bfd *, struct bfd_link_info *); |
673 | extern bfd_boolean bfd_elf_discard_info |
681 | extern int bfd_elf_discard_info |
674 | (bfd *, struct bfd_link_info *); |
682 | (bfd *, struct bfd_link_info *); |
675 | extern unsigned int _bfd_elf_default_action_discarded |
683 | extern unsigned int _bfd_elf_default_action_discarded |
676 | (struct bfd_section *); |
684 | (struct bfd_section *); |
Line 677... | Line 685... | ||
677 | 685 | ||
Line 690... | Line 698... | ||
690 | error occurs; bfd_get_error will return an appropriate code. */ |
698 | error occurs; bfd_get_error will return an appropriate code. */ |
691 | extern int bfd_get_elf_phdrs |
699 | extern int bfd_get_elf_phdrs |
692 | (bfd *abfd, void *phdrs); |
700 | (bfd *abfd, void *phdrs); |
Line 693... | Line 701... | ||
693 | 701 | ||
694 | /* Create a new BFD as if by bfd_openr. Rather than opening a file, |
702 | /* Create a new BFD as if by bfd_openr. Rather than opening a file, |
695 | reconstruct an ELF file by reading the segments out of remote memory |
703 | reconstruct an ELF file by reading the segments out of remote |
- | 704 | memory based on the ELF file header at EHDR_VMA and the ELF program |
|
696 | based on the ELF file header at EHDR_VMA and the ELF program headers it |
705 | headers it points to. If non-zero, SIZE is the known extent of the |
697 | points to. If not null, *LOADBASEP is filled in with the difference |
706 | object. If not null, *LOADBASEP is filled in with the difference |
698 | between the VMAs from which the segments were read, and the VMAs the |
707 | between the VMAs from which the segments were read, and the VMAs |
- | 708 | the file headers (and hence BFD's idea of each section's VMA) put |
|
699 | file headers (and hence BFD's idea of each section's VMA) put them at. |
709 | them at. |
700 | 710 | ||
701 | The function TARGET_READ_MEMORY is called to copy LEN bytes from the |
711 | The function TARGET_READ_MEMORY is called to copy LEN bytes from |
702 | remote memory at target address VMA into the local buffer at MYADDR; it |
712 | the remote memory at target address VMA into the local buffer at |
703 | should return zero on success or an `errno' code on failure. TEMPL must |
713 | MYADDR; it should return zero on success or an `errno' code on |
704 | be a BFD for an ELF target with the word size and byte order found in |
714 | failure. TEMPL must be a BFD for a target with the word size and |
705 | the remote memory. */ |
715 | byte order found in the remote memory. */ |
706 | extern bfd *bfd_elf_bfd_from_remote_memory |
716 | extern bfd *bfd_elf_bfd_from_remote_memory |
707 | (bfd *templ, bfd_vma ehdr_vma, bfd_vma *loadbasep, |
717 | (bfd *templ, bfd_vma ehdr_vma, bfd_size_type size, bfd_vma *loadbasep, |
708 | int (*target_read_memory) (bfd_vma vma, bfd_byte *myaddr, |
718 | int (*target_read_memory) (bfd_vma vma, bfd_byte *myaddr, |
Line 709... | Line 719... | ||
709 | bfd_size_type len)); |
719 | bfd_size_type len)); |
710 | 720 | ||
Line 814... | Line 824... | ||
814 | #if defined(__STDC__) || defined(ALMOST_STDC) |
824 | #if defined(__STDC__) || defined(ALMOST_STDC) |
815 | struct internal_syment; |
825 | struct internal_syment; |
816 | union internal_auxent; |
826 | union internal_auxent; |
817 | #endif |
827 | #endif |
Line 818... | Line -... | ||
818 | - | ||
819 | extern bfd_boolean bfd_coff_get_syment |
- | |
820 | (bfd *, struct bfd_symbol *, struct internal_syment *); |
- | |
821 | - | ||
822 | extern bfd_boolean bfd_coff_get_auxent |
- | |
823 | (bfd *, struct bfd_symbol *, int, union internal_auxent *); |
- | |
824 | 828 | ||
825 | extern bfd_boolean bfd_coff_set_symbol_class |
829 | extern bfd_boolean bfd_coff_set_symbol_class |
Line 826... | Line 830... | ||
826 | (bfd *, struct bfd_symbol *, unsigned int); |
830 | (bfd *, struct bfd_symbol *, unsigned int); |
827 | 831 | ||
Line 850... | Line 854... | ||
850 | (bfd *, struct bfd_link_info *); |
854 | (bfd *, struct bfd_link_info *); |
Line 851... | Line 855... | ||
851 | 855 | ||
852 | extern void bfd_elf32_arm_vfp11_fix_veneer_locations |
856 | extern void bfd_elf32_arm_vfp11_fix_veneer_locations |
Line -... | Line 857... | ||
- | 857 | (bfd *, struct bfd_link_info *); |
|
- | 858 | ||
- | 859 | /* ARM STM STM32L4XX erratum workaround support. */ |
|
- | 860 | typedef enum |
|
- | 861 | { |
|
- | 862 | BFD_ARM_STM32L4XX_FIX_NONE, |
|
- | 863 | BFD_ARM_STM32L4XX_FIX_DEFAULT, |
|
- | 864 | BFD_ARM_STM32L4XX_FIX_ALL |
|
- | 865 | } bfd_arm_stm32l4xx_fix; |
|
- | 866 | ||
- | 867 | extern void bfd_elf32_arm_set_stm32l4xx_fix |
|
- | 868 | (bfd *, struct bfd_link_info *); |
|
- | 869 | ||
- | 870 | extern bfd_boolean bfd_elf32_arm_stm32l4xx_erratum_scan |
|
- | 871 | (bfd *, struct bfd_link_info *); |
|
- | 872 | ||
- | 873 | extern void bfd_elf32_arm_stm32l4xx_fix_veneer_locations |
|
853 | (bfd *, struct bfd_link_info *); |
874 | (bfd *, struct bfd_link_info *); |
854 | 875 | ||
855 | /* ARM Interworking support. Called from linker. */ |
876 | /* ARM Interworking support. Called from linker. */ |
Line 856... | Line 877... | ||
856 | extern bfd_boolean bfd_arm_allocate_interworking_sections |
877 | extern bfd_boolean bfd_arm_allocate_interworking_sections |
Line 879... | Line 900... | ||
879 | extern bfd_boolean bfd_elf32_arm_process_before_allocation |
900 | extern bfd_boolean bfd_elf32_arm_process_before_allocation |
880 | (bfd *, struct bfd_link_info *); |
901 | (bfd *, struct bfd_link_info *); |
Line 881... | Line 902... | ||
881 | 902 | ||
882 | void bfd_elf32_arm_set_target_relocs |
903 | void bfd_elf32_arm_set_target_relocs |
883 | (bfd *, struct bfd_link_info *, int, char *, int, int, bfd_arm_vfp11_fix, |
904 | (bfd *, struct bfd_link_info *, int, char *, int, int, bfd_arm_vfp11_fix, |
Line 884... | Line 905... | ||
884 | int, int, int, int, int); |
905 | bfd_arm_stm32l4xx_fix, int, int, int, int, int); |
885 | 906 | ||
Line 886... | Line 907... | ||
886 | extern bfd_boolean bfd_elf32_arm_get_bfd_for_interworking |
907 | extern bfd_boolean bfd_elf32_arm_get_bfd_for_interworking |
887 | (bfd *, struct bfd_link_info *); |
908 | (bfd *, struct bfd_link_info *); |
Line 888... | Line 909... | ||
888 | 909 | ||
889 | extern bfd_boolean bfd_elf32_arm_add_glue_sections_to_bfd |
910 | extern bfd_boolean bfd_elf32_arm_add_glue_sections_to_bfd |
890 | (bfd *, struct bfd_link_info *); |
911 | (bfd *, struct bfd_link_info *); |
891 | 912 | ||
892 | /* ELF ARM mapping symbol support */ |
913 | /* ELF ARM mapping symbol support. */ |
- | 914 | #define BFD_ARM_SPECIAL_SYM_TYPE_MAP (1 << 0) |
|
893 | #define BFD_ARM_SPECIAL_SYM_TYPE_MAP (1 << 0) |
915 | #define BFD_ARM_SPECIAL_SYM_TYPE_TAG (1 << 1) |
894 | #define BFD_ARM_SPECIAL_SYM_TYPE_TAG (1 << 1) |
916 | #define BFD_ARM_SPECIAL_SYM_TYPE_OTHER (1 << 2) |
Line 895... | Line 917... | ||
895 | #define BFD_ARM_SPECIAL_SYM_TYPE_OTHER (1 << 2) |
917 | #define BFD_ARM_SPECIAL_SYM_TYPE_ANY (~0) |
- | 918 | ||
- | 919 | extern bfd_boolean bfd_is_arm_special_symbol_name |
|
- | 920 | (const char *, int); |
|
Line 896... | Line 921... | ||
896 | #define BFD_ARM_SPECIAL_SYM_TYPE_ANY (~0) |
921 | |
897 | extern bfd_boolean bfd_is_arm_special_symbol_name |
922 | extern void bfd_elf32_arm_set_byteswap_code |
898 | (const char * name, int type); |
923 | (struct bfd_link_info *, int); |
Line 941... | Line 966... | ||
941 | 966 | ||
942 | extern void bfd_elf32_aarch64_init_maps |
967 | extern void bfd_elf32_aarch64_init_maps |
Line 943... | Line 968... | ||
943 | (bfd *); |
968 | (bfd *); |
944 | 969 | ||
Line 945... | Line 970... | ||
945 | extern void bfd_elf64_aarch64_set_options |
970 | extern void bfd_elf64_aarch64_set_options |
946 | (bfd *, struct bfd_link_info *, int, int, int); |
971 | (bfd *, struct bfd_link_info *, int, int, int, int, int); |
Line 947... | Line 972... | ||
947 | 972 | ||
948 | extern void bfd_elf32_aarch64_set_options |
973 | extern void bfd_elf32_aarch64_set_options |
949 | (bfd *, struct bfd_link_info *, int, int, int); |
974 | (bfd *, struct bfd_link_info *, int, int, int, int, int); |
950 | 975 | ||
Line 996... | Line 1021... | ||
996 | (int); |
1021 | (int); |
Line 997... | Line 1022... | ||
997 | 1022 | ||
998 | extern void bfd_elf64_ia64_after_parse |
1023 | extern void bfd_elf64_ia64_after_parse |
Line 999... | Line 1024... | ||
999 | (int); |
1024 | (int); |
1000 | - | ||
1001 | /* This structure is used for a comdat section, as in PE. A comdat |
1025 | |
1002 | section is associated with a particular symbol. When the linker |
- | |
1003 | sees a comdat section, it keeps only one of the sections with a |
- | |
1004 | given name and associated with a given symbol. */ |
1026 | /* V850 Note manipulation routines. */ |
1005 | - | ||
1006 | struct coff_comdat_info |
- | |
1007 | { |
- | |
1008 | /* The name of the symbol associated with a comdat section. */ |
- | |
1009 | const char *name; |
- | |
1010 | - | ||
1011 | /* The local symbol table index of the symbol associated with a |
- | |
1012 | comdat section. This is only meaningful to the object file format |
- | |
1013 | specific code; it is not an index into the list returned by |
- | |
1014 | bfd_canonicalize_symtab. */ |
- | |
Line 1015... | Line 1027... | ||
1015 | long symbol; |
1027 | extern bfd_boolean v850_elf_create_sections |
1016 | }; |
1028 | (struct bfd_link_info *); |
1017 | 1029 | ||
1018 | extern struct coff_comdat_info * bfd_coff_get_comdat_section |
1030 | extern bfd_boolean v850_elf_set_note |
Line 1019... | Line 1031... | ||
1019 | (bfd *, struct bfd_section *); |
1031 | (bfd *, unsigned int, unsigned int); |
- | 1032 | /* Extracted from init.c. */ |
|
1020 | /* Extracted from init.c. */ |
1033 | void bfd_init (void); |
1021 | void bfd_init (void); |
1034 | |
1022 | 1035 | /* Extracted from opncls.c. */ |
|
Line 1023... | Line 1036... | ||
1023 | /* Extracted from opncls.c. */ |
1036 | /* Set to N to open the next N BFDs using an alternate id space. */ |
Line 1024... | Line 1037... | ||
1024 | extern unsigned int bfd_use_reserved_id; |
1037 | extern unsigned int bfd_use_reserved_id; |
Line 1025... | Line 1038... | ||
1025 | bfd *bfd_fopen (const char *filename, const char *target, |
1038 | bfd *bfd_fopen (const char *filename, const char *target, |
Line 1026... | Line 1039... | ||
1026 | const char *mode, int fd); |
1039 | const char *mode, int fd); |
1027 | 1040 | ||
1028 | bfd *bfd_openr (const char *filename, const char *target); |
1041 | bfd *bfd_openr (const char *filename, const char *target); |
1029 | 1042 | ||
Line 1065... | Line 1078... | ||
1065 | unsigned long bfd_calc_gnu_debuglink_crc32 |
1078 | unsigned long bfd_calc_gnu_debuglink_crc32 |
1066 | (unsigned long crc, const unsigned char *buf, bfd_size_type len); |
1079 | (unsigned long crc, const unsigned char *buf, bfd_size_type len); |
Line 1067... | Line 1080... | ||
1067 | 1080 | ||
Line 1068... | Line 1081... | ||
1068 | char *bfd_get_debug_link_info (bfd *abfd, unsigned long *crc32_out); |
1081 | char *bfd_get_debug_link_info (bfd *abfd, unsigned long *crc32_out); |
- | 1082 | ||
- | 1083 | char *bfd_get_alt_debug_link_info (bfd * abfd, |
|
Line 1069... | Line 1084... | ||
1069 | 1084 | bfd_size_type *buildid_len, |
|
Line 1070... | Line 1085... | ||
1070 | char *bfd_get_alt_debug_link_info (bfd *abfd, unsigned long *crc32_out); |
1085 | bfd_byte **buildid_out); |
Line 1201... | Line 1216... | ||
1201 | int prot, int flags, file_ptr offset, |
1216 | int prot, int flags, file_ptr offset, |
1202 | void **map_addr, bfd_size_type *map_len); |
1217 | void **map_addr, bfd_size_type *map_len); |
Line 1203... | Line 1218... | ||
1203 | 1218 | ||
1204 | /* Extracted from bfdwin.c. */ |
1219 | /* Extracted from bfdwin.c. */ |
- | 1220 | /* Extracted from section.c. */ |
|
1205 | /* Extracted from section.c. */ |
1221 | |
1206 | typedef struct bfd_section |
1222 | typedef struct bfd_section |
1207 | { |
1223 | { |
1208 | /* The name of the section; the name isn't a copy, the pointer is |
1224 | /* The name of the section; the name isn't a copy, the pointer is |
1209 | the same as that passed to bfd_make_section. */ |
1225 | the same as that passed to bfd_make_section. */ |
Line 1210... | Line 1226... | ||
1210 | const char *name; |
1226 | const char *name; |
1211 | 1227 | ||
Line 1212... | Line 1228... | ||
1212 | /* A unique sequence number. */ |
1228 | /* A unique sequence number. */ |
1213 | int id; |
1229 | unsigned int id; |
Line 1214... | Line 1230... | ||
1214 | 1230 | ||
1215 | /* Which section in the bfd; 0..n-1 as sections are created in a bfd. */ |
1231 | /* Which section in the bfd; 0..n-1 as sections are created in a bfd. */ |
Line 1216... | Line 1232... | ||
1216 | int index; |
1232 | unsigned int index; |
Line 1387... | Line 1403... | ||
1387 | 1403 | ||
1388 | /* This section contains data which may be shared with other |
1404 | /* This section contains data which may be shared with other |
1389 | executables or shared objects. This is for COFF only. */ |
1405 | executables or shared objects. This is for COFF only. */ |
Line -... | Line 1406... | ||
- | 1406 | #define SEC_COFF_SHARED 0x8000000 |
|
- | 1407 | ||
- | 1408 | /* This section should be compressed. This is for ELF linker |
|
- | 1409 | internal use only. */ |
|
1390 | #define SEC_COFF_SHARED 0x8000000 |
1410 | #define SEC_ELF_COMPRESS 0x8000000 |
1391 | 1411 | ||
1392 | /* When a section with this flag is being linked, then if the size of |
1412 | /* When a section with this flag is being linked, then if the size of |
1393 | the input section is less than a page, it should not cross a page |
1413 | the input section is less than a page, it should not cross a page |
1394 | boundary. If the size of the input section is one page or more, |
1414 | boundary. If the size of the input section is one page or more, |
1395 | it should be aligned on a page boundary. This is for TI |
1415 | it should be aligned on a page boundary. This is for TI |
Line -... | Line 1416... | ||
- | 1416 | TMS320C54X only. */ |
|
- | 1417 | #define SEC_TIC54X_BLOCK 0x10000000 |
|
- | 1418 | ||
- | 1419 | /* This section should be renamed. This is for ELF linker |
|
1396 | TMS320C54X only. */ |
1420 | internal use only. */ |
1397 | #define SEC_TIC54X_BLOCK 0x10000000 |
1421 | #define SEC_ELF_RENAME 0x10000000 |
1398 | 1422 | ||
1399 | /* Conditionally link this section; do not link if there are no |
1423 | /* Conditionally link this section; do not link if there are no |
Line -... | Line 1424... | ||
- | 1424 | references found to any symbol in the section. This is for TI |
|
- | 1425 | TMS320C54X only. */ |
|
- | 1426 | #define SEC_TIC54X_CLINK 0x20000000 |
|
1400 | references found to any symbol in the section. This is for TI |
1427 | |
1401 | TMS320C54X only. */ |
1428 | /* This section contains vliw code. This is for Toshiba MeP only. */ |
1402 | #define SEC_TIC54X_CLINK 0x20000000 |
1429 | #define SEC_MEP_VLIW 0x20000000 |
Line 1403... | Line 1430... | ||
1403 | 1430 | ||
Line 1438... | Line 1465... | ||
1438 | #define SEC_INFO_TYPE_NONE 0 |
1465 | #define SEC_INFO_TYPE_NONE 0 |
1439 | #define SEC_INFO_TYPE_STABS 1 |
1466 | #define SEC_INFO_TYPE_STABS 1 |
1440 | #define SEC_INFO_TYPE_MERGE 2 |
1467 | #define SEC_INFO_TYPE_MERGE 2 |
1441 | #define SEC_INFO_TYPE_EH_FRAME 3 |
1468 | #define SEC_INFO_TYPE_EH_FRAME 3 |
1442 | #define SEC_INFO_TYPE_JUST_SYMS 4 |
1469 | #define SEC_INFO_TYPE_JUST_SYMS 4 |
- | 1470 | #define SEC_INFO_TYPE_TARGET 5 |
|
- | 1471 | #define SEC_INFO_TYPE_EH_FRAME_ENTRY 6 |
|
Line 1443... | Line 1472... | ||
1443 | 1472 | ||
1444 | /* Nonzero if this section uses RELA relocations, rather than REL. */ |
1473 | /* Nonzero if this section uses RELA relocations, rather than REL. */ |
Line 1445... | Line 1474... | ||
1445 | unsigned int use_rela_p:1; |
1474 | unsigned int use_rela_p:1; |
Line 1592... | Line 1621... | ||
1592 | 1621 | ||
1593 | /* Number of bytes to be deleted. */ |
1622 | /* Number of bytes to be deleted. */ |
1594 | int size; |
1623 | int size; |
Line -... | Line 1624... | ||
- | 1624 | }; |
|
- | 1625 | ||
- | 1626 | /* Note: the following are provided as inline functions rather than macros |
|
- | 1627 | because not all callers use the return value. A macro implementation |
|
- | 1628 | would use a comma expression, eg: "((ptr)->foo = val, TRUE)" and some |
|
- | 1629 | compilers will complain about comma expressions that have no effect. */ |
|
- | 1630 | static inline bfd_boolean |
|
- | 1631 | bfd_set_section_userdata (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, void * val) |
|
- | 1632 | { |
|
- | 1633 | ptr->userdata = val; |
|
- | 1634 | return TRUE; |
|
- | 1635 | } |
|
- | 1636 | ||
- | 1637 | static inline bfd_boolean |
|
- | 1638 | bfd_set_section_vma (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, bfd_vma val) |
|
- | 1639 | { |
|
- | 1640 | ptr->vma = ptr->lma = val; |
|
- | 1641 | ptr->user_set_vma = TRUE; |
|
- | 1642 | return TRUE; |
|
- | 1643 | } |
|
- | 1644 | ||
- | 1645 | static inline bfd_boolean |
|
- | 1646 | bfd_set_section_alignment (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, unsigned int val) |
|
- | 1647 | { |
|
- | 1648 | ptr->alignment_power = val; |
|
- | 1649 | return TRUE; |
|
1595 | }; |
1650 | } |
1596 | 1651 | ||
1597 | /* These sections are global, and are managed by BFD. The application |
1652 | /* These sections are global, and are managed by BFD. The application |
1598 | and target back end are not permitted to change the values in |
1653 | and target back end are not permitted to change the values in |
Line 1753... | Line 1808... | ||
1753 | 1808 | ||
Line 1754... | Line 1809... | ||
1754 | void bfd_section_list_clear (bfd *); |
1809 | void bfd_section_list_clear (bfd *); |
Line 1755... | Line 1810... | ||
1755 | 1810 | ||
Line 1756... | Line 1811... | ||
1756 | asection *bfd_get_section_by_name (bfd *abfd, const char *name); |
1811 | asection *bfd_get_section_by_name (bfd *abfd, const char *name); |
Line 1757... | Line 1812... | ||
1757 | 1812 | ||
1758 | asection *bfd_get_next_section_by_name (asection *sec); |
1813 | asection *bfd_get_next_section_by_name (bfd *ibfd, asection *sec); |
Line 1778... | Line 1833... | ||
1778 | asection *bfd_make_section_with_flags |
1833 | asection *bfd_make_section_with_flags |
1779 | (bfd *, const char *name, flagword flags); |
1834 | (bfd *, const char *name, flagword flags); |
Line 1780... | Line 1835... | ||
1780 | 1835 | ||
Line -... | Line 1836... | ||
- | 1836 | asection *bfd_make_section (bfd *, const char *name); |
|
- | 1837 | ||
1781 | asection *bfd_make_section (bfd *, const char *name); |
1838 | int bfd_get_next_section_id (void); |
1782 | 1839 | ||
Line 1783... | Line 1840... | ||
1783 | bfd_boolean bfd_set_section_flags |
1840 | bfd_boolean bfd_set_section_flags |
1784 | (bfd *abfd, asection *sec, flagword flags); |
1841 | (bfd *abfd, asection *sec, flagword flags); |
Line 1874... | Line 1931... | ||
1874 | #define bfd_mach_i960_xa 5 |
1931 | #define bfd_mach_i960_xa 5 |
1875 | #define bfd_mach_i960_ca 6 |
1932 | #define bfd_mach_i960_ca 6 |
1876 | #define bfd_mach_i960_jx 7 |
1933 | #define bfd_mach_i960_jx 7 |
1877 | #define bfd_mach_i960_hx 8 |
1934 | #define bfd_mach_i960_hx 8 |
Line 1878... | Line 1935... | ||
1878 | 1935 | ||
- | 1936 | bfd_arch_or1k, /* OpenRISC 1000 */ |
|
- | 1937 | #define bfd_mach_or1k 1 |
|
Line 1879... | Line 1938... | ||
1879 | bfd_arch_or32, /* OpenRISC 32 */ |
1938 | #define bfd_mach_or1knd 2 |
1880 | 1939 | ||
1881 | bfd_arch_sparc, /* SPARC */ |
1940 | bfd_arch_sparc, /* SPARC */ |
1882 | #define bfd_mach_sparc 1 |
1941 | #define bfd_mach_sparc 1 |
Line 1930... | Line 1989... | ||
1930 | #define bfd_mach_mips_loongson_3a 3003 |
1989 | #define bfd_mach_mips_loongson_3a 3003 |
1931 | #define bfd_mach_mips_sb1 12310201 /* octal 'SB', 01 */ |
1990 | #define bfd_mach_mips_sb1 12310201 /* octal 'SB', 01 */ |
1932 | #define bfd_mach_mips_octeon 6501 |
1991 | #define bfd_mach_mips_octeon 6501 |
1933 | #define bfd_mach_mips_octeonp 6601 |
1992 | #define bfd_mach_mips_octeonp 6601 |
1934 | #define bfd_mach_mips_octeon2 6502 |
1993 | #define bfd_mach_mips_octeon2 6502 |
- | 1994 | #define bfd_mach_mips_octeon3 6503 |
|
1935 | #define bfd_mach_mips_xlr 887682 /* decimal 'XLR' */ |
1995 | #define bfd_mach_mips_xlr 887682 /* decimal 'XLR' */ |
1936 | #define bfd_mach_mipsisa32 32 |
1996 | #define bfd_mach_mipsisa32 32 |
1937 | #define bfd_mach_mipsisa32r2 33 |
1997 | #define bfd_mach_mipsisa32r2 33 |
- | 1998 | #define bfd_mach_mipsisa32r3 34 |
|
- | 1999 | #define bfd_mach_mipsisa32r5 36 |
|
- | 2000 | #define bfd_mach_mipsisa32r6 37 |
|
1938 | #define bfd_mach_mipsisa64 64 |
2001 | #define bfd_mach_mipsisa64 64 |
1939 | #define bfd_mach_mipsisa64r2 65 |
2002 | #define bfd_mach_mipsisa64r2 65 |
- | 2003 | #define bfd_mach_mipsisa64r3 66 |
|
- | 2004 | #define bfd_mach_mipsisa64r5 68 |
|
- | 2005 | #define bfd_mach_mipsisa64r6 69 |
|
1940 | #define bfd_mach_mips_micromips 96 |
2006 | #define bfd_mach_mips_micromips 96 |
1941 | bfd_arch_i386, /* Intel 386 */ |
2007 | bfd_arch_i386, /* Intel 386 */ |
1942 | #define bfd_mach_i386_intel_syntax (1 << 0) |
2008 | #define bfd_mach_i386_intel_syntax (1 << 0) |
1943 | #define bfd_mach_i386_i8086 (1 << 1) |
2009 | #define bfd_mach_i386_i8086 (1 << 1) |
1944 | #define bfd_mach_i386_i386 (1 << 2) |
2010 | #define bfd_mach_i386_i386 (1 << 2) |
Line 1955... | Line 2021... | ||
1955 | #define bfd_mach_k1om_intel_syntax (bfd_mach_k1om | bfd_mach_i386_intel_syntax) |
2021 | #define bfd_mach_k1om_intel_syntax (bfd_mach_k1om | bfd_mach_i386_intel_syntax) |
1956 | #define bfd_mach_i386_nacl (1 << 7) |
2022 | #define bfd_mach_i386_nacl (1 << 7) |
1957 | #define bfd_mach_i386_i386_nacl (bfd_mach_i386_i386 | bfd_mach_i386_nacl) |
2023 | #define bfd_mach_i386_i386_nacl (bfd_mach_i386_i386 | bfd_mach_i386_nacl) |
1958 | #define bfd_mach_x86_64_nacl (bfd_mach_x86_64 | bfd_mach_i386_nacl) |
2024 | #define bfd_mach_x86_64_nacl (bfd_mach_x86_64 | bfd_mach_i386_nacl) |
1959 | #define bfd_mach_x64_32_nacl (bfd_mach_x64_32 | bfd_mach_i386_nacl) |
2025 | #define bfd_mach_x64_32_nacl (bfd_mach_x64_32 | bfd_mach_i386_nacl) |
- | 2026 | bfd_arch_iamcu, /* Intel MCU */ |
|
- | 2027 | #define bfd_mach_iamcu (1 << 8) |
|
- | 2028 | #define bfd_mach_i386_iamcu (bfd_mach_i386_i386 | bfd_mach_iamcu) |
|
- | 2029 | #define bfd_mach_i386_iamcu_intel_syntax (bfd_mach_i386_iamcu | bfd_mach_i386_intel_syntax) |
|
1960 | bfd_arch_we32k, /* AT&T WE32xxx */ |
2030 | bfd_arch_we32k, /* AT&T WE32xxx */ |
1961 | bfd_arch_tahoe, /* CCI/Harris Tahoe */ |
2031 | bfd_arch_tahoe, /* CCI/Harris Tahoe */ |
1962 | bfd_arch_i860, /* Intel 860 */ |
2032 | bfd_arch_i860, /* Intel 860 */ |
1963 | bfd_arch_i370, /* IBM 360/370 Mainframes */ |
2033 | bfd_arch_i370, /* IBM 360/370 Mainframes */ |
1964 | bfd_arch_romp, /* IBM ROMP PC/RT */ |
2034 | bfd_arch_romp, /* IBM ROMP PC/RT */ |
Line 2069... | Line 2139... | ||
2069 | #define bfd_mach_arm_5TE 9 |
2139 | #define bfd_mach_arm_5TE 9 |
2070 | #define bfd_mach_arm_XScale 10 |
2140 | #define bfd_mach_arm_XScale 10 |
2071 | #define bfd_mach_arm_ep9312 11 |
2141 | #define bfd_mach_arm_ep9312 11 |
2072 | #define bfd_mach_arm_iWMMXt 12 |
2142 | #define bfd_mach_arm_iWMMXt 12 |
2073 | #define bfd_mach_arm_iWMMXt2 13 |
2143 | #define bfd_mach_arm_iWMMXt2 13 |
- | 2144 | bfd_arch_nds32, /* Andes NDS32 */ |
|
- | 2145 | #define bfd_mach_n1 1 |
|
- | 2146 | #define bfd_mach_n1h 2 |
|
- | 2147 | #define bfd_mach_n1h_v2 3 |
|
- | 2148 | #define bfd_mach_n1h_v3 4 |
|
- | 2149 | #define bfd_mach_n1h_v3m 5 |
|
2074 | bfd_arch_ns32k, /* National Semiconductors ns32000 */ |
2150 | bfd_arch_ns32k, /* National Semiconductors ns32000 */ |
2075 | bfd_arch_w65, /* WDC 65816 */ |
2151 | bfd_arch_w65, /* WDC 65816 */ |
2076 | bfd_arch_tic30, /* Texas Instruments TMS320C30 */ |
2152 | bfd_arch_tic30, /* Texas Instruments TMS320C30 */ |
2077 | bfd_arch_tic4x, /* Texas Instruments TMS320C3X/4X */ |
2153 | bfd_arch_tic4x, /* Texas Instruments TMS320C3X/4X */ |
2078 | #define bfd_mach_tic3x 30 |
2154 | #define bfd_mach_tic3x 30 |
Line 2087... | Line 2163... | ||
2087 | #define bfd_mach_v850e1 '1' |
2163 | #define bfd_mach_v850e1 '1' |
2088 | #define bfd_mach_v850e2 0x4532 |
2164 | #define bfd_mach_v850e2 0x4532 |
2089 | #define bfd_mach_v850e2v3 0x45325633 |
2165 | #define bfd_mach_v850e2v3 0x45325633 |
2090 | #define bfd_mach_v850e3v5 0x45335635 /* ('E'|'3'|'V'|'5') */ |
2166 | #define bfd_mach_v850e3v5 0x45335635 /* ('E'|'3'|'V'|'5') */ |
2091 | bfd_arch_arc, /* ARC Cores */ |
2167 | bfd_arch_arc, /* ARC Cores */ |
2092 | #define bfd_mach_arc_5 5 |
2168 | #define bfd_mach_arc_a4 0 |
2093 | #define bfd_mach_arc_6 6 |
2169 | #define bfd_mach_arc_a5 1 |
2094 | #define bfd_mach_arc_7 7 |
2170 | #define bfd_mach_arc_arc600 2 |
- | 2171 | #define bfd_mach_arc_arc601 4 |
|
- | 2172 | #define bfd_mach_arc_arc700 3 |
|
2095 | #define bfd_mach_arc_8 8 |
2173 | #define bfd_mach_arc_arcv2 5 |
2096 | bfd_arch_m32c, /* Renesas M16C/M32C. */ |
2174 | bfd_arch_m32c, /* Renesas M16C/M32C. */ |
2097 | #define bfd_mach_m16c 0x75 |
2175 | #define bfd_mach_m16c 0x75 |
2098 | #define bfd_mach_m32c 0x78 |
2176 | #define bfd_mach_m32c 0x78 |
2099 | bfd_arch_m32r, /* Renesas M32R (formerly Mitsubishi M32R/D) */ |
2177 | bfd_arch_m32r, /* Renesas M32R (formerly Mitsubishi M32R/D) */ |
2100 | #define bfd_mach_m32r 1 /* For backwards compatibility. */ |
2178 | #define bfd_mach_m32r 1 /* For backwards compatibility. */ |
Line 2116... | Line 2194... | ||
2116 | #define bfd_mach_frvtomcat 499 /* fr500 prototype */ |
2194 | #define bfd_mach_frvtomcat 499 /* fr500 prototype */ |
2117 | #define bfd_mach_fr500 500 |
2195 | #define bfd_mach_fr500 500 |
2118 | #define bfd_mach_fr550 550 |
2196 | #define bfd_mach_fr550 550 |
2119 | bfd_arch_moxie, /* The moxie processor */ |
2197 | bfd_arch_moxie, /* The moxie processor */ |
2120 | #define bfd_mach_moxie 1 |
2198 | #define bfd_mach_moxie 1 |
- | 2199 | bfd_arch_ft32, /* The ft32 processor */ |
|
- | 2200 | #define bfd_mach_ft32 1 |
|
2121 | bfd_arch_mcore, |
2201 | bfd_arch_mcore, |
2122 | bfd_arch_mep, |
2202 | bfd_arch_mep, |
2123 | #define bfd_mach_mep 1 |
2203 | #define bfd_mach_mep 1 |
2124 | #define bfd_mach_mep_h1 0x6831 |
2204 | #define bfd_mach_mep_h1 0x6831 |
2125 | #define bfd_mach_mep_c5 0x6335 |
2205 | #define bfd_mach_mep_c5 0x6335 |
Line 2151... | Line 2231... | ||
2151 | #define bfd_mach_avr35 35 |
2231 | #define bfd_mach_avr35 35 |
2152 | #define bfd_mach_avr4 4 |
2232 | #define bfd_mach_avr4 4 |
2153 | #define bfd_mach_avr5 5 |
2233 | #define bfd_mach_avr5 5 |
2154 | #define bfd_mach_avr51 51 |
2234 | #define bfd_mach_avr51 51 |
2155 | #define bfd_mach_avr6 6 |
2235 | #define bfd_mach_avr6 6 |
- | 2236 | #define bfd_mach_avrtiny 100 |
|
2156 | #define bfd_mach_avrxmega1 101 |
2237 | #define bfd_mach_avrxmega1 101 |
2157 | #define bfd_mach_avrxmega2 102 |
2238 | #define bfd_mach_avrxmega2 102 |
2158 | #define bfd_mach_avrxmega3 103 |
2239 | #define bfd_mach_avrxmega3 103 |
2159 | #define bfd_mach_avrxmega4 104 |
2240 | #define bfd_mach_avrxmega4 104 |
2160 | #define bfd_mach_avrxmega5 105 |
2241 | #define bfd_mach_avrxmega5 105 |
Line 2180... | Line 2261... | ||
2180 | #define bfd_mach_s390_31 31 |
2261 | #define bfd_mach_s390_31 31 |
2181 | #define bfd_mach_s390_64 64 |
2262 | #define bfd_mach_s390_64 64 |
2182 | bfd_arch_score, /* Sunplus score */ |
2263 | bfd_arch_score, /* Sunplus score */ |
2183 | #define bfd_mach_score3 3 |
2264 | #define bfd_mach_score3 3 |
2184 | #define bfd_mach_score7 7 |
2265 | #define bfd_mach_score7 7 |
2185 | bfd_arch_openrisc, /* OpenRISC */ |
- | |
2186 | bfd_arch_mmix, /* Donald Knuth's educational processor. */ |
2266 | bfd_arch_mmix, /* Donald Knuth's educational processor. */ |
2187 | bfd_arch_xstormy16, |
2267 | bfd_arch_xstormy16, |
2188 | #define bfd_mach_xstormy16 1 |
2268 | #define bfd_mach_xstormy16 1 |
2189 | bfd_arch_msp430, /* Texas Instruments MSP430 architecture. */ |
2269 | bfd_arch_msp430, /* Texas Instruments MSP430 architecture. */ |
2190 | #define bfd_mach_msp11 11 |
2270 | #define bfd_mach_msp11 11 |
Line 2233... | Line 2313... | ||
2233 | #define bfd_mach_tilegx 1 |
2313 | #define bfd_mach_tilegx 1 |
2234 | #define bfd_mach_tilegx32 2 |
2314 | #define bfd_mach_tilegx32 2 |
2235 | bfd_arch_aarch64, /* AArch64 */ |
2315 | bfd_arch_aarch64, /* AArch64 */ |
2236 | #define bfd_mach_aarch64 0 |
2316 | #define bfd_mach_aarch64 0 |
2237 | #define bfd_mach_aarch64_ilp32 32 |
2317 | #define bfd_mach_aarch64_ilp32 32 |
2238 | bfd_arch_nios2, |
2318 | bfd_arch_nios2, /* Nios II */ |
2239 | #define bfd_mach_nios2 0 |
2319 | #define bfd_mach_nios2 0 |
- | 2320 | #define bfd_mach_nios2r1 1 |
|
- | 2321 | #define bfd_mach_nios2r2 2 |
|
- | 2322 | bfd_arch_visium, /* Visium */ |
|
- | 2323 | #define bfd_mach_visium 1 |
|
2240 | bfd_arch_last |
2324 | bfd_arch_last |
2241 | }; |
2325 | }; |
Line 2242... | Line 2326... | ||
2242 | 2326 | ||
2243 | typedef struct bfd_arch_info |
2327 | typedef struct bfd_arch_info |
Line 2300... | Line 2384... | ||
2300 | 2384 | ||
2301 | unsigned int bfd_arch_mach_octets_per_byte |
2385 | unsigned int bfd_arch_mach_octets_per_byte |
Line 2302... | Line 2386... | ||
2302 | (enum bfd_architecture arch, unsigned long machine); |
2386 | (enum bfd_architecture arch, unsigned long machine); |
- | 2387 | ||
2303 | 2388 | /* Extracted from reloc.c. */ |
|
2304 | /* Extracted from reloc.c. */ |
2389 | |
2305 | typedef enum bfd_reloc_status |
2390 | typedef enum bfd_reloc_status |
2306 | { |
2391 | { |
Line 2349... | Line 2434... | ||
2349 | reloc_howto_type *howto; |
2434 | reloc_howto_type *howto; |
Line 2350... | Line 2435... | ||
2350 | 2435 | ||
2351 | } |
2436 | } |
Line -... | Line 2437... | ||
- | 2437 | arelent; |
|
2352 | arelent; |
2438 | |
2353 | 2439 | ||
2354 | enum complain_overflow |
2440 | enum complain_overflow |
2355 | { |
2441 | { |
Line 2367... | Line 2453... | ||
2367 | 2453 | ||
2368 | /* Complain if the value overflows when considered as an |
2454 | /* Complain if the value overflows when considered as an |
2369 | unsigned number. */ |
2455 | unsigned number. */ |
2370 | complain_overflow_unsigned |
2456 | complain_overflow_unsigned |
- | 2457 | }; |
|
Line 2371... | Line 2458... | ||
2371 | }; |
2458 | struct bfd_symbol; /* Forward declaration. */ |
2372 | 2459 | ||
2373 | struct reloc_howto_struct |
2460 | struct reloc_howto_struct |
2374 | { |
2461 | { |
Line 2894... | Line 2981... | ||
2894 | /* microMIPS PC-relative relocations. */ |
2981 | /* microMIPS PC-relative relocations. */ |
2895 | BFD_RELOC_MICROMIPS_7_PCREL_S1, |
2982 | BFD_RELOC_MICROMIPS_7_PCREL_S1, |
2896 | BFD_RELOC_MICROMIPS_10_PCREL_S1, |
2983 | BFD_RELOC_MICROMIPS_10_PCREL_S1, |
2897 | BFD_RELOC_MICROMIPS_16_PCREL_S1, |
2984 | BFD_RELOC_MICROMIPS_16_PCREL_S1, |
Line -... | Line 2985... | ||
- | 2985 | ||
- | 2986 | /* MIPS PC-relative relocations. */ |
|
- | 2987 | BFD_RELOC_MIPS_21_PCREL_S2, |
|
- | 2988 | BFD_RELOC_MIPS_26_PCREL_S2, |
|
- | 2989 | BFD_RELOC_MIPS_18_PCREL_S3, |
|
- | 2990 | BFD_RELOC_MIPS_19_PCREL_S2, |
|
2898 | 2991 | ||
2899 | /* microMIPS versions of generic BFD relocs. */ |
2992 | /* microMIPS versions of generic BFD relocs. */ |
2900 | BFD_RELOC_MICROMIPS_GPREL16, |
2993 | BFD_RELOC_MICROMIPS_GPREL16, |
2901 | BFD_RELOC_MICROMIPS_HI16, |
2994 | BFD_RELOC_MICROMIPS_HI16, |
2902 | BFD_RELOC_MICROMIPS_HI16_S, |
2995 | BFD_RELOC_MICROMIPS_HI16_S, |
Line 2968... | Line 3061... | ||
2968 | 3061 | ||
2969 | /* Moxie ELF relocations. */ |
3062 | /* Moxie ELF relocations. */ |
Line -... | Line 3063... | ||
- | 3063 | BFD_RELOC_MOXIE_10_PCREL, |
|
- | 3064 | ||
- | 3065 | ||
- | 3066 | /* FT32 ELF relocations. */ |
|
- | 3067 | BFD_RELOC_FT32_10, |
|
- | 3068 | BFD_RELOC_FT32_20, |
|
- | 3069 | BFD_RELOC_FT32_17, |
|
2970 | BFD_RELOC_MOXIE_10_PCREL, |
3070 | BFD_RELOC_FT32_18, |
2971 | 3071 | ||
2972 | 3072 | ||
2973 | /* Fujitsu Frv Relocations. */ |
3073 | /* Fujitsu Frv Relocations. */ |
2974 | BFD_RELOC_FRV_LABEL16, |
3074 | BFD_RELOC_FRV_LABEL16, |
Line 3092... | Line 3192... | ||
3092 | BFD_RELOC_386_TLS_TPOFF32, |
3192 | BFD_RELOC_386_TLS_TPOFF32, |
3093 | BFD_RELOC_386_TLS_GOTDESC, |
3193 | BFD_RELOC_386_TLS_GOTDESC, |
3094 | BFD_RELOC_386_TLS_DESC_CALL, |
3194 | BFD_RELOC_386_TLS_DESC_CALL, |
3095 | BFD_RELOC_386_TLS_DESC, |
3195 | BFD_RELOC_386_TLS_DESC, |
3096 | BFD_RELOC_386_IRELATIVE, |
3196 | BFD_RELOC_386_IRELATIVE, |
- | 3197 | BFD_RELOC_386_GOT32X, |
|
Line 3097... | Line 3198... | ||
3097 | 3198 | ||
3098 | /* x86-64/elf relocations */ |
3199 | /* x86-64/elf relocations */ |
3099 | BFD_RELOC_X86_64_GOT32, |
3200 | BFD_RELOC_X86_64_GOT32, |
3100 | BFD_RELOC_X86_64_PLT32, |
3201 | BFD_RELOC_X86_64_PLT32, |
Line 3123... | Line 3224... | ||
3123 | BFD_RELOC_X86_64_TLSDESC_CALL, |
3224 | BFD_RELOC_X86_64_TLSDESC_CALL, |
3124 | BFD_RELOC_X86_64_TLSDESC, |
3225 | BFD_RELOC_X86_64_TLSDESC, |
3125 | BFD_RELOC_X86_64_IRELATIVE, |
3226 | BFD_RELOC_X86_64_IRELATIVE, |
3126 | BFD_RELOC_X86_64_PC32_BND, |
3227 | BFD_RELOC_X86_64_PC32_BND, |
3127 | BFD_RELOC_X86_64_PLT32_BND, |
3228 | BFD_RELOC_X86_64_PLT32_BND, |
- | 3229 | BFD_RELOC_X86_64_GOTPCRELX, |
|
- | 3230 | BFD_RELOC_X86_64_REX_GOTPCRELX, |
|
Line 3128... | Line 3231... | ||
3128 | 3231 | ||
3129 | /* ns32k relocations */ |
3232 | /* ns32k relocations */ |
3130 | BFD_RELOC_NS32K_IMM_8, |
3233 | BFD_RELOC_NS32K_IMM_8, |
3131 | BFD_RELOC_NS32K_IMM_16, |
3234 | BFD_RELOC_NS32K_IMM_16, |
Line 3198... | Line 3301... | ||
3198 | BFD_RELOC_PPC_VLE_SDAREL_LO16D, |
3301 | BFD_RELOC_PPC_VLE_SDAREL_LO16D, |
3199 | BFD_RELOC_PPC_VLE_SDAREL_HI16A, |
3302 | BFD_RELOC_PPC_VLE_SDAREL_HI16A, |
3200 | BFD_RELOC_PPC_VLE_SDAREL_HI16D, |
3303 | BFD_RELOC_PPC_VLE_SDAREL_HI16D, |
3201 | BFD_RELOC_PPC_VLE_SDAREL_HA16A, |
3304 | BFD_RELOC_PPC_VLE_SDAREL_HA16A, |
3202 | BFD_RELOC_PPC_VLE_SDAREL_HA16D, |
3305 | BFD_RELOC_PPC_VLE_SDAREL_HA16D, |
- | 3306 | BFD_RELOC_PPC_REL16DX_HA, |
|
3203 | BFD_RELOC_PPC64_HIGHER, |
3307 | BFD_RELOC_PPC64_HIGHER, |
3204 | BFD_RELOC_PPC64_HIGHER_S, |
3308 | BFD_RELOC_PPC64_HIGHER_S, |
3205 | BFD_RELOC_PPC64_HIGHEST, |
3309 | BFD_RELOC_PPC64_HIGHEST, |
3206 | BFD_RELOC_PPC64_HIGHEST_S, |
3310 | BFD_RELOC_PPC64_HIGHEST_S, |
3207 | BFD_RELOC_PPC64_TOC16_LO, |
3311 | BFD_RELOC_PPC64_TOC16_LO, |
Line 3223... | Line 3327... | ||
3223 | BFD_RELOC_PPC64_TOC16_LO_DS, |
3327 | BFD_RELOC_PPC64_TOC16_LO_DS, |
3224 | BFD_RELOC_PPC64_PLTGOT16_DS, |
3328 | BFD_RELOC_PPC64_PLTGOT16_DS, |
3225 | BFD_RELOC_PPC64_PLTGOT16_LO_DS, |
3329 | BFD_RELOC_PPC64_PLTGOT16_LO_DS, |
3226 | BFD_RELOC_PPC64_ADDR16_HIGH, |
3330 | BFD_RELOC_PPC64_ADDR16_HIGH, |
3227 | BFD_RELOC_PPC64_ADDR16_HIGHA, |
3331 | BFD_RELOC_PPC64_ADDR16_HIGHA, |
- | 3332 | BFD_RELOC_PPC64_ADDR64_LOCAL, |
|
- | 3333 | BFD_RELOC_PPC64_ENTRY, |
|
Line 3228... | Line 3334... | ||
3228 | 3334 | ||
3229 | /* PowerPC and PowerPC64 thread-local storage relocations. */ |
3335 | /* PowerPC and PowerPC64 thread-local storage relocations. */ |
3230 | BFD_RELOC_PPC_TLS, |
3336 | BFD_RELOC_PPC_TLS, |
3231 | BFD_RELOC_PPC_TLSGD, |
3337 | BFD_RELOC_PPC_TLSGD, |
Line 3536... | Line 3642... | ||
3536 | BFD_RELOC_SH_GOTFUNCDESC20, |
3642 | BFD_RELOC_SH_GOTFUNCDESC20, |
3537 | BFD_RELOC_SH_GOTOFFFUNCDESC, |
3643 | BFD_RELOC_SH_GOTOFFFUNCDESC, |
3538 | BFD_RELOC_SH_GOTOFFFUNCDESC20, |
3644 | BFD_RELOC_SH_GOTOFFFUNCDESC20, |
3539 | BFD_RELOC_SH_FUNCDESC, |
3645 | BFD_RELOC_SH_FUNCDESC, |
Line 3540... | Line 3646... | ||
3540 | 3646 | ||
- | 3647 | /* ARC relocs. */ |
|
- | 3648 | BFD_RELOC_ARC_NONE, |
|
- | 3649 | BFD_RELOC_ARC_8, |
|
- | 3650 | BFD_RELOC_ARC_16, |
|
- | 3651 | BFD_RELOC_ARC_24, |
|
- | 3652 | BFD_RELOC_ARC_32, |
|
- | 3653 | BFD_RELOC_ARC_N8, |
|
- | 3654 | BFD_RELOC_ARC_N16, |
|
- | 3655 | BFD_RELOC_ARC_N24, |
|
- | 3656 | BFD_RELOC_ARC_N32, |
|
- | 3657 | BFD_RELOC_ARC_SDA, |
|
- | 3658 | BFD_RELOC_ARC_SECTOFF, |
|
- | 3659 | BFD_RELOC_ARC_S21H_PCREL, |
|
- | 3660 | BFD_RELOC_ARC_S21W_PCREL, |
|
- | 3661 | BFD_RELOC_ARC_S25H_PCREL, |
|
- | 3662 | BFD_RELOC_ARC_S25W_PCREL, |
|
- | 3663 | BFD_RELOC_ARC_SDA32, |
|
3541 | /* ARC Cores relocs. |
3664 | BFD_RELOC_ARC_SDA_LDST, |
3542 | ARC 22 bit pc-relative branch. The lowest two bits must be zero and are |
3665 | BFD_RELOC_ARC_SDA_LDST1, |
3543 | not stored in the instruction. The high 20 bits are installed in bits 26 |
3666 | BFD_RELOC_ARC_SDA_LDST2, |
- | 3667 | BFD_RELOC_ARC_SDA16_LD, |
|
- | 3668 | BFD_RELOC_ARC_SDA16_LD1, |
|
3544 | through 7 of the instruction. */ |
3669 | BFD_RELOC_ARC_SDA16_LD2, |
3545 | BFD_RELOC_ARC_B22_PCREL, |
- | |
- | 3670 | BFD_RELOC_ARC_S13_PCREL, |
|
- | 3671 | BFD_RELOC_ARC_W, |
|
- | 3672 | BFD_RELOC_ARC_32_ME, |
|
- | 3673 | BFD_RELOC_ARC_32_ME_S, |
|
- | 3674 | BFD_RELOC_ARC_N32_ME, |
|
- | 3675 | BFD_RELOC_ARC_SECTOFF_ME, |
|
- | 3676 | BFD_RELOC_ARC_SDA32_ME, |
|
- | 3677 | BFD_RELOC_ARC_W_ME, |
|
- | 3678 | BFD_RELOC_AC_SECTOFF_U8, |
|
- | 3679 | BFD_RELOC_AC_SECTOFF_U8_1, |
|
- | 3680 | BFD_RELOC_AC_SECTOFF_U8_2, |
|
- | 3681 | BFD_RELOC_AC_SECTFOFF_S9, |
|
- | 3682 | BFD_RELOC_AC_SECTFOFF_S9_1, |
|
3546 | 3683 | BFD_RELOC_AC_SECTFOFF_S9_2, |
|
3547 | /* ARC 26 bit absolute branch. The lowest two bits must be zero and are not |
3684 | BFD_RELOC_ARC_SECTOFF_ME_1, |
- | 3685 | BFD_RELOC_ARC_SECTOFF_ME_2, |
|
- | 3686 | BFD_RELOC_ARC_SECTOFF_1, |
|
- | 3687 | BFD_RELOC_ARC_SECTOFF_2, |
|
- | 3688 | BFD_RELOC_ARC_SDA16_ST2, |
|
3548 | stored in the instruction. The high 24 bits are installed in bits 23 |
3689 | BFD_RELOC_ARC_32_PCREL, |
- | 3690 | BFD_RELOC_ARC_PC32, |
|
- | 3691 | BFD_RELOC_ARC_GOT32, |
|
- | 3692 | BFD_RELOC_ARC_GOTPC32, |
|
3549 | through 0. */ |
3693 | BFD_RELOC_ARC_PLT32, |
- | 3694 | BFD_RELOC_ARC_COPY, |
|
- | 3695 | BFD_RELOC_ARC_GLOB_DAT, |
|
- | 3696 | BFD_RELOC_ARC_JMP_SLOT, |
|
- | 3697 | BFD_RELOC_ARC_RELATIVE, |
|
- | 3698 | BFD_RELOC_ARC_GOTOFF, |
|
- | 3699 | BFD_RELOC_ARC_GOTPC, |
|
- | 3700 | BFD_RELOC_ARC_S21W_PCREL_PLT, |
|
- | 3701 | BFD_RELOC_ARC_S25H_PCREL_PLT, |
|
- | 3702 | BFD_RELOC_ARC_TLS_DTPMOD, |
|
- | 3703 | BFD_RELOC_ARC_TLS_TPOFF, |
|
- | 3704 | BFD_RELOC_ARC_TLS_GD_GOT, |
|
- | 3705 | BFD_RELOC_ARC_TLS_GD_LD, |
|
- | 3706 | BFD_RELOC_ARC_TLS_GD_CALL, |
|
- | 3707 | BFD_RELOC_ARC_TLS_IE_GOT, |
|
- | 3708 | BFD_RELOC_ARC_TLS_DTPOFF, |
|
- | 3709 | BFD_RELOC_ARC_TLS_DTPOFF_S9, |
|
- | 3710 | BFD_RELOC_ARC_TLS_LE_S9, |
|
- | 3711 | BFD_RELOC_ARC_TLS_LE_32, |
|
- | 3712 | BFD_RELOC_ARC_S25W_PCREL_PLT, |
|
Line 3550... | Line 3713... | ||
3550 | BFD_RELOC_ARC_B26, |
3713 | BFD_RELOC_ARC_S21H_PCREL_PLT, |
3551 | 3714 | ||
Line 3552... | Line 3715... | ||
3552 | /* ADI Blackfin 16 bit immediate absolute reloc. */ |
3715 | /* ADI Blackfin 16 bit immediate absolute reloc. */ |
Line 3792... | Line 3955... | ||
3792 | BFD_RELOC_M32R_GOT16_LO, |
3955 | BFD_RELOC_M32R_GOT16_LO, |
3793 | BFD_RELOC_M32R_GOTPC_HI_ULO, |
3956 | BFD_RELOC_M32R_GOTPC_HI_ULO, |
3794 | BFD_RELOC_M32R_GOTPC_HI_SLO, |
3957 | BFD_RELOC_M32R_GOTPC_HI_SLO, |
3795 | BFD_RELOC_M32R_GOTPC_LO, |
3958 | BFD_RELOC_M32R_GOTPC_LO, |
Line -... | Line 3959... | ||
- | 3959 | ||
- | 3960 | /* NDS32 relocs. |
|
- | 3961 | This is a 20 bit absolute address. */ |
|
- | 3962 | BFD_RELOC_NDS32_20, |
|
- | 3963 | ||
- | 3964 | /* This is a 9-bit pc-relative reloc with the right 1 bit assumed to be 0. */ |
|
- | 3965 | BFD_RELOC_NDS32_9_PCREL, |
|
- | 3966 | ||
- | 3967 | /* This is a 9-bit pc-relative reloc with the right 1 bit assumed to be 0. */ |
|
- | 3968 | BFD_RELOC_NDS32_WORD_9_PCREL, |
|
- | 3969 | ||
- | 3970 | /* This is an 15-bit reloc with the right 1 bit assumed to be 0. */ |
|
- | 3971 | BFD_RELOC_NDS32_15_PCREL, |
|
- | 3972 | ||
- | 3973 | /* This is an 17-bit reloc with the right 1 bit assumed to be 0. */ |
|
- | 3974 | BFD_RELOC_NDS32_17_PCREL, |
|
- | 3975 | ||
- | 3976 | /* This is a 25-bit reloc with the right 1 bit assumed to be 0. */ |
|
- | 3977 | BFD_RELOC_NDS32_25_PCREL, |
|
- | 3978 | ||
- | 3979 | /* This is a 20-bit reloc containing the high 20 bits of an address |
|
- | 3980 | used with the lower 12 bits */ |
|
- | 3981 | BFD_RELOC_NDS32_HI20, |
|
- | 3982 | ||
- | 3983 | /* This is a 12-bit reloc containing the lower 12 bits of an address |
|
- | 3984 | then shift right by 3. This is used with ldi,sdi... */ |
|
- | 3985 | BFD_RELOC_NDS32_LO12S3, |
|
- | 3986 | ||
- | 3987 | /* This is a 12-bit reloc containing the lower 12 bits of an address |
|
- | 3988 | then shift left by 2. This is used with lwi,swi... */ |
|
- | 3989 | BFD_RELOC_NDS32_LO12S2, |
|
- | 3990 | ||
- | 3991 | /* This is a 12-bit reloc containing the lower 12 bits of an address |
|
- | 3992 | then shift left by 1. This is used with lhi,shi... */ |
|
- | 3993 | BFD_RELOC_NDS32_LO12S1, |
|
- | 3994 | ||
- | 3995 | /* This is a 12-bit reloc containing the lower 12 bits of an address |
|
- | 3996 | then shift left by 0. This is used with lbisbi... */ |
|
- | 3997 | BFD_RELOC_NDS32_LO12S0, |
|
- | 3998 | ||
- | 3999 | /* This is a 12-bit reloc containing the lower 12 bits of an address |
|
- | 4000 | then shift left by 0. This is only used with branch relaxations */ |
|
- | 4001 | BFD_RELOC_NDS32_LO12S0_ORI, |
|
- | 4002 | ||
- | 4003 | /* This is a 15-bit reloc containing the small data area 18-bit signed offset |
|
- | 4004 | and shift left by 3 for use in ldi, sdi... */ |
|
- | 4005 | BFD_RELOC_NDS32_SDA15S3, |
|
- | 4006 | ||
- | 4007 | /* This is a 15-bit reloc containing the small data area 17-bit signed offset |
|
- | 4008 | and shift left by 2 for use in lwi, swi... */ |
|
- | 4009 | BFD_RELOC_NDS32_SDA15S2, |
|
- | 4010 | ||
- | 4011 | /* This is a 15-bit reloc containing the small data area 16-bit signed offset |
|
- | 4012 | and shift left by 1 for use in lhi, shi... */ |
|
- | 4013 | BFD_RELOC_NDS32_SDA15S1, |
|
- | 4014 | ||
- | 4015 | /* This is a 15-bit reloc containing the small data area 15-bit signed offset |
|
- | 4016 | and shift left by 0 for use in lbi, sbi... */ |
|
- | 4017 | BFD_RELOC_NDS32_SDA15S0, |
|
- | 4018 | ||
- | 4019 | /* This is a 16-bit reloc containing the small data area 16-bit signed offset |
|
- | 4020 | and shift left by 3 */ |
|
- | 4021 | BFD_RELOC_NDS32_SDA16S3, |
|
- | 4022 | ||
- | 4023 | /* This is a 17-bit reloc containing the small data area 17-bit signed offset |
|
- | 4024 | and shift left by 2 for use in lwi.gp, swi.gp... */ |
|
- | 4025 | BFD_RELOC_NDS32_SDA17S2, |
|
- | 4026 | ||
- | 4027 | /* This is a 18-bit reloc containing the small data area 18-bit signed offset |
|
- | 4028 | and shift left by 1 for use in lhi.gp, shi.gp... */ |
|
- | 4029 | BFD_RELOC_NDS32_SDA18S1, |
|
- | 4030 | ||
- | 4031 | /* This is a 19-bit reloc containing the small data area 19-bit signed offset |
|
- | 4032 | and shift left by 0 for use in lbi.gp, sbi.gp... */ |
|
- | 4033 | BFD_RELOC_NDS32_SDA19S0, |
|
- | 4034 | ||
- | 4035 | /* for PIC */ |
|
- | 4036 | BFD_RELOC_NDS32_GOT20, |
|
- | 4037 | BFD_RELOC_NDS32_9_PLTREL, |
|
- | 4038 | BFD_RELOC_NDS32_25_PLTREL, |
|
- | 4039 | BFD_RELOC_NDS32_COPY, |
|
- | 4040 | BFD_RELOC_NDS32_GLOB_DAT, |
|
- | 4041 | BFD_RELOC_NDS32_JMP_SLOT, |
|
- | 4042 | BFD_RELOC_NDS32_RELATIVE, |
|
- | 4043 | BFD_RELOC_NDS32_GOTOFF, |
|
- | 4044 | BFD_RELOC_NDS32_GOTOFF_HI20, |
|
- | 4045 | BFD_RELOC_NDS32_GOTOFF_LO12, |
|
- | 4046 | BFD_RELOC_NDS32_GOTPC20, |
|
- | 4047 | BFD_RELOC_NDS32_GOT_HI20, |
|
- | 4048 | BFD_RELOC_NDS32_GOT_LO12, |
|
- | 4049 | BFD_RELOC_NDS32_GOTPC_HI20, |
|
- | 4050 | BFD_RELOC_NDS32_GOTPC_LO12, |
|
- | 4051 | ||
- | 4052 | /* for relax */ |
|
- | 4053 | BFD_RELOC_NDS32_INSN16, |
|
- | 4054 | BFD_RELOC_NDS32_LABEL, |
|
- | 4055 | BFD_RELOC_NDS32_LONGCALL1, |
|
- | 4056 | BFD_RELOC_NDS32_LONGCALL2, |
|
- | 4057 | BFD_RELOC_NDS32_LONGCALL3, |
|
- | 4058 | BFD_RELOC_NDS32_LONGJUMP1, |
|
- | 4059 | BFD_RELOC_NDS32_LONGJUMP2, |
|
- | 4060 | BFD_RELOC_NDS32_LONGJUMP3, |
|
- | 4061 | BFD_RELOC_NDS32_LOADSTORE, |
|
- | 4062 | BFD_RELOC_NDS32_9_FIXED, |
|
- | 4063 | BFD_RELOC_NDS32_15_FIXED, |
|
- | 4064 | BFD_RELOC_NDS32_17_FIXED, |
|
- | 4065 | BFD_RELOC_NDS32_25_FIXED, |
|
- | 4066 | BFD_RELOC_NDS32_LONGCALL4, |
|
- | 4067 | BFD_RELOC_NDS32_LONGCALL5, |
|
- | 4068 | BFD_RELOC_NDS32_LONGCALL6, |
|
- | 4069 | BFD_RELOC_NDS32_LONGJUMP4, |
|
- | 4070 | BFD_RELOC_NDS32_LONGJUMP5, |
|
- | 4071 | BFD_RELOC_NDS32_LONGJUMP6, |
|
- | 4072 | BFD_RELOC_NDS32_LONGJUMP7, |
|
- | 4073 | ||
- | 4074 | /* for PIC */ |
|
- | 4075 | BFD_RELOC_NDS32_PLTREL_HI20, |
|
- | 4076 | BFD_RELOC_NDS32_PLTREL_LO12, |
|
- | 4077 | BFD_RELOC_NDS32_PLT_GOTREL_HI20, |
|
- | 4078 | BFD_RELOC_NDS32_PLT_GOTREL_LO12, |
|
- | 4079 | ||
- | 4080 | /* for floating point */ |
|
- | 4081 | BFD_RELOC_NDS32_SDA12S2_DP, |
|
- | 4082 | BFD_RELOC_NDS32_SDA12S2_SP, |
|
- | 4083 | BFD_RELOC_NDS32_LO12S2_DP, |
|
- | 4084 | BFD_RELOC_NDS32_LO12S2_SP, |
|
- | 4085 | ||
- | 4086 | /* for dwarf2 debug_line. */ |
|
- | 4087 | BFD_RELOC_NDS32_DWARF2_OP1, |
|
- | 4088 | BFD_RELOC_NDS32_DWARF2_OP2, |
|
- | 4089 | BFD_RELOC_NDS32_DWARF2_LEB, |
|
- | 4090 | ||
- | 4091 | /* for eliminate 16-bit instructions */ |
|
- | 4092 | BFD_RELOC_NDS32_UPDATE_TA, |
|
- | 4093 | ||
- | 4094 | /* for PIC object relaxation */ |
|
- | 4095 | BFD_RELOC_NDS32_PLT_GOTREL_LO20, |
|
- | 4096 | BFD_RELOC_NDS32_PLT_GOTREL_LO15, |
|
- | 4097 | BFD_RELOC_NDS32_PLT_GOTREL_LO19, |
|
- | 4098 | BFD_RELOC_NDS32_GOT_LO15, |
|
- | 4099 | BFD_RELOC_NDS32_GOT_LO19, |
|
- | 4100 | BFD_RELOC_NDS32_GOTOFF_LO15, |
|
- | 4101 | BFD_RELOC_NDS32_GOTOFF_LO19, |
|
- | 4102 | BFD_RELOC_NDS32_GOT15S2, |
|
- | 4103 | BFD_RELOC_NDS32_GOT17S2, |
|
- | 4104 | ||
- | 4105 | /* NDS32 relocs. |
|
- | 4106 | This is a 5 bit absolute address. */ |
|
- | 4107 | BFD_RELOC_NDS32_5, |
|
- | 4108 | ||
- | 4109 | /* This is a 10-bit unsigned pc-relative reloc with the right 1 bit assumed to be 0. */ |
|
- | 4110 | BFD_RELOC_NDS32_10_UPCREL, |
|
- | 4111 | ||
- | 4112 | /* If fp were omitted, fp can used as another gp. */ |
|
- | 4113 | BFD_RELOC_NDS32_SDA_FP7U2_RELA, |
|
- | 4114 | ||
- | 4115 | /* relaxation relative relocation types */ |
|
- | 4116 | BFD_RELOC_NDS32_RELAX_ENTRY, |
|
- | 4117 | BFD_RELOC_NDS32_GOT_SUFF, |
|
- | 4118 | BFD_RELOC_NDS32_GOTOFF_SUFF, |
|
- | 4119 | BFD_RELOC_NDS32_PLT_GOT_SUFF, |
|
- | 4120 | BFD_RELOC_NDS32_MULCALL_SUFF, |
|
- | 4121 | BFD_RELOC_NDS32_PTR, |
|
- | 4122 | BFD_RELOC_NDS32_PTR_COUNT, |
|
- | 4123 | BFD_RELOC_NDS32_PTR_RESOLVED, |
|
- | 4124 | BFD_RELOC_NDS32_PLTBLOCK, |
|
- | 4125 | BFD_RELOC_NDS32_RELAX_REGION_BEGIN, |
|
- | 4126 | BFD_RELOC_NDS32_RELAX_REGION_END, |
|
- | 4127 | BFD_RELOC_NDS32_MINUEND, |
|
- | 4128 | BFD_RELOC_NDS32_SUBTRAHEND, |
|
- | 4129 | BFD_RELOC_NDS32_DIFF8, |
|
- | 4130 | BFD_RELOC_NDS32_DIFF16, |
|
- | 4131 | BFD_RELOC_NDS32_DIFF32, |
|
- | 4132 | BFD_RELOC_NDS32_DIFF_ULEB128, |
|
- | 4133 | BFD_RELOC_NDS32_EMPTY, |
|
- | 4134 | ||
- | 4135 | /* This is a 25 bit absolute address. */ |
|
- | 4136 | BFD_RELOC_NDS32_25_ABS, |
|
- | 4137 | ||
- | 4138 | /* For ex9 and ifc using. */ |
|
- | 4139 | BFD_RELOC_NDS32_DATA, |
|
- | 4140 | BFD_RELOC_NDS32_TRAN, |
|
- | 4141 | BFD_RELOC_NDS32_17IFC_PCREL, |
|
- | 4142 | BFD_RELOC_NDS32_10IFCU_PCREL, |
|
- | 4143 | ||
- | 4144 | /* For TLS. */ |
|
- | 4145 | BFD_RELOC_NDS32_TPOFF, |
|
- | 4146 | BFD_RELOC_NDS32_TLS_LE_HI20, |
|
- | 4147 | BFD_RELOC_NDS32_TLS_LE_LO12, |
|
- | 4148 | BFD_RELOC_NDS32_TLS_LE_ADD, |
|
- | 4149 | BFD_RELOC_NDS32_TLS_LE_LS, |
|
- | 4150 | BFD_RELOC_NDS32_GOTTPOFF, |
|
- | 4151 | BFD_RELOC_NDS32_TLS_IE_HI20, |
|
- | 4152 | BFD_RELOC_NDS32_TLS_IE_LO12S2, |
|
- | 4153 | BFD_RELOC_NDS32_TLS_TPOFF, |
|
- | 4154 | BFD_RELOC_NDS32_TLS_LE_20, |
|
- | 4155 | BFD_RELOC_NDS32_TLS_LE_15S0, |
|
- | 4156 | BFD_RELOC_NDS32_TLS_LE_15S1, |
|
- | 4157 | BFD_RELOC_NDS32_TLS_LE_15S2, |
|
3796 | 4158 | ||
3797 | /* This is a 9-bit reloc */ |
4159 | /* This is a 9-bit reloc */ |
Line 3798... | Line 4160... | ||
3798 | BFD_RELOC_V850_9_PCREL, |
4160 | BFD_RELOC_V850_9_PCREL, |
3799 | 4161 | ||
Line 4249... | Line 4611... | ||
4249 | 4611 | ||
4250 | /* This is a 8 bit reloc for the AVR that stores bits 16..23 of a symbol |
4612 | /* This is a 8 bit reloc for the AVR that stores bits 16..23 of a symbol |
4251 | in .byte hlo8(symbol) */ |
4613 | in .byte hlo8(symbol) */ |
Line -... | Line 4614... | ||
- | 4614 | BFD_RELOC_AVR_8_HLO, |
|
- | 4615 | ||
- | 4616 | /* AVR relocations to mark the difference of two local symbols. |
|
- | 4617 | These are only needed to support linker relaxation and can be ignored |
|
- | 4618 | when not relaxing. The field is set to the value of the difference |
|
- | 4619 | assuming no relaxation. The relocation encodes the position of the |
|
- | 4620 | second symbol so the linker can determine whether to adjust the field |
|
- | 4621 | value. */ |
|
- | 4622 | BFD_RELOC_AVR_DIFF8, |
|
- | 4623 | BFD_RELOC_AVR_DIFF16, |
|
- | 4624 | BFD_RELOC_AVR_DIFF32, |
|
- | 4625 | ||
- | 4626 | /* This is a 7 bit reloc for the AVR that stores SRAM address for 16bit |
|
- | 4627 | lds and sts instructions supported only tiny core. */ |
|
- | 4628 | BFD_RELOC_AVR_LDS_STS_16, |
|
- | 4629 | ||
- | 4630 | /* This is a 6 bit reloc for the AVR that stores an I/O register |
|
- | 4631 | number for the IN and OUT instructions */ |
|
- | 4632 | BFD_RELOC_AVR_PORT6, |
|
- | 4633 | ||
- | 4634 | /* This is a 5 bit reloc for the AVR that stores an I/O register |
|
- | 4635 | number for the SBIC, SBIS, SBI and CBI instructions */ |
|
4252 | BFD_RELOC_AVR_8_HLO, |
4636 | BFD_RELOC_AVR_PORT5, |
4253 | 4637 | ||
4254 | /* Renesas RL78 Relocations. */ |
4638 | /* Renesas RL78 Relocations. */ |
4255 | BFD_RELOC_RL78_NEG8, |
4639 | BFD_RELOC_RL78_NEG8, |
4256 | BFD_RELOC_RL78_NEG16, |
4640 | BFD_RELOC_RL78_NEG16, |
Line 4283... | Line 4667... | ||
4283 | BFD_RELOC_RL78_RELAX, |
4667 | BFD_RELOC_RL78_RELAX, |
4284 | BFD_RELOC_RL78_HI16, |
4668 | BFD_RELOC_RL78_HI16, |
4285 | BFD_RELOC_RL78_HI8, |
4669 | BFD_RELOC_RL78_HI8, |
4286 | BFD_RELOC_RL78_LO16, |
4670 | BFD_RELOC_RL78_LO16, |
4287 | BFD_RELOC_RL78_CODE, |
4671 | BFD_RELOC_RL78_CODE, |
- | 4672 | BFD_RELOC_RL78_SADDR, |
|
Line 4288... | Line 4673... | ||
4288 | 4673 | ||
4289 | /* Renesas RX Relocations. */ |
4674 | /* Renesas RX Relocations. */ |
4290 | BFD_RELOC_RX_NEG8, |
4675 | BFD_RELOC_RX_NEG8, |
4291 | BFD_RELOC_RX_NEG16, |
4676 | BFD_RELOC_RX_NEG16, |
Line 4912... | Line 5297... | ||
4912 | BFD_RELOC_860_HAPC, |
5297 | BFD_RELOC_860_HAPC, |
4913 | BFD_RELOC_860_HIGH, |
5298 | BFD_RELOC_860_HIGH, |
4914 | BFD_RELOC_860_HIGOT, |
5299 | BFD_RELOC_860_HIGOT, |
4915 | BFD_RELOC_860_HIGOTOFF, |
5300 | BFD_RELOC_860_HIGOTOFF, |
Line 4916... | Line 5301... | ||
4916 | 5301 | ||
4917 | /* OpenRISC Relocations. */ |
5302 | /* OpenRISC 1000 Relocations. */ |
- | 5303 | BFD_RELOC_OR1K_REL_26, |
|
- | 5304 | BFD_RELOC_OR1K_GOTPC_HI16, |
|
- | 5305 | BFD_RELOC_OR1K_GOTPC_LO16, |
|
4918 | BFD_RELOC_OPENRISC_ABS_26, |
5306 | BFD_RELOC_OR1K_GOT16, |
- | 5307 | BFD_RELOC_OR1K_PLT26, |
|
- | 5308 | BFD_RELOC_OR1K_GOTOFF_HI16, |
|
- | 5309 | BFD_RELOC_OR1K_GOTOFF_LO16, |
|
- | 5310 | BFD_RELOC_OR1K_COPY, |
|
- | 5311 | BFD_RELOC_OR1K_GLOB_DAT, |
|
- | 5312 | BFD_RELOC_OR1K_JMP_SLOT, |
|
- | 5313 | BFD_RELOC_OR1K_RELATIVE, |
|
- | 5314 | BFD_RELOC_OR1K_TLS_GD_HI16, |
|
- | 5315 | BFD_RELOC_OR1K_TLS_GD_LO16, |
|
- | 5316 | BFD_RELOC_OR1K_TLS_LDM_HI16, |
|
- | 5317 | BFD_RELOC_OR1K_TLS_LDM_LO16, |
|
- | 5318 | BFD_RELOC_OR1K_TLS_LDO_HI16, |
|
- | 5319 | BFD_RELOC_OR1K_TLS_LDO_LO16, |
|
- | 5320 | BFD_RELOC_OR1K_TLS_IE_HI16, |
|
- | 5321 | BFD_RELOC_OR1K_TLS_IE_LO16, |
|
- | 5322 | BFD_RELOC_OR1K_TLS_LE_HI16, |
|
- | 5323 | BFD_RELOC_OR1K_TLS_LE_LO16, |
|
- | 5324 | BFD_RELOC_OR1K_TLS_TPOFF, |
|
- | 5325 | BFD_RELOC_OR1K_TLS_DTPOFF, |
|
Line 4919... | Line 5326... | ||
4919 | BFD_RELOC_OPENRISC_REL_26, |
5326 | BFD_RELOC_OR1K_TLS_DTPMOD, |
4920 | 5327 | ||
4921 | /* H8 elf Relocations. */ |
5328 | /* H8 elf Relocations. */ |
4922 | BFD_RELOC_H8_DIR16A8, |
5329 | BFD_RELOC_H8_DIR16A8, |
Line 5022... | Line 5429... | ||
5022 | BFD_RELOC_NIOS2_COPY, |
5429 | BFD_RELOC_NIOS2_COPY, |
5023 | BFD_RELOC_NIOS2_GLOB_DAT, |
5430 | BFD_RELOC_NIOS2_GLOB_DAT, |
5024 | BFD_RELOC_NIOS2_JUMP_SLOT, |
5431 | BFD_RELOC_NIOS2_JUMP_SLOT, |
5025 | BFD_RELOC_NIOS2_RELATIVE, |
5432 | BFD_RELOC_NIOS2_RELATIVE, |
5026 | BFD_RELOC_NIOS2_GOTOFF, |
5433 | BFD_RELOC_NIOS2_GOTOFF, |
- | 5434 | BFD_RELOC_NIOS2_CALL26_NOAT, |
|
- | 5435 | BFD_RELOC_NIOS2_GOT_LO, |
|
- | 5436 | BFD_RELOC_NIOS2_GOT_HA, |
|
- | 5437 | BFD_RELOC_NIOS2_CALL_LO, |
|
- | 5438 | BFD_RELOC_NIOS2_CALL_HA, |
|
- | 5439 | BFD_RELOC_NIOS2_R2_S12, |
|
- | 5440 | BFD_RELOC_NIOS2_R2_I10_1_PCREL, |
|
- | 5441 | BFD_RELOC_NIOS2_R2_T1I7_1_PCREL, |
|
- | 5442 | BFD_RELOC_NIOS2_R2_T1I7_2, |
|
- | 5443 | BFD_RELOC_NIOS2_R2_T2I4, |
|
- | 5444 | BFD_RELOC_NIOS2_R2_T2I4_1, |
|
- | 5445 | BFD_RELOC_NIOS2_R2_T2I4_2, |
|
- | 5446 | BFD_RELOC_NIOS2_R2_X1I7_2, |
|
- | 5447 | BFD_RELOC_NIOS2_R2_X2L5, |
|
- | 5448 | BFD_RELOC_NIOS2_R2_F1I5_2, |
|
- | 5449 | BFD_RELOC_NIOS2_R2_L5I4X1, |
|
- | 5450 | BFD_RELOC_NIOS2_R2_T1X1I6, |
|
- | 5451 | BFD_RELOC_NIOS2_R2_T1X1I6_2, |
|
Line 5027... | Line 5452... | ||
5027 | 5452 | ||
5028 | /* IQ2000 Relocations. */ |
5453 | /* IQ2000 Relocations. */ |
5029 | BFD_RELOC_IQ2000_OFFSET_16, |
5454 | BFD_RELOC_IQ2000_OFFSET_16, |
5030 | BFD_RELOC_IQ2000_OFFSET_21, |
5455 | BFD_RELOC_IQ2000_OFFSET_21, |
Line 5408... | Line 5833... | ||
5408 | /* Unsigned 12 bit byte offset for 32 bit load/store from the page of |
5833 | /* Unsigned 12 bit byte offset for 32 bit load/store from the page of |
5409 | the GOT entry for this symbol. Used in conjunction with |
5834 | the GOT entry for this symbol. Used in conjunction with |
5410 | BFD_RELOC_AARCH64_ADR_GOTPAGE. Valid in ILP32 ABI only. */ |
5835 | BFD_RELOC_AARCH64_ADR_GOTPAGE. Valid in ILP32 ABI only. */ |
5411 | BFD_RELOC_AARCH64_LD32_GOT_LO12_NC, |
5836 | BFD_RELOC_AARCH64_LD32_GOT_LO12_NC, |
Line -... | Line 5837... | ||
- | 5837 | ||
- | 5838 | /* Unsigned 16 bit byte offset for 64 bit load/store from the GOT entry |
|
- | 5839 | for this symbol. Valid in LP64 ABI only. */ |
|
- | 5840 | BFD_RELOC_AARCH64_MOVW_GOTOFF_G0_NC, |
|
- | 5841 | ||
- | 5842 | /* Unsigned 16 bit byte higher offset for 64 bit load/store from the GOT entry |
|
- | 5843 | for this symbol. Valid in LP64 ABI only. */ |
|
- | 5844 | BFD_RELOC_AARCH64_MOVW_GOTOFF_G1, |
|
- | 5845 | ||
- | 5846 | /* Unsigned 15 bit byte offset for 64 bit load/store from the page of |
|
- | 5847 | the GOT entry for this symbol. Valid in LP64 ABI only. */ |
|
- | 5848 | BFD_RELOC_AARCH64_LD64_GOTOFF_LO15, |
|
- | 5849 | ||
- | 5850 | /* Scaled 14 bit byte offset to the page base of the global offset table. */ |
|
- | 5851 | BFD_RELOC_AARCH64_LD32_GOTPAGE_LO14, |
|
- | 5852 | ||
- | 5853 | /* Scaled 15 bit byte offset to the page base of the global offset table. */ |
|
- | 5854 | BFD_RELOC_AARCH64_LD64_GOTPAGE_LO15, |
|
5412 | 5855 | ||
5413 | /* Get to the page base of the global offset table entry for a symbols |
5856 | /* Get to the page base of the global offset table entry for a symbols |
5414 | tls_index structure as part of an adrp instruction using a 21 bit PC |
5857 | tls_index structure as part of an adrp instruction using a 21 bit PC |
5415 | relative value. Used in conjunction with |
5858 | relative value. Used in conjunction with |
5416 | BFD_RELOC_AARCH64_TLSGD_ADD_LO12_NC. */ |
5859 | BFD_RELOC_AARCH64_TLSGD_ADD_LO12_NC. */ |
Line -... | Line 5860... | ||
- | 5860 | BFD_RELOC_AARCH64_TLSGD_ADR_PAGE21, |
|
- | 5861 | ||
- | 5862 | /* AArch64 TLS General Dynamic */ |
|
5417 | BFD_RELOC_AARCH64_TLSGD_ADR_PAGE21, |
5863 | BFD_RELOC_AARCH64_TLSGD_ADR_PREL21, |
5418 | 5864 | ||
5419 | /* Unsigned 12 bit byte offset to global offset table entry for a symbols |
5865 | /* Unsigned 12 bit byte offset to global offset table entry for a symbols |
5420 | tls_index structure. Used in conjunction with |
5866 | tls_index structure. Used in conjunction with |
Line 5421... | Line 5867... | ||
5421 | BFD_RELOC_AARCH64_TLSGD_ADR_PAGE21. */ |
5867 | BFD_RELOC_AARCH64_TLSGD_ADR_PAGE21. */ |
5422 | BFD_RELOC_AARCH64_TLSGD_ADD_LO12_NC, |
5868 | BFD_RELOC_AARCH64_TLSGD_ADD_LO12_NC, |
Line 5423... | Line 5869... | ||
5423 | 5869 | ||
5424 | /* AArch64 TLS INITIAL EXEC relocation. */ |
5870 | /* AArch64 TLS General Dynamic relocation. */ |
Line 5425... | Line 5871... | ||
5425 | BFD_RELOC_AARCH64_TLSIE_MOVW_GOTTPREL_G1, |
5871 | BFD_RELOC_AARCH64_TLSGD_MOVW_G0_NC, |
5426 | 5872 | ||
Line 5427... | Line 5873... | ||
5427 | /* AArch64 TLS INITIAL EXEC relocation. */ |
5873 | /* AArch64 TLS General Dynamic relocation. */ |
Line 5437... | Line 5883... | ||
5437 | BFD_RELOC_AARCH64_TLSIE_LD32_GOTTPREL_LO12_NC, |
5883 | BFD_RELOC_AARCH64_TLSIE_LD32_GOTTPREL_LO12_NC, |
Line 5438... | Line 5884... | ||
5438 | 5884 | ||
5439 | /* AArch64 TLS INITIAL EXEC relocation. */ |
5885 | /* AArch64 TLS INITIAL EXEC relocation. */ |
Line -... | Line 5886... | ||
- | 5886 | BFD_RELOC_AARCH64_TLSIE_LD_GOTTPREL_PREL19, |
|
- | 5887 | ||
- | 5888 | /* AArch64 TLS INITIAL EXEC relocation. */ |
|
- | 5889 | BFD_RELOC_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC, |
|
- | 5890 | ||
- | 5891 | /* AArch64 TLS INITIAL EXEC relocation. */ |
|
- | 5892 | BFD_RELOC_AARCH64_TLSIE_MOVW_GOTTPREL_G1, |
|
- | 5893 | ||
- | 5894 | /* bit[23:12] of byte offset to module TLS base address. */ |
|
- | 5895 | BFD_RELOC_AARCH64_TLSLD_ADD_DTPREL_HI12, |
|
- | 5896 | ||
- | 5897 | /* Unsigned 12 bit byte offset to module TLS base address. */ |
|
- | 5898 | BFD_RELOC_AARCH64_TLSLD_ADD_DTPREL_LO12, |
|
- | 5899 | ||
- | 5900 | /* No overflow check version of BFD_RELOC_AARCH64_TLSLD_ADD_DTPREL_LO12. */ |
|
- | 5901 | BFD_RELOC_AARCH64_TLSLD_ADD_DTPREL_LO12_NC, |
|
- | 5902 | ||
- | 5903 | /* Unsigned 12 bit byte offset to global offset table entry for a symbols |
|
- | 5904 | tls_index structure. Used in conjunction with |
|
- | 5905 | BFD_RELOC_AARCH64_TLSLD_ADR_PAGE21. */ |
|
- | 5906 | BFD_RELOC_AARCH64_TLSLD_ADD_LO12_NC, |
|
- | 5907 | ||
- | 5908 | /* GOT entry page address for AArch64 TLS Local Dynamic, used with ADRP |
|
- | 5909 | instruction. */ |
|
- | 5910 | BFD_RELOC_AARCH64_TLSLD_ADR_PAGE21, |
|
- | 5911 | ||
- | 5912 | /* GOT entry address for AArch64 TLS Local Dynamic, used with ADR instruction. */ |
|
- | 5913 | BFD_RELOC_AARCH64_TLSLD_ADR_PREL21, |
|
- | 5914 | ||
- | 5915 | /* bit[11:1] of byte offset to module TLS base address, encoded in ldst |
|
- | 5916 | instructions. */ |
|
- | 5917 | BFD_RELOC_AARCH64_TLSLD_LDST16_DTPREL_LO12, |
|
- | 5918 | ||
- | 5919 | /* Similar as BFD_RELOC_AARCH64_TLSLD_LDST16_DTPREL_LO12, but no overflow check. */ |
|
- | 5920 | BFD_RELOC_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC, |
|
- | 5921 | ||
- | 5922 | /* bit[11:2] of byte offset to module TLS base address, encoded in ldst |
|
- | 5923 | instructions. */ |
|
- | 5924 | BFD_RELOC_AARCH64_TLSLD_LDST32_DTPREL_LO12, |
|
- | 5925 | ||
- | 5926 | /* Similar as BFD_RELOC_AARCH64_TLSLD_LDST32_DTPREL_LO12, but no overflow check. */ |
|
- | 5927 | BFD_RELOC_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC, |
|
- | 5928 | ||
- | 5929 | /* bit[11:3] of byte offset to module TLS base address, encoded in ldst |
|
- | 5930 | instructions. */ |
|
- | 5931 | BFD_RELOC_AARCH64_TLSLD_LDST64_DTPREL_LO12, |
|
- | 5932 | ||
- | 5933 | /* Similar as BFD_RELOC_AARCH64_TLSLD_LDST64_DTPREL_LO12, but no overflow check. */ |
|
- | 5934 | BFD_RELOC_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC, |
|
- | 5935 | ||
- | 5936 | /* bit[11:0] of byte offset to module TLS base address, encoded in ldst |
|
- | 5937 | instructions. */ |
|
- | 5938 | BFD_RELOC_AARCH64_TLSLD_LDST8_DTPREL_LO12, |
|
- | 5939 | ||
- | 5940 | /* Similar as BFD_RELOC_AARCH64_TLSLD_LDST8_DTPREL_LO12, but no overflow check. */ |
|
- | 5941 | BFD_RELOC_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC, |
|
- | 5942 | ||
- | 5943 | /* bit[15:0] of byte offset to module TLS base address. */ |
|
- | 5944 | BFD_RELOC_AARCH64_TLSLD_MOVW_DTPREL_G0, |
|
- | 5945 | ||
- | 5946 | /* No overflow check version of BFD_RELOC_AARCH64_TLSLD_MOVW_DTPREL_G0 */ |
|
- | 5947 | BFD_RELOC_AARCH64_TLSLD_MOVW_DTPREL_G0_NC, |
|
- | 5948 | ||
- | 5949 | /* bit[31:16] of byte offset to module TLS base address. */ |
|
- | 5950 | BFD_RELOC_AARCH64_TLSLD_MOVW_DTPREL_G1, |
|
- | 5951 | ||
- | 5952 | /* No overflow check version of BFD_RELOC_AARCH64_TLSLD_MOVW_DTPREL_G1 */ |
|
- | 5953 | BFD_RELOC_AARCH64_TLSLD_MOVW_DTPREL_G1_NC, |
|
- | 5954 | ||
- | 5955 | /* bit[47:32] of byte offset to module TLS base address. */ |
|
5440 | BFD_RELOC_AARCH64_TLSIE_LD_GOTTPREL_PREL19, |
5956 | BFD_RELOC_AARCH64_TLSLD_MOVW_DTPREL_G2, |
5441 | 5957 | ||
Line 5442... | Line 5958... | ||
5442 | /* AArch64 TLS LOCAL EXEC relocation. */ |
5958 | /* AArch64 TLS LOCAL EXEC relocation. */ |
5443 | BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G2, |
5959 | BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G2, |
Line 5536... | Line 6052... | ||
5536 | 6052 | ||
5537 | /* AArch64 unspecified load/store instruction, holding bits 0 to 11 of the |
6053 | /* AArch64 unspecified load/store instruction, holding bits 0 to 11 of the |
5538 | address. Used in conjunction with BFD_RELOC_AARCH64_ADR_HI21_PCREL. */ |
6054 | address. Used in conjunction with BFD_RELOC_AARCH64_ADR_HI21_PCREL. */ |
Line -... | Line 6055... | ||
- | 6055 | BFD_RELOC_AARCH64_LDST_LO12, |
|
- | 6056 | ||
- | 6057 | /* AArch64 pseudo relocation code for TLS local dynamic mode. It's to be |
|
- | 6058 | used internally by the AArch64 assembler and not (currently) written to |
|
- | 6059 | any object files. */ |
|
- | 6060 | BFD_RELOC_AARCH64_TLSLD_LDST_DTPREL_LO12, |
|
- | 6061 | ||
- | 6062 | /* Similar as BFD_RELOC_AARCH64_TLSLD_LDST_DTPREL_LO12, but no overflow check. */ |
|
5539 | BFD_RELOC_AARCH64_LDST_LO12, |
6063 | BFD_RELOC_AARCH64_TLSLD_LDST_DTPREL_LO12_NC, |
5540 | 6064 | ||
5541 | /* AArch64 pseudo relocation code to be used internally by the AArch64 |
6065 | /* AArch64 pseudo relocation code to be used internally by the AArch64 |
Line 5542... | Line 6066... | ||
5542 | assembler and not (currently) written to any object files. */ |
6066 | assembler and not (currently) written to any object files. */ |
Line 5760... | Line 6284... | ||
5760 | /* Adapteva EPIPHANY - 11 bit sign-magnitude number (ld/st displacement) */ |
6284 | /* Adapteva EPIPHANY - 11 bit sign-magnitude number (ld/st displacement) */ |
5761 | BFD_RELOC_EPIPHANY_IMM11, |
6285 | BFD_RELOC_EPIPHANY_IMM11, |
Line 5762... | Line 6286... | ||
5762 | 6286 | ||
5763 | /* Adapteva EPIPHANY - 8 bit immediate for 16 bit mov instruction. */ |
6287 | /* Adapteva EPIPHANY - 8 bit immediate for 16 bit mov instruction. */ |
- | 6288 | BFD_RELOC_EPIPHANY_IMM8, |
|
- | 6289 | ||
- | 6290 | /* Visium Relocations. */ |
|
- | 6291 | BFD_RELOC_VISIUM_HI16, |
|
- | 6292 | BFD_RELOC_VISIUM_LO16, |
|
- | 6293 | BFD_RELOC_VISIUM_IM16, |
|
- | 6294 | BFD_RELOC_VISIUM_REL16, |
|
- | 6295 | BFD_RELOC_VISIUM_HI16_PCREL, |
|
- | 6296 | BFD_RELOC_VISIUM_LO16_PCREL, |
|
5764 | BFD_RELOC_EPIPHANY_IMM8, |
6297 | BFD_RELOC_VISIUM_IM16_PCREL, |
- | 6298 | BFD_RELOC_UNUSED }; |
|
5765 | BFD_RELOC_UNUSED }; |
6299 | |
5766 | typedef enum bfd_reloc_code_real bfd_reloc_code_real_type; |
6300 | typedef enum bfd_reloc_code_real bfd_reloc_code_real_type; |
5767 | reloc_howto_type *bfd_reloc_type_lookup |
6301 | reloc_howto_type *bfd_reloc_type_lookup |
5768 | (bfd *abfd, bfd_reloc_code_real_type code); |
6302 | (bfd *abfd, bfd_reloc_code_real_type code); |
5769 | reloc_howto_type *bfd_reloc_name_lookup |
6303 | reloc_howto_type *bfd_reloc_name_lookup |
Line 5958... | Line 6492... | ||
5958 | #define bfd_copy_private_symbol_data(ibfd, isymbol, obfd, osymbol) \ |
6492 | #define bfd_copy_private_symbol_data(ibfd, isymbol, obfd, osymbol) \ |
5959 | BFD_SEND (obfd, _bfd_copy_private_symbol_data, \ |
6493 | BFD_SEND (obfd, _bfd_copy_private_symbol_data, \ |
5960 | (ibfd, isymbol, obfd, osymbol)) |
6494 | (ibfd, isymbol, obfd, osymbol)) |
Line 5961... | Line 6495... | ||
5961 | 6495 | ||
- | 6496 | /* Extracted from bfd.c. */ |
|
5962 | /* Extracted from bfd.c. */ |
6497 | |
5963 | enum bfd_direction |
6498 | enum bfd_direction |
5964 | { |
6499 | { |
5965 | no_direction = 0, |
6500 | no_direction = 0, |
5966 | read_direction = 1, |
6501 | read_direction = 1, |
5967 | write_direction = 2, |
6502 | write_direction = 2, |
5968 | both_direction = 3 |
6503 | both_direction = 3 |
Line 5969... | Line 6504... | ||
5969 | }; |
6504 | }; |
5970 | 6505 | ||
5971 | struct bfd |
6506 | enum bfd_plugin_format |
- | 6507 | { |
|
5972 | { |
6508 | bfd_plugin_uknown = 0, |
- | 6509 | bfd_plugin_yes = 1, |
|
Line -... | Line 6510... | ||
- | 6510 | bfd_plugin_no = 2 |
|
- | 6511 | }; |
|
- | 6512 | ||
- | 6513 | struct bfd_build_id |
|
- | 6514 | { |
|
- | 6515 | bfd_size_type size; |
|
- | 6516 | bfd_byte data[1]; |
|
- | 6517 | }; |
|
5973 | /* A unique identifier of the BFD */ |
6518 | |
5974 | unsigned int id; |
6519 | struct bfd |
Line 5975... | Line 6520... | ||
5975 | 6520 | { |
|
5976 | /* The filename the application opened the BFD with. */ |
6521 | /* The filename the application opened the BFD with. */ |
Line 5993... | Line 6538... | ||
5993 | ufile_ptr where; |
6538 | ufile_ptr where; |
Line 5994... | Line 6539... | ||
5994 | 6539 | ||
5995 | /* File modified time, if mtime_set is TRUE. */ |
6540 | /* File modified time, if mtime_set is TRUE. */ |
Line 5996... | Line 6541... | ||
5996 | long mtime; |
6541 | long mtime; |
5997 | 6542 | ||
Line 5998... | Line 6543... | ||
5998 | /* Reserved for an unimplemented file locking extension. */ |
6543 | /* A unique identifier of the BFD */ |
5999 | int ifd; |
6544 | unsigned int id; |
Line 6000... | Line 6545... | ||
6000 | 6545 | ||
6001 | /* The format which belongs to the BFD. (object, core, etc.) */ |
6546 | /* The format which belongs to the BFD. (object, core, etc.) */ |
Line 6002... | Line 6547... | ||
6002 | bfd_format format; |
6547 | ENUM_BITFIELD (bfd_format) format : 3; |
6003 | 6548 | ||
Line 6004... | Line 6549... | ||
6004 | /* The direction with which the BFD was opened. */ |
6549 | /* The direction with which the BFD was opened. */ |
6005 | enum bfd_direction direction; |
6550 | ENUM_BITFIELD (bfd_direction) direction : 2; |
6006 | 6551 | ||
6007 | /* Format_specific flags. */ |
6552 | /* Format_specific flags. */ |
Line 6062... | Line 6607... | ||
6062 | /* This flag indicates that the BFD contents are actually cached |
6607 | /* This flag indicates that the BFD contents are actually cached |
6063 | in memory. If this is set, iostream points to a bfd_in_memory |
6608 | in memory. If this is set, iostream points to a bfd_in_memory |
6064 | struct. */ |
6609 | struct. */ |
6065 | #define BFD_IN_MEMORY 0x800 |
6610 | #define BFD_IN_MEMORY 0x800 |
Line 6066... | Line -... | ||
6066 | - | ||
6067 | /* The sections in this BFD specify a memory page. */ |
- | |
6068 | #define HAS_LOAD_PAGE 0x1000 |
- | |
6069 | 6611 | ||
6070 | /* This BFD has been created by the linker and doesn't correspond |
6612 | /* This BFD has been created by the linker and doesn't correspond |
6071 | to any input file. */ |
6613 | to any input file. */ |
Line 6072... | Line 6614... | ||
6072 | #define BFD_LINKER_CREATED 0x2000 |
6614 | #define BFD_LINKER_CREATED 0x1000 |
6073 | 6615 | ||
6074 | /* This may be set before writing out a BFD to request that it |
6616 | /* This may be set before writing out a BFD to request that it |
6075 | be written using values for UIDs, GIDs, timestamps, etc. that |
6617 | be written using values for UIDs, GIDs, timestamps, etc. that |
Line 6076... | Line 6618... | ||
6076 | will be consistent from run to run. */ |
6618 | will be consistent from run to run. */ |
6077 | #define BFD_DETERMINISTIC_OUTPUT 0x4000 |
6619 | #define BFD_DETERMINISTIC_OUTPUT 0x2000 |
Line 6078... | Line 6620... | ||
6078 | 6620 | ||
6079 | /* Compress sections in this BFD. */ |
6621 | /* Compress sections in this BFD. */ |
Line 6080... | Line 6622... | ||
6080 | #define BFD_COMPRESS 0x8000 |
6622 | #define BFD_COMPRESS 0x4000 |
6081 | 6623 | ||
- | 6624 | /* Decompress sections in this BFD. */ |
|
- | 6625 | #define BFD_DECOMPRESS 0x8000 |
|
- | 6626 | ||
Line 6082... | Line 6627... | ||
6082 | /* Decompress sections in this BFD. */ |
6627 | /* BFD is a dummy, for plugins. */ |
6083 | #define BFD_DECOMPRESS 0x10000 |
6628 | #define BFD_PLUGIN 0x10000 |
6084 | 6629 | ||
- | 6630 | /* Compress sections in this BFD with SHF_COMPRESSED from gABI. */ |
|
Line 6085... | Line 6631... | ||
6085 | /* BFD is a dummy, for plugins. */ |
6631 | #define BFD_COMPRESS_GABI 0x20000 |
6086 | #define BFD_PLUGIN 0x20000 |
6632 | |
6087 | 6633 | /* Flags bits to be saved in bfd_preserve_save. */ |
|
6088 | /* Flags bits to be saved in bfd_preserve_save. */ |
6634 | #define BFD_FLAGS_SAVED \ |
- | 6635 | (BFD_IN_MEMORY | BFD_COMPRESS | BFD_DECOMPRESS | BFD_PLUGIN \ |
|
- | 6636 | | BFD_COMPRESS_GABI) |
|
- | 6637 | ||
- | 6638 | /* Flags bits which are for BFD use only. */ |
|
- | 6639 | #define BFD_FLAGS_FOR_BFD_USE_MASK \ |
|
- | 6640 | (BFD_IN_MEMORY | BFD_COMPRESS | BFD_DECOMPRESS | BFD_LINKER_CREATED \ |
|
- | 6641 | | BFD_PLUGIN | BFD_TRADITIONAL_FORMAT | BFD_DETERMINISTIC_OUTPUT \ |
|
- | 6642 | | BFD_COMPRESS_GABI) |
|
- | 6643 | ||
- | 6644 | /* Is the file descriptor being cached? That is, can it be closed as |
|
- | 6645 | needed, and re-opened when accessed later? */ |
|
- | 6646 | unsigned int cacheable : 1; |
|
- | 6647 | ||
- | 6648 | /* Marks whether there was a default target specified when the |
|
- | 6649 | BFD was opened. This is used to select which matching algorithm |
|
- | 6650 | to use to choose the back end. */ |
|
- | 6651 | unsigned int target_defaulted : 1; |
|
- | 6652 | ||
- | 6653 | /* ... and here: (``once'' means at least once). */ |
|
- | 6654 | unsigned int opened_once : 1; |
|
- | 6655 | ||
- | 6656 | /* Set if we have a locally maintained mtime value, rather than |
|
- | 6657 | getting it from the file each time. */ |
|
- | 6658 | unsigned int mtime_set : 1; |
|
- | 6659 | ||
- | 6660 | /* Flag set if symbols from this BFD should not be exported. */ |
|
- | 6661 | unsigned int no_export : 1; |
|
- | 6662 | ||
- | 6663 | /* Remember when output has begun, to stop strange things |
|
- | 6664 | from happening. */ |
|
- | 6665 | unsigned int output_has_begun : 1; |
|
- | 6666 | ||
- | 6667 | /* Have archive map. */ |
|
- | 6668 | unsigned int has_armap : 1; |
|
- | 6669 | ||
- | 6670 | /* Set if this is a thin archive. */ |
|
- | 6671 | unsigned int is_thin_archive : 1; |
|
- | 6672 | ||
- | 6673 | /* Set if only required symbols should be added in the link hash table for |
|
- | 6674 | this object. Used by VMS linkers. */ |
|
- | 6675 | unsigned int selective_search : 1; |
|
- | 6676 | ||
- | 6677 | /* Set if this is the linker output BFD. */ |
|
- | 6678 | unsigned int is_linker_output : 1; |
|
- | 6679 | ||
- | 6680 | /* Set if this is the linker input BFD. */ |
|
- | 6681 | unsigned int is_linker_input : 1; |
|
- | 6682 | ||
- | 6683 | /* If this is an input for a compiler plug-in library. */ |
|
- | 6684 | ENUM_BITFIELD (bfd_plugin_format) plugin_format : 2; |
|
Line 6089... | Line 6685... | ||
6089 | #define BFD_FLAGS_SAVED \ |
6685 | |
6090 | (BFD_IN_MEMORY | BFD_COMPRESS | BFD_DECOMPRESS | BFD_PLUGIN) |
6686 | /* Set if this is a plugin output file. */ |
6091 | 6687 | unsigned int lto_output : 1; |
|
6092 | /* Flags bits which are for BFD use only. */ |
6688 | |
Line 6116... | Line 6712... | ||
6116 | struct bfd_section *section_last; |
6712 | struct bfd_section *section_last; |
Line 6117... | Line 6713... | ||
6117 | 6713 | ||
6118 | /* The number of sections. */ |
6714 | /* The number of sections. */ |
Line -... | Line 6715... | ||
- | 6715 | unsigned int section_count; |
|
- | 6716 | ||
- | 6717 | /* A field used by _bfd_generic_link_add_archive_symbols. This will |
|
- | 6718 | be used only for archive elements. */ |
|
6119 | unsigned int section_count; |
6719 | int archive_pass; |
6120 | 6720 | ||
6121 | /* Stuff only useful for object files: |
6721 | /* Stuff only useful for object files: |
Line 6122... | Line -... | ||
6122 | The start address. */ |
- | |
6123 | bfd_vma start_address; |
- | |
6124 | - | ||
6125 | /* Used for input and output. */ |
6722 | The start address. */ |
6126 | unsigned int symcount; |
6723 | bfd_vma start_address; |
6127 | 6724 | ||
Line -... | Line 6725... | ||
- | 6725 | /* Symbol table for output BFD (with symcount entries). |
|
- | 6726 | Also used by the linker to cache input BFD symbols. */ |
|
- | 6727 | struct bfd_symbol **outsymbols; |
|
6128 | /* Symbol table for output BFD (with symcount entries). |
6728 | |
6129 | Also used by the linker to cache input BFD symbols. */ |
6729 | /* Used for input and output. */ |
Line 6130... | Line 6730... | ||
6130 | struct bfd_symbol **outsymbols; |
6730 | unsigned int symcount; |
6131 | 6731 | ||
Line 6141... | Line 6741... | ||
6141 | struct bfd *archive_next; /* The next BFD in the archive. */ |
6741 | struct bfd *archive_next; /* The next BFD in the archive. */ |
6142 | struct bfd *archive_head; /* The first BFD in the archive. */ |
6742 | struct bfd *archive_head; /* The first BFD in the archive. */ |
6143 | struct bfd *nested_archives; /* List of nested archive in a flattened |
6743 | struct bfd *nested_archives; /* List of nested archive in a flattened |
6144 | thin archive. */ |
6744 | thin archive. */ |
Line -... | Line 6745... | ||
- | 6745 | ||
6145 | 6746 | union { |
|
6146 | /* A chain of BFD structures involved in a link. */ |
6747 | /* For input BFDs, a chain of BFDs involved in a link. */ |
6147 | struct bfd *link_next; |
- | |
6148 | 6748 | struct bfd *next; |
|
6149 | /* A field used by _bfd_generic_link_add_archive_symbols. This will |
6749 | /* For output BFD, the linker hash table. */ |
6150 | be used only for archive elements. */ |
6750 | struct bfd_link_hash_table *hash; |
Line 6151... | Line 6751... | ||
6151 | int archive_pass; |
6751 | } link; |
6152 | 6752 | ||
6153 | /* Used by the back end to hold private data. */ |
6753 | /* Used by the back end to hold private data. */ |
6154 | union |
6754 | union |
Line 6199... | Line 6799... | ||
6199 | /* Where all the allocated stuff under this BFD goes. This is a |
6799 | /* Where all the allocated stuff under this BFD goes. This is a |
6200 | struct objalloc *, but we use void * to avoid requiring the inclusion |
6800 | struct objalloc *, but we use void * to avoid requiring the inclusion |
6201 | of objalloc.h. */ |
6801 | of objalloc.h. */ |
6202 | void *memory; |
6802 | void *memory; |
Line 6203... | Line -... | ||
6203 | - | ||
6204 | /* Is the file descriptor being cached? That is, can it be closed as |
- | |
6205 | needed, and re-opened when accessed later? */ |
- | |
6206 | unsigned int cacheable : 1; |
- | |
6207 | - | ||
6208 | /* Marks whether there was a default target specified when the |
- | |
6209 | BFD was opened. This is used to select which matching algorithm |
- | |
6210 | to use to choose the back end. */ |
- | |
6211 | unsigned int target_defaulted : 1; |
- | |
6212 | 6803 | ||
6213 | /* ... and here: (``once'' means at least once). */ |
- | |
6214 | unsigned int opened_once : 1; |
- | |
6215 | - | ||
6216 | /* Set if we have a locally maintained mtime value, rather than |
- | |
6217 | getting it from the file each time. */ |
- | |
6218 | unsigned int mtime_set : 1; |
- | |
6219 | - | ||
6220 | /* Flag set if symbols from this BFD should not be exported. */ |
- | |
6221 | unsigned int no_export : 1; |
- | |
6222 | - | ||
6223 | /* Remember when output has begun, to stop strange things |
- | |
6224 | from happening. */ |
6804 | /* For input BFDs, the build ID, if the object has one. */ |
6225 | unsigned int output_has_begun : 1; |
6805 | const struct bfd_build_id *build_id; |
6226 | - | ||
6227 | /* Have archive map. */ |
- | |
Line 6228... | Line 6806... | ||
6228 | unsigned int has_armap : 1; |
6806 | }; |
6229 | 6807 | ||
- | 6808 | /* See note beside bfd_set_section_userdata. */ |
|
- | 6809 | static inline bfd_boolean |
|
- | 6810 | bfd_set_cacheable (bfd * abfd, bfd_boolean val) |
|
- | 6811 | { |
|
- | 6812 | abfd->cacheable = val; |
|
Line 6230... | Line -... | ||
6230 | /* Set if this is a thin archive. */ |
- | |
6231 | unsigned int is_thin_archive : 1; |
- | |
6232 | - | ||
6233 | /* Set if only required symbols should be added in the link hash table for |
- | |
Line 6234... | Line 6813... | ||
6234 | this object. Used by VMS linkers. */ |
6813 | return TRUE; |
6235 | unsigned int selective_search : 1; |
6814 | } |
6236 | }; |
6815 | |
6237 | 6816 | ||
Line 6268... | Line 6847... | ||
6268 | 6847 | ||
Line 6269... | Line 6848... | ||
6269 | const char *bfd_errmsg (bfd_error_type error_tag); |
6848 | const char *bfd_errmsg (bfd_error_type error_tag); |
Line -... | Line 6849... | ||
- | 6849 | ||
6270 | 6850 | void bfd_perror (const char *message); |
|
Line 6271... | Line 6851... | ||
6271 | void bfd_perror (const char *message); |
6851 | |
Line 6272... | Line 6852... | ||
6272 | 6852 | ||
Line 6273... | Line 6853... | ||
6273 | typedef void (*bfd_error_handler_type) (const char *, ...); |
6853 | typedef void (*bfd_error_handler_type) (const char *, ...); |
Line -... | Line 6854... | ||
- | 6854 | ||
6274 | 6855 | bfd_error_handler_type bfd_set_error_handler (bfd_error_handler_type); |
|
6275 | bfd_error_handler_type bfd_set_error_handler (bfd_error_handler_type); |
6856 | |
6276 | 6857 | void bfd_set_error_program_name (const char *); |
|
6277 | void bfd_set_error_program_name (const char *); |
6858 | |
Line 6331... | Line 6912... | ||
6331 | #define bfd_sizeof_headers(abfd, info) \ |
6912 | #define bfd_sizeof_headers(abfd, info) \ |
6332 | BFD_SEND (abfd, _bfd_sizeof_headers, (abfd, info)) |
6913 | BFD_SEND (abfd, _bfd_sizeof_headers, (abfd, info)) |
Line 6333... | Line 6914... | ||
6333 | 6914 | ||
6334 | #define bfd_find_nearest_line(abfd, sec, syms, off, file, func, line) \ |
6915 | #define bfd_find_nearest_line(abfd, sec, syms, off, file, func, line) \ |
6335 | BFD_SEND (abfd, _bfd_find_nearest_line, \ |
6916 | BFD_SEND (abfd, _bfd_find_nearest_line, \ |
Line 6336... | Line 6917... | ||
6336 | (abfd, sec, syms, off, file, func, line)) |
6917 | (abfd, syms, sec, off, file, func, line, NULL)) |
6337 | 6918 | ||
6338 | #define bfd_find_nearest_line_discriminator(abfd, sec, syms, off, file, func, \ |
6919 | #define bfd_find_nearest_line_discriminator(abfd, sec, syms, off, file, func, \ |
6339 | line, disc) \ |
6920 | line, disc) \ |
Line 6340... | Line 6921... | ||
6340 | BFD_SEND (abfd, _bfd_find_nearest_line_discriminator, \ |
6921 | BFD_SEND (abfd, _bfd_find_nearest_line, \ |
6341 | (abfd, sec, syms, off, file, func, line, disc)) |
6922 | (abfd, syms, sec, off, file, func, line, disc)) |
6342 | 6923 | ||
Line 6385... | Line 6966... | ||
6385 | BFD_SEND (abfd, _bfd_discard_group, (abfd, sec)) |
6966 | BFD_SEND (abfd, _bfd_discard_group, (abfd, sec)) |
Line 6386... | Line 6967... | ||
6386 | 6967 | ||
6387 | #define bfd_link_hash_table_create(abfd) \ |
6968 | #define bfd_link_hash_table_create(abfd) \ |
Line 6388... | Line -... | ||
6388 | BFD_SEND (abfd, _bfd_link_hash_table_create, (abfd)) |
- | |
6389 | - | ||
6390 | #define bfd_link_hash_table_free(abfd, hash) \ |
- | |
6391 | BFD_SEND (abfd, _bfd_link_hash_table_free, (hash)) |
6969 | BFD_SEND (abfd, _bfd_link_hash_table_create, (abfd)) |
6392 | 6970 | ||
Line 6393... | Line 6971... | ||
6393 | #define bfd_link_add_symbols(abfd, info) \ |
6971 | #define bfd_link_add_symbols(abfd, info) \ |
6394 | BFD_SEND (abfd, _bfd_link_add_symbols, (abfd, info)) |
6972 | BFD_SEND (abfd, _bfd_link_add_symbols, (abfd, info)) |
Line 6435... | Line 7013... | ||
6435 | 7013 | ||
Line 6436... | Line 7014... | ||
6436 | void bfd_emul_set_commonpagesize (const char *, bfd_vma); |
7014 | void bfd_emul_set_commonpagesize (const char *, bfd_vma); |
Line -... | Line 7015... | ||
- | 7015 | ||
- | 7016 | char *bfd_demangle (bfd *, const char *, int); |
|
- | 7017 | ||
- | 7018 | void bfd_update_compression_header |
|
- | 7019 | (bfd *abfd, bfd_byte *contents, asection *sec); |
|
- | 7020 | ||
- | 7021 | bfd_boolean bfd_check_compression_header |
|
- | 7022 | (bfd *abfd, bfd_byte *contents, asection *sec, |
|
- | 7023 | bfd_size_type *uncompressed_size); |
|
- | 7024 | ||
- | 7025 | int bfd_get_compression_header_size (bfd *abfd, asection *sec); |
|
- | 7026 | ||
- | 7027 | bfd_size_type bfd_convert_section_size |
|
- | 7028 | (bfd *ibfd, asection *isec, bfd *obfd, bfd_size_type size); |
|
- | 7029 | ||
- | 7030 | bfd_boolean bfd_convert_section_contents |
|
6437 | 7031 | (bfd *ibfd, asection *isec, bfd *obfd, |
|
6438 | char *bfd_demangle (bfd *, const char *, int); |
7032 | bfd_byte **ptr, bfd_size_type *ptr_size); |
6439 | 7033 | ||
Line 6440... | Line 7034... | ||
6440 | /* Extracted from archive.c. */ |
7034 | /* Extracted from archive.c. */ |
Line 6480... | Line 7074... | ||
6480 | (bfd_assert (__FILE__,__LINE__), NULL)) |
7074 | (bfd_assert (__FILE__,__LINE__), NULL)) |
6481 | #endif |
7075 | #endif |
Line 6482... | Line 7076... | ||
6482 | 7076 | ||
6483 | enum bfd_flavour |
7077 | enum bfd_flavour |
- | 7078 | { |
|
6484 | { |
7079 | /* N.B. Update bfd_flavour_name if you change this. */ |
6485 | bfd_target_unknown_flavour, |
7080 | bfd_target_unknown_flavour, |
6486 | bfd_target_aout_flavour, |
7081 | bfd_target_aout_flavour, |
6487 | bfd_target_coff_flavour, |
7082 | bfd_target_coff_flavour, |
6488 | bfd_target_ecoff_flavour, |
7083 | bfd_target_ecoff_flavour, |
Line 6697... | Line 7292... | ||
6697 | NAME##_get_symtab_upper_bound, \ |
7292 | NAME##_get_symtab_upper_bound, \ |
6698 | NAME##_canonicalize_symtab, \ |
7293 | NAME##_canonicalize_symtab, \ |
6699 | NAME##_make_empty_symbol, \ |
7294 | NAME##_make_empty_symbol, \ |
6700 | NAME##_print_symbol, \ |
7295 | NAME##_print_symbol, \ |
6701 | NAME##_get_symbol_info, \ |
7296 | NAME##_get_symbol_info, \ |
- | 7297 | NAME##_get_symbol_version_string, \ |
|
6702 | NAME##_bfd_is_local_label_name, \ |
7298 | NAME##_bfd_is_local_label_name, \ |
6703 | NAME##_bfd_is_target_special_symbol, \ |
7299 | NAME##_bfd_is_target_special_symbol, \ |
6704 | NAME##_get_lineno, \ |
7300 | NAME##_get_lineno, \ |
6705 | NAME##_find_nearest_line, \ |
7301 | NAME##_find_nearest_line, \ |
6706 | _bfd_generic_find_nearest_line_discriminator, \ |
- | |
6707 | _bfd_generic_find_line, \ |
7302 | NAME##_find_line, \ |
6708 | NAME##_find_inliner_info, \ |
7303 | NAME##_find_inliner_info, \ |
6709 | NAME##_bfd_make_debug_symbol, \ |
7304 | NAME##_bfd_make_debug_symbol, \ |
6710 | NAME##_read_minisymbols, \ |
7305 | NAME##_read_minisymbols, \ |
6711 | NAME##_minisymbol_to_symbol |
7306 | NAME##_minisymbol_to_symbol |
Line 6719... | Line 7314... | ||
6719 | (bfd *, void *, struct bfd_symbol *, bfd_print_symbol_type); |
7314 | (bfd *, void *, struct bfd_symbol *, bfd_print_symbol_type); |
6720 | #define bfd_print_symbol(b,p,s,e) BFD_SEND (b, _bfd_print_symbol, (b,p,s,e)) |
7315 | #define bfd_print_symbol(b,p,s,e) BFD_SEND (b, _bfd_print_symbol, (b,p,s,e)) |
6721 | void (*_bfd_get_symbol_info) |
7316 | void (*_bfd_get_symbol_info) |
6722 | (bfd *, struct bfd_symbol *, symbol_info *); |
7317 | (bfd *, struct bfd_symbol *, symbol_info *); |
6723 | #define bfd_get_symbol_info(b,p,e) BFD_SEND (b, _bfd_get_symbol_info, (b,p,e)) |
7318 | #define bfd_get_symbol_info(b,p,e) BFD_SEND (b, _bfd_get_symbol_info, (b,p,e)) |
- | 7319 | const char *(*_bfd_get_symbol_version_string) |
|
- | 7320 | (bfd *, struct bfd_symbol *, bfd_boolean *); |
|
- | 7321 | #define bfd_get_symbol_version_string(b,s,h) BFD_SEND (b, _bfd_get_symbol_version_string, (b,s,h)) |
|
6724 | bfd_boolean (*_bfd_is_local_label_name) (bfd *, const char *); |
7322 | bfd_boolean (*_bfd_is_local_label_name) (bfd *, const char *); |
6725 | bfd_boolean (*_bfd_is_target_special_symbol) (bfd *, asymbol *); |
7323 | bfd_boolean (*_bfd_is_target_special_symbol) (bfd *, asymbol *); |
6726 | alent * (*_get_lineno) (bfd *, struct bfd_symbol *); |
7324 | alent * (*_get_lineno) (bfd *, struct bfd_symbol *); |
6727 | bfd_boolean (*_bfd_find_nearest_line) |
7325 | bfd_boolean (*_bfd_find_nearest_line) |
6728 | (bfd *, struct bfd_section *, struct bfd_symbol **, bfd_vma, |
7326 | (bfd *, struct bfd_symbol **, struct bfd_section *, bfd_vma, |
6729 | const char **, const char **, unsigned int *); |
- | |
6730 | bfd_boolean (*_bfd_find_nearest_line_discriminator) |
- | |
6731 | (bfd *, struct bfd_section *, struct bfd_symbol **, bfd_vma, |
- | |
6732 | const char **, const char **, unsigned int *, unsigned int *); |
7327 | const char **, const char **, unsigned int *, unsigned int *); |
6733 | bfd_boolean (*_bfd_find_line) |
7328 | bfd_boolean (*_bfd_find_line) |
6734 | (bfd *, struct bfd_symbol **, struct bfd_symbol *, |
7329 | (bfd *, struct bfd_symbol **, struct bfd_symbol *, |
6735 | const char **, unsigned int *); |
7330 | const char **, unsigned int *); |
6736 | bfd_boolean (*_bfd_find_inliner_info) |
7331 | bfd_boolean (*_bfd_find_inliner_info) |
Line 6780... | Line 7375... | ||
6780 | #define BFD_JUMP_TABLE_LINK(NAME) \ |
7375 | #define BFD_JUMP_TABLE_LINK(NAME) \ |
6781 | NAME##_sizeof_headers, \ |
7376 | NAME##_sizeof_headers, \ |
6782 | NAME##_bfd_get_relocated_section_contents, \ |
7377 | NAME##_bfd_get_relocated_section_contents, \ |
6783 | NAME##_bfd_relax_section, \ |
7378 | NAME##_bfd_relax_section, \ |
6784 | NAME##_bfd_link_hash_table_create, \ |
7379 | NAME##_bfd_link_hash_table_create, \ |
6785 | NAME##_bfd_link_hash_table_free, \ |
- | |
6786 | NAME##_bfd_link_add_symbols, \ |
7380 | NAME##_bfd_link_add_symbols, \ |
6787 | NAME##_bfd_link_just_syms, \ |
7381 | NAME##_bfd_link_just_syms, \ |
6788 | NAME##_bfd_copy_link_hash_symbol_type, \ |
7382 | NAME##_bfd_copy_link_hash_symbol_type, \ |
6789 | NAME##_bfd_final_link, \ |
7383 | NAME##_bfd_final_link, \ |
6790 | NAME##_bfd_link_split_section, \ |
7384 | NAME##_bfd_link_split_section, \ |
Line 6807... | Line 7401... | ||
6807 | /* Create a hash table for the linker. Different backends store |
7401 | /* Create a hash table for the linker. Different backends store |
6808 | different information in this table. */ |
7402 | different information in this table. */ |
6809 | struct bfd_link_hash_table * |
7403 | struct bfd_link_hash_table * |
6810 | (*_bfd_link_hash_table_create) (bfd *); |
7404 | (*_bfd_link_hash_table_create) (bfd *); |
Line 6811... | Line -... | ||
6811 | - | ||
6812 | /* Release the memory associated with the linker hash table. */ |
- | |
6813 | void (*_bfd_link_hash_table_free) (struct bfd_link_hash_table *); |
- | |
6814 | 7405 | ||
6815 | /* Add symbols from this object file into the hash table. */ |
7406 | /* Add symbols from this object file into the hash table. */ |
Line 6816... | Line 7407... | ||
6816 | bfd_boolean (*_bfd_link_add_symbols) (bfd *, struct bfd_link_info *); |
7407 | bfd_boolean (*_bfd_link_add_symbols) (bfd *, struct bfd_link_info *); |
6817 | 7408 | ||
Line 6818... | Line 7409... | ||
6818 | /* Indicate that we are only retrieving symbol values from this section. */ |
7409 | /* Indicate that we are only retrieving symbol values from this section. */ |
- | 7410 | void (*_bfd_link_just_syms) (asection *, struct bfd_link_info *); |
|
6819 | void (*_bfd_link_just_syms) (asection *, struct bfd_link_info *); |
7411 | |
6820 | 7412 | /* Copy the symbol type and other attributes for a linker script |
|
6821 | /* Copy the symbol type of a linker hash table entry. */ |
7413 | assignment of one symbol to another. */ |
6822 | #define bfd_copy_link_hash_symbol_type(b, t, f) \ |
7414 | #define bfd_copy_link_hash_symbol_type(b, t, f) \ |
Line 6902... | Line 7494... | ||
6902 | 7494 | ||
6903 | const bfd_target *bfd_search_for_target |
7495 | const bfd_target *bfd_search_for_target |
6904 | (int (*search_func) (const bfd_target *, void *), |
7496 | (int (*search_func) (const bfd_target *, void *), |
Line -... | Line 7497... | ||
- | 7497 | void *); |
|
- | 7498 | ||
6905 | void *); |
7499 | const char *bfd_flavour_name (enum bfd_flavour flavour); |
6906 | 7500 | ||
Line 6907... | Line 7501... | ||
6907 | /* Extracted from format.c. */ |
7501 | /* Extracted from format.c. */ |
6908 | bfd_boolean bfd_check_format (bfd *abfd, bfd_format format); |
7502 | bfd_boolean bfd_check_format (bfd *abfd, bfd_format format); |
Line 6944... | Line 7538... | ||
6944 | /* Extracted from simple.c. */ |
7538 | /* Extracted from simple.c. */ |
6945 | bfd_byte *bfd_simple_get_relocated_section_contents |
7539 | bfd_byte *bfd_simple_get_relocated_section_contents |
6946 | (bfd *abfd, asection *sec, bfd_byte *outbuf, asymbol **symbol_table); |
7540 | (bfd *abfd, asection *sec, bfd_byte *outbuf, asymbol **symbol_table); |
Line 6947... | Line 7541... | ||
6947 | 7541 | ||
6948 | /* Extracted from compress.c. */ |
- | |
6949 | bfd_boolean bfd_compress_section_contents |
- | |
6950 | (bfd *abfd, asection *section, bfd_byte *uncompressed_buffer, |
- | |
6951 | bfd_size_type uncompressed_size); |
- | |
6952 | 7542 | /* Extracted from compress.c. */ |
|
6953 | bfd_boolean bfd_get_full_section_contents |
7543 | bfd_boolean bfd_get_full_section_contents |
Line 6954... | Line 7544... | ||
6954 | (bfd *abfd, asection *section, bfd_byte **ptr); |
7544 | (bfd *abfd, asection *section, bfd_byte **ptr); |
6955 | 7545 | ||
Line -... | Line 7546... | ||
- | 7546 | void bfd_cache_section_contents |
|
- | 7547 | (asection *sec, void *contents); |
|
- | 7548 | ||
- | 7549 | bfd_boolean bfd_is_section_compressed_with_header |
|
- | 7550 | (bfd *abfd, asection *section, |
|
6956 | void bfd_cache_section_contents |
7551 | int *compression_header_size_p, |
6957 | (asection *sec, void *contents); |
7552 | bfd_size_type *uncompressed_size_p); |
Line 6958... | Line 7553... | ||
6958 | 7553 | ||
6959 | bfd_boolean bfd_is_section_compressed |
7554 | bfd_boolean bfd_is_section_compressed |
Line 6960... | Line 7555... | ||
6960 | (bfd *abfd, asection *section); |
7555 | (bfd *abfd, asection *section); |
6961 | 7556 | ||
Line -... | Line 7557... | ||
- | 7557 | bfd_boolean bfd_init_section_decompress_status |
|
- | 7558 | (bfd *abfd, asection *section); |
|
- | 7559 | ||
6962 | bfd_boolean bfd_init_section_decompress_status |
7560 | bfd_boolean bfd_init_section_compress_status |
6963 | (bfd *abfd, asection *section); |
7561 | (bfd *abfd, asection *section); |
6964 | 7562 | ||
6965 | bfd_boolean bfd_init_section_compress_status |
7563 | bfd_boolean bfd_compress_section |