OpenCores
URL https://opencores.org/ocsvn/open8_urisc/open8_urisc/trunk

Subversion Repositories open8_urisc

[/] [open8_urisc/] [trunk/] [gnu/] [binutils/] [bfd/] [libbfd.h] - Diff between revs 163 and 166

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 163 Rev 166
Line 6... Line 6...
/* libbfd.h -- Declarations used by bfd library *implementation*.
/* libbfd.h -- Declarations used by bfd library *implementation*.
   (This include file is not for users of the library.)
   (This include file is not for users of the library.)
 
 
   Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
   Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
   1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
   1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
   2010, 2011
   2010, 2011, 2012
   Free Software Foundation, Inc.
   Free Software Foundation, Inc.
 
 
   Written by Cygnus Support.
   Written by Cygnus Support.
 
 
   This file is part of BFD, the Binary File Descriptor library.
   This file is part of BFD, the Binary File Descriptor library.
Line 67... Line 67...
};
};
 
 
/* tdata for an archive.  For an input archive, cache
/* tdata for an archive.  For an input archive, cache
   needs to be free()'d.  For an output archive, symdefs do.  */
   needs to be free()'d.  For an output archive, symdefs do.  */
 
 
struct artdata {
struct artdata
 
{
  file_ptr first_file_filepos;
  file_ptr first_file_filepos;
  /* Speed up searching the armap */
  /* Speed up searching the armap */
  htab_t cache;
  htab_t cache;
  bfd *archive_head;            /* Only interesting in output routines */
  bfd *archive_head;            /* Only interesting in output routines.  */
  carsym *symdefs;              /* the symdef entries */
  carsym *symdefs;              /* The symdef entries.  */
  symindex symdef_count;        /* how many there are */
  symindex symdef_count;        /* How many there are.  */
  char *extended_names;         /* clever intel extension */
  char *extended_names;         /* Clever intel extension.  */
  bfd_size_type extended_names_size; /* Size of extended names */
  bfd_size_type extended_names_size; /* Size of extended names.  */
  /* when more compilers are standard C, this can be a time_t */
  /* When more compilers are standard C, this can be a time_t.  */
  long  armap_timestamp;        /* Timestamp value written into armap.
  long  armap_timestamp;        /* Timestamp value written into armap.
                                   This is used for BSD archives to check
                                   This is used for BSD archives to check
                                   that the timestamp is recent enough
                                   that the timestamp is recent enough
                                   for the BSD linker to not complain,
                                   for the BSD linker to not complain,
                                   just before we finish writing an
                                   just before we finish writing an
Line 91... Line 92...
};
};
 
 
#define bfd_ardata(bfd) ((bfd)->tdata.aout_ar_data)
#define bfd_ardata(bfd) ((bfd)->tdata.aout_ar_data)
 
 
/* Goes in bfd's arelt_data slot */
/* Goes in bfd's arelt_data slot */
struct areltdata {
struct areltdata
  char * arch_header;           /* it's actually a string */
{
  unsigned int parsed_size;     /* octets of filesize not including ar_hdr */
  char * arch_header;           /* It's actually a string.  */
  unsigned int extra_size;      /* BSD4.4: extra bytes after the header.  */
  bfd_size_type parsed_size;    /* Octets of filesize not including ar_hdr.  */
  char *filename;               /* null-terminated */
  bfd_size_type extra_size;     /* BSD4.4: extra bytes after the header.  */
  file_ptr origin;              /* for element of a thin archive */
  char *filename;               /* Null-terminated.  */
 
  file_ptr origin;              /* For element of a thin archive.  */
};
};
 
 
#define arelt_size(bfd) (((struct areltdata *)((bfd)->arelt_data))->parsed_size)
#define arelt_size(bfd) (((struct areltdata *)((bfd)->arelt_data))->parsed_size)
 
 
extern void *bfd_malloc
extern void *bfd_malloc
Line 206... Line 208...
 
 
extern void *_bfd_generic_read_ar_hdr
extern void *_bfd_generic_read_ar_hdr
  (bfd *);
  (bfd *);
extern void _bfd_ar_spacepad
extern void _bfd_ar_spacepad
  (char *, size_t, const char *, long);
  (char *, size_t, const char *, long);
 
extern bfd_boolean _bfd_ar_sizepad
 
  (char *, size_t, bfd_size_type);
 
 
extern void *_bfd_generic_read_ar_hdr_mag
extern void *_bfd_generic_read_ar_hdr_mag
  (bfd *, const char *);
  (bfd *, const char *);
 
 
extern bfd_boolean _bfd_generic_write_ar_hdr
extern bfd_boolean _bfd_generic_write_ar_hdr
Line 552... Line 556...
 
 
/* Find inliner info after calling bfd_find_nearest_line. */
/* Find inliner info after calling bfd_find_nearest_line. */
extern bfd_boolean _bfd_dwarf2_find_inliner_info
extern bfd_boolean _bfd_dwarf2_find_inliner_info
  (bfd *, const char **, const char **, unsigned int *, void **);
  (bfd *, const char **, const char **, unsigned int *, void **);
 
 
 
/* Read DWARF 2 debugging information. */
 
extern bfd_boolean _bfd_dwarf2_slurp_debug_info
 
  (bfd *, bfd *, const struct dwarf_debug_section *, asymbol **, void **);
 
 
 
/* Clean up the data used to handle DWARF 2 debugging information. */
 
extern void _bfd_dwarf2_cleanup_debug_info
 
  (bfd *, void **);
 
 
/* Create a new section entry.  */
/* Create a new section entry.  */
extern struct bfd_hash_entry *bfd_section_hash_newfunc
extern struct bfd_hash_entry *bfd_section_hash_newfunc
  (struct bfd_hash_entry *, struct bfd_hash_table *, const char *);
  (struct bfd_hash_entry *, struct bfd_hash_table *, const char *);
 
 
/* A routine to create entries for a bfd_link_hash_table.  */
/* A routine to create entries for a bfd_link_hash_table.  */
Line 1084... Line 1096...
  "BFD_RELOC_MIPS16_GOT16",
  "BFD_RELOC_MIPS16_GOT16",
  "BFD_RELOC_MIPS16_CALL16",
  "BFD_RELOC_MIPS16_CALL16",
  "BFD_RELOC_MIPS16_HI16",
  "BFD_RELOC_MIPS16_HI16",
  "BFD_RELOC_MIPS16_HI16_S",
  "BFD_RELOC_MIPS16_HI16_S",
  "BFD_RELOC_MIPS16_LO16",
  "BFD_RELOC_MIPS16_LO16",
 
  "BFD_RELOC_MIPS16_TLS_GD",
 
  "BFD_RELOC_MIPS16_TLS_LDM",
 
  "BFD_RELOC_MIPS16_TLS_DTPREL_HI16",
 
  "BFD_RELOC_MIPS16_TLS_DTPREL_LO16",
 
  "BFD_RELOC_MIPS16_TLS_GOTTPREL",
 
  "BFD_RELOC_MIPS16_TLS_TPREL_HI16",
 
  "BFD_RELOC_MIPS16_TLS_TPREL_LO16",
  "BFD_RELOC_MIPS_LITERAL",
  "BFD_RELOC_MIPS_LITERAL",
  "BFD_RELOC_MICROMIPS_LITERAL",
  "BFD_RELOC_MICROMIPS_LITERAL",
  "BFD_RELOC_MICROMIPS_7_PCREL_S1",
  "BFD_RELOC_MICROMIPS_7_PCREL_S1",
  "BFD_RELOC_MICROMIPS_10_PCREL_S1",
  "BFD_RELOC_MICROMIPS_10_PCREL_S1",
  "BFD_RELOC_MICROMIPS_16_PCREL_S1",
  "BFD_RELOC_MICROMIPS_16_PCREL_S1",
Line 2322... Line 2341...
  "BFD_RELOC_LM32_COPY",
  "BFD_RELOC_LM32_COPY",
  "BFD_RELOC_LM32_GLOB_DAT",
  "BFD_RELOC_LM32_GLOB_DAT",
  "BFD_RELOC_LM32_JMP_SLOT",
  "BFD_RELOC_LM32_JMP_SLOT",
  "BFD_RELOC_LM32_RELATIVE",
  "BFD_RELOC_LM32_RELATIVE",
  "BFD_RELOC_MACH_O_SECTDIFF",
  "BFD_RELOC_MACH_O_SECTDIFF",
 
  "BFD_RELOC_MACH_O_LOCAL_SECTDIFF",
  "BFD_RELOC_MACH_O_PAIR",
  "BFD_RELOC_MACH_O_PAIR",
  "BFD_RELOC_MACH_O_X86_64_BRANCH32",
  "BFD_RELOC_MACH_O_X86_64_BRANCH32",
  "BFD_RELOC_MACH_O_X86_64_BRANCH8",
  "BFD_RELOC_MACH_O_X86_64_BRANCH8",
  "BFD_RELOC_MACH_O_X86_64_GOT",
  "BFD_RELOC_MACH_O_X86_64_GOT",
  "BFD_RELOC_MACH_O_X86_64_GOT_LOAD",
  "BFD_RELOC_MACH_O_X86_64_GOT_LOAD",
Line 2390... Line 2410...
  "BFD_RELOC_TILEPRO_MMEND_X1",
  "BFD_RELOC_TILEPRO_MMEND_X1",
  "BFD_RELOC_TILEPRO_SHAMT_X0",
  "BFD_RELOC_TILEPRO_SHAMT_X0",
  "BFD_RELOC_TILEPRO_SHAMT_X1",
  "BFD_RELOC_TILEPRO_SHAMT_X1",
  "BFD_RELOC_TILEPRO_SHAMT_Y0",
  "BFD_RELOC_TILEPRO_SHAMT_Y0",
  "BFD_RELOC_TILEPRO_SHAMT_Y1",
  "BFD_RELOC_TILEPRO_SHAMT_Y1",
 
  "BFD_RELOC_TILEPRO_TLS_GD_CALL",
 
  "BFD_RELOC_TILEPRO_IMM8_X0_TLS_GD_ADD",
 
  "BFD_RELOC_TILEPRO_IMM8_X1_TLS_GD_ADD",
 
  "BFD_RELOC_TILEPRO_IMM8_Y0_TLS_GD_ADD",
 
  "BFD_RELOC_TILEPRO_IMM8_Y1_TLS_GD_ADD",
 
  "BFD_RELOC_TILEPRO_TLS_IE_LOAD",
  "BFD_RELOC_TILEPRO_IMM16_X0_TLS_GD",
  "BFD_RELOC_TILEPRO_IMM16_X0_TLS_GD",
  "BFD_RELOC_TILEPRO_IMM16_X1_TLS_GD",
  "BFD_RELOC_TILEPRO_IMM16_X1_TLS_GD",
  "BFD_RELOC_TILEPRO_IMM16_X0_TLS_GD_LO",
  "BFD_RELOC_TILEPRO_IMM16_X0_TLS_GD_LO",
  "BFD_RELOC_TILEPRO_IMM16_X1_TLS_GD_LO",
  "BFD_RELOC_TILEPRO_IMM16_X1_TLS_GD_LO",
  "BFD_RELOC_TILEPRO_IMM16_X0_TLS_GD_HI",
  "BFD_RELOC_TILEPRO_IMM16_X0_TLS_GD_HI",
Line 2409... Line 2435...
  "BFD_RELOC_TILEPRO_IMM16_X0_TLS_IE_HA",
  "BFD_RELOC_TILEPRO_IMM16_X0_TLS_IE_HA",
  "BFD_RELOC_TILEPRO_IMM16_X1_TLS_IE_HA",
  "BFD_RELOC_TILEPRO_IMM16_X1_TLS_IE_HA",
  "BFD_RELOC_TILEPRO_TLS_DTPMOD32",
  "BFD_RELOC_TILEPRO_TLS_DTPMOD32",
  "BFD_RELOC_TILEPRO_TLS_DTPOFF32",
  "BFD_RELOC_TILEPRO_TLS_DTPOFF32",
  "BFD_RELOC_TILEPRO_TLS_TPOFF32",
  "BFD_RELOC_TILEPRO_TLS_TPOFF32",
 
  "BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE",
 
  "BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE",
 
  "BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_LO",
 
  "BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_LO",
 
  "BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HI",
 
  "BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HI",
 
  "BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HA",
 
  "BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HA",
  "BFD_RELOC_TILEGX_HW0",
  "BFD_RELOC_TILEGX_HW0",
  "BFD_RELOC_TILEGX_HW1",
  "BFD_RELOC_TILEGX_HW1",
  "BFD_RELOC_TILEGX_HW2",
  "BFD_RELOC_TILEGX_HW2",
  "BFD_RELOC_TILEGX_HW3",
  "BFD_RELOC_TILEGX_HW3",
  "BFD_RELOC_TILEGX_HW0_LAST",
  "BFD_RELOC_TILEGX_HW0_LAST",
Line 2466... Line 2500...
  "BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_PCREL",
  "BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_PCREL",
  "BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_PCREL",
  "BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_PCREL",
  "BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_PCREL",
  "BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_PCREL",
  "BFD_RELOC_TILEGX_IMM16_X0_HW0_GOT",
  "BFD_RELOC_TILEGX_IMM16_X0_HW0_GOT",
  "BFD_RELOC_TILEGX_IMM16_X1_HW0_GOT",
  "BFD_RELOC_TILEGX_IMM16_X1_HW0_GOT",
  "BFD_RELOC_TILEGX_IMM16_X0_HW1_GOT",
 
  "BFD_RELOC_TILEGX_IMM16_X1_HW1_GOT",
 
  "BFD_RELOC_TILEGX_IMM16_X0_HW2_GOT",
 
  "BFD_RELOC_TILEGX_IMM16_X1_HW2_GOT",
 
  "BFD_RELOC_TILEGX_IMM16_X0_HW3_GOT",
 
  "BFD_RELOC_TILEGX_IMM16_X1_HW3_GOT",
 
  "BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_GOT",
  "BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_GOT",
  "BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_GOT",
  "BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_GOT",
  "BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_GOT",
  "BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_GOT",
  "BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_GOT",
  "BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_GOT",
  "BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_GOT",
 
  "BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_GOT",
 
  "BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_GD",
  "BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_GD",
  "BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_GD",
  "BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_GD",
  "BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_GD",
  "BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_LE",
  "BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_GD",
  "BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_LE",
  "BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_GD",
  "BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_LE",
  "BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_GD",
  "BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_LE",
  "BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_GD",
  "BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_LE",
  "BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_GD",
  "BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_LE",
  "BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_GD",
  "BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_GD",
  "BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_GD",
  "BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_GD",
  "BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_GD",
  "BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_GD",
  "BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_GD",
  "BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_GD",
  "BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_GD",
 
  "BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_GD",
 
  "BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_IE",
  "BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_IE",
  "BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_IE",
  "BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_IE",
  "BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_IE",
 
  "BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_IE",
 
  "BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_IE",
 
  "BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_IE",
 
  "BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_IE",
 
  "BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_IE",
 
  "BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_IE",
  "BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_IE",
  "BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_IE",
  "BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_IE",
  "BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_IE",
  "BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_IE",
  "BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_IE",
  "BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_IE",
  "BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_IE",
 
  "BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_IE",
 
  "BFD_RELOC_TILEGX_TLS_DTPMOD64",
  "BFD_RELOC_TILEGX_TLS_DTPMOD64",
  "BFD_RELOC_TILEGX_TLS_DTPOFF64",
  "BFD_RELOC_TILEGX_TLS_DTPOFF64",
  "BFD_RELOC_TILEGX_TLS_TPOFF64",
  "BFD_RELOC_TILEGX_TLS_TPOFF64",
  "BFD_RELOC_TILEGX_TLS_DTPMOD32",
  "BFD_RELOC_TILEGX_TLS_DTPMOD32",
  "BFD_RELOC_TILEGX_TLS_DTPOFF32",
  "BFD_RELOC_TILEGX_TLS_DTPOFF32",
  "BFD_RELOC_TILEGX_TLS_TPOFF32",
  "BFD_RELOC_TILEGX_TLS_TPOFF32",
 
  "BFD_RELOC_TILEGX_TLS_GD_CALL",
 
  "BFD_RELOC_TILEGX_IMM8_X0_TLS_GD_ADD",
 
  "BFD_RELOC_TILEGX_IMM8_X1_TLS_GD_ADD",
 
  "BFD_RELOC_TILEGX_IMM8_Y0_TLS_GD_ADD",
 
  "BFD_RELOC_TILEGX_IMM8_Y1_TLS_GD_ADD",
 
  "BFD_RELOC_TILEGX_TLS_IE_LOAD",
 
  "BFD_RELOC_TILEGX_IMM8_X0_TLS_ADD",
 
  "BFD_RELOC_TILEGX_IMM8_X1_TLS_ADD",
 
  "BFD_RELOC_TILEGX_IMM8_Y0_TLS_ADD",
 
  "BFD_RELOC_TILEGX_IMM8_Y1_TLS_ADD",
  "BFD_RELOC_EPIPHANY_SIMM8",
  "BFD_RELOC_EPIPHANY_SIMM8",
  "BFD_RELOC_EPIPHANY_SIMM24",
  "BFD_RELOC_EPIPHANY_SIMM24",
  "BFD_RELOC_EPIPHANY_HIGH",
  "BFD_RELOC_EPIPHANY_HIGH",
  "BFD_RELOC_EPIPHANY_LOW",
  "BFD_RELOC_EPIPHANY_LOW",
  "BFD_RELOC_EPIPHANY_SIMM11",
  "BFD_RELOC_EPIPHANY_SIMM11",
Line 2560... Line 2586...
   (const bfd_arch_info_type *a, const bfd_arch_info_type *b);
   (const bfd_arch_info_type *a, const bfd_arch_info_type *b);
 
 
bfd_boolean bfd_default_scan
bfd_boolean bfd_default_scan
   (const struct bfd_arch_info *info, const char *string);
   (const struct bfd_arch_info *info, const char *string);
 
 
 
void *bfd_arch_default_fill (bfd_size_type count,
 
    bfd_boolean is_bigendian,
 
    bfd_boolean code);
 
 
/* Extracted from elf.c.  */
/* Extracted from elf.c.  */
 
 
 No newline at end of file
 No newline at end of file

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.