aboutsummaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1994-09-07 23:41:58 +0000
committerIan Lance Taylor <ian@airs.com>1994-09-07 23:41:58 +0000
commit1208625d33b319c844bf10ec48f9a57cec76a5f1 (patch)
tree03f73ee106063c8138ae3721532bd2c257cb9e9e /bfd
parentbf111c9f7dabd9b0268ab8399e4af804d1267f9b (diff)
downloadgdb-1208625d33b319c844bf10ec48f9a57cec76a5f1.zip
gdb-1208625d33b319c844bf10ec48f9a57cec76a5f1.tar.gz
gdb-1208625d33b319c844bf10ec48f9a57cec76a5f1.tar.bz2
* libelf.h (struct elf_backend_data): Change second argument of
elf_backend_final_write_processing hook to boolean. (struct elf_obj_tdata): Add linker field. * elfcode.h (NAME(bfd_elf,write_object_contents)): Pass value of tdata linker field to final_write_processing, rather than NULL. (elf_bfd_final_link): Don't call final_write_processing hook. Set tdata linker field to true. * elf32-mips.c (mips_elf_final_write_processing): Change type of second argument to boolean. * elf32-hppa.c (elf32_hppa_backend_final_write_processing): Likewise.
Diffstat (limited to 'bfd')
-rw-r--r--bfd/libelf.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/bfd/libelf.h b/bfd/libelf.h
index d43f135..eeac23b 100644
--- a/bfd/libelf.h
+++ b/bfd/libelf.h
@@ -383,9 +383,10 @@ struct elf_backend_data
PARAMS ((bfd *, struct bfd_link_info *));
/* A function to do any final processing needed for the ELF file
- before writing it out. */
+ before writing it out. The LINKER argument is true if this BFD
+ was created by the ELF backend linker. */
void (*elf_backend_final_write_processing)
- PARAMS ((bfd *, struct bfd_link_info *));
+ PARAMS ((bfd *, boolean linker));
/* The swapping table to use when dealing with ECOFF information.
Used for the MIPS ELF .mdebug section. */
@@ -461,6 +462,10 @@ struct elf_obj_tdata
bfd_vma gp; /* The gp value (MIPS only, for now) */
int gp_size; /* The gp size (MIPS only, for now) */
+ /* This is set to true if the object was created by the backend
+ linker. */
+ boolean linker;
+
/* A mapping from external symbols to entries in the linker hash
table, used when linking. This is indexed by the symbol index
minus the sh_info field of the symbol table header. */