* libbfd.c (bfd_read): Set bfd_error as appropriate for a short
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index cb7e9bc48e03fa1dadab6138e95a401efc931029..1896682fba1df8af541b4e6acaeae63429c801d2 100644 (file)
@@ -1,3 +1,172 @@
+Sat Mar 26 10:25:43 1994  Jeffrey A. Law  (law@snake.cs.utah.edu)
+
+        * libbfd.c (bfd_read): Set bfd_error as appropriate for a short
+       read. (bfd_error_system_call or bfd_error_file_truncated).
+
+       * som.c: Do not blindly set bfd_error_system_call after a
+       failing bfd_read, bfd_write, or bfd_seek.  In a few places
+       (like som_object_p) override the error status set by bfd_read.
+
+       * aix386-core.c, aout-encap,c archive.c, bout.c: Likewise.
+       * coff-rs6000.c, coffgen.c ecoff.c, elf.c: Likewise.
+       * elf32-hppa.c, elfcode.h, hp300hpux.c, i386lynx.c: Likewise.
+       * nlm32-alpha.c, nlm32-i386.c, nlm32-sparc.c: Likewise.
+
+       * som.c: Check return values from several bfd_{seek,read,write}
+       calls that we just assumed were not failing.
+
+Fri Mar 25 11:44:06 1994  Jim Kingdon  (kingdon@lioth.cygnus.com)
+
+       * hosts/sysv4.h (HAVE_PROCFS): Add comments about ptx4.
+       * config/sysv4.mh: Add comment.
+       * config/symmetry.mh: Change comment.
+       * configure.host: Use sysv4, not symmetry, for i[34]86-sequent-sysv4*.
+
+Fri Mar 25 17:10:45 1994  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
+
+       Changes to support linker relaxing of embedded MIPS PIC code to
+       use a five instruction sequence for function calls which are out of
+       range of the bal instruction.
+       * libecoff.h (struct ecoff_section_tdata): Define.
+       (ecoff_section_data): Define.
+       (ecoff_bfd_relax_section): Don't define.
+       * ecoff.c (ecoff_final_link_debug_accumulate): Don't read or free
+       the debugging information if it has already been read.
+       (ecoff_indirect_link_order): Handle _cooked_size being different
+       from _raw_size.  Don't reread the contents or the relocs if they
+       have already been read in.
+       * coff-mips.c (mips_howto_table): Change bitsize of PCREL16 from
+       18 to 16.
+       (PCREL16_EXPANSION_ADJUSTMENT): Define.
+       (mips_relocate_refhi): Take adjust argument.
+       (mips_relocate_section): Handle reloc offsets stored in section
+       used_by_bfd field.  Call mips_relax_pcrel16 to handle details of
+       expanding an out of range PCREL16.  Keep trace of adjustments
+       required by expansions.  Set s and unset h when converting a reloc
+       from undefined to section.  Change handling of PC relative relocs:
+       if against a section, they are correct in the object file, if
+       against an external symbol they are pcrel_offset.
+       (mips_relax_section): New function.
+       (mips_relax_pcrel16): New function.
+       (ecoff_bfd_relax_section): Define.
+       * coff-alpha.c (ecoff_bfd_relax_section): Define.
+       * ecofflink.c (bfd_ecoff_debug_accumulate): Handle adjustments
+       built by mips_relax_section when writing out addresses.
+       * elf32-mips.c (mips_elf_read_ecoff_info): Clear adjust field.
+
+       * aoutx.h (NAME(aout,find_nearest_line)): The caller expects
+       functionname_ptr to be set to a symbol name, so prepend
+       symbol_leading_char.
+
+Thu Mar 24 11:33:46 1994  Steve Chamberlain  (sac@jonny.cygnus.com)
+
+       * coff-h8300.c (h8300_reloc16_extra_cases): Add relaxing info
+       for 16bit relative branches.
+       * coff-h8500.c (r_high8, r_low16, r_high16): Don't complain on
+       overflow.
+
+Thu Mar 24 09:21:13 1994  Jeffrey A. Law  (law@snake.cs.utah.edu)
+
+       * som.c (som_bfd_prep_for_ar_write): Ignore non-SOM objects.
+       (som_bfd_ar_write_symbol_stuff, som_write_armap): Likewise.
+
+Wed Mar 23 14:29:31 1994  David J. Mackenzie  (djm@rtl.cygnus.com)
+
+       * netbsd386.c (N_SET_FLAGS): Delete the old definition.
+
+Wed Mar 23 14:58:44 1994  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
+
+       Clean up the relaxing code for the new linker.
+       * targets.c (_bfd_relax_section): Take boolean *again argument
+       rather than asymbol list.
+       * bfd.c (bfd_relax_section): Change name of fourth argument from
+       symbols to again.
+       * reloc.c (bfd_generic_relax_section): Take boolean *again
+       argument rather than asymbol list.  Always return true.
+       * bout.c: Include genlink.h.
+       (aligncode, perform_slip): Declare.
+       (perform_slip): Take BFD argument rather than asymbol list.
+       Changed all callers.  Get the symbols from the BFD.  Change the
+       hash table entry value as well as the symbol value.
+       (abs32code): Take BFD argument rather than asymbol list.  Changed
+       all callers.
+       (aligncode): Likewise.
+       (b_out_relax_section): Take boolean *again argument rather than
+       asymbol list.  Only return false if an error occurred.  Set *again
+       to false.  Get symbols from BFD.
+       * reloc16.c: Include genlink.h.
+       (bfd_perform_slip): Take BFD argument rather than asymbol list.
+       Get the symbols from the BFD.  Change the hash table entry value
+       as well as the symbol value.
+       (bfd_coff_reloc16_relax_section): Take boolean *again argument
+       rather than asymbol list.  Only return false if an error occurred.
+       Set *again to false.  Get symbols from BFD.
+       * coffcode.h (bfd_coff_backend_data): Change
+       _bfd_coff_reloc16_estimate to take BFD argument rather than
+       asymbol list.
+       (bfd_coff_reloc16_estimate): Corresponding change.
+       (dummy_reloc16_estimate): Corresponding change.
+       * libcoff-in.h (bfd_coff_reloc16_relax_section): Change
+       declaration to take boolean * rather than asymbol list.
+       (bfd_perform_slip): Change declaration to take BFD rather than
+       asymbol list.
+       * coff-h8300.c (h300_reloc16_estimate): Take BFD argument rather
+       than asymbol list.  Changed calls to bfd_perform_slip.
+       * bfd-in2.h: Rebuilt.
+       * libbfd.h: Rebuilt.
+       * libcoff.h: Rebuilt.
+       * Makefile.in: Rebuilt dependencies.
+
+       * genlink.h (_bfd_generic_link_get_symbols): Define.
+       (_bfd_generic_link_get_symcount): Define.
+       * linker.c (generic_link_read_symbols): New function.
+       (generic_link_add_object_symbols): Use it.  Use
+       _bfd_generic_link_get_symbols and _bfd_generic_link_get_symcount
+       to get the symbols from the BFD.
+       (generic_link_check_archive_element): Likewise.
+       (_bfd_generic_final_link): Likewise.
+       (_bfd_generic_link_output_symbols): Likewise.
+       (default_indirect_link_order): Likewise.
+       (generic_link_add_symbol_list): Store pointer to hash table entry
+       in asymbol udata field.
+
+Tue Mar 22 13:09:44 1994  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
+
+       * coff-mips.c (mips_howto_table): Add entry for new MIPS_R_PCREL16
+       reloc, used in embedded PIC code.
+       (mips_adjust_reloc_in): Change sanity check to permit new reloc.
+       (mips_bfd_reloc_type_lookup): Turn BFD_RELOC_16_PCREL_S2 into
+       MIPS_R_PCREL16.
+
+       * elf32-mips.c (mips_elf_final_link): Account for link_order
+       relocs when allocating space for relocations.  Set SEC_RELOC flag
+       for any section which has relocs.  Handle link_order relocs in
+       link_order loop.  Use _bfd_generic_link_add_symbols_collect for
+       add_symbls entry point.
+
+       * linker.c (_bfd_generic_final_link): Set reloc_count to 0 before
+       counting relocs.  Set SEC_RELOC flag for any section which has
+       relocs.
+
+       * linker.c (_bfd_default_link_order): Handle bfd_data_link_order.
+
+       * linker.c (_bfd_generic_link_add_symbols): Just call
+       generic_link_add_symbols.
+       (_bfd_generic_link_add_symbols_collect): New function, like
+       _bfd_generic_link_add_symbols but also collect constructors and
+       destructors by name as collect2 does.
+       (generic_link_add_symbols): New function, like old
+       _bfd_generic_link_add_symbols but with collect argument.
+       (generic_link_add_object_symbols): Take collect argument.
+       (generic_link_check_archive_element_no_collect): New function.
+       (generic_link_check_archive_element_collect): New function.
+       (generic_link_check_archive_element): Take collect argument.
+       (generic_link_add_symbol_list): Take collect argument.
+       (_bfd_generic_link_add_one_symbol): Rename constructor argument to
+       collect.
+       * libbfd-in.h (_bfd_generic_link_add_symbols_collect): Declare.
+       * libbfd.h: Rebuilt.
+
 Tue Mar 22 10:04:00 1994  Jeffrey A. Law  (law@snake.cs.utah.edu)
 
        * archive.c (bfd_construct_extended_name_table): Use ar_padchar
This page took 0.038431 seconds and 4 git commands to generate.