2002-04-23 H.J. Lu <hjl@gnu.org>
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index c32ee17d48fafbfd7727a5c3d217be4176d4dbdd..eed424041af5a0b0c3725a9c46f50cf2c8783d8f 100644 (file)
@@ -1,3 +1,401 @@
+2002-04-23  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf32-hppa.c (hppa_type_of_stub): Correct and simplify condition
+       under which a plt call stub is used.
+       (final_link_relocate): Similarly.
+       (allocate_plt_static): Clear h-plabel except when plt entry is
+       exclusively used for a plabel.
+       (allocate_dynrelocs): Use the above to simplify plt sizing.
+       (struct elf32_hppa_link_hash_table): Add has_22bit_branch.
+       (elf32_hppa_link_hash_table_create): Init.
+       (BL22_RP): Define.
+       (hppa_build_one_stub): Use BL22_RP if has_22bit_branch.
+       (elf32_hppa_check_relocs): Set has_22bit_branch.
+
+       * elf32-hppa.c (elf32_hppa_check_relocs): Remove debug message.
+       (final_link_relocate): Likewise.
+
+2002-04-22  Jakub Jelinek  <jakub@redhat.com>
+
+       * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't build
+       search table if some FDE is DW_EH_PE_aligned encoded either.
+       (_bfd_elf_write_section_eh_frame): Handle terminating FDE specially.
+
+2002-04-22  Richard Smith  <richard@ex-parrot.com>
+           Jakub Jelinek  <jakub@redhat.com>
+
+       * elf-eh-frame.c (struct eh_cie_fde): Add per_encoding_relative.
+       (_bfd_elf_discard_section_eh_frame): Set it for CIEs with pcrel
+       encoded personality.
+       (_bfd_elf_write_section_eh_frame): Adjust pcrel encoded personality
+       for CIE/FDE removal.
+
+2002-04-20  Tom Rix  <trix@redhat.com>
+
+       * coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Fix C_FILE auxent.
+
+2002-04-20  Alan Modra  <amodra@bigpond.net.au>
+
+       * archures.c (bfd_lookup_arch): Move the list order comment..
+       (struct bfd_arch_info): ..to where it belongs.
+       * bfd-in2.h: Regenerate.
+
+       * archures.c (bfd_lookup_arch): Add comment on list order.
+       (bfd_default_set_arch_mach): Use bfd_lookup_arch.
+       * cpu-powerpc.c (bfd_powerpc_archs): Re-order so that the default
+       is always at head of list.
+
+2002-04-18  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * coff-arm.c (coff_thumb_pcrel_12, coff_thumb_pcrel_9,
+       insert_thumb_branch, record_thumb_to_arm_glue): Suppress
+       definition of these functions for ARM_WINCE builds as they are
+       not used.
+        (SWAP_IN_RELOC_OFFSET, SWAP_OUT_RELOC_OFFSET): Do not define
+       for ARM_WINCE builds.
+
+2002-04-18  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * coff-arm.c (bfd_arm_process_before_allocation): 
+
+2002-04-17  J"orn Rennecke <joern.rennecke@superh.com>
+
+       * cpu-sh.c (scan_mach): Delete.
+       (arch_info_struct): Replace scan_mach with bfd_default_scan.
+       (bfd_sh_arch): Likewise.
+
+2002-04-16  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * ihex.c (ihex_write_object_contents): Fix check for records
+       crossing 64K boundaries.
+
+2002-04-16  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf32-m32r.c (m32r_elf_add_symbol_hook): Check the hash table
+       type rather than just assuming entries are ELF.
+       * elf32-sh64.c (sh64_elf_add_symbol_hook): Likewise.
+       * elf64-sh64.c (sh64_elf64_add_symbol_hook): Likewise.
+       * elf64-sparc.c (sparc64_elf_add_symbol_hook): Likewise.
+       * elf64-mmix.c (mmix_elf_add_symbol_hook): Use bfd_link_hash_entry
+       rather than elf_link_hash_entry.
+
+2002-04-15  Richard Henderson  <rth@redhat.com>
+
+       * elf32-mips.c (mips_elf32_object_p): Revert 0404 fragment: allow
+       n32 binaries.
+
+2002-04-15  Michael Snyder  <msnyder@redhat.com>
+
+       * opncls.c (bfd_close): Write contents if writeable.
+       Minor formatting tidy-ups.
+
+2002-04-15  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf32-ppc.c (ppc_elf_add_symbol_hook): Check the hash table type.
+
+2002-04-12  Michael Snyder  <msnyder@redhat.com>
+
+       * bfd-in.h (bfd_get_section_lma): New access macro.
+       Minor white-space fix-up.
+
+2002-04-12  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf.c (prep_headers): Don't zero EI_OSABI, EI_ABIVERSION or
+       header pad.
+
+2002-04-09  DJ Delorie  <dj@redhat.com>
+
+       * elfarm-nabi.c (elf32_arm_howto_table): Fix ABS16 masks.
+
+2002-04-09  Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+       * coffcode.h (coff_read_word): New.
+       (coff_compute_checksum): New.
+       (coff_apply_checksum): New.
+       (coff_write_object_contents): Call coff_apply_checksum () to
+       apply checksum to PE image.
+
+2002-04-08  Randolph Chung  <tausq@debian.org>
+
+       * elf32-hppa.c (hppa_unwind_entry_compare): Move to elf-hppa.h.
+       (elf32_hppa_final_link): Split out sorting logic to..
+       * elf-hppa.h (elf_hppa_sort_unwind): ..here.
+       (elf_hppa_final_link): Call elf_hppa_sort_unwind.
+
+2002-04-07  Andrew Cagney  <ac131313@redhat.com>
+
+       * configure.in: Add missing ``|'' to powerpc-*-aix4.[4-9]*
+       pattern.
+       * configure: Re-generate.
+
+2002-04-07  Andrew Cagney  <ac131313@redhat.com>
+
+       * configure.in: Only define AIX_CORE_DUMPX_CORE when AIX version
+       is greater or equal to 4.3.3.
+       * configure: Regenerate.
+       Fix PR gdb/344.
+
+2002-04-05  Hans-Peter Nilsson  <hp@axis.com>
+
+       * elf32-cris.c (cris_elf_howto_table) <R_CRIS_16_PCREL,
+       R_CRIS_32_PCREL>: Fix typo in name.
+       (cris_elf_check_relocs): Always create .rela.got here when
+       R_CRIS_16_GOTPLT or R_CRIS_32_GOTPLT is seen.
+       (elf_cris_adjust_gotplt_to_got): Don't create .rela.got here;
+       assume it's created.
+
+2002-04-04  Daniel Jacobowitz  <drow@mvista.com>
+
+       * aout-adobe.c (aout_32_bfd_link_hash_table_free): Define.
+       * aout-target.h (MY_bfd_link_hash_table_free): Conditionally
+       define.
+       * aout-tic30.c (MY_bfd_link_hash_table_free): Likewise.
+       * bfd.c (bfd_link_hash_table_free): Define.
+       * binary.c (binary_bfd_link_hash_table_free): Define.
+       * bout.c (b_out_bfd_link_hash_table_free): Define.
+       * coff-rs6000.c (rs6000coff_vec): Include
+       _bfd_generic_link_hash_table_free.
+       (pmac_xcoff_vec): Likewise.
+       * coff64-rs6000.c (rs6000coff64_vec): Likewise.
+       (aix5coff64_vec): Likewise.
+       * coffcode.h (coff_bfd_link_hash_table_free): Conditionally define.
+       * elf-m10300.c (elf32_mn10300_link_hash_table_free): New function.
+       (bfd_elf32_bfd_link_hash_table_free): Define.
+       * elf32-hppa.c (elf32_hppa_link_hash_table_free): New function.
+       (bfd_elf32_bfd_link_hash_table_free): Define.
+       * elfxx-target.h (bfd_elfNN_bfd_link_hash_table_free): Conditionally
+       define.
+       * i386msdos.c (msdos_bfd_link_hash_table_free): Define.
+       * i386os9k.c (os9k_bfd_link_hash_table_free): Define.
+       * ieee.c (ieee_bfd_link_hash_table_free): Define.
+       * ihex.c (ihex_bfd_link_hash_table_free): Define.
+       * libbfd-in.h (_bfd_nolink_bfd_link_hash_table_free): Define.
+       (_bfd_generic_link_hash_table_free): Add prototype.
+       * libcoff-in.h (_bfd_xcoff_bfd_link_hash_table_free): Add prototype.
+       * libecoff.h (_bfd_ecoff_bfd_link_hash_table_free): Define.
+       * linker.c (_bfd_generic_link_hash_table_free): New function.
+       * mmo.c (mmo_bfd_link_hash_table_free): Define.
+       * nlm-target.h (nlm_bfd_link_hash_table_free): Define.
+       * oasys.c (oasys_bfd_link_hash_table_free): Define.
+       * ppcboot.c (ppcboot_bfd_link_hash_table_free): Define.
+       * som.c (som_bfd_link_hash_table_free): Define.
+       * srec.c (srec_bfd_link_hash_table_free): Define.
+       * tekhex.c (tekhex_bfd_link_hash_table_free): Define.
+       * versados.c (versados_bfd_link_hash_table_free): Define.
+       * vms.c (vms_bfd_link_hash_table_free): New function.
+       * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_free): New function.
+
+       * coff-arm.c (coff_arm_link_hash_table_create): Use bfd_malloc
+       instead of bfd_alloc.
+       * coff-h8300.c (h8300_coff_link_hash_table_create): Likewise.
+       * coff-mcore.c (coff_mcore_link_hash_table_create): Likewise.
+       * coff-ppc.c (ppc_coff_link_hash_table_create): Likewise.
+       * cofflink.c (_bfd_coff_link_hash_table_create): Likewise.
+       * ecoff.c (_bfd_ecoff_bfd_link_hash_table_create): Likewise.
+       * elf-m10300.c (elf32_mn10300_link_hash_table_create): Likewise.
+       * elf.c (_bfd_elf_link_hash_table_create): Likewise.
+       * elf32-arm.h (elf32_arm_link_hash_table_create): Likewise.
+       * elf32-cris.c (elf_cris_link_hash_table_create): Likewise.
+       * elf32-hppa.c (elf32_hppa_link_hash_table_create): Likewise.
+       * elf32-i386.c (elf_i386_link_hash_table_create): Likewise.
+       * elf32-m68k.c (elf_m68k_link_hash_table_create): Likewise.
+       * elf32-s390.c (elf_s390_link_hash_table_create): Likewise.
+       * elf32-sh.c (sh_elf_link_hash_table_create): Likewise.
+       * elf64-alpha.c (elf64_alpha_bfd_link_hash_table_create): Likewise.
+       * elf64-ppc.c (ppc64_elf_link_hash_table_create): Likewise.
+       * elf64-s390.c (elf_s390_link_hash_table_create): Likewise.
+       * elf64-sh64.c (sh64_elf64_link_hash_table_create): Likewise.
+       * elf64-sparc.c (sparc64_elf_bfd_link_hash_table_create): Likewise.
+       * elf64-x86-64.c (elf64_x86_64_link_hash_table_create): Likewise.
+       * elfxx-mips.c (_bfd_mips_elf_link_hash_table_create): Likewise.
+       * linker.c (_bfd_generic_link_hash_table_create): Likewise.
+       * m68klinux.c (linux_link_hash_table_create): Likewise.
+       * sparclinux.c (linux_link_hash_table_create): Likewise.
+       * sunos.c (sunos_link_hash_table_create): Likewise.
+       * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create): Likewise.
+
+       * targets.c: Add _bfd_link_hash_table_free to xvec.
+
+       * bfd-in2.h: Regenerate.
+       * libbfd.h: Regenerate.
+       * libcoff.h: Regenerate.
+
+2002-04-04  Alan Modra  <amodra@bigpond.net.au>
+
+       * dep-in.sed: Cope with absolute paths.
+       * Makefile.am (dep.sed): Subst TOPDIR, and not INCDIR.
+       Run "make dep-am".
+       * Makefile.in: Regenerate.
+       * coff-arm.c: Fix copyright date.
+       * cpu-h8300.c: Likewise.
+       * cpu-i370.c: Likewise.
+       * cpu-s390.c: Likewise.
+       * cpu-mips.c: Likewise.
+       * po/SRC-POTFILES.in: Regenerate.
+
+2002-04-04  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
+
+       * Makefile.am: Add elfxx-mips.c to the known backends.
+       (elf32-mips.lo): remove dependency to coff/external.h.
+       * Makefile.in: Regenerate.
+       * configure.in: Add elfxx-mips.lo to all vectors using elf32-mips.lo
+       Remove elf32-mips.lo from 64 bit vectors. Update dependencies
+       accordingly.
+       * configure: Regenerate.
+       * elf-bfd.h: Move all MIPS ELF specific prototypes to elfxx-mips.h.
+       (irix_compat_t): IRIX compatibility level, moved from elf32-mips.c.
+       (elf_backend_mips_irix_compat, elf_backend_mips_rtype_to_howto): New
+       MIPS specific backend functions.
+       * elf32-mips.c: Moved most code to elfxx-mips.c.
+       (mips_elf_hi16_reloc): Rename from _bfd_mips_elf_hi16_reloc and make
+       static.
+       (mips_elf_lo16_reloc): Likewise, was _bfd_mips_elf_lo16_reloc.
+       (mips_elf_got16_reloc): Likewise, was _bfd_mips_elf_got16_reloc.
+       (mips_elf_gprel32_reloc): Likewise, was _bfd_mips_elf_gprel32_reloc.
+       (mips_elf32_rtype_to_howto): Rename from mips_rtype_to_howto. Changed
+       interface to allow selection of the right REL or RELA howto table.
+       (mips_elf32_object_p): Rename from _bfd_mips_elf_object_p and made
+       static. Let it refuse n32 objects.
+       (elf32_mips_grok_prstatus): Rename from _bfd_elf32_mips_grok_prstatus.
+       (elf32_mips_grok_psinfo): Rename from _bfd_elf32_mips_grok_psinfo.
+       (elf32_mips_discard_info): Rename from _bfd_elf32_mips_discard_info.
+       (elf32_mips_ignore_discarded_relocs): Rename from
+       _bfd_elf32_mips_ignore_discarded_relocs.
+       (elf32_mips_write_section): Rename from _bfd_elf32_mips_write_section.
+       (elf32_mips_irix_compat): New function, replaces IRIX_COMPAT.
+       (elf_mips_howto_table_rela): Remove.
+       * elf64-mips.c: Moved most code to elfxx-mips.c.
+       (bfd_elf64_bfd_reloc_type_lookup): Make static.
+       (mips_elf64_rtype_to_howto): New function.
+       (mips_elf64_object_p): Likewise.
+       (elf64_mips_irix_compat): Likewise.
+       * elfxx-mips.c: New file containing common code merged together from
+       elf32-mips.c and elf64-mips.c.
+       * elfxx-mips.h: New file containing MIPS specific prototypes from
+       elf-bfd.h.
+       * elfxx-target.h: Add handling for elf_backend_mips_irix_compat and
+       elf_backend_mips_rtype_to_howto.
+
+2002-04-04  Alan Modra  <amodra@bigpond.net.au>
+
+       * srec.c (MAXCHUNK, Chunk): Revise comments.
+       (srec_write_record): Correct buffer size.
+       (srec_write_header): Do without intermediate buffer.
+       (srec_write_section): Validate Chunk.
+       (srec_write_terminator): Pass NULL instead of dummy buffer.
+       (srec_write_symbols): Pass file and symbol names directly to
+       bfd_bwrite so sprintf won't overflow buffer.
+
+2002-04-03  Jakub Jelinek  <jakub@redhat.com>
+
+       * elf32-sparc.c (elf32_sparc_relocate_section): Don't emit dynamic
+       PC relative relocs against hidden symbols.
+       * elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
+
+2002-04-03  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf.c (_bfd_elf_make_section_from_shdr): When setting section
+       LMAs, loop over segments until p_vaddr and p_memsz specify an
+       extent enclosing the section.
+
+2002-04-02  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * ihex.c (ihex_write_object_contents): Do not allow records to
+       cross a 64K boundary - wrap if necessary.
+
+2002-04-01  Nathan Williams  <nathanw@wasabisystems.com>
+
+       * elf.c (elfcore_netbsd_get_lwpid): Fix off-by-one error
+       which caused the returned LWP ID to always be 0.
+
+2002-04-01  Richard Henderson  <rth@redhat.com>
+
+       * elf32-sparc.c (WILL_CALL_FINISH_DYNAMIC_SYMBOL): New.
+       (elf32_sparc_relocate_section): Use it to figure out when to
+       initialize .got entries.
+       * elf64-sparc.c: Similarly.
+
+2002-03-28  Alan Modra  <amodra@bigpond.net.au>
+
+       * linker.c (link_action): Ignore duplicate warning syms.
+       (_bfd_generic_link_write_global_symbol): Follow warning symbol link.
+       * elflink.h (elf_adjust_dynstr_offsets): Likewise.
+       (elf_adjust_dynamic_symbol): Likewise.
+       (elf_export_symbol): Likewise.
+       (elf_link_find_version_dependencies): Likewise.
+       (elf_link_assign_sym_version): Likewise.
+       (elf_link_sec_merge_syms): Likewise.
+       (elf_link_output_extsym): Likewise.
+       (elf_gc_sweep_symbol): Likewise.
+       (elf_gc_propagate_vtable_entries_used): Likewise.
+       (elf_gc_smash_unused_vtentry_relocs): Likewise.
+       (elf_gc_allocate_got_offsets): Likewise.
+       (elf_collect_hash_codes): Likewise.
+       * elflink.c (elf_link_renumber_hash_table_dynsyms): Likewise.
+       * elf-hppa.h (elf_hppa_unmark_useless_dynamic_symbols): Likewise.
+       (elf_hppa_remark_useless_dynamic_symbols): Likewise.
+       * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Likewise.
+       * elf32-arm.h (elf32_arm_discard_copies): Likewise.
+       * elf32-cris.c (elf_cris_adjust_gotplt_to_got): Likewise.
+       (elf_cris_discard_excess_dso_dynamics): Likewise.
+       * elf32-hppa.c (clobber_millicode_symbols): Likewise.
+       (mark_PIC_calls): Likewise.
+       (allocate_plt_static): Likewise.
+       (allocate_dynrelocs): Likewise.
+       (readonly_dynrelocs): Likewise.
+       * elf32-i386.c (allocate_dynrelocs): Likewise.
+       (readonly_dynrelocs): Likewise.
+       * elf32-i370.c (i370_elf_adjust_dynindx): Likewise.
+       * elf32-m68k.c (elf_m68k_discard_copies): Likewise.
+       * elf32-mips.c (mips_elf_output_extsym): Likewise.
+       (mips_elf_sort_hash_table_f): Likewise.
+       (mips_elf_check_mips16_stubs): Likewise.
+       * elf32-s390.c (allocate_dynrelocs): Likewise.
+       (readonly_dynrelocs): Likewise.
+       * elf32-sh.c (sh_elf_discard_copies): Likewise.
+       * elf32-xstormy16.c (xstormy16_relax_plt_check): Likewise.
+       (xstormy16_relax_plt_realloc): Likewise.
+       * elf64-alpha.c (elf64_alpha_calc_got_offsets_for_symbol): Likewise.
+       (elf64_alpha_output_extsym): Likewise.
+       * elf64-hppa.c (elf64_hppa_mark_exported_functions): Likewise.
+       * elf64-mips.c (mips_elf64_sort_hash_table_f): Likewise.
+       (mips_elf64_check_mips16_stubs): Likewise.
+       (mips_elf64_output_extsym): Likewise.
+       * elf64-ppc.c (func_desc_adjust): Likewise.
+       (allocate_dynrelocs): Likewise.
+       (readonly_dynrelocs): Likewise.
+       * elf64-s390.c (allocate_dynrelocs): Likewise.
+       (readonly_dynrelocs): Likewise.
+       * elf64-sh64.c (sh64_elf64_discard_copies): Likewise.
+       * elf64-x86-64.c (allocate_dynrelocs): Likewise.
+       (readonly_dynrelocs): Likewise.
+       * elfxx-ia64.c (elfNN_ia64_global_dyn_sym_thunk): Likewise.
+       * aoutx.h (aout_link_write_other_symbol): Likewise.
+       * cofflink.c (_bfd_coff_write_task_globals): Likewise.
+       (_bfd_coff_write_global_sym): Likewise.
+       * i386linux.c (linux_tally_symbols): Likewise.
+       * m68klinux.c (linux_tally_symbols): Likewise.
+       * sparclinux.c (linux_tally_symbols): Likewise.
+       * pdp11.c (aout_link_write_other_symbol): Likewise.
+       * sunos.c (sunos_scan_dynamic_symbol): Likewise.
+       * xcofflink.c (xcoff_build_ldsyms): Likewise.
+       (xcoff_write_global_symbol): Likewise.
+
+       * cofflink.c (_bfd_coff_final_link): Formatting.
+       * cpu-mips.c (mips_compatible): Make static, prototype.
+       * elf32-i386.c (elf_i386_check_relocs): Formatting.
+       * elf32-sh.c (sh_elf_size_dynamic_sections): Likewise.
+       * elf64-alpha.c (elf64_alpha_output_extsym): Likewise.
+       * elf64-mips.c (mips_elf64_sort_hash_table): Likewise.
+       (mips_elf64_final_link): Likewise.
+       * elflink.h (elf_link_find_version_dependencies): Remove duplicate
+       prototype.
+
+2002-03-27  Nick Clifton  <nickc@cambridge.redhat.com>
+
+       * coff-arm.c (SWAP_IN_RELOC_OFFSET): Define.
+       (SWAP_OUT_RELOC_OFFSET): Define.
+
 2002-03-27  Gregory Steuck <greg@nest.cx>
 
        * elf.c (_bfd_elf_get_symtab_upper_bound): Leave space for
 
 2002-03-21  Richard Earnshaw  <rearnsha@arm.com>
 
-       * elf32-arm.h (elf32_arm_final_link_relocate case R_ARM_GOTOFF)
-       (case R_ARM_GOT): Handle relocations to Thumb functions.
+       * elf32-arm.h (elf32_arm_final_link_relocate <case R_ARM_GOTOFF>,
+       <case R_ARM_GOT>): Handle relocations to Thumb functions.
 
 2002-03-21  Alan Modra  <amodra@bigpond.net.au>
 
        * elflink.h (NAME(bfd_elf,record_link_assignment)): Don't set
        STT_NOTYPE symbols to STT_OBJECT.
 
-Mon Mar 18 17:38:03 CET 2002  Jan Hubicka  <jh@suse.cz>
+2002-03-18  Jan Hubicka  <jh@suse.cz>
 
        * cpu-i386.c (bfd_x86_64_arch): Rename to "i386:x86-64"
 
This page took 0.028808 seconds and 4 git commands to generate.