diff options
author | Ian Lance Taylor <ian@airs.com> | 1995-11-15 01:34:56 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 1995-11-15 01:34:56 +0000 |
commit | 631b10f44e08b1b4daefc4d1ecd0ce9eca0c9a30 (patch) | |
tree | d446b782edcbda95cd69a35c17adeac4abf236a9 /bfd | |
parent | ab276dfa721c1328a15a6bb9b184083a35016a87 (diff) | |
download | gdb-631b10f44e08b1b4daefc4d1ecd0ce9eca0c9a30.zip gdb-631b10f44e08b1b4daefc4d1ecd0ce9eca0c9a30.tar.gz gdb-631b10f44e08b1b4daefc4d1ecd0ce9eca0c9a30.tar.bz2 |
* elf.c (bfd_section_from_shdr): When using a different section
header, pass the new one to _bfd_elf_make_section_from_shdr.
(elf_fake_sections): Don't set sh_info and sh_entsize fields.
(elf_map_symbols): Add section VMA to symbol value when comparing
against 0.
(_bfd_elf_compute_section_file_positions): Only build symbol table
if there are some symbols. Set file offset of symtab and strtab
sections.
(assign_file_positions_except_relocs): Remove dosyms parameter.
Change all callers. Never set file offset of symtab and strtab
sections.
(_bfd_elf_copy_private_section_data): New function.
(MAP_ONESYMTAB, MAP_DYNSYMTAB, MAP_STRTAB, MAP_SHSTRTAB): Define.
(_bfd_elf_copy_private_symbol_data): New function.
(swap_out_syms): Check for special mapping of st_shndx created by
copy_private_symbol_data.
* elfxx-target.h: Use new copy routines.
* elf-bfd.h (_bfd_elf_copy_private_symbol_data): Declare.
(_bfd_elf_copy_private_section_data): Declare.
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 25 | ||||
-rw-r--r-- | bfd/elfxx-target.h | 8 |
2 files changed, 31 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 6e5121e..9d90a79 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,30 @@ Tue Nov 14 11:52:23 1995 Ian Lance Taylor <ian@cygnus.com> + * elf.c (bfd_section_from_shdr): When using a different section + header, pass the new one to _bfd_elf_make_section_from_shdr. + (elf_fake_sections): Don't set sh_info and sh_entsize fields. + (elf_map_symbols): Add section VMA to symbol value when comparing + against 0. + (_bfd_elf_compute_section_file_positions): Only build symbol table + if there are some symbols. Set file offset of symtab and strtab + sections. + (assign_file_positions_except_relocs): Remove dosyms parameter. + Change all callers. Never set file offset of symtab and strtab + sections. + (_bfd_elf_copy_private_section_data): New function. + (MAP_ONESYMTAB, MAP_DYNSYMTAB, MAP_STRTAB, MAP_SHSTRTAB): Define. + (_bfd_elf_copy_private_symbol_data): New function. + (swap_out_syms): Check for special mapping of st_shndx created by + copy_private_symbol_data. + * elfxx-target.h: Use new copy routines. + * elf-bfd.h (_bfd_elf_copy_private_symbol_data): Declare. + (_bfd_elf_copy_private_section_data): Declare. + + * config.bfd (sh-*-*): Set targ_defvec to shcoff_vec. + + * coffcode.h (coff_slurp_symbol_table): If COFF_WITH_PE, handle + C_NT_WEAK. + * coff-sh.c (shlcoff_vec): Use _bfd_generic_archive_p, not _bfd_dummy_target, matching the recent change to archive recognition. diff --git a/bfd/elfxx-target.h b/bfd/elfxx-target.h index 225f5a6..5ef3ed0 100644 --- a/bfd/elfxx-target.h +++ b/bfd/elfxx-target.h @@ -56,6 +56,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #define bfd_elfNN_sizeof_headers _bfd_elf_sizeof_headers #define bfd_elfNN_write_object_contents _bfd_elf_write_object_contents +#define bfd_elfNN_get_section_contents_in_window \ + _bfd_generic_get_section_contents_in_window + #ifndef elf_backend_want_got_plt #define elf_backend_want_got_plt 0 #endif @@ -85,11 +88,12 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef bfd_elfNN_bfd_copy_private_symbol_data #define bfd_elfNN_bfd_copy_private_symbol_data \ - ((boolean (*) PARAMS ((bfd *, asymbol *, bfd *, asymbol *))) bfd_true) + _bfd_elf_copy_private_symbol_data #endif + #ifndef bfd_elfNN_bfd_copy_private_section_data #define bfd_elfNN_bfd_copy_private_section_data \ - ((boolean (*) PARAMS ((bfd *, asection *, bfd *, asection *))) bfd_true) + _bfd_elf_copy_private_section_data #endif #ifndef bfd_elfNN_bfd_copy_private_bfd_data #define bfd_elfNN_bfd_copy_private_bfd_data \ |