1999-09-04 Steve Chamberlain <sac@pobox.com>
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index e013fb5d4e4b55798420c4d9723b13deee3f494f..44733602a880241a0f46ba468df0e3d72e197044 100644 (file)
@@ -1,3 +1,431 @@
+1999-09-04  Steve Chamberlain  <sac@pobox.com>
+
+       * cpu-pj.c: New file.
+       * elf32-pj.c: New file.
+       * config.bfd (pj*): New cpu.
+       (pj-*-*, pjl-*-*): New targets.
+       * configure.in (bfd_elf32_pj_vec): New target vector.
+       (bfd_elf32_pjl_vec): New target vector.
+       * archures.c (bfd_arch_pj): Define.
+       * elf.c (prep_headers): Handle bfd_arch_pj.
+       * reloc.c: Define BFD_RELOC_PJ_* relocations.
+       * targets.c (bfd_elf32_pj_vec, bfd_elf32_pjl_vec): Declare and add
+       to target vector list.
+       * Makefile.am: Rebuild dependencies.
+       (ALL_MACHINES): Add cpu-pj.lo.
+       (ALL_MACHINES_CFILES): Add cpu-pj.c.
+       (BFD32_BACKENDS): Add elf32-pj.lo.
+       (BFD32_BACKENDS_CFILES): Add elf32-pj.c.
+       * configure, Makefile.in, bfd-in2.h, libbfd.h: Rebuild.
+
+1999-09-04  Ian Lance Taylor  <ian@zembu.com>
+
+       * elf-bfd.h (ELF_LINK_NON_GOT_REF): Define.
+       * elflink.h (elf_adjust_dynamic_symbol): Copy REF_REGULAR_NONWEAK
+       and NON_GOT_REF from weak defined symbol to real symbol.
+       * elf32-i386.c (elf_i386_check_relocs): Set NON_GOT_REF.
+       (elf_i386_adjust_dynamic_symbol): If NON_GOT_REF is not set, don't
+       create a COPY reloc.
+       * elf32-sparc.c (elf32_sparc_check_relocs): Set NON_GOT_REF.
+       (elf32_sparc_adjust_dynamic_symbol): If NON_GOT_REF is not set,
+       don't create a COPY reloc.
+
+1999-09-03  Ian Lance Taylor  <ian@zembu.com>
+
+       * elflink.h (elf_bfd_final_link): When counting relocations, don't
+       count those in sections we are not including in the link.
+
+Thu Sep  2 17:41:20 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * elflink.h (elf_link_add_object_symbols): Work around bogus SH_LINK
+       field in hpux11 shared libraries.
+
+1999-09-02  Nick Clifton  <nickc@cygnus.com>
+
+       * elflink.h (elf_gc_record_vtentry): Fix memory leak.
+
+Wed Sep  1 13:34:29 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * elf-hppa.h (elf_hppa_add_symbol_hook): New function.
+       (elf_hppa_final_link, elf_hppa_relocate_section): Likewise.
+       (elf_hppa_final_link_relocate, elf_hppa_relocate_insn): Likewise.
+
+1999-08-31  Alexandre Petit-Bianco  <apbianco@cygnus.com>
+
+       * elflink.h (record_link_assignment): When possible, keep the
+       original type of the symbol.
+
+Mon Aug 30 15:26:48 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Allow both
+       R_PARISC_DIR32 and R_PARISC_DIR64 regardless of how the
+       tools were configured.
+       * elf32-hppa.h (_bfd_elf32_hppa_gen_reloc_type): Declare.
+
+1999-08-26  Mark Mitchell  <mark@codesourcery.com>
+
+       * elf32-mips.c (_bfd_mips_elf_check_relocs): Don't allocate local
+       GOT entries for GOT16 relocations; they're not required.
+
+1999-08-24  Nick Clifton  <nickc@cygnus.com>
+
+       From a patch submitted by Roland McGrath  <roland@baalperazim.frob.com>
+
+       * config.bfd (arm-*-netbsd*): New target.
+       * configure.in (armnetbsd_vec): New target vector.
+       * configure: Regenerate
+       * targets.c (bfd_target_vector): Add &armnetbsd_vec.
+
+       * Makefile.am (BFD32_BACKENDS): Add armnetbsd.lo.
+       (ALL_MACHINES_CFILES): Add armnetbsd.c.
+       (armnetbsd.lo): New rule with deps.
+       * Makefile.in: Regenerate.
+       
+       * armnetbsd.c: New file:  Definitions specific to arm-netbsd
+       target. 
+
+Tue Aug 24 00:25:58 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * som.c (som_slurp_symbol_table): Fix typo in comment.
+
+Fri Aug 20 17:01:23 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * elf-hppa.h (elf_hppa_fake_sections): Compute section indices
+       here instead of using elf_section_data...
+
+1999-08-19  Nick Clifton  <nickc@cygnus.com>
+
+       * coff-mcore.c (mcore_emit_base_file_entry): New function:  Emit
+       relocations into the base file.
+       (coff_mcore_relocate_section): Call mcore_emit_base_file_entry if
+       we are building a base file.
+
+1999-08-19  Nick Clifton  <nickc@cygnus.com>
+
+       * elf32-arm.h (arm_add_to_rel): New function.  Add a value to
+       a REL style reloc.
+       (elf32_arm_relocate_section): Use arm_add_to_rel to increment
+       REL relocs when performing a partial relocation.
+
+1999-08-18  Donn Terry  <donn@interix.com>
+
+       * cofflink.c: Move definitions of N_TMASK, et. al., out of
+       _bfd_coff_link_input_bfd into top level.
+
+       * coff-i386.c (coff_i386_reloc): Handle R_IMAGEBASE.
+       (RTYPE2HOWTO): Return NULL if reloc type is out of range.
+       (coff_i386_rtype_to_howto): Likewise.
+       * coffcode.h (coff_slurp_symbol_table): Change a -2 to N_DEBUG.
+       Completely ignore symbols which are all zero.
+       (dummy_reloc16_estimate): Add return 0.
+       * cofflink.c (_bfd_coff_link_input_bfd): Rename inner scope
+       variable copy to name_copy to avoid shadowing outer scope
+       variable.
+       * libcoff-in.h (coff_data_type): Change raw_syment_count field
+       from unsigned int to unsigned long.  Add timestamp field.
+       * libcoff.h: Rebuild.
+
+1999-08-17  H.J. Lu  <hjl@gnu.org>
+
+       * elf32-hppa.c (bfd_elf32_bfd_is_local_label_name): Fix typo in
+       macro definition.
+
+1999-08-17  Ian Lance Taylor  <ian@zembu.com>
+
+       * elf32-mips.c (_bfd_mips_elf_add_symbol_hook): Set BSF_DYNAMIC
+       for special section symbols.
+       * elflink.h (elf_merge_symbol): If we have no old BFD, check
+       BSF_DYNAMIC on the section symbol to see whether the old BFD is
+       dynamic.
+
+1999-08-15  Mark Mitchell  <mark@codesourcery.com>
+
+       * elf32-mips.c (mips_elf_calculate_relocation): Fix unfortunate
+       coincidence of variable names between old and new code.
+
+1999-08-12  Nick Clifton  <nickc@cygnus.com>
+
+       * elf32-arm.h (elf32_arm_to_thumb_stub):  Make 'offset' parameter
+       into a bfd_vma and 'addend' parameter a 'bfd_signed_vma'.
+       (elf32_thumb_to_arm_stub):  Make 'offset' parameter into a bfd_vma
+       and 'addend' parameter a 'bfd_signed_vma'.
+       (elf32_arm_final_link_relocate): Do not involve stubs in
+       R_ARM_THM_PC22 relocs relative to section symbols, they are long
+       jumps, not function calls.
+
+1999-08-11  Robin Farine <advanc@dial.eunet.ch>
+
+       * elf32-arm.h (elf32_arm_final_link_relocate): Check for overflow
+       in R_ARM_PC24 relocs.
+
+Tue Aug 10 12:48:09 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * elf-hppa.h (elf_hppa_fake_sections): New function.
+       * elf32-hppa.c (elf_backend_fake_sections): Define.
+
+        * elf-hppa.h (elf_hppa_final_write_processing): Update for
+        recent changes to the arch_info structure.
+
+       * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle
+       R_HPPA_SEGBASE and R_HPPA_SEGREL32.
+       * cpu-hppa.c (bfd_hppa20w_arch): New entry in architecture info
+       list.
+
+Tue Aug 10 00:34:29 1999  Mark P. Mitchell  <mark@codesourcery.com>
+                          Ralf Baechle <ralf@uni-koblenz.de>
+
+       * elf32-mips.c (_bfd_mips_elf_size_dynamic_sections): Always
+       output DT_MIPS_GOTSYM.
+       (_bfd_mips_elf_finish_dynamic_sections): Use the same value as
+       DT_MIPS_SYMTABNO if there are no global GOT symbols.
+
+Tue Aug 10 00:21:08 1999  Mark P. Mitchell  <mark@codesourcery.com>
+
+       * elf32-mips.c (mips_elf_create_dynamic_relocation): Change
+       prototype.  Handle local symbols.  Add commentary.
+       (mips_elf_calculate_relocation): Adjust accordingly.
+       (_bfd_mips_elf_check_relocs): Handle local symbols in R_MIPS_32
+       relocations. 
+       
+       * elflink.h (elf_bfd_final_link): Tweak last change.
+
+1999-08-09  Mark Mitchell  <mark@codesourcery.com>
+
+       * elflink.h (elf_link_size_reloc_section): Use the counts in the
+       elf-section data to allocate just the right amount of relocation
+       space.  Don't allocate the hash space twice.
+       (elf_bfd_final_link): Calculate the amount of space to allocate in
+       each relocation section.
+
+Mon Aug  9 17:37:30 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type, case 32): When in
+       64bit mode, generate a section relative relocation for a 32bit
+       wide relocation.
+       (elf_hppa_is_local_label_name): New function.
+       * elf32-hppa.c (elf_hppa_is_local_label_name): Deleted.  To be
+       shared between 32bit and 64bit port.
+
+1999-08-09  Mark Mitchell  <mark@codesourcery.com>
+
+       * elf32-mips.c (elf_mips_howto_table): Fix src_mask for
+       R_MIPS_GOT16 and R_MIPS_CALL16.
+       (mips_elf_got16_entry): Use mips_elf_high to calculate the value
+       to use when looking for a preexisting GOT entry.
+
+1999-08-09  Jakub Jelinek  <jj@ultra.linux.cz>
+
+       * elf64-sparc.c (sparc64_elf_relocate_section): Back out part of
+       the Sep. 4th, 1998 change.  glibc 2.0.x dynamic linker had bug,
+       not binutils.
+       * elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
+
+1999-08-09  Geoff Keating  <geoffk@cygnus.com>
+
+       * elflink.h (elf_link_output_extsym): Don't output a weak
+       reference to an undefined symbol just because it was defined weak
+       in a shared object.
+
+1999-08-09  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * coffgen.c (coff_find_nearest_line): When looking for file, use
+       last best match rather than first.  If address is beyond last line
+       number record, don't return the last line as the correct value.
+
+1999-08-08  Ian Lance Taylor  <ian@zembu.com>
+
+       * section.c (SEC_SMALL_DATA): Rename from SEC_SHORT.
+       * bfd-in2.h: Rebuild.
+
+1999-08-08  Mark Elbrecht  <snowball3@bigfoot.com>
+
+       * libcoff-in.h (struct coff_section_alignment_entry): Define.
+       * coffcode.h (coff_set_custom_section_alignment): New static
+       function.
+       (coff_section_alignment_table): New static array.
+       (coff_new_section_hook): Use coff_set_customer_section_alignment.
+       * coff-go32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Define.
+       * coff-stgo32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Define.
+       * libcoff.h: Rebuild.
+
+1999-08-08  Ian Lance Taylor  <ian@zembu.com>
+
+       * Makefile.am: Rename .dep* files to DEP*.  Change DEP variable to
+       MKDEP.
+       * Makefile.in: Rebuild.
+
+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
This page took 0.028208 seconds and 4 git commands to generate.