1999-08-08 Mumit Khan <khan@xraylith.wisc.edu>
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index 147ad465af394baefca5ad071d71c43ce4fae5cf..4de1900471cdab93ad2542e08d49afd2a6d3c17f 100644 (file)
@@ -1,3 +1,367 @@
+1999-08-08  Mumit Khan  <khan@xraylith.wisc.edu>
+
+       * section.c (SEC_SHARED): Define.
+       * coffcode.h (sec_to_styp_flags): Handle SEC_SHARED.
+       (styp_to_sec_flags): Likewise.
+       * peicode.h (coff_swap_scnhdr_out): Likewise.
+       * bfd-in2.h: Rebuild.
+
+1999-08-08  Ian Lance Taylor  <ian@zembu.com>
+
+       * coffcode.h (coff_classify_symbol): Comment out part of
+       1999-08-05 change which breaks cygwin DLLs.
+
+       * acinclude.m4 (BFD_BINARY_FOPEN): Change -windows to -windows*.
+       * aclocal.m4, configure: Rebuild.
+
+1999-08-06  Ian Lance Taylor  <ian@zembu.com>
+
+       * section.c (global_syms): Only initialize union field if
+       __STDC__.
+
+1999-08-04  Mark Mitchell  <mark@codesourcery.com>
+
+       * elf32-mips.c (mips_elf_got16_entry): Don't multiply GOT index by
+       the size of a GOT entry here.
+       (mips_elf_calculate_relocation): Don't create a local GOT entry
+       for the symbol in a GOT16 relocation; just for it's high-order bit
+       (_bfd_mips_elf_relocate_section): Fix thinko.
+
+1999-08-05  Ian Lance Taylor  <ian@zembu.com>
+
+       Based on patches from Donn Terry <donn@interix.com>:
+       * coffcode.h (enum coff_symbol_classification): Define.
+       (bfd_coff_backend_data): Rename _bfd_coff_sym_is_global to
+       _bfd_coff_classify_symbol.  Change return type.
+       (bfd_coff_classify_symbol): Rename from bfd_coff_sym_is_global.
+       (coff_slurp_symbol_table): Use coff_classify_symbol.
+       (coff_classify_symbol): New static function.
+       (coff_sym_is_global): Never define.
+       (bfd_coff_std_swap_table): Initialize with coff_classify_symbol.
+       * cofflink.c (coff_link_check_ar_symbols): Use
+       bfd_coff_classify_symbol rather than bfd_coff_sym_is_global.
+       (coff_link_add_symbols): Likewise.
+       (_bfd_coff_link_input_bfd): Likewise.
+       * coff-sh.c (bfd_coff_small_swap_table): Initialize with
+       coff_classify_symbol.
+       * libcoff.h: Rebuild.
+
+Wed Aug  4 18:08:07 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * libhppa.h (R_HPPA_LTPSEL, R_HPPA_RTPSEL): New field selectors
+       (e_ltpsel, e_rtpsel): Similarly.
+
+       * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle 21bit e_ltpsel
+       and 14bit ertpsel.  Handle 64bit psel.
+
+1999-08-04  Mark Mitchell  <mark@codesourcery.com>
+
+       * elf32-mips.c (_bfd_mips_elf_relocate_section): Tweak HI16/LO16
+       handling for REL relocations.  And only left-shift R_MIPS26
+       relocation addends where necessary.
+
+1999-08-03  Mark Mitchell  <mark@codesourcery.com>
+
+       * elf32-mips.c (mips_elf_next_lo16_addend): Rename to ...
+       (mips_elf_next_lo16_relocation): Don't compute the addend here.
+       Just return the relocation found.
+       (mips_elf_relocate_section): Pull the LO16 addend out of the
+       section itself when using REL relocations.
+       
+       * elf32-mips.c (mips_elf_calculate_relocation): Restore
+       _DYNAMIC_LINK handling and handling of undefined symbols in shared
+       libraries.
+
+1999-08-03  Ian Lance Taylor  <ian@zembu.com>
+
+       * elf32-ppc.c (ppc_elf_relocate_section): Don't use the relocation
+       value of a symbol in a SEC_DEBUGGING section.  Warn when doing a
+       relocation against a symbol in an input section with no output
+       section.  From Daniel Jacobowitz <drow@false.org>.
+
+       * coff-stgo32.c (go32_stubbed_coff_object_p): Remove; not used.
+
+       * acinclude.m4 (BFD_CC_FOR_BUILD): Change to use conftest, and to
+       look for generated file correctly.
+       * aclocal.m4, configure: Rebuild.
+
+1999-08-02  Mark Mitchell  <mark@codesourcery.com>
+
+       * elf32-mips.c (_bfd_mips_elf_relocate_section): Handle R_MIPS_26
+       and R_MIPS16_26 relocations correctly when relocating.
+       (_bfd_mips_elf_check_relocs): Don't assume that R_MIPS_CALL_HI16
+       and R_MIPS_CALL_LO16 are for global symbols.
+       
+1999-08-02  Jakub Jelinek  <jj@ultra.linux.cz>
+
+       * elflink.h (elf_bfd_final_link): Copy the whole isym, not just
+       some fields.
+       * elf64-sparc.c (sparc64_elf_output_arch_syms): Declare used
+       variables and initialize them.
+
+1999-08-01  Mark Mitchell  <mark@codesourcery.com>
+
+       * elf32-mips.c (_bfd_mips_elf_final_link): Handle the case where
+       there are no global symbols requiring GOT entries.
+       (_bfd_mips_elf_size_dynamic_sections): Likewise.
+       (_bfd_mips_elf_finish_dynamic_symbol): Likewise.
+       (_bfd_mips_elf_finish_dynamic_sections): Likewise.
+
+       * elf32-mips.c (mips_elf_calculate_relocation): Undefined weak
+       symbols are considered to have the value zero.
+       (_bfd_mips_elf_relocate_section): Don't try to perform a
+       relocation for an undefined symbol.
+       (_bfd_mips_elf_check_relocs): Allocate locate GOT space for local
+       GOT16 relocations.
+
+1999-07-30  Jakub Jelinek  <jj@ultra.linux.cz>
+
+       * elf64-sparc.c (sparc64_elf_build_plt): Cosmetic change - ABI
+       wants ba,a,pt %xcc instead of %icc.
+       Emit correct .PLT0-(.PLTN+4) initial value into the pointer slots
+       of large PLT entries.
+       (sparc64_elf_plt_ptr_offset): Fix calculation.
+       (sparc64_elf_finish_dynamic_symbol): Negative value of R_SPARC_JMP_SLOT
+       addend should be relative to load address, not .plt section start.
+       (sparc64_elf_size_info): Sparc64 uses 32bit .hash entries.
+
+1999-07-30  Jakub Jelinek  <jj@ultra.linux.cz>
+
+       * elf-bfd.h (struct elf_backend_data): Add
+       print_symbol_all and output_arch_syms backend methods.
+       * elfxx-target.h: Likewise.
+       * elf64-sparc.c (sparc64_elf_bfd_link_hash_table_create,
+       sparc64_elf_add_symbol_hook, sparc64_elf_output_arch_syms,
+       sparc64_elf_get_symbol_type, sparc64_elf_symbol_processing): New
+       functions.
+       (sparc64_elf_size_dynamic_sections): Leave space for STT_REGISTER
+       symbols in .dynsym, add their names into .dynstr. Put those symbols
+       into dynlocal.
+       (sparc64_elf_finish_dynamic_sections): Fix up DT_SPARC_REGISTER
+       pointers to STT_REGISTER symbols in dynsym section.
+       (sparc64_elf_print_symbol_all): New function.
+       * elf.c (bfd_elf_print_symbol): Allow special backend symbol
+       printing using the print_symbol_all hook.
+
+1999-07-30  Catherine Moore  <clm@cygnus.com>
+
+       * elf32-arm.h (elf32_arm_check_relocs):  Use r_offset for
+       R_ARM_GNU_VTENTRY.
+
+1999-07-29  Richard Henderson  <rth@cygnus.com>
+
+       * elf32-mips.c (_bfd_mips_elf_final_link): Only re-sort dynsyms if
+       dynamic_sections_created.
+
+1999-07-29  Richard Henderson  <rth@cygnus.com>
+
+       * elf32-mips.c (mips_info_to_howto_rel): Split out switch to ...
+       (mips_rtype_to_howto): ... new function.
+       (_bfd_mips_elf_relocate_section): Use it.
+
+1999-07-28  Mark Mitchell  <mark@codesourcery.com>
+
+       * elf32-mips.c (_bfd_mips_elf_relocate_section): Fix typo.
+
+1999-07-27  Nick Clifton  <nickc@cygnus.com>
+
+       Patch generated by Bernd Schmidt. <bernds@cygnus.co.uk>
+       
+       * coff-arm.c (coff_arm_is_local_label_name): Change to strip
+       out only symbols that start with LOCAL_LABEL_PREFIX followed by 'L'.
+
+1999-07-23  Donn Terry  <donn@interix.com>
+
+       * libcoff-in.h (coff_link_hash_entry): Add coff_link_hash_flags
+       field, and define COFF_LINK_HASH_PE_SECTION_SYMBOL.
+       * cofflink.c (coff_link_add_symbols): If PE, handle section
+       symbols specially.
+       * libcoff.h: Rebuild.
+
+       * config.bfd (i[3456]86-*-interix*): New target.
+
+1999-07-21  Mark Elbrecht  <snowball3@bigfoot.com>
+
+       * coffcode.h (styp_to_sec_flags): If COFF_LONG_SECTION_NAMES and
+       COFF_SUPPORT_GNU_LINKONCE, mark sections whose names begin with
+       .gnu.linkonce with SEC_LINKONCE and SEC_LINK_DUPLICATES_DISCARD.
+       * coff-go32.c: (COFF_LONG_SECTION_NAMES): Define.
+       (COFF_SUPPORT_GNU_LINKONCE): Define.
+       * coff-stgo32.c: (COFF_LONG_SECTION_NAMES): Define.
+       (COFF_SUPPORT_GNU_LINKONCE): Define.
+
+1999-07-21  Ian Lance Taylor  <ian@zembu.com>
+
+       From Mark Elbrecht:
+       * makefile.dos: Remove; obsolete.
+       * configure.bat: Remove; obsolete.
+
+1999-07-21  H.J. Lu  <hjl@gnu.org>
+
+       * config.bfd (i[3456]86-*-vxworks*): Add targ_underscore=yes.
+
+1999-07-21  Philippe De Muyter  <phdm@macqel.be>
+
+       * cofflink.c (_bfd_coff_generic_relocate_section): Issue an error
+       message and fail if a symbol index is out of range.
+
+1999-07-21  Ian Lance Taylor  <ian@zembu.com>
+
+       * elf32-mips.c (mips_elf_calculate_relocation): Get the GP value
+       when looking at a R_MIPS_GOT16 relocation.
+
+1999-07-20  Nick Clifton  <nickc@cygnus.com>
+
+       * coff-m88k.c: Use CREATE_BIG_COFF_TARGET_VEC.
+
+Mon Jul 19 14:03:44 1999  Mark P. Mitchell  <mark@codesourcery.com>
+
+       * elf32-mips.c (_bfd_mips_elf_final_link): Restore setting of GP
+       removed in previous change.
+       (_bfd_mips_elf_relocate_section): Adjust GP relative relocations
+       in relocateable output.
+
+1999-07-19  Ian Lance Taylor  <ian@zembu.com>
+
+       * coff-m88k.c (m88kbcs_vec): Initialize new field of bfd_target
+       structure.
+
+       * elflink.h (elf_merge_symbol): Do merge symbols from the same BFD
+       if they appear to be specially created by the linker.
+
+1999-07-19  Nick Clifton  <nickc@cygnus.com>
+
+       * targets.c (alternative_target): New field in bfd_target
+       structure.
+       (bfd_search_for_target): New function:  Find a target that
+       satisifies a search function.
+       * bfd-in2.h: Regenerate.
+
+       * elfxx-target.h: Initialise the alternative_target field of
+       the bfd_target structures to point to the other target (if
+       defined).
+       * nlm-target.h: Initialise the alternative_target field of
+       the bfd_target structures to point to the other target (if
+       defined).
+       
+       * coffcode.h (CREATE_BIG_COFF_TARGET_VEC): New macro.
+       (CREATE_LITTLE_COFF_TARGET_VEC): New macro.
+       
+       * aix386-core.c: Initialise new field of bfd_target structure. 
+       * aout-adobe.c: Initialise new field of bfd_target structure. 
+       * aout-arm.c: Initialise new field of bfd_target structure. 
+       * aout-target.h: Initialise new field of bfd_target structure. 
+       * aout-tic30.c: Initialise new field of bfd_target structure. 
+       * binary.c: Initialise new field of bfd_target structure. 
+       * bout.c: Initialise new field of bfd_target structure. 
+       * cisco-core.c: Initialise new field of bfd_target structure. 
+       * coff-a29k.c: Use CREATE_BIG_COFF_TARGET_VEC.
+       * coff-alpha.c: Initialise new field of bfd_target structure. 
+       * coff-apollo.c: Use CREATE_BIG_COFF_TARGET_VEC.
+       * coff-arm.c: Use CREATE_{BIG|LITTLE}_COFF_TARGET_VEC.
+       * coff-h8300.c: Use CREATE_BIG_COFF_TARGET_VEC.
+       * coff-h8500.c: Use CREATE_BIG_COFF_TARGET_VEC.
+       * coff-i386.c: Initialise new field of bfd_target structure. 
+       * coff-i860.c: Initialise new field of bfd_target structure. 
+       * coff-i960.c: Use CREATE_LITTLE_COFF_TARGET_VEC.
+       * coff-m68k.c: Use CREATE_BIG_COFF_TARGET_VEC.
+       * coff-mcore.c: Use CREATE_{BIG|LITTLE}_COFF_TARGET_VEC.
+       * coff-mips.c: Initialise new field of bfd_target structure. 
+       * coff-ppc.c: Initialise new field of bfd_target structure. 
+       * coff-rs6000.c: Initialise new field of bfd_target structure. 
+       * coff-sh.c:  Use CREATE_{BIG|LITTLE}_COFF_TARGET_VEC.
+       * coff-sparc.c: Use CREATE_BIG_COFF_TARGET_VEC.
+       * coff-tic30.c: Initialise new field of bfd_target structure. 
+       * coff-tic80.c: Use CREATE_LITTLE_COFF_TARGET_VEC.
+       * coff-w65.c:   Use CREATE_LITTLE_COFF_TARGET_VEC.
+       * coff-we32k.c: Use CREATE_BIG_COFF_TARGET_VEC.
+       * coff-z8k.c:   Use CREATE_BIG_COFF_TARGET_VEC.
+       * hppabsd-core.c: Initialise new field of bfd_target structure. 
+       * hpux-core.c: Initialise new field of bfd_target structure. 
+       * i386msdos.c: Initialise new field of bfd_target structure. 
+       * i386os9k.c: Initialise new field of bfd_target structure. 
+       * ieee.c: Initialise new field of bfd_target structure. 
+       * ihex.c: Initialise new field of bfd_target structure. 
+       * irix-core.c: Initialise new field of bfd_target structure. 
+       * mipsbsd.c: Initialise new field of bfd_target structure. 
+       * netbsd-core.c: Initialise new field of bfd_target structure. 
+       * oasys.c: Initialise new field of bfd_target structure. 
+       * osf-core.c: Initialise new field of bfd_target structure. 
+       * ppcboot.c: Initialise new field of bfd_target structure. 
+       * ptrace-core.c: Initialise new field of bfd_target structure. 
+       * sco5-core.c: Initialise new field of bfd_target structure. 
+       * som.c: Initialise new field of bfd_target structure. 
+       * srec.c: Initialise new field of bfd_target structure. 
+       * tekhex.c: Initialise new field of bfd_target structure. 
+       * trad-core.c: Initialise new field of bfd_target structure. 
+       * versados.c: Initialise new field of bfd_target structure. 
+       * vms.c: Initialise new field of bfd_target structure. 
+
+1999-07-19  Andreas Schwab  <schwab@suse.de>
+
+       * elflink.h (elf_bfd_final_link): Remove unused variables rel_hash
+       and rel_hdr.
+
+Sat Jul 17 02:28:28 1999  Mark P. Mitchell  <mark@codesourcery.com>
+
+       * elflink.h (elf_link_adjust_relocs): New function.
+       (elf_bfd_final_link): Use it.
+       (elf_link_input_bfd): Deal with the fact that there can be 
+       two relocation sections for a single section.
+       (elf_reloc_link_order): Likewise.
+
+       * elf32-mips.c (_bfd_mips_elf_final_link): Don't set GP for 
+       a relocateable object.
+       (_bfd_mips_elf_relocate_section): Handle relocateable links.
+
+1999-07-16  Jakub Jelinek  <jj@ultra.linux.cz>
+
+       * elf64-sparc.c (sparc64_elf_info_to_howto): Use ELF64_R_TYPE_ID.
+       (sparc64_elf_get_reloc_upper_bound,
+       sparc64_elf_get_dynamic_reloc_upper_bound,
+       sparc64_elf_slurp_one_reloc_table, sparc64_elf_slurp_reloc_table,
+       sparc64_elf_canonicalize_dynamic_reloc, sparc64_elf_write_relocs):
+       New functions.
+       (sparc64_elf_check_relocs, sparc64_elf_relocate_section): Use
+       ELF64_R_TYPE_ID/DATA where appropriate.
+
+1999-07-16  Jakub Jelinek  <jj@ultra.linux.cz>
+
+       * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Remove
+       DT_SPARC_PLTFMT.
+
+1999-07-16  Ian Lance Taylor  <ian@zembu.com>
+
+       * elf32-mips.c (mips_elf_local_relocation_p): New static
+       function.
+       (mips_elf_next_lo16_addend): Call bfd_set_error on failure.
+       (mips_elf_calculate_relocation): Use mips_elf_local_relocation_p.
+       Always set *require_jalxp.
+       (mips_elf_stub_section_p): Mark abfd parameter as unused.
+       (_bfd_mips_elf_relocate_section): Only look for LO16 following
+       GOT16 if the GOT16 is against a local symbol.  Don't return false
+       for an undefined symbol.  If there is an overflow, assert that we
+       have a name.
+
+1999-07-16  Andreas Schwab  <schwab@suse.de>
+
+       * elflink.h (elf_link_record_local_dynamic_symbol): Remove unused
+       variables `link' and `elfsec'.
+       (elf_bfd_final_link): Remove unused variable `os'.
+
+Thu Jul 15 17:55:31 1999  Mark P. Mitchell  <mark@codesourcery.com>
+
+       * elf32-mips.c (_bfd_mips_elf_modify_segment_map): Don't require
+       a PT_PHDR program headers.
+       (_bfd_mips_elf_final_link): Don't assume there are going to be
+       section symbols when we're not building a shared object.
+       (_bfd_mips_elf_check_relocs): Make sure we have a GOT when
+       we need one.
+
+1999-07-15  J.T. Conklin  <jtc@redback.com>
+
+       * config.bfd (i[3456]86-*-vxworks*): New target.
+
 1999-07-15  Mark Mitchell  <mark@codesourcery.com>
 
        * elf32-mips.c (mips_elf_stub_section_p): New function.
This page took 0.028424 seconds and 4 git commands to generate.