OSDN Git Service

* elf-hppa.h (elf_hppa_howto_table); There is no DIR64WR, DIR64DR
[pf3gnuchains/pf3gnuchains3x.git] / bfd / ChangeLog
index 05a85d5..188f025 100644 (file)
@@ -1,3 +1,363 @@
+Wed Sep  8 17:56:11 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * elf-hppa.h (elf_hppa_howto_table); There is no DIR64WR, DIR64DR
+       relocation, remove them.  SECREL64->LTOFF16WF.
+       (elf_hppa_final_link_relocate): Handle LTOFF* relocations.  Handle
+       DIR* relocations.
+       (elf_hppa_relocate_insn): Similarly.
+
+       * elf-hppa.h (elf_hppa_final_link_relocate): Handle PLTOFF* relocs.
+       (elf_hppa_relocate_insn): Similarly.
+
+       * elf-hppa.h (elf_hppa_final_link_relocate): Handle DPREL* and
+       GPREL* relocations.
+       (elf_hppa_relocate_insn): Similarly.
+
+       * elf-hppa.h (elf_hppa_link_final_relocate): Fix typos.
+       Handle LTOFF_TP* relocs.
+       (elf_hppa_relocate_insn): Similarly.
+
+       * elf-hppa.h (elf_hppa_final_link_relocate): Handle PCREL* relocs.
+       Consistently deal with addends.  Handle DLTIND14F and DLTREL14F.
+       (elf_hppa_relocate_insn): Handle PCREL* relocs.
+
+       * elf-hppa.h (elf_hppa_final_link_relocate): Handle LT_OFF_FPTR*,
+       DIR32, DIR64 and FPTR64 relocations.
+       (elf_hppa_relocate_insn): Similarly.
+
+       * elf-hppa.h (elf_hppa_final_link): Set the value of __gp to the        
+       address of the .PARISC.global section.
+       (elf_hppa_relocate_section): Lookup and pass the PA64 hash
+       table entry elf_hppa_final_link_relocate.  Do not give a warning
+       for a reloc against an external symbol if it has a PA64 hash
+       table entry.
+       (elf_hppa_final_link_relocate): Significantly rework.  Handle   
+       DLTIND relocations.  Compute the final value of the relocation
+       before passing the value of elf_hppa_relocate_insn.
+       (elf_hppa_relocate_insn): Revamp to handle just bit tiwiddling
+       relocation support.  Handle DLTIND relocation requests just like
+       DLTREL relocation requests.  Simplify branch handling.
+
+1999-09-08  Ulrich Drepper  <drepper@cygnus.com>
+
+       * elf-hppa.h (elf_hppa_relocate_section): Catch problems with
+       non-allocated section as done in i386 version.
+       (elf_hppa_final_link_relocate): Uncomment R_PARISC_14F in switch
+       statement since this is no know relocation.
+
+Tue Sep  7 17:25:12 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * elf-hppa.h (elf_hppa_final_link_relocate): Handle DLTREL14F
+       relocs.
+       (elf_hppa_relocate_insn): Similarly.
+
+       * elf-hppa.h (elf_hppa_final_link_relocate): Handle DLTREL14WR and
+       DLTREL14WD relocs.  
+       (elf_hppa_relocate_insn): Similarly.
+
+       * elf-hppa.h (elf_hppa_final_link_relocate): Handle DLTREL14R and
+       DLTREL21L relocs.  Pass the output bfd to elf_hppa_relocate_insn.
+       Pass the relocate type rather than the insn format to
+       elf_hppa_relocate_insn.
+       (elf_hppa_relocate_insn): Make switch dependent on relocation type
+       rather than the opcode.  Handle DLTREL21L and DLTREL14R relocs.
+
+1999-09-07  Ian Lance Taylor  <ian@zembu.com>
+
+       * coffcode.h (bfd_coff_backend_data): Add _bfd_filnmlen field.
+       (bfd_coff_filnmlen): Define.
+       (bfd_coff_std_swap_table): Initialize new field.
+       * coffgen.c (coff_fix_symbol_name): Use bfd_coff_filnmlen rather
+       than FILNMLEN.
+       (coff_write_symbols): Likewise.
+       (coff_get_normalized_symtab): Likewise.
+       * coff-sh.c (bfd_coff_small_swap_table): Initialize new field.
+       * libcoff.h: Rebuild.
+
+1999-09-06  Donn Terry  <donn@interix.com>
+
+       * coffcode.h (sort_by_secaddr): New static function if
+       COFF_IMAGE_WITH_PE.
+       (coff_compute_section_file_positions): If COFF_IMAGE_WITH_PE, sort
+       sections by VMA when assigning target_index values.  Always set
+       virt_size.
+
+       * libcoff-in.h (struct pei_section_tdata): Add pe_flags field.
+       * coffcode.h (coff_set_alignment_hook) [COFF_WITH_PE version]: Set
+       pe_flags field.
+       * libcoff.h: Rebuild.
+
+       * coffcode.h (coff_set_custom_section_alignment): Add const to
+       declaration to match definition.
+       (coff_write_object_contents): Don't set F_AR32W(R)? if
+       COFF_WITH_PE.
+
+       * coff-i386.c (in_reloc_p): Add declaration.
+       (i386coff_vec): Simplify initialization of
+       application_section_flags.
+
+       * coffcode.h (sec_to_styp_flags): Write separate COFF_WITH_PE
+       version.  Move COFF_WITH_PE specific code to new version.
+       (stype_to_sec_flags): Likewise.  Add section parameter.
+       * coffgen.c (make_a_section_from_file): Set target_index before
+       calling styp_to_sec_flags.  Pass section to styp_to_sec_flags.
+       * libcoff.h: Rebuild.
+
+       * syms.c (stt): Add some PE/PEI section names.
+       (bfd_decode_symclass): Return 'w', not 'U', for a weak undefined
+       symbol.
+       (bfd_symbol_info): Check for 'w'.
+
+       * section.c (struct bfd_comdat_info): Define.
+       (asection): Add comdat field.
+       (STD_SECTION): Initialize comdat field.
+       (bfd_make_section_anyway): Likewise.
+       * bfd-in2.h: Rebuild.
+
+1999-09-06  Andreas Schwab  <schwab@suse.de>
+
+       * elflink.h (elf_link_add_object_symbols): Copy NON_GOT_REF flag
+       to version symbols.
+
+1999-09-06  Nick Clifton  <nickc@cygnus.com>
+
+       * elflink.h (elf_gc_record_vtentry): Use bfd_zmalloc and
+       bfd_realloc instead of calloc and realloc.
+
+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.