X-Git-Url: https://oss.titaniummirror.com/gitweb?p=msp430-binutils.git;a=blobdiff_plain;f=bfd%2Flibbfd.h;fp=bfd%2Flibbfd.h;h=2450b2d80b3720de7fed78b62fb919fde6bde8e9;hp=2d5b5b3dec0e55b6eba6dd4ea1f0c903bcf81528;hb=d5da4f291af551c0b8b79e1d4a9b173d60e5c10e;hpb=7b5ea4fcdf2819e070665ab5610f8b48e3867c10 diff --git a/bfd/libbfd.h b/bfd/libbfd.h index 2d5b5b3..2450b2d 100644 --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -7,7 +7,7 @@ (This include file is not for users of the library.) Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 + 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. Written by Cygnus Support. @@ -96,6 +96,7 @@ struct areltdata { char * arch_header; /* it's actually a string */ unsigned int parsed_size; /* octets of filesize not including ar_hdr */ char *filename; /* null-terminated */ + file_ptr origin; /* for element of a thin archive */ }; #define arelt_size(bfd) (((struct areltdata *)((bfd)->arelt_data))->parsed_size) @@ -104,6 +105,8 @@ extern void *bfd_malloc (bfd_size_type); extern void *bfd_realloc (void *, bfd_size_type); +extern void *bfd_realloc_or_free + (void *, bfd_size_type); extern void *bfd_zmalloc (bfd_size_type); extern void *bfd_malloc2 @@ -418,6 +421,9 @@ extern bfd_boolean _bfd_generic_set_section_contents ((bfd_boolean (*) (bfd *, struct bfd_section *)) bfd_false) #define _bfd_nolink_section_already_linked \ ((void (*) (bfd *, struct bfd_section *, struct bfd_link_info *)) bfd_void) +#define _bfd_nolink_bfd_define_common_symbol \ + ((bfd_boolean (*) (bfd *, struct bfd_link_info *, \ + struct bfd_link_hash_entry *)) bfd_false) /* Routines to use for BFD_JUMP_TABLE_DYNAMIC for targets which do not have dynamic symbols or relocs. Use BFD_JUMP_TABLE_DYNAMIC @@ -767,6 +773,9 @@ struct bfd_iovec int (*bclose) (struct bfd *abfd); int (*bflush) (struct bfd *abfd); int (*bstat) (struct bfd *abfd, struct stat *sb); + /* Just like mmap: (void*)-1 on failure, mmapped address on success. */ + void *(*bmmap) (struct bfd *abfd, void *addr, bfd_size_type len, + int prot, int flags, file_ptr offset); }; /* Extracted from bfdwin.c. */ struct _bfd_window_internal { @@ -826,6 +835,21 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@", "BFD_RELOC_68K_GLOB_DAT", "BFD_RELOC_68K_JMP_SLOT", "BFD_RELOC_68K_RELATIVE", + "BFD_RELOC_68K_TLS_GD32", + "BFD_RELOC_68K_TLS_GD16", + "BFD_RELOC_68K_TLS_GD8", + "BFD_RELOC_68K_TLS_LDM32", + "BFD_RELOC_68K_TLS_LDM16", + "BFD_RELOC_68K_TLS_LDM8", + "BFD_RELOC_68K_TLS_LDO32", + "BFD_RELOC_68K_TLS_LDO16", + "BFD_RELOC_68K_TLS_LDO8", + "BFD_RELOC_68K_TLS_IE32", + "BFD_RELOC_68K_TLS_IE16", + "BFD_RELOC_68K_TLS_IE8", + "BFD_RELOC_68K_TLS_LE32", + "BFD_RELOC_68K_TLS_LE16", + "BFD_RELOC_68K_TLS_LE8", "BFD_RELOC_32_BASEREL", "BFD_RELOC_16_BASEREL", "BFD_RELOC_LO16_BASEREL", @@ -859,6 +883,11 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@", "BFD_RELOC_SPARC_UA16", "BFD_RELOC_SPARC_UA32", "BFD_RELOC_SPARC_UA64", + "BFD_RELOC_SPARC_GOTDATA_HIX22", + "BFD_RELOC_SPARC_GOTDATA_LOX10", + "BFD_RELOC_SPARC_GOTDATA_OP_HIX22", + "BFD_RELOC_SPARC_GOTDATA_OP_LOX10", + "BFD_RELOC_SPARC_GOTDATA_OP", "BFD_RELOC_SPARC_BASE13", "BFD_RELOC_SPARC_BASE22", "BFD_RELOC_SPARC_10", @@ -922,6 +951,7 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@", "BFD_RELOC_SPU_HI16", "BFD_RELOC_SPU_PPU32", "BFD_RELOC_SPU_PPU64", + "BFD_RELOC_SPU_ADD_PIC", "BFD_RELOC_ALPHA_GPDISP_HI16", "BFD_RELOC_ALPHA_GPDISP_LO16", "BFD_RELOC_ALPHA_GPDISP", @@ -934,6 +964,10 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@", "BFD_RELOC_ALPHA_GPREL_HI16", "BFD_RELOC_ALPHA_GPREL_LO16", "BFD_RELOC_ALPHA_BRSGP", + "BFD_RELOC_ALPHA_NOP", + "BFD_RELOC_ALPHA_BSR", + "BFD_RELOC_ALPHA_LDA", + "BFD_RELOC_ALPHA_BOH", "BFD_RELOC_ALPHA_TLSGD", "BFD_RELOC_ALPHA_TLSLDM", "BFD_RELOC_ALPHA_DTPMOD64", @@ -956,6 +990,8 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@", "BFD_RELOC_HI16_PCREL", "BFD_RELOC_HI16_S_PCREL", "BFD_RELOC_LO16_PCREL", + "BFD_RELOC_MIPS16_GOT16", + "BFD_RELOC_MIPS16_CALL16", "BFD_RELOC_MIPS16_HI16", "BFD_RELOC_MIPS16_HI16_S", "BFD_RELOC_MIPS16_LO16", @@ -998,6 +1034,8 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@", "BFD_RELOC_MIPS_COPY", "BFD_RELOC_MIPS_JUMP_SLOT", + "BFD_RELOC_MOXIE_10_PCREL", + "BFD_RELOC_FRV_LABEL16", "BFD_RELOC_FRV_LABEL24", "BFD_RELOC_FRV_LO16", @@ -1046,6 +1084,8 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@", "BFD_RELOC_MN10300_GLOB_DAT", "BFD_RELOC_MN10300_JMP_SLOT", "BFD_RELOC_MN10300_RELATIVE", + "BFD_RELOC_MN10300_SYM_DIFF", + "BFD_RELOC_MN10300_ALIGN", "BFD_RELOC_386_GOT32", "BFD_RELOC_386_PLT32", @@ -1070,6 +1110,7 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@", "BFD_RELOC_386_TLS_GOTDESC", "BFD_RELOC_386_TLS_DESC_CALL", "BFD_RELOC_386_TLS_DESC", + "BFD_RELOC_386_IRELATIVE", "BFD_RELOC_X86_64_GOT32", "BFD_RELOC_X86_64_PLT32", "BFD_RELOC_X86_64_COPY", @@ -1096,6 +1137,7 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@", "BFD_RELOC_X86_64_GOTPC32_TLSDESC", "BFD_RELOC_X86_64_TLSDESC_CALL", "BFD_RELOC_X86_64_TLSDESC", + "BFD_RELOC_X86_64_IRELATIVE", "BFD_RELOC_NS32K_IMM_8", "BFD_RELOC_NS32K_IMM_16", "BFD_RELOC_NS32K_IMM_32", @@ -1170,6 +1212,8 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@", "BFD_RELOC_PPC64_PLTGOT16_DS", "BFD_RELOC_PPC64_PLTGOT16_LO_DS", "BFD_RELOC_PPC_TLS", + "BFD_RELOC_PPC_TLSGD", + "BFD_RELOC_PPC_TLSLD", "BFD_RELOC_PPC_DTPMOD", "BFD_RELOC_PPC_TPREL16", "BFD_RELOC_PPC_TPREL16_LO", @@ -1280,6 +1324,7 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@", "BFD_RELOC_ARM_LDC_SB_G0", "BFD_RELOC_ARM_LDC_SB_G1", "BFD_RELOC_ARM_LDC_SB_G2", + "BFD_RELOC_ARM_V4BX", "BFD_RELOC_ARM_IMMEDIATE", "BFD_RELOC_ARM_ADRL_IMMEDIATE", "BFD_RELOC_ARM_T32_IMMEDIATE", @@ -1651,13 +1696,15 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@", "BFD_RELOC_390_GOT20", "BFD_RELOC_390_GOTPLT20", "BFD_RELOC_390_TLS_GOTIE20", - "BFD_RELOC_SCORE_DUMMY1", "BFD_RELOC_SCORE_GPREL15", "BFD_RELOC_SCORE_DUMMY2", "BFD_RELOC_SCORE_JMP", "BFD_RELOC_SCORE_BRANCH", + "BFD_RELOC_SCORE_IMM30", + "BFD_RELOC_SCORE_IMM32", "BFD_RELOC_SCORE16_JMP", "BFD_RELOC_SCORE16_BRANCH", + "BFD_RELOC_SCORE_BCMP", "BFD_RELOC_SCORE_GOT15", "BFD_RELOC_SCORE_GOT_LO16", "BFD_RELOC_SCORE_CALL15", @@ -1833,6 +1880,12 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@", "BFD_RELOC_CR16_DISP20", "BFD_RELOC_CR16_DISP24", "BFD_RELOC_CR16_DISP24a", + "BFD_RELOC_CR16_SWITCH8", + "BFD_RELOC_CR16_SWITCH16", + "BFD_RELOC_CR16_SWITCH32", + "BFD_RELOC_CR16_GOT_REGREL20", + "BFD_RELOC_CR16_GOTC_REGREL20", + "BFD_RELOC_CR16_GLOB_DAT", "BFD_RELOC_CRX_REL4", "BFD_RELOC_CRX_REL8", "BFD_RELOC_CRX_REL8_CMP", @@ -1874,6 +1927,18 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@", "BFD_RELOC_CRIS_32_GOTREL", "BFD_RELOC_CRIS_32_PLT_GOTREL", "BFD_RELOC_CRIS_32_PLT_PCREL", + "BFD_RELOC_CRIS_32_GOT_GD", + "BFD_RELOC_CRIS_16_GOT_GD", + "BFD_RELOC_CRIS_32_GD", + "BFD_RELOC_CRIS_DTP", + "BFD_RELOC_CRIS_32_DTPREL", + "BFD_RELOC_CRIS_16_DTPREL", + "BFD_RELOC_CRIS_32_GOT_TPREL", + "BFD_RELOC_CRIS_16_GOT_TPREL", + "BFD_RELOC_CRIS_32_TPREL", + "BFD_RELOC_CRIS_16_TPREL", + "BFD_RELOC_CRIS_DTPMOD", + "BFD_RELOC_CRIS_32_IE", "BFD_RELOC_860_COPY", "BFD_RELOC_860_GLOB_DAT", "BFD_RELOC_860_JUMP_SLOT", @@ -1985,10 +2050,40 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@", "BFD_RELOC_XTENSA_OP2", "BFD_RELOC_XTENSA_ASM_EXPAND", "BFD_RELOC_XTENSA_ASM_SIMPLIFY", + "BFD_RELOC_XTENSA_TLSDESC_FN", + "BFD_RELOC_XTENSA_TLSDESC_ARG", + "BFD_RELOC_XTENSA_TLS_DTPOFF", + "BFD_RELOC_XTENSA_TLS_TPOFF", + "BFD_RELOC_XTENSA_TLS_FUNC", + "BFD_RELOC_XTENSA_TLS_ARG", + "BFD_RELOC_XTENSA_TLS_CALL", "BFD_RELOC_Z80_DISP8", "BFD_RELOC_Z8K_DISP7", "BFD_RELOC_Z8K_CALLR", "BFD_RELOC_Z8K_IMM4L", + "BFD_RELOC_LM32_CALL", + "BFD_RELOC_LM32_BRANCH", + "BFD_RELOC_LM32_16_GOT", + "BFD_RELOC_LM32_GOTOFF_HI16", + "BFD_RELOC_LM32_GOTOFF_LO16", + "BFD_RELOC_LM32_COPY", + "BFD_RELOC_LM32_GLOB_DAT", + "BFD_RELOC_LM32_JMP_SLOT", + "BFD_RELOC_LM32_RELATIVE", + "BFD_RELOC_MACH_O_SECTDIFF", + "BFD_RELOC_MACH_O_PAIR", + "BFD_RELOC_MICROBLAZE_32_LO", + "BFD_RELOC_MICROBLAZE_32_LO_PCREL", + "BFD_RELOC_MICROBLAZE_32_ROSDA", + "BFD_RELOC_MICROBLAZE_32_RWSDA", + "BFD_RELOC_MICROBLAZE_32_SYM_OP_SYM", + "BFD_RELOC_MICROBLAZE_64_NONE", + "BFD_RELOC_MICROBLAZE_64_GOTPC", + "BFD_RELOC_MICROBLAZE_64_GOT", + "BFD_RELOC_MICROBLAZE_64_PLT", + "BFD_RELOC_MICROBLAZE_64_GOTOFF", + "BFD_RELOC_MICROBLAZE_32_GOTOFF", + "BFD_RELOC_MICROBLAZE_COPY", "@@overflow: BFD_RELOC_UNUSED@@", }; #endif @@ -2028,5 +2123,3 @@ bfd_boolean bfd_default_scan (const struct bfd_arch_info *info, const char *string); /* Extracted from elf.c. */ -struct elf_internal_shdr *bfd_elf_find_section (bfd *abfd, char *name); -