* elfcode.h: Include bfdlink.h. Added several new functions to do
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index 860241f6ead661bf3ba54ed42fb56e0af75e7183..ab6ca34b74adad7ef82d48d7fda745e066d4f1ef 100644 (file)
@@ -1,3 +1,163 @@
+Mon May  9 11:53:54 1994  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
+
+       * elfcode.h: Include bfdlink.h.  Added several new functions to do
+       linking.
+       (ELF_R_TYPE): Define.
+       (bfd_add_to_strtab): Return unsigned long.  Change check for
+       realloc failure.
+       (elf_fake_sections): Check return value of bfd_add_to_strtab.
+       (elf_compute_section_file_positions): Add link_info argument.
+       Call elf_backend_begin_write_processing hook and prep_headers
+       here.  Only call swap_out_syms if link_info is NULL.  Set up
+       .shstrtab section here.  Pass dosyms argument to
+       assign_file_positions_except_relocs.  Set output_has_begun flag.
+       (assign_file_positions_for_symtab_and_strtabs): Add dosyms
+       argument, and use it to control setting .symtab and .strtab file
+       positions.
+       (assign_file_positions_except_relocs): Add dosyms argument, and
+       pass it on.
+       (prep_headers): Check return value of bfd_add_to_strtab.
+       (swap_out_syms): Likewise.  Also, don't set up .shstrtab here.
+       (NAME(bfd_elf,write_object_contents)): Some calls moved into
+       elf_compute_section_file_positions.
+       (elf_set_section_contents): Likewise.
+       (elf_slurp_symbol_table): SHN_LORESERV corrected to SHN_LORESERVE.
+       * libelf.h: Include bfdlink.h.
+       (struct elf_backend_data): Add fields collect,
+       elf_add_symbol_hook, elf_backend_relocate_section.
+       (struct bfd_elf_section_data): Add field rel_hashes.
+       (struct elf_obj_tdata): Remove fields internal_syms and symbols.
+       Add field sym_hashes.
+       (obj_symbols, obj_internal_syms): Remove definitions.
+       (elf_sym_hashes): Define.
+       (struct elf_link_hash_entry): Define.
+       (struct elf_link_hash_table): Define.
+       (elf_link_hash_lookup): Define.
+       (elf_link_hash_traverse): Define.
+       (elf_hash_table): Define.
+       (_bfd_elf_link_hash_table_create): Declare.
+       (bfd_elf32_bfd_link_add_symbols): Declare.
+       (bfd_elf32_bfd_final_link): Declare.
+       (bfd_elf64_bfd_link_add_symbols): Declare.
+       (bfd_elf64_bfd_final_link): Declare.
+       * elf.c: Include bfdlink.h.
+       (elf_link_hash_newfunc): New function.
+       (_bfd_elf_link_hash_table_create): New function.
+       * elf32-target.h (elf_backend_relocate_section): If not defined,
+       define as 0 and use generic linker.  Otherwise, use ELF backend
+       linker.
+       (elf_backend_collect): If not defined, define as false.
+       (elf_backend_add_symbol_hook): If not defined, define as 0.
+       (elf32_bed): Initialize new fields.
+       * elf64-target.h: Same changes as elf32-target.h.
+       * elf32-i386.c: Include bfdlink.h.
+       (elf_i386_relocate_section): New function.
+       (elf_backend_relocate_section): Define.
+       * elf32-sparc.c: Include bfdlink.h.
+       (elf_info_to_howto): Change type of dst from Elf32_Internal_Rela
+       to Elf_Internal_Rela (they're the same type anyhow).
+       (elf_sparc_relocate_section): New function.
+       (elf_backend_relocate_section): Define.
+       * elf32-mips.c (elf_backend_collect): Define.
+
+       * Makefile.in (stmp-bfd.h): Avoid useless make error message in a
+       different way; touch takes a numeric argument on some systems.
+
+Fri May  6 13:34:14 1994  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
+
+       * nlmcode.h (nlm_swap_auxiliary_headers_in): Rework custom header
+       handling for latest suggested format.
+       (nlm_swap_auxiliary_headers_out): Likewise.
+       (nlm_compute_section_file_positions): Likewise.
+
+Fri May  6 11:11:50 1994  D. V. Henkel-Wallace  (gumby@rtl.cygnus.com)
+
+       * config.bfd: handle erricsson config (for OSE).
+
+Thu May  5 15:40:47 1994  Ken Raeburn  (raeburn@cujo.cygnus.com)
+
+       Patches from Ralph Campbell:
+       * mipsbsd.c (mips_fix_jmp_addr): New function.
+       (mips_fix_hi16_s): Use bfd_is_com_section.
+       (mips_howto_table_ext): Call mips_fix_jmp_addr for MIPS_RELOC_JMP.
+
+Fri May  6 11:48:55 1994  Steve Chamberlain  (sac@cygnus.com)
+
+       * config/go32.mh: XX support.
+
+       From bill
+       * Makefile.in: Build sysdep.h without causing worrying but
+       harmless error message.
+
+Fri May  6 13:34:14 1994  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
+
+       * nlmcode.h (nlm_swap_auxiliary_headers_in): Rework custom header
+       handling for latest suggested format.
+       (nlm_swap_auxiliary_headers_out): Likewise.
+       (nlm_compute_section_file_positions): Likewise.
+
+Thu May  5 15:40:47 1994  Ken Raeburn  (raeburn@cujo.cygnus.com)
+
+       Patches from Ralph Campbell:
+       * mipsbsd.c (mips_fix_jmp_addr): New function.
+       (mips_fix_hi16_s): Use bfd_is_com_section.
+       (mips_howto_table_ext): Call mips_fix_jmp_addr for MIPS_RELOC_JMP.
+
+>>>>>>> 1.1152
+Wed May  4 11:09:53 1994  Ian Lance Taylor  (ian@cygnus.com)
+
+       Changed m68k-aout to set flags to 0; m68k-sunos still uses 1.
+       * aout0.c: New file.
+       * targets.c (aout0_big_vec): Declare.
+       (bfd_target_vector): Add aout0_big_vec.
+       * config.bfd (m68*-*-aout*): Use m68k-0aout, not m68k-aout.
+       * config/m68k-aout.mt (SELECT_VECS): Removed.
+       * config/m68k-0aout.mt: New file.
+       * configure.in (aout0_big_vec): New target vector: use aout0.o,
+       aout32.o and stab-syms.o.
+       * Makefile.in: Rebuilt dependencies.
+       (BFD32_BACKENDS): Add aout0.o.
+       (CFILES): Add aout0.c.
+
+       * libaout.h (struct aout_backend_data): Add field exec_hdr_flags.
+       * aout-target.h (MY_exec_hdr_flags): If not defined, define as 0.
+       MY(backend_data): Initialize exec_hdr_flags field.
+       * aoutf1.h (sunos_32_set_arch_mach): Make static.
+       (aout32_sunos4_write_object_contents): Set flags from backend
+       info.
+       (MY_exec_hdr_flags): If not defined, define as 1.
+       (sunos4_aout_backend): Initialize exec_hdr_flags field.
+       * aout-encap.c (encap_write_object_contents): Set flags from
+       backend info.
+       (MY_exec_hdr_flags): Define as N_FLAGS_COFF_ENCAPSULATE.
+       * hp300hpux.c (MY_exec_hdr_flags): Define as 0x2.
+       (MY(write_object_contents)): Set flags from backend info.
+       * i386aout.c (MY(backend_data)): Initialize exec_hdr_flags field.
+       * i386mach3.c (MY(backend_data)): Likewise.
+       * mipsbsd.c (MY(backend_data)): Likewise.
+       * sparclynx.c (NAME(aout,sparclynx_write_object_contents)): Set
+       flags from backend info.
+       (sparclynx_aout_backend): Initialize exec_hdr_flags field.
+
+Wed May  4 02:56:00 1994  Ken Raeburn  (raeburn@kr-pc.cygnus.com)
+
+       * config.bfd (i386-*-gnu*): Treat like i386-*-mach*.
+       (m68*-apollo-*): Treat all Apollo configs the same, don't handle
+       BSD specially.
+
+Tue May  3 19:43:21 1994  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
+
+       * cache.c: Rewrote to work correctly.
+       * libbfd.h: Rebuilt.
+       * opncls.c (bfd_cache_init, bfd_open_file): Don't declare.
+       (bfd_fdopenr): Check return value of bfd_cache_init.
+
+Fri Apr 29 15:08:23 1994  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
+
+       * cf-m68klynx.c (CALC_ADDEND): Check for PC relative relocs by
+       enumerating them, since the reloc type can not serve as an index
+       into the m68k COFF howto_table.
+
 Fri Apr 29 09:42:39 1994  Steve Chamberlain  (sac@cygnus.com)
 
         * config.bfd (*-go32): Changed to coff.
This page took 0.025086 seconds and 4 git commands to generate.