* emultempl/elf32.em (gld${EMULATION_NAME}_open_dynamic_archive):
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index 3e5b8e0ef0f9fa52ca613ec2e03d9030854a3233..95c0254d34fb317df11c73c12bad80b8a9e4e758 100644 (file)
@@ -1,5 +1,273 @@
+Thu Sep 16 11:21:13 1999  Catherine Moore  <clm@cygnus.com>
+
+       * elf32-m68k.c (elf_cpu32_plt0_entry): Use a1 instead of a0.
+       (elf_cpu32_plt_entry): Likewise.
+
+Thu Sep 16 10:48:17 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * elf-hppa.h (elf_hppa_final_link): If unable to find __gp in the
+       symbol table, then just compute a suitable value (but do not
+       create a __gp symbol).
+
+       * elf-hppa.h (elf_hppa_relocate_section): Allow undefined
+       symbols when building shared libraries.
+       (elf_hppa_final_link_relocate): Correct handling of PCREL
+       relocations against undefined symbols.
+
+1999-09-16  Nick Clifton  <nickc@cygnus.com>
+
+       * elf32-arm.h (bfd_elf32_arm_get_bfd_for_interworking): Mark
+       interworking sections as linker created so that they will not
+       be removed by garbage collection.
+
+Wed Sep 15 02:31:57 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * elf-hppa.h (elf_hppa_final_link): Revamp __gp handling.
+       (elf_hppa_final_link_relocate): Consistently create an absolute
+       address, then subtract out the value of __gp.
+
+1999-09-14  Michael Meissner  <meissner@cygnus.com>
+
+       * configure.in (Canonicalization of target names): Remove adding
+       ${CONFIG_SHELL} in front of $ac_config_sub, since autoconfig 2.14
+       generates $ac_config_sub with a ${CONFIG_SHELL} already.
+       * configure: Regenerate.
+
+1999-09-14  Nick Clifton  <nickc@cygnus.com>
+
+       * elf32-m32r.c (ELF_MAXPAGESIZE): Change to 0x1 (at request of
+       Mitsubishi). 
+
+Mon Sep 13 20:01:47 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * elf-hppa.h (elf_hppa_record_segment_addrs): New function.
+       (elf_hppa_final_link): Initialize text_segment_base and
+       data_segment_base.
+       (elf_hppa_final_link_relocate): Handle SEGREL relocations.
+
+       * elf-hppa.h (elf_hppa_final_link): Remove unused variables.
+       (elf_hppa_final_link_relocate): Likewise.
+       (elf_hppa_relocate_insn): Likewise.
+       (elf_hppa_relocate_section): Initialize HOWTO.
+
+1999-09-13  Donn Terry  <donn@interix.com>
+
+       * coffcode.h (styp_to_sec_flags): Further refinement of COMDAT
+       handling to support both GNU and MS objects.
+
+       * coffcode.h (coff_write_object_contents): Don't check reloc_count
+       when determining whether to set F_RELFLG.
+
+1999-09-13  Philip Blundell  <pb@nexus.co.uk>
+
+       * elf32-arm.h (elf32_arm_final_link_relocate): Don't range-check
+       PC24 relocs if the target is an undefined weak symbol.
+       (arm_add_to_rel): Fix compiler warning.
+       (elf32_arm_plt0_entry): Correct comments.
+       
+1999-09-13  Alan Modra  <alan@spri.levels.unisa.edu.au>
+
+       * elfcode.h (write_relocs): Check for the_bfd NULL when handling
+       an absolute symbol in REL relocs.
+
+Sun Sep 12 23:47:58 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * elf-hppa.h (elf_hppa_final_link_relocate): Handle SECREL32.
+       Stub SEGREL32.  Return an error for any relocation not handled.
+
+1999-09-12  Ian Lance Taylor  <ian@zembu.com>
+
+       * cofflink.c (coff_link_add_symbols): Look for special MSVC string
+       constant symbols, and avoid multiple definition errors on them.
+
+1999-09-12  Donn Terry  <donn@interix.com>
+
+       * libbfd.c (bfd_log2): Rewrite to avoid infinite loop if most
+       significant bit is set.
+
+1999-09-11  Ian Lance Taylor  <ian@zembu.com>
+
+       * coff-ppc.c (COFF_SECTION_ALIGNMENT_ENTRIES): Define.
+
+       * elfcode.h (write_relocs): Handle an absolute symbol in REL
+       relocs as we do for RELA relocs.
+
+1999-09-11  Donn Terry  <donn@interix.com>
+
+       * libpei.h (_bfd_pei_final_link_postscript): Declare.
+       (coff_final_link_postscript): Define.
+       * peigen.c (_bfd_pei_swap_aouthdr_out): Don't set value for data
+       directory entries here.
+       (_bfd_pei_final_link_postscript): New function.
+
+       * peigen.c (_bfd_pei_swap_scnhdr_out): Remove code which sets
+       section flags based on the section name.
+
+       * peicode.h (coff_swap_scnhdr_in): If COFF_IMAGE_WITH_PE, the
+       get the overflow of the s_nlnno field from the s_nreloc field.
+       * peigen.c (_bfd_pei_swap_scnhdr_out): If doing a final link, swap
+       the s_nlnno overflow of the .text section into the s_nreloc
+       field.
+
+       * peigen.c (add_data_entry): Declare.
+       (pei_swap_aouthdr_out): Get image size right.  Set linker version
+       more intuitively.
+       (pei_swap_scnhdr_out): Test for UNINIT section, not .bss.
+       (pe_print_idata): Code cleanup, print more info, get rid of (now)
+       extraneous ImageBase.
+       (pe_print_edata): Likewise.
+       (pe_print_pdata): Likewise.  Print exception entries.
+       (pe_print_reloc): Likewise.  Print MIPS_JMPADDR.
+       (tbl): Make const, add "UNKNOWN".
+       (_bfd_pe_print_private_bfd_data_common): Print timestamp.
+       (_bfd_pe_bfd_copy_private_bfd_data_common): Don't copy deleted
+       section data directory.
+       (_bfd_pe_bfd_copy_private_section_data): Copy pe_flags.
+
+       * libpei.h (_bfd_pe_bfd_get_symbol_info): Declare.
+       * peigen.c (_bfd_pe_bfd_get_symbol_info): New function.
+       * peicode.h (coff_get_symbol_info): Define.
+
+       * config.bfd (i[3456]86-*-interix*): Set targ_cflags to
+       -DSTRICT_PE_FORMAT.
+       * coffcode.h (styp_to_sec_flags): Check STRICT_PE_FORMAT rather
+       than __INTERIX.
+       (coff_classify_symbol): Re-revert 1999-08-08 patch if
+       STRICT_PE_FORMAT.
+
+       * libpei.h: New file, broken out of peicode.h.
+       * peigen.c: New file, broken out of peicode.h.
+       * peicode.h: A bunch of code moved out to libpei.h and peigen.c.
+       * configure.in: Add peigen.lo to list of files required for each
+       PE target.
+       * Makefile.am: Rebuild dependencies.
+       (BFD32_BACKENDS): Add peigen.lo.
+       (BFD32_BACKENDS_CFILES): Add peigen.c.
+       (SOURCE_HFILES): Add libpei.h.
+       * configure, Makefile.in: Rebuild.
+
+       * peicode.h (coff_swap_scnhdr_in): Don't check for a special
+       section name of _BSS; check IMAGE_SCN_CNT_UNINITIALIZED_DATA
+       instead.  Don't clear the s_paddr field for an uninitialized data
+       section.
+
+       * coffcode.h (coff_mkobject_hook): Set timestamp field in
+       coff_data_type to f_timdat.
+       * peicode.h (pe_mkobject_hook): Likewise.
+
+       * peicode.h (coff_swap_filehdr_in): Check the NT executable magic
+       number if COFF_IMAGE_WITH_PE.
+
+       * coffcode.h (coff_mkobject_hook): If COFF_WITH_PE, set HAS_DEBUG
+       to the reverse of IMAGE_FILE_DEBUG_STRIPPED.
+       (coff_write_object_contents): Set IMAGE_FILE_DEBUG_STRIPPED if
+       there is no SEC_DEBUGGING section.
+       * peicode.h (pe_mkobject_hook): Set HAS_DEBUG to the reverse of
+       IMAGE_FILE_DEBUG_STRIPPED.
+
+       * pe-i386.c (COFF_LONG_FILENAMES): Define.
+       (COFF_SECTION_ALIGNMENT_ENTRIES): Define.
+       * pei-i386.c (COFF_LONG_FILENAMES): Define.
+       (COFF_SECTION_ALIGNMENT_ENTRIES): Define.
+
+       * coffswap.h (IMAGE_BASE): Don't define.
+       * pei-arm.c (IMAGE_BASE): Don't define.
+       * pei-i386.c (IMAGE_BASE): Don't define.
+       * pei-mcore.c (IMAGE_BASE): Don't define.
+       * pei-ppc.c (IMAGE_BASE): Don't define.
+
+       * cofflink.c (_bfd_coff_link_input_bfd): When writing out a
+       symbol, switch on the class when determining whether to modify the
+       value.  For PE, don't modify the value of a C_FCN symbol not named
+       .bf.
+
+       * libbfd-in.h (_bfd_abort): Declare.
+       (abort): Define.
+       * bfd.c (_bfd_abort): New function.
+       * libbfd.h: Rebuild.
+
+       * coffcode.h (coff_set_alignment_hook): Delete POWERPC_LE_PE
+       special handling.
+
+       * cofflink.c (_bfd_coff_link_input_bfd): If a symbol is stripped,
+       don't write out the associated line numbers.
+
+       * cofflink.c (_bfd_coff_write_global_sym): Handle section symbol
+       aux entries.
+
+       * cofflink.c (coff_link_add_symbols): Don't warn about symbol type
+       changes when the base type is unknown.
+
+       * coffgen.c (coff_print_symbol): Fix printing of aux record for
+       function symbols.
+
+       * syms.c (BSF_DEBUGGING_RELOC): Define.
+       * coffcode.h (coff_slurp_symbol_table): If PE, set BSF_DEBUGGING
+       for C_FCN/C_EFCN symbols, and set BSF_DEBUGGING_RELOC for such
+       symbols named .bf.
+       * coffgen.c (fixup_symbol_value): Relocate a symbol which has
+       BSF_DEBUGGING_RELOC set.
+       * bfd-in2.h: Rebuild.
+
+1999-09-10  Ian Lance Taylor  <ian@zembu.com>
+
+       * ecoff.c (bfd_debug_section): Update initialization for new
+       comdat_info field.
+       (_bfd_ecoff_styp_to_sec_flags): Add section parameter.
+       * libecoff.h (_bfd_ecoff_styp_to_sec_flags): Update declaration.
+
+1999-09-10  H.J. Lu  <hjl@gnu.org>
+
+       * coff-alpha.c (alpha_ecoff_backend_data): Initialize the new
+       _bfd_filnmlen field.
+       * coff-mips.c (mips_ecoff_backend_data): Likewise.
+
+Fri Sep 10 00:35:14 1999  Jeffrey A Law  (law@cygnus.com)
+
+       * elf-hppa.h (elf_hppa_final_link_relocate): Create .opd entries
+       for FPTR relocs involving local symbols.
+
+       * elf-hppa.h (elf_hppa_final_link_relocate): Get the right
+       value for the stub address in a call through a stub.
+       Install the value for a local symbol directly into the DLT
+       instead of generating a reloc.  Correctly handle FPTR64 relocs.
+
+       * elf-hppa.h (elf_hppa_unmark_useless_dynamic_symbols): New function.
+       (elf_hppa_remark_useless_dynamic_symbols): Similarly.
+       (elf_hppa_final_link): Call them.
+
+1999-09-10  Ian Lance Taylor  <ian@zembu.com>
+
+       * elflink.h (elf_fix_symbol_flags): Move weakdef handling here...
+       (elf_adjust_dynamic_symbol): ...from here.
+
 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
This page took 0.025769 seconds and 4 git commands to generate.