aboutsummaryrefslogtreecommitdiff
path: root/bfd/libecoff.h
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1995-10-05 17:48:32 +0000
committerIan Lance Taylor <ian@airs.com>1995-10-05 17:48:32 +0000
commitaca736871c2567ee38bd285afdff62d6339790e4 (patch)
treec985ff5eac4c2120cf4818d4a1a42698120ec980 /bfd/libecoff.h
parent90ce63bb0e3d8e855bcffd8ecf9adca4a3b2cd6e (diff)
downloadgdb-aca736871c2567ee38bd285afdff62d6339790e4.zip
gdb-aca736871c2567ee38bd285afdff62d6339790e4.tar.gz
gdb-aca736871c2567ee38bd285afdff62d6339790e4.tar.bz2
* libecoff.h (struct ecoff_backend_data): Add adjust_headers
field. * ecoff.c (ecoff_sec_to_styp_flags): Check for various Alpha sections, and set styp correctly for them: .got, .hash, .dynamic, .liblist, .rel.dyn, .conflic, .dynstr, .dynsym, .comment. (_bfd_ecoff_styp_to_sec_flags): Check for various Alpha section types. (ecoff_sort_hdrs): New static function. (ecoff_compute_section_file_positions): Return boolean, not void. Sort the sections by VMA before looking through them. Put the first non SEC_ALLOC section on a new page. Put every SEC_ALLOC section on an appropriate boundary within the page. (ecoff_compute_reloc_file_positions): Check return value of ecoff_compute_section_file_positions. (_bfd_ecoff_set_section_contents): Likewise. (_bfd_ecoff_write_object_contents): Check for various Alpha section types when incrementing text_size and data_size. Call adjust_headers backend function if it exists. * coff-alpha.c (alpha_adjust_headers): New static function. (alpha_ecoff_backend_data): Initialize adjust_headers field. * coff-mips.c (mips_ecoff_backend_data): Likewise. PR 8141.
Diffstat (limited to 'bfd/libecoff.h')
-rw-r--r--bfd/libecoff.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/bfd/libecoff.h b/bfd/libecoff.h
index d16e3fa..e8af957 100644
--- a/bfd/libecoff.h
+++ b/bfd/libecoff.h
@@ -68,6 +68,9 @@ struct ecoff_backend_data
bfd *input_bfd, asection *input_section,
bfd_byte *contents,
PTR external_relocs));
+ /* Do final adjustments to filehdr and aouthdr. */
+ boolean (*adjust_headers) PARAMS ((bfd *, struct internal_filehdr *,
+ struct internal_aouthdr *));
};
/* This is the target specific information kept for ECOFF files. */
@@ -312,7 +315,6 @@ extern boolean _bfd_ecoff_bfd_final_link
/* Hook functions for the generic COFF section reading code. */
extern PTR _bfd_ecoff_mkobject_hook PARAMS ((bfd *, PTR filehdr, PTR aouthdr));
-extern asection *_bfd_ecoff_make_section_hook PARAMS ((bfd *abfd, char *name));
#define _bfd_ecoff_set_alignment_hook \
((void (*) PARAMS ((bfd *, asection *, PTR))) bfd_void)
extern boolean _bfd_ecoff_set_arch_mach_hook PARAMS ((bfd *abfd, PTR filehdr));