X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=bfd%2FChangeLog;h=832bce529e1de36ac4dc1fa3553dff43ff04cb2f;hb=648cca2cac243496564d7bb65b70aabb091e6659;hp=f7b0efa69c8fc5f0327a2fab349cedd6b3e1d5bf;hpb=5732c1148529a165aec99db5fbd9036eeb10ad68;p=deliverable%2Fbinutils-gdb.git diff --git a/bfd/ChangeLog b/bfd/ChangeLog index f7b0efa69c..832bce529e 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,9048 +1,487 @@ -2001-12-11 Alan Modra +2002-01-29 Martin Schwidefsky - * elfcode.h (elf_swap_ehdr_out): Adjust value written for e_shnum - and e_shstrndx if out of range. - (elf_object_p): Read extended values for e_shnum and e_shstrndx - from the first section header. Allocate space in elf_elfsections - for reserved sections and set to NULLs. - (elf_write_shdrs_and_ehdr): Set overflow fields in first section - header. Skip reserved sections in elf_elfsections. Remove - duplicate size calculation. + * elf32-i386 (elf_i386_adjust_dynamic_symbol): Do not replace PLT32 + relocations with PC32 relocations for undefined or weak symbols. + * elf32-s390 (elf_i386_adjust_dynamic_symbol): Likewise. + * elf64-s390x (elf_i386_adjust_dynamic_symbol): Likewise. -2001-12-07 Geoffrey Keating - Richard Henderson - Corinna Vinschen +2002-01-28 Jason Thorpe - * Makefile.am: Add support for xstormy16. - * archures.c: Add support for xstormy16. - * config.bfd: Add support for xstormy16. - * configure.in: Add support for xstormy16. - * reloc.c: Add support for xstormy16. - * targets.c: Add support for xstormy16. - * cpu-xstormy16.c: New file. - * elf32-xstormy16.c: New file. - * Makefile.in: Regenerated. - * bfd-in2.h: Regenerated. - * configure: Regenerated. - * libbfd.h: Regenerated. - -2001-12-07 Nick Clifton - - * elf.c (assign_file_positions_for_segments): Combine sentance - fragments into a single sentance in order to permit better - translation into foreign languages. - -2001-12-07 Jim Blandy - - * elf32-s390.c (elf32_s390_grok_prstatus): New function. - (elf_backend_grok_prstatus): Define. - -2001-12-07 Jakub Jelinek - - * elf32-sparc.c (elf32_sparc_relocate_section): Revert - 2001-09-14 change. - -2001-12-07 Jakub Jelinek - - * elf.c (_bfd_elf_rela_local_sym): Only call - _bfd_merged_section_offset if merge_info is non-NULL. - (_bfd_elf_rel_local_sym, _bfd_elf_section_offset): New. - * elf-bfd.h (_bfd_elf_rel_local_sym, _bfd_elf_section_offset): New - prototypes. - * elf32-arm.h (elf32_arm_final_link_relocate): Use - _bfd_elf_section_offset. - (elf32_arm_relocate_section): Use _bfd_elf_rel_local_sym. - * elf32-i386.c (elf_i386_relocate_section): Use - _bfd_elf_section_offset and _bfd_elf_rel_local_sym. - * elf32-sh.c (sh_elf_relocate_section): Likewise. - * elf32-sparc.c (elf32_sparc_relocate_section): Use - _bfd_elf_section_offset. - * elf32-cris.c (cris_elf_relocate_section): Likewise. - * elf32-hppa.c (elf32_hppa_relocate_section): Likewise. - * elf32-i370.c (i370_elf_relocate_section): Likewise. - * elf32-m68k.c (elf_m68k_relocate_section): Likewise. - * elf32-mips.c (mips_elf_create_dynamic_relocation): Likewise. - * elf32-ppc.c (ppc_elf_relocate_section): Likewise. - * elf32-s390.c (elf_s390_relocate_section): Likewise. - * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. - * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. - * elf64-s390.c (elf_s390_relocate_section): Likewise. - * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. - * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. - * elfxx-ia64.c (elfNN_ia64_install_dyn_reloc): Likewise. - -2001-12-07 Alan Modra - - * elf32-hppa.c (clobber_millicode_symbols): Don't do anything if - already forced local. - -2001-12-05 Nick Clifton - - * elf32-arm.h (elf32_arm_merge_private_bfd_data): Combine - fragmented sentence parts into a whole sentence to permit - better translation into foreign languages. - -2001-12-06 Hans-Peter Nilsson - - * configure: Regenerate. - * Makefile.in: Regenerate. - -2001-12-05 Thiemo Seufer - - * Makefile.am: split up BFD_LIBS like statements in BFD32_LIBS and - BFD64_LIBS, make the latter depending on the availability of BFD64. - Add archive64.c source file. - * archive64.c: New file implementing bfd_elf64_archive_slurp_armap - and bfd_elf64_archive_write_armap, code from elf64-mips.c - * archive.c (bfd_slurp_armap): Add ELF64 archive support. - * config.bfd (mips*-*-irix6*): Allow with BFD64 only. - (mips64*el-*-linux*): Likewise. - (mips*el-*-linux*): Likewise. Reorder entries. - * configure.in (bfd_libs): Define in dependency of BFD64 and - AC_SUBST it. - * elf64-mips.c (mips_elf64_slurp_armap): Remove, use - bfd_elf64_archive_slurp_armap instead. - (mips_elf64_write_armap): Remove, use bfd_elf64_archive_write_armap - instead. - -2001-12-04 Thiemo Seufer + * elfcore.h (elf_core_file_p): Improve comment for last change. - * config.bfd: Remove trailing blanks. - * elf32-mips.c (gprel16_with_gp): Remove superfluous casts. +2002-01-27 Daniel Jacobowitz -2001-12-04 Alexandre Oliva - - * elf32-d10v.c (elf_d10v_howto_table): Adjust bit-size of - R_D10V_10_PCREL_L, R_D10V_10_PCREL_R, R_D10V_18, - R_D10V_18_PCREL. Check 10_PCREL relocations as signed. - Disable pointless overflow checking of NONE and 32. + * configure: Regenerated. -2001-12-04 Alan Modra +2002-01-27 Jason Thorpe - * reloc.c (bfd_install_relocation): Correct reloc address test. - (bfd_perform_relocation): Formatting fix. - * bfd-in2.h: Regenerate for 2001-12-02 reloc.c change. + * elfcore.h (elf_core_file_p): Set the machine architecture + before processing the program headers. -2001-12-03 Nick Clifton +2002-01-26 Hans-Peter Nilsson - * configure.in (LINGUAS): Add tr. + * configure.in <64-bit configuration>: If using gcc, check and + emit error for egcs-1.1.2. * configure: Regenerate. - * po/tr.po: Import from translation project's web site. - -2001-12-03 Alan Modra - - * elf32-hppa.c (hppa_get_stub_entry): Remove debug message that - happens to trigger on undefined symbols. - (final_link_relocate): Return bfd_reloc_undefined for undefined - stubs. - (elf32_hppa_relocate_section): Don't say we can't handle a reloc - if we have already warned about an undefined symbol. - -2001-12-02 Thiemo Seufer - - * elf32-mips.c (NEWABI_P): New define. - (USE_REL): Remove, replaced by - (elf_backend_may_use_rel_p): New define. - (elf_backend_may_use_rela_p): Likewise. - (elf_backend_default_use_rela_p): Likewise. - (elf_mips_howto_table): Rename to elf_mips_howto_table_rel. - Fix some relocation definitions. - (elf_mips_howto_table_rela): New RELA relocation definitions for - NewABI support. - (mips32_64bit_reloc): Use the renamed elf_mips_howto_table_rel. - (bfd_elf32_bfd_reloc_type_lookup): Likewise. - (mips_rtype_to_howto): Likewise. - (_bfd_mips_elf_relocate_section): Likewise. - (_bfd_mips_elf_object_p): Typo. - (elf_backend_sign_extend_vma): Reordered together with many other - defines nearby to resemble the order of declaration in the header - file. - -2001-12-02 Thiemo Seufer - - * coff-mips.c (mips_bfd_reloc_type_lookup): Replace - BFD_RELOC_MIPS_GPREL by BFD_RELOC_GPREL16. - * pe-mips.c (mips_bfd_reloc_type_lookup): Likewise. - * elf32-mips.c (mips_reloc_map): Likewise. Replace - BFD_RELOC_MIPS_GPREL32 by BFD_RELOC_GPREL32. - * elf64-mips.c (mips_reloc_map): Likewise. - * reloc.c (BFD_RELOC_MIPS_GPREL): Remove. - (BFD_RELOC_MIPS_GPREL32): Remove. - -2001-11-30 H.J. Lu - - * elflink.h (elf_add_default_symbol): New. - (elf_link_add_object_symbols): Call elf_add_default_symbol () - to create an indirect symbol from the default for the symbol - with the default version if needed. - -2001-11-29 "Peter.Schauer" - - * elf.c (elfcore_grok_prstatus): Do not overwite the core signal - if it has already been set by another thread. -2001-11-28 Jakub Jelinek - - * elf64-alpha.c (ALPHA_ELF_GOT_ENTRY_RELOCS_XLATED): Defined. - (elf64_alpha_relocate_section): Translate local_got_entries - for STT_SECTION symbol to SHF_MERGE section the first time - we see it. - * elfxx-ia64.c (struct elfNN_ia64_local_hash_entry): Add - sec_merge_done. - (get_local_sym_hash): New, extracted from get_dyn_sym_info. - (get_dyn_sym_info): Use it. - (elfNN_ia64_relocate_section): Translate local dyn entries - for STT_SECTION symbol to SHF_MERGE section the first time - we see it. - -2001-11-27 H.J. Lu - - * elflink.h (elf_bfd_discard_info): Skip if the input bfd isn't - ELF. + * doc/Makefile.am (install): Depend on install-info. + * doc/Makefile.in: Regenerate. -2001-11-26 Jeffrey A Law (law@cygnus.com) +2002-01-26 Egor Duda - * stabs.c (_bfd_discard_section_stabs): Use PARAMS in function - prototypes. + * elf.c (elfcore_grok_win32pstatus): Copy only as much information + as possible to avoid stack corruption. -2001-11-24 Alan Modra +2002-01-26 Richard Henderson - * elf32-hppa.c (elf32_hppa_size_stubs): Decrease default stub - group sizes to accommodate c++. + * elf64-alpha.c (elf64_alpha_check_relocs): Don't set reltext + for non-allocated sections. -2001-11-23 Jakub Jelinek +2002-01-25 Mark Kettenis - * elf32-sparc.c (elf32_sparc_relocate_section): Don't clear - relocations in non-alloced sections against global symbols - defined in shared library being built. - * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. + * elf.c (elfcore_write_prstatus): Make sure we pass the address of + prstat.pr_reg even if it is a struct. -2001-11-23 Jakub Jelinek +2002-01-25 Steve Ellcey - * elf.c (_bfd_elf_rela_local_sym): New. - * elflink.h (elf_link_input_bfd): Don't consider empty - merged sections as removed in relocation tests. - * elf-bfd.h (_bfd_elf_rela_local_sym): Add prototype. - * elf32-i386.c (elf_i386_relocate_section): Handle relocs - against STT_SECTION symbol of SHF_MERGE section. - * elf32-arm.h (elf32_arm_relocate_section): Likewise. - * elf32-avr.c (elf32_avr_relocate_section): Call - _bfd_elf_rela_local_sym. - * elf32-cris.c (cris_elf_relocate_section): Likewise. - * elf32-d10v.c (elf32_d10v_relocate_section): Likewise. - * elf32-fr30.c (fr30_final_link_relocate): Likewise. - * elf32-h8300.c (elf32_h8_relocate_section): Likewise. - * elf32-hppa.c (elf32_hppa_relocate_section): Likewise. - * elf32-i370.c (i370_elf_relocate_section): Likewise. - * elf32-i860.c (elf32_i860_relocate_section): Likewise. - * elf32-m32r.c (m32r_elf_relocate_section): Likewise. - * elf32-m68k.c (elf_m68k_relocate_section): Likewise. - * elf32-mcore.c (mcore_elf_relocate_section): Likewise. - * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise. - * elf32-ppc.c (ppc_elf_relocate_section): Likewise. - * elf32-s390.c (elf_s390_relocate_section): Likewise. - * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. - * elf32-v850.c (v850_elf_relocate_section): Likewise. - * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. - * elf64-mmix.c (mmix_elf_relocate_section): Likewise. - * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. - * elf64-s390.c (elf_s390_relocate_section): Likewise. - * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. - * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. - * elf-hppa.h (elf_hppa_relocate_section): Likewise. - * elf-m10200.c (mn10200_elf_relocate_section): Likewise. - * elf-m10300.c (mn10300_elf_relocate_section): Likewise. - * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise. - * elf32-sh.c (sh_elf_relocate_section): Likewise for - !partial_inplace relocs. Handle relocs against STT_SECTION - symbol of SHF_MERGE for partial_inplace relocs. + * bfd/elfxx-ia64.c: Reset AIX vector function overrides for HP-UX. -2001-11-21 Nick Clifton +2002-01-25 Philipp Thomas - * po/Make-in (distclean): Move SRC-POTFILES.in and - BLD-POTFILES.in to maintainer-clean target. + * coffgen.c (coff_print_symbol): Don't mark info message + for translation. -2001-11-21 Alan Modra +2002-01-25 Nick Clifton - * elfxx-ia64.c (elfNN_ia64_relocate_section): Test r_symndx rather - than sym_sec->output_section to detect relocs against discarded - sections. + * po/fr.po: Updated translation. + * po/es.po: Updated translation. -2001-11-19 H.J. Lu +2002-01-25 Philipp Thomas - * elflink.h (elf_link_input_bfd): Assert r_symndx != 0 when - discarding relocations. + * coff-alpha.c (alpha_relocate_section): Unify warning message + for GP relative relocations without GP defined. + * coff-mips.c (mips_relocate_section): Likewise. -2001-11-19 Nick Clifton +2002-01-25 Alan Modra - * section.c (bfd_is_const_section): New macro. Return true if the - given seciton is one of the special, constant, sections. - * bfd-in2.h: Regenerate. - * coffgen.c (coff_count_linenumbers): Use bfd_is_const_section. - (coff_write_native_symbol): Use bfd_is_const_section. + * elf-eh-frame.c (_bfd_elf_eh_frame_section_offset): Avoid + unsigned overflow when new_offset < old_offset. -2001-11-19 Alan Modra +2002-01-24 Philipp Thomas - * elf32-hppa.c (clobber_millicode_symbols): Dec dynstr refcount. + * bfd.c (_bfd_abort): Fix typo. - * elf32-hppa.c (elf32_hppa_size_stubs): Don't consider undefined - millicode syms as candidates for import stubs. +2002-01-23 Richard Henderson - * elf32-hppa.c (PLABEL_PLT_ENTRY_SIZE): Delete. - (allocate_PIC_calls): Rename to allocate_plt_static. - (allocate_dynrelocs): Move most of code handling .plt entries to.. - (allocate_plt_static): ..here. Don't drop plabel entries. + * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't suppress + plt entries for undefweak symbols. -2001-11-19 Hans-Peter Nilsson +2002-01-23 Steve Ellcey - * mmo.c: Adjust documentation tags to use texinfo 4 features. + * bfd/targets.c (bfd_elf32_ia64_hpux_big_vec): Add to + DEFAULT_VECTOR. + (bfd_elf64_ia64_hpux_big_vec): Ditto. + (bfd_elf32_h8300_vec): Ditto. -2001-11-16 Nick Clifton +2002-01-23 Alan Modra - * section.c (bfd_is_const_section): New macro. Return true if the - section pointer refers to one of the special, constant sections. - * bfd-in2.h: Regenerate. + * elf64-ppc.c: Remove stale part of ABI comment. + (NO_OPD_RELOCS): Define. + (ppc64_elf_check_relocs): Use it. + (ppc64_elf_relocate_section): Here too. + (build_one_stub): Don't point function syms at the stub. Instead, + hijack plt.offset. + (ppc64_elf_relocate_section): Check whether REL24 relocs should + really go to the stub. Make all dynamic relocs in opd against + locals. + (ppc64_elf_finish_dynamic_symbol): Allow for non-standard use of + plt.offset. - * coffgen.c (coff_count_linenumbers): Only update the line number - count in non-special sections. - (coff_write_native_symbol): Only update the line number file - position in non-special sections. +2002-01-22 Richard Henderson -2001-11-15 Daniel Jacobowitz + * elf64-alpha.c (INSN_UNOP): Encode with RB as $sp. - * elflink.h (elf_reloc_symbol_deleted_p): Catch all relocs against - local syms from discarded sections. Update comment. +2002-01-22 Alan Modra -2001-11-15 Alan Modra + * elf64-ppc.c (ppc64_elf_finish_dynamic_sections): Correct sign of + TOC_BASE_OFF adjustment. + * Makefile.am: Run "make dep-am". + * Makefile.in: Regenerate. * po/SRC-POTFILES.in: Regenerate. - * elflink.h (elf_link_input_bfd): Complain about all relocs - against local syms from discarded sections. K&R fixes. - (elf_reloc_symbol_deleted_p): Don't try to swap in external syms. - K&R fixes. - -2001-11-15 Alexandre Oliva - - * elf64-sparc.c (sparc64_elf_relocate_section): Disregard - overflows in the .stab section. - -2001-11-14 Daniel Jacobowitz - - * bfd-in.h (bfd_elf32_discard_info): Add prototype. - (bfd_elf64_discard_info): Likewise. - * bfd-in2.h: Regenerate. - * elf-bfd.h (struct elf_reloc_cookie): New. - (struct elf_backend_data): Add elf_backend_discard_info, - elf_backend_ignore_discarded_relocs, and elf_backend_write_section. - (_bfd_elf32_reloc_symbol_deleted_p): Add prototype. - (_bfd_elf64_reloc_symbol_deleted_p): Likewise. - * elf32-mips.c (_bfd_elf32_mips_discard_info): New. - (_bfd_elf32_mips_ignore_discarded_relocs): New. - (_bfd_elf32_mips_write_section): New. - (elf_backend_discard_info): Define. - (elf_backend_ignore_discarded_relocs): Define. - (elf_backend_write_section): Define. - * elfcode.h (elf_bfd_discard_info): Define. - (elf_reloc_symbol_deleted_p): Define. - * elflink.h (elf_link_input_bfd): Check - elf_section_ignore_discarded_relocs. Call - bed->elf_backend_write_section if available. - (elf_reloc_symbol_deleted_p): New. - (elf_bfd_discard_info): New. - (elf_section_ignore_discarded_relocs): New. - * elfxx-target.h (elf_backend_discard_info): Define. - (elf_backend_ignore_discarded_relocs): Define. - (elf_backend_write_section): Define. - (elfNN_bed): Add elf_backend_discard_info, - elf_backend_ignore_discarded_relocs, and - elf_backend_write_section. - * libbfd-in.h (_bfd_discard_section_stabs): Add prototype. - * libbfd.h: Regenerate. - * stabs.c (_bfd_discard_section_stabs): New. - -2001-11-14 Martin Schwidefsky - - * elf32-s390.c (elf_s390_relocate_section): Use the "unresolved_reloc" - scheme to get rid of an ugly complicated test. - * elf64-s390.c (elf_s390_relocate_section): Likewise. - -2001-11-14 Andreas Jaeger - - * cpu-i386.c (bfd_x86_64_arch_intel_syntax,bfd_x86_64_arch): Use - x86-64 for display. - -2001-11-14 Jakub Jelinek - - * dwarf2.c (struct line_head) [total_length]: Change type to - bfd_vma. - (struct dwarf2_debug): Add dwarf_str_buffer and dwarf_str_size. - (struct comp_unit): Add stash and offset_size. - (read_8_bytes): Return bfd_vma. - (read_indirect_string): New. - (read_attribute): Handle DW_FORM_strp. - (decode_line_info): Support 64-bit DWARF format. - (_bfd_dwarf2_find_nearest_line): Likewise. - (parse_comp_unit): Set offset_size and stash. - -2001-11-13 Keith Walker - - * dwarf2.c (read_attribute_value): New function to handle - DW_FORM_indirect. - (read_attribute): Use it. - -2001-11-13 Geoffrey Keating - - * dwarf2.c (decode_line_info): Properly deal with unknown standard - opcodes. - -2001-11-13 John Marshall - Alan Modra - - * section.c (bfd_make_section_anyway): Don't increment section_id - and the BFD's section_count if adding the section failed. - * vms.c (vms_new_section_hook): Adjust for bfd_make_section_anyway - change. - -2001-11-12 Orjan Friberg - - * elf32-cris.c (cris_elf_grok_prstatus): Adjust values to match new - core dump format. - -2001-11-11 H.J. Lu - - * elf32-mips.c (_bfd_mips_elf_finish_dynamic_sections): Call - _bfd_elf_strtab_size instead of _bfd_stringtab_size. - - * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Change - dynstr type to `struct elf_strtab_hash *'. - -2001-11-11 Hans-Peter Nilsson +2002-01-22 John David Anglin - * elf-strtab.c (_bfd_elf_strtab_finalize): Make first variable i - size_t. Rename second i to j. + * configure.host (hppa*64*-*-hpux*, hppa*64*-*-linux*): Add new + host defines. -2001-11-10 Jeffrey A Law (law@cygnus.com) +2002-01-21 Hans-Peter Nilsson - * binary.c: Include safe-ctype.h after bfd.h and sysdep.h. + * elf32-cris.c (cris_elf_relocate_section) : + Check for and emit error if sgot is NULL at this point. -2001-11-10 Alan Modra +2002-01-21 Jason Thorpe - * elf32-arm.h (elf32_arm_final_link_relocate): Don't copy STN_UNDEF - relocs into shared libs. - * elf32-cris.c (cris_elf_relocate_section): Likewise. - * elf32-i370.c (i370_elf_relocate_section): Likewise. - * elf32-m68k.c (elf_m68k_relocate_section): Likewise. - * elf32-mips.c (mips_elf_calculate_relocation): Likewise. - * elf32-ppc.c (ppc_elf_relocate_section): Likewise. - * elf32-sh.c (sh_elf_relocate_section): Likewise. - * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. - * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. - * elf64-s390.c (elf_s390_relocate_section): Likewise. - * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. - * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. - * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise. + * config.bfd (ia64*-*-netbsd*): New target. - * elf.c (bfd_section_from_r_symndx): New function. - * elf-bfd.h (LOCAL_SYM_CACHE_SIZE): Define. - (struct sym_sec_cache): New. - (bfd_section_from_r_symndx): Declare. - (struct bfd_elf_section_data): Change local_dynrel type to PTR. - * elflink.h (elf_link_input_bfd): Don't test for removed linkonce - relocs when relocatable. Don't zero entire reloc, just zero the - addend and sym. - * elf32-hppa.c (struct elf32_hppa_link_hash_table): Add sym_sec. - (elf32_hppa_link_hash_table_create): Init it. - (elf32_hppa_check_relocs): Track dynamic relocs needed for local - syms on a per-section basis as we do for globals. - (elf32_hppa_gc_sweep_hook): Update for local_dynrel change. - (allocate_dynrelocs): Warning fix. - (elf32_hppa_size_dynamic_sections): Don't allocate relocs when - section has been discarded. - (elf32_hppa_relocate_section): Don't copy STN_UNDEF relocs - into shared libs. - * elf32-i386.c (struct elf_i386_link_hash_table): Add sym_sec. - (elf_i386_link_hash_table_create): Init it. - (elf_i386_check_relocs): Track dynamic relocs needed for local - syms on a per-section basis as we do for globals. - (elf_i386_gc_sweep_hook): Update for local_dynrel change. - Remove dead code. - (allocate_dynrelocs): Warning fix. - (elf_i386_size_dynamic_sections): Don't allocate relocs when - section has been discarded. - (elf_i386_relocate_section): Don't copy STN_UNDEF relocs - into shared libs. - * elf32-s390.c (struct elf_s390_link_hash_table): Add sym_sec. - (elf_s390_link_hash_table_create): Init it. - (elf_s390_check_relocs): Track dynamic relocs needed for local - syms on a per-section basis as we do for globals. - (elf_s390_gc_sweep_hook): Update for local_dynrel change. - Remove dead code. - (allocate_dynrelocs): Warning fix. - (elf_s390_size_dynamic_sections): Don't allocate relocs when - section has been discarded. - (elf_s390_relocate_section): Don't copy STN_UNDEF relocs - into shared libs. - * elf64-ppc.c (struct ppc_link_hash_table): Add sym_sec. - (ppc64_link_hash_table_create): Init it. - (ppc64_elf_check_relocs): Track dynamic relocs needed for local - syms on a per-section basis as we do for globals. - (ppc64_elf_gc_sweep_hook): Update for local_dynrel change. - (allocate_dynrelocs): Call the correct record_dynamic_dymbol - function. Warning fix. - (ppc64_elf_size_dynamic_sections): Don't allocate relocs when - section has been discarded. - (ppc64_elf_relocate_section): Don't copy STN_UNDEF relocs - into shared libs. - * elf64-s390.c (struct elf_s390_link_hash_table): Add sym_sec. - (elf_s390_link_hash_table_create): Init it. - (elf_s390_check_relocs): Track dynamic relocs needed for local - syms on a per-section basis as we do for globals. - (elf_s390_gc_sweep_hook): Update for local_dynrel change. - Remove dead code. - (allocate_dynrelocs): Warning fix. - (elf_s390_size_dynamic_sections): Don't allocate relocs when - section has been discarded. - (elf_s390_relocate_section): Don't copy STN_UNDEF relocs - into shared libs. +2002-01-21 Thomas Klausner -2001-11-08 Martin Schwidefsky + * som.c (som_write_space_strings): Comment typo fix. - * elf32-s390: Major rework that introduces all recent changes to - the s390 backends. Get a closer match to elf32-i386. - (elf_s390_relocate_section): Make use of dynamic section short-cuts. - Localise vars, and delay setting. Better error reporting, replace - BFD_ASSERT with abort. Check ELF_LINK_HASH_DEF_DYNAMIC to see if a - symbol is not defined in the regular object file and tread the weak - definition as the normal one. Don't discard relocs for undefweak or - undefined symbols and check !DEF_REGULAR as well as DEF_DYNAMIC in - test for avoided copy relocs. Reinstate fudge for unresolved relocs - in debugging sections. - (elf32_s390_adjust_dynamic_symbol): Handle nocopyreloc. Don't do copy - reloc processing for weakdefs. Remove redundant casts and aborts. - Delay setting of vars until needed. Move creation of dynamic symbols - and allocation of .plt and .rela.plt to allocate_dynrelocs. Replace - BFD_ASSERT with abort. Discard .plt entries for everything with - plt.refcount <= 0. - (elf_s390_check_relocs): Don't allocate space for dynamic relocs, - .got or .relgot here but do it in allocate_dynrelocs. Reference count - possible .plt and .got entries. Don't test input section SEC_READONLY - here to try to avoid copy relocs, and keep dyn_relocs regardless of - ELF_LINK_NON_GOT_REF. Don't set DF_TEXTREL here. Delay setting of - variables until needed. Remove separate switch stmt for creating .got - section. Initialise local_got_refcounts to 0. Cache pointer to - "sreloc" section in elf_section_data. Tweak condition under which .got - created. Report files with bad relocation section names. - (elf_s390_finish_dynamic_symbol): Don't copy relocs for symbols that - have been forced local. Use same test to decide if we can use a - relative reloc for got as elf_s390_relocate_section. Expand SHN_UNDEF - comment. Move expressions out of function calls. Replace BFD_ASSERT - with abort. - (elf_s390_finish_dynamic_sections): Migrate common code out of switch - statement. Replace BFD_ASSERT with abort. - (elf_s390_size_dynamic_sections): Call readonly_dynrelocs. Rename "i" - to "ibfd". Allocate space for local dyn relocs. Use DF_TEXTREL flag - instead of looking up section names for DT_TEXTREL. Replace - BFD_ASSERT with abort. Zero out the dynamic allocated content space. - Add a comment to remind us that one day this ought to be fixed. - (struct elf_s390_link_hash_entry): Rename "root" to "elf". - (struct elf_s390_link_hash_table): Likewise. - (elf_s390_link_hash_newfunc): Rename to link_hash_newfunc and get - rid of unnecessary casts. - (struct elf_s390_dyn_relocs): Add "sec", and "pc_count" fields. - Remove "section" field. - (elf_s390_gc_sweep_hook): Sweep dyn_relocs and local_dynrel. - Reference count possible .plt entries. Don't deallocate .got and - .relgot space here. - (struct elf_s390_pcrel_relocs_copied): Rename to elf_s390_dyn_relocs. - Update comment. - (struct elf_s390_link_hash_entry): Rename pcrel_relocs_copied to - dyn_relocs. - (elf_s390_discard_copies): Delete. - (elf_s390_link_hash_traverse): Delete. - (bfd_elf32_bfd_final_link): Delete. (ie. use regular final link - rather than gc variety). - (struct elf_s390_link_hash_table): Add sgot, sgotplt, srelgot, splt, - srelplt, sdynbss, srelbss fields. - (elf_s390_link_hash_table_create): Init them. - (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define. - (allocate_dynrelocs): New function. - (create_got_section): New function. - (elf_backend_can_refcount): Define. - (elf_backend_copy_indirect_symbol): Define. - (elf_s390_copy_indirect_symbol): New function. - (elf_s390_create_dynamic_sections): New function. - (readonly_dynrelocs): New function. - * elf64-s390.c: Likewise. +2002-01-21 Alan Modra -2001-11-07 Jakub Jelinek - - * Makefile.am (BFD32_BACKENDS): Add elf-strtab.lo. - (BFD32_BACKENDS_CFILES): Add elf-strtab.c. - (elf-strtab.lo): Add rule. - * Makefile.in: Rebuilt. - * configure.in (elf): Add elf-strtab.lo. - * configure: Rebuilt. - * elf-bfd.h (elf_strtab_hash): Forward declare. - (struct elf_link_hash_table): Change dynstr type to - struct elf_strtab_hash *. - (struct elf_obj_tdata): Change strtab_ptr type to - struct elf_strtab_hash *. - (_bfd_elf_strtab_init, _bfd_elf_strtab_free, _bfd_elf_strtab_add, - _bfd_elf_strtab_addref, _bfd_elf_strtab_delref, - _bfd_elf_strtab_clear_all_refs, _bfd_elf_strtab_size, - _bfd_elf_strtab_offset, _bfd_elf_strtab_emit, - _bfd_elf_strtab_finalize): New prototypes. - * elf-strtab.c: New file. - * elflink.h (elf_link_add_object_symbols): Use _bfd_elf_strtab_add - and _bfd_elf_strtab_size instead of _bfd_stringtab calls. - Call _bfd_elf_strtab_delref if DT_NEEDED entry is not needed or - when forcing dynamic symbol to local. - (elf_link_create_dynamic_sections): Call - _bfd_elf_strtab_init instead of elf_stringtab_init. - (elf_link_record_local_dynamic_symbol): Likewise, change - dynstr type. Use _bfd_elf_strtab functions instead of - _bfd_stringtab calls. - (size_dynamic_sections): Use _bfd_elf_strtab functions instead of - _bfd_stringtab calls. For DT_RUNPATH and Verdaux vda_name fields, - call _bfd_elf_strtab_addref. Call elf_finalize_dynstr. - (elf_adjust_dynstr_offsets, elf_finalize_dynstr): New functions. - (elf_fix_symbol_flags): Call _bfd_elf_strtab_delref when forcing - dynamic symbol to local. - (elf_link_assign_sym_version): Likewise. - (elf_bfd_final_link): Call _bfd_elf_strtab_emit instead of - _bfd_stringtab_emit. - * elflink.c (_bfd_elf_link_record_dynamic_symbol): Change dynstr - type. Call _bfd_elf_strtab functions instead of - _bfd_stringtab functions. - * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Likewise. - * elf.c (_bfd_elf_init_reloc_shdr): Likewise. - (elf_fake_sections): Likewise. - (assign_section_numbers): Call _bfd_elf_strtab_clear_all_refs - on shstrtab hash table, call _bfd_elf_strtab_addref on each section - name in the output. Call _bfd_elf_strtab_finalize and - use _bfd_elf_strtab_offset to finalize sh_name section header fields. - (_bfd_elf_compute_section_file_positions): Use _bfd_elf_strtab_size - instead of _bfd_stringtab_size. - (prep_headers): Change shstrtab type. - Use _bfd_elf_strtab calls instead of _bfd_stringtab calls. - -2001-11-07 Alan Modra - - * elflink.h (elf_link_input_bfd ): Fix - bad symtab segfault. Formatting and warning fixes. Improve - error message for internationalisation. + * elf64-ppc.c (struct ppc_link_hash_entry): Add is_func and + is_func_descriptor fields. + (link_hash_newfunc): Init them. + (ppc64_elf_check_relocs): Only R_PPC24_REL24 syms starting with a + dot are candidates for plt entries. When processing .opd relocs, + set function descriptor strings to point inside function code + string, and set new ppc_link_hash_entry fields. + (ppc64_elf_gc_sweep_hook): Don't sweep R_PPC64_REL24 relocs. + (ppc64_elf_adjust_dynamic_symbol): Remove most code dealing with + function descriptors. It's now done in.. + (func_desc_adjust): New. + (ppc64_elf_func_desc_adjust): New. + (define elf_backend_always_size_sections): Define. + (ppc64_elf_hide_symbol): New. + (define elf_backend_hide_symbol): Define. + (allocate_dynrelocs): Remove code looking up function descriptors + as that has been done earlier. + (ppc64_elf_size_dynamic_sections): Use htab shortcut to elf hash + table. + (ppc64_elf_finish_dynamic_symbol): Likewise. Remove code looking + up function descriptor. + (build_one_stub): Look up the function code sym. Check for + invalid plt offsets. + (ppc64_elf_relocate_section): Tweak calls to undefined weak syms. + Convert R_PPC64_TOC relocs to R_PPC64_RELATIVE in shared libs. + + * elf-bfd.h (elf_backend_data ): Add + boolean param. + (_bfd_elf_link_hash_hide_symbol): Likewise. + * elflink.h (elf_link_add_object_symbols): Adjust call to + elf_backend_hide_symbol. + (elf_fix_symbol_flags): Likewise. + (elf_link_assign_sym_version): Likewise. Use bfd_malloc rather + than bfd_alloc. + * elf.c (_bfd_elf_link_hash_hide_symbol): Add "force_local" param. + Set ELF_LINK_FORCED_LOCAL and call _bfd_elf_strtab_delref. + * elf32-hppa.c (elf32_hppa_hide_symbol): Likewise. + (clobber_millicode_symbols): Adjust to suit new hide_symbol. + * elf32-cris.c (elf_cris_hide_symbol): Add "force_local" param + and adjust to suit. + * elf32-mips.c (_bfd_mips_elf_hide_symbol): Likewise, and call + _bfd_elf_link_hash_hide_symbol rather than duplicating code. + * elfxx-ia64.c (elfNN_ia64_hash_hide_symbol): Likewise. -2001-11-06 H.J. Lu (hjl@gnu.org) +2002-01-18 Alan Modra - * elflink.h (elf_link_input_bfd): Complain about relocs against - discarded sections. + * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Test for a + dynamic function descriptor symbol, not the associated function + symbol. -2001-11-03 Alan Modra +2002-01-17 Eric Christopher - * elfxx-target.h (elfNN_bed): Correct want_got_sym, want_dynbss order. + * elf32-mips.c (mips_elf_calculate_relocation): Fix typo. -2001-11-02 H.J. Lu +2002-01-17 Nick Clifton - * elf32-mips.c (mips_elf_calculate_relocation): Don't create - dynamic relocation for symbols defined in regular objects when - creating executables. + * po/bfd.pot: Regenerate. + * po/fr.po: Regenerate. + +2002-01-17 Alan Modra + + * elf-bfd.h (elf_backend_data ): + Remove "Elf_Internal_Shdr *" param. + (_bfd_mips_elf_section_from_bfd_section): Ditto. + * elf32-mips.c (_bfd_mips_elf_section_from_bfd_section): Ditto. + * elf32-m32r.c (_bfd_m32r_elf_section_from_bfd_section): Ditto. + * elf32-v850.c (v850_elf_section_from_bfd_section): Ditto. + * elf64-mmix.c (mmix_elf_section_from_bfd_section): Ditto. + * elfxx-ia64.c (elfNN_hpux_backend_section_from_bfd_section): Ditto. + * elf.c (_bfd_elf_section_from_bfd_section): Allow backend + function to override special sections. Remove hdr arg from + backend call, and don't loop. + +2002-01-16 Eric Christopher + + * elf32-mips.c (mips_elf_calculate_relocation): Set require_jalxp + on R_MIPS_26 and target is 16bit. Add R_MIPS16_GPREL to list of + relocations requiring gp0 and gp. + +2002-01-16 Richard Earnshaw + + * elf32-arm.h (elf32_arm_merge_private_bfd_data): Handle + EF_ARM_VFP_FLOAT. + (elf32_arm_print_private_bfd_data): Likewise. + +2002-01-16 Nick Clifton + + * po/tr.po: Import new version. + +2002-01-16 Alan Modra + + * elf64-ppc.c (ppc64_elf_howto_raw): Remove stale FIXMEs. + (ppc64_elf_reloc_type_lookup): Use proper CTOR reloc. + (ORI_R0_R0_0): Correct. + +2002-01-16 Alan Modra + + * elflink.c (_bfd_elf_create_dynamic_sections): Don't set SEC_CODE + when plt_not_loaded. + * elf64-ppc.c (ppc64_elf_create_dynamic_sections): No need to + clear .plt SEC_CODE here. Create .stub and correct .glink flags. + (PLT_INITIAL_ENTRY_SIZE): Set to 24. + (ppc64_elf_glink_code): Delete. + (PPC64_ELF_GLINK_SIZE): Delete. + (ADDIS_R12_R2, STD_R2_40R1, LD_R11_0R12, LD_R2_0R12, MTCTR_R11, + BCTR, ADDIS_R12_R12_1, LD_R2_40R1, NOP, LI_R0_0, B_DOT, LIS_R0_0, + ORI_R0_R0_0): Define. + (PLT_CALL_STUB_SIZE, GLINK_CALL_STUB_SIZE): Define. + (struct ppc_link_hash_table): Add sstub and plt_overflow. + (ppc64_elf_link_hash_table_create): Init them. + (ppc64_elf_check_relocs ): Refcount .plt entry. + Don't copy to shared lib. + (ppc64_elf_check_relocs): Call bfd_set_error on errors. + (ppc64_elf_gc_sweep_hook ): Sweep plt refcount. + (allocate_dynrelocs ): Don't change function sym here. Make + room for .stub and .glink code. + (ppc64_elf_size_dynamic_sections): Handle .stub. Make entry for + DT_PPC64_GLINK. + (ppc64_elf_final_link): Rename to ppc64_elf_set_toc. Don't call + bfd_elf64_bfd_final_link. + (bfd_elf64_bfd_final_link): Don't define. + (ppc64_elf_size_stubs): New. + (build_plt_stub): New. + (build_one_stub): New. + (ppc64_elf_build_stubs): New. + (ppc64_elf_relocate_section ): Remove assert. + (ppc64_elf_relocate_section): Don't copy R_PPC64_REL24 relocs. + (ppc64_elf_finish_dynamic_symbol): Don't build stubs here. Set + DT_PPC64_GLINK entry. Tweak DT_PLTGOT, DT_JMPREL, DT_PLTRELSZ in + case output sections not separate. Adjust DT_RELASZ to not + include plt relocs. Set reserved got entry. Set got and plt + entry size. + (elf_backend_got_header_size): Set to 8. + * elf64-ppc.h: New file. + +2002-01-16 Alan Modra + + * elf32-arm.h (elf32_arm_size_dynamic_sections): When removing + sections, use bfd_section_list_remove. + * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise. + * elflink.h (elf_link_add_object_symbols): When removing all + sections, use bfd_section_list_clear. -2001-11-02 Nick Clifton +2002-01-15 Nick Clifton - * configure.in (ALL_LINGUAS): Add "fr". + * po/sv.po: New file: Swedish translation. + * configure.in (ALL_LINGUAS): Add sv. * configure: Regenerate. - * po/fr.po: New file. - - * coffgen.c (coff_object_p): Add comment to H.J.'s recent patch. - -2001-11-02 John David Anglin - - * som.c (setup_sections): Initialize subspace_sections. - -2001-11-02 H.J. Lu (hjl@gnu.org) - - * coffgen.c (coff_object_p): Return 0 if the header is too big. -2001-11-02 Hans-Peter Nilsson +2002-01-15 Jakub Jelinek - * elfcore.h (elf_core_file_p): Preserve and clear abfd section - information. Save bfd arch and mach values. Restore on error. - -2001-11-02 Alan Modra - - * elf32-hppa.c (hppa_handle_PIC_calls): Rename to mark_PIC_calls. - (allocate_PIC_calls): New function. - (allocate_dynrelocs): Don't allocate pic_call plt entries here. - (elf32_hppa_size_dynamic_sections): Call allocate_PIC_calls. - (elf32_hppa_finish_dynamic_symbol): Remove dead code. - -2001-11-02 Hans-Peter Nilsson - - * elf32-cris.c (cris_elf_grok_prstatus): New function. - (cris_elf_grok_psinfo): New function. - (elf_backend_grok_prstatus): Define. - (elf_backend_grok_psinfo): Define. - -2001-11-01 Alan Modra - - * elf64-ppc.c (ppc64_elf_relocate_section): Correct branch - prediction bits. + * elflink.h (elf_link_input_bfd): Back out 2002-01-07 change. + * elf.c (merge_sections_remove_hook): New function. + (_bfd_elf_merge_sections): Pass it as 3rd argument to + _bfd_merge_sections. + * libbfd-in.h (_bfd_merge_sections): Add 3rd argument. + * libbfd.h: Rebuilt. + * merge.c (_bfd_merge_sections): Add remove_hook argument. + Call remove_hook if a SEC_EXCLUDE section is encountered. -2001-10-31 Chris Demetriou +2002-01-15 Nick Clifton - * elf32-mips.c (_bfd_mips_elf_hi16_reloc): Handle PC-relative - relocations properly. + * elf32-xstormy16.c (xstormy16_reloc_map): Add new field 'table'. + (xstormy16_reloc_map): Initialise new field with correct howto + table. + (xstormy16_reloc_type_lookup): Use 'table' field to locate correct + howto entry. -2001-10-31 H.J. Lu +2002-01-10 Michael Snyder - * elflink.h (elf_link_output_extsym): Don't clear the visibility - field for relocateable. + * elf.c (elfcore_write_prstatus): Use long instead of pid_t; + (elfcore_write_pstatus): Use long instead of pid_t; + * elf-bfd.h: Change prototypes to use long instead of pid_t; -2001-11-01 Alan Modra +2002-01-09 Jason Thorpe - * elf32-hppa.c (elf32_hppa_finish_dynamic_sections): Don't count - .plt relocs in DT_RELASZ. + * elf.c: Update copyright years. + (elfcore_grok_netbsd_note): Use NT_NETBSDCORE_PROCINFO + and NT_NETBSDCORE_FIRSTMACH. Improve a comment. -2001-10-29 NIIBE Yutaka +2002-01-08 Michael Snyder - * config.bfd: Supports sh3/sh4/sh3eb/sh4eb-unknown-linux-gnu - targets. + Add capability to write corefile note sections, for gdb. + * elf.c (elfcore_write_note): New function. + (elfcore_write_prpsinfo): New function. + (elfcore_write_prstatus): New function. + (elfcore_write_pstatus): New function. + (elfcore_write_prfpreg): New function. + (elfcore_write_prxfpreg): New function. + * elf-bfd.h: Add prototypes for above functions. -2001-10-31 Nick Clifton +2002-01-08 Alexandre Oliva - * targets.c: Fix typo: bfd_mmo_mmix_vec => bfd_mmo_vec. + * elf.c (elf_fake_sections): Propagate errors from + elf_backend_fake_section. -2001-10-30 Hans-Peter Nilsson +2002-01-07 Jason Thorpe - * Makefile.am (ALL_MACHINES): Add cpu-mmix.lo. - (BFD64_BACKENDS): Add elf64-mmix.lo and mmo.lo. - (BFD64_BACKENDS_CFILES): Add elf64-mmix.c and mmo.c. - Regenerate dependencies. - * configure.in (bfd_elf64_mmix_vec, bfd_mmo_vec): New vectors. - * config.bfd: [BFD64] (mmix-*-*): New case. - * cpu-mmix.c, mmo.c, elf64-mmix.c: New files. - * archures.c (enum bfd_architecture): Add bfd_arch_mmix. - (bfd_mmix_arch): Declare. - (bfd_archures_list): Add bfd_mmix_arch. - * targets.c (enum bfd_flavour): Add bfd_target_mmo_flavour. - (bfd_elf64_mmix_vec, bfd_mmo_vec): Declare. - (bfd_target_vect) [BFD64]: Add bfd_elf64_mmix_vec and - bfd_mmo_mmix_vec. - * reloc.c: Add MMIX relocations. - * bfd.c (struct _bfd, tdata): Add mmo_data. + * Makefile.am (BFD32_BACKENDS): Add elf32-sh-nbsd.lo. + (BFD32_BACKENDS_CFILES): Add elf32-sh-nbsd.c. + (elf32-sh-nbsd.lo): New rule. * Makefile.in: Regenerate. + * config.bfd (sh*le-*-netbsdelf*): New target. + (sh*-*-netbsdelf*): New target. + * configure.in: Include netbsd-core.lo for native sh*-*-netbsd*. + (bfd_elf32_shnbsd_vec): New vector. + (bfd_elf32_shlnbsd_vec): New vector. * configure: Regenerate. - * libbfd.h: Regenerate. - * bfd-in2.h: Regenerate. - * configure: Rebuild. - -2001-10-30 Richard Earnshaw (rearnsha@arm.com) - - * elf.c (_bfd_elf_make_section_from_shdr): Set the LMA based on the - p_paddr of the segment that contains it. - (copy_private_bfd_data): If the LMA for a segment is known, use it - for matching sections to segments. - (assign_file_positions_for_segments): Use the LMA when adjusting - for inter-section alignment padding. - -2001-10-29 Kazu Hirata - - * README: Fix a typo. - -2001-10-24 Richard Henderson - - * peXXigen.c (_bfd_XX_print_private_bfd_data_common): Copy - timestamp to time_t for ctime. - -2001-10-24 Hans-Peter Nilsson - - * elf32-cris.c (cris_reloc_type_lookup): Change loop to use - unsigned, increasing index. - -2001-10-23 H.J. Lu - - * elf32-mips.c (_bfd_mips_elf_modify_segment_map): Check - m != NULL before accessing it. - -2001-10-23 Alan Modra - - * elflink.h (elf_link_input_bfd): Zero the reloc instead of doing - bfd_reloc_type_lookup (bfd, BFD_RELOC_NONE) as bfd_reloc_type_lookup - doesn't accept BFD_RELOC_* on some targets, eg. hppa. - - * elf32-hppa.c (elf32_hppa_link_hash_entry): Remove plt_abs. - (hppa_link_hash_newfunc): Likewise. - (elf32_hppa_finish_dynamic_symbol): Likewise. - (allocate_dynrelocs): Always allocate .got relocs if shared. - (elf32_hppa_relocate_section): Output them too. Similarly - consolidate .plt reloc code, and no longer initialise .plt - when a reloc is output. - (elf32_hppa_finish_dynamic_symbol): Only initialise .plt entries - when no reloc is output. - - From Herbert Xu - * elf32-hppa.c (final_link_relocate): Call bfd_set_error for - unreachable branches. - -2001-10-22 H.J. Lu - - * configure.in (WIN32LIBADD): Use -L../libiberty for - mips*-*-linux*. - * configure: Rebuild. - -2001-10-21 H.J. Lu - - * configure.in (WIN32LIBADD): Include -L../libiberty/pic -liberty - if shared library is enabled only for Linux hosts. - * configure: Rebuild. - -2001-10-21 H.J. Lu - - * configure.in (WIN32LIBADD): Check if PICFLAG is defined in - ../libiberty/Makefile instead of $enable_shared. - * configure: Rebuild. - -2001-10-21 H.J. Lu - - * elf32-cris.c (cris_reloc_type_lookup): Use int for index. Cover - index 0. - -2001-10-20 H.J. Lu - - * configure.in (WIN32LIBADD): Include -L../libiberty/pic -liberty - if shared library is enabled. - * configure: Rebuild. - -2001-10-20 H.J. Lu - - * elf32-cris.c (cris_reloc_type_lookup): Allow index 0. - -2001-10-19 H.J. Lu - - * elfcode.h (elf_object_p): Don't clear D_PAGED if the section - size is empty. - -2001-10-18 H.J. Lu - - * elf32-i370.c (i370_elf_relocate_section): Ignore R_XXX_NONE. - * elf32-ppc.c (ppc_elf_relocate_section): Likewise. - -2001-10-18 Jakub Jelinek - - * section.c (_bfd_strip_section_from_output): Don't count - SEC_EXCLUDE sections as references. Set SEC_EXCLUDE. - -2001-10-17 Alan Modra - - * elf-m10200.c (mn10200_elf_relax_section): Cast assignment to - Elf_Internal_Shdr.contents now that it's no longer a PTR. - * elf-m10300.c (mn10300_elf_relax_section): Likewise. - * elf32-h8300.c (elf32_h8_relax_section): Likewise. - * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): Likewise. - * elf32-sh.c (sh_elf_relax_section): Likewise. - * elf64-alpha.c (elf64_alpha_relax_section): Likewise. - * elfxx-ia64.c (elfNN_ia64_relax_section): Likewise. - * elf.c (setup_group): Warning fixes. - * elflink.h (elf_link_sort_relocs): Likewise. - * pdp11.c (slurp_reloc_table): Likewise. - -2001-10-16 Jeff Holcomb - - * elflink.h (elf_link_sort_relocs): Remove unnecessary pointer - casts. - -2001-10-15 H.J. Lu - - * elflink.h (elf_link_input_bfd): Set type to BFD_RELOC_NONE - for relocations against discarded link-once section. + * elf32-sh-nbsd.c: New file. + * targets.c: Update copyright years. + (_bfd_target_vector): Add bfd_elf32_shlnbsd_vec and + bfd_elf32_shnbsd_vec. -2001-10-15 Alan Modra +2002-01-07 Aldy Hernandez - * elf32-i386.c (elf_i386_relocate_section): Report some detail on - bfd_reloc_outofrange and similar errors. + * coff-rs6000.c (READ20): Use bfd_scan_vma. - * elf.c (_bfd_elf_link_hash_copy_indirect): Test ind->root.type - rather than ind->weakdef. - * elf32-hppa.c (elf32_hppa_copy_indirect_symbol): Likewise. - * elf32-i386.c (elf_i386_copy_indirect_symbol): Likewise. - * elf32-mips.c (_bfd_mips_elf_copy_indirect_symbol): Likewise. - * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise. - * elfxx-ia64.c (elfNN_ia64_hash_copy_indirect): Likewise. +2002-01-07 Geoffrey Keating -2001-10-15 Alan Modra - H.J. Lu + * elflink.h (elf_link_input_bfd): Don't ask for the merged offset + of a symbol in a section that will be deleted. - * elf32-hppa.c (elf32_hppa_copy_indirect_symbol): Merge dyn_reloc - counts for aliases instead of aborting. - * elf32-i386.c (elf_i386_copy_indirect_symbol): Likewise. - * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise. +2002-01-07 Nick Clifton - * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Set plt.offset - to -1 for non-function symbols. - * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise. - * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise. - * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise. - * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise. - * elf64-x86-64.c (elf64_x86_64_adjust_dynamic_symbol): Likewise. - * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Refer to - plt.offset instead of plt.refcount when setting to -1. - -2001-10-12 Nick Clifton - - * elf32-arm.h (elf32_arm_relocate_section): Treat R_ARM_THM_PC22 - like R_ARM_PC24. Include reloc number in error message about - unresolvable relocs. - -2001-10-10 Jakub Jelinek - - * elflink.h (elf_link_sort_cmp2): Don't mix PLT and non-PLT - relocations against the same symbol in .rel{,a}.dyn section. - -2001-10-10 Kazu Hirata - - * aout-encap.c: Fix comment typos. - * aoutx.h: Likewise. - * archive.c: Likewise. - * bout.c: Likewise. - * coff64-rs6000.c: Likewise. - * coffcode.h: Likewise. - * coffgen.c: Likewise. - * cofflink.c: Likewise. - * coff-mips.c: Likewise. - * ecoff.c: Likewise. - * elf32-m32r.c: Likewise. - * libcoff-in.h: Likewise. - * libecoff.h: Likewise. - * libxcoff.h: Likewise. - * nlm32-i386.c: Likewise. - * pdp11.c: Likewise. - * section.c: Likewise. - * som.c: Likewise. - * som.h: Likewise. - * bfd-in2.h: Regenerate. - * libcoff.h: Likewise. - -2001-10-10 Alan Modra - - * elf.c (elf_map_symbols): Don't create new section symbols; Use - existing section syms. Update comments. - (copy_private_bfd_data): Formatting fixes. - (elfcore_grok_win32pstatus): Likewise. - (swap_out_syms): Likewise. Remove unnecessary level of braces. - -2001-10-09 Alan Modra - - * elf-bfd.h (struct bfd_elf_section_data): Rename "group" to - "group_name". - (elf_group_name): Define. - (elf_next_in_group): Define. - * elf.c: Make use of elf_group_name and elf_next_in_group throughout. - (setup_group): Don't use sec->lineno for SHT_GROUP section to store - first member section; Instead use elf_next_in_group. - (bfd_section_from_shdr): Likewise. - (set_group_contents): Likewise. Use elf_section_syms, not sec->symbol. - -2001-10-09 Alan Modra - - * elf-bfd.h (struct bfd_elf_section_data): Add "group" and - "next_in_group". Fix gp and gp_size comments. - * elf.c (union elf_internal_group): New. - (setup_group): New function. - (_bfd_elf_make_section_from_shdr): Set BFD flags for SHT_GROUP. - Call setup_group for SHF_GROUP sections. - (bfd_section_from_shdr): Build a BFD section for SHT_GROUP. - (elf_fake_sections): Set header type for SEC_GROUP, and header - flags for sections in a group. - (set_group_contents): New function. - (_bfd_elf_compute_section_file_positions): Call it. - (assign_section_numbers): Set sh_link for SHT_GROUP. - - * elflink.h (gc_mark_hook): Handle section groups. - * elfxx-target.h: Add SEC_GROUP to applicable_flags. - * section.c (SEC_GROUP): Define. - (struct sec): Comment fixes. - * bfd-in2.h: Regenerate. - - * elf.c (bfd_elf_print_symbol): Formatting fix; migrate expression - out of function args. - (_bfd_elf_canonicalize_reloc): Similarly. - (_bfd_elf_get_symtab): Here too. - (_bfd_elf_canonicalize_dynamic_symtab): And here. - * elfcode.h (elf_slurp_symbol_table): Don't recalculate size for - bfd_bread, and remove unnecessary cast. - -2001-10-08 Aldy Hernandez - - * bfd/config.bfd (targ_cpu): Add arm9e-*-elf. - -2001-10-06 Stephane Carrez - - * dwarf2.c (comp_unit_find_nearest_line): Check for end of - compilation unit. - -2001-10-06 Alan Modra - - * bfd.c (bfd_assert): Report bfd version. - (_bfd_abort): Likewise. - - * elflink.h (elf_link_input_bfd): Don't zero discarded link-once - section sym values. Instead replace any relocs against them with - relocs against STN_UNDEF, which has a zero value. - - * elf32-arc.c (elf_arc_howto_table): Set partial_inplace for all - relocs. - -2001-10-05 Jeff Law - - * som.h (som_exec_data): New field "version_id". - * som.c (som_object_setup): Record the version_id if it - exists. - (som_prep_headers): Do not initialize version_id here. - (som_finish_writing): Initialize version_id here. - -2000-10-05 Thiemo Seufer - - * elf32-mips.c (elf_mips_howto_table): Fix some relocation howtos - according to the MIPS/SGI ELF64 ABI Draft. - (mips_elf_sort_hash_table): Typo. - -2001-10-04 Alan Modra - - * elf32-mips.c (_bfd_mips_elf_copy_indirect_symbol): Comment typo. - - * elf32-mips.c (_bfd_mips_elf_copy_indirect_symbol): Bail out after - copying flags if this is a weakdef. - -2001-10-04 Alan Modra - - * elf-bfd.h (struct elf_link_hash_entry): Reorganise for better - packing. - - * elf32-mips.c (mips_elf_record_global_got_symbol): Set got.offset - to 1 rather than 0 to avoid confusing copy_indirect_symbol. - (mips_elf_sort_hash_table_f): Compare got.offset against 1. - - * Makefile.am (BFD_H_DEPS): Add symcat.h. Ensure everything - depends on $(BFD_H) $(BFD_H_DEPS) $(LOCAL_H_DEPS), not just those - backends we configure. Run "make dep-am". - (install-data-local): Install symcat.h. - * dep-in.sed: Remove symcat.h from dependencies. - * Makefile.in: Regenerate. - -2001-10-03 Vassili Karpov - - * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Handle nocopyreloc. - -2001-10-03 Thiemo Seufer - - * elf64-mips.c (elf_backend_may_use_rela_p): New define. - (elf_backend_default_use_rela_p): New define. - -2001-10-03 Alan Modra - - * elfxx-ia64.c (elfNN_ia64_hash_copy_indirect): Fix typos in last - change. - - * configure.in (AC_OUTPUT ): Remove version.h. - * configure: Regenerate. - * Makefile.am (BFD_H_FILES): Add version.h. - * Makefile.in: Regenerate. - * po/SRC-POTFILES.in: Regenerate. - - * elflink.h (elf_fix_symbol_flags): Copy flags to weakdef using - elf_backend_copy_indirect_symbol so that backend has a chance to - copy other necessary fields. - * elf-bfd.h (struct elf_backend_data): Update description of - elf_backend_copy_indirect_symbol. - * elf.c (_bfd_elf_link_hash_copy_indirect): Bail out after - copying flags if this is a weakdef. - * elfxx-ia64.c (elfNN_ia64_hash_copy_indirect): Likewise. - (elfNN_ia64_aix_add_symbol_hook): Use elf_link_hash_lookup rather - than bfd_link_hash_lookup. - * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Don't do copy - reloc processing for weakdefs. - * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise. - * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise. - -2001-10-02 Alan Modra - - * elf64-ppc.c (ppc64_elf_check_relocs): Use a local var and cast - result of ELF64_R_TYPE to enum before using in a switch. - (ppc64_elf_gc_mark_hook): Likewise. - (ppc64_elf_gc_sweep_hook): Likewise. - (ppc64_elf_reloc_type_class): Likewise. - -2001-10-02 Alan Modra - - * version.h: New file. - * bfd-in.h: (BFD_VERSION): Substitute bfd_version. - (BFD_VERSION_DATE): Define. - (BFD_VERSION_STRING): Define. - * configure.in: AC_SUBST bfd_version, bfd_version_date and - bfd_version_string. - (AC_OUTPUT ): Depend on version.h. - * bfd-in2.h: Regenerate. + * po/es.po: New file: Spanish translation. + * configure.in (ALL_LINGUAS): Add es. * configure: Regenerate. - * Makefile.am: Run "make dep-am". - * Makefile.in: Regenerate. - - * bfd-in.h: Include "symcat.h". - (CONCAT4): Redefine as for old CAT4. - * aout-arm.c: Use equivalent CONCAT* macro in place of CAT* macros. - Add warning regarding whitespace. - * aout-cris.c: Likewise. - * aout-ns32k.c: Likewise. - * aout-sparcle.c: Likewise. - * aout-tic30.c: Likewise. - * aout0.c: Likewise. - * armnetbsd.c: Likewise. - * demo64.c: Likewise. - * elf-bfd.h: Likewise. - * gen-aout.c: Likewise. - * host-aout.c: Likewise. - * hp300bsd.c: Likewise. - * hp300hpux.c: Likewise. - * i386aout.c: Likewise. - * i386bsd.c: Likewise. - * i386dynix.c: Likewise. - * i386freebsd.c: Likewise. - * i386linux.c: Likewise. - * i386lynx.c: Likewise. - * i386mach3.c: Likewise. - * i386netbsd.c: Likewise. - * libaout.h: Likewise. - * m68k4knetbsd.c: Likewise. - * m68klinux.c: Likewise. - * m68klynx.c: Likewise. - * m68knetbsd.c: Likewise. - * m88kmach3.c: Likewise. - * mipsbsd.c: Likewise. - * newsos3.c: Likewise. - * ns32knetbsd.c: Likewise. - * pc532-mach.c: Likewise. - * pdp11.c: Likewise. - * riscix.c: Likewise. - * sparclinux.c: Likewise. - * sparclynx.c: Likewise. - * sparcnetbsd.c: Likewise. - * sunos.c: Likewise. - * targets.c: Likewise. - * vaxnetbsd.c: Likewise. - * vms-hdr.c: Likewise. - -2001-10-01 Alan Modra - * bfd-in.h: Remove comments regarding generated files. - * libbfd-in.h: Likewise. - * libcoff-in.h: Likewise. +2002-01-06 Steve Ellcey + + * elfxx-ia64.c (is_unwind_section_name): Add target vector as + argument so we can handle HP-UX specially. + (elfNN_ia64_hpux_vec): New for use in is_unwind_section_name. + (elfNN_hpux_backend_section_from_bfd_section): New for support + of SHN_IA_64_ANSI_COMMON. + (elfNN_ia64_relax_section): Add support for SHN_IA_64_ANSI_COMMON. + (is_unwind_section_name): Add special HP-UX support. + (elfNN_ia64_section_from_shdr): Add support for more sections. + (elfNN_ia64_fake_sections): Modify is_unwind_section_name call and + add support for more sections. + (elfNN_ia64_additional_program_headers): Modify + is_unwind_section_name call. + (elfNN_ia64_modify_segment_map): Remove assumption that there is + only one unwind section in segment. + +2002-01-06 Alan Modra + + * syms.c (_bfd_generic_make_empty_symbol): New function. + * libbfd-in.h (_bfd_nosymbols_make_empty_symbol): Define as + _bfd_generic_make_empty_symbol. + * libbfd.h: Regenerate. * bfd-in2.h: Regenerate. - * libbfd.h: Likewise. - * libcoff.h: Likewise. + * hppabsd-core.c (hppabsd_core_make_empty_symbol): Delete function. + (hppabsd_core_get_symtab_upper_bound): Don't define. + (hppabsd_core_get_symtab): Likewise. + (hppabsd_core_print_symbol): Likewise. + (hppabsd_core_get_symbol_info): Likewise. + (hppabsd_core_bfd_is_local_label_name): Likewise. + (hppabsd_core_get_lineno): Likewise. + (hppabsd_core_find_nearest_line): Likewise. + (hppabsd_core_bfd_make_debug_symbol): Likewise. + (hppabsd_core_read_minisymbols): Likewise. + (hppabsd_core_minisymbol_to_symbol): Likewise. + (hppabsd_core_vec): Use BFD_JUMP_TABLE_SYMBOLS (_bfd_nosymbols). + Formatting fixes. + * hpux-core.c: Similarly. + * irix-core.c: Similarly. + * osf-core.c: Similarly. + * sco5-core.c: Similarly. + * binary.c (binary_make_empty_symbol): Remove function, define as + _bfd_generic_make_empty_symbol. + * ihex.c (ihex_make_empty_symbol): Likewise. + * mmo.c (mmo_make_empty_symbol): Likewise. + * ppcboot.c (ppcboot_make_empty_symbol): Likewise. + * srec.c (srec_make_empty_symbol): Likewise. + * versados.c (versados_make_empty_symbol): Likewise. + * vms.c (_bfd_vms_make_empty_symbol): Remove. + (vms_make_empty_symbol): Define as _bfd_generic_make_empty_symbol. + * vms-gsd.c (_bfd_vms_slurp_gsd): Call bfd_make_empty_symbol + rather than _bfd_vms_make_empty_symbol. + * vms-misc.c (new_symbol): Likewise. + +2002-01-05 Alan Modra + + * section.c (bfd_section_init): Remove unnecessary initialisations. + (bfd_section_list_clear): New function. + (bfd_section_list_remove, bfd_section_list_insert): New macros. + (_bfd_strip_section_from_output): Use them. + * coffcode.h (coff_set_alignment_hook): Likewise. + * elf32-mips.c (_bfd_mips_elf_final_link): Likewise. + * elf64-mips.c (mips_elf64_final_link): Likewise. + * elf64-mmix.c (mmix_elf_final_link): Likewise. + * sunos.c (sunos_add_dynamic_symbols): Likewise. + * xcofflink.c (_bfd_xcoff_bfd_final_link): Likewise. + * bfd-in2.h: Regenerate. + + * netbsd-core.c (netbsd_core_file_p): Use bfd_make_section_anyway + rather than doing our own section handling. Clean up after errors + with bfd_release and bfd_section_list_clear. Handle unexpected + flags. + * aoutf1.h (sunos4_core_file_p): Likewise. + * aix386-core.c (aix386_core_file_p): Likewise. + * cisco-core.c (cisco_core_file_validate): Likewise. + * ptrace-core.c (ptrace_unix_core_file_p): Likewise. + * trad-core.c (trad_unix_core_file_p): Likewise. + + * hppabsd-core.c (hppabsd_core_core_file_p): Clean up after errors + with bfd_release and bfd_section_list_clear. + * hpux-core.c (hpux_core_core_file_p): Likewise. + * irix-core.c (irix_core_core_file_p): Likewise. + * lynx-core.c (lynx_core_file_p): Likewise. + * osf-core.c (osf_core_core_file_p): Likewise. + * rs6000-core.c (rs6000coff_core_p): Likewise. + * sco5-core.c (sco5_core_file_p): Likewise. + + * elf32-mips.c (_bfd_mips_elf_lo16_reloc): Simplify, and perform + sign extension adjustments without conditionals. + +2002-01-04 Jakub Jelinek + + * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Don't crash if + CIE at .eh_frame start is removed due to no FDEs referencing it. + +2002-01-04 Jason Thorpe + + * config.bfd (x86_64-*-netbsd*): New target. + * configure.in (x86_64-*-netbsd*): Set COREFILE + to netbsd-core.lo. + * configure: Regenerated. -2001-09-30 kaz Kojima - Hans-Peter Nilsson +2002-01-03 Tom Rix - * elf32-sh.c (sh_elf_howto_table, R_SH_REL32): Make - partial_inplace, matching assembler output. Set src_mask to - all ones. - (sh_elf_relocate_section): Delete misplaced comment. - For relocatable linking against section symbol, call - _bfd_relocate_contents for partial_inplace relocs and adjust - rel->r_addend for others. - : Fetch partial_inplace addend with - bfd_get_32, not at rel->r_addend. + * xcofflink.c (_bfd_xcoff_bfd_final_link): Update .pad section ordering + for recent bfd_make_section_anyway change. -2001-09-30 Alan Modra +2002-01-03 Nick Clifton - * elf.c (_bfd_elf_link_hash_copy_indirect): Set ind refcounts to - the old dir refcount, so we indirectly set them to init_refcount. - Short-circuit asserts when we've just verified they are true. + * elf32-arm.h (elf32_arm_final_link_relocate): Handle + R_ARM_THM_PC11 reloc. -2001-09-29 Alan Modra +2002-01-02 Nick Clifton - * section.c (struct sec): Remove kept_section. - (STD_SECTION): Remove kept_section initialisation. - (bfd_make_section_anyway): Here too. - * ecoff.c (bfd_debug_section): Remove kept_section initialisation. - * cofflink.c (_bfd_coff_link_input_bfd): Don't test kept_section. - * elflink.h (elf_link_input_bfd): Set discarded link-once section - symbols to zero, and remove all code involved with kept_section - and tracking section symbol values. - * bfd-in2.h: Regenerate. - * configure.in: Bump version number. + * configure.in (LINGUAS): Add ja. * configure: Regenerate. + * po/ja.po: Import from translation project's web site. -2001-09-29 Alan Modra - - * elf64-ppc.c (struct ppc_dyn_relocs): New. - (IS_ABSOLUTE_RELOC): Define. - (struct ppc_link_hash_entry): New. - (struct ppc_link_hash_table): New. - (ppc_hash_table): Define. - (link_hash_newfunc): New function. - (ppc64_elf_link_hash_table_create): New function. - (create_got_section): New function. - (ppc64_elf_create_dynamic_sections): Call create_got_section. Stash - pointers to our dynamic sections in hash table. - (ppc64_elf_copy_indirect_symbol): New function. - (ppc64_elf_check_relocs): Remove DEBUG code. Use short-cuts to - dynamic sections. Localise vars. Modify code for refcounts - starting from zero. Don't allocate here, or force symbols dynamic. - Don't copy all relocs if shared, select ones we need. Add code - to track possible copy relocs for non-shared link. - (ppc64_elf_gc_mark_hook): Update comment. - (ppc64_elf_gc_sweep_hook): Sweep dynrelocs too. - (ppc64_elf_adjust_dynamic_symbol): Remove DEBUG code. Rewrite .plt - code for reference counting garbage collection. Don't create .plt - entries for functions that don't comply with ABI naming convention, - and don't allocate .plt space here. Use short-cuts to dynamic - sections. If possible, keep dynamic relocations instead of using - copy relocs. Remove confused comments. - (ppc_adjust_dynindx): Delete. - (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define. - (allocate_dynrelocs): New function. - (readonly_dynrelocs): New function. - (ppc64_elf_size_dynamic_sections): Rewrite. Allocate local .got - space here, and call allocate_dynrelocs to allocate space for - global .plt, .got and reloc sections. Use short-cuts to dynamic - sections. Call readonly_dynrelocs to determine whether we need - DT_TEXTREL. Don't generate section symbols here, the generic - ELF linker code does it for us. - (ppc64_elf_final_link): Call regular ELF backend linker rather than - gc variety, since we do our own .got handling. - (ppc64_elf_relocate_section): Remove DEBUG code. Make use of - dynamic section short-cuts. Localise vars, and delay setting. - Handle unknown relocs in main switch statement. Replace ugly - complicated tests for unresolvable relocs with a simple direct - scheme using "unresolved_reloc" var. Test ELF_ST_VISIBILITY - before allowing an undefined sym in a shared lib. Do R_*_DS tests - after main switch, when we've set addend. Do non-addend insn - tweaks before main swithc. Ignore input_section->vma when - calculating reloc offsets as it's always zero. Rewrite dynamic - reloc handling. Consolidate R_*_HA handling. Handle more relocs. - (ppc64_elf_finish_dynamic_symbol): Remove DEBUG code. Make use - of dynamic section short-cuts. Reorganise .plt handling code. - Remove confused comments. Take note of ELF_LINK_FORCED_LOCAL. - Move expressions out of swap_reloca_out function calls. - (ppc64_elf_reloc_type_class): New function. - (ppc64_elf_info_to_howto): Move common expression to local var. - (ppc64_elf_finish_dynamic_sections): Remove DEBUG code. Make use - of dynamic section short-cuts. Don't fiddle with section syms - here as the ELF linker does it for us. - (elf_backend_can_refcount): Define. - (bfd_elf64_bfd_link_hash_table_create): Define. - (elf_backend_copy_indirect_symbol): Define. - (elf_backend_reloc_type_class): Define. - (elf_backend_*, bfd_elf64_bfd_* defines): Sort. - -2001-09-29 Alan Modra - - * elf-bfd.h (struct elf_link_local_dynamic_entry): Add init_refcount. - (struct elf_backend_data): Add can_refcount. - * elf.c (_bfd_elf_link_hash_newfunc): Get rid of a few casts. Set - got.refcount and plt.refcount from init_refcount. - (_bfd_elf_link_hash_table_init): Set up init_refcount. - (_bfd_elf_link_hash_copy_indirect): Reference got/plt.refcount - rather than got/plt.offset, and test for <= 0 rather than -1. - * elflink.h (size_dynamic_sections): Set init_refcount to -1. - * elfxx-target.h (elf_backend_can_refcount): Define. - (elfNN_bed): Init can_refcount. - * linker.c (_bfd_link_hash_newfunc): Get rid of a few casts. - (_bfd_generic_link_hash_newfunc): Likewise. - * elf32-cris.c (cris_elf_check_relocs): Modify for refcounts - starting from zero. - (elf_backend_can_refcount): Define. - * elf32-hppa.c (elf32_hppa_check_relocs): Modify for refcounts - starting from zero. - (elf32_hppa_copy_indirect_symbol): Make static to agree with - prototype. - (elf_backend_can_refcount): Define. - * elf32-i386.c (elf_i386_check_relocs): Modify for refcounts - starting from zero. - (allocate_dynrelocs): Set plt/got.offset rather than *.refcount. - (elf_i386_finish_dynamic_symbol): Expand SHN_UNDEF comment. - (elf_i386_finish_dynamic_sections): Use local var so line < 80 chars. - (elf_backend_can_refcount): Define. - (elf_i386_copy_indirect_symbol): Make static to agree with - prototype. Formatting fix. - * elf32-m68k.c (elf_m68k_check_relocs): Modify for refcounts - starting from zero. - (elf_backend_can_refcount): Define. - * elf32-ppc.c (ppc_elf_check_relocs): Modify for refcounts - starting from zero. - (elf_backend_can_refcount): Define. - * elf32-s390.c (elf_s390_check_relocs): Modify for refcounts - starting from zero. - (elf_backend_can_refcount): Define. - * elf64-s390.c (elf_s390_check_relocs): Modify for refcounts - starting from zero. - (elf_backend_can_refcount): Define. - * elf64-x86-64.c (elf64_x86_64_check_relocs): Modify for refcounts - starting from zero. - (elf_backend_can_refcount): Define. - - * som.c (som_write_symbol_strings): Cast current_offset in - bfd_seek call to match param type. - -2001-09-28 J. Brobecker - - * som.c (som_write_symbol_strings): Fix incorrect type of - current_offset to match the function definition. Fixes a build - failure on HPUX-11.00. - -2001-09-28 Richard Henderson - - * elfxx-target.h [section_flags]: Add SEC_ARCH_BIT_0, SEC_SMALL_DATA, - SEC_MERGE, SEC_STRINGS. - - * section.c (SEC_ARCH_BIT_0): New; replace unused SEC_BALIGN. - * bfd-in2.h: Rebuild. - -2001-09-28 Alan Modra - - * elf64-x86-64.c (elf64_x86_64_reloc_type_lookup): Don't map bfd - reloc code using x86_64_reloc_map. - - * elf32-hppa.c (elf32_hppa_check_relocs): Update comment since we - no longer allocate here. Localise some vars to blocks where they - are used. - (elf32_hppa_adjust_dynamic_symbol): Correct a comment. Delay - setting of vars until needed. - (allocate_dynrelocs): Don't create a .plt entry without a reloc - when symbol visibilty makes a function local. - (elf32_hppa_finish_dynamic_symbol): Move expressions out of - swap_reloca_out function calls. - (elf32_hppa_relocate_section): Likewies. Comment typo fix. - (elf32_hppa_finish_dynamic_sections): Migrate common code out of - switch statement. - - * elf32-i386.c (elf_i386_check_relocs): Update comment since we - no longer allocate here. Localise some vars to blocks where they - are used. Remove separate switch stmt for creating .got sec. - (elf_i386_adjust_dynamic_symbol): Correct a comment. Remove - redundant casts and aborts. Delay setting of vars until needed. - (allocate_dynrelocs): Remove redundant casts and aborts. - (elf_i386_size_dynamic_sections): Move comment. - (elf_i386_finish_dynamic_symbol): Move expressions out of function - calls. - (elf_i386_relocate_section): Likewise. Comment typo fix. - (elf_i386_finish_dynamic_sections): Migrate common code out of - switch statement. - (elf_backend_* defines): Sort. - - * elf32-i386.c (allocate_dynrelocs): Don't create a .plt entry - without a reloc when symbol visibilty makes a function local. - -2001-09-27 Nick Clifton - - * elf32-arm.h (elf32_arm_merge_private_bfd_data): Fix detection of - conflicting float flags. - -2001-09-26 Alan Modra - - * elf32-i386 (elf_i386_copy_indirect_symbol): New function. - (elf_backend_copy_indirect_symbol): Define. - (struct elf_i386_link_hash_entry): Rename "root" to "elf". - (struct elf_i386_link_hash_table): Likewise. - (link_hash_newfunc): Get rid of unnecessary casts. - (elf_i386_link_hash_table_create): Likewise. - (elf_i386_check_relocs): Initialise local_got_refcounts to 0. - Don't test input section SEC_READONLY here to try to avoid copy - relocs, and keep dyn_relocs regardleas of ELF_LINK_NON_GOT_REF. - (elf_i386_adjust_dynamic_symbol): Check output section SEC_READONLY - here to properly test whether we need copy relocs. Do so for weak - syms too. - - * elf32-hppa (elf32_hppa_copy_indirect_symbol): New function. - (elf_backend_copy_indirect_symbol): Define. - (struct elf32_hppa_link_hash_table): Rename "root" to "elf". - (stub_hash_newfunc): Get rid of unnecessary casts. - (hppa_link_hash_newfunc): Likewise. - (elf32_hppa_check_relocs): Initialise local_got_refcounts to 0. - Don't test input section SEC_READONLY here to try to avoid copy - relocs, and keep dyn_relocs regardleas of ELF_LINK_NON_GOT_REF. - (elf32_hppa_adjust_dynamic_symbol): Check output section SEC_READONLY - here to properly test whether we need copy relocs. Do so for weak - syms too. - -2001-09-26 Alan Modra - - * bfd.c (_bfd_default_error_handlerl): Define using VPARAMS, - VA_OPEN, VA_FIXEDARG, VA_CLOSE. - (bfd_archive_filename): Cast bfd_malloc arg to the correct size. - -2001-09-25 Jakub Jelinek - - * elf64-sparc.c (sparc64_elf_build_plt): Fix .plt[32768+] slot - computation. - -2001-09-25 H.J. Lu - - * bfd-in2.h: Regenerated. - -2001-09-25 Alan Modra - - * elf32-i386.c: Add comment re linker function names and ordering. - (elf_i386_link_hash_newfunc): Rename to link_hash_newfunc. - (elf_i386_grok_prstatus): Move before linker functions. - (elf_i386_grok_psinfo): Likewise. - (elf_i386_fake_sections): Move so that functions are ordered. - (elf_i386_reloc_type_class): Likewise. Comment function purpose. - -2001-09-25 Alan Modra - - * elf32-hppa.c: Rename occurrences of "hplink" to "htab" - throughout file. - - * elf32-hppa.c: (LONG_BRANCH_PIC_IN_SHLIB): Delete. Remove all - code handling this option. - (LONG_BRANCH_VIA_PLT): Likewise. - (RELATIVE_DYNRELOCS): Define as zero. - (struct elf32_hppa_dyn_reloc_entry): Add "sec", and - "pc_count" fields. Remove "section" field. - (elf32_hppa_link_hash_entry): Rename reloc_entries to dyn_relocs. - (elf32_hppa_check_relocs): Don't allocate space for dynamic - relocs here. Instead, record all needed dynamic relocs via - dyn_relocs and local_dynrel. Cache pointer to "sreloc" section - in elf_section_data. - (elf32_hppa_gc_sweep_hook): Sweep dyn_relocs and local_dynrel. - (allocate_plt_and_got_and_discard_relocs): Rename to - allocate_dynrelocs. Allocate rather than discarding dyn relocs. - (readonly_dynrelocs): New function. - (elf32_hppa_size_dynamic_sections): Mark output_bfd unused. - Call readonly_dynrelocs to determine need for DT_TEXTREL. - Rename "i" to "ibfd". Allocate space for local dyn relocs. - (elf32_hppa_relocate_section): Make use of cached sreloc. - (elf32_hppa_reloc_type_class): New function. - (elf_backend_reloc_type_class): Define. - -2001-09-25 Alan Modra - - * elf-bfd.h (struct bfd_elf_section_data): Add "local_dynrel" - and "sreloc" fields. - * elf32-i386.c (struct elf_i386_dyn_relocs): Add "sec", and - "pc_count" fields. Remove "section" field. - (elf_i386_check_relocs): Don't set DF_TEXTREL here. Don't - allocate space for dynamic relocs here. Instead, record all - needed dynamic relocs via dyn_relocs and local_dynrel. Cache - pointer to "sreloc" section in elf_section_data. - (elf_i386_gc_sweep_hook): Sweep dyn_relocs and local_dynrel. - (allocate_plt_and_got_and_discard_relocs): Rename to - allocate_dynrelocs. Allocate rather than discarding dyn relocs. - (readonly_dynrelocs): New function. - (elf_i386_size_dynamic_sections): Call readonly_dynrelocs. - Rename "i" to "ibfd". Allocate space for local dyn relocs. - (elf_i386_relocate_section): Make use of cached sreloc. - -2001-09-24 Alan Modra - - * elf-bfd.h (elf_backend_reloc_type_class): Pass in the entire - reloc rather than just the type. - (_bfd_elf_reloc_type_class): Likewise. - * elf.c (_bfd_elf_reloc_type_class): Likewise. - * elf32-arm.h (elf32_arm_reloc_type_class): Likewise. - * elf32-cris.c (elf_cris_reloc_type_class): Likewise. - * elf32-i386.c (elf_i386_reloc_type_class): Likewise. - * elf32-m68k.c (elf32_m68k_reloc_type_class): Likewise. - * elf32-ppc.c (ppc_elf_reloc_type_class): Likewise. - * elf32-s390.c (elf_s390_reloc_type_class): Likewise. - * elf32-sh.c (sh_elf_reloc_type_class): Likewise. - * elf32-sparc.c (elf32_sparc_reloc_type_class): Likewise. - * elf64-alpha.c (elf64_alpha_reloc_type_class): Likewise. - * elf64-s390.c (elf_s390_reloc_type_class): Likewise. - * elf64-sparc.c (sparc64_elf_reloc_type_class): Likewise. - * elf64-x86-64.c (elf64_x86_64_reloc_type_class): Likewise. - * elfxx-ia64.c (elfNN_ia64_reloc_type_class): Likewise. - * elflink.h: Formatting fixes. - (elf_link_sort_relocs): Make "count" and "size" bfd_size_type. - Call bfd_zmalloc rather than calloc. Remove unnecessary cast of - o->contents to PTR. Update call to elf_backend_reloc_type_class. - -2001-09-22 John Reiser - - * elfcode.h (elf_object_p): Allow for no section header at all in - non-ET_REL files. Honor 0 for e_shnum, e_shstrndx, e_shoff. - -2001-09-21 Nick Clifton - - * elfxx-ia64.c: Fix compile time warning messages. - * coff-mcore.c: Fix compile time warning messages. - * coff-ppc.c: Fix compile time warning messages. - * coffcode.h: Fix compile time warning messages. - * elf32-mips.c: Fix compile time warning messages. - * elf64-alpha.c: Fix compile time warning messages. - * libbfd.c: Fix compile time warning messages. - * bfd-in2.h: Regenerate. - -2001-09-21 Alan Modra - - * Makefile.am: Run "make dep-am". - * Makefile.in: Regenerate. - - * aoutx.h: Formatting fixes. - * merge.c (_bfd_merged_section_offset): Break line at 80 chars. - - * linker.c: Replace bfd_get_filename with bfd_archive_filename - in error message. - -2001-09-21 Alan Modra - - * bfd.c (bfd_archive_filename): New function. - * bfd-in2.h: Regenerate. - * aout-adobe.c: Replace bfd_get_filename with bfd_archive_filename - in error messages where the bfd is an input bfd. - * aout-cris.c: Likewise. - * coff-arm.c: Likewise. - * coff-mcore.c: Likewise. - * coff-ppc.c: Likewise. - * coff-rs6000.c: Likewise. - * coff-sh.c: Likewise. - * coff-tic54x.c: Likewise. - * coff-tic80.c: Likewise. - * coff64-rs6000.c: Likewise. - * coffcode.h: Likewise. - * coffgen.c: Likewise. - * cofflink.c: Likewise. - * ecofflink.c: Likewise. - * elf-hppa.h: Likewise. - * elf.c: Likewise. - * elf32-arm.h: Likewise. - * elf32-cris.c: Likewise. - * elf32-gen.c: Likewise. - * elf32-hppa.c: Likewise. - * elf32-i370.c: Likewise. - * elf32-i386.c: Likewise. - * elf32-m32r.c: Likewise. - * elf32-mcore.c: Likewise. - * elf32-mips.c: Likewise. - * elf32-ppc.c: Likewise. - * elf32-s390.c: Likewise. - * elf32-sh.c: Likewise. - * elf32-sparc.c: Likewise. - * elf32-v850.c: Likewise. - * elf64-alpha.c: Likewise. - * elf64-gen.c: Likewise. - * elf64-ppc.c: Likewise. - * elf64-s390.c: Likewise. - * elf64-sparc.c: Likewise. - * elf64-x86-64.c: Likewise. - * elflink.h: Likewise. - * elfxx-ia64.c: Likewise. - * ieee.c: Likewise. - * ihex.c: Likewise. - * libbfd.c: Likewise. - * pdp11.c: Likewise. - * pe-mips.c: Likewise. - * peicode.h: Likewise. - * srec.c: Likewise. - * xcofflink.c: Likewise. - - * elf32-arm.h: Make _bfd_error_handler calls K&R compatible. - - * elflink.c (_bfd_elf_create_linker_section): Better grammar for - error message. - - * coff-mcore.c (coff_mcore_relocate_section): Internalionalise - error message. - - * elf64-sparc.c (sparc64_elf_add_symbol_hook): Constify stt_types. - Consolidate error messages, and split long messages to two lines. - -2001-09-20 John Reiser - - * elf32-i386.c (elf_i386_relocate_section): Coordinate info->symbolic - and info->allow_shlib_undefined. - * elf32-cris.c: Likewise. - * elf32-hppa.c: Likewise. - * elf32-m68k.c: Likewise. - * elf32-mips.c: Likewise. - * elf32-ppc.c: Likewise. - * elf32-s390.c: Likewise. - * elf32-sh.c: Likewise. - * elf32-sparc.c: Likewise. - * elf64-alpha.c: Likewise. - * elf64-hppa.c: Likewise. - * elf64-ppc.c: Likewise. - * elf64-s390.c: Likewise. - * elf64-sparc.c: Likewise. - * elf64-x86-64.c: Likewise. - * elfxx-ia64.c: Likewise. - -2001-09-18 Bruno Haible - - * aoutx.h: Include "safe-ctype.h" instead of . - (aout_link_write_symbols): Use ISDIGIT instead of isdigit. - * archive.c: Include "safe-ctype.h" instead of . - (_bfd_generic_read_ar_hdr_mag): Use ISDIGIT instead of isdigit. - * archures.c: Include "safe-ctype.h" instead of . - (bfd_default_scan): Use ISDIGIT instead of isdigit. - * bfd.c: Include "safe-ctype.h" instead of . - (bfd_scan_vma): Use ISXDIGIT/ISDIGIT/ISLOWER instead of - isxdigit/isdigit/islower. - * binary.c: Include "safe-ctype.h" instead of . - (mangle_name): Use ISALNUM instead of isalnum. - * cpu-v850.c: Include "safe-ctype.h" instead of . - (scan): Use ISDIGIT instead of isdigit. - * hosts/alphavms.h: Don't include . - * ieee.c: Include "safe-ctype.h" instead of . - (ieee_object_p): Use TOUPPER instead of toupper. - * ihex.c: Include "safe-ctype.h" instead of . - (ihex_bad_byte): Use ISPRINT instead of isprint. - * merge.c: Don't include . - * oasys.c: Include "safe-ctype.h" instead of . - (oasys_write_sections): Use ISDIGIT instead of isdigit. - * pdp11.c: Include "safe-ctype.h" instead of . - (aout_link_write_symbols): Use ISDIGIT instead of isdigit. - * ppcboot.c: Include "safe-ctype.h" instead of . - (mangle_name): Use ISALNUM instead of isalnum. - * som.c: Include "safe-ctype.h" instead of . - (som_set_reloc_info): Use ISUPPER/ISLOWER/ISDIGIT instead of - isupper/islower/isdigit. - (som_decode_symclass): Use TOUPPER instead of toupper. - * srec.c: Include "safe-ctype.h" instead of . - (srec_bad_byte): Use ISPRINT instead of isprint. - (srec_scan): Use ISSPACE instead of isspace. - * stabs.c: Include "safe-ctype.h" instead of . - (_bfd_link_section_stabs): Use ISDIGIT instead of isdigit. - * syms.c: Include "safe-ctype.h" - (islower, toupper): Remove macro definitions. - (bfd_decode_symclass): Use TOUPPER instead of toupper. - * vms-gsd.c: Don't include . - * vms-hdr.c: Include "safe-ctype.h" instead of . - (_bfd_vms_write_hdr): Use ISLOWER/TOUPPER instead of - islower/toupper. - * vms-tir.c: Don't include . - -2001-09-18 Alan Modra - - * libbfd.c (bfd_bread): New function replacing bfd_read without - redundant params. Allow reads up to (size_t) -2 in length. - (bfd_bwrite): Similarly for bfd_write. - (real_read): Return a size_t. - (bfd_read): Call bfd_bread. - (bfd_write): Call bfd_bwrite. - (warn_deprecated): New function to annoy everybody. - (bfd_get_file_window): Don't call bfd_set_error unnecessarily. - * bfd-in.h (bfd_bread, bfd_bwrite, warn_deprecated): Declare. - (bfd_read, bfd_write): Define as macro. - * aix386-core.c: Replace calls to bfd_read with bfd_bread, and - likewise for bfd_write. Ensure function args are correct size by - using casts or local vars. In some cases, remove unnecessary - casts. Formatting fixes, in some cases removing a large expression - from function args by using a local var. Replace CONST with const. - Modify variable types to avoid warings. Use casts to avoid - warnings when using negative numbers in unsigned expressions. - * aout-adobe.c: Likewise. - * aout-arm.c: Likewise. - * aout-cris.c: Likewise. - * aout-encap.c: Likewise. - * aout-ns32k.c: Likewise. - * aout-target.h: Likewise. - * aout-tic30.c: Likewise. - * aoutf1.h: Likewise. - * aoutx.h: Likewise. - * archive.c: Likewise. - * archures.c: Likewise. - * bfd-in.h: Likewise. - * bfd.c: Likewise. - * binary.c: Likewise. - * bout.c: Likewise. - * cache.c: Likewise. - * cisco-core.c: Likewise. - * coff-a29k.c: Likewise. - * coff-alpha.c: Likewise. - * coff-arm.c: Likewise. - * coff-h8300.c: Likewise. - * coff-h8500.c: Likewise. - * coff-i386.c: Likewise. - * coff-i860.c: Likewise. - * coff-i960.c: Likewise. - * coff-ia64.c: Likewise. - * coff-m68k.c: Likewise. - * coff-m88k.c: Likewise. - * coff-mcore.c: Likewise. - * coff-mips.c: Likewise. - * coff-ppc.c: Likewise. - * coff-rs6000.c: Likewise. - * coff-sh.c: Likewise. - * coff-sparc.c: Likewise. - * coff-stgo32.c: Likewise. - * coff-tic30.c: Likewise. - * coff-tic54x.c: Likewise. - * coff-tic80.c: Likewise. - * coff-w65.c: Likewise. - * coff-z8k.c: Likewise. - * coff64-rs6000.c: Likewise. - * coffcode.h: Likewise. - * coffgen.c: Likewise. - * cofflink.c: Likewise. - * coffswap.h: Likewise. - * corefile.c: Likewise. - * cpu-arc.c: Likewise. - * cpu-h8300.c: Likewise. - * cpu-h8500.c: Likewise. - * cpu-i960.c: Likewise. - * cpu-ia64-opc.c: Likewise. - * cpu-ns32k.c: Likewise. - * cpu-pdp11.c: Likewise. - * cpu-pj.c: Likewise. - * cpu-sh.c: Likewise. - * cpu-w65.c: Likewise. - * cpu-z8k.c: Likewise. - * dwarf1.c: Likewise. - * dwarf2.c: Likewise. - * ecoff.c: Likewise. - * ecofflink.c: Likewise. - * ecoffswap.h: Likewise. - * elf-bfd.h: Likewise. - * elf-hppa.h: Likewise. - * elf-m10200.c: Likewise. - * elf-m10300.c: Likewise. - * elf.c: Likewise. - * elf32-arc.c: Likewise. - * elf32-arm.h: Likewise. - * elf32-avr.c: Likewise. - * elf32-cris.c: Likewise. - * elf32-fr30.c: Likewise. - * elf32-gen.c: Likewise. - * elf32-h8300.c: Likewise. - * elf32-hppa.c: Likewise. - * elf32-i370.c: Likewise. - * elf32-i386.c: Likewise. - * elf32-i860.c: Likewise. - * elf32-m32r.c: Likewise. - * elf32-m68k.c: Likewise. - * elf32-mcore.c: Likewise. - * elf32-mips.c: Likewise. - * elf32-openrisc.c: Likewise. - * elf32-pj.c: Likewise. - * elf32-ppc.c: Likewise. - * elf32-s390.c: Likewise. - * elf32-sh-lin.c: Likewise. - * elf32-sh.c: Likewise. - * elf32-sparc.c: Likewise. - * elf32-v850.c: Likewise. - * elf64-alpha.c: Likewise. - * elf64-hppa.c: Likewise. - * elf64-mips.c: Likewise. - * elf64-ppc.c: Likewise. - * elf64-s390.c: Likewise. - * elf64-sparc.c: Likewise. - * elf64-x86-64.c: Likewise. - * elfarm-nabi.c: Likewise. - * elfcode.h: Likewise. - * elfcore.h: Likewise. - * elflink.c: Likewise. - * elflink.h: Likewise. - * elfxx-ia64.c: Likewise. - * elfxx-target.h: Likewise. - * format.c: Likewise. - * hash.c: Likewise. - * hp300hpux.c: Likewise. - * hppabsd-core.c: Likewise. - * hpux-core.c: Likewise. - * i386aout.c: Likewise. - * i386dynix.c: Likewise. - * i386linux.c: Likewise. - * i386lynx.c: Likewise. - * i386mach3.c: Likewise. - * i386msdos.c: Likewise. - * i386os9k.c: Likewise. - * ieee.c: Likewise. - * ihex.c: Likewise. - * irix-core.c: Likewise. - * libaout.h: Likewise. - * libbfd-in.h: Likewise. - * libbfd.c: Likewise. - * libcoff-in.h: Likewise. - * libecoff.h: Likewise. - * libieee.h: Likewise. - * libnlm.h: Likewise. - * libpei.h: Likewise. - * libxcoff.h: Likewise. - * linker.c: Likewise. - * lynx-core.c: Likewise. - * m68klinux.c: Likewise. - * merge.c: Likewise. - * mipsbsd.c: Likewise. - * netbsd-core.c: Likewise. - * nlm.c: Likewise. - * nlm32-alpha.c: Likewise. - * nlm32-i386.c: Likewise. - * nlm32-ppc.c: Likewise. - * nlm32-sparc.c: Likewise. - * nlmcode.h: Likewise. - * nlmswap.h: Likewise. - * ns32k.h: Likewise. - * oasys.c: Likewise. - * opncls.c: Likewise. - * osf-core.c: Likewise. - * pc532-mach.c: Likewise. - * pdp11.c: Likewise. - * pe-mips.c: Likewise. - * peXXigen.c: Likewise. - * peicode.h: Likewise. - * ppcboot.c: Likewise. - * ptrace-core.c: Likewise. - * reloc.c: Likewise. - * reloc16.c: Likewise. - * riscix.c: Likewise. - * rs6000-core.c: Likewise. - * sco5-core.c: Likewise. - * section.c: Likewise. - * som.c: Likewise. - * sparclinux.c: Likewise. - * sparclynx.c: Likewise. - * srec.c: Likewise. - * stabs.c: Likewise. - * sunos.c: Likewise. - * syms.c: Likewise. - * targets.c: Likewise. - * tekhex.c: Likewise. - * trad-core.c: Likewise. - * versados.c: Likewise. - * vms-gsd.c: Likewise. - * vms-hdr.c: Likewise. - * vms-misc.c: Likewise. - * vms-tir.c: Likewise. - * vms.c: Likewise. - * vms.h: Likewise. - * xcofflink.c: Likewise. - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - * libcoff.h: Regenerate. - - * bfd.c (struct _bfd): Make "where" and "origin" unsigned. - * bfd-in.h (file_ptr): Change from a long int to a bfd_signed_vma. - (ufile_ptr): Define. - (bfd_tell): Return a ufile_ptr. - * libbfd.c (bfd_tell): Likewise. - (bfd_seek): Use bfd_size_type locals. Don't call bfd_set_error - unnecessarily. - * aix386-core.c: Test != 0 for bfd_seek errors rather than < 0. - * aoutf1.h: Likewise. - * som.c: Likewise. - * cache.c (bfd_cache_lookup_worker): Guard against abfd->where - larger than unsigned long can represent. - - * libbfd.c (bfd_malloc): Take a bfd_size_type arg. Error if - size overflows size_t. - (bfd_realloc): Likewise. - (bfd_zmalloc): Likewise. - * opncls.c (bfd_alloc): Likewise. - (bfd_zalloc): Likewise. - * libbfd-in.h (bfd_malloc, bfd_realloc, bfd_zmalloc): Update. - (bfd_alloc, bfd_zalloc): Update. - - * libbfd.c (bfd_get_8): Mask with 0xff in case char is more than - 8 bits. - (bfd_get_signed_8): Likewise. - (H_PUT_64, H_PUT_32, H_PUT_16, H_PUT_8, - H_PUT_S64, H_PUT_S32, H_PUT_S16, H_PUT_S8, - H_GET_64, H_GET_32, H_GET_16, H_GET_8, - H_GET_S64, H_GET_S32, H_GET_S16, H_GET_S8): Define and use. - * libaout.h: Likewise define and use here. - * aout-adobe.c: Use H_GET_* and H_PUT_* macros. - * aout-arm.c: Likewise. - * aout-encap.c: Likewise. - * aout-ns32k.c: Likewise. - * aout-tic30.c: Likewise. - * aoutf1.h: Likewise. - * aoutx.h: Likewise. - * bout.c: Likewise. - * coff-alpha.c: Likewise. - * coff-h8300.c: Likewise. - * coff-h8500.c: Likewise. - * coff-i960.c: Likewise. - * coff-ia64.c: Likewise. - * coff-m88k.c: Likewise. - * coff-mips.c: Likewise. - * coff-ppc.c: Likewise. - * coff-rs6000.c: Likewise. - * coff-sh.c: Likewise. - * coff-sparc.c: Likewise. - * coff-stgo32.c: Likewise. - * coff-tic30.c: Likewise. - * coff-tic80.c: Likewise. - * coff-w65.c: Likewise. - * coff-z8k.c: Likewise. - * coff64-rs6000.c: Likewise. - * coffgen.c: Likewise. - * cofflink.c: Likewise. - * coffswap.h: Likewise. - * ecoff.c: Likewise. - * ecoffswap.h: Likewise. - * elf.c: Likewise. - * elf32-mips.c: Likewise. - * elf64-mips.c: Likewise. - * hp300hpux.c: Likewise. - * i386dynix.c: Likewise. - * i386lynx.c: Likewise. - * i386msdos.c: Likewise. - * i386os9k.c: Likewise. - * libpei.h: Likewise. - * nlm32-alpha.c: Likewise. - * nlm32-i386.c: Likewise. - * nlm32-ppc.c: Likewise. - * nlmcode.h: Likewise. - * nlmswap.h: Likewise. - * oasys.c: Likewise. - * pdp11.c: Likewise. - * pe-mips.c: Likewise. - * peXXigen.c: Likewise. - * peicode.h: Likewise. - * riscix.c: Likewise. - * sunos.c: Likewise. - * xcofflink.c: Likewise. - * elfcode.h: (put_word, get_word, put_signed_word, get_signed_word): - Rename to H_PUT_WORD, H_GET_WORD, H_PUT_SIGNED_WORD, H_GET_SIGNED_WORD. - * coff-rs6000.c (PUTWORD, PUTHALF, PUTBYTE): Don't define. Use - equivalent H_PUT_* macro instead. - (GETWORD, GETHALF, GETBYTE): Similarly. - * coff64-rs6000.c (PUTWORD, PUTHALF, PUTBYTE): Likewise. - (GETWORD, GETHALF, GETBYTE): Likewise. - * coffswap.h (PUTWORD, PUTHALF, PUTBYTE): Likewise. - - * bfd-in.h (struct orl): Change "pos" to a union. - * archive.c (_bfd_compute_and_write_armap): Use it instead of casts. - (bsd_write_armap): Here too. - (coff_write_armap): And here. - * coff-rs6000.c (xcoff_write_armap_old): And here. - (xcoff_write_one_armap_big): And here. - (xcoff_write_armap_big): And here. - * ecoff.c (_bfd_ecoff_write_armap): And here. - * elf64-mips.c (mips_elf64_write_armap): And here. - - * aoutf1.h (sunos_set_arch_mach): Make "mach" param an enum. - * elf-m10300.c (elf_mn10300_mach): Return an unsigned long. - * elf32-h8300.c (elf32_h8_mach): Likewise. - * elf32-mips.c (elf_mips_mach): Likewise. - * sparclynx.c (NAME(lynx,set_arch_mach)): Likewise. - - * aix386-core.c (aix386_core_file_p): Remove redundant bfd_release - calls. - (aix386_core_vec): Typo fix. - - * aout-arm.c: Include libaout.h and aout/aout64.h after N_TXTADDR - etc. to avoid redefined macro warning. - (MY(put_reloc)): Use bfd_vma for "value" rather than long. - (MY(fix_pcrel_26)): Likewise. - * aout-ns32k.c (MY(put_reloc)): Likewise. - * aout-cris.c (MY(swap_ext_reloc_out)): Likewise for r_addend. - * aoutx.h (NAME(aout,swap_ext_reloc_out)): Likewise. - * coff-arm.c (coff_arm_relocate_section): Likewise for my_offset. - - * aout-encap.c: Include "file", not for binutils headers. - (encap_object_p): Half baked attempt to fix compile errors in - code dealing with "magic". - - * aout-ns32k.c: Include "file", not for binutils headers. - (_bfd_ns32k_relocate_contents): get_data and put_data manipulate - bfd_vma's rather than longs. - * cpu-ns32k.c (ns32k_sign_extend): Delete. - (_bfd_ns32k_get_displacement): Return a bfd_vma, don't pass in offset. - (_bfd_ns32k_get_immediate): Likewise. Add code for 8 byte values, - remove case 3. - (_bfd_ns32k_put_displacement): Accept a bfd_vma, don't pass in offset. - Use unsigned comparisons. - (bfd_ns32k_put_immediate): Likewise, and add code for 8 byte values. - (do_ns32k_reloc): get_data and put_data operate on bfd_vma's. - (_bfd_do_ns32k_reloc_contents): Likewise. - * ns32k.h (_bfd_ns32k_get_displacement): Update prototype. - (_bfd_ns32k_get_immediate): Likewise. - (_bfd_ns32k_put_displacement): Likewise. - (_bfd_ns32k_put_immediate): Likewise. - (bfd_reloc_status_type): Likewise. - - * aoutx.h (NAME(aout,find_nearest_line)): Rename 'p' to 'colon' - to avoid shadowing. - * pdp11.c (NAME(aout,find_nearest_line)): Likewise. - * coff-h8300.c (h8300_reloc16_extra_cases): Remove shadowing "value". - * coff-ppc.c (enum ref_category): Rename "data" to "tocdata" to - avoid shadowing. - (record_toc): Use a bfd_signed_vma for our_toc_offset. - * coffcode.h (coff_write_relocs): Rename "i" to avoid shadowing. - * elf.c (bfd_elf_get_bfd_needed_list): Rename "link" var to avoid - shadow warning. - (_bfd_elfcore_strndup): Likewise for "dup". - * elf32-cris.c (cris_elf_relocate_section): "symname" instead of - "name" to avoid shadowing. - * elf32-hppa.c (elf32_hppa_relocate_section): Remove duplicate - definition of "off". - * elf32-i386.c (elf_i386_relocate_section): Likewise. - * elf32-mips.c (_bfd_mips_elf_modify_segment_map): Remove duplicate - definition of "s". - (_bfd_mips_elf_final_link): Rename "i" to "j". Remove duplicate - "secpp". - * elf64-x86-64.c (elf64_x86_64_relocate_section): Rename inner "indx" - to avoid shadowing. - * elflink.h (elf_link_add_object_symbols): Rename "link" to "shlink" - to avoid shadowing. - (elf_link_input_bfd): Likewise. - (elf_bfd_final_link): Remove duplicate innermost "off" var. - * oasys.c (oasys_write_data): Rename innermost "p" to "sym". - * reloc16.c (bfd_coff_reloc16_relax_section): Rename "i" param to - "input_section". - * som.c (som_prep_for_fixups): Rename inner "i" to "j". - * sunos.c (sunos_add_dynamic_symbols): Localise "s" var. - (sunos_write_dynamic_symbol): Remove unused vars. - * syms.c (_bfd_stab_section_find_nearest_line): Remove duplicate - innermost "directory_name" and "file_name" vars. - * tekhex.c (first_phase): Rename local var "type" to "stype". - (tekhex_write_object_contents): Rename innermost "s" to "sym". - * vms-gsd.c (vms_secflag_by_name): Change "size" param to "hassize", - doing comparison at caller. - (vms_esecflag_by_name): Likewise. - * vms-tir.c (etir_sto): Rename innermost "psect" to "psect1". - * xcofflink.c (xcoff_link_input_bfd): Delete duplicate innermost "o". - (xcoff_write_global_symbol): Rename "p" param to "inf". - - * cisco-core.c: Add missing prototypes. - (cisco_core_file_failing_command): Add ATTRIBUTE_UNUSED. - (cisco_core_file_failing_signal): Likewise. - (cisco_core_file_matches_executable_p): Likewise. - * hpux-core.c (hpux_core_core_file_failing_signal): Likewise. - * netbsd-core.c (netbsd_core_file_matches_executable_p): Likewise. - * osf-core.c (osf_core_core_file_matches_executable_p): Likewise. - * sco5-core.c (sco5_core_file_matches_executable_p): Likewise. - - * coff-arm.c (coff_arm_link_hash_table): Use bfd_size_type for - thumb_glue_size and arm_glue_size. - * elf32-arm.h (elf32_arm_link_hash_table): Likewise here. - - * coff64-rs6000.c: Group prototypes together. - - * coffcode.h (coff_set_arch_mach): Add ATTRIBUTE_UNUSED. - (buy_and_read): Remove "seek" param. Change "size" to bfd_size_type. - - * cpu-arc.c: Add missing prototypes. - * cpu-h8500.c: Likewise. - * cpu-i960.c: Likewise. - * cpu-pj.c: Likewise. - * cpu-sh.c: Likewise. - * cpu-w65.c: Likewise. - * cpu-z8k.c: Likewise. - * elf32-fr30.c: Likewise. - * elf32-h8300.c: Likewise. - * elf32-i370.c: Likewise. - * hpux-core.c: Likewise. - * versados.c: Likewise. - - * cpu-h8300.c (bfd_default_scan_num_mach): Don't declare. - * cpu-h8500.c: Likewise. - * cpu-i960.c: Likewise. - * cpu-z8k.c: Likewise. - - * cpu-ia64-opc.c: Correct comment. - - * dwarf2.c (_bfd_dwarf2_find_nearest_line): Remove unused var. - - * elf-bfd.h (elf_size_info): Change count param of write_out_phdrs - to unsigned. - (bfd_elf32_write_out_phdrs): Likewise. - (bfd_elf64_write_out_phdrs): Likewise. - (elf_linker_section_pointers): Change addend to bfd_vma. - (_bfd_elf_find_pointer_linker_section): Likewise. - (_bfd_elfcore_make_pseudosection): Change size param to size_t and - filepos to unsigned file_ptr. - (_bfd_elfcore_strndup): Change max param to size_t. - * elf.c (_bfd_elfcore_make_pseudosection): As above. - (_bfd_elfcore_strndup): Likewise. - (_bfd_elf_find_pointer_linker_section): Likewise. - - * elf-hppa.h (elf_hppa_relocate_insn): Return an int, and change - insn and sym_value to ints. - - * elf.c (elf_read): Make "offset" param a file_ptr, "size" a - bfd_size_type. - (elfcore_read_notes): Likewise. - - * elf32-arm.h (elf32_arm_final_link_relocate): Change sym_flags - param from unsigned char to int. - (elf32_arm_relocate_section): If USE_REL, cast "rel" appropriately - for info_to_howto call. - (add_dynamic_entry): Define macro. - (elf32_arm_size_dynamic_sections): Use add_dynamic_entry. - - * elf32-cris.c (add_dynamic_entry): Define macro. - (elf_cris_size_dynamic_sections): Use add_dynamic_entry. - - * elf32-h8300.c (elf32_h8_final_write_processing): Make static. - (elf32_h8_object_p): Likewise. - (elf32_h8_merge_private_bfd_data): Likewise. - (elf32_h8_relax_section): Cast gap to int so signed comparisons work. - - * elf32-hppa.c (add_dynamic_entry): Define macro. - (elf32_hppa_size_dynamic_sections): Use it. - * elf32-i370.c (add_dynamic_entry): Define macro. - (i370_elf_size_dynamic_sections): Use it. - (i370_noop): Make static. - * elf32-i386.c (add_dynamic_entry): Define macro. - (elf_i386_size_dynamic_sections): Use it. - * elf32-m68k.c (add_dynamic_entry): Define macro. - (elf_m68k_size_dynamic_sections): Use it. - * elf32-ppc.c (add_dynamic_entry): Define macro. - (ppc_elf_size_dynamic_sections): Use it. - * elf32-s390.c (add_dynamic_entry): Define macro. - (elf_s390_size_dynamic_sections): Use it. - * elf64-alpha.c (add_dynamic_entry): Define macro. - (elf64_alpha_size_dynamic_sections): Use it. - * elf64-hppa.c (add_dynamic_entry): Define macro. - (elf64_hppa_size_dynamic_sections): Use it. - * elf64-ppc.c (add_dynamic_entry): Define macro. - (ppc64_elf_size_dynamic_sections): Use it. - * elf64-s390.c (add_dynamic_entry): Define macro. - (elf_s390_size_dynamic_sections): Use it. - * elf64-sparc.c (add_dynamic_entry): Define macro. - (sparc64_elf_size_dynamic_sections): Use it. - * elf64-x86-64.c (add_dynamic_entry): Define macro. - (elf64_x86_64_size_dynamic_sections): Use it. - * elfxx-ia64.c (add_dynamic_entry): Define macro. - (elfNN_ia64_size_dynamic_sections): Use it. - - * elf32-v850.c (SEXT24): Modify to avoid signed/unsigned warning. - (v850_elf_perform_relocation): Make "r_type" param unsigned. - - * elf64-mips.c (mips_elf64_slurp_one_reloc_table): Just return - false if the first malloc fails rather than going via error_return. - - * elf64-sparc.c (sparc64_elf_plt_entry_offset): Use a bfd_vma for - "index" param. - (sparc64_elf_plt_ptr_offset): Likewise, and for "max" param too. - - * elflink.h (elf_link_input_bfd): s/ingored/ignored/ in error message. - - * elfxx-ia64.c (global_sym_index): Return a long. - - * ieee.c (get_symbol): Use int rather than char param. - (ieee_slurp_sections): Move "section" var to inner blocks. - (copy_expression): Don't init "value" to zero or worry about - clearing to zero after using. - (ieee_write_debug_part): Rename "output_buffer" to "obuff" to avoid - shadowing. - - * ihex.c (ihex_write_record): Make "count" var a size_t, "addr" an - unsigned int. - - * libbfd-in.h (BFD_ALIGN): Add cast to avoid signed/unsigned warning. - (bfd_write_bigendian_4byte_int): Pass an unsigned int value param. - - * mipsbsd.c (mips_fix_jmp_addr): Add "error_message" param. - - * pc532-mach.c (MYNSX): Delete. - (ns32kaout_bfd_reloc_type_lookup): Define prototype without MYNSX. - (write_object_contents): Correct prototype. - - * peicode.h (pe_ILF_build_a_bfd): Use an unsigned int param rather - than unsigned short. - - * section.c (bfd_set_section_contents): Remove redundant - "offset < 0" test. Check that "count" doesn't overflow size_t. - (bfd_get_section_contents): Likewise. - - * som.c (som_fixup_formats): Add missing braces. - (som_reloc_addend): Pass a bfd_vma for "addend". - - * srec.c (srec_write_record): Pass "type" as an unsigned int. - (srec_write_symbols): Remove an unnecessary var. - - * targets.c (_bfd_target_vector): Sort entries. Sort externs - to match. - * configure.in: Sort to match. Bump version number. - * configure: Regenerate. - - * tekhex.c (move_section_contents): Assert offset == 0. - - * versados.c (new_symbol_string): Constify arg. - (process_esd): Use bfd_und_section_ptr rather than &bfd_und_section. - (versados_get_symbol_info): Make static. - (versados_print_symbol): Likewise. - (versados_get_reloc_upper_bound): Likewise. - (versados_canonicalize_reloc): Likewise. - -2001-09-18 Nick Clifton - - * elflink.h (elf_link_input_bfd): Fix typo in error message. - -2001-09-17 H.J. Lu - - * dwarf1.c (parse_die): Take a new arg for the end of the - section. Return false if die is beyond the section. - (parse_functions_in_unit): Pass the end of the section to - parse_die (). - (_bfd_dwarf1_find_nearest_line): Likewise. - -2001-09-14 Michael Rauch - - * elf32-sparc.c (elf32_sparc_relocate_section): Treat R_SPARC_UA32 - just like R_SPARC_32. - -2001-09-14 Kevin Lo - - * configure.bfd: Add arm-openbsd target. - -2001-09-14 Thiemo Seufer - - * config.bfd: Change machine triplets from mips*el*-* to mips*el-*. - Add support for mips64. - -2001-09-13 Alexandre Oliva - - * elf32-openrisc.c (ELF_MACHINE_ALT1): Define as EM_OPENRISC_OLD. - -2001-09-12 Alexandre Oliva - - * elf.c (prep_headers): Get the machine code from the elf - backend data. - * elf-m10200.c (ELF_MACHINE_CODE): Redefine to EM_MN10200. - (ELF_MACHINE_ALT1): Define to EM_CYGNUS_MN10200. - * elf-m10300.c (ELF_MACHINE_CODE): Redefine to EM_MN10300. - (ELF_MACHINE_ALT1): Define to EM_CYGNUS_MN10300. - * elf-arc.c (arc_elf_final_write_processing): Don't override - e_machine, it's now properly set in prep_headers. - * elf32-avr.c (elf32_avr_object_p): Accept both EM_AVR and - EM_AVR_OLD. - (ELF_MACHINE_ALT1): Define to EM_AVR_OLD. - * elf-d10v.c (ELF_MACHINE_CODE): Redefine to EM_D10V. - (ELF_MACHINE_ALT1): Define to EM_CYGNUS_D10V. - * elf-d30v.c (ELF_MACHINE_CODE): Redefine to EM_D30V. - (ELF_MACHINE_ALT1): Define to EM_CYGNUS_D30V. - * elf-fr30.c (ELF_MACHINE_CODE): Redefine to EM_FR30. - (ELF_MACHINE_ALT1): Define to EM_CYGNUS_FR30. - * elf-m32r.c (ELF_MACHINE_CODE): Redefine to EM_M32R. - (ELF_MACHINE_ALT1): Define to EM_CYGNUS_M32R. - * elf32-pj.c (ELF_MACHINE_ALT1): DEfine to EM_PJ_OLD. - * elf-v850.c (ELF_MACHINE_CODE): Redefine to EM_V850. - (ELF_MACHINE_ALT1): Define to EM_CYGNUS_V850. - -2001-09-11 Richard Henderson - - * elf64-alpha.c (elf64_alpha_section_flags): New. - (elf64_alpha_fake_sections): Map SEC_SMALL_DATA to SHF_ALPHA_GPREL. - -2001-09-11 Richard Henderson - - * elf64-alpha.c (elf64_alpha_relocate_section): Do not - apply HINT relocations against dynamic symbols. - -2001-09-11 H.J. Lu - - * linker.c (link_action): Change COMMON_ROW\defw from CREF to COM. - -2001-09-09 Richard Henderson - - * elf64-alpha.c: Delete all unused ERIC_neverdef and rth_notdef code. - - * elf64-alpha.c (elf64_alpha_relax_with_lituse): Nop out gpdisp - following a call to a near function. - -2001-09-08 Richard Henderson - - * elf64-alpha.c (elf64_alpha_relocate_section): Soft fail - relocation errors. Fail gp-relative relocations against - dynamic symbols. - -2001-09-08 Alan Modra - - * elf32-i386.c (elf_i386_relocate_section): Check !DEF_REGULAR - as well as DEF_DYNAMIC in test for avoided copy relocs. - (allocate_plt_and_got_and_discard_relocs): Likewise. - * elf32-hppa.c (elf_i386_relocate_section): Likewise. - (allocate_plt_and_got_and_discard_relocs): Likewise. - -2001-09-07 Thiemo Seufer - - * elf32-mips.c (mips_elf_calculate_relocation): Fix overflow handling - of R_MIPS_PC16. - -2001-09-06 Thiemo Seufer - - * elf64-mips.c (mips_elf64_howto_table_rel): Fix relocation HOWTO - definitions. - (mips_elf64_howto_table_rel): Likewise. - -2001-09-05 Tom Rix - - * xcofflink.c (bfd_xcoff_import_symbol): Handle import file XMC_XO - and syscall symbols. - (write_global_symbol) : Same. - (bfd_xcoff_export_symbol): Remove unused syscall param. - * libxcoff.h: Change prototype of bfd_xcoff_export symbol and - bfd_xcoff_import_symbol. - * bfd-in.h: Same. - * bfd-in2.h : Regenerate. - -2001-09-04 Richard Henderson - - * elf64-alpha.c (SKIP_HOWTO): New. - (elf64_alpha_howto_table): Use it to remove dead ECOFF relocs. - Fix sizes of 16-bit mem format relocs. - (elf64_alpha_reloc_map): Update to match. - (elf64_alpha_relax_with_lituse): Use GPREL16 as appropriate. - (elf64_alpha_relax_without_lituse): Likewise. - (elf64_alpha_check_relocs): Handle GPREL16. - (elf64_alpha_relocate_section): Likewise. - * reloc.c (BFD_RELOC_ALPHA_USER_*): Remove. - (BFD_RELOC_ALPHA_GPREL_HI16, BFD_RELOC_ALPHA_GPREL_LO16): New. - * bfd-in2.h, libbfd.h: Rebuild. - -2001-09-04 Jeff Law - - * elf32-h8300.c (elf32_h8_relax_section): New function. - (elf32_h8_relax_delete_bytes): Likewise. - (elf32_h8_symbol_address_p): Likewise. - (elf32_h8_get_relocated_section_contents): Likewise. - (bfd_elf32_bfd_relax_section): Define. - (bfd_elf32_bfd_get_relocated_section_contents): Likewise. - - * elf32-h8300.c (special): New function. - (h8_elf_howto_table): Use it for SPECIAL_FUNCTION field in - all relocations. - (elf32_h8_final_link_relocate): Treat R_H8_DIR24A8 like 32bit - relocations. Fix problems with the true 24bit reloc R_H8_DIR24R8. - Fix minor problems with 8bit and 16bit PC relative relocations. - -2001-09-01 Andreas Jaeger - - * vms-tir.c: Add missing prototypes. - * vms-hdr.c: Likewise. - * vms-gsd.c: Likewise. - * vms-misc.c: Likewise. - -2001-08-31 H.J. Lu - - * elf32-mips.c (_bfd_mips_elf_check_relocs): Report filename - with bad relocation. - -2001-08-31 Eric Christopher - Jason Eckhardt - - * bfd/archures.c: Add mipsisa32 and mipsisa64. Remove mips32, - mips32_4k and mips64. - * bfd/aoutx.h: Remove bfd_mach_mips32, bfd_mach_mips32_4k, - bfd_mach_mips64. Add bfd_mach_mipsisa32, bfd_mach_mipsisa64. - * bfd/cpu-mips.c: Ditto. - * bfd/elf32-mips.c (_bfd_mips_elf_final_write_processing): Ditto. - * bfd/bfd-in2.h: Regenerate. - -2001-08-31 Jakub Jelinek - - * elf64-alpha.c (elf64_alpha_relocate_section): Duplicate memory - value into R_ALPHA_RELATIVE's addend. - (elf64_alpha_finish_dynamic_symbol): Likewise. - -2001-08-31 Nick Clifton - - * elf32-arm.h (elf32_arm_relocate_section): Do not rightshift - recomputed addend during relocatable link if not USE_REL. - - * elflink.h (elf_gc_propagate_vtable_entries_used): Fix off-by-one - error. - -2001-08-30 H.J. Lu - - * elf32-mips.c (mips_elf_calculate_relocation): Revert the last - 2 changes. - (_bfd_mips_elf_adjust_dynamic_symbol): Allocate dynamic - relocations for weak definitions. - -2001-08-30 H.J. Lu - - * Makefile.am (BFD32_BACKENDS): Add elf32-h8300.lo. - (BFD32_BACKENDS_CFILES): Add elf32-h8300.c. - * Makefile.in: Rebuild. - -2001-08-30 H.J. Lu - - * elf32-mips.c (mips_elf_calculate_relocation): Don't create - dynamic relocation for undefined weak symbols when creating - executables. Check h->root.root.type, instead of h->root.type. - -2001-08-29 Joel Sherrill - - * config.bfd (i[3456]86-*-rtems*, m68*-*-rtems*): Change - default from coff to elf. - -2001-08-29 Jeff Law - - * elf32-h8300.c (h8_elf_howto_table): Add new PC relative - relocations. - (h8_reloc_map): Similarly. - (elf32_h8_final_link_relocate): Remove incorrect overflow tests. - Add support for PC relative relocations. - - * elf32-h8300.c: Put all prototypes together. - (elf32_h8_info_to_howto): Parameter elf_reloc is used. - (elf32_h8_final_link_relocate): New function for linker. - (elf32_h8_relocate_section): Similarly. - (elf_backend_relocate_section): Define. - - * cpu-h8300.c (h8300_scan, compatible): Prototype. - (h8300_scan): Handle architecture:machine encodings typically - found in linker scripts. - * elf.c (prep_headers): Do not try to do H8 machine recognition - here. - * elf32-h8300.c: Add some missing prototypes. - (elf32_h8_mach, elf32_h8_final_write_processing): New functions. - (elf32_h8_object_p): Similarly. - -2001-08-29 Tom Rix - - * xcofflink.c (xcoff_link_add_symbols): Fix XTY_LD symbol that - does not follow a XTY_SD. - -2001-08-29 Alan Modra - - * targmatch.sed: Delete case statements. - * config.bfd : Select 64 bit xcoff for - aix4.3 and above. - -2001-08-29 J"orn Rennecke - - * Makefile.am (elf32-h8300.lo): New target. - * config.bfd (h8300*-*-elf): New case. - * configure.in (bfd_elf32_h8300_vec): New case. - * elf.c (prep_headers): Add case for bfd_arch_h8300. - * reloc.c (BFD_RELOC_H8_DIR16A8): New relocation. - (BFD_RELOC_H8_DIR16R8, BFD_RELOC_H8_DIR24A8): Likewise. - (BFD_RELOC_H8_DIR24R8, BFD_RELOC_H8_DIR32A16): Likewise. - * targets.c (bfd_target bfd_elf32_h8300_vec): New extern declaration. - * elf32-h8300.c: New file. - * Makefile.in, bfd-in2.h, libbfd.h, configure: Regenerated. - -2001-08-28 Nick Clifton - - * sparclynx.c: Add missing prototypes. - * coff-mcore.c: Add missing prototypes. - * elf32-pj.c: Add missing prototypes. - * nlm32-sparc.c: Add missing prototypes. - * oasys.c: Add missing prototypes. - * pdp11.c: Add missing prototypes. - * pe-mips.c: Add missing prototypes. - * riscix.c: Add missing prototypes. - -2001-08-27 Daniel Jacobowitz - - * elf32-i386.c: Add missing prototypes. - * elf32-ppc.c: Likewise. - * elf32-sh-lin.c: Likewise. - * elfarm-nabi.c: Likewise. - -2001-08-27 Daniel Jacobowitz - - * elf32-i386.c (elf_i386_grok_prstatus): New function. - (elf_i386_grok_psinfo): New function. - (elf_backend_grok_prstatus): Define. - (elf_backend_grok_psinfo): Likewise. - * elf32-ppc.c (ppc_elf_grok_prstatus): New function. - (ppc_elf_grok_psinfo): New function. - (elf_backend_grok_prstatus): Define. - (elf_backend_grok_psinfo): Likewise. - * elf32-sh-lin.c (elf32_shlin_grok_prstatus): New function. - (elf32_shlin_grok_psinfo): New function. - (elf_backend_grok_prstatus): Define. - (elf_backend_grok_psinfo): Likewise. - * elfarm-nabi.c (elf32_arm_nabi_grok_prstatus): New function. - (elf32_arm_nabi_grok_psinfo): New function. - (elf_backend_grok_prstatus): Define. - (elf_backend_grok_psinfo): Likewise. - -2001-08-27 H.J. Lu - - * elf32-mips.c (mips_elf_create_dynamic_relocation): Add more - sanity check. - (mips_elf_calculate_relocation): Create dynamic relocation for - symbols with weak definition or the ELF_LINK_HASH_DEF_REGULAR - bit is not set. - -2001-08-27 H.J. Lu - - * elf32-mips.c (_bfd_mips_elf_hide_symbol): Add prototype. - (_bfd_mips_elf_copy_indirect_symbol): Likewise. - (_bfd_elf32_mips_grok_prstatus): Likewise. - (_bfd_elf32_mips_grok_psinfo): Likewise. - (_bfd_mips_elf_hide_symbol): Make it static and cast to - `struct mips_elf_link_hash_entry *'. - (_bfd_mips_elf_copy_indirect_symbol): Make it static. - -2001-08-27 Nick Clifton - - * mipsbsd.c: Add missing prototypes. - * hp300hpux.c: Add missing prototypes. - * i386aout.c: Add missing prototypes. - * i386lynx.c: Add missing prototypes. - * i386mach3.c: Add missing prototypes. - * i386msdos.c: Add missing prototypes. - * i386os9k.c: Add missing prototypes. - -2001-08-27 Linus Nordberg - Torbjorn Granlund - Staffan Ulfberg - Alan Modra - - * config.bfd: Add powerpc64 target. Add powerpc64 vectors to - targ64_selvecs for 32 bit powerpc targets. - * Makefile.am (BFD64_BACKENDS): Add elf64-ppc.lo. - (BFD64_BACKENDS_CFILES): Add elf64-ppc.c. - Run "make dep-am". - * Makefile.in: Regenerate. - * configure.in: Add elf64_powerpc vecs. - * configure: Regenerate. - * cpu-powerpc.c: Default to bfd_mach_ppc_620 entry for 64 bit. - * elf.c (prep_headers): EM_PPC64 for 64 bit ppc elf target. - * targets.c: Add bfd_elf64_powerpc_vec and bfd_elf64_powerpcle_vec. - * elf64-ppc.c: New file. - * reloc.c: Add powerpc64 relocs. - * libbfd.h: Regenerate. - * bfd-in2.h: Regenerate. - -2001-08-27 Andreas Schwab - - * elf32-m68k.c (elf32_m68k_check_relocs): Set DF_TEXTREL if the - reloc is against read-only section. - (elf32_m68k_size_dynamic_sections): Use DF_TEXTREL flag instead of - looking up section names for DT_TEXTREL. - (elf32_m68k_reloc_type_class): New function. - (elf_backend_reloc_type_class): Define. - -2001-08-27 Andreas Jaeger - - * elf64-s390.c (elf_s390_check_relocs): Set DF_TEXTREL if the - reloc is against read-only section. - (elf_s390_size_dynamic_sections): Use DF_TEXTREL flag instead of - looking up section names for DT_TEXTREL. - (elf_s390_reloc_type_class): New. - (elf_backend_reloc_type_class): Define. - - * elf32-s390.c (elf_s390_check_relocs): Set DF_TEXTREL if the - reloc is against read-only section. - (elf_s390_size_dynamic_sections): Use DF_TEXTREL flag instead of - looking up section names for DT_TEXTREL. - (elf_s390_reloc_type_class): New. - (elf_backend_reloc_type_class): Define. - - * elf32-ppc.c (ppc_elf_check_relocs): Set DF_TEXTREL if the reloc - is against read-only section. - (ppc_elf_size_dynamic_sections): Use DF_TEXTREL flag instead of - looking up section names for DT_TEXTREL. - (ppc_elf_reloc_type_class): New. - (elf_backend_reloc_type_class): Define. - -2001-08-26 Andreas Jaeger - - * elf32-cris.c (cris_elf_check_relocs): Set DF_TEXTREL if the - reloc is against read-only section. - (elf_cris_size_dynamic_sections): Use DF_TEXTREL flag instead of - looking up section names for DT_TEXTREL. - (elf_cris_reloc_type_class): New. - (elf_backend_reloc_type_class): Define. - - * elf32-sh.c (sh_elf_check_relocs): Set DF_TEXTREL if the reloc is - against read-only section. - (elf_backend_reloc_type_class): Define. - (sh_elf_reloc_type_class): New. - (sh_elf_size_dynamic_sections): Use DF_TEXTREL flag instead of - looking up section names for DT_TEXTREL. - - * elf32-arm.h (elf32_arm_check_relocs): Set DF_TEXTREL if the - reloc is against read-only section. - (elf32_arm_size_dynamic_sections): Use DF_TEXTREL flag instead of - looking up section names for DT_TEXTREL. - (elf32_arm_reloc_type_class): New. - (elf_backend_reloc_type_class): Define. - -2001-08-25 Andreas Jaeger - - * oasys.c: Add missing prototypes. - - * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Add unused - attribute for parameter. - * elf.c (_bfd_elf_reloc_type_class): Likewise. - - * versados.c (get_4): Make static. - (get_10): Make static. - Add missing prototypes. - (process_esd): Fix call to versados_new_symbol. - -2001-08-25 Nick Clifton - - * coff-a29k.c: Add missing prototypes. - * coff-apollo.c: Add missing prototypes. - * coff-arm.c: Add missing prototypes. - * coff-i860.c: Add missing prototypes. - * coff-rs6000.c: Add missing prototypes. - * coff-tic80.c: Add missing prototypes. - * elf-m10200.c: Add missing prototypes. - * elf-m10300.c: Add missing prototypes. - * elf32-arm.h: Add missing prototypes. - * elf32-d10v.c: Add missing prototypes. - * elf32-m32r.c: Add missing prototypes. - * elf32-mcore.c: Add missing prototypes. - * elf32-openrisc.c: Add missing prototypes. - * elf32-sh.c: Add missing prototypes. - * elf32-sparc.c: Add missing prototypes. - * elf32-v850.c: Add missing prototypes. - * elfarm-nabi.c: Add missing prototypes. - * elfarm-oabi.c: Add missing prototypes. - -2001-08-25 Thiemo Seufer - - * elf32-mips.c (elf_mips_abi_name): Return the right ABI string for - E_MIPS_ABI_O64 and E_MIPS_ABI_EABI64 - -2001-08-24 H.J. Lu - - * elf.c (_bfd_elf_merge_sections): Fail if not using an ELF - hash structure. - -2001-08-24 Nick Clifton - - * elf-bfd.h (elf_hash_table): Revert definition. - (is_elf_hash_table): New macro. - * elflink.h (elf_link_add_object_symbols): Test - is_elf_hash_table before accessing ELF only fields in hash - structure. - (elf_link_create_dynamic_sections): Fail if not using an ELF - hash structure. - (elf_add_dynamic_entry): Fail if not using an ELF hash - structure. - (elf_link_record_local_dynamic_symbol): Fail if not using an - ELF hash structure. - (size_dynamic_sections): Fail if not using an ELF hash - structure. - (elf_adjust_dynamic_symbol): Fail if not using an ELF - hash structure. - (elf_bfd_final_link): Fail if not using an ELF hash - structure. - -2001-08-24 H.J. Lu - - * elf-bfd.h (elf_hash_table): Return NULL if the linker hash - table is not an ELF linker hash table. - - * elf.c (_bfd_elf_link_hash_table_init): Set the linker hash - table type to bfd_link_elf_hash_table. - - * elfxx-target.h (bfd_elfNN_bfd_link_hash_table_create): Revert - the last change. - - * linker.c (_bfd_link_hash_table_init): Set the linker hash - table type to bfd_link_generic_hash_table. - -2001-08-24 Alexandre Oliva - - * bfd.c (bfd_alt_mach_code): New function. - * bfd-in2.h: Rebuilt. - -2001-08-24 Alexandre Oliva - - * elf-m10300.c (mn10300_elf_relocate_section): Test the right - `type' field in the hash entry when deciding whether to follow a - link. - -2001-08-24 Jakub Jelinek - - * elflink.h (elf_link_sort_cmp1): Sort RELATIVE relocs first, not - last. - (elf_link_sort_relocs): Adjust accordingly. - - * elf64-alpha.c (struct alpha_elf_link_hash_entry): Add reltext flag. - (elf64_alpha_check_relocs): Set it if section this reloc is against - is read-only. Set DF_TEXTREL if a RELATIVE reloc is needed against - read-only section. - (elf64_alpha_calc_dynrel_sizes): Set DF_TEXTREL flag if relocation - is is against read-only section. - (elf64_alpha_size_dynamic_sections): Use DF_TEXTREL flag, don't - check section names. - (elf64_alpha_reloc_type_class): New. - (elf_backend_reloc_type_class): Define. - -2001-08-24 Thiemo Seufer - - * linker.c (_bfd_generic_link_add_archive_symbols): Replace alloca() - by bfd_malloc(). - -2001-08-23 Andreas Jaeger - - * elf64-x86-64.c (elf64_x86_64_check_relocs): Set DF_TEXTREL if - the reloc is against read-only section. - (elf64_x86_64_size_dynamic_sections): Use DF_TEXTREL flag instead - of looking up section names for DT_TEXTREL. - (elf64_x86_64_reloc_type_class): New. - (elf_backend_reloc_type_class): Define. - -2001-08-23 H.J. Lu - - * syms.c (bfd_print_symbol_vandf): Add abfd to arg. - * bfd-in2.h (bfd_print_symbol_vandf): Regenerated. - - * aoutx.h (NAME(aout,print_symbol)): Pass abfd to - bfd_print_symbol_vandf. - * coffgen.c (coff_print_symbol): Likewise. - * elf.c (bfd_elf_print_symbol): Likewise. - * ieee.c (ieee_print_symbol): Likewise. - * nlmcode.h (nlm_print_symbol): Likewise. - * oasys.c (oasys_print_symbol): Likewise. - * pdp11.c (NAME(aout,print_symbol)): Likewise. - * som.c (som_print_symbol): Likewise. - * srec.c (srec_print_symbol): Likewise. - * tekhex.c (tekhex_print_symbol): Likewise. - * versados.c (versados_print_symbol): Likewise. - * vms.c (vms_print_symbol): Likewise. - - * elf.c (_bfd_elf_print_private_bfd_data): Replace fprintf_vma - with bfd_fprintf_vma. - (bfd_elf_print_symbol): Likewise. - * syms.c (bfd_print_symbol_vandf): Likewise. - -2001-08-23 Nick Clifton - - * aoutf1.h (sunos_write_object_contents): Silence compile time - warning. - * libaout.h (N_SET_DYNAMIC): Silence compile time warning. - - * bout.c: Add missing function prototypes. Fix formatting. - * coff-z8k.c: Add missing function prototypes. Fix formatting. - * coff-w65.c: Add missing function prototypes. Fix formatting. - * coff-h8500.c: Add missing function prototypes. Fix formatting. - * coff-h8300.c: Add missing function prototypes. Fix formatting. - * coff-tic54x.c: Add missing function prototypes. Fix formatting. - * coff-tic30.c: Add missing function prototypes. Fix formatting. - * coff-m68k.c: Add missing function prototypes. Fix formatting. - * coff-rs6000.c: Add missing function prototypes. Fix formatting. - * coff-sh.c: Add missing function prototypes. Fix formatting. - -2001-08-23 Jakub Jelinek - - * elf-bfd.h (enum elf_reloc_type_class): New. - (struct elf_backend_data): Add elf_backend_reloc_type_class. - (_bfd_elf_reloc_type_class): New. - * elfxx-target.h (elf_backend_reloc_type_class): Define. - (elfNN_bed): Add elf_backend_reloc_type_class. - * elf.c (_bfd_elf_reloc_type_class): New. - * elf32-i386.c (elf_i386_check_relocs): Set DF_TEXTREL if the reloc - is against read-only section. - (elf_i386_size_dynamic_sections): Use DF_TEXTREL flag instead of - looking up section names for DT_TEXTREL. - (elf_i386_reloc_type_class): New. - (elf_backend_reloc_type_class): Define. - * elf32-sparc.c (elf32_sparc_check_relocs): Set DF_TEXTREL if the - reloc is against read-only section. - (elf32_sparc_size_dynamic_sections): Use DF_TEXTREL flag instead of - looking up section names for DT_TEXTREL. - (elf32_sparc_reloc_type_class): New. - (elf_backend_reloc_type_class): Define. - * elf64-sparc.c (sparc64_elf_check_relocs): Set DF_TEXTREL if the - reloc is against read-only section. - (sparc64_elf_size_dynamic_sections): Use DF_TEXTREL flag instead of - looking up section names for DT_TEXTREL. - (sparc64_elf_reloc_type_class): New. - (elf_backend_reloc_type_class): Define. - * elfxx-ia64.c (struct elfNN_ia64_link_hash_table): Add reltext field. - (elfNN_ia64_hash_table_create): Clear ia64_info. - (get_reloc_section): Set DF_TEXTREL if the reloc is against read-only - section. - (elfNN_ia64_size_dynamic_sections): Use ia64_info->reltext flag - instead of looking up section names for DT_TEXTREL. - (elfNN_ia64_reloc_type_class): New. - (elf_backend_reloc_type_class): Define. - * elflink.h (size_dynamic_sections): Add spare DT_NULL tags. - (struct elf_link_sort_rela): New. - (elf_link_sort_cmp1, elf_link_sort_cmp2, elf_link_sort_relocs): New. - (elf_bfd_final_link): Call elf_link_sort_relocs. - Convert one spare DT_NULL into DT_RELCOUNT resp. DT_RELACOUNT if - necessary. - -2001-08-23 Nick Clifton - - * configure.in (x86-bsdi): No corefile support. - * configure: Regenerate. - -2001-08-22 Nick Clifton - - * coff-stgo32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Add missing - comma. - -2001-08-21 Mark Elbrecht - - * coff-go32.c: Make DWARF2 sections use an alignment of 0. Set - the alignment of dwarf2 linkonce sections to 0. - * coff-sto32.c: Likewise. - -2001-08-20 Andreas Jaeger - - * coff-sparc.c: Add missing prototypes. - * elf32-s390.c: Likewise. - * elf32-i960.c: Likewise. - * aout-target.h: Likewise. - -2001-08-20 H.J. Lu - - * elf-bfd.h (elf_obj_tdata): Add num_section_syms. - (elf_num_section_syms): New for num_section_syms. - - * elf.c (elf_map_symbols): Set num_section_syms. - (_bfd_elf_symbol_from_bfd_symbol): Check num_section_syms for - the section symbol index. - -2001-08-20 Nick Clifton - - * elfxx-target.h (bfd_elfNN_bfd_link_hash_table_create): Never - select the generic has table creator. All elf backends need elf - specific fields in the hash table. - -2001-08-20 Alan Modra - - * archive.c (offsetof): Remove define. - * elf.c: Likewise. - * oasys.c: Likewise - * sysdep.h (offsetof): Define. - -2001-08-17 Alan Modra - - * bfd.c (bfd_get_gp_size): Return an unsigned int. - (bfd_set_gp_size): Make param unsigned. - * bfd-in2.h: Regenerate. - * elf32-ppc.c (ppc_elf_add_symbol_hook): Use elf_gp_size rather - than calling bfd_get_gp_size. - * elf64-alpha.c (elf64_alpha_add_symbol_hook): Likewise. - * elfxx-ia64.c (elfNN_ia64_add_symbol_hook): Likewise. - -2001-08-17 Alan Modra - - * linker.c (default_fill_link_order): Handle four byte fill value. - -2001-08-17 Alan Modra - - * elf64-sparc.c (sparc64_elf_output_arch_syms): Add missing - prototype. - * nlm32-alpha.c (nlm_alpha_write_external): Fix warning. - - * elf64-mips.c (UNUSED_RELOC): Define. - (mips_elf64_howto_table_rel): Use it. - (mips_elf64_howto_table_rela): Here too. - (mips_elf64_write_relocs): Fix signed/unsigned warning. - - * coffcode.h (coff_write_object_contents): Add ATTRIBUTE_UNUSED to - silence warning. - * coffgen.c (coff_print_symbol): Fix warnings. - (coff_find_nearest_line): Likewise. - * cofflink.c (_bfd_coff_link_input_bfd): Likewise. - * coff-alpha.c (alpha_convert_external_reloc): Likewise. - * format.c (bfd_check_format_matches): Likewise. - (bfd_set_format): Likewise. - * coff-ia64.c: Add missing prototypes. - * elf64-alpha.c (struct alpha_elf_link_hash_entry): Make addend - signed to silence warnings. - (elf64_alpha_relocate_section): Likewise. - (elf64_alpha_find_reloc_at_ofs): Fix warnings. - (elf64_alpha_add_symbol_hook): Likewise. - (elf64_alpha_final_link): Likewise. - (elf64_alpha_relax_section): Remove redundant assign to info.gotent. - (elf64_alpha_merge_gots): Add ATTRIBUTE_UNUSED to unused args. - (elf64_alpha_size_got_sections): Likewise. - * elfxx-ia64.c: Add missing prototypes. - (elfNN_ia64_relocate_section): Fix warning. - (elfNN_ia64_unwind_entry_compare): Make params const. - -2001-08-17 Alan Modra - - * config.bfd (targ64_selvecs): New. - : Use it here instead of ineffectual #ifdef. - - * bfd-in.h (BFD_VERSION): Remove wrong comment. - (BFD_DEFAULT_TARGET_SIZE): New. - (BFD_ARCH_SIZE): Comment. - * configure.in (target_size): New. Set instead of target64 in - selvecs case statement. Set target64 from it. - (bfd_default_target_size): New. Set from taget_size. AC_SUBST. - * bfd-in2.h: Regenerate. - * configure: Regenerate. - -2001-08-17 Alan Modra - - * bfd.c (enum bfd_error): Add bfd_error_wrong_object_format. - (bfd_errmsgs): Add corresponding message. - * archive.c (bfd_generic_archive_p): Don't release bfd_ardata when - finding an archive that contains different format object files. - Return bfd_error_wrong_object_format for this case. - * format.c: Formatting fixes. s/CONST/const/. - (bfd_check_format_matches): Accept archives that give - bfd_error_wrong_object_format if no full match is found. Tidy - code handling matching_vector. Don't return a pointer to freed - memory in `matching'. Handle ambiguous matches as for partial - archive matches. - * bfd-in2.h: Regenerate. - -2001-08-15 Alan Modra - - * libieee.h (common_header_type): Add last_byte field. - - * ieee.c: Add missing prototypes. Some format fixes. - (struct output_buffer_struct): Move for availability to prototypes. - (ieee_part_after): New function. - (ieee_slurp_debug): Use it here. - (ieee_seek): Pass in ieee_data_struct rather than bfd. Use - ieee_part_after to set last_byte to one past end of current part. - Update callers. - (ieee_pos): Pass in ieee_data_struct rather than bfd. - Update callers. - (parse_expression): Don't go beyond the end of the current part. - (ieee_slurp_external_symbols): Correct type passed to read_2bytes. - (ieee_get_symtab_upper_bound, ieee_get_symtab, - ieee_get_symbol_info, ieee_print_symbol, ieee_new_section_hook, - ieee_get_reloc_upper_bound, ieee_canonicalize_reloc, block, - ieee_set_section_contents, ieee_write_object_contents, - ieee_make_empty_symbol): Make static. - (ieee_archive_p): Correct comments regarding bfd_read. - (ieee_object_p): Similarly. - (ieee_mkobject): Move it. Clear output_ptr_start, output_ptr, - output_ptr_end, input_ptr_start, input_ptr, input_ptr_end, - input_bfd, output_bfd, output_buffer. - (do_as_repeat): Write out ieee_set_current_pc_enum value as for - do_with_relocs, ie. as a symbol for relocatable files. - (ieee_vec): Add comments showing functions referenced by macros. - -2001-08-14 Nick Clifton - - * aout-tic30.c: Add missing prototypes. Fix formatting. - * aout-ns32k.c: Add missing prototypes. Fix formatting. - * peXXigen.c: Add missining prototypes. Fix formatting. - * aout-adobe.c: Add missining prototypes. Fix formatting. - -2001-08-13 Nick Clifton - - * elf32-v850.c: Add missing function prototypes. - Fix some formatting. - - * cpu-v850.c: Add missing function prototype. - Fix some formatting. - -2001-08-11 Nick Clifton - - * elf-bfd.h (struct elf_backend_data): Add new fields - 'elf_backend_sprintf_vma' and 'elf_backend_fprintf_vma'. - (bfd_elf_sprintf_vma): Rename function prototype to - '_bfd_elf_sprintf_vma'. - (bfd_elf_fprintf_vma): Rename function prototype to - '_bfd_elf_fprintf_vma'. - * bfd.c (bfd_sprintf_vma): Do not invoke bfd_elf_sprintf_vma - directly, instead indirect via the elf_backend_data structure. - (bfd_fprintf_vma): Do not invoke bfd_elf_fprintf_vma directly, - instead indirect via the elf_backend_data structure. - * elf.c (bfd_elf_sprintf_vma): Rename to _bfd_elf_sprintf_vma. - (bfd_elf_fprintf_vma): Rename to _bfd_elf_fprintf_vma. - * elfxx-target.h (elf_backend_sprintf_vma): Initialise if not - already defined. - (elf_backend_fprintf_vma): Initialise if not already defined. - (struct elf_backend_data): Initialise the - elf_backend_sprintf_vma and elf_backend_fprintf_vma fields. - -2001-08-10 Andreas Jaeger - - * elf64-sparc.c: Add missing prototypes. - * elf32-cris.c: Likewise. - * elf32-i370.c: Likewise. - * elf64-hppa.c: Likewise. - * elf64-s390.c: Likewise. - -2001-08-10 Andreas Jaeger - - * elf64-x86-64.c (elf64_x86_64_elf_object_p): Make static. - Add prototypes where needed. - -2001-08-10 H.J. Lu - - * bfd.c (bfd_sprintf_vma): Fix a typo in the last change. - (bfd_fprintf_vma): Likewise. - -2001-08-10 H.J. Lu - - * bfd.c (bfd_sprintf_vma): Don't return void. - (bfd_fprintf_vma): Likewise. - -2001-08-10 Andreas Jaeger - - * configure.in: Add -Wstrict-prototypes and -Wmissing-prototypes - to build warnings. - * configure: Regenerate. - -2001-08-10 Alan Modra - - * elf.c (bfd_elf_sprintf_vma): Add ATTRIBUTE_UNUSED to quiet - warning if not BFD64. Add braces so emacs auto format works. - (bfd_elf_fprintf_vma): Likewise. - - * libxcoff.h (struct xcoff_backend_data_rec): Constify src param - of _xcoff_swap_ld*. - * coff-rs6000.c (xcoff_swap_ldhdr_in): Modify type of external - param to agree with libxcoff.h. - (xcoff_swap_ldhdr_out): Likewise. - (xcoff_swap_ldsym_in): Likewise. - (xcoff_swap_ldsym_out): Likewise. - (xcoff_swap_ldrel_in): Likewise. - (xcoff_swap_ldrel_out): Likewise. - (xcoff_create_csect_from_smclas): Likewise. - * coff64-rs6000.c: Add missing prototypes. - (xcoff64_swap_ldhdr_in): Modify type of external param to agree - with libxcoff.h. - (xcoff64_swap_ldhdr_out): Likewise. - (xcoff64_swap_ldsym_in): Likewise. - (xcoff64_swap_ldsym_out): Likewise. - (xcoff64_swap_ldrel_in): Likewise. - (xcoff64_swap_ldrel_out): Likewise. - (xcoff64_ppc_relocate_section): Make static. - (xcoff64_slurp_armap): Likewise. - (xcoff64_archive_p): Likewise. - (xcoff64_openr_next_archived_file): Likewise. - (xcoff64_sizeof_headers): Likewise. - (xcoff64_is_lineno_count_overflow): Likewise. - (xcoff64_is_reloc_count_overflow): Likewise. - (xcoff64_loader_symbol_offset): Likewise. - (xcoff64_loader_reloc_offset): Likewise. - * elf64-gen.c: Add missing prototypes. - -2001-08-09 H.J. Lu - - * elf.c (bfd_elf_sprintf_vma): Check ELFCLASS64 only in BFD64. - (bfd_elf_fprintf_vma): Likewise. - -2001-08-09 H.J. Lu - - * bfd-in.h (bfd_elf_sprintf_vma, bfd_elf_fprintf_vma): Moved - to ... - * elf-bfd.h: Here. - * bfd-in2.h: Regenerated. - -2001-08-09 H.J. Lu - - * bfd-in.h (bfd_sprintf_vma): New prototype. - (bfd_fprintf_vma): Likewise. - (bfd_elf_sprintf_vma): Likewise. - (bfd_elf_fprintf_vma): Likewise. - (bfd_printf_vma): New. Defined with bfd_fprintf_vma. - * bfd-in2.h: Regenerated. - - * bfd.c (bfd_sprintf_vma): New. Defined. - (bfd_fprintf_vma): Likewise. - - * elf.c (bfd_elf_sprintf_vma): New. Defined. - (bfd_elf_fprintf_vma): Likewise. - -2001-08-09 Alan Modra - - * coff-rs6000.c: Add missing prototypes. - (xcoff_ppc_relocate_section, xcoff_is_lineno_count_overflow, - xcoff_is_reloc_count_overflow, xcoff_loader_symbol_offset, - xcoff_loader_reloc_offset): Make static. - * dwarf1.c: Add missing prototypes. - * dwarf2.c: Add missing prototypes. - (struct abbrev_info): Move definition. - (struct attr_abbrev, ABBREV_HASH_SIZE, ATTR_ALLOC_CHUNK): Likewise. - * elf.c: Add missing prototypes. - * elf32-gen.c: Likewise. - * elf32-i386.c: Likewise. - * elf32-ppc.c: Likewise. - (ppc_elf_sort_rela): Use PTR instead of "void *". - * elflink.h: Add missing prototypes. Formatting fixes. - * merge.c: Add missing prototypes. - (last4_eq): Use PTR instead of "void *". - (last_eq): Likewise. - * syms.c: Add missing prototypes. - -2001-08-09 Nick Clifton - - * bfd.c: Fix formatting. - * bfd-in2.h: Regenerate. - -2001-08-09 Nick Clifton - - * elf32-arc.c (R_ARC_B22_PCREL): Change 'partial_inplace' to - true (this target uses REL relocations) and 'pcrel_offset' to - false (the PC is implied, not stored in the offset). - -2001-08-08 Alan Modra - - 1999-10-19 Linus Nordberg - * elf-bfd.h (struct elf_backend_data): Add want_got_sym. - * elfxx-target.h (elf_backend_want_got_sym): Define. - (elfNN_bed): Add elf_backend_want_got_sym. - * elflink.c (_bfd_elf_create_got_section): Define - _GLOBAL_OFFSET_TABLE_ only if bed->want_got_sym. - -2001-08-08 Alexandre Oliva - - * dwarf2.c (struct dwarf2_debug): Add sec, sec_info_ptr and syms. - (find_rela_addend): New function. - (parse_comp_unit): Call it to find the abbrev offset addend. - (_bfd_dwarf2_find_nearest_line): Initialize and maintain the new - members of dwarf2_debug as debugging information is read. - -2001-08-07 Nick Clifton - - * coff-sh.c (sh_coff_reloc_type_lookup): Provide for sh-coff - targets as well as sh-pe. - -2001-08-03 Ben Harris - - * elf32-arm.h (elf32_arm_final_link_relocate): Include offset of - reloc from start of section when computing value for R_ARM_REL32 - reloc. - -2001-08-03 Alan Modra - - From H.J. Lu - * elf32-i386.c (allocate_plt_and_got_and_discard_relocs): Don't - keep relocs for undefined syms if there are no dynamic sections in - executable. - * elf32-hppa.c (allocate_plt_and_got_and_discard_relocs): Likewise. - -2001-08-02 Paul Sokolovsky - - * cofflink.c (coff_link_check_ar_symbols): also search for - __imp__symbol as well as _symbol. - * linker.c (_bfd_generic_link_add_archive_symbols): also - search for __imp__symbol as well as _symbol. - -2001-08-01 Adam Nemet - - * elf.c (elf_sort_sections): Return zero only as the last step. - -2001-08-01 Nick Clifton - - * config.bfd (arm-vxworks): Change name of define from VXWORKS to - ARM_COFF_BUGFIX. - (arm-epoc-pe): Define ARM_COFF_BUGFIX. - coff-arm.c (coff_arm_relocate_section): Replace VXWORKS with - ARM_COFF_BUGFIX. - -2001-07-30 Rainer Orth - - * libecoff.h (_bfd_ecoff_styp_to_sec_flags): Changed return type - to match corresponding bfd_coff_backend data member. - -2001-07-24 Alan Modra - - * Makefile.am: Update dependencies with "make dep-am". - * Makefile.in: Regenerate - -2001-07-15 H.J. Lu - - * Makefile.am (po/SRC-POTFILES.in): Use tmp.src instead of tmp. - (po/BLD-POTFILES.in): Use tmp.bld instead of tmp. - * Makefile.in: Regenerate. - -2001-07-11 H.J. Lu - - * elf64-alpha.c (elf64_alpha_check_relocs): Set the ALLOC|LOAD - flags when creating the reloc section if the ALLOC flag in the - source section is set. - -2001-07-11 Steve Ellcey - - * reloc.c (bfd_reloc_code_type): Add IA64 relocs - BFD_RELOC_IA64_LTOFF_FPTR32MSB and BFD_RELOC_IA64_LTOFF_FPTR32LSB - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - * elfxx-ia64.c (ia64_howto_table): Define how to handle - new relocations. - (elfNN_ia64_reloc_type_lookup): Handle new relocations. - (elfNN_ia64_check_relocs): Likewise. - (elfNN_ia64_install_value): Likewise. - (elfNN_ia64_relocate_section): Likewise. - -2001-07-11 Jakub Jelinek - - * elf32-sparc.c (_bfd_sparc_elf_howto_table): Remove support for - R_SPARC_UA64. - (elf32_sparc_check_relocs): Likewise. - Only create .rela section for alloced sections in shared libraries. - (elf32_sparc_relocate_section): Likewise. - Remove redundant check. - Optimize unaligned reloc usage. - * elf64-sparc.c (sparc64_elf_relocate_section): Remove redundant - check. - -2001-07-11 H.J. Lu - - * elf64-alpha.c (elf64_alpha_check_relocs): Only use the same - ALLOC|LOAD flags as the source section for debugging sections - when creating the reloc section. - -2001-07-05 Jim Wilson - - * linker.c (_bfd_generic_link_add_one_symbol, case BIG): Use - the section of the bigger symbol. - - * syms.c (bfd_is_local_label): Return false if BSF_SECTION_SYM. - -2001-07-05 Nick Clifton - - * peicode.h (coff_swap_scnhdr_in): For sections containing - uninitialised data, only set their size to s_paddr if this does - not reset their size to zero. MS's latest compilers will set - s_paddr to zero. - -2001-07-04 H.J. Lu - - * bfd/elf32-mips.c (_bfd_mips_elf_final_write_processing): - Handle bfd_mach_mips4400, bfd_mach_mips4600 and - bfd_mach_mips5000. - -2001-07-03 Mark Elbrecht - - * bfd.c (bfd_get_sign_extend_vma): Support DJGPP COFF targets. - - * cofflink.c (_bfd_coff_link_input_bfd): Skip section symbols from - sections being discarded. - -2001-06-30 Alan Modra - - * elfcore.h (elf_core_file_p): Call bfd_section_from_phdr directly - instead of _bfd_elfcore_section_from_phdr. - * elf-bfd.h (_bfd_elfcore_section_from_phdr): Remove. - * elf.c (_bfd_elfcore_section_from_phdr): Remove. - (_bfd_elfcore_make_pseudosection): Expedite tail-call. - (elfcore_grok_prstatus): Likewise. - (elfcore_grok_lwpstatus): Likewise. - (bfd_get_elf_phdr_upper_bound): Likewise. - (elfcore_make_note_pseudosection): Formatting. - (_bfd_elfcore_strndup): Formatting. - * elf32-mips.c (mips_elf_sym_is_global): Formatting. - (_bfd_elf32_mips_grok_prstatus): Expedite tail-call. - -2001-06-29 Daniel Jacobowitz - - * elf-bfd.h: Add prototypes for _bfd_elfcore_make_pseudosection - and _bfd_elfcore_strndup. - (struct elf_backend_data): Add elf_backend_grok_prstatus - and elf_backend_grok_psinfo. - * elf.c (_bfd_elfcore_make_pseudosection): New function. - (elfcore_grok_prstatus): Use it. - (elfcore_make_note_pseudosection): Likewise. - (elfcore_strndup): Rename to... - (_bfd_elfcore_strndup): Here, and make global. - (elfcore_grok_psinfo): Use _bfd_elfcore_strndup. - (elfcore_grok_note): Call elf_backend_grok_prstatus - and elf_backend_grok_psinfo if available. - * elf32-mips.c (_bfd_elf32_mips_grok_prstatus): New function. - (_bfd_elf32_mips_grok_psinfo): New function. - (elf_backend_grok_prstatus): Define. - (elf_backend_grok_psinfo): Define. - * elfxx-target.h (elf_backend_grok_prstatus): Default to NULL. - (elf_backend_grok_psinfo): Likewise. - (elfNN_bed): Include elf_backend_grok_prstatus and - elf_backend_grok_psinfo. - -2001-06-29 H.J. Lu - - * elf32-hppa.c (elf32_hppa_finish_dynamic_sections): Check if - hplink->sgot is NULL before filling GOT. Check if hplink->splt - is NULL before filling PLT. - -2001-06-29 Alan Modra - - * elflink.h (elf_link_output_extsym): Revert 1999-04-10. - -2001-06-27 Alan Modra - - * elf32-hppa.c (elf32_hppa_check_relocs): Don't make syms dynamic - here.. - (elf32_hppa_adjust_dynamic_symbol): ..nor here.. - (allocate_plt_and_got_and_discard_relocs): .. instead do so here - after gc has run. - - * elf32-hppa.c (RELATIVE_DYNAMIC_RELOCS): Delete. - (IS_ABSOLUTE_RELOC): Define. - (elf32_hppa_link_hash_entry): Always include reloc_entries field. - (hppa_link_hash_newfunc): Always init it. - (elf32_hppa_check_relocs): Mark symbols as ELF_LINK_NON_GOT_REF to - create COPY relocs only when the reloc is in a read-only section. - Instead, allocate space for a dynamic reloc to reference the - library symbol directly. Keep track of space we allocate using - relocs_entries. - (hppa_discard_copies): Delete, and move code to.. - (allocate_plt_and_got): ..here. Rename to - allocate_plt_and_got_and_discard_relocs. Remove unneeded dynamic - relocs for non-shared link. - (elf32_hppa_size_dynamic_sections): Update calls to above. - (elf32_hppa_relocate_section): Write out the dynamic relocs used - in lieu of COPY relocs. - - * elf32-i386.c (elf_i386_check_relocs): Don't make syms dynamic - here.. - (elf_i386_adjust_dynamic_symbol): ..nor here.. - (allocate_plt_and_got_and_discard_relocs): .. instead do so here - after gc has run. - (elf_i386_size_dynamic_sections): Fix a comment. - (elf_i386_relocate_section ): Rearrange code - involved in writing reloc out. - -2001-06-25 Alan Modra - - * elf32-i386.c (elf_i386_check_relocs ): - Ensure syms are dynamic if we might be emitting a reloc. - (allocate_plt_and_got_and_discard_relocs): Don't discard relocs - for undefweak or undefined syms.. - (elf_i386_relocate_section ): .. and emit. - - * elf32-i386.c (allocate_plt_and_got_and_discard_relocs): Discard - relocs without ELF_LINK_HASH_DEF_DYNAMIC set. - (elf_i386_relocate_section ): Remove - redundant bfd_link_hash_defined, bfd_link_hash_defweak test. - -2001-06-24 H.J. Lu - - * cpu-i960.c (scan_960_mach): Don't modify const char *. Use - strncasecmp/strcasecmp instead of strncmp/strcmp. - -2001-06-23 H.J. Lu - - * elf32-i386.c (elf_i386_relocate_section ): - Check ELF_LINK_HASH_DEF_DYNAMIC to see if a symbol is not defined - in the regular object file and treat the weak definition as - the normal one. - -2001-06-23 Alan Modra - - * elf32-i386.c (elf_i386_relocate_section ): Tighten - unresolved_reloc test to exclude cases where we use "relocation" - before setting it to point into the .got. Reinstate fudge for - unresolved relocs in debugging sections. - - * elf32-i386.c (elf_i386_relocate_section): Replace ugly - complicated tests for unresolvable relocs with a simple direct - scheme using "unresolved_reloc" var. - - * elf32-i386.c (struct elf_i386_pcrel_relocs_copied): Rename to - elf_i386_dyn_relocs. Update comment. - (struct elf_i386_link_hash_entry): Rename pcrel_relocs_copied to - dyn_relocs. - (elf_i386_adjust_dynamic_symbol): Remove a BFD_ASSERT, change - others to aborts. - (allocate_plt_and_got_and_discard_relocs): Replace BFD_ASSERT with - abort. - (elf_i386_size_dynamic_sections): Likewise. - (elf_i386_finish_dynamic_symbol): Likewise. - (elf_i386_finish_dynamic_sections): Likewise. - (elf_i386_relocate_section): Likewise. Tidy R_386_GOT32 and error - handling code. - - Avoid creating COPY relocs if possible. - * elf32-i386.c (elf_i386_check_relocs): Tweak condition under - which .got created. Mark symbols used by R_386_32 and R_386_PC32 - relocs as ELF_LINK_NON_GOT_REF to create COPY relocs only when the - reloc is in a read-only section. Instead, allocate space for a - dynamic reloc to reference the library symbol directly. Keep - track of space we allocate using pcrel_relocs_copied. - (discard_copies): Delete, and move code to .. - (allocate_plt_and_got): ..here. Rename to - allocate_plt_and_got_and_discard_relocs. Remove unneeded dynamic - relocs for non-shared link. - (elf_i386_size_dynamic_sections): Update calls to above functions. - (elf_i386_relocate_section): Write out the dynamic relocs. Add - more ugly logic to avoid "unresolvable relocation" error. Use - htab shortcut in place of elf_hash_table macro. - (elf_i386_finish_dynamic_sections): Allow that dynamic .got may - not always be created now. - -2001-06-20 Bo Thorsen - - * elf64-x86-64.c (elf64_x86_64_relocate_section): Fix linking of - shared libraries. - -2001-06-18 Thiemo Seufer - - * configure.host (mips64-*-linux): Reformat. - -2001-06-21 Alan Modra - - * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Always - allocate local .got space. Use shortcuts from hash table for .got - and .plt rather than comparing section names. - (elf32_hppa_check_relocs): Use local_plt_refcounts var rather than - adjusting index into local_got_refcounts to document what we are - really doing. - (elf32_hppa_relocate_section): Similarly for local_plt_offsets. - Tidy .got and .plt error checking. - -2001-06-20 Catherine Moore - - * elf-bfd.h (struct elf_backend_data): - elf_backend_emit_relocs: New field: Function for emitting - relocs. - elf_backend_count_relocs: New field: Function for determining - the number of relocs to be emitted. - * elfxx-target.h: Provide default (NULL) values for - elf_backend_emit_relocs and elf_backend_count_relocs. - * elflink.h (elf_link_size_reloc_section): Make the hash table - big enough to hold the relocs counted by either reloc_count or - o->reloc_count. - (elf_bfd_final_link) emit_relocs: New boolean, set if relocs - should be emitted, either because of a command line option - stored in the info structure or because the target provides a - special reloc emitting function. - If the target provides a reloc counting function use it, - unless performing a relocatable link or emitting all relocs. - Also set the SEC_RELOC flag on any output section which will - contain relocs. - (elf_link_input_bfd): emit_relocs: New boolean, set if relocs - should be emitted, either because of a command line option - stored in the info structure or because the target provides a - special reloc emitting function. - If the target provides a reloc emitting function, use it, - unless performing a relocatable link or emitting all relocs. - -2001-06-20 H.J. Lu - - * elf32-i386.c (elf_i386_size_dynamic_sections): Always - allocate local .got space. - -2001-06-19 Andreas Jaeger - - * elf64-x86-64.c (elf64_x86_64_relocate_section): Fix creation of - dynamic symbols. - -2001-06-18 Hans-Peter Nilsson - - * elflink.h (struct elf_assign_sym_version_info): Remove member - export_dynamic. All users changed to use info member. - NAME(bfd_elf,size_dynamic_sections)): Remove parameter - export_dynamic, instead use member in parameter info. - * bfd-in.h (bfd_elf32_size_dynamic_sections, - bfd_elf64_size_dynamic_sections): Update prototype. - * bfd-in2.h: Regenerate. - -2001-06-18 H.J. Lu - - * elflink.h (elf_info_failed): Add a new field, verdefs. - (NAME(bfd_elf,size_dynamic_sections): Pass verdefs to - elf_export_symbol. - (elf_export_symbol): Check eif->verdefs to decide if a symbol - should be exported. - -2001-06-17 H.J. Lu - - * elf32-mips.c (mips_elf_link_hash_entry): Add a new field, - readonly_reloc, to record if a relocation in the .rel.dyn - section is against a read-only section. - (mips_elf_link_hash_newfunc): Initialize the readonly_reloc - field to false. - (_bfd_mips_elf_check_relocs): Record if there is a relocation - in the .rel.dyn section against a read-only section by setting - DF_TEXTREL or readonly_reloc. - (_bfd_mips_elf_copy_indirect_symbol): Copy readonly_reloc if - it is true. - (_bfd_mips_elf_adjust_dynamic_symbol): Record DF_TEXTREL if - there is a relocation in the .rel.dyn section against a - read-only section. - (_bfd_mips_elf_size_dynamic_sections): Set DT_TEXTREL if - DF_TEXTREL is set. - -2001-06-12 Nick Clifton - - * coffcode.h (styp_flags_to_sec_flags): Change to a boolean - function. Move flagword result into parameter list. Remove - comment about setting bfd_error_handler to intercept failure - results. - * coffgen.c (make_a_section_from_file): Examine result of - calling bfd_coff_styp_to_sec_flags and pass a failure back to - caller. - * ecoff.h (styp_flags_to_sec_flags): Change to a boolean - function. Move flagword result into parameter list. - * libcoff.h: Regenerate. - * libecoff.h: Regenerate. - -2001-06-13 Nick Clifton - - * aoutx.h (adjust_z_magic): Only pad the tesxt section if the data - section is going to follow it. - -2001-06-12 Catherine Moore - - * elflink.h (elf_gc_propagate_vtable_entries): Replace FILE_ALIGN - with the file_align entry from elf_backend_data. - (elf_gc_smash_unused_vtentry_relocs): Likewise. - (elf_gc_record_vtentry): Likewise. - -2001-06-10 Alan Modra - - * elflink.h: Whitespace changes. - (elf_link_read_relocs_from_section): Use "unsigned int" iterator - rather than "unsigned char". - (elf_link_output_relocs): Likewise. - (elf_link_input_bfd): Likewise. - (elf_reloc_link_order): LIkewise. - * elf.c: s/CONST/const/. Whitespace changes. - * elf32-mips.c: Formatting fix. - - * Makefile.am (SOURCE_HFILES): Include xcoff-target.h, remove xcoff.h. - * Makefile.in: Regenerate. - * po/Make-in: Remove trailing tab. - -2001-06-09 Philip Blundell - - * elf32-arm.h (elf32_arm_plt0_entry): Correct error in last - change. - (elf32_arm_plt_entry): Likewise. - -2001-06-08 H.J. Lu - - * elf.c (swap_out_syms): Keep names for global section symbols. - -2001-06-07 H.J. Lu - - * config.bfd: Put back ecoff for Linux/mips. Firmwares on some - MIPS-based machines need it. - -2001-06-07 H.J. Lu - - * elf32-mips.c (_bfd_mips_elf_object_p): Set the bad symtab - for SGI only. - - * config.bfd: Remove ecoff from Linux/mips. - -2001-06-07 Andreas Jaeger - - * elf64-x86-64.c (elf64_x86_64_finish_dynamic_symbol): Add an - assertion. - (elf64_x86_64_check_relocs): Fix VTENTRY relocation; set an - alignment of 8 for .rela sections; handle further relocations. - -2001-06-06 Christian Groessler - - * coff-z8k.c: Fix formatting. - Fix howtos: howto->size was always 1. - -2001-06-05 Thiemo Seufer - - * configure.host (mips64*-*-linux*): Define. - -2001-06-05 Alan Modra - - * elf32-i386.c (elf_i386_discard_copies): Rename to - discard_copies, and use elf_link_hash_entry arg rather than - elf_i386_link_hash_entry. - (elf_i386_link_hash_traverse): Delete. - (elf_i386_size_dynamic_sections): Adjust call to discard_copies. - Tidy sizing of dynamic sections. - (elf_i386_check_relocs ): Reference count - possible .plt entries. - (elf_i386_gc_sweep_hook): Likewise. - (elf_i386_adjust_dynamic_symbol): Discard .plt entries for - everything with plt.refcount <= 0. - - * elf32-i386.c (elf_i386_check_relocs): Don't allocate .got and - .relgot space here. - (elf_i386_gc_sweep_hook): ..and no need to deallocate here.. - (elf_i386_adjust_dynamic_symbol): ..and don't allocate .plt and - .rel.plt here.. - (allocate_plt_and_got): ..instead do it all here. New function. - (elf_i386_size_dynamic_sections): Allocate local .got space and - call allocate_plt_and_got. No need to zap .relgot if not dynamic. - (bfd_elf32_bfd_final_link): Delete. (ie. use regular final link - rather than gc variety). - (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define. - (elf_i386_relocate_section): Use it here and correct handling of - R_386_GOT32. Provide section and offset for "unresolvable - relocation" error message. - (elf_i386_finish_dynamic_symbol): Correct handling of R_386_GOT32. - - * elf32-i386.c (struct elf_i386_link_hash_table): Add sgot, - sgotplt, srelgot, splt, srelplt, sdynbss, srelbss fields. - (elf_i386_link_hash_table_create): Init them. - (create_got_section): New function. - (elf_i386_create_dynamic_sections): New function. - (elf_backend_create_dynamic_sections): Set to above. - (elf_i386_check_relocs): Use shortcuts from hash table rather than - calling bfd_get_section_by_name. - (elf_i386_gc_sweep_hook): Likewise. - (elf_i386_adjust_dynamic_symbol): Likewise. - (elf_i386_size_dynamic_sections): Likewise. - (elf_i386_relocate_section): Likewise. - (elf_i386_finish_dynamic_sections): Likewise. - - * elf32-hppa.c (allocate_plt_and_got): Skip indirect and warning syms. - -2001-06-02 H.J. Lu - - * elf32-hppa.c (elf32_hppa_object_p): Check ELFOSABI_LINUX - and ELFOSABI_HPUX. - * elf64-hppa.c (elf64_hppa_object_p): Likewise. - -2001-06-02 H.J. Lu - - * aout-cris.c (MACHTYPE_OK): New. Defined. - -2001-06-02 Hans-Peter Nilsson - - * section.c (_bfd_strip_section_from_output): Handle NULL - output_section. - -2001-06-02 H.J. Lu - - * config.bfd (powerpc-*-aix*, powerpc-*-beos*, rs6000-*-*): Add - rs6000coff64_vec only if BFD64 is defined. - (powerpc64-*-aix*): Enable only if BFD64 is defined. - -2001-06-02 H.J. Lu - - * coff-ia64.c (ia64coff_object_p): Rewrite with - external_PEI_DOS_hdr and external_PEI_IMAGE_hdr. - -2001-06-01 Andreas Jaeger - - * elf64-x86-64.c (elf64_x86_64_relocate_section): Add PC8 - relocation, small reformatting. - -2001-05-29 Andreas Jaeger - - * elf64-x86-64.c (elf64_x86_64_check_relocs): Handle R_X86_64_64. - (elf64_x86_64_relocate_section): Likewise. - -2001-05-30 Alan Modra - - * elf32-hppa.c (elf32_hppa_check_relocs): Don't NEED_PLT for - millicode. Don't allocate .got and .rela.got space here.. - (elf32_hppa_gc_sweep_hook): ..and no need to deallocate here.. - (elf32_hppa_adjust_dynamic_symbol): ..and don't allocate .plt and - .rela.plt here.. - (hppa_handle_PIC_calls): ..nor here.. - (allocate_plt_and_got): ..instead do it all here. New function. - (elf32_hppa_size_dynamic_sections): Allocate local .got space and - call allocate_plt_and_got. No need to zap .got if not dynamic. - (elf32_hppa_final_link): Call regular bfd_final_link instead of - gc_common_final_link. - (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define. - (elf32_hppa_relocate_section): Use it here. - (elf32_hppa_finish_dynamic_symbol): Remove superfluous test of - dynamic_sections_created. - (hppa_type_of_stub): Don't LONG_BRANCH_VIA_PLT if millicode sym. - -2001-05-28 Andreas Jaeger - - * elf64-x86-64.c (elf64_86_64_size_info): Remove, we can use the - generic version since we want a hashsize of 4. - (elf_backend_size_info): Likewise. - -2001-05-28 Thiemo Seufer - - * elflink.h (elf_link_size_reloc_section): Use bfd_zmalloc instead of - a zeroing loop. - (elf_link_output_relocs): Handle MIPS ELF64 relocations correctly. - (elf_link_input_bfd): Likewise. - (elf_reloc_link_order): Likewise. - (elf_finish_pointer_linker_section): Typo. Handle MIPS ELF64 - relocations correctly. - -2001-05-28 Nicolas Pitre - - * elf32-arm.h: fix PLT generation for big endian ARM - -2001-05-28 Alan Modra - - * elf32-hppa.c (elf32_hppa_relocate_section): Set up .plt entries - for symbols forced local that need plabels. - (elf32_hppa_adjust_dynamic_symbol): Don't allocate space in - .plt.rela for local syms if non-shared. - (hppa_build_one_stub): Mask lsb of plt.offset. - (elf32_hppa_finish_dynamic_symbol): Abort if lsb of plt.offset set. - (clobber_millicode_symbols): Correct comment. - (elf32_hppa_relocate_section): Likewise. - (elf32_hppa_finish_dynamic_symbol): Likewise. - -2001-05-28 Jeff Sturm - - * reloc.c: Add BFD_RELOC_SPARC_UA16 and BFD_RELOC_SPARC_UA64. - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - * elf32-sparc.c: Enable BFD_RELOC_SPARC_UA16, BFD_RELOC_SPARC_UA32 - and BFD_RELOC_SPARC_UA64 mapping - * elf64-sparc.c: Likewise. - -2001-05-25 H.J. Lu - - * Makefile.am (BFD32_BACKENDS): Remove coff-pmac.lo. - (BFD32_BACKENDS_CFILES): Remove coff-pmac.c. - (coff-rs6000.lo): Remove the old dependency. - * Makefile.in: Rebuild. - - * configure.in (pmac_xcoff_vec): Replace coff-pmac.lo with - coff-rs6000.lo. - -2001-05-25 H.J. Lu - - * coff-rs6000.c (rs6000coff_vec): Use rs6000coff_core_p, - rs6000coff_core_file_matches_executable_p, - rs6000coff_core_file_failing_command and - rs6000coff_core_file_failing_signal only if AIX_CORE is - defined. - (pmac_xcoff_vec): Likewise. - * coff64-rs6000.c (rs6000coff64_vec): Likewise. - -2001-05-25 Timothy Wall - - * elfxx-ia64.c (allocate_dynrel_entries): Don't allocate an entry - for __GLOB_DATA_PTR on AIX5. Clean up some relocation bugs. - -2001-05-25 H.J. Lu - - * bfd-in2.h: Regenerated. - * libcoff.h: Likewise. - -2001-05-25 Alan Modra - - * elf32-hppa.c (elf32_hppa_relocate_section): Don't allow - undefined millicode syms in shared libs. - (hppa_build_one_stub): Turn BFD_ASSERTs into aborts. - (elf32_hppa_check_relocs): Likewise. - (elf32_hppa_adjust_dynamic_symbol): Likewise. - (elf32_hppa_size_dynamic_sections): Likewise. - (elf32_hppa_relocate_section): Likewise. - (elf32_hppa_finish_dynamic_symbol): Likewise. - (elf32_hppa_finish_dynamic_sections): Likewise. - -2001-05-24 Tom Rix - - * Makefile.am coff-pmac bfd now defined in coff-rs6000.c - xcoff-target.h not used to define rs6000 or ppc bfd. - * Makefile.in same - - * bfd-in.h : (struct lineno_cache_entry) promote element "offset" - to 64 bit. - - * coff-rs6000.c : Many changes for 64 bit support. Move common - 32/64 code to xcofflink.c. Explictly define the rs6000coff_vec - and pmac_xcoff_vec - - * coff64-rs6000.c : Many changes for 64 bit support. 64 bit - linker now supported. Explictly define the rs6000coff64_vec. - - * coffcode.h : (coff_set_arch_mach_hook) xcoff 64 bit support - (coff_print_aux) same - (coff_write_object_contents) same - (coff_slurp_line_table) same - - * coffgen.c : (coff_fix_symbol_name) formatting - (coff_mangle_symbols) xcoff 64 bit support - (coff_write_symbol) same - (coff_write_alien_symbol) same - (coff_write_native_symbol) same - (coff_write_symbols) same - (coff_get_symbol_info) same - (bfd_coff_get_syment) same - (coff_print_symbol) same - - * config.bfd : add powerpc64-*-aix* target - - * libcoff-in.h : formatting - - * libcoff.h : move xcoff extern declarations to libxcoff.h - - * libxcoff.h : New file - - * xcofflink.c : Many changes for xcoff64 support. Move common - structures to include/coff/xcoff.h. Move specific structure to - backends coff-rs6000.c and coff64-rs6000.c. Use new backend - functions, defined in libxcoff.h, to isolate 32/64 dependencies. - - (bfd_xcoff_size_dynamic_sections) : special __rtinit symbol for - aix4.2+ -binitfini. - - (xcoff_build_ldsyms) : handle special __rtinit symbol. - -2001-05-23 Alexandre Oliva - - * elf64-sparc.c (sparc64_elf_slurp_reloc_table): Fix typo - s/ENTIRES/ENTRIES/. - -2001-05-23 Thiemo Seufer - - * reloc.c (bfd_reloc_code_real): Add MIPS ELF64 relocations. - * libbfd.h: Regenerate. - * bfd-in2.h: Regenerate. - - * aoutx.h (aout_@var{size}_machine_type): Add MIPS r12k support. - * archures.c (bfd_mach_mips12000): Define. - * cpu-mips.c (arch_info_struct): Add MIPS r12k support. - * elf32-mips.c (_bfd_mips_elf_final_write_processing): Add MIPS r12k - support. - (_bfd_mips_elf_size_dynamic_sections): Use official bfd typedef. - * bfd-in2.h: Regenerate. - * elfxx-target.h: Do not redefine bfd_elfNN_bfd_make_debug_symbol. - -2001-05-23 kaz Kojima - - * elf32-sh.c (elf_sh_plt0_entry_be, elf_sh_plt0_entry, - elf_sh_plt_entry_be, elf_sh_plt_entry, elf_sh_pic_plt_entry_be, - elf_sh_pic_plt_entry): New PLT code, that does not use r2, since - that is used by GCC. - -2001-05-23 Nick Clifton - - * elf-bfd.h (NUM_SHDR_ENTRIES): New macro: compute the number - of entries in a structured section. - * elf.c: Use new macro. - * elf32-i386.c: Use new macro. - * elf32-mips.c: Use new macro. - * elf64-alpha.c: Use new macro. - * elf64-sparc.c: Use new macro. - * elfcode.h: Use new macro. - * elflink.h: Use new macro. - -2001-05-23 Nick Clifton - - * bfdint.texi: Replace -oformat with --oformat. - -2001-05-21 Andreas Jaeger - - * dwarf2.c (decode_line_info): Fix error message. - (read_abbrevs): Fix test for offset as suggested by Alan Modra and - adjust error message. - -2001-05-18 H.J. Lu - - * elflink.h (elf_link_add_object_symbols): Revert the last - change. - -2001-05-17 Alan Modra - - * elf32-hppa.c (clobber_millicode_symbols): Temporarily set - ELF_LINK_FORCED_LOCAL to suit 2001-04-30 change. - (hppa_build_one_stub): Add an assert to check plt.offset. - -2001-05-17 H.J. Lu - - * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set the - version definition to basename of the output filename. - -2001-05-17 H.J. Lu - - * elflink.h (elf_link_add_object_symbols): Set DT_NEEDED to - basename of the bfd filename. - -2001-05-16 Alan Modra - - * section.c (asection): Add linker_has_input field. - (STD_SECTION): Adjust initialization to suit. - * ecoff.c (bfd_debug_section): Likewise. - * bfd-in2.h: Regenerate. - -2001-05-15 Alexandre Oliva - - * elf-m10300.c (mn10300_elf_relax_section): Don't relax - negative 32-bit operands to 16 operands when the operand is - going to be zero-extended by the modified opcode. - -2001-05-12 Peter Targett - - * cpu-arc.c (arch_info_struct): Add entry 'base' representing old - name for 'arc5' core versions. - (bfd_arc_arch): Make bfd_mach_arc_6 default. - - * elf32-arc.c (arc_elf_object_p): Make E_ARC_MACH_ARC6 default - architecture. - (arc_elf_final_write_processing): Make bfd_mach_arc_6 default. - -2001-05-11 Jakub Jelinek - - * elfxx-ia64.c (is_unwind_section_name): Consider linkonce unwind - sections as well. - (elfNN_ia64_final_write_processing): Map .gnu.linkonce.ia64unw.FOO - to .gnu.linkonce.t.FOO text section. - -2001-05-11 Jakub Jelinek - - * merge.c (struct sec_merge_hash_entry): Add u.entsize and u.suffix - fields, change sec into secinfo. - (struct sec_merge_info): Add chain, remove last fields. - (struct sec_merge_sec_info): Add next, sec, psecinfo fields. - (sec_merge_hash_lookup): If lookup could not use a string only - because it has bad alignment, mark the old string for deletion. - (sec_merge_add): Add secinfo argument. Don't compute entry's - position, instead record the section. - (sec_merge_emit): Update for the sec into secinfo change in - struct sec_merge_hash_entry. - (_bfd_merge_section): Only record the section for merging, defer - putting strings into the hash table. - (cmplengthentry, last4_eq, last_eq, record_section, merge_strings, - _bfd_merge_sections): New functions. - (_bfd_merged_section_offset): Update for the sec_merge_hash_entry - changes. - * libbfd-in.h (_bfd_merge_sections): Add prototype. - (_bfd_nolink_bfd_merge_sections): Define. - * libbfd.h: Likewise. - (bfd_generic_merge_sections): Add prototype. - * targets.c (BFD_JUMP_TABLE_LINK): Add _bfd_merge_sections. - (struct bfd_target): Likewise. - * bfd.c (bfd_merge_sections): Define. - * bfd-in2.h: Rebuilt. - * elf.c (_bfd_elf_merge_sections): New function. - * elf-bfd.h (_bfd_elf_merge_sections): Add prototype. - * elfxx-target.h (bfd_elfNN_bfd_merge_sections): Define. - * reloc.c (bfd_generic_merge_sections): New function. - * vms.c (vms_bfd_merge_sections): New function. - * aout-adobe.c (aout_32_bfd_merge_sections): Define. - * aout-target.h (MY_bfd_merge_sections): Define. - * aout-tic30.c (MY_bfd_merge_sections): Define. - * binary.c (binary_bfd_merge_sections): Define. - * bout.c (b_out_bfd_merge_sections): Define. - * coff-alpha.c (_bfd_ecoff_bfd_merge_sections): Define. - * coffcode.c (coff_bfd_merge_sections): Define. - * coff-mips.c (_bfd_ecoff_bfd_merge_sections): Define. - * i386msdos.c (msdos_bfd_merge_sections): Define. - * i386os9k.c (os9k_bfd_merge_sections): Define. - * ieee.c (ieee_bfd_merge_sections): Define. - * ihex.c (ihex_bfd_merge_sections): Define. - * nlm-target.h (nlm_bfd_merge_sections): Define. - * oasys.c (oasys_bfd_merge_sections): Define. - * ppcboot.c (ppcboot_bfd_merge_sections): Define. - * som.c (som_bfd_merge_sections): Define. - * srec.c (srec_bfd_merge_sections): Define. - * tekhex.c (tekhex_bfd_merge_sections): Define. - * versados.c (versados_bfd_merge_sections): Define. - * xcoff-target.h (_bfd_xcoff_bfd_merge_sections): Define. - -2001-05-11 Nick Clifton - - * dwarf1.c (_bfd_dwarf1_find_nearest_line): Change type of 'addr' - to be unsigned long, in order to match its use. - -2001-05-10 H.J. Lu - - * linker.c (_bfd_generic_link_add_one_symbol): Check loop on - indirect symbols. - -2001-05-09 H.J. Lu - - * elflink.h (elf_link_add_object_symbols): Fix a typo. Allocate - versymhdr->sh_size bytes for extversym instead of hdr->sh_size. - Remove the unused veriable `dynver'. - -2001-05-08 Ian Lance Taylor - - * coff-i386.c (coff_i386_reloc): Don't dump core if output_bfd is - NULL or is not COFF. - (coff_i386_rtype_to_howto): Don't dump core if output section - owner is not COFF. - -2001-05-07 Thiemo Seufer - - * ecoff.c (bfd_debug_section): Fix initialization. - * elf.c (_bfd_elf_slurp_version_tables): Change maxidx to unsigned, it - is always a positive integer. Cast away sign mismatch. - * elf32-mips.c: Fix misleading comment and typo. - (_bfd_mips_elf_section_from_bfd_section): Remove unused attribute, use - correct data type. - * elflink.c: Fix typo. - (_bfd_elf_create_dynamic_sections): Remove superfluous initialization. - * ecoffswap.h (ecoff_swap_fdr_in): Cast away sign mismatch. - -2001-05-04 Richard Henderson - - * elf64-alpha.c (SREL16, SREL32, SREL64): Set pcrel_offset true. - -2001-05-04 Nick Clifton - - * elf32-arm.h (elf32_arm_final_link_relocate): Set - EF_ARM_HASENTRY if the start address is set. - -2001-05-03 Nick Clifton - - * targets.c (_bfd_target_vector_entries): Compute value based on - the size of the _bfd_target_vector and not bfd_target_vector. - -2001-05-03 H.J. Lu - - * elfcode.h: Include "libiberty.h". - - * elflink.h (elf_link_add_object_symbols): Set - elf_dt_name (abfd) to basename of the bfd filename. - (NAME(bfd_elf,size_dynamic_sections)): Set vn_file to basename - of the bfd filename. - -2001-05-03 Andreas Jaeger - - * elf64-gen.c (elf_generic_info_to_howto): Add unused attribute. - (elf_generic_info_to_howto_rel): Likewise. - * coff-alpha.c (reloc_nil): Likewise. - (alpha_ecoff_bad_format_hook): Likewise. - (alpha_adjust_reloc_out): Likewise. - (alpha_bfd_reloc_type_lookup): Likewise. - (alpha_convert_external_reloc): Likewise. - * elf64-alpha.c (elf64_alpha_reloc_nil): Likewise. - (elf64_alpha_reloc_bad): Likewise. - (elf64_alpha_reloc_gpdisp): Likewise. - (elf64_alpha_bfd_reloc_type_lookup): Likewise. - (elf64_alpha_info_to_howto): Likewise. - (elf64_alpha_add_symbol_hook): Likewise. - (elf64_alpha_create_got_section): Likewise. - (elf64_alpha_is_local_label_name): Likewise. - (elf64_alpha_merge_ind_symbols): Likewise. - * elf64-mips.c (mips_elf64_reloc_type_lookup): Likewise. - (mips_elf64_get_reloc_upper_bound): Likewise. - * nlm32-alpha.c (nlm_alpha_mangle_relocs): Likewise. - (nlm_alpha_get_public_offset): Likewise. - -2001-05-02 Johan Rydberg - - * elf32-openrisc.c (openrisc_elf_howto_table): Do not complain - about overflow in R_OPENRISC_LO_16_IN_INSN and - R_OPENRISC_HI_16_IN_INSN.Index: bfd/elf32-openrisc.c - -2001-04-30 H.J. Lu - - * elf.c (_bfd_elf_link_hash_hide_symbol): Set dynindx to -1 - only for ELF_LINK_FORCED_LOCAL. - * elf32-hppa.c (elf32_hppa_hide_symbol): Likewise. - * elf32-mips.c (_bfd_mips_elf_hide_symbol): Likewise. - * elfxx-ia64.c (elfNN_ia64_hash_hide_symbol): Likewise. - - * elflink.h (elf_fix_symbol_flags): Set ELF_LINK_FORCED_LOCAL - if the symbol has hidden or internal visibility. - -2001-04-30 Alan Modra - - * elf32-hppa.c (final_link_relocate): Branch to .+8 for - calls to undefined weak symbols. - -2001-04-30 Andreas Jaeger , Andreas Schwab - - * elf64-x86-64.c (elf64_x86_64_relocate_section): Correct test for - R_X86_64_GOTPCREL, don't use assignments instead of comparisons. - -2001-04-27 Andreas Jaeger - - * elf64-x86-64.c (elf64_x86_64_finish_dynamic_sections): Only swap - out handled entries. - (elf64_x86_64_finish_dynamic_symbol): Set up GOT entries. - (elf64_x86_64_relocate_section): Fix GOTPCREL calculation. - (elf64_x86_64_relocate_section): Merge entries for GOTPCREL and - GOT32. - -2001-04-27 Sean McNeil - - * config.bfd: Add arm-vxworks target. - * coff-arm (coff_arm_relocate_section): Add in symbol value to - addend (fro VXworks targets). - -2001-04-26 H.J. Lu - - * elf32-i386.c (elf_i386_check_relocs): Verify if r_symndx is - valid. - -2001-04-25 Frank Ch. Eigler - - * bfd-in.h (bfd_cache_close): Declare newly exported function. - * bfd-in2.h: Regenerated. - -2001-04-24 Jakub Jelinek - - * merge.c (struct sec_merge_hash_entry): Add alignment field. - (struct sec_merge_hash): Remove alignment_power. - (sec_merge_hash_newfunc): Clear alignment. - (sec_merge_hash_lookup): Pass alignment as argument. - Use hashp->root.next, not hashp->next to walk the hash chain. - If a string already in the hashtable does not have required - alignment, create a new hashtable entry. - (sec_merge_init): Remove alignment_power argument. - (sec_merge_add): Add alignment argument. - (sec_merge_emit): Alignment is now a per-entity thing, not per - section. - (_bfd_merge_section): Sanity check even non-SEC_STRINGS sections - for proper alignment. - Pass alignment information to sec_merge_add. - -2001-04-24 Christian Groessler - - * coff-z8k.c (extra_case): added handler for R_DISP7, R_CALLR - and R_REL16 reloc types; accept odd values for R_REL16 type - -2001-04-24 Johan Rydberg - - * cpu-openrisc.c: New file. - * elf32-openrisc.c: Likewise. - - * Makefile.am (ALL_MACHINES): Add cpu-openrisc.lo. - (ALL_MACHINES_CFILES): Add cpu-openrisc.c. - (BFD32_BACKENDS): Add elf32-openrisc.lo. - (BFD32_BACKENDS_CFILES): Add elf32-openrisc.c. - (cpu-openrisc.lo, elf32-openrisc.lo): New rules. - * Makefile.in: Regenerated. - * config.bfd: (openrisc-*-elf): New target. - * configure.in (bfd_elf32_openrisc_vec): New vector. - * configure: Regenerated. - * libbfd.h: Regenerated. - * bfd-in2.h: Regenerated. - * reloc.c: Add OpenRISC relocations. - * targets.c (bfd_elf32_openrisc_vec): Declare. - (bfd_target_vect): Add bfd_elf32_openrisc_vec. - * archures.c (enum bfd_architecture): Add bfd_arch_openrisc. - (bfd_openrisc_arch): Declare. - (bfd_archures_list): Add bfd_openrisc_arch. - * elf.c (prep_headers): Add bfd_arch_openrisc. - -2001-04-23 Bo Thorsen - - * elf64-x86-64.c: Add c++ vtable hack. - Small whitespace and comment changes. - -2001-04-19 Andreas Jaeger - - * elf64-x86-64.c (elf64_x86_64_plt0_entry): Fix instructions. - (elf64_x86_64_plt_entry): Likewise. - (elf64_x86_64_finish_dynamic_sections): Fix PLT0 generation. - (elf64_x86_64_finish_dynamic_symbol): Fix PLT generation. - -2001-04-17 Hans-Peter Nilsson - - * elf32-cris.c: Tweak comments related to dynamic linking. - (cris_elf_relocate_section): When not creating shared object, fill - in the .got table for any symbol not in the dynamic symbol table. - (elf_cris_finish_dynamic_symbol): When not creating shared object, - only emit a .got.rela reloc if the symbol is in the dynamic symbol - table. - (cris_elf_check_relocs): Use variable r_type in all places rather - than the original expression. Add default case in switch for - reloc types. - (elf_cris_size_dynamic_sections): Iterate over - elf_cris_discard_excess_program_dynamics when not creating shared - library. - (elf_cris_discard_excess_dso_dynamics): Renamed from - elf_cris_discard_copies. Correct typo, s/Rel/Rela/. - (elf_cris_discard_excess_program_dynamics): New. - -2001-04-14 Mark Elbrecht - - * coffcode.h (coff_write_object_contents): Use - bfd_coff_swap_filehdr_out instead of coff_swap_filehdr_out. - -2001-04-14 H.J. Lu - - * bfd-in2.h: Regenerate. - -2001-04-14 Jakub Jelinek - - * section.c (STD_SECTION): Add entsize. - -2001-04-13 H.J. Lu - - * section.c (SEC_MERGE): Define new flag for merging. - (SEC_STRINGS): Likewise. - (entsize): New field. - -2001-04-13 Roger Sayle - - * coff-i386.c (TARGET_SYM): SEC_READONLY is an applicable section - flag on pe-i386 targets. - -2001-04-13 Jakub Jelinek - - * libbfd-in.h (_bfd_merge_section): New. - (_bfd_write_merged_section): New. - (_bfd_merged_section_offset): New. - * libbfd.h: Rebuilt. - * linker.c (_bfd_generic_link_output_symbols): Handle - discard_sec_merge. - * aoutx.h (aout_link_write_symbols): Likewise. - * pdp11.c (aout_link_write_symbols): Likewise. - * elflink.h (elf_link_add_object_symbols): Call _bfd_merge_section. - (elf_bfd_final_link): Adjust global symbols pointing into SEC_MERGE - sections. - (elf_link_sec_merge_syms): New. - (elf_link_input_bfd): Call _bfd_merged_section_offset - and _bfd_write_merged_section. - Handle discard_sec_merge. - * elf-bfd.h (struct elf_link_hash_table): Add merge_info - field. - (struct bfd_elf_section_data): Likewise. - * elf.c (_bfd_elf_make_section_from_shdr): Set SEC_MERGE and - SEC_STRINGS section flags and entsize from their ELF counterparts. - (_bfd_elf_link_hash_table_init): Initialize merge_info. - (elf_fake_sections): Set SHF_MERGE, SHF_STRINGS and sh_entsize - from their BFD counterparts. - * merge.c: New file. - * Makefile.am: Add strtab.lo. - * Makefile.in: Rebuilt. - -2001-04-09 Hans-Peter Nilsson - - * elflink.h (elf_fix_symbol_flags): For non-default visibilities, - only hide symbols marked STV_INTERNAL or STV_HIDDEN. - -2001-04-05 Steven J. Hill - - * config.bfd (mips*el*-*-linux-gnu*): Use traditional little - endian MIPS ELF target. - * config.bfd (mips*-*-linux-gnu*): Use traditional big endian - MIPS ELF target. - - * configure.in (bfd_elf64_tradbigmips_vec): New. Traditional - 64bit big endian MIPS ELF target. - (bfd_elf64_tradlittlemips_vec): New. Traditional 64bit little - endian MIPS ELF target. - * configure: Regenerated. - - * elf32-mips.c (IRIX_COMPAT): Handle traditional 64bit and - little endian targets. - (mips_elf_sym_is_global): Handle traditional targets. - - * elf64-mips.c (bfd_elf64_tradbigmips_vec): New. Traditional - 64bit big endian MIPS ELF target. - (bfd_elf64_tradlittlemips_vec): New. Traditional 64bit little - endian MIPS ELF target. - - * targets.c: (_bfd_target_vector): Add bfd_elf64_tradbigmips_vec - and bfd_elf64_tradlittlemips_vec. - -2001-04-05 David Mosberger - - * elf32-i386.c (elf_i386_fake_sections): Treat ".reloc" as an - ordinary "progbits" section. - -2001-04-04 Alan Modra - - * elflink.h (elf_fix_symbol_flags): Call elf_backend_hide_symbol - when -Bsymbolic causes a symbol to no longer need a .plt entry. - -2001-04-03 David Mosberger - - * efi-app-ia32.c (ALIGN_SECTIONS_IN_FILE): Deleted. - -2001-03-30 H.J. Lu - - * efi-app-ia32.c (PEI_TARGET_SUBSYSTEM): Rename from ... - (PEI_DEFAULT_TARGET_SUBSYSTEM): This. - -2001-03-26 H.J. Lu - - * elf32-gen.c (elf32_generic_link_add_symbols): New. Check - if there are any relocations for generic ELF. - (bfd_elf32_bfd_link_add_symbols): Defined to - elf32_generic_link_add_symbols. - * elf64-gen.c (elf64_generic_link_add_symbols): New. Check - if there are any relocations for generic ELF. - (bfd_elf64_bfd_link_add_symbols): Defined to - elf64_generic_link_add_symbols. - -2001-03-23 Nick Clifton - - * Makefile.am (BUILD_CFILES): New variable: List of C source - files created in build directory. - (BUILD_HFILES): New variable: List of header files created in - build directory. - (POTFILES): Delete. - (po/POTFILES.in): Replace rule with empty entry. - (po/SRC-POTFILES.in): New rule: Create a list of source files - in the source directory. - (po/BLD-POTFILES.in): New rule: Create a list of source files - in the build directory. - (MOSTLYCLEAN): Do not delete source files created in build - directory. - * Makefile.in: Regenerate. - * configure.in: Insert SRC-POTFILES.in and BLD-POTFILES.in - into po/Makefile. - * configure: Regenerate. - - * po/Make-in: Replace occurrences of POTFILES with SRC-POTFILES - and BLD_POTFILES. - Add .. to the search path when building bfd.pot. - Delete POTFILES when performing distclean. - Add comment describing why distclean is broken in maintainer mode. - * po/POTFILES.in: Delete. - * po/SRC-POTFILES.in: New file. - * po/BLD-POTFILES.in: New file. - * po/bfd.pot: Regenerate. - -2001-03-22 Hans-Peter Nilsson - - * elf32-cris.c: Shlib and PIC support. PCREL tweaks. - (elf_cris_discard_copies, elf_cris_adjust_gotplt_to_got, - elf_cris_try_fold_plt_to_got, elf_cris_link_hash_newfunc, - elf_cris_link_hash_table_create, elf_cris_adjust_dynamic_symbol, - elf_cris_size_dynamic_sections, elf_cris_finish_dynamic_symbol, - elf_cris_finish_dynamic_sections,elf_cris_hide_symbol): New - functions. - (cris_elf_howto_table) : Correct comments. Set pcrel_offset to false. - : - New HOWTO members for new relocs. - (cris_reloc_map): Map new relocs. - (ELF_DYNAMIC_INTERPRETER): Define. - (PLT_ENTRY_SIZE): Define. - (elf_cris_plt0_entry, elf_cris_plt_entry, elf_cris_pic_plt0_entry, - elf_cris_pic_plt_entry): New, PLT templates. - (struct elf_cris_pcrel_relocs_copied, struct - elf_cris_link_hash_entry, struct elf_cris_link_hash_table): New. - (elf_cris_link_hash_traverse, elf_cris_hash_table): Define. - (cris_final_link_relocate): Check that 16-bit GOT relocs have - positive values. Adjust PCREL relocs to be relative to location - after relocation. - (cris_elf_relocate_section): Handle relocations to dynamic - objects. Handle new relocations. Call error handler when seeing - non-PIC relocation for read-only sections while generating shared - object. - (cris_elf_check_relocs): Set reference counts for GOT and PLT - entries. - (bfd_elf32_bfd_link_hash_table_create, - elf_backend_adjust_dynamic_symbol, - elf_backend_size_dynamic_sections, - elf_backend_finish_dynamic_symbol, - elf_backend_finish_dynamic_sections, - elf_backend_create_dynamic_sections, bfd_elf32_bfd_final_link, - elf_backend_hide_symbol, elf_backend_want_got_plt, - elf_backend_plt_readonly, elf_backend_want_plt_sym, - elf_backend_got_header_size, elf_backend_plt_header_size): - Define. - - * reloc.c: (BFD_RELOC_CRIS_COPY, BFD_RELOC_CRIS_GLOB_DAT, - BFD_RELOC_CRIS_JUMP_SLOT, BFD_RELOC_CRIS_RELATIVE, - BFD_RELOC_CRIS_32_GOT, BFD_RELOC_CRIS_16_GOT, - BFD_RELOC_CRIS_32_GOTPLT, BFD_RELOC_CRIS_16_GOTPLT, - BFD_RELOC_CRIS_32_GOTREL, BFD_RELOC_CRIS_32_PLT_GOTREL, - BFD_RELOC_CRIS_32_PLT_PCREL): New relocs. - * bfd-in2.h, libbfd.h: Regenerate. - -2001-03-21 Diego Novillo - - (_bfd_mips_elf_relocate_section): Give a better error message when - a relocation is not recognized. - -2001-03-21 Alan Modra - - * elf32-hppa.c (elf32_hppa_set_gp): Check sec->output_section - non-NULL before attempting to dereference. - -2001-03-20 H.J. Lu - - * configure.in: Remove the redundent AC_ARG_PROGRAM. - * configure: Rebuild. - -2001-03-20 Andreas Schwab - - * elf32-m68k.c (elf_m68k_relocate_section): Don't need the - relocation value when resolving a reference from a debugging - section. - -2001-03-16 Scott Thomason - - * coff64-rs6000.c (xcoff64_swap_sym_out): Fix syntax errors. - (xcoff64_swap_sym_out): Fix syntax errors. - -2001-03-16 Richard Sandiford - - * elf32-arm.h (elf32_arm_merge_private_bfd_data): Fix warning. - -2001-03-15 Alan Modra - - * elf32-hppa.c (elf32_hppa_link_hash_entry): Add maybe_pic_call. - (hppa_link_hash_newfunc): Init it. - (hppa_type_of_stub): Only use non-PIC to PIC call stub if caller - section appears to be non-PIC. - (final_link_relocate): Likewise. - (elf32_hppa_adjust_dynamic_symbol): Set maybe_pic_call for any - possible candidate function, and set pic_call for those that will - only have a .plt entry for the PIC call stub. - (hppa_handle_PIC_calls): Set maybe_pic_call. - -2001-03-12 DJ Delorie - - * elf32-sh.c (sh_elf_relocate_section): Only relocation - R_SH_DIR8WP* relocs if they're against external symbols, else - they're just for relaxing. Validate the reloc values. - -2001-03-12 Stefan Geuken - - * binary.c (bfd_external_binary_architecture): Declare. - (binary_object_p): If bfd_external_binary_architecture is defined, - set the architecture to this string. - -2001-03-11 Philip Blundell - - * elf32-arm.h (elf32_arm_finish_dynamic_symbol): Don't make PLT - entries that could serve as a definition for a weak symbol. - -2001-03-08 Nick Clifton - - * Most files: Update copyright notices using Perl script created - by Kevin Buettner . - -2001-03-07 Nick Clifton - - * elf32-arm.h (elf32_arm_final_link_relocate): Conditionalise - prior patch on ! defined OLD_ARM_ABI. - -2001-03-07 Andreas Jaeger - - * elf64-x86-64.c (elf64_x86_64_relocate_section): Fix handling of - some relocation values. - -2001-03-06 Nick Clifton - - * elf32-arm.h (elf32_arm_final_link_relocate): Clear bit zero - of offset in BLX(1) instruction. - * coff-arm.c (coff_arm_relocate_section): Clear bit zero of - offset in BLX(1) instruction. - Fix formatting. - -2001-03-06 Nick Clifton - - * coff-arm.c (coff_arm_reloc_type_lookup): Add - BFD_RELOC_THUMB_PCREL_BLX. - -2001-03-06 Igor Shevlyakov - - * archures.c (bfd_default_scan): Add Coldfire CPUs. - * bfd-in2.h: Regenerate. - * cpu-m68k.c: Add Coldfire CPUs for arch table. - * ieee.c (ieee_write_processor): Set proper id for - Coldfire CPUs. - -2001-03-01 D.J. Barrow - - * configure.in: Add s390 target. - * configure: Regenerate. - -2001-02-28 Andreas Jaeger - - * elf64-x86-64.c (elf64_x86_64_relocate_section): Add relocation - to addend. - -2001-02-28 Philip Blundell - - * elf32-arm.h: Update mentions of renamed EF_xx constants. - (elf32_arm_print_private_bfd_data): Handle ARM EABI version 2. - -2001-02-27 H.J. Lu - - * aoutx.h (NAME(aout,bfd_free_cached_info)): Return true if - abfd->tdata.aout_data == NULL. - -2001-02-27 Alan Modra - - * elf32-hppa.c: Correct field selector in stub comments. - (clobber_millicode_symbols): Formatting fix. - - * configure.in: Bump version to 2.11.90. - * configure: Regenerate. - * Makefile.am (CFILES): Rename to SOURCE_CFILES. - (CFILES): $SOURCE_CFILES + generated C files. - (POTFILES): Include $HFILES not $SOURCE_HFILES. - Run "make dep-am" - * Makefile.in: Regenerate. - * doc/Makefile.in: This too. - -2001-02-26 Timothy Wall - - * elfxx-ia64.c (elfNN_ia64_aix_add_symbol_hook): Remove obsolete - comments. - -2001-02-26 Nick Clifton - - * coffcode.h (styp_to_sec_flags) [COFF_WITH_PE version]: Tidy - up, replacing multiple if statements with a switch. - (handle_COMDAT): New function. - -2001-02-26 H.J. Lu - - * coffcode.h (styp_to_sec_flags) [COFF_WITH_PE version]: Issue - a warning for section flags we do not handle instead of - aborting. - -2001-02-26 Andreas Jaeger - - * elf64-x86-64.c (x86_64_elf_howto_table): Fix order of entries. - -2001-02-22 Timothy Wall - - * config.bfd (targ_cpu): Add vectors for ia64-*-aix* (aka Monterey). - * configure.in: Add objects for elf64_ia64_aix vectors. - * configure: Regenerated. - * configure.host: Recognize ia64-*-aix*. - * elfxx-ia64.c: Add hooks for ELF64 on AIX5. Define new vectors - for AIX. AIX5 requires most relocations to be dynamic (*all* - binaries are somewhat similar to shared libraries). - * targets.c: Add elf64_ia64_aix vectors. - -2001-02-21 David Mosberger - - * cpu-ia64-opc.c (elf64_ia64_operands}: Fix typo: error string for - C8 said "1" instead of "8". Clarify error string for IMM22: - "signed integer" instead of just "integer". - -2001-02-20 Andreas Jaeger - - * elf64-x86-64.c (elf64_x86_64_finish_dynamic_symbol): Don't make - PLT entries that could serve as a definition for a weak symbol. - -2001-02-19 Jakub Jelinek - - * elf32-sparc.c (elf32_sparc_finish_dynamic_symbol): Don't make PLT - entries that could serve as a definition for a weak symbol. - * elf64-sparc.c (sparc64_elf_finish_dynamic_symbol): Likewise. - -2001-02-18 David O'Brien - - * configure.in: Recognize FreeBSD/arm, FreeBSD/PowerPC, and treat - FreeBSD/i386-CURRENT differently until I can figure out the needed - corefile changes. - * configure: Regenerate. - * config.bfd: Recognize FreeBSD/x86-64, FreeBSD/ia64, FreeBSD/arm, - FreeBSD/PowerPC, and FreeBSD/sparc64. - -2001-02-18 lars brinkhoff - - * Makefile.am: Add PDP-11 a.out target. - * config.bfd: Likewise. - * configure.in: Likewise. - * targets.c: Likewise. - * archures.c: Likewise. - * bfd-in2.h: Likewise. Add PDP-11 relocations. - * libbfd.h: Add PDP-11 relocations. - * reloc.c: Likewise. - * cpu-pdp11.c: New file. - * pdp11.c: New file. - - * libaout.h (GET_WORD) [ARCH_SIZE==16]: Define. - (GET_SWORD) [ARCH_SIZE==16]: Likewise. - (GET_SWORD) [ARCH_SIZE==16]: Likewise. - (PUT_WORD) [ARCH_SIZE==16]: Likewise. - (GET_MAGIC): New macro. - (PUT_MAGIC): Likewise. - * aout-target.h (MY(object_p)): Use GET_MAGIC to read magic word. - -2001-02-18 Jim Kingdon - - * irix-core.c (irix_core_core_file_p): Set the architecture (GDB - multiarch needs it). - -2001-02-18 H.J. Lu - - * elflink.h (elf_link_input_bfd): Ignore invalid section symbol - index. - -2001-02-18 Kazu Hirata - - * vms-misc.c: Fix formatting. - -2001-02-16 Kazu Hirata - - * vms.c: Fix formatting. - -2001-02-14 H.J. Lu - - * elf.c (elf_find_function): New function. - (_bfd_elf_find_nearest_line): Call elf_find_function () to find - the file name and function name. - -2001-02-14 Nick Clifton - - * ecoff.c (bfd_debug_section): Update to initialise new fields in - asection structure. - - * Makefile.am (BFD32_BACKENDS_CFILES): Remove peigen.c - (BFD64_BACKENDS): Add pepigen.c - Add rules to create peigen.c and pepigen.c from peXXigen.c. - - * Makefile.in: Regenerate. - * configure: Regenerate. - * po/POTFILES.in: Regenerate. - * po/bfd.pot: Regenerate. - -2001-02-14 H.J. Lu - - * libcoff-in.h (pe_tdata): Add members target_subsystem and - force_minimum_alignment. - -2001-02-14 Bo Thorsen - - * elf64-x86-64.c: Small formatting fixes and rearrangements of code. - (elf64_86_64_size_info): Struct added to fix a problem - with the hashtable string entries. - (elf64_x86_64_adjust_dynamic_symbol): Add generation of .got.plt. - (elf64_x86_64_size_dynamic_sections): A FIXME removed. - (elf64_x86_64_size_dynamic_sections): Fix a dynamic entry and - remove the FIXME for this. - (elf64_x86_64_adjust_dynamic_symbol): Fix check for unneeded .plt - section. Also removed the FIXME for it. - (x86_64_elf_howto_table): Use bfd_elf_generic_reloc. - (ELF_DYNAMIC_INTERPRETER): Fix the name of the dynamic linker. - (elf64_x86_64_finish_dynamic_sections): Enable .got.plt writing. - -2001-02-13 Richard Henderson - - * elfxx-ia64.c (elfNN_ia64_final_link): Set __gp if required - and not user provided. - -2001-02-13 Kazu Hirata - - * vms.c (vms_print_symbol): Remove unreachable code. - - * rs6000-core.c: Fix formatting. - -2001-02-13 David Mosberger - - * peicode.h (coff_swap_filehdr_out) [COFF_IMAGE_WITH_PE]: Define - as _bfd_XXi_only_swap_filehdr_out. - (pe_mkobject) [PEI_FORCE_MINIMUM_ALIGNMENT]: Set - pe->force_minimum_alignment to TRUE. - (pe_mkobject) [PEI_TARGET_SUBSYSTEM]: Set pe->target_subsystem to - PEI_TARGET_SUBSYSTEM. - (pe_print_private_bfd_data): Call - _bfd_XX_print_private_bfd_data_common() instead of - _bfd_pe_print_private_bfd_data_common(). - (pe_bfd_copy_private_bfd_data): Call - _bfd_XX_bfd_copy_private_bfd_data_common() instead of - _bfd_pe_bfd_copy_private_bfd_data_common(). - (coff_bfd_copy_private_section_data): Define as - _bfd_XX_bfd_copy_private_section_data instead of - _bfd_pe_bfd_copy_private_section_data. - (coff_get_symbol_info): Define as _bfd_XX_get_symbol_info instead - of a _bfd_pe_get_symbol_info. - - * peigen.c: Delete. - - * peXXigen.c: Renamed from peigen.c. - (COFF_WITH_XX): Define this macro (will get expanded into - COFF_WITH_pep or COFF_WITH_pe, depending on whether this is being - compiled as peigen.c or pepigen.c. - [COFF_WITH_pep]: Include "coff/ia64.h" instead of "coff/i386.h" to - define the canonical PEP structures and definitions. - (_bfd_XXi_swap_aouthdr_out): If pe->force_minimum_alignment is in - effect, enforce minimum file and section alignments. If - extra->Subsystem is IMAGE_SUBSYSTEM_UNKNOWN, set it to - pe->target_subsystem (this defaults to IMAGE_SUBSYSTEM_UNKNOWN, - so, by default, this is a no-op). - - * libpei.h: Rename COFF_WITH_PEP to COFF_WITH_pep. - (_bfd_XX_bfd_copy_private_bfd_data_common): Add macros to map - _bfd_XXfoo to _bfd_pepfoo if COFF_WIT_PEP is defined and to - _bfd_pefoo if it's not defined. Use these macros to define - coff swap macros. - - * libcoff.h (pe_tdata): Add members target_subsystem and - force_minimum_alignment. - - * efi-app-ia64.c (COFF_WITH_pep): Rename COFF_WITH_PEP to - COFF_WITH_pep. - (PEI_TARGET_SUBSYSTEM): Rename from PEI_DEFAULT_TARGET_SUBSYSTEM. - - * configure.in (bfd_efi_app_ia64_vec): Use pepigen.lo instead of - peigen.lo. - - * coff-ia64.c: Rename COFF_WITH_PEP to COFF_WITH_pep. - (AOUTSZ): Rename PEP64AOUTSZ and PEP64AOUTHDR to PEPAOUTSZ and - PEPAOUTHDR. - - * Makefile.in (BFD64_BACKENDS): Mention pepigen.lo. - (BFD64_BACKENDS_CFILES): Mention pepigen.c - (peigen.c): Add rule to generate from peXXigen.c. - (pepigen.c): Ditto. - (pepigen.lo): List dependencies for pepigen.lo. - -2001-02-13 Alan Modra - - * elf32-hppa.c (elf32_hppa_set_gp): Handle weak $global$. If - $global$ referenced but not defined, set its value here. - -2001-02-09 Bo Thorsen - - * elf64-x86-64.c (elf64_x86_64_check_relocs): Set .rela.got section - alignment to 3. - (elf64_x86_64_check_relocs): Write R_X86_64_GOTPCREL GOT entry - and relocation. - (elf64_x86_64_relocate_section): Fix formatting. - (elf64_x86_64_relocate_section): Fix addend for relocation of - R_X86_64_(8|16|32|PC8|PC16|PC32). - -2001-02-12 Jan Hubicka - - * elf64-x86-64.c (x86_64_elf_howto): Fix name of R_X86_64_GOTPCREL. - -2001-02-11 H.J. Lu - - * elflink.h (elf_bfd_final_link): Use file_align for SYMTAB - alignment. - -2001-02-11 Maciej W. Rozycki - - * elf32-mips.c (mips_elf_create_dynamic_relocation): Undo patch - from 2000-10-13. Do not add the symbol's value for R_MIPS_REL32 - relocations against dynsym symbols. - - * elf32-mips.c (elf_mips_howto_table): Fix the comment on - the R_MIPS_26 relocation. - (mips_elf_calculate_relocation): Use (p + 4) instead of p for - the R_MIPS_26 relocation. - (mips_elf_perform_relocation): Fix the comment on the R_MIPS16_26 - relocation. - * elf64-mips.c (mips_elf64_howto_table_rel): Fix the comment on - the R_MIPS_26 relocation. - (mips_elf64_howto_table_rela): Likewise. - - * elf32-mips.c (struct mips_elf_link_hash_entry): Added no_fn_stub - member to mark symbols that have non-CALL relocations against - them. - (mips_elf_link_hash_newfunc): Initialize no_fn_stub. - (mips_elf_calculate_relocation): Handle R_MIPS_CALL16 like - R_MIPS_GOT16. - (_bfd_mips_elf_check_relocs): Set no_fn_stub for a symbol if a - non-CALL relocation against it is encountered. - (_bfd_mips_elf_copy_indirect_symbol): Merge no_fn_stub as well. - (_bfd_mips_elf_adjust_dynamic_symbol): Only create a stub if - no_fn_stub is not set. - - * elf32-mips.c (mips_elf_output_extsym): Get the output section - information from the real symbol for indirect ones. - Check no_fn_stub to find out if a symbol has a function stub - indeed. - -2001-02-11 Michael Sokolov - - * Makefile.am (stamp-lib): ranlib the libbfd.a in the build directory. - * Makefile.in: Regenerate. - -2001-02-09 David Mosberger - - * elfxx-ia64.c (is_unwind_section_name): New function. Returns - true if section name is an unwind table section name. - (elfNN_ia64_additional_program_headers): Count each unwind section - separately. - (elfNN_ia64_modify_segment_map): Install one unwind program header - for each unwind separate section. Note: normally the linker - script merges the unwind sections that go into a single segment, - so this still generates at most one unwind program header per - segment. - - * elfxx-ia64.c (elfNN_ia64_section_from_shdr): Accept any section - name for SHT_IA_64_UNWIND, not just .IA_64.unwind. - (elfNN_ia64_fake_sections): Mark sections with names that start - with .IA_64.unwind but not with .IA_64.unwind_info as an IA-64 - unwind section. - - * elfxx-ia64.c (elfNN_ia64_final_write_processing): New function. - Use it to make sh_info in unwind section point to the text section - it applies to. - -2001-02-09 Martin Schwidefsky - - * Makefile.am: Add linux target for S/390. - * archures.c: Likewise. - * bfd-in2.h: Likewise. - * config.bfd: Likewise. - * configure.in: Likewise. - * elf.c: Likewise. - * libbfd.h: Likewise. - * targets.c: Likewise. - * cpu-s390.c: New file. - * elf32-s390.c: New file. - * elf64-s390.c: New file. - -2001-02-09 Nick Clifton - - * peigen.c (_bfd_pe_get_symbol_info): Suppress addition of - ImageBase. This has already been done by coff_swap_hdr_in. - -2001-02-09 Jakub Jelinek - - * elf64-sparc.c (sparc64_elf_copy_private_bfd_data): New function. - -2001-02-09 Jakub Jelinek - - * elf64-sparc.c (sparc64_elf_check_relocs): Don't trust reloc_count. - (sparc64_elf_relocate_section): Likewise. - -2001-02-09 Mark Kettenis - - * elf32-sparc.c (_bfd_sparc_elf_howto_table): Treat R_SPARC_UA32 - similar to R_SPARC_32. - * elf64-sparc.c (sparc64_elf_howto_table): Likewise. - -2001-02-08 H.J. Lu - - * elf32-i386.c (elf_i386_check_relocs): Reserve R_386_PC32 - relocation entries for weak definitions when building DSO with - -Bsymbolic. - -2001-02-08 Richard Henderson - - * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Respect weakness - before visibility. Locally defined protected symbols are not - dynamic. - -2001-02-08 Geoffrey Keating - - * config.bfd: Enable coff64 for rs6000-*. Patch from - . - -2001-02-07 Mark Elbrecht - - * coffgen.c (coff_find_nearest_line): If stabs info is successfully - found, do not attempt to find dwarf2 info before returning. - -2001-02-07 Jakub Jelinek - - * elflink.h (is_global_symbol_definition): Rename to - is_global_data_symbol_definition and have it reject function - symbols. - (elf_link_is_defined_archive_symbol): Use renamed function. - -2001-02-07 Todd Vierling - - * libbfd-in.h (bfd_target_vector): Change extern array to pointer. - * libbfd.h (bfd_target_vector): Likewise. - * targets.c (bfd_target_vector): Rename to _bfd_target_vector and - make static; create pointer reference named bfd_target_vector. - (_bfd_target_vector_entries): Calculate this based on the array - typed _bfd_target_vector. - -2001-02-06 H.J. Lu - - * elfxx-ia64.c (elfNN_ia64_dynamic_symbol_p): Only hidden and - internal symbols are not dynamic. - * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Likewise. - -2001-02-06 Nick Clifton - - * Makefile.am (BFD64_BACKENDS_CFILES): Remove elf64-ia64.c, so - that it will not be pulled into the list of files that make up - po/POTFILES.in. - * Makefile.in: Regenerate. - * po/bfd.pot: Regenerate. - -2001-02-06 H.J. Lu - - * peicode.h (coff_swap_filehdr_in): Remove the e_magic - checking. - (pe_bfd_object_p): Rewrite with external_PEI_DOS_hdr and - external_PEI_IMAGE_hdr. - -2001-02-06 Kazu Hirata - - * elf-m10200.c: Fix formatting. - -2001-02-04 Nick Clifton - - * elf32-v850.c (v850_elf_reloc): Do not convert reloc addend to PC - rel, it will be handled later on. - -2001-02-02 Fred Fish - - * Makefile.in: Fix typo. - -2001-02-01 Kazu Hirata - - * elf-m10300.c: Fix formatting. - -2001-01-30 Alan Modra - - * elf64-hppa.c (elf64_hppa_elf_get_symbol_type): New function. - (elf_backend_get_symbol_type): Define. - (elf64_hppa_object_p): Set architecture and machine from elf - header flags. - -2001-01-30 Curtis L. Janssen - - * elf64-alpha.c (elf64_alpha_find_nearest_line): Query dwarf2 - before mdebug. - -2001-01-26 Richard Henderson - - * elfxx-ia64.c (elfNN_ia64_dynamic_symbol_p): Return false - for non-default visibility. - * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Likewise, but - delete ugly macro and replace with pretty function. - -2001-01-25 Mark Elbrecht - - * coff-go32.c: Update copyright. - * coff-stgo32.c: Likewise. - * coff-go32.c (COFF_LONG_FILENAMES): Define. - * coff-stgo32.c (COFF_LONG_FILENAMES): Likewise. - * coff-go32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Remove .bss entry. - * coff-stgo32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise. - -2001-01-25 Kazu Hirata - - * bfd-in2.h: Rebuild. - * libbfd.h: Likewise. - -2001-01-23 H.J. Lu - - * bfd-in2.h: Rebuild. - -2001-01-23 H.J. Lu - - * vms-misc.c (_bfd_vms_next_record): Return -1 if PRIV(vms_buf) - is NULL or PRIV(vms_rec) is outside of the buffer. - -2001-01-23 Kazu Hirata - - * coff64-rs6000.c: Fix formatting. - * coff-arm.c: Likewise. - * coffgen.c: Likewise. - * cofflink.c: Likewise. - * coff-mcore.c: Likewise. - * coff-mips.c: Likewise. - * coff-pmac.c: Likewise. - * coff-ppc.c: Likewise. - * coff-rs6000.c: Likewise. - * elf32.c: Likewise. - * elf32-fr30.c: Likewise. - * elf32-i370.c: Likewise. - * elf32-i860.c: Likewise. - * elf32-m32r.c: Likewise. - * elf32-m68k.c: Likewise. - * elf32-mcore.c: Likewise. - * elf32-ppc.c: Likewise. - * elf32-sh.c: Likewise. - * elf32-v850.c: Likewise. - * elf64-alpha.c: Likewise. - * elf64-sparc.c: Likewise. - * elflink.c: Likewise. - * elflink.h: Likewise. - * elf-m10200.c: Likewise. - * elf-m10300.c: Likewise. - * elfxx-ia64.c: Likewise. - - * aoutx.h: Fix formatting. - * bfd.c: Likewise. - * bfd-in2.h: Likewise. - * bfd-in.h: Likewise. - * cpu-i386.c: Likewise. - * cpu-m68hc11.c: Likewise. - * dwarf2.c: Likewise. - * elf64-x86-64.c: Likewise. - * format.c: Likewise. - * freebsd.h: Likewise. - * hash.c: Likewise. - * hp300hpux.c: Likewise. - * hppabsd-core.c: Likewise. - * hpux-core.c: Likewise. - -2001-01-22 Bo Thorsen - - * elf64-x86-64.c: Added PIC support for X86-64. - (elf64_x86_64_link_hash_newfunc): Function added. - (elf64_x86_64_link_hash_table_create): Likewise. - (elf64_x86_64_check_relocs): Likewise. - (elf64_x86_64_gc_mark_hook): Likewise. - (elf64_x86_64_gc_sweep_hook): Likewise. - (elf64_x86_64_adjust_dynamic_symbol): Likewise. - (elf64_x86_64_size_dynamic_sections): Likewise. - (elf64_x86_64_discard_copies): Likewise. - (elf64_x86_64_finish_dynamic_symbol): Likewise. - (elf64_x86_64_finish_dynamic_sections): Likewise. - (elf64_x86_64_relocate_section): Add relocation of PIC sections. - -2001-01-21 Maciej W. Rozycki - - * Makefile.am (install-data-local): Make use of $(DESTDIR). - * Makefile.in: Regenerate. - -2001-01-21 Kazu Hirata - - * coff-a29k.c: Fix formatting. - -2001-01-19 H.J. Lu - - * elf32-i386.c (elf_i386_check_relocs): Report files with bad - relocation section names. - (elf_i386_relocate_section): Report files with bad relocation - section names and return false. - -2001-01-17 Bo Thorsen - - * targets.c: Alphabetize list of xvecs. - -2001-01-14 Alan Modra - - * config.bfd: Add linux target variant for elfxx-hppa. - * configure.in: Recognize bfd_elf32_hppa_linux_vec and - bfd_elf64_hppa_linux_vec. - * configure: Regenerate. - * elf64-hppa.c: Include elf64-target.h again to support linux - target variant. - (elf64_hppa_post_process_headers): Set ELFOSABI_LINUX for linux. - * elf32-hppa.c: Include elf32-target.h again to support linux - target variant. - (elf32_hppa_post_process_headers): New function. - (elf_backend_post_process_headers): Define. - * targets.c (bfd_target_vector): Add bfd_elf64_hppa_linux_vec and - bfd_elf32_hppa_linux_vec. - - * elf32-hppa.c (elf32_hppa_link_hash_table): Add text_segment_base, - and data_segment_base fields. - (elf32_hppa_link_hash_table_create ): Init them. - (elf32_hppa_check_relocs): Update comments. - (hppa_record_segment_addr): New function. - (elf32_hppa_relocate_section): Call it. - (final_link_relocate): Handle R_PARISC_SEGREL32. - (elf32_hppa_final_link): New function. - (bfd_elf32_bfd_final_link): Define to call it. - (hppa_unwind_entry_compare): New function. - * cache.c (bfd_open_file): Create files in write+read mode. - - * elf-hppa.h (elf_hppa_howto_table): Set bitsize value for - SEGREL32 and numerous other relocs. Change duplicate - R_PARISC_NONE relocs to R_PARISC_UNIMPLEMENTED. - - * opncls.c (bfd_fdopenr): Add parens like the comment says around - O_ACCMODE. - - * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Don't create - .plt entries for DT_INIT and DT_FINI. - (elf32_hppa_finish_dynamic_sections): Remove special handling of - DT_INIT and DT_FINI. - - * elf64-hppa.c (elf64_hppa_finish_dynamic_symbol): Use 16-bit - offsets for stub .plt access if wide mode. Check offset in range. - -2001-01-13 Nick Clifton - - * elf32-fr30.c (fr30_elf_howto_table): Remove spurious blank - line. - - * coffcode.h (coff_canonicalize_reloc): Remove spurious blank - line. - -2001-01-12 Alan Modra - - * configure.in ([bfd_elf64_x86_64_vec]): Set target64. - * configure: Regenerate. - -2001-01-11 Peter Targett - - * bfd-in2.h (bfd_architecture): Add bfd_mach_arc_5, - bfd_mach_arc_6, bfd_mach_arc_7, bfd_mach_arc_8 for ARC variants. - * cpu-arc.c (arch_info_struct): Add entries for variants. - (bfd_arc_arch) Set default to bfd_mach_arc_5. - (arc_get_mach) Don't assume machine names prefixed arc- before - testing. - * elf32-arc.c (arc_elf_object_p): Set machine number based on new - selections. - (arc_elf_final_write_processing) Likewise. - (ELF_MACHINE_CODE) Use EM_ARC. - -2001-01-10 Nick Clifton - - * coff-arm.c (LOCAL_LABEL_PREFIX): Change definition to "". - -2001-01-07 Philip Blundell - - * README: Replace `bug-gnu-utils@gnu.org' with - `bug-binutils@gnu.org'. - -2001-01-04 Kazu Hirata - - * som.c: Fix formatting. - -2001-01-03 Kazu Hirata - - * ecoffswap.h: Fix formatting. - * elf-bfd.h: Likewise. - * elfarm-nabi.c: Likewise. - * elfarm-oabi.c: Likewise. - * elfcode.h: Likewise. - * elfcore.h: Likewise. - * elflink.c: Likewise. - * elflink.h: Likewise. - * elfxx-ia64.c: Likewise. - * elfxx-target.h: Likewise. - * libbfd.c: Likewise - * linker.c: Likewise. - * lynx-core.c: Likewise. - -2001-01-02 Kazu Hirata - - * pc532-mach.c: Fix formatting. - * pe-arm.c: Likewise. - * pe-i386.c: Likewise. - * pe-mips.c: Likewise. - * pe-ppc.c: Likewise. - * pe-sh.c: Likewise. - * pei-mips.c: Likewise. - * pei-sh.c: Likewise. - * peicode.h: Likewise. - * ppcboot.c: Likewise. - * ptrace-core.c: Likewise. - -2001-01-01 Kazu Hirata - - * reloc.c: Fix formatting. - * riscix.c: Likewise. - * rs6000-core.c: Likewise. - * xcoff-target.h: Likewise. - -2000-12-29 Hans-Peter Nilsson - - * elfcode.h (elf_object_p): Also restore the bfd mach field on - error, by calling bfd_default_set_arch_mach with incoming - values. - -2000-12-26 Kazu Hirata - - * vaxnetbsd.c: Fix formatting. - * versados.c: Likewise. - * vms-gsd.c: Likewise. - * vms-hdr.c: Likewise. - * vms-misc.c: Likewise. - -2000-12-25 Alexandre Oliva - - * archive.c (coff_write_armap): Don't write more than symbol_count - `archive_member_file_ptr's. - -2000-12-25 Kazu Hirata - - * vms-tir.c: Fix formatting. - -2000-12-23 Kazu Hirata - - * vms.c: Fix formatting. - * vms.h: Likewise. - -2000-12-21 Santeri Paavolainen - - * vms-hdr.c: Include alloca.h if HAVE_ALLOCA_H is defined. - - * peicode.h (pe_ILF_object_p): Add const to import of TARGET_LITTLE_SYM. - - * elf32-m32r.c (m32r_elf_generic_reloc): Add cast to avoid (void *) - arithmetic. - - * elf32-fr30.c: Add casts to avoid (void *) arithmetic. - - * coffcode.h (styp_to_sec_flags): Add empty statement after label. - -2000-12-21 Richard Sandiford - - * libbfd.c (bfd_get_bits): Added - (bfd_put_bits): Likewise - * bfd-in.h: Declared the above. - * bfd-in2.h: Regenerated. - -2000-12-20 Kazu Hirata - - * targets.c: Fix formatting. - * tekhex.c: Likewise. - * trad-core.c: Likewise. - -2000-12-19 Kazu Hirata - - * sco5-core.c: Fix formatting. - * section.c: Likewise. - * sparclinux.c: Likewise. - * sparclynx.c: Likewise. - * sparcnetbsd.c: Likewise. - * srec.c: Likewise. - * stabs.c: Likewise. - * stab-syms.c: Likewise. - * sunos.c: Likewise. - * syms.c: Likewise. - * sysdep.h: Likewise. - -2000-12-18 Nick Clifton - - * coff-arm.c (EXTRA_S_FLAGS): Only define if not already - defined. - * epoc-pe-arm.c (EXTRA_S_FLAGS): Define. - * epoc-pei-arm.c (EXTRA_S_FLAGS): Define. - -2000-12-18 Nick Clifton - - * vms-misc.c (_bfd_vms_get_record): Add default case to - file_format switch. - -2000-12-15 Miloslav Trmac - - * elfcore.h (elf_core_file_p): Move to the start of the program - headers before attempting to read them. - -2000-12-14 Kazu Hirata - - * peigen.c: Fix formatting. - * som.c: Likewise. - * som.h: Likewise. - -2000-12-13 Kazu Hirata - - * peigen.c: Fix formatting. - -2000-12-12 Jim Wilson - - * elfxx-ia64.c (get_dyn_sym_info): Cast %p argument to void *. - -2000-12-08 Mark Salter - - * binary.c (binary_set_section_contents): Ignore sections - with zero size. - -2000-12-12 Kazu Hirata - - * m68klinux.c: Fix formatting. - * m68knetbsd.c: Likewise. - * mipsbsd.c: Likewise. - * netbsd-core.c: Likewise. - * netbsd.h: Likewise. - * newsos3.c: Likewise. - * nlm32-alpha.c: Likewise. - * nlm32-i386.c: Likewise. - * nlm32-ppc.c: Likewise. - * nlm32-sparc.c: Likewise. - * nlmcode.h: Likewise. - * nlmswap.h: Likewise. - * nlm-target.h: Likewise. - * ns32knetbsd.c: Likewise. - -2000-12-10 Fred Fish - - * elflink.h (elf_link_output_extsym): Don't complain about undefined - symbols in shared objects if allow_shlib_undefined is true. - -2000-12-12 Nick Clifton - - * cpu-sh.c: Fix formattng. - * elf.c: Fix formattng. - * elf32-mips.c: Fix formattng. - * elf32-sh.c: Fix formattng. - * elf64-alpha.c: Fix formattng. - -2000-12-09 Nick Clifton - - * elf32-mips.c (_bfd_mips_elf_find_nearest_line): Pass - dwarf2_find_line_info as last parameter to invocation of - _bfd_dwarf2_find_nearest_line. - * elf32-arm.h (elf32_arm_find_nearest_line): Pass - dwarf2_find_line_info as last parameter to invocation of - _bfd_dwarf2_find_nearest_line. - -2000-12-08 Mark Elbrecht - - * Makefile.am (BFD32_BACKENDS): Move dwarf2.lo from here... - (BFD_LIBS): ...to here. - (BFD32_BACKENDS_CFILES): Move dwarf2.c from here... - (BFD_LIBS_CFILES): ...to here. - * Makefile.in: Regenerate. - * configure.in: Remove dwarf.lo from the elf shell variable. - * configure: Regenerate. - * libcoff-in.h (coff_tdata): Add pointer dwarf2_find_line_info. - * libcoff.h: Regenerate. - * coffgen.c (coff_find_nearest_line): Call - _bfd_dwarf2_find_nearest_line. - * dwarf2.c (_bfd_dwarf2_find_nearest_line): Add parameter. Update - accordingly. - (read_abbrevs): Likewise - (decode_line_info): Likewise. - (parse_comp_unit): Likewise. - (comp_unit_find_nearest_line): Likewise. - * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Update prototype. - * libbfd.h: Regenerate. - * elf.c (_bfd_elf_find_nearest_line): Update call. - * elf-bfd.h (elf_obj_tdata): Change dwarf2_find_line_info to type PTR. - * dwarf2.c (concat_filename): Use IS_ABSOLUTE_PATH. - * coffcode.h (STYP_XCOFF_DEBUG, STYP_DEBUG_INFO): New macros. - (sec_to_styp_flags): Use them. Handle DWARF2 sections. - (styp_to_sec_flags): Handle DWARF2 sections. - * elf32-arm.h (elf32_arm_find_nearest_line): Add parameter to call - to _bfd_find_nearest_line. - * elf32-mips.c (_bfd_mips_elf_find_nearest_line): Add parameter to - call to _bfd_find_nearest_line. - -2000-12-08 Kazu Hirata - - * coffgen.c: Fix formatting. - * elf-m10300.c: Likewise. - * elf32-i386.c: Likewise. - * elf32-i960.c: Likewise. - * elf32-m68k.c: Likewise. - * elf32-mcore.c: Likewise. - * elf32-ppc.c: Likewise. - * elf32-sh.c: Likewise. - * elf32-sparc.c: Likewise. - * elf32-v850.c: Likewise. - * elf64-alpha.c: Likewise. - * elf64-hppa.c: Likewise. - * elf64-mips.c: Likewise. - * elf64-sparc.c: Likewise. - -2000-12-07 Kazu Hirata - - * elf32-ppc.c: Fix formatting. - * elf64-x86-64.c: Likewise. - -2000-12-06 Ulf Carlsson - - From Ralf Baechle - - * elf32-mips.c (elf32_mips_merge_private_bfd_data): Always permit - BFDs containing no sections or empty .text, .data or .bss sections - to be merged, regardless of their flags. - -2000-12-06 Kazu Hirata - - * elf32-m32r.c: Fix formatting. - * elf32-m68hc11.c: Likewise. - * elf32-m68hc12.c: Likewise. - * elf32-m68k.c: Likewise. - * elf32-mcore.c: Likewise. - * elf32-pj.c: Likewise. - * elf32-ppc.c: Likewise. - -2000-12-05 Kazu Hirata - - * elf32-fr30.c: Fix formatting. - * elf32-hppa.c: Likewise. - * elf32-i370.c: Likewise. - * elf32-i386.c: Likewise. - * elf32-i860.c: Likewise. - * elf32-i960.c: Likewise. - -2000-12-03 Kazu Hirata - - * elf32-arm.h: Fix formatting. - * elf32-avr.c: Likewise. - * elf32-cris.c: Likewise. - * elf32-d10v.c: Likewise. - * elf32-d30v.c: Likewise. - * elf-hppa.h: Likewise. - * elf-m10200.c: Likewise. - * elf-m10300.c: Likewise. - -2000-12-01 Chris Demetriou - - * aoutx.h (NAME(aout,machine_type)): Add bfd_mach_mips32 and - bfd_mach_mips32_4k. Update FIXME comment. - * archures.c (bfd_mach_mips32): New constant. - (bfd_mach_mips4K, bfd_mach_mips32_4k) Rename the former to - the latter, renumber it. - * bfd-in2.h (bfd_mach_mips32): New constant. - (bfd_mach_mips4K, bfd_mach_mips32_4k) Rename the former to - the latter, renumber it. - * cpu-mips.c (I_mips32): New constant. - (I_mips4K, I_mips32_4k): Rename the former to the latter. - (arch_info_struct): Add bfd_mach_mips32 entry, replace - bfd_mach_mips4K entry with bfd_mach_mips32_4k entry. - * elf32-mips.c (elf_mips_isa): Add E_MIPS_ARCH_32 case. - (elf_mips_mach): Likewise. Also, replace E_MIPS_MACH_MIPS32 - with E_MIPS_MACH_MIPS32_4K. - (_bfd_mips_elf_final_write_processing): Replace - bfd_mach_mips4K with bfd_mach_mips32_4k case, add - bfd_mach_mips32 case. - (_bfd_mips_elf_merge_private_bfd_data): Generalize ISA mixing - comparison with support for MIPS32. - (_bfd_mips_elf_print_private_bfd_data): Print ISA name for - MIPS32. - - * aoutx.h (NAME(aout,machine_type)): Add cases for - bfd_mach_mips5 and bfd_mach_mips64. - * archures.c (bfd_mach_mips5, bfd_mach_mips64): New constants. - * bfd-in2.h (bfd_mach_mips5, bfd_mach_mips64): Likewise. - * cpu_mips.c (I_mips5, I_mips64): New definitions. - (arch_info_struct): Add entries for bfd_mach_mips5 and - bfd_mach_mips64. - * elf32-mips.c (elf_mips_isa, elf_mips_mach, - _bfd_mips_elf_print_private_bfd_data): Add cases for - E_MIPS_ARCH_5 and E_MIPS_ARCH_64. - (_bfd_mips_elf_final_write_processing): Add cases for - bfd_mach_mips5 and bfd_mach_mips64. - - * aoutx.h (NAME(aout,machine_type)): Add a - bfd_mach_mips_sb1 case. - * archures.c (bfd_mach_mips_sb1): New constant. - * bfd-in2.h (bfd_mach_mips_sb1): New constant. - * cpu-mips.c (I_sb1): New constant. - (arch_info_struct): Add entry for bfd_mach_mips_sb1. - * elf32-mips.c (elf_mips_mach): Add case for - E_MIPS_MACH_SB1. - (_bfd_mips_elf_final_write_processing): Add case for - bfd_mach_mips_sb1. - -2000-12-01 Joel Sherrill - - * config.bfd (arm-*-rtems*, a29k-*rtems*): New targets. - (sparc*-*-rtemself*, sparc*-*-rtemsaout*): New targets. - (sparc*-*-rtems*): Switched from a.out to ELF. - -2000-11-30 Jan Hubicka - - * Makefile.am (BFD64_BACKENDS): Add elf64-x86-64.lo - BFD64_BACKENDS_CFILES): Add elf64-x86-64.c - (elf64-x86-64.lo): Add dependencies. - * archures.c (DESCRIPTION): Add bfd_mach_x86_64, - bfd_mach_x86_64_intel_syntax. - * elf.c (prep_headers): Use EM_x86_64 for 64bit output. - * config.bfd (x86_64): Add. - * configure.in: Add support for bfd_elf64_x86_64_vec. - * cpu-i386.c (bfd_x86_64_arch_intel_syntax, bfd_x86_64_arch): Add. - (bfd_i386_arch, i8086_ar): Link in. - * elf64-x86-64.c: New file. - * reloc.c (ENUMDOC): Add BFD_RELOC_X86_64*. - * targets.c (bfd_elf64_x86_64_vec): Add. - (bfd_target_vect): Add bfd_elf64_x86_64_vec. - -2000-11-30 Kazu Hirata - - * xcofflink.c: Fix formatting. - -2000-11-28 Kazu Hirata - - * aoutx.h: Fix formatting. - * bfd-in.h: Likewise. - * bfd-in2.h: Likewise. - * cache.c: Likewise. - * cisco-core.c: Likewise. - * coff64-rs6000.c: Likewise. - * coffcode.h: Likewise. - * coffswap.h: Likewise. - * corefile.c: Likewise. - * elf32-mips.c: Likewise. - -2000-11-27 Kazu Hirata - - * aout-adobe.c: Fix formatting. - * coff64-rs6000.c: Likewise. - * coffgen.c: Likewise. - * cofflink.c: Likewise. - -2000-11-27 Philip Blundell - - * libcoff-in.h (coff_tdata): Add `strings_written' flag. - (obj_coff_strings_written): New accessor macro for above. - * libcoff.h: Regenerate. - * cofflink.c (_bfd_coff_final_link): Say that we wrote the - strings. - * coffcode.h (coff_write_object_contents): No need to write out - the string table if it's already been done. - -2000-11-22 Philip Blundell - - * cofflink.c (_bfd_coff_generic_relocate_section): Don't object to - weak undefined symbols. - -2000-11-24 Nick Clifton - - * archures.c (bfd_mach_arm_5TE): Define. - (bfd_mach_arm+XScale): Define. - * bfd-in2.h: Regenerate. - - * coff-arm.c (coff_arm_reloc_type_lookup): Accept - BFD_RELOC_ARM_PCREL_BLX. - - * coffcode.h (coff_set_flags): Set flags for 5t, 5te and - XScale machine numbers. - - * config.bfd (xscale-elf): Add target. - (xscale-coff): Add target. - - * cpu-arm.c: Add xscale machine name. - Add v5t, v5te and XScale machine numbers. - -2000-11-23 Kazu Hirata - - * aix386-core.c: Fix formatting. - -2000-11-22 Jim Wilson - - * coff-ia64.c (howto_table): Use EMPTY_HOWTO. - (in_reloc_p): Add ATTRIBUTE_UNUSED to unused parameters. - * cpu-ia64-opc.c (ins_rsvd, ext_rsvd, ins_const, ext_const): Likewise. - (ins_imms_scaled): Initialize sign_bit at function entry. - (elf64_ia64_operands): Add missing initializers. - * elfxx-ia64.c (elfNN_ia64_reloc, elfNN_ia64_reloc_type_lookup, - elfNN_ia64_info_to_howto, elfNN_ia64_fake_sections, - elfNN_ia64_add_symbol_hook, elfNN_ia64_is_local_label_name, - elfNN_ia64_local_hash_table_init, get_fptr, get_pltoff, - elfNN_ia64_adjust_dynamic_symbol): Add ATTRIBUTE_UNUSED for unused - parameters. - (elfNN_ia64_info_to_howto): Initialize free_relocs, free_contents, - and free_extsyms at function entry. - (elfNN_add_symbol_hook): Add unsigned cast to bfd_get_gp_size result. - (elfNN_ia64_create_dynamic_sections): Delete unused local h. - (get_got): Delete unused local srel. - (elfNN_ia64_check_relocs): Initialize dynrel_type when declared. - (elfNN_ia64_relocate_section): Delete unused local dynindx. - -2000-11-21 Kazu Hirata - - * coff-a29k.c: Fix formatting. - * coff-h8500.c: Likewise. - * coff-i960.c: Likewise. - * coff-ppc.c: Likewise. - * coff-rs6000.c: Likewise. - * coff-stgo32.c: Likewise. - * coff-tic54x.c: Likewise. - * coff-w65.c: Likewise. - * cpu-h8500.c: Likewise. - * cpu-hppa.c: Likewise. - * cpu-ns32k.c: Likewise. - * ecoff.c: Likewise. - * ecofflink.c: Likewise. - -2000-11-21 Nick Clifton - - * elf32-sh.c (sh_elf_reloc_loop): Fix compile time warning, and - remove possibility of infinite loop. - -2000-11-20 Kazu Hirata - - * aix386-core.c: Fix formatting. - * aout-adobe.c: Likewise. - * aout-arm.c: Likewise. - * aout-encap.c: Likewise. - * aout-ns32k.c: Likewise. - * aout-target.h: Likewise. - * aout-tic30.c: Likewise. - * aoutf1.h: Likewise. - * aoutx.h: Likewise. - * archive.c: Likewise. - * bfd-in.h: Likewise. - * bfd-in2.h: Likewise. - * bfd.c: Likewise. - * bout.c: Likewise. - -2000-11-17 H.J. Lu - - * elfxx-ia64.c (elfNN_ia64_size_dynamic_sections): Don't create - pltoff entries for DT_INIT and DT_FINI. - (elfNN_ia64_final_link): Don't set DT_INIT/FINI entries. - (elfNN_ia64_finish_dynamic_sections): Don't fill in DT_INIT/FINI - entries. - -2000-11-16 Richard Henderson - - * elfxx-ia64.c (elfNN_ia64_check_relocs): Handle IPLT relocs. - (allocate_dynrel_entries): Likewise. - (elfNN_ia64_relocate_section): Likewise. Set REL addends correctly. - (set_pltoff_entry): Likewise. - (ia64_howto_table): Remove R_IA64_SEGBASE, and R_IA64_EPLT[ML]SB - (elfNN_ia64_reloc_type_lookup): Likewise. - (elfNN_ia64_install_value): Likewise. - (elfNN_ia64_relocate_section): Likewise. - * reloc.c (BFD_RELOC_IA64_SEGBASE): Remove. - (BFD_RELOC_IA64_EPLTMSB, BFD_RELOC_IA64_EPLTLSB): Remove. - -2000-11-16 Kazu Hirata - - * cpu-a29k.c: Fix formatting. - * cpu-alpha.c: Likewise. - * cpu-arm.c: Likewise. - * cpu-avr.c: Likewise. - * cpu-d10v.c: Likewise. - * cpu-h8500.c: Likewise. - * cpu-hppa.c: Likewise. - * cpu-i370.c: Likewise. - * cpu-i386.c: Likewise. - * cpu-i960.c: Likewise. - * cpu-ia64-opc.c: Likewise. - * cpu-ia64.c: Likewise. - * cpu-m32r.c: Likewise. - * cpu-m68hc11.c: Likewise. - * cpu-m68hc12.c: Likewise. - * cpu-m68k.c: Likewise. - * cpu-m88k.c: Likewise. - * cpu-mips.c: Likewise. - * cpu-ns32k.c: Likewise. - * cpu-pj.c: Likewise. - * cpu-powerpc.c: Likewise. - * cpu-sh.c: Likewise. - * cpu-sparc.c: Likewise. - * cpu-tic54x.c: Likewise. - * cpu-v850.c: Likewise. - * cpu-vax.c: Likewise. - * cpu-w65.c: Likewise. - * cpu-we32k.c: Likewise. - * cpu-z8k.c: Likewise. - * dwarf1.c: Likewise. - * dwarf2.c: Likewise. - -2000-11-15 Kazu Hirata - - * coff-arm.c: Fix formatting. - * coff-ppc.c: Likewise. - * coff-rs6000.c: Likewise. - * coff-sh.c: Likewise. - * coff-sparc.c: Likewise. - * coff-tic30.c: Likewise. - * coff-tic54x.c: Likewise. - * coff-tic80.c: Likewise. - * coff-w65.c: Likewise. - * coff-we32k.c: Likewise. - * coff-z8k.c: Likewise. - -2000-11-15 Richard Henderson - - * elf64-alpha.c (elf64_alpha_check_relocs): Create the reloc - section with the same ALLOC|LOAD flags as the source section. - -2000-11-14 Jakub Jelinek - - * elf64-alpha.c (elf64_alpha_relax_opt_call): Only check bits used - by STO_ALPHA constants. - -2000-11-14 Kazu Hirata - - * coff-pmac.c: Fix formatting. - * coff-ppc.c: Likewise. - -2000-11-13 H.J. Lu - - * elflink.h (elf_link_add_object_symbols): Also add indirect - symbols for common symbols with the default version. - -2000-11-09 Philip Blundell - - * section.c (STD_SECTION): Set gc_mark flag. - -2000-11-11 Kazu Hirata - - * coff-i960.c: Likewise. - * coff-m68k.c: Likewise. - * coff-m88k.c: Likewise. - * coff-mcore.c: Likewise. - * coff-mips.c: Likewise. - -2000-11-11 Bernd Schmidt - - * elf32-sh.c (sh_elf_relocate_section): Ignore R_SH_NONE relocs. - -2000-11-10 Kazu Hirata - - * coff-h8300.c: Fix formatting. - * coff-h8500.c: Likewise. - * coff-i386.c: Likewise. - * coff-i860.c: Likewise. - * coff-i960.c: Likewise. - * coff-ia64.c: Likewise. - -2000-11-09 Kazu Hirata - - * archive.c: Fix formatting. - * archures.c: Likewise. - -2000-11-07 Richard Henderson - - * elfxx-ia64.c (elf64_ia64_final_link): New local unwind_output_sec. - Set it before bfd_elf64_bfd_final_link call. Use it after the call. - * section.c (bfd_set_section_contents): Call memcpy if - section->contents set and location not equal to contents plus offset. - -2000-11-08 Kazu Hirata - - * bfd-in.h: Fix formatting. - * bfd-in2.h: Likewise. - * bfd.c: Likewise. - * binary.c: Likewise. - * bout.c: Likewise. - * coff-a29k.c: Likewise. - * coff-alpha.c: Likewise. - * coff-apollo.c: Likewise. - * coff-aux.c: Likewise. - -2000-11-07 Kazu Hirata - - * aix386-core.c: Fix formatting. - * aoutf1.h: Likewise. - * aoutx.h: Likewise. - * archures.c: Likewise. - * armnetbsd.c: Likewise. - -2000-11-07 Alan Modra - - * coff-h8300.c (special): Adjust reloc address. - -2000-11-06 Steve Ellcey - - * archures.c (bfd_mach_ia64_elf64, bfd_mach_ia64_elf32): Add defines - to differentiate elf32 and elf64 on ia64. - * bfd-in2.h: Regenerate. - * config.bfd: Add target for "ia64*-*-hpux*". - * configure.in: Add bfd_elf32_ia64_big_vec to selvecs switch. - * configure: Regenerate. - * cpu-ia64.c (bfd_ia64_elf32_arch): Add elf32 arch info structure. - * targets.c: Add bfd_target bfd_elf32_ia64_big_vec. - - * Makefile.am: Make elf32-ia64.c and elf64-ia64.c derived objects - from elfxx-ia64.c. Add depenency rules for making elf32-ia64.lo. - * Makefile.in: Regnerate. - * elf64-ia64.c: Deleted. - * elfxx-ia64.c: New file, paramaterized version of elf64-ia64.c. - -2000-11-06 Kazu Hirata - - * aout-adobe.c: Fix formatting. - * aout-arm.c: Likewise. - * aout-cris.c: Likewise. - * aout-encap.c: Likewise. - * aout-ns32k.c: Likewise. - * aout-target.h: Likewise. - * aout-tic30.c: Likewise. - -2000-11-05 Philip Blundell - - * elf32-arm.h (elf32_arm_merge_private_bfd_data): Always permit - BFDs containing no sections to be merged, regardless of their flags. - -2000-11-04 Philip Blundell - - * elf32-arm.h (elf32_arm_relocate_section): Suppress error message - if a relocation for an undefined symbol also results in an - overflow. - -2000-11-06 Christopher Faylor - - * config.bfd: Add support for Sun Chorus. - -2000-11-05 David O'Brien - - * configure.in: Recognize alpha-*-freebsd*. - * configure: Regenerate. - -2000-11-02 Luciano Gemme - - * srec.c (CHUNK): Rename to DEFAULT_CHUNK. - (Chunk): New global variable set by a parameter in objcopy.c. - (S3Forced): New global variable set by a parameter in - objcopy.c. - (srec_set_section_contents): If S3Forced is true, always generate - S3 records. - (srec_write_section): Use 'Chunk' to limit maximum length of S - records. - -2000-11-02 Per Lundberg - - * config.bfd: Add support for i[3456]86-chaosdev-storm-chaos. - * Makefile.in: Regenerate. - * bfd-in2.h: Regenerate. - * po/bfd.pot: Regenerate. - -2000-10-31 Philip Blundell - - * elf32-arm.h (elf32_arm_merge_private_bfd_data): Only handle - EF_SOFT_FLOAT if it is defined. - -2000-10-27 Philip Blundell - - * elf32-arm.h (elf32_arm_copy_private_bfd_data): Don't refuse - attempts to mix PIC code with non-PIC, just mark the output as - being position dependent. - (elf32_arm_merge_private_bfd_data): Likewise. Print an error - message for EF_SOFT_FLOAT mismatches. Display diagnostics for - all mismatches, not just the first one. - -2000-10-25 Chris Demetriou - - * ieee.c (ieee_archive_p): Plug one of many possible - memory leaks in error handling. - -2000-10-20 Jakub Jelinek - - * elf32-sparc.c (elf32_sparc_merge_private_bfd_data, - elf32_sparc_object_p, elf32_sparc_final_write_processing): - Support v8plusb. - * elf64-sparc.c (sparc64_elf_merge_private_bfd_data, - sparc64_elf_object_p): Support v9b. - * archures.c: Declare v8plusb and v9b machines. - * bfd-in2.h: Ditto. - * cpu-sparc.c: Ditto. - -2000-10-16 Geoffrey Keating - - * elf64-sparc.c (sparc64_elf_relocate_section): Clear the location - of a GOT reloc. - - * elf32-ppc.c (SYMBOL_REFERENCES_LOCAL): New macro. - (SYMBOL_CALLS_LOCAL): New macro. - (ppc_elf_adjust_dynamic_symbol): Use SYMBOL_CALLS_LOCAL. - (ppc_elf_check_relocs): Use SYMBOL_REFERENCES_LOCAL. - (ppc_elf_finish_dynamic_symbol): Use SYMBOL_REFERENCES_LOCAL. - (ppc_elf_relocate_section): Use flag variable to determine - whether the relocation refers to a local symbol. - Test whether a PLTREL24 reloc will produce a reloc by looking - to see whether a PLT entry was made. - -2000-10-14 Geoffrey Keating - - * elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Don't make PLT - entries that could serve as a definition for a weak symbol. - -2000-10-13 Ulf Carlsson - - From Ralf Baechle - - * elf32-mips.c (mips_elf_create_dynamic_relocation): New argument - local_p. Add symbol value only for non-R_MIPS_REL32 relocations - against local symbols. - (_bfd_mips_elf_finish_dynamic_sections): Undo patch from 2000-10-01. - -2000-10-12 Alan Modra - - * section.c (struct sec): Add kept_section. - (struct bfd_comdat_info): Remove sec, we can use above. - (STD_SECTION): Add initializer. - (bfd_make_section_anyway): Init here too. - - * bfd-in2.h: Regenerate. - - * elflink.h (elf_link_add_object_symbols): Remove unnecessary - zeroing of `flags'. - (elf_link_input_bfd): Set all asection->symbol->value's here, and - fudge values for discarded link-once section symbols. - - * elf64-hppa.c: Include alloca-conf.h - -2000-10-11 Alan Modra - - * elf.c (swap_out_syms): Revert 2000-10-07 changes. - - * ieee.c (ieee_make_empty_symbol): Oops, bfd_zalloc needs another arg. - -2000-10-10 Alan Modra - - * ieee.c (ieee_make_empty_symbol): Use bfd_zalloc, not bfd_zmalloc. - -2000-10-10 Tom Rix - - * section.c (bfd_make_section_anyway): Release newsect ptr when - newsect->symbol fails to alloc. Use bfd_release instead of free. - -2000-10-09 Richard Henderson - - * elflink.h (size_dynamic_sections): Don't create various tags if - .dynstr is excluded from the link. Don't set first dynsym entry - if dynsymcount is zero. - (elf_bfd_final_link): Don't try to swap out dynamic syms if - .dynsym excluded from the link. Don't try to write any dynamic - sections excluded from the link. - - * elf.c (swap_out_syms): Handle global section symbols. - -2000-10-05 DJ Delorie - - * peigen.c (_bfd_pei_swap_scnhdr_out): note extended relocs - * coffcode.h (coff_set_alignment_hook): read extended reloc count - (coff_write_relocs): write extended reloc count - (coff_write_object_contents): account for extended relocs - -2000-10-05 Jim Wilson - - * elf-bfd.h (struct elf_backend_data): Add elf_backend_section_flags - field. - * elf.c (_bfd_elf_make_section_from_shdr): Call the - elf_backend_section_flags function. - * elf64-ia64.c (elf64_ia64_section_from_shdr): Delete flag conversion - code. - (elf64_ia64_section_flags): New function containing flag conversion - code. - (elf_backend_section_flags): Define to elf64_ia64_section_flags. - * elfxx-target.h (elf_backend_section_flags): Define. - (elfNN_bed): Initialize elf_backend_section_flags field. - -2000-10-02 Alan Modra - - * elf32-hppa.c (elf32_hppa_check_relocs): Correct call to - _bfd_elf32_gc_record_vtable. Correct a comment. - -2000-10-01 Ulf Carlsson - - From Ralf Baechle - - * elf32-mips.c (_bfd_mips_elf_finish_dynamic_sections): Mark gld - produces binaries with got[1] = 0x80000001 to differenciate them - for the dynamic linker from the broken binaries produced by old - versions. - -2000-09-30 Petr Sorfa - - * elf.c (elfcore_grok_pstatus): Check for size of pxstatus_t. - (elfcore_grok_lwpstatus): Check for size of lwpxstatus_t. - * configure.in: Add check for pxstatus_t and lwpxstatus_t. - * configure: Regenerate. - -2000-09-27 Hans-Peter Nilsson - - Define two bfd_targets for absence and presence of leading - underscore on symbols. Make sure to only link same kind. - * elf32-cris.c (cris_elf_object_p, - cris_elf_final_write_processing, cris_elf_print_private_bfd_data, - cris_elf_merge_private_bfd_data): New. - (elf_backend_object_p, elf_backend_final_write_processing, - bfd_elf32_bfd_print_private_bfd_data, - bfd_elf32_bfd_merge_private_bfd_data): Define. - : Include elf32-target.h twice with - different macro settings: - (TARGET_LITTLE_SYM): First as bfd_elf32_cris_vec, then as - bfd_elf32_us_cris_vec. - (TARGET_LITTLE_NAME): First as "elf32-cris", then "elf32-us-cris". - (elf_symbol_leading_char): First as 0, then '_'. - (INCLUDED_TARGET_FILE): Define for second include of elf32-target.h. - * config.bfd (cris-*-*): Add bfd_elf32_us_cris_vec to targ_selvecs. - * configure.in (bfd_elf32_cris_vec, cris_aout_vec): New vector. - * configure: Regenerate. - * targets.c: Declare bfd_elf32_us_cris_vec. - * po/bfd.pot: Regenerate. - -2000-09-29 Momchil Velikov - - * elf32-arm.h (arm_add_to_rel): Correctly adjust the addend for - R_ARM_THM_PC22 relocations. - -2000-09-29 NIIBE Yutaka - - * elflink.h (elf_link_add_object_symbols): Don't bfd_release runpath. - -2000-09-29 Momchil Velikov - - * elf.c (elf_fake_sections): Do not mark the section SHT_NOBITS if - is has the SEC_HAS_CONTENTS flag set. - -2000-09-28 Örjan Friberg - Hans-Peter Nilsson - - * aout-cris.c (N_TXTADDR): Define. - -2000-09-28 John David Anglin - - * som.c: Include alloca-conf.h. - * Makefile.am: "make dep-am" - * Makefile.in: Regenerate. - -2000-09-27 Alan Modra - - * elf32-hppa.c (plt_stub): New. - (PLT_STUB_ENTRY): Define. - (elf32_hppa_link_hash_table): Change multi_subspace to packed - boolean. Add need_plt_stub, has_12bit_branch and has_17bit_branch. - (elf32_hppa_link_hash_table_create): Init to suit. - (elf32_hppa_check_relocs): Set has_12bit_branch and - has_17bit_branch as appropriate. - (elf32_hppa_adjust_dynamic_symbol): Set need_plt_stub for - non-local functions. - (elf32_hppa_size_dynamic_sections): Correct setting of reltext. - Add space for plt_stub as needed. - (elf32_hppa_finish_dynamic_symbol): Point .plt entries for global - functions at plt_stub. - (elf32_hppa_finish_dynamic_sections): Write plt_stub. - (elf32_hppa_create_dynamic_sections): Leave .plt executable. - - * elf32-hppa.h (elf32_hppa_size_stubs): Add group_size param. - * elf32-hppa.c (elf32_hppa_size_stubs): Likewise. Use it instead - of fixed size, and if negative, disable handling of input sections - before stub section. Set up default stub group size depending - on detected branch relocs. - (hppa_build_one_stub): Use lrsel and rrsel for import stubs to - ensure different offsets from sym_value aren't rounded to - different 2k blocks. Use lrsel and rrsel for other stubs too for - consistency rather than necessity. - (elf32_hppa_check_relocs): Handle R_PARISC_DIR14F. - (final_link_relocate): Likewise. - (elf32_hppa_relocate_section): Likewise. - - * elf-hppa.h (elf_hppa_howto_table): Add R_PARISC_DIR14F reloc. - (_bfd_elf_hppa_gen_reloc_type): Generate them. - (elf_hppa_final_link_relocate): Handle them. - (elf_hppa_relocate_insn): Likewise. - (_bfd_elf_hppa_gen_reloc_type): Add missing e_ldsel and e_rdsel cases. - -2000-09-26 Hans-Peter Nilsson - - * elfcode.h (elf_object_p): Preserve and clear abfd section - information. Restore at error. - -2000-09-26 Paul Sokolovsky - - * peigen.c (_bfd_pei_swap_aouthdr_in): If some DataDirectory - is empty, make sure that its rva also 0. NT loader dislikes - having otherwise. - -2000-09-26 Steve Ellcey - - * som.c (som_bfd_derive_misc_symbol_info): Make weak symbols - global by default. - -2000-09-21 Alan Modra - - * elf32-hppa.c (elf32_hppa_check_relocs): Fix weak sym handling in - currently unused RELATIVE_DYNAMIC_RELOCS code. - (hppa_discard_copies): Likewise. - (elf32_hppa_size_stubs): Size `input_list' array correctly. Correct - comments. Don't check non-code output sections for stub grouping. - -2000-09-20 Alan Modra - - * section.c (bfd_get_unique_section_name): Return NULL if - bfd_malloc fails. - -2000-09-19 Michael Sokolov - - * elf32-m68k.c (elf_cpu32_plt0_entry): Change the PLT entry 0 - instruction sequence to actually work. - (elf_m68k_finish_dynamic_sections): Change the patch-in offset - accordingly. - -2000-09-18 Alexandre Oliva - - * elf32-sh.c (sh_elf_relocate_section): Use - _bfd_final_link_relocate to apply the relocation against a section - symbol, when doing relocatable links. - -2000-09-18 Alan Modra - - * elf32-hppa.c (elf32_hppa_stub_hash_entry): Rename input_section - to id_sec. - (stub_hash_newfunc): Here too. - (hppa_add_stub): And here. - (elf32_hppa_link_hash_table): Remove stub_section_created, - reloc_section_created, first_init_sec and first_fini_sec. Add - stub_group. - (elf32_hppa_link_hash_table_create): Init to suit. - (hppa_get_stub_entry): Add support for grouping stub sections. - (hppa_add_stub): Likewise. Remove sec_count param and init/fini - section code. Index stub vars by section->id. - (elf32_hppa_size_stubs): Likewise. Remove duplicated function - exit paths. Zap allocation of above removed vars. Refine - link-once test. - - * elf32-hppa.h (elf32_hppa_size_stubs): Add output_bfd param. - * elf32-hppa.c (elf32_hppa_size_stubs): Likewise. - (hppa_get_stub_entry): Pass in pointer to elf32_hppa_link_hash_table - rather than pointer to bfd_link_info. - (hppa_add_stub): Likewise. - (final_link_relocate): Likewise. - -2000-09-17 David Huggins-Daines - - (elf32_hppa_size_stubs): Don't try to build stubs for discarded - link-once sections. - -2000-09-16 Alexandre Oliva - - * elf32-sh.c (ELF_MAXPAGESIZE): Define to 128, to match - ld/emulparams/shelf.sh. - -2000-09-10 Michael Sokolov - - * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): New function. - * bfd-in.h (bfd_m68k_elf32_create_embedded_relocs): Add declaration. - * bfd-in2.h: Regenerate. - -2000-09-15 Kenneth Block - - * elf64-alpha.c (elf64_alpha_relax_with_lituse): ld performs - LITUSE relocations incorrectly if -relax is specified on the ld - command line and the displacement field of the load or store - instruction is non-zero. (Patch by paul.winalski@compaq.com) - -2000-09-15 Alan Modra - - * elf32-hppa.c (hppa_add_stub): Dont set first_init_sec and - first_fini_sec here. - (elf32_hppa_size_stubs): Instead correctly find the first .init - and .fini section here. - -2000-09-15 David Huggins-Daines - - * elf32-hppa.c (clobber_millicode_symbols): New function. - (elf32_hppa_size_dynamic_sections): Call it. - -2000-09-14 Alan Modra - - * elf32-hppa.c (elf32_hppa_link_hash_entry): Make pic_call - packed. Add plabel, plt_abs packed booleans. - (hppa_link_hash_newfunc): Init new fields. - (PLABEL_PLT_ENTRY_SIZE): Define. - (hppa_stub_name): Use size_t len vars. - (hppa_add_stub): Likewise. - (elf32_hppa_build_stubs): Likewise. - (hppa_build_one_stub): Kill some compiler warnings. - (elf32_hppa_check_relocs): Always generate a plt entry for PLABELs - if dynamic linking. Munge the local plt offsets into - local_got_refcounts. Set h->plabel for all global PLABELs. Use - size_t len vars. Add assert for plabel addend. - (elf32_hppa_gc_sweep_hook): Sweep local plt entries too. - (elf32_hppa_hide_symbol): New function. - (elf_backend_hide_symbol): Define. - (elf32_hppa_adjust_dynamic_symbol): Don't throw away plt entries - with h->plabel set. Don't make plt entries to have dynamic syms - when they have been forced local. If plt entry is used by a - plabel, make it PLABEL_PLT_ENTRY_SIZE. - (elf32_hppa_size_dynamic_sections): Set plt_abs for init fns. - Set up .plt offsets for local syms. - (elf32_hppa_relocate_section): Initialise plt entries for local - syms. Leave weak undefined plabels zero. Make global plabel - relocs against function symbol, and leave the addend zero. - Use *ABS* DIR32 relocs instead of SEGREL32 for dynamic got relocs. - (elf32_hppa_finish_dynamic_symbol): Set up IPLT relocs for - non-dynamic syms. Init extra plt for plabels. Use *ABS* DIR32 - relocs instead of SEGREL32 for dynamic got relocs. - (elf32_hppa_finish_dynamic_sections): Reserve one more .got entry. - (elf_backend_got_header_size): Adjust. - (elf32_hppa_set_gp): Calculate an "ideal" LTP. - - * elf32-hppa.c (LONG_BRANCH_VIA_PLT): Define. - (hppa_type_of_stub): Use it instead of #if 0 - (hppa_discard_copies): Use it here too. - (elf32_hppa_size_dynamic_sections): And here. - - * elf32-hppa.c (elf32_hppa_link_hash_table): Remove `offset' field. - (elf32_hppa_link_hash_table_create): And here. - (hppa_build_one_stub): And here. Instead keep track of stub - offset using _raw_size. - (elf32_hppa_size_stubs): Likewise. - (elf32_hppa_build_stubs): Likewise. - (hppa_size_one_stub): Likewise. Resize reloc section too. - - * elf32-hppa.c (hppa_add_stub): Correct first_init_sec and - first_fini_sec handling. Don't search for reloc section or set - hplink->reloc_section_created here. - (elf32_hppa_size_stubs): Instead search for reloc sections, and - set reloc_section_created here. - (hppa_handle_PIC_calls): Set ELF_LINK_HASH_NEEDS_PLT. - (elf32_hppa_size_dynamic_sections): Make a .plt entry for DT_INIT - and DT_FINI. - (elf32_hppa_finish_dynamic_sections): Set DT_INIT and DT_FINI. - - * elf32-hppa.c (hppa_build_one_stub): Replace `elf_hash_table (info)' - with `hplink->root.'. - (elf32_hppa_check_relocs): Likewise. - (elf32_hppa_gc_sweep_hook): Likewise. - (elf32_hppa_adjust_dynamic_symbol): Likewise. - (hppa_handle_PIC_calls): Likewise. - (elf32_hppa_size_dynamic_sections): Likewise. - (elf32_hppa_set_gp): Likewise. - (elf32_hppa_relocate_section): Likewise. - (elf32_hppa_finish_dynamic_symbol): Likewise. - (elf32_hppa_finish_dynamic_sections): Likewise. - - From David Huggins-Daines - * elf32-hppa.c (hppa_type_of_stub): Generate import stubs for - defined weak symbols in shared links. - (final_link_relocate): Calls to defined weak symbols in shared - objects must go via import stubs, as the target might not be known - at link time. - -2000-09-14 Alexandre Oliva - - * elf32-sh.c (sh_elf_howto_table): Moved R_SH_GOT32, R_SH_PLT32, - R_SH_COPY, R_SH_GLOB_DAT, R_SH_JMP_SLOT, R_SH_RELATIVE, - R_SH_GOTOFF, R_SH_GOTPC) to the range from 160 to 167. Replaced - the original entries with EMPTY_HOWTOs, and added new ones to fill - in the gap. - (sh_elf_info_to_howto): Make sure the new gap isn't used. - (sh_elf_relocate_section): Likewise. - -2000-09-13 Anders Norlander - - * cpu-mips.c (arch_info_struct): Add mips:4K - * bfd-in2.h (bfd_mach_mips4K): New define. - * archures.c: Add bfd_mach_mips4K to comment. - * elf32-mips.c (_bfd_mips_elf_final_write_processing): Return - E_MIPS_ARCH_2 for bfd_mach_mips4K. - -2000-09-13 Marco Franzen - - * som.c (som_write_symbol_strings): Do not used fixed buffers, - use size_t as a counter. - (som_write_space_strings): Similarly. - -2000-09-12 Jason Eckhardt - - * elf32-i860.c (elf32_i860_relocate_pc26): New function - and prototype. - (elf32_i860_relocate_section): Invoke new function from here. - -2000-09-11 Michael Sokolov - - * elf.c (_bfd_elf_make_section_from_shdr): Make debug_sec_names - static. - -2000-09-10 Michael Sokolov - - * coff-m68k.c (bfd_m68k_coff_create_embedded_relocs): Emit 8 NULs for - target section name instead of dumping core when the target symbol is - undefined. - -2000-09-09 Kazu Hirata - - * riscix.c: Remove DEFUN. - -2000-09-08 Nick Clifton - - * elf32-arm.h (elf32_arm_merge_private_bfd_data): Do not - initialise flags in output bfd if the input bfd is the default - architecture with the default flags. - -2000-09-08 Kazu Hirata - - * archive.c: Fix formatting. - * coff-arm.c: Likewise. - * doc/chew.c: Likewise. - -2000-09-08 Alan Modra - - * section.c (bfd_get_unique_section_name): Put a dot before the - numeric suffix. - -2000-09-07 Kazu Hirata - - * doc/chew.c: Remove all uses of DEFUN and DEFUN_VOID. - * elf.c: Fix formatting. - -2000-09-07 Alexandre Oliva - - * config.bfd (sh-*-linux*): Added. - * configure.in (bfd_elf32_shlin_vec, bfd_elf32_shblin_vec): New. - * targets.c: Declare them. - * elf32-sh-lin.c: New file. - * Makefile.am: Compile it. - * elf32-sh.c: Don't override defines from elf32-sh-lin.c. - * configure, Makefile.in: Rebuilt. - -2000-09-06 Geoffrey Keating - - * xcofflink.c (xcoff_link_input_bfd): Include the .tocbss - pseduo-section when determining where the TOC ends. - - * coff-rs6000.c (_bfd_xcoff_swap_aux_out): Use bfd_h_put_16 to - output x_tvndx as it is only two bytes wide. - - * coff-rs6000.c (xcoff_howto_table): A modifiable branch-absolute - reloc is 26 or 32 bits wide. - - * coff-rs6000.c (_bfd_xcoff_rtype2howto): The bitsize is irrelevant - for relocs that don't change anything. Also look at the full - 6 bits of bitsize. - -2000-09-06 Philip Blundell - - * config.bfd (arm*-*-uclinux*): New target. - -2000-09-06 Alexandre Oliva - - * configure: Rebuilt with new libtool.m4. - -2000-09-06 Alan Modra - - * section.c (bfd_get_unique_section_name): Avoid c++ reserved - word for variable name. - * bfd-in2.h: Regenerate. - -2000-09-05 Nick Clifton - - * config.in: Regenerate. - * libbfd.h: Regenerate. - * po/bfd.pot: Regenerate. - * doc/bfdint.texi: Remove CVS date string - it foils compares with - local versions. - -2000-09-05 Steven Johnson - - * cpu-powerpc.c (arch_info_struct): Added MPC860 Family entry. - -2000-09-05 Alan Modra - - Shared library and PIC support. - * elf32-hppa.c (PLT_ENTRY_SIZE): New. - (GOT_ENTRY_SIZE): New. - (ELF_DYNAMIC_INTERPRETER): New. - (STUB_SUFFIX): Define. - (LONG_BRANCH_PIC_IN_SHLIB): Define. - (RELATIVE_DYNAMIC_RELOCS): Define. - (enum elf32_hppa_stub_type): New. - (struct elf32_hppa_stub_hash_entry): Rename offset to - stub_offset. Add a number of new fields. - (struct elf32_hppa_link_hash_entry): New. - (struct elf32_hppa_link_hash_table): Add numerous fields. Remove - global_value. - (elf32_hppa_hash_table): Rename to hppa_link_hash_table. - (elf32_hppa_stub_hash_lookup): Rename to hppa_stub_hash_lookup. - (elf32_hppa_stub_hash_newfunc): Rename to stub_hash_newfunc. Init - new fields. - (hppa_link_hash_newfunc): New function. - (elf32_hppa_link_hash_table_create): Use above function. Init new - fields. - (elf32_hppa_stub_name): Rename to hppa_stub_name. Pass in reloc - instead of addend, and remove sym_name from args. Don't use - symbol name for local syms, instead use sym index. - (elf32_hppa_size_of_stub): Rename to hppa_type_of_stub, and return - stub type rather than size. Pass in hash and handle import stub - case. Also pass in reloc instead of offset so we can calculate - PCREL22F and PCREL12F branches properly. - (elf32_hppa_build_one_stub): Rename to hppa_build_one_stub. Build - import and export stubs too. - (elf32_hppa_size_one_stub): Rename to hppa_size_one_stub. Handle - import and export stub sizing. - (elf32_hppa_check_relocs): New function. - (elf32_hppa_adjust_dynamic_symbol): New function. - (hppa_discard_copies): New function. - (elf32_hppa_size_dynamic_sections): New function. - (elf_backend_size_dynamic_sections): Define. - (elf32_hppa_finish_dynamic_symbol): New function. - (elf_backend_finish_dynamic_symbol): Define. - (elf32_hppa_size_stubs): Stash params in link hash table, and move - some local vars into the link hash table too. For shared links, - trundle over function syms, generating export stubs. Handle - PCREL22F branches. Break out stub creation code from here.. - (hppa_add_stub): .. to here. New function. - (elf32_hppa_final_link): Rename to elf32_hppa_set_gp, and don't - call the bfd linker. Use elf_gp to record global pointer. - Calculate a value from sections if $global$ is missing. - (bfd_elf32_bfd_final_link): Define as _bfd_elf32_gc_common_final_link. - (elf32_hppa_gc_mark_hook): New function. - (elf_backend_gc_mark_hook): Define. - (elf32_hppa_gc_sweep_hook): New function. - (elf_backend_gc_sweep_hook): Define. - (elf32_hppa_bfd_final_link_relocate): Rename to final_link_relocate. - Add rel to args, and remove howto, input_bfd, offset, addend, - sym_name as we can recalculate these locally. Handle calls to - dynamic objects, extra PIC relocs, PCREL22F branches. Change - handling of undefined weak syms. Check that stubs are in range. - Only look for import stubs on PCREL17F and PCREL22F relocs. Add - message on hitting a DPREL21L reloc that needs fixing. Subtract - off PC for PCREL14F. Break out code that does a stub lookup from - here.. - (hppa_get_stub_entry): ..to here. New function. - (elf32_hppa_relocate_insn): Merge into final_link_relocate. - (elf32_hppa_relocate_section): Handle got and plt relocs, dynamic - relocs, etc. etc. - (elf32_hppa_finish_dynamic_sections): New function. - (elf_backend_finish_dynamic_sections): Define. - (elf_backend_final_write_processing) Define. - (hppa_handle_PIC_calls): New function. - (elf32_hppa_build_stubs): Call it. Pass link_info to - hppa_build_one_stub. - (elf32_hppa_create_dynamic_sections): New function - to create .plt and .got then set .plt flags correctly. - (elf_backend_create_dynamic_sections): Define. - (elf32_hppa_object_p): New function. - (elf_backend_object_p): Define. - (elf32_hppa_elf_get_symbol_type): New function. - (elf_backend_get_symbol_type): Define. - (elf_backend_can_gc_sections): Define. - (elf_backend_want_got_plt): Define. - (elf_backend_plt_alignment): Set to 2. - (elf_backend_plt_readonly): Define. - (elf_backend_want_plt_sym): Define. - (elf_backend_got_header_size): Reserve one entry. - - * elf32-hppa.h (elf32_hppa_build_stubs): Don't pass stub bfd. - (elf32_hppa_size_stubs): Pass in multi_subspace. - (elf32_hppa_set_gp): Declare. - - * section.c (SEC_HAS_GOT_REF): Define new flag for asection. - (bfd_get_unique_section_name): New function. - * bfd-in2.h: Regenerate. - - * elf64-hppa.c (elf64_hppa_check_relocs): Handle R_PARISC_PCREL12F. - (elf64_hppa_size_dynamic_sections): Remove the FIXME at bfd_zalloc - comment. - - From David Huggins-Daines - * elf64-hppa.c (elf64_hppa_check_relocs): Fix a warning. - (elf64_hppa_mark_exported_functions): Set dyn_h->st_shndx. - (elf64_hppa_link_output_symbol_hook): Test dyn_h->st_shndx has - been updated in finish_dynamic_symbol before modifying function - symbol. - - * elf-hppa.h (elf_hppa_howto_table): Restructure into groups of - eight entries. Replace NULL with bfd_elf_generic_reloc. Add - R_PARISC_GNU_VTENTRY, R_PARISC_GNU_VTINHERIT and R_PARISC_PCREL12F. - (_bfd_elf_hppa_gen_reloc_type): Handle R_PARISC_GNU_VT*. Add some - comments. Handle format == 12 for R_HPPA_PCREL_CALL. - (elf_hppa_final_link_relocate): Handle R_PARISC_PCREL12F. - (elf_hppa_relocate_insn): Likewise. Reformat some comments. - (elf_hppa_final_write_processing): Expose it for ARCH_SIZE == 32. - - From David Huggins-Daines - * elf-hppa.h (elf_hppa_is_local_label_name): Accept the SysV/ELF - style of local labels as well. - -2000-09-03 Philip Blundell - - * elf32-arm.h (elf32_arm_relocate_section): Don't try to relocate - references to undefined symbols in debugging sections. - -2000-09-02 H.J. Lu - - * reloc.c (BFD_RELOC_SH_COPY, BFD_RELOC_SH_GLOB_DAT, - BFD_RELOC_SH_JMP_SLOT, BFD_RELOC_SH_RELATIVE, - BFD_RELOC_SH_GOTPC): Move them from the MIPS section to the SH - section. - -2000-09-02 Jason Eckhardt - - * elf32-i860.c (bfd_elf32_bfd_is_local_label_name): Define macro. - (elf32_i860_is_local_label_name): New function and prototype. - -2000-09-02 Nick Clifton - - * configure.in: Increase version number to 2.10.91. - * configure: Regenerate. - * aclocal.m4: Regenerate. - * config.in: Regenerate. - * po/bfd.pot: Regenerate. - -2000-09-02 Daniel Berlin - - * elf.c (_bfd_elf_make_section_from_shdr): Add - .gnu.linkobce.wi. to the list of debug section names. - -2000-09-02 Nick Clifton - - * dwarf2.c (find_debug_info): New function: Locate a section - containing dwarf2 debug information. - (bfd_dwarf2_find_nearest_line): Find all sections containing - debug information and include them in the stash. - -2000-09-01 Niibe Yutaka , Kaz Kojima , Alexandre Oliva - - * elf32-sh.c (R_SH_GOT32, R_SH_PLT32, R_SH_COPY, R_SH_GLOB_DAT, - R_SH_JMP_SLOT, R_SH_RELATIVE, R_SH_GOTOFF, R_SH_GOTPC): New. - (sh_reloc_map): Add new relocs. - (sh_elf_check_relocs, sh_elf_link_hash_newfunc, - sh_elf_link_hash_table_create, sh_elf_adjust_dynamic_symbol, - sh_elf_size_dynamic_sections, sh_elf_finish_dynamic_symbol, - sh_elf_finishe_dynamic_sections, sh_elf_discard_copies): New - functions. - (ELF_DYNAMIC_INTERPRETER, PLT_ENTRY_SIZE): Define. - (elf_sh_plt0_entry_be, elf_sh_plt0_entry_le, - elf_sh_plt_entry_be, elf_sh_plt_entry_le, - elf_sh_pic_plt_entry_be, elf_sh_pic_plt_entry_le): - New array constants. - (elf_sh_plt0_entry, elf_sh_plt_entry, elf_sh_pic_plt_entry): - New variables. - (elf_sh_sizeof_plt, elf_sh_plt_plt0_offset, - elf_sh_plt0_linker_offset, elf_sh_plt0_gotid_offset, - elf_sh_plt_temp_offset, elf_sh_plt_symbol_offset, - elf_sh_plt_reloc_offset): Define. - (elf_sh_pcrel_relocs_copied, elf_sh_link_hash_entry, - elf_sh_link_hash_table): New structs. - (sh_elf_link_hash_traverse, sh_elf_hash_table): New macros. - (sh_elf_relocate_section, sh_elf_check_relocs): Handle new - relocation types. - (elf_backend_create_dynamic_sections, - bfd_elf32_bfd_link_hash_table_create, - elf_backend_adjust_dynamic_symbol, - elf_backend_size_dynamic_sections, - elf_backend_finish_dynamic_symbol, - elf_backend_finish_dynamic_sections, elf_backend_want_got_plt, - elf_backend_plt_readonly, elf_backend_want_plt_sym, - elf_backend_got_header_size, elf_backend_plt_header_size): - Define. - * reloc.c (BFD_RELOC_SH_COPY, BFD_RELOC_SH_GLOB_DAT, - BFD_RELOC_SH_JMP_SLOT, BFD_RELOC_SH_RELATIVE, BFD_RELOC_SH_GOTPC): - New relocs. - * bfd-in2.h, libbfd.h: Rebuilt. - -2000-09-01 Alan Modra - - * elf32-i386.c (elf_i386_finish_dynamic_symbol): Revert 2000-08-27 - change. - -2000-08-31 J"orn Rennecke - - * elf32-sh.c (sh_elf_merge_private_data): If ibfd's elf header flags - not initialized, set them to indicate the SH1 instruction set. - -2000-08-31 Alexandre Oliva - - * acinclude.m4: Include libtool and gettext macros from the - top level. - * aclocal.m4, configure: Rebuilt. - -2000-08-29 Michael Snyder - - * elf.c: Eliminate references to __sparcv9 macro; replace with - autoconf variables HAVE_PSINFO32_T etc. - * configure.in: Auto-configure HAVE_PSINFO_32_T, HAVE_PRPSINFO32_T, - HAVE_PSTATUS32_T, HAVE_PRSTATUS32_T, HAVE_PRSTATUS32_T_PR_WHO. - * config.in: Ditto. - * acinclude.m4 (BFD_HAVE_SYS_PROCFS_TYPE) define _SYSCALL32 so it can - detect the above typedefs. (BFD_HAVE_SYS_PROCFS_TYPE_MEMBER): Ditto. - * aclocal.m4: Ditto. - * configure: Regenerate. - -2000-08-27 Alan Modra - - * elf32-i386.c (elf_i386_check_relocs): Keep info on relocs copied - for any shared link, not just shared -Bsymbolic. - (elf_i386_size_dynamic_sections): Call elf_i386_discard_copies on - any shared link, and pass link info to it. - (elf_i386_size_dynamic_sections): Update comment. - (elf_i386_discard_copies): Modify to discard relocs for symbols - that have been forced local. - (elf_i386_finish_dynamic_symbol): Don't copy relocs for symbols - that have been forced local. - -2000-08-24 Denis Chertykov & Nick Clifton - - * elflink.h (elf_link_add_object_symbols): Allow common - symbols to have an alignment of 1 if explicitly requested, and - not overridden by other definitions. - -2000-08-22 Doug Kwan - - * coff-w65.c (CREATE_LITTLE_COFF_TARGET): Fix typo. - * coffcode.h (coff_set_flags): Add detection of w65 architecture. - -2000-08-22 H.J. Lu - - * elf-bfd.h (elf_link_hash_table): Add runpath. - - * bfd-in.h (bfd_elf_get_runpath_list): New prototype. - * bfd-in2.h: Rebuilt. - - * elf.c (_bfd_elf_link_hash_table_init): Initialize the - "runpath" field to NULL. - (bfd_elf_get_runpath_list): New function. - - * elflink.h (elf_link_add_object_symbols): Record DT_RPATH and - DT_RUNPATH entries. - -2000-08-22 Alexandre Oliva - - * elf32-sh.c (sh_elf_relocate_section) [R_SH_IND12W, - R_SH_DIR8WPN, R_SH_DIR8WPZ, R_SH_DIR8WPL]: Handle them - explicitly. Improve validation of r_type. - -2000-08-21 H.J. Lu - - * elf32-i386.c (elf_i386_size_dynamic_sections): Zero out the - dynamic allocated content space. Add a comment to remind us that - one day this ought to be fixed. - * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise. - * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise. - * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise. - -2000-08-21 Jason Eckhardt - - * elf32-i860.c (elf32_i860_relocate_pc16): Just write the immediate - field with the newly relocated value instead of adding it to the - existing immediate field. - (elf32_i860_relocate_splitn): Likewise. - (elf32_i860_relocate_highadj): Likewise. - -2000-08-16 Jason Eckhardt - - * elf32-i860.c (elf32_i860_relocate_pc16): Implemented function (it - was previously just a stub). - -2000-08-16 Alexandre Oliva - - * elflink.c (_bfd_elf_create_got_section): Don't abort(). - Formatting fixes. - (_bfd_elf_create_dynamic_sections): Likewise. - -2000-08-16 Andrew Macleod - - * elf64-sparc.c (sparc64_elf_relocate_section): Set relocation address - for undefined symbols to be the beginning of the section. - - * elf64-sparc.c (sparc64_elf_adjust_dynamic_symbol): Don't allocate - four extra entries at the beginning of the .rela.plt section. - (sparc64_elf_finish_dynamic_symbol): Adjust the offset in the .rela.plt - section to account for the four reserved entries in the .plt section. - -2000-08-15 Geoffrey Keating - - * xcofflink.c (_bfd_ppc_xcoff_relocate_section): Add ori r0,r0,0 - to the list of NOPs we recognize after a branch-and-link. - Use the ori NOP when one is needed. - - * coff-rs6000.c (_bfd_xcoff_slurp_armap): Finish implementation - for large archives. - -2000-08-14 Jim Wilson - - * elf64-ia64.c (elf64_ia64_merge_private_bfd_data): Handle - EF_IA_64_REDUCEDFP, EF_IA_64_CONS_GP, and EF_IA_64_NOFUNCDESC_CONS_GP. - (elf64_ia64_print_private_bfd_data): Likewise. Also handle - EF_IA_64_ABSOLUTE. - -2000-08-11 Alexandre Oliva - - * elf32-sh.c (sh_elf_set_mach_from_flags): Make it static. - -2000-08-10 Jason Eckhardt - - * elf32-i860.c (elf32_i860_relocate_section): New function. - (i860_final_link_relocate): New function. - (elf32_i860_relocate_splitn): New function. - (elf32_i860_relocate_pc16): New function. - (elf32_i860_relocate_highadj): New function. - (elf32_i860_howto): Minor adjustments to some relocations. - (elf_info_to_howto_rel): Define. - (elf_backend_relocate_section): Define. - -2000-08-10 Nick Clifton - - * elf32-arm.h: Fix formatting. - -2000-08-10 Bernd Schmidt - - * elf32-sh.c (sh_elf_reloc_loop): Make LAST_SYMBOL_SECTION static. - -2000-08-08 Jason Eckhardt - - * elf32-i860.c (elf32_i860_howto_table): Updated some fields. - -2000-08-07 Kazu Hirata - - * ieee.c (ieee_write_debug_part): Rewrite a comment. - * elf64-ia64.c: Fix a typo. - -2000-08-05 Jason Eckhardt - - * elf32-i860.c (elf32_i860_howto_table): New structure. - (lookup_howto): New function. - (elf32_i860_reloc_type_lookup): New function. - (elf32_i860_info_to_howto_rela): New function. - (elf_code_to_howto_index): New structure. - (elf_info_to_howto): Re-define as elf32_i860_info_to_howto_rela. - (bfd_elf32_bfd_reloc_type_lookup): Re-define as - elf32_i860_reloc_type_lookup. - -2000-08-04 Rodney Brown - - * som.c (struct fixup_format): Constify `format'. - (som_hppa_howto_table): Use SOM_HOWTO macro. - (try_prev_fixup, hppa_som_reloc): Decorate unused parameter. - (som_bfd_reloc_type_lookup): Likewise. - (compare_subspaces): Remove unused `count1', `count2'. - (som_begin_writing): Remove unused `total_reloc_size'. - (som_bfd_derive_misc_symbol_info): Decorate unused parameter. - (som_print_symbol, som_bfd_is_local_label_name): Likewise. - (som_set_reloc_info): Constify `cp'. Remove unused `addend'. - (som_find_nearest_line): Decorate unused parameter(s). - (som_sizeof_headers, som_get_symbol_info, som_write_armap): Likewise. - (som_bfd_link_split_section): Likewise. - -2000-08-03 Nick Clifton - - * section.c: Restore backed out code. - * elf.c: Restore backed out code. - (copy_private_bfd_data): Fix bug preventing stipped dynamic - binaries from working. - * bfd-in2.h: Regenerate. - -2000-08-03 H.J. Lu - - * section.c: Back out the change made by Nick Clifton - on 2000-07-31. It breaks stripping dynamic - binaries. - * bfd-in2.h: Likewise. - * elf.c: Likewise. - -2000-08-03 Alexandre Oliva - - * elf32-sh.c (sh_elf_reloc_loop): Warning removal. - -2000-07-31 Jason Eckhardt - - * reloc.c (BFD_RELOC_860_*): New bfd relocs for i860. - * bfd-in2.h, libbfd.h: Regenerate. - -2000-07-31 Nick Clifton - - * section.c (struct sec): Add new boolean field 'segment_mark'. - (STD_SECTION): Initialise new field to zero. - - * bfd-in2.h: Regenerate. - - * elf.c (copy_private_bfd_data): Reorganise section to segment - mapping to cope with moved sections requiring new segments, - and overlapping segments. - (SEGMENT_END): New macro: Return the end address of a segment. - (IS_CONTAINED_BY_VMA): New macro: Determine if a segment - contains a section by comparing their VMA addresses. - (IS_CONTAINED_BY_LMA): New macro: Determine if a segment - contains a section by comparing their LMA addresses. - (INCLUDE_SECTION_IN_SEGMENT): New macro: Determine if a - section should be included in a segment. - (SEGMENT_AFTER_SEGMENT): New macro: Determine if one segment - follows another in memory. - (SEGMENT_OVERLAPS_SEGMENT): New macro: Determine if two - segments overlap. - -2000-07-22 Jason Eckhardt - - * cpu-i860.c: Added comments. - - * elf32-i860.c (TARGET_LITTLE_SYM): Defined to - bfd_elf32_i860_little_vec. - (TARGET_LITTLE_NAME): Defined to "elf32-i860-little". - (ELF_MAXPAGESIZE): Changed to 4096. - - * targets.c (bfd_elf32_i860_little_vec): Declaration of - new target. - (bfd_target_vector): Added bfd_elf32_i860_little_vec. - - * config.bfd (i860-stardent-sysv4*, i860-stardent-elf*): Added - config for little endian elf32 i860. - (targ_defvec): Define for the new config above - as "bfd_elf32_i860_little_vec". - (targ_selvecs): Define for the new config above - as "bfd_elf32_i860_vec bfd_elf32_i860_little_vec" - - * configure.in (bfd_elf32_i860_little_vec): Added recognition - of new target vec. - - * configure: Regenerated. - -2000-07-27 H.J. Lu - - * elflink.h (elf_merge_symbol): Take one more argument, - dt_needed, to indicate if the symbol comes from a DT_NEEDED - entry. Don't overide the existing weak definition if dt_needed - is true. - (elf_link_add_object_symbols): Pass dt_needed to - elf_merge_symbol (). - -2000-07-27 Nick Clifton - - * elflink.h (elf_link_size_reloc_section): Zeroes the section's - allocated contents. - -2000-07-25 Geoffrey Keating - - * configure.host (*-*-aix*): AIX has 'long long' always. - - * coff-rs6000.c (xcoff_write_one_armap_big): New procedure. - (xcoff_write_armap_big): Write both 32-bit and 64-bit armaps. - (xcoff_write_archive_contents_big): Don't update the offset - of the symbol table, xcoff_write_armap will do it. - -2000-07-23 Ulf Carlsson - - * elf32-mips.c (_bfd_mips_elf_check_relocs): Use abfd instead - of dynobj for SGI_COMPAT checks. - -2000-07-21 Michael Sokolov - - * coff-m68k.c (bfd_m68k_coff_create_embedded_relocs): New function. - * bfd-in.h (bfd_m68k_coff_create_embedded_relocs): Add declaration. - * bfd-in2.h: Regenerate. - -2000-07-21 Nick Clifton - - * elf32-mips.c (_bfd_mips_elf_check_relocs): Detect out of - range symbol indices in relocs and issue an error message. - -2000-07-20 H.J. Lu - - * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Don't check - info->new_dtags when setting DT_FLAGS_1. It will only be set - by the new linker options. It shouldn't break anything. - -2000-07-20 H.J. Lu - - * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set DT_FLAGS_1 - only if info->new_dtags is true. - -2000-07-20 H.J. Lu - - * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set - DT_RUNPATH and DT_FLAGS only if info->new_dtags is true. - -2000-07-20 Hans-Peter Nilsson - - * Makefile.am (ALL_MACHINES): Add cpu-cris.lo. - (ALL_MACHINES_CFILES): Add cpu-cris.c. - (BFD32_BACKENDS): Add aout-cris.lo and elf32-cris.lo. - (BFD32_BACKENDS_CFILES): Add aout-cris.c and elf32-cris.c. - (cpu-cris.lo, aout-cris.lo, elf32-cris.lo): New rules. - * Makefile.in: Rebuild. - * aclocal.m4: Rebuild. - * aoutx.h (NAME(aout,machine_type)): Add case for bfd_arch_cris. - * archures.c (enum bfd_architecture): Add bfd_arch_cris. - (bfd_cris_arch): Declare. - (bfd_archures_list): Add bfd_cris_arch. - * bfd-in2.h: Rebuild. - * config.bfd: (cris-*-*): New target. - * configure.in (bfd_elf32_cris_vec, cris_aout_vec): New vectors. - * configure: Rebuild. - * elf.c (prep_headers): Add bfd_arch_cris. - * libbfd.h: Rebuild. - * libaout.h (enum machine_type): Add M_CRIS. - * reloc.c: Add CRIS relocations. - * targets.c (bfd_elf32_cris_vec, cris_aout_vec): Declare. - (bfd_target_vect): Add bfd_elf32_cris_vec and cris_aout_vec. - * cpu-cris.c, aout-cris.c, elf32-cris.c: New files. - * po/POTFILES.in, po/bfd.pot: Regenerate. - -2000-07-19 H.J. Lu - - * elf32-arm.h (elf32_arm_size_dynamic_sections): Also set - DF_TEXTREL if DT_TEXTREL is set. - * elf32-i370.c (i370_elf_size_dynamic_sections): Likewise. - * elf32-i386.c (elf_i386_size_dynamic_sections): Likewise. - * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise. - * elf32-mips.c (_bfd_mips_elf_size_dynamic_sections): Likewise. - * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise. - * elf32-sparc.c (elf32_sparc_size_dynamic_sections): Likewise. - * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise. - * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise. - * elf64-ia64.c (elf64_ia64_size_dynamic_sections): Likewise. - * elf64-sparc.c (sparc64_elf_size_dynamic_sections): Likewise. - - * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Also - set DF_SYMBOLIC for symbolic link. Also set DT_RUNPATH if - DT_RPATH is set. - Set the DT_FLAGS and DT_FLAGS_1 entries if necessary. - -2000-07-19 H.J. Lu - - * bfd-in.h (bfd_elf_set_dt_needed_soname): New. - * bfd-in2.h: Rebuild. - - * elf-bfd.h (elf_obj_tdata): Add dt_soname. - (elf_dt_soname): New. - - * elf.c (bfd_elf_set_dt_needed_soname): New. - - * elflink.h (elf_link_add_object_symbols): Add the DT_NEEDED - entry if the shared object loaded by DT_NEEDED is used to - resolve the reference in a regular object. - -2000-07-19 H.J. Lu - - * elf.c (_bfd_elf_print_private_bfd_data): Handle DT_CONFIG, - DT_DEPAUDIT and DT_AUDIT as strings. - -2000-07-19 Nick Clifton - - * format.c: Fix formatting. - -2000-07-19 H.J. Lu - - * elf.c (_bfd_elf_print_private_bfd_data): Fix DT_CHECKSUM. - -2000-07-19 H.J. Lu - - * elf.c (_bfd_elf_print_private_bfd_data): Handle DT_BIND_NOW, - DT_INIT_ARRAY, DT_FINI_ARRAY, DT_INIT_ARRAYSZ, DT_FINI_ARRAYSZ, - DT_RUNPATH, DT_FLAGS, DT_PREINIT_ARRAY, DT_PREINIT_ARRAYSZ, - DT_PLTPADSZ, DT_MOVEENT, DT_MOVESZ, DT_FEATURE, DT_POSFLAG_1, - DT_SYMINSZ, DT_SYMINENT, DT_CONFIG, DT_DEPAUDIT, DT_AUDIT, - DT_PLTPAD, DT_MOVETAB, DT_SYMINFO, DT_RELACOUNT, DT_RELCOUNT, - DT_FLAGS_1, DT_USED and DT_CHECKSUM. - -2000-07-18 Andrew Cagney - - * elf.c (bfd_elf_get_sign_extend_vma, bfd_elf_get_arch_size): Move - renamed functions from here... - (assign_section_numbers): Use renamed functions. - (prep_headers): Use renamed functions. - - * bfd.c (bfd_get_sign_extend_vma, bfd_get_arch_size): ...To here. - * bfd-in.h (bfd_get_sign_extend_vma, bfd_get_arch_size): Update. - * bfd-in2.h: Regenerate. - -2000-07-18 Ulf Carlsson - - * elf32-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Add - parenthesis in if statement. - -2000-07-17 Koundinya K - - Enable the support for Traditional MIPS. - * elf32-mips.c (IRIX_COMPAT): Recognize bfd_elf32_tradbigmips_vecand - return ict_none appropriately for traditional mips targets. - (STUB_LW): Change 0x8f998000 to 0x8f998010 for traditional mips. - (STUB_MOVE): Conditionalize for traditonal mips. - (STUB_LI16): Likewise. - (_bfd_mips_elf_modify_segment_map): Conditionalize to avoid making - room for RTPROC header. - (_bfd_mips_elf_modify_segment_map): For a normal mips executable set - the permission for the PT_DYNAMIC as read, write and execute. - (mips_elf_calculate_relocation): Check for the symbol _DYNAMIC_LINKING - for traditonal mips. - (_bfd_mips_elf_create_dynamic_sections): Add the symbol - _DYNAMIC_LINKING for traditonal mips. - (_bfd_mips_elf_create_dynamic_sections): Add the symbol __RLD_MAP - in case of traditonal mips. - (_bfd_mips_elf_adjust_dynamic_symbol): Create a stub only if a PLT - entry is required. For a function if PLT is not required then set the - corresponding hash table entry to 0. - (_bfd_mips_elf_size_dynamic_sections): Add DT_DEBUG entry for - traditonal mips. - (_bfd_mips_elf_finish_dynamic_symbol): for a undefined symbol in a - shared object set the value to 0. - (_bfd_mips_elf_finish_dynamic_symbol): Check for the symbol - _DYNAMIC_LINKING for traditonal mips. - (_bfd_mips_elf_finish_dynamic_symbol): Check for the symbol __RLD_MAP - for traditonal mips. - -2000-07-15 H.J. Lu - - * aoutx.h (translate_to_native_sym_flags): Handle BSF_LOCAL. - -2000-07-12 Charles Wilson - - * libbfd.c (bfd_seek): fix 'seek beyond EOF' error when writing - out a structure that is BFD_IN_MEMORY. - -2000-07-11 Alan Modra - - * elf64-hppa.c (get_dyn_name): Pass in section pointer instead of - bfd pointer. Print section id instead of bfd pointer for local - syms. Prefix addend with `+' for global syms as well as local. - Correct calculation of name component lengths. - (elf64_hppa_check_relocs): Update call to get_dyn_name. - - From David Huggins-Daines - * elf-hppa.h (elf_hppa_relocate_section): Update calls here too. - * elf64-hppa.c (elf64_hppa_check_relocs): Fix some warnings. - (elf64_hppa_modify_segment_map): Likewise. - -2000-07-11 Andrew Cagney - - * elf.c (bfd_elf_get_sign_extend_vma): Return tendency of VMA - addresses to be "naturally" sign extended. Return -1 if unknown. - * bfd-in.h (bfd_elf_get_sign_extend_vma): Add declaration. - * bfd-in2.h: Regenerate. - -2000-07-11 Andrew Cagney - - * ecoffswap.h (ecoff_get_off, ecoff_put_off): Add ECOFF_SIGNED_32 - and ECOF_SIGNED_64 to list ways to extract an offset. - (ecoff_swap_fdr_in, ecoff_swap_fdr_out, ecoff_swap_pdr_in, - ecoff_swap_pdr_out, ecoff_swap_ext_in, ecoff_swap_ext_out): - Update. - * elf64-mips.c (ECOFF_SIGNED_64): Define instead of ECOFF_64. - * elf32-mips.c (ECOFF_SIGNED_32): Define instead of ECOFF_32. - -2000-07-11 Andrew Cagney - - * elfcode.h (elf_object_p): Use bfd_set_start_address and not - bfd_get_start_address. - (elf_swap_ehdr_in): Sign extend e_entry when applicable. - (elf_swap_ehdr_out): Ditto. - -2000-07-10 Alexander Aganichev - - * archures.c (bfd_default_scan): Add set of bfd_mach_ cases for - compatibility with older binutils. - -2000-07-10 Alan Modra - - * section.c (bfd_make_section_anyway): Start section_id at 0x10. - (STD_SECTION): Avoid negative ids, instead use 0 to 3. - - From Ryan Bradetich - * dwarf1.c (parse_die): Cure signed/unsigned char warnings. - (parse_line_table): Ditto. - (_bfd_dwarf1_find_nearest_line): Ditto. - * syms.c (cmpindexentry): Remove extra `*' from params. - -2000-07-09 Koundinya K - - * elf32-mips.c (sort_dynamic_relocs): New Function. - (_bfd_mips_elf_finish_dynamic_sections): Call sort_dynamic_relocs - via qsort to sort the dynamic relocations in increasing r_symndx - value. - -2000-07-09 Alan Modra - - * elf64-hppa.c (elf64_hppa_dyn_hash_table_init): Add - ATTRIBUTE_UNUSED to unused args. - (get_opd): Likewise. - (get_plt): Likewise. - (get_dlt): Likewise. - (get_stub): Likewise. - (elf64_hppa_adjust_dynamic_symbol): Likewise. - (elf64_hppa_link_output_symbol_hook): Likewise. - (elf64_hppa_check_relocs): Delete unused var. - (elf64_hppa_size_dynamic_sections): Likewise. - (elf64_hppa_finalize_opd): Likewise. - (elf64_hppa_finalize_dynreloc): Likewise. - (elf64_hppa_modify_segment_map): Likewise. - (elf64_hppa_finish_dynamic_sections): Likewise. - - * elf-hppa.h (elf_hppa_final_write_processing): Add - ATTRIBUTE_UNUSED to unused args. - (elf_hppa_final_link_relocate): Likewise. - (elf_hppa_record_segment_addrs): Add paretheses. - (elf_hppa_relocate_section): Constify dyn_name. - - From David Huggins-Daines - * config.bfd: Add hppa*64*-*-linux-gnu 64-bit target, and - rearrange case statement so that it gets preferred to 32-bit ones. - - * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Use - asection->id instead of address of asection structure. - (elf32_hppa_size_stubs): Likewise. - - * elf32-hppa.c (elf32_hppa_size_stubs): Use just one stub section - for .init* and .fini*. - - * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Mask pointers - and addends used in stub names to 32 bits. - (elf32_hppa_size_stubs): Likewise. - - * elf-hppa.h (elf_hppa_final_link_relocate): Don't sum addend - twice for R_PARISC_GPREL64. Use bfd_put_32 for R_PARISC_PCREL32, - not bfd_put_64. Fix minor comment typo and formatting. - - Changes to create multiple linker stubs, positioned immediately - before the section where they are required. - * elf32-hppa.c: Don't include hppa_stubs.h. - (elf32_hppa_stub_hash_entry): Add a pointer to the stub section. - (elf32_hppa_stub_hash_table): Delete. - (elf32_hppa_link_hash_entry): Delete. - (elf32_hppa_link_hash_table): Use plain bfd_hash_table for - stub_hash_table, and store the struct here rather than a pointer. - Delete output_symbol_count. Add offset array. Change - global_value to a bfd_vma. - (elf32_hppa_stub_hash_lookup): Use table instead of table->root. - (elf32_hppa_stub_hash_traverse): Delete. - (elf32_hppa_name_of_stub): Delete. - (elf32_hppa_link_hash_lookup): Delete. - (elf32_hppa_link_hash_traverse): Delete. - (elf32_hppa_stub_hash_table_init): Delete. - (elf32_hppa_size_of_stub): Pass input section and offset rather - than location and calculate location here. Don't pass name as all - stubs are now the same size. - (elf32_hppa_stub_hash_newfunc): Init new fields. - (elf32_hppa_link_hash_table_create): Likewise, and stub_hash_table - too. - (elf32_hppa_bfd_final_link_relocate): Cast enums to int before - comparing against ints. Rewrite stub handling code. - (elf32_hppa_relocate_section): Make r_type and r_symndx unsigned. - Case enums to int before comparing against ints. Remove - bfd_reloc_dangerous case. - (elf32_hppa_build_one_stub): Rewrite. - (elf32_hppa_size_one_stub): New function. - (elf32_hppa_build_stubs): Rewrite. - (elf32_hppa_size_stubs): Pass in linker call-back functions. - Rewrite stub-handling specific code. - - * elf32-hppa.h (elf32_hppa_size_stubs): Update prototype. - - * elf64-hppa.c (elf64_hppa_dyn_hash_entry): Fix a comment typo. - - * hppa_stubs.h: Delete. - * Makefile.am (SOURCE_HFILES): Remove hppa_stubs.h - (elf32-hppa.lo): Remove hppa_stubs.h from dependencies. - * Makefile.in: Regenerate. - - * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Handle e_nlsel and - e_nlrsel. - - * libhppa.h (hppa_field_adjust): Correct e_nsel case. - - * elf32-hppa.c (elf32_hppa_relocate_section): Mention the offset - and section name for bfd_reloc_notsupported error message. - (elf32_hppa_bfd_final_link_relocate): Print reasons for returning - bfd_reloc_notsupported. - (elf32_hppa_relocate_section): Add ATTRIBUTE_UNUSED to output_bfd. - - * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Handle - undefined weak symbols for all relocs. - (elf32_hppa_size_of_stub): Adjust calculation by 8 since branch - offsets are relative to one past the delay slot. - (elf32_hppa_size_stubs): Account for reloc addend when calculating - branch destination. Put addend into stub name too. - (elf32_hppa_bfd_final_link_relocate): Account for reloc addend and - adjust by 8 when deciding whether a linker stub is needed. Put - addend into stub name as for above. - - * elf32-hppa.c (hppa_elf_relocate_insn): Change signed/unsigned on - various args and vars. - (elf32_hppa_bfd_final_link_relocate): Here too. - (elf32_hppa_size_stubs): Rename index -> indx. Use e_indx for - inner block var to avoid shadowing. - - * elf32-hppa.h (_bfd_elf32_hppa_gen_reloc_type): Make `field' arg - unsigned. - * elf64-hppa.h (_bfd_elf64_hppa_gen_reloc_type): Ditto. - * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Ditto. - (elf_hppa_fake_sections): Rename local var to avoid shadowing. - - * libhppa.h: Change practically all unsigned ints to plain ints. - Remove tests on gcc version. Instead use ATTRIBUTE_UNUSED for - prototypes. - - From Ryan Bradetich - * libhppa.h (hppa_opcode_type): New enum to replace #define's. - * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Modify to - suit above. - From David Huggins-Daines - * elf-hppa.h (elf_hppa_relocate_insn): Update the opcode constants - to the new OP_* ones. - - * elf32-hppa.c (elf32_hppa_size_stubs): Consolidate freeing on - error exit. Bail out earlier on plabel relocs that we aren't - interested in. Don't tell elf32_hppa_stub_hash_lookup to copy - string, and then don't free our copy. - (elf32_hppa_build_one_stub): Make insn unsigned int. - - * libhppa.h (bfd_hppa_insn2fmt): 22 bit branches are only - available with BL, not BE and BLE. - - * elf32-hppa.c (hppa_elf_relocate_insn): Add some more example - code for elf arg relocs. - (elf32_hppa_bfd_final_link_relocate): Replace boolean is_local - argument with elf_link_hash_entry h. Handle undefined weak - symbols. Move $global$ lookup from here... - (elf32_hppa_relocate_section): ...to here. Return correct error - message for non-handled relocs. - (elf32_hppa_size_of_stub): Correctly test branch range. Previous - wrong test was -0x3ffff to +0x40000. - - * elf-hppa.h (elf_hppa_final_link_relocate): R_PARISC_DIR17R, - R_PARISC_DIR17F, and R_PARISC_DIR21L are for absolute branches; - Handle them as such. - (elf_hppa_relocate_insn): Fix a typo. - - * libhppa.h (GET_FIELD, GET_BIT, MASK, CATENATE, ELEVEN): Delete. - (assemble_3, assemble_6, assemble_12, assemble_16, assemble_16a, - assemble_17, assemble_21): Delete. - Supply defines for all 64 possible opcodes. - (bfd_hppa_insn2fmt): Add bfd argument, and use to select wide mode - formats. Handle COMICLR. - (hppa_rebuild_insn): Delete bfd argument. Handle formats 10, -11, - -10, -16, 16, 22. - - * elf32-hppa.c (hppa_elf_relocate_insn): Complete rewrite. - (elf32_hppa_bfd_final_link_relocate): Major rewrite. - (elf32_hppa_build_one_stub): Modify hppa_elf_relocate_insn calls - to suit. - (elf32_hppa_size_stubs): Don't free stub_name twice. Read in all - the local syms - did this code get deleted accidentally? Ignore - undefined and undefweak syms. - - * elf-hppa.h (elf_hppa_final_link): Move hppa_info to outermost - block. Use it instead of elf64_hppa_hash_table (info). - (elf_hppa_final_link_relocate): Use hppa_info instead of - elf64_hppa_hash_table (info). - - * libhppa.h (re_assemble_3, re_assemble_12, re_assemble_16, - re_assemble_17, re_assemble_21, re_assemble_22): Don't mask insn. - (hppa_rebuild_insn): Mask immediate bits here instead. - * elf-hppa.h (elf_hppa_relocate_insn): Mask here too. - -2000-07-08 Alan Modra - - * section.c (struct sec): Add id field. Tidy comment formatting. - (bfd_make_section_anyway): Set id. - (STD_SECTION): Init id too. - Change CONST to const throughout. - * archures.c (bfd_arch_info): Tidy comment. - (bfd_arch_list): Change a CONST to const. - * libbfd-in.h: Tidy comments and replace CONST with const. - * elf-bfd.h: Likewise. - * libbfd.h: Regenerate. - * bfd-in2.h: Regenerate. - * libcoff.h: Regenerate. - -2000-07-07 DJ Delorie - - * archive.c (_bfd_write_archive_contents): Add an informative - comment. - -2000-07-06 Kazu Hirata - - * srec.c: Fix formatting. - -2000-06-05 DJ Delorie - - * MAINTAINERS: new - -2000-07-04 Alexandre Oliva - - * coff-arm.c (coff_arm_relocate_section): Do not ignore the symbol - value of PC-relative offsets. - -2000-07-03 Jim Wilson - - * elf64-alpha.c (alpha_elf_size_info): New. - (elf_backend_size_info): Define to alpha_elf_size_info. - * elfcode.h (elf_size_info): Change hash bucket size to 4. - -2000-07-03 Ulf Carlsson - - * elf32-mips.c: Include elf32-target.h again for the traditional - MIPS targets. - -2000-07-03 Marek Michalkiewicz - - * elf32-avr.c (bfd_elf32_bfd_reloc_type_lookup): - Add ATTRIBUTE_UNUSED to unused arguments to avoid warnings. - (avr_info_to_howto_rela): Likewise. - (elf32_avr_gc_mark_hook): Likewise. - (elf32_avr_gc_sweep_hook): Likewise. - (elf32_avr_relocate_section): Likewise. - -2000-07-03 Mark Elbrecht - - * cofflink.c (_bfd_coff_write_global_sym): Turn a weak symbol into - an external symbol for a non-shared, non-relocatable link. - -2000-07-03 Nick Clifton - - * cofflink.c (IS_EXTERNAL): New macro: Return true if the symbol - is an external symbol. - (IS_WEAK_EXTERNAL): New macro: Return true if the symbol is a weak - external symbol. - -2000-07-03 Kazu Hirata - - * reloc16.c: Fix formatting. - -2000-07-01 Koundinya K - - * config.bfd: Change targ_defvec and targ_selvecs for mips*-*-sysv4* - to add a new target for traditional mips i.e - bfd_elf32_tradbigmips_vec and bfd_elf32_tradlittlemips_vec. - * configure.in: Likewise. - * configure: Rebuild. - * targets.c (bfd_elf32_tradbigmips_vec): Declare and put in - bfd_target_vector. - (bfd_elf32_tradlittlemips_vec): Likewise. - * elfxx-target.h: Add macro INCLUDED_TARGET_FILE which is more a test - to see that elfNN_bed does not get redefined even if the target file - is included twice for a chip. See elf32-mips.c. - -2000-07-01 Alan Modra - - * Makefile.am (DEP): Fix 2000-06-22. grep after running dep.sed - (CLEANFILES): Add DEPA. - * Makefile.in: Regenerate. - -2000-06-30 DJ Delorie - - * peicode.h (coff_swap_filehdr_in): can't use e_magic because we - can't assume the PE header is at 0x80. - -2000-06-29 Mark Elbrecht - - * syms.c (_bfd_stab_section_find_nearest_line): Use IS_ABSOLUTE_PATH. - -2000-06-28 Mark Elbrecht - - * go32stub.h: Update stub. - -2000-06-26 Marek Michalkiewicz - - * archures.c (bfd_mach_avr5): Define. - * bfd-in2.h (bfd_mach_avr5): Define. - * cpu-avr.c (arch_info_struct): Rename bfd_mach_avr4 to - bfd_mach_avr5, add bfd_mach_avr4. Update comments. - (compatible): Update comment. Add missing test. - * elf32-avr.c (avr_final_link_relocate): Support 8K wrap - for avr2 and avr4. Simplify 8K wrap code. - (bfd_elf_avr_final_write_processing): Recognize bfd_mach_avr5. - (elf32_avr_object_p): Recognize E_AVR_MACH_AVR5. - -2000-06-26 Kazu Hirata - - * coff-h8300.c: Fix formatting. - * cpu-h8300.c: Likewise. - -2000-06-24 Alexandre Oliva - - * elf32-arm.h (elf32_arm_final_link_relocate): Print `(local)' - for local symbols whose names are unknown. - -2000-06-22 Alan Modra - - * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we - find one. - * Makefile.in: Regenerate. - * doc/Makefile.in: Regenerate. - -2000-06-20 H.J. Lu - - * Makefile.am: Rebuild dependency. - * Makefile.in: Rebuild. - -2000-06-20 Maciej W. Rozycki - - * elf32-mips.c (_bfd_mips_elf_copy_indirect_symbol): New function. - (elf_backend_copy_indirect_symbol): Map to the new function. - -2000-06-20 Alan Modra - - * archive.c (normalize): Correct pointer comparison when checking - for backslashes. - (bfd_bsd_truncate_arname): Likewise. - (bfd_gnu_truncate_arname): Likewise. - -2000-06-20 Ulf Carlsson - - * elf-bfd.h (struct elf_obj_tdata): Define per BFD Irix 5 virtual - sections elf_{text,data}_{section,symbol}. - * elf32-mips.c: mips_elf_{text,data}_{section,symbol}{,_ptr}: Remove. - (_bfd_mips_elf_hide_symbol): New function. - (elf_backend_hide_symbol): Map to the new function. - (_bfd_mips_elf_add_symbol_hook): Change to use new per BFD - definitions of mips_elf_{text,data}_{section,symbol}. - (mips_elf_local_relocation_p): Try to find the direct symbol - based on new check_forced argument. - (mips_elf_calculate_relocation): Use new version of - mips_elf_local_relocation_p. - (mips_elf_relocate_section): Likewise. - (_bfd_mips_elf_relocate_section): Likewise. - (mips_elf_sort_hash_table): Only assert that have enough GOT - space. - (mips_elf_got16_entry): Match all 32 bits to the existing GOT - entry if the relocation based on the new external argument. - (mips_elf_create_dynamic_relocation): Assert that we have a - section contents allocated where we can swap out the dynamic - relocations. - (mips_elf_calculate_relocation): Find the real hash-table entry - correctly by using h->root.root.type. Only create a dynamic - relocation entry if the symbol is defined in a shared library. - Create an external GOT entry for the GOT16 relocation if the - symbol was forced local. - (_bfd_mips_elf_finish_dynamic_symbol): Don't assert there is a - dynamic index if the symbol was forced local. - -2000-06-20 Maciej W. Rozycki - - * elf32-mips.c: Fix typos in comments. - -2000-06-19 Mark Kettenis - - * rs6000-core.c: Wrap definition of `union VmInfo' within #ifdef - CORE_VERSION_1. - -2000-06-18 Stephane Carrez - - * Makefile.in, bfd-in2.h, libbfd.h, configure: Rebuild. - * Makefile.am (ALL_MACHINES, ALL_MACHINES_CFILES, BFD32_BACKENDS, - BFD32_BACKENDS_CFILES): Add 68hc12, 68hc11 files. - * configure.in (bfd_elf32_m68hc12_vec): Recognize. - (bfd_elf32_m68hc11_vec): Likewise. - * config.bfd (targ_cpu): Recognize 68hc12 and 68hc11. - Supports 68hc11 & 68hc12 at the same time. - * targets.c (bfd_elf32_m68hc12_vec): Declare and put in - bfd_target_vector. - (bfd_elf32_m68hc11_vec): Likewise. - * elf.c (prep_headers): Recognize bfd_arch_m68hc12 and 68hc11. - * archures.c (bfd_m68hc12_arch): Define and register in global list - (bfd_m68hc11_arch): Likewise. - * reloc.c (BFD_RELOC_M68HC11_HI8, BFD_RELOC_M68HC11_LO8, - BFD_RELOC_M68HC11_3B): Define. - * cpu-m68hc12.c, elf32-m68hc12.c: New files for 68hc12 support. - * cpu-m68hc11.c, elf32-m68hc11.c: New files for 68hc11 support. - -2000-06-18 Ulf Carlsson - - * elf_bfd.h (struct elf_backend_data): Add info argument to - elf_backend_hide_symbol. - (_bfd_elf_link_hash_hide_symbol): Likewise. - * elf.c (_bfd_elf_link_hash_hide_symbol): Likewise. - * elf64-ia64.c (elf64_ia64_hash_hide_symbol): Likewise. - * elflink.h (elf_link_add_object_symbols): Likewise. - (elf_link_assign_sym_version): Likewise. - -2000-06-18 H.J. Lu - - * coff-i386.c (coff_i386_reloc): Don't return in case of - output_bfd == (bfd *) NULL if COFF_WITH_PE is defined. - Compensate PE relocations when linking with non-PE object - files to generate a non-PE executable. - -2000-06-17 Ulf Carlsson - - * elf32-mips.c (mips_elf_calculate_relocation): Explicitly write - GOT entries if we're doing a static link or -Bsymbolic link. - -2000-06-15 Ulf Carlsson - - * elflink.h (elf_link_adjust_relocs): Check for and call backend - specifific swap_reloc_{in,out} and swap_reloca_{in,out} if - available. - (elf_link_output_relocs): Likewise. - (elf_reloc_link_order): Likewise. - -2000-06-16 Nicholas Duffek - - * archures.c (enum bfd_architecture): #define constants for - PowerPc and RS6000 machine numbers. - * bfd-in2.h: Regenerate. - * coffcode.h (coff_set_arch_mach_hook): #ifdef XCOFF64, set arch - to bfd_arch_powerpc instead of bfd_arch_rs6000. Refer to PowerPc - and RS6000 machine numbers using #defined constants from - archures.c. - * cpu-powerpc.c (arch_info_struct): Refer to PowerPc and RS6000 - machine numbers using #defined constants from archures.c. Add - entries for EC603e, 630, A35, RS64II, RS64III, 7400. Specify - 64-bit words in 620 entry. - * cpu-rs6000.c (arch_info_struct): Create with entries for RS1, - RSC, and RS2. - (bfd_rs6000_arch): Change default machine to 0 (bfd_mach_rs6k). - -2000-06-16 Nicholas Duffek - - * coffcode.h (coff_mkobject_hook): Set xcoff_tdata.xcoff64. - * libcoff-in.h (struct xcoff_tdata): Define xcoff64 field. - * libcoff.h (struct xcoff_tdata): Define xcoff64 field. - -2000-06-16 Nicholas Duffek - - * bfd-in.h (bfd_family_coff): Define. - * bfd-in2.h: Regenerate. - * coffgen.c (coff_count_linenumbers, coff_symbol_from, - coff_find_nearest_line): Check COFFness using bfd_family_coff() - instead of bfd_target_coff_flavour. - * cofflink.c (_bfd_coff_final_link): Likewise. - * cpu-ns32k.c (do_ns32k_reloc): Don't strcmp() target name to - exclude XCOFF files. - * reloc.c (bfd_perform_relocation, bfd_install_relocation): - Likewise. - * targets.c (enum bfd_flavour): Add bfd_target_xcoff_flavour. - * xcoff-target.h (TARGET_SYM): Use bfd_target_xcoff_flavour. - * xcofflink.c (XCOFF_XVECP): Delete. - (bfd_xcoff_link_record_set, bfd_xcoff_import_symbol, - bfd_xcoff_export_symbol, bfd_xcoff_link_count_reloc, - bfd_xcoff_record_link_assignment, - bfd_xcoff_size_dynamic_sections): Replace XCOFF_XVECP() with - check for bfd_target_xcoff_flavour. - -2000-06-16 Nicholas Duffek - - * rs6000-core.c: Support 64-bit core files, support pre-4.3 core - files on AIX 4.3. - (read_hdr): New function. - (rs6000coff_core_p): Store mstsave or __context64 struct instead - of trying to extract individual registers. Set abfd->arch_info - to match the architecture that created the core file. - (rs6000coff_get_section_contents): Delete. - * xcoff-target.h (rs6000coff_get_section_contents): Delete. - -2000-06-14 H.J. Lu - - * vms-misc.c (_bfd_vms_next_record): Return -1 if PRIV(vms_rec) - is NULL. - -2000-06-13 H.J. Lu - - * configure: Regenerate. - -2000-06-13 J"orn Rennecke - - * peicode.h (pe_ILF_object_p): Use TARGET_LITTLE_SYM instead of - armpei_little_vec. - -2000-06-08 David O'Brien - - * configure.in (VERSION): Update to show this is the CVS mainline. - -2000-06-07 Alan Modra - - * elf32-d10v.c: Include elf/d10v.h - (enum reloc_type): Delete. - * elf32-d30v.c: Include elf/d30v.h - (enum reloc_type): Delete. - - * Makefile.am: Run "make dep-am" to regenerate dependencies. - * Makefile.in: Regenerate. - - * elf32-i386.c (elf_howto_table): Remove EMPTY_HOWTOs. - (elf32_i386_vtinherit_howto, elf32_i386_vtentry_howto): Delete and - move HOWTOs into elf_howto_table. - (R_386_standard, R_386_ext_offset): Define. - (R_386_ext, R_386_vt_offset, R_386_vt): Define. - (elf_i386_reloc_type_lookup): Modify calculation of index into - elf_howto_table since we've removed the padding. - (elf_i386_info_to_howto_rel): Likewise. - (elf_i386_relocate_section): Likewise. - -2000-06-06 Michael Snyder - - * elf.c (elf_grok_pr_status): Eliminate reference to prgregset_t. - -2000-06-05 H.J. Lu - - * elflink.c (_bfd_elf_link_record_dynamic_symbol): Don't flag - an error when seeing an undefined symbol with hidden/internal - attribute. It is handled in *_relocate_section (). - -2000-06-05 H.J. Lu - - * elflink.h (elf_fix_symbol_flags): Follow the link for the - indirect symbol for the ELF_LINK_NON_ELF bit. - (elf_link_output_extsym): Don't output the indirect symbol even - if the ELF_LINK_NON_ELF bit is set. - -2000-06-01 J.T. Conklin - - * config.bfd (i[3456]86-*-netbsdelf*): New target. - (i[3456]86-*-netbsdaout*): New target. - (i[3456]86-*-netbsd*): Add bfd_elf32_i386_vec to targ_selvecs. - (i[3456]86-*-openbsd*): Likewise. - -2000-05-30 Andrew Cagney - - * trad-core.c: From hpux-core.c, include or - when possible. - -2000-05-31 Ulrich Drepper - - * elf.c (_bfd_elf_slurp_version_tables): Correct reading of version - definitions. We must not assume they are sorted in the file - according to their index numbers. - -2000-05-31 Alan Modra - - * elf-hppa.h: (elf_hppa_final_link_relocate): Use e_rsel field - selector for R_PARISC_PCREL17R. R_PARISC_DIR17R and - R_PARISC_DIR17F are for absolute branches; Handle them as such. - -2000-05-30 Nick Clifton - - * cpu-i960.c (scan_960_mach): Accept 80960KA, 80960KB, - 80960CA, 80960MC as valid machine names. - -2000-05-30 H.J. Lu - - * elflink.c (_bfd_elf_link_record_dynamic_symbol): Clear the - visibility bits if the symbol is undefined. Correctly handle - weak undefined symbols with hidden and internal attributes. - - * elflink.h (elf_link_add_object_symbols): Always turn the - symbol into local if it has the hidden or internal attribute. - -2000-05-29 Philip Blundell - - * ppcboot.c: Add packed attribute if compiling with GCC. - -2000-05-29 Anatoly Vorobey - - * elf.c (_bfd_elf_link_hash_table_init): Initialize dynlocal. - -2000-05-26 Michael Snyder - - * elf.c (elfcore_grok_prstatus, elfcore_grok_pstatus, - elfcore_grok_psinfo): Add code to allow debugging a 32-bit - corefile on a 64-bit (Sparc Solaris) host. Also clean up - a few old comments. - -2000-05-26 Alan Modra - - * Makefile.am: Update dependencies with "make dep-am" - * Makefile.in: Regenerate. - - * sysdep.h (gettext, dgettext, dcgettext, textdomain, - bindtextdomain): Replace defines with those from intl/libgettext.h - to quieten gcc warnings. - -2000-05-26 Eli Zaretskii - - * aoutx.h (find_nearest_line): Use IS_ABSOLUTE_PATH. - - * archive.c (normalize, bfd_bsd_truncate_arname, - bfd_gnu_truncate_arname) [HAVE_DOS_BASED_FILE_SYSTEM]: Support - file names with backslashes. - - * cache.c (bfd_open_file) [__MSDOS__]: Don't unlink the file - before opening it. - - * sysdep.h: Include filenames.h. - -2000-05-26 Alan Modra - - * opncls.c (bfd_close_all_done): Mask file perms with 0777 not 0x777. - -2000-05-26 Jakub Jelinek - - * elf64-sparc.c (sparc64_elf_relax_section): New. - (sparc64_elf_relocate_section): Optimize tail call into branch always - if possible. - * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. - (elf32_sparc_relax_section): New. - -2000-05-26 Jakub Jelinek - - * elf64-sparc.c: Add ATTRIBUTE_UNUSED to unused function parameters. - Remove unusued variables. - (sparc64_elf_relocate_section): Change r_symndx type to unsigned long. - (sparc64_elf_merge_private_bfd_data): Fix shared library case from - previous fix, so that shared libs really don't influence targets - extension mask and memory model. - -2000-05-23 H.J. Lu - - * elf64-alpha.c (elf64_alpha_relocate_section): Check - h->root.other not h->other. - * elf32-mips.c (mips_elf_calculate_relocation): Likewise. - - * elf32-ppc.c (ppc_elf_relocate_section): Fix a typo. - -2000-05-23 H.J. Lu - - * elf32-i386.c (elf_i386_relocate_section): Don't allow the - undefined symbol with the non-default visibility attributes. - * elf-hppa.h (elf_hppa_relocate_section): Likewise. - * elf32-arm.h (elf32_arm_relocate_section): Likewise. - * elf32-i370.c (i370_elf_relocate_section): Likewise. - * elf32-m68k.c (elf_m68k_relocate_section): Likewise. - * elf32-mcore.c (mcore_elf_relocate_section): Likewise. - * elf32-mips.c (mips_elf_calculate_relocation): Likewise. - * elf32-ppc.c (ppc_elf_relocate_section): Likewise. - * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. - * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. - * elf64-ia64.c (elf64_ia64_relocate_section): Likewise. - * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. - -2000-05-22 Richard Henderson - - * elf64-ia64.c (ia64_howto_table): Add PCREL60B, PCREL21BI, - PCREL22, PCREL64I. Zero size of special relocs. - (elf64_ia64_reloc_type_lookup): Likewise. - (USE_BRL, oor_brl, oor_ip): New. - (elf64_ia64_relax_section): New. - (elf64_ia64_check_relocs): Handle PCREL60B, PCREL22, PCREL64I. - (elf64_ia64_install_value): Likewise, plus PCREL21BI. - (elf64_ia64_relocate_section): Likewise. - (bfd_elf64_bfd_relax_section): New. - * reloc.c (BFD_RELOC_IA64_PCREL21BI): New. - (BFD_RELOC_IA64_{PCREL22,PCREL60B,PCREL64I}): New. - * bfd-in2.h, libbfd.h: Regenerate. - -2000-05-22 Nick Clifton - - * configure.in : Add peigen.lo to MIPS PE targets. - * configure: Regenerate. - -2000-05-22 Momchil Velikov - - * libbfd.c (_bfd_generic_verify_endian_match): Compare endianess - only if it is known for both input and output bfds. Separate - error message strings as in some languages, it may be necessary - to change more than one place in the string to change between - 'big' and 'little'. - - * elf32-ppc.c (ppc_elf_merge_private_bfd_data): Remove inline - endianess checks, call _bfd_generic_verify_endian_match() instead. - - * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data): Likewise. - - * elf32-mcore.c (mcore_elf_merge_private_bfd_data): Likewise. - - * elf32-arm.h (elf32_arm_merge_private_bfd_data): Likewise. Verify - endianess before checking bfd flavours. - -2000-05-22 H.J. Lu - - * elflink.h (elf_link_output_extsym): Clear the visibility - field for symbols not defined locally. - -2000-05-18 Alan Modra - - * libhppa.h (re_assemble_3, re_assemble_12, re_assemble_16, - re_assemble_17, re_assemble_21, re_assemble_22): Don't mask insn. - (hppa_rebuild_insn): Mask immediate bits here instead. - * elf-hppa.h (elf_hppa_relocate_insn): Mask here too. - -2000-05-18 Momchil Velikov - - * elflink.h (elf_bfd_final_link, elf_link_input_bfd): When emiting - relocs for an executable, ensure that they are virtual addresses. - -2000-05-18 Jeffrey A Law (law@cygnus.com) - - * config.bfd (hppa*64*-*-hpux11*): New target triplet. - -2000-05-17 S. Bharadwaj Yadavalli - Rick Gorton - - * elflink.h: Add emitrelocations support: when enabled, relocation - information and relocation sections are put into final output - executables. If the emitrelocations flag is set, do the following: - (elf_bfd_final_link): Emit relocation sections. - (elf_link_input_bfd): Compute relocation section contents. - (elf_gc_sections): Don't clean relocation sections. - -2000-05-16 Catherine Moore - - * som.c (som_decode_symclass): Recognize weak symbols. - -2000-05-16 Szabolcs Szakacsits - - * peigen.c (pe_print_idata): Undo part of 2000-05-12 change that - read idata section only from dataoff. - (pe_print_edata): Correctly check for valid eat_member. - -2000-05-16 J"orn Rennecke - - * elf32-sh.c (sh_elf_relax_delete_bytes): Handle R_SH_SWITCH8. - -2000-05-14 Philip Blundell - - * config.bfd (armeb-*-elf, arm*b-*-linux-gnu*): New targets. - -2000-05-12 Alan Modra - - * targets.c (bfd_target_vector): #ifdef BFD64 rs6000coff64_vec - - * peigen.c (pe_print_idata): Look for .idata section and print - info even if data directory has zero entries. Read idata section - starting from dataoff, and adjust all data offsets to suit. Cast - all bfd_vma vars to unsigned long before passing to fprintf. - * peigen.c (pe_print_edata): Similarly, look for .edata section - and print info even if data directory has zero entries. Cast - all bfd_vma vars to unsigned long before passing to fprintf. - - From Szabolcs Szakacsits - * peigen.c (pe_print_idata): Use bfd_section_size rather than data - directory size which may be bogus. - * peigen.c (pe_print_edata): Similarly. - -2000-05-09 Alan Modra - - * elf.c (bfd_section_from_shdr): Don't set use_rela_p if rela - section is empty. - (copy_private_bfd_data): Allow for space possibly taken up by elf - headers when calculating segment physical address from lma. - -2000-05-08 Alan Modra - - * versados.c (versados_scan): Init stringlen and pass_2_done. - - * trad-core.c (trad_unix_core_file_p): Return - bfd_error_wrong_format rather than bfd_error_file_truncated. - - * peigen.c (_bfd_pei_swap_aouthdr_out): Pass ImageBase to - add_data_entry. DataDirectory virtual address is relative. - (pe_print_idata): Account for relative DataDirectory virtual - addresses. Don't trash datasize inside POWERPC_LE_PE code. - (pe_print_edata): Similarly. - - From Szabolcs Szakacsits - * peigen.c (dir_names): Add Delay Import Directory. - (pe_print_idata): Always search for bfd section containing - idata address rather than looking up section name. Print this - section name rather than .idata. - (pe_print_edata): Similarly. Also print some fields as %08lx. - (_bfd_pe_print_private_bfd_data_common): Print Reserved1 field as - Win32Version. - -2000-05-05 Clinton Popetz - - * xcoff.h: Rename to xcoff-target.h - * Makefile.am: Change all instances of xcoff.h to xcoff-target.h - * coff-rs6000.c: Ditto. - * coff64-rs6000.c: Ditto. - * coff-pmac.c: Ditto. - * Makefile.in: Regenerate. - -2000-05-05 Clinton Popetz - - * coffcode.h (coff_set_arch_mach_hook, coff_set_flags): - Change U802TOC64MAGIC to U803XTOCMAGIC. - -2000-05-04 Michael Snyder - - * elf.c (bfd_elf_get_arch_size): New function, return 32 | 64 | -1. - * bfd-in.h: Prototype bfd_elf_get_arch_size. - * bfd-in2.h: Prototype bfd_elf_get_arch_size. - -2000-05-04 Alan Modra - - * libhppa.h (HPPA_R_CONSTANT): Cast argument to bfd_signed_vma. - -2000-05-03 Martin v. Löwis - - * elflink.h (elf_link_add_object_symbols): Reset dynindx for - hidden and internal symbols. - (elf_fix_symbol_flags): Clear NEEDS_PLT for symbols with - visibility. - * elflink.c (_bfd_elf_link_record_dynamic_symbol): Do not - assign a PLT or GOT entry to symbols with hidden and - internal visibility. - -2000-05-03 Mark Elbrecht - - * coff-go32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Add entry for - the .bss section. - * coff-stgo32.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise. - -2000-05-02 H.J. Lu - - * elf.c (prep_headers): Use ELFOSABI_NONE instead of - ELFOSABI_SYSV. - -2000-05-02 Alan Modra - - * targets.c (bfd_target_vector): Restore bfd_elf32_hppa_vec. - * Makefile.am (BFD32_BACKENDS): Restore elf32-hppa.lo. Regenerate - dependencies. - * Makefile.in: Regenerate. - -2000-05-01 Jim Wilson - - * Makefile.am (BFD32_BACKENDS): Add efi-app-ia32.lo. - (BFD32_BACKENDS_CFILES): Add efi-app-ia32.c. - (BFD64_BACKENDS): Delete coff-ia64.lo. Add efi-app-ia64.lo. - (BFD64_BACKENDS_CFILES): Delete coff-ia64.c. Add efi-app-ia64.c. - * Makefile.in: Rebuild. - -2000-05-02 Alan Modra - - * config.bfd: Re-enable elf32-hppa. It now compiles, even if it - doesn't work very well. - - * elf-hppa.h (elf_hppa_internal_shdr): Define. - (elf_hppa_fake_sections): hdr is elf_hppa_internal_shdr. - Set hdr->s_type to 1 if ARCH_SIZE == 32. - (_bfd_elf_hppa_gen_reloc_type): Add prototype. - (elf_hppa_info_to_howto): Likewise. - (elf_hppa_info_to_howto_rel): Likewise. - (elf_hppa_reloc_type_lookup): Likewise. - (elf_hppa_is_local_label_name): Likewise. - (elf_hppa_fake_sections): Likewise. - (elf_hppa_final_write_processing): Likewise. - (elf_hppa_howto_table): Fully initialise all entries. - (_bfd_elf_hppa_gen_reloc_type): Add ATTRIBUTE_UNUSED to args. - (elf_hppa_info_to_howto): Likewise. - (elf_hppa_info_to_howto_rel): Likewise. - (elf_hppa_reloc_type_lookup): Likewise. - (elf_hppa_final_write_processing, elf_hppa_add_symbol_hook, - elf_hppa_unmark_useless_dynamic_symbols, - elf_hppa_remark_useless_dynamic_symbols, - elf_hppa_record_segment_addrs, elf_hppa_final_link, - elf_hppa_relocate_section, elf_hppa_final_link_relocate, - elf_hppa_relocate_insn): Compile only if ARCH_SIZE == 64 until - elf32-hppa.c mess is cleaned up. - (elf_hppa_final_link_relocate): Make insn and r_type unsigned - int. Delete r_field. In case R_PARISC_PCREL21L, don't set - r_field then call hppa_field_adjust inline func with variable - r_field arg, instead call hppa_field_adjust with fixed arg. - In case R_PARISC_PCREL22F, don't set r_field. - (elf_hppa_relocate_insn): Change args and return type to unsigned - int. Call re_assemble_* funcs to do the work. - - * elf32-hppa.c (hppa_elf_relocate_insn): Don't assume 32 bit when - sign extending. - - * libhppa.h (HPPA_R_CONSTANT): Don't assume 32 bit when sign - extending. - (sign_extend): Mask first before sign extending. - (low_sign_extend): Rewrite without condition expression. - (ones, dis_assemble_3, dis_assemble_12, dis_assemble_16, - dis_assemble_17, dis_assemble_21, dis_assemble_22): Delete. - (assemble_3, assemble_6, assemble_12, assemble_16, assemble_16a, - assemble_17, assemble_21, sign_unext, low_sign_unext): Return - result as function return value rather than through pointer arg. - Accept unsigned int args, and return unsigned int. - (re_assemble_3): New. Combines function of dis_assemble_3 with - re-assembly of opcode and immediate. - (re_assemble_12): Likewise. - (re_assemble_16): Likewise. - (re_assemble_17): Likewise. - (re_assemble_21): Likewise. - (re_assemble_22): Likewise. - (hppa_field_adjust): Rewrite and document, paying attention to - size of types and signed/unsigned issues. - (get_opcode): Shift before masking. - (FDLW): Rename to FLDW. - (bfd_hppa_insn2fmt): Change arg to unsigned int. Delete fmt. - (hppa_rebuild_insn): Change args and return value to unsigned - int. Make use of re_assemble_*. Correct case 11. - - * dep-in.sed: Handle ../opcodes/. - * Makefile.am (SOURCE_HFILES): Add elf-hppa.h, elf32-hppa.h, - elf64-hppa.h, hppa_stubs.h, xcoff.h. - (BFD32_BACKENDS_CFILES): Restore elf32-hppa.c. - Remove elf64-hppa.lo, cpu-ia64.lo, elf64-ia64.lo, elfarm-oabi.lo, - elfarm-nabi.lo dependencies outside of auto-dependency area. - Regenerate dependencies. - * Makefile.in: Regenerate. - - * configure.in (TRAD_HEADER): Test non-null before - AC_DEFINE_UNQUOTED. - * configure: Regenerate. - - * reloc.c: Fix mis-spelling in comment. - -2000-05-01 Alan Modra - - * coff-sh.c (bfd_coff_small_swap_table): Fix Fri Apr 28 change. - * vms.c (vms_openr_next_archived_file): Return NULL. - -2000-04-28 Clinton Popetz - - * coffcode.h Copy changes mistakenly done to libcoff.h in - 4/24/2000 patch. - -2000-04-29 Andreas Jaeger - - * libbfd-in.h: Correctly check GCC version. - * bfd-in.h: Likewise. - * libhppa.h: Likewise. - * libbfd.h: Regenerate. - * bfd-in2.h: Regenerate. - -2000-04-28 Clinton Popetz - - * Makefile.am (BFD64_BACKENDS, BFD64_BACKENDS_CFILES): Add - coffdu-rs6000.{lo,c}. - (coff-pmac.lo, coff-rs6000.lo, coff64-rs6000.lo): Add dependency - on xcoff.h - * Makefile.in: Regenerate. - * xcoff.h: New file. - * coff-pmac.c: Use xcoff.h instead of coff-rs6000.c. - * coff-rs6000.c: Move all declarations and defines that are - common to the xcoff backends into xcoff.h - * coff64-rs6000.c: Ditto, - -2000-04-28 Clinton Popetz - - * coff-mips.c (mips_ecoff_backend_data): Add initialization of - _bfd_coff_force_symnames in strings and - _bfd_coff_debug_string_prefix_length to their default values. - * coff-sh.c: (bfd_coff_small_swap_table): Ditto. - -2000-04-28 Clinton Popetz - - * coff-alpha.c (alpha_ecoff_backend_data): Add initialization of - _bfd_coff_force_symnames in strings and - _bfd_coff_debug_string_prefix_length to their default values. - -2000-04-27 Alan Modra - - * elf32-m68k.c (elf_m68k_gc_sweep_hook): Return if dynobj NULL. - Check local_got_refcounts before dereferencing. - - * elf32-ppc.c (ppc_elf_relocate_section): Check splt != NULL - before deciding we don't need R_PPC_PLT32 relocation. - (ppc_elf_gc_sweep_hook): Check local_got_refcounts before - dereferencing. - - * elflink.h (elf_gc_common_finalize_got_offsets): Fix comment. - - * elf32-i386.c (elf_i386_check_relocs): Reference count .got and - .plt entries. - (elf_i386_gc_sweep_hook): Garbage collect .got and .plt entries. - (elf_i386_adjust_dynamic_symbol): Recognize unused .plt entries. - (elf_i386_relocate_section): Allow for .plt to go missing. - (elf_i386_finish_dynamic_symbol): Use same test to decide if we - can use a relative reloc for got as elf_i386_relocate_section. - (bfd_elf32_bfd_final_link): Define to use gc form of final link. - -2000-04-26 Clinton Popetz - - * config.bfd: Remove extraneous bfd_powerpc_64_arch. - -2000-04-24 Clinton Popetz - - * Makefile.am (coff64-rs6000.lo): New rule. - * Makefile.in: Regenerate. - * coff-rs6000.c (xcoff_mkobject, xcoff_copy_private_bfd_data, - xcoff_is_local_label_name, xcoff_rtype2howto, - xcoff_reloc_type_lookup, xcoff_slurp_armap, xcoff_archive_p, - xcoff_read_ar_hdr, xcoff_openr_next_archived_file, xcoff_write_armap, - xcoff_write_archive_contents): No longer static, and prefix with _bfd_. - (NO_COFF_SYMBOLS): Define. - (xcoff64_swap_sym_in, xcoff64_swap_sym_out, xcoff64_swap_aux_in, - xcoff64_swap_aux_out): New functions; handle xcoff symbol tables - internally. - (MINUS_ONE): New macro. - (xcoff_howto_tabl, xcoff_reloc_type_lookup): Add 64 bit POS - relocation. - (coff_SWAP_sym_in, coff_SWAP_sym_out, coff_SWAP_aux_in, - coff_SWAP_aux_out): Map to the new functions. - * coff64-rs6000.c: New file. - * libcoff.h (bfd_coff_backend_data): Add new fields - _bfd_coff_force_symnames_in_strings and - _bfd_coff_debug_string_prefix_length. - (bfd_coff_force_symnames_in_strings, - bfd_coff_debug_string_prefix_length): New macros for above fields. - * coffcode.h (coff_set_arch_mach_hook): Handle XCOFF64 magic. - Set machine to 620 for XCOFF64. Use bfd_coff_swap_sym_in instead - of using coff_swap_sym_in directly. - (FORCE_SYMNAMES_IN_STRINGS): New macro, defined for XCOFF64. - (coff_set_flags) Set magic for XCOFF64. - (coff_compute_section_file_positions): Add symbol name length to - string section length if bfd_coff_debug_string_prefix_length is - true. - (coff_write_object_contents): Don't do reloc overflow for XCOFF64. - (coff_slurp_line_table): Use bfd_coff_swap_lineno_in instead of - using coff_swap_lineno_in directly. - (bfd_coff_backend_data): Add _bfd_coff_force_symnames_in_strings - and _bfd_coff_debug_string_prefix_length fields. - * coffgen.c (coff_fix_symbol_name, coff_write_symbols): Force - symbol names into strings table when - bfd_coff_force_symnames_in_strings is true. - * coffswap.h (MAX_SCNHDR_NRELOC, MAX_SCNHDR_NLNNO, GET_RELOC_VADDR, - SET_RELOC_VADDR): New macros. - (coff_swap_reloc_in, coff_swap_reloc_out): Use above macros. - (coff_swap_aux_in, coff_swap_aux_out): Remove RS6000COFF_C - code. - (coff_swap_aouthdr_in, coff_swap_aouthdr_out): Handle XCOFF64 - changes within RS6000COFF_C specific code. - (coff_swap_scnhdr_out): Use PUT_SCNHDR_NLNNO, PUT_SCNHDR_NRELOC, - MAX_SCNHDR_NRELOC, and MAX_SCNHDR_NLNNO. - * reloc.c (bfd_perform_relocation, bfd_install_relocation): - Extend existing hack on target name. - * xcofflink.c (XCOFF_XVECP): Extend existing hack on - target name. - * coff-tic54x.c (ticof): Keep up to date with new fields - in bfd_coff_backend_data. - * config.bfd: Add bfd_powerpc_64_arch to targ_arch and define - targ_selvecs to include rs6000coff64_vec for rs6000. - * configure.in: Add rs6000coff64_vec case. - * cpu-powerpc.c: New bfd_arch_info_type. - -2000-04-24 Jeffrey A Law (law@cygnus.com) - - * config.bfd: Only disable elf32-hppa vectors, not all of the - BSD and OSF configuration support. Provide (disabled) clauses - for PA64 support. - * configure.in: Add clause for PA64 support. - * configure: Rebuilt. - - * targets.c (bfd_target_vector): Add bfd_elf64_hppa_vec. - (bfd_elf64_hppa_vec): Declare. - - * Makefile.am (BFD64_BACKENDS): Add elf64-hppa.lo - (BFD64_BACKENDS_CFILES): Add elf64-hppa.c - (elf64-hppa.lo): Add dependencies. - * Makefile.in: Rebuilt. - - * elf64-hppa.c, elf64-hppa.h: New files with PA64 support. - -2000-04-24 Jason Eckhardt - - * libhppa.h (dis_assemble_16): New function. - (pa_arch): Added pa20w element. - -2000-04-24 Ulrich Drepper - - * elf-bfd.h: Add prototypes for bfd_elf32_write_relocs, - bfd_elf32_slurp_reloc_table, bfd_elf64_write_relocs, and - bfd_elf64_slurp_reloc_table. - - * elfcode.h (elf_write_relocs, elf_slurp_reloc_table): New - definitions to get external names. - (elf_write_relocs): Renamed from write_relocs and make global. - (elf_slurp_reloc_table): Make global. - (_bfd_elf,size_info): Use elf_write_relocs instead of write_relocs. - - * archive.c (hpux_uid_gid_encode): New function. - (bfd_ar_hdr_from_filesystem): Use it if HPUX_LARGE_AR_IDS is - defined and the ID is greater than 99999. - (bfd_generic_stat_arch_elt): If HPUX_LARGE_AR_IDS is defined decode - special uid/gid fields into 32 bit values. - -2000-04-21 Matthew Green - - * config.bfd: Add NetBSD/sparc64 support. - -2000-04-21 Richard Henderson - David Mosberger - Timothy Wall - Jim Wilson - - * Makefile.am (ALL_MACHINES): Add cpu-ia64.lo. - (ALL_MACHINES_CFILES): Add cpu-ia64.c. - (BFD64_BACKENDS): Add elf64-ia64.lo. - (BFD64_BACKENDS_CFILES): Add elf64-ia64.c. - (cpu-ia64.lo, elf64-ia64.lo): New rules. - * Makefile.in: Rebuild. - * archures.c (enum bfd_architecture): Add bfd_arch_ia64. - (bfd_ia64_arch): Declare. - (bfd_archures_list): Add bfd_ia64_arch. - * bfd-in2.h: Rebuild. - * config.bfd: (ia64*-*-linux-gnu*, ia64*-*-elf*): New targets. - * configure: Rebuild. - * configure.host: (ia64-*-linux*): New host. - * configure.in (bfd_elf64_ia64_little_vec, bfd_elf64_ia64_big_vec, - bfd_efi_app_ia64_vec, bfd_efi_app_ia64_vec): New vectors. - * elf.c (prep_headers): Add bfd_arch_ia64. - * libbfd.h: Rebuild. - * reloc.c: Add IA-64 relocations. - * targets.c (bfd_elf64_ia64_little_vec, bfd_elf64_ia64_big_vec): - Declare. - (bfd_target_vect): Add bfd_elf64_ia64_little_vec. - * cpu-ia64-opc.c, cpu-ia64.c, elf64-ia64.c: New files. - -2000-04-21 Richard Henderson - - * elf32-d30v.c (bfd_elf_d30v_reloc): Don't modify section - contents when performing a partial link. - (bfd_elf_d30v_reloc_21): Likewise. - -2000-04-20 H.J. Lu - - * elf32-i386.c (elf_i386_relocate_section): Restrict 1998-12-10 - patch to symbols defined by a shared object. - * elf32-ppc.c (ppc_elf_relocate_section): Similarly. - -2000-04-19 Michael Sokolov - - K&R compiler fixes. - * dwarf2.c (concat_filename): Avoid string literal concatenation. - * ieee.c (ieee_get_symtab): Don't initialise union in struct. - -2000-04-11 David Mosberger - - * Makefile.am (BFD64_BACKENDS): Mention coff-ia64.lo. - (BFD64_BACKENDS_CFILES): Mention coff-ia64.c - (coff-ia64.lo): Add dependency. - * Makefile.in: Regenerate. - * coff-ia64.c: New file. - * efi-app-ia32.c: Ditto. - * efi-app-ia64.c: Ditto. - * coffcode.h (coff_set_arch_mach_hook): Handle IA64MAGIC. - (coff_set_flags): Ditto. - (coff_write_object_contents) [IA64]: Set magic number to ZMAGIC. - * config.bfd (i[3456]86-*-linux-gnu*): Mention bfd_efi_app_ia32_vec. - * configure.in (elf): Handle bfd_efi_app_ia32 and bfd_efi_app_ia64_vec. - * configure: Regenerate. - * libpei.h (GET_OPTHDR_IMAGE_BASE): New macro. - (PUT_OPTHDR_IMAGE_BASE): Ditto. - (GET_OPTHDR_SIZE_OF_STACK_RESERVE): Ditto. - (PUT_OPTHDR_SIZE_OF_STACK_RESERVE): Ditto. - (GET_OPTHDR_SIZE_OF_STACK_COMMIT): Ditto. - (PUT_OPTHDR_SIZE_OF_STACK_COMMIT): Ditto. - (GET_OPTHDR_SIZE_OF_HEAP_RESERVE): Ditto. - (PUT_OPTHDR_SIZE_OF_HEAP_RESERVE): Ditto. - (GET_OPTHDR_SIZE_OF_HEAP_COMMIT): Ditto. - (PUT_OPTHDR_SIZE_OF_HEAP_COMMIT): Ditto. - (GET_PDATA_ENTRY): Ditto. - * peigen.c (_bfd_pei_swap_aouthdr_in) [COFF_WITH_PEP64]: Don't read - data_start. Use above macros to read fields that are 64 bit wide for - COFF_WITH_PEP64. Don't truncate entry and text_start to 32 bits. - (_bfd_pei_swap_aouthdr_out) [PEI_FORCE_MINIMUM_ALIGNMENT]: Force - FileAlignment and SectionAlignment to minimum alignment if they - are zero. - (_bfd_pei_swap_aouthdr_out) [PEI_DEFAULT_TARGET_SUBSYSTEM]: Set - Subsystem to default PEI_DEFAULT_TARGET_SUBSYSTEM. - (_bfd_pei_swap_aouthdr_out) [COFF_WITH_PEP64]: Don't set data_start. - Use above macros to write fields that are 64 bit wide for - COFF_WITH_PEP64. - (pe_print_pdata): Set PDATA_ROW_SIZE to 3*8 for COFF_WITH_PEP64, - 5*4 otherwise. This should be right for IA-32 and IA-64, but may - be wrong for platforms. Use PDATA_ROW_SIZE instead of hardcoded - value of 20 bytes. Modify printing for COFF_WITH_PEP64 to print - begin address, end address, and unwind info address only. Use - GET_PDATA_ENTRY() to read .pdata entries. Use fprintf_vma() to - print addresses. - (tbl): Add SECTION, REL32, RESERVED1, MIPS_JMPADDR16, DIR64, and - HIGH3ADJ relocation names. - (_bfd_pe_print_private_bfd_data): Print Subsystem name in legible form. - * targets.c: Declare bfd_efi_app_ia32_vec and - bfd_efi_app_ia64_vec. - (bfd_target_vector): Mention bfd_efi_app_ia32_vec and - bfd_efi_app_ia64_vec. - -2000-04-17 Timothy Wall - - * bfd-in2.h: Add prototypes for tic54x load page access. - * bfd-in.h: Regenerate. - * coff-tic54x.c: Add load page functions; allow bfd_arch_unknown - in customized _set_arch_mach function. - * coffcode.h (coff_set_alignment_hook): Set section load page if - the appropriate macro is defined. - (write_object_contents): Read section load page. - -2000-04-13 Alan Modra - - * elf32-hppa.h: Update copyright date. - - * elf32-fr30.c (fr30_elf_i20_reloc): Don't use U suffix. - * elf32-mips.c (_bfd_mips_elf_relocate_section): And here. - - * elf32-d30v.c (MAX32): Don't use LL suffix. - (MIN32): Define in terms of MAX32. - (bfd_elf_d30v_reloc): Make relocation a bfd_signed_vma. - - * coff-a29k.c (SIGN_EXTEND_HWORD): Replace with more concise - expression. - - * peicode.h (pe_ILF_build_a_bfd): Remove UL from hex constants. - -2000-04-12 Alan Modra - - * dep-in.sed: Match space before file name, not after. - * Makefile.am: Regenerate dependencies. - * Makefile.in: Regenerate. - - * reloc.c (_bfd_relocate_contents): In complain_overflow_bitfield - case, allow address wrap-around stupidly removed 2000-03-17. Sign - extend without an if statement. - -2000-04-11 Alan Modra - - * coff-mips.c (mips_gprel_reloc): Test for 16 bit range using - signed quantites. - * elf32-mips.c (gprel16_with_gp): Likewise. - * elf32-hppa.c (elf32_hppa_bfd_final_link_relocate): Test range - here using -0x40000, not (int)0xfffc0000. - (elf32_hppa_size_of_stub): Likewise. - -2000-04-11 Timothy Wall - - * coff-tic54x.c: Now builds with all targets. - * Makefile.am: Add coff/tic54x.h to coff-tic54x.o dependencies. - * Makefile.in: Regenerate. - * coffcode.h (coff_set_arch_mach_hook): Eliminate warning on - unitialized variable. - -2000-04-07 Andrew Cagney - - * configure.in (WARN_CFLAGS): Set to -W -Wall by default. Add - --enable-build-warnings option. - * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions. - * Makefile.in, configure: Re-generate. - -2000-04-07 Nick Clifton - - * reloc.c: Add BFD_RELOC_ARM_PCREL_BLX and - BFD_RELOC_THUMB_PCREL_BLX. - - * elf32-arm.h (elf32_arm_final_link_relocate): Handle - R_ARM_XPC25 and R_ARM_THM_PC22. - - * elfarm-nabi.c (elf32_arm_howto_): Fix definitions of - R_ARM_XPC25 and R_ARM_THM_XPC22. - (elf32_arm_reloc_map): Make BFD_RELOC_{ARM|THUMB}_PCREL_BLX to - R_ARM_[XPC25|THM_XPC22]. - - * elfarm-oabi.c: Define OLD_ARM_ABI and change include from - elf/arm-oabi.h to elf/arm.h - - * Makefile.am: Fix dependency for elfarm-oabi.c - * Makefile.in: Regenerate. - - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - -2000-04-06 Michael Snyder - - * elfcore.h (elf_core_file_p): preserve value of tdata at entry, - and restore it on failure. Release newly allocated tdata on - failure. - -2000-04-07 Jim Wilson - - * dwarf2.c (struct dwarf2_debug): New field dwarf_line_size. - (decode_line_info): Set it. Report error if unit->line_offset is - equal to or larger than it. - -2000-04-07 Timothy Wall - - * targets.c: Added vecs for tic54x. - * reloc.c: Added relocs for tic54x. - * libbfd.h: Regenerated. - * configure: Add TI COFF vecs for tic54x. - * configure.in: Ditto. - * config.bfd (targ_cpu): Recognize new tic54x target. - * coffcode.h (coff_slurp_symbol_table): Additions for TI COFF handling. - * bfd-in2.h: Add tic54x target and relocations. - * Makefile.am, Makefile.in: Add tic54x target. - * archures.c (bfd_archures_list): Add tic54x target. - * coff-tic54x.c: New. - * cpu-tic54x.c: New. - -2000-04-06 Michael Snyder - - * elfcore.h (elf_core_file_p): call backend_object_p which - thereby gets an opportunity to update the arch/machine type. - -2000-04-06 Timothy Wall - - * coffcode.h (coff_slurp_symbol_table): Handle C_STATLAB storage - class. Handle SEC_CLINK and SEC_BLOCK flags. - * section.c: Add SEC_CLINK and SEC_BLOCK flags. - * bfd-in2.h: Add SEC_CLINK and SEC_BLOCK flags. - -2000-04-06 Nick Clifton - - * elf32-arm.h (elf32_arm_set_private_flags): Only check for - EF_INTERWORK if this is an unknown EABI. - (elf32_arm_merge_private_bfd_data): Check EABI version - numbers. Only check EF_xxx flags if the EABI version number - is unknown. - (elf32_arm_check_private_bfd_data): Only check EF_xxx flags - if the EABI version number is unknown. - (elf32_arm_print_private_bfd_data): Only decode EF_xxx flags - if the EABI version number is unknown. - -2000-04-05 J"orn Rennecke - - * reloc.c (_bfd_relocate_contents): Add BFD_RELOC_SH_LOOP_START and - BFD_RELOC_SH_LOOP_END. - * elf32-sh.c (sh_elf_howto_tab): Change special_func to - sh_elf_ignore_reloc for all entries that sh_elf_reloc used to ignore. - Add entries for R_SH_LOOP_START and R_SH_LOOP_END. - (sh_elf_reloc_loop): New function. - (sh_elf_reloc): No need to test for always-to-be-ignored relocs - any more. - (sh_rel): Add entries for BFD_RELOC_SH_LOOP_{START,END}. - (sh_elf_relocate_section): Handle BFD_RELOC_SH_LOOP_{START,END}. - * bfd-in2.h, libbfd.h: Regenerate. - -2000-04-04 Alan Modra - - * po/bfd.pot: Regenerate. - - * Makefile.am: Remove extraneous mkdep comment. - (MKDEP): Use gcc -MM rather than mkdep. - (DEP): Quote when passing vars to sub-make. Add warning - message to end. - (DEP1): Rewrite for "gcc -MM". - (CLEANFILES): Add DEP2. - Update dependencies. - * Makefile.in: Regenerate. - -2000-04-03 Kevin Buettner - - * configure.in: Added corefile support for AIX 4.3. In particular, - AIX_CORE_DUMPX_CORE will be defined in addition to AIX_CORE when - compiling rs6000-core.c. - * configure: Regenerated. - -2000-04-03 H.J. Lu - - * cache.c (bfd_open_file): Unlink the output file only if - it has non-zero size. - -2000-04-01 Ken Block USG - - * elf64-alpha.c (elf64_alpha_relocate_section): Don't emit - relative relocations for non-loaded sections in shared objects. - (elf64_alpha_check_relocs): Similarly. - -2000-04-03 Hans-Peter Nilsson - - * aoutx.h (NAME(aout,reloc_type_lookup)): Add BFD_RELOC_8 and - BFD_RELOC_16 to switch for extended relocs. - (MY_swap_ext_reloc_in): New. - (MY_swap_ext_reloc_out): New. - (NAME(aout,slurp_reloc_table)): Use MY_swap_ext_reloc_in rather - than NAME(aout,swap_ext_reloc_in) for extended relocs. - (NAME(aout,squirt_out_relocs)): Similarly use - MY_swap_ext_reloc_out. - (aout_link_reloc_link_order): Use MY_put_ext_reloc if defined. - -2000-04-03 Kazu Hirata - - * coff-h8300.c (h8300_reloc16_extra_cases): Add bsr:16 -> bsr:8 to - the R_PCRWORD_B case. - -2000-03-31 Thomas de Lellis - - * srec.c : Set CHUNK size to 16 bytes to prevent download failures - on some targets. - * ihex.c : Ditto. - -2000-03-30 Donald Lindsay - - * elf32-m32r.c (m32r_elf_generic_reloc): new function. All - HOWTO references to bfd_elf_generic_reloc, that have - partial_inplace == true, now use the new function. The function - is based on the recent rewrite of m32r_elf_lo16_reloc(), and - extends its fixes to the R_M32R_{16,24,32} relocs. - The new logic in m32r_elf_lo16_reloc() has been removed, and - it instead calls the new routine to obtain that functionality. - -2000-03-27 Alan Modra - - * elf32-avr.c (elf32_avr_gc_mark_hook, elf32_avr_gc_sweep_hook, - elf32_avr_check_relocs, avr_final_link_relocate, - elf32_avr_relocate_section, bfd_elf_avr_final_write_processing, - elf32_avr_object_p): Add prototypes. - (elf32_avr_gc_mark_hook): Add default for h->root.type. - (bfd_elf_avr_final_write_processing): Make static. - -2000-03-27 Denis Chertykov - - * cpu-avr.c: New file. BFD support routines for AVR architecture. - * archures.c (bfd_architecture): Add AVR architecture. - (bfd_archures_list): Add reference to AVR architecture info. - * elf.c (prep_headers): Handle bfd_arch_avr. - * reloc.c: Add various AVR relocation enums. - * targets.c (bfd_elf32_avr_vec): Declare and add to target vector - list. - * Makefile.am: Add support for AVR elf. - * configure.in: Likewise. - * config.bfd: Likewise. - * Makefile.in: Regenerate. - * configure: This too. - * bfd-in2.h: And this. - * libbfd.h: And this. - -2000-03-24 H.J. Lu - - * elf64-alpha.c (elf64_alpha_merge_ind_symbols): Add prototype. - (elf64_alpha_find_reloc_at_ofs): Likewise. - -2000-03-17 Alan Modra - - * reloc.c (bfd_check_overflow): In case complain_overflow_bitfield, - flag an overflow if the bitfield is outside -2**n to 2**n-1. The - allowable range used to be -2**(n-1) to 2**n-1. - * reloc.c (_bfd_relocate_contents): Same here. Also replace - "boolean overflow" with "bfd_reloc_status_type flag". - -2000-03-14 Doug Evans - - * elf32-m32r.c (m32r_elf_lo16_reloc): Rewrite. - -2000-03-14 Kazu Hirata - - * reloc16.c (bfd_coff_reloc16_relax_section): Count the total number - of shrinks properly, including the last reloc. - -2000-03-13 Kazu Hirata - - * coff-h8300.c (h8300_reloc16_extra_cases): Fix the sanity - check for R_MOVL2. - -2000-03-11 Alan Modra - - * ieee.c (ieee_archive_p): Return bfd_error_wrong_format on - a format mismatch rather than an "error" from bfd_read such as - bfd_error_file_truncated. - -2000-03-10 Geoff Keating - - * elf32-mips.c (_bfd_mips_elf_relocate_section): Do proper - sign-extension and big-endian compensation for - R_MIPS_64 even in ld -r. - -2000-03-10 Geoffrey Keating - - * elf32-mips.c (mips_elf_next_relocation): Rename from - mips_elf_next_lo16_relocation, and generalize to look - for any relocation type. - (elf_mips_howto_table): Make R_MIPS_PC16 pcrel_offset. - (elf_mips_gnu_rel_hi16): Howto for R_MIPS_GNU_REL_HI16. - (elf_mips_gnu_rel_lo16): Howto for R_MIPS_GNU_REL_LO16. - (elf_mips_gnu_rel16_s2): Howto for R_MIPS_GNU_REL16_S2. - (elf_mips_gnu_pcrel64): Howto for R_MIPS_PC64. - (elf_mips_gnu_pcrel32): Howto for R_MIPS_PC32. - (bfd_elf32_bfd_reloc_type_lookup): Add new relocs. - (mips_rtype_to_howto): Likewise. - (mips_elf_calculate_relocation): Handle new relocs. - (_bfd_mips_elf_relocate_section): REL_HI16/REL_LO16 relocs - are paired. The addend for R_MIPS_GNU_REL16_S2 - is shifted right two bits. - -2000-03-10 Alan Modra - - * reloc.c (bfd_perform_relocation): Undo emacs formatting of - comment, and ensure it doesn't happen again. - (bfd_install_relocation): Same here. - (_bfd_relocate_contents): Don't bother assigning unused signmask - shift result. Fix typos in comments. - Remove trailing whitespace throughout file. - -2000-03-07 Doug Evans - - * reloc.c (reloc_howto_struct): Fix partial_inplace comment. - * bfd-in2.h: Rebuild. - -2000-03-06 Nick Clifton - - * peicode.h (struct pe_ILF_vars): Add sym_ptr_table and - sym_ptr_ptr fields. - (SIZEOF_ILF_SYM_PTR_TABLE): Define. - (SIZEOF_ILF_STRINGS): Redefine. - (pe_ILF_make_a_symbol-reloc): New function. Creates a symbol - relative reloc, as opposed to a section relative reloc. - (pe_ILF_make_a_symbol): Set the class of local symbols to C_STAT - not C_LABEL. - Add length of symbol's prefix to string pointer. - Store a pointer to the symbol in the symbol pointer table. - (pe_ILF_build_a_bfd): Do not build .idata$2 or .idata$7. - Initialise the symbol pointer table. - Store the hint in the Hint/Name table. - Make the jump reloc be symbol realtive, not section relative. - Create an import symbol for imported code. - -2000-03-06 Catherine Moore - - * elf.c (swap_out_syms): Check for null type_ptr. - -2000-03-01 Hans-Peter Nilsson - - * aout-target.h (MY(write_object_contents)): Remove unused - and unusable "#if CHOOSE_RELOC_SIZE". - * pc532-mach.c (MY(write_object_contents)): Ditto. - * netbsd.h (MY(write_object_contents)): Ditto. - * hp300hpux.c (MY(write_object_contents)): Ditto. - * freebsd.h (MY(write_object_contents)): Ditto. - * aout-tic30.c (tic30_aout_write_object_contents): Ditto. - -2000-02-29 H.J. Lu - - * peicode.h (jtab): Make it static. - - * coff-sh.c (sh_align_load_span): Declared if COFF_WITH_PE is - defined and COFF_IMAGE_WITH_PE is not defined. - (_bfd_sh_align_load_span): Defined as sh_align_load_span if - COFF_WITH_PE is defined and COFF_IMAGE_WITH_PE is not defined. - -2000-03-01 Nick Clifton - - * coff-arm.c (bfd_arm_process_before_allocation): Make - 'symndx' signed to prevent compile time warning. - - * coff-mcore.c: Remove unused prototype for pe_object_p. - - * coff-sh.c: Add "#ifndef COFF_IMAGE_WITH_PE" around static - functions that are not used when COFF_IMAGE_WITH_PE is - defined. - (struct sh_opcode): Change type of 'flags' field to unsigned - long so that it can hold the USESAS flag. - - * coffcode.h (styp_to_sec_flags): Initialise 'target_name'. - - * elf-m10300.c (mn10300_elf_relax_section): Initialise - 'sym_sec'. - - * elf32-i370.c: Add ATTRIBUTE_UNUSED to unused function - parameters. - Remove unusued variables and code. - (elf_backend_add_symbol_hook): Fix prototype. - - * elf32-m68k.c (elf_m68k_gc_sweep_hook): Initialise 'sgot' and - 'srelgot'. - - * elf32-mcore.c (mcore_elf_relocate_section): Initialise - 'oldinst'. - - * elf32-mips.c: Add ATTRIBUTE_UNUSED to unused function - parameters. - Remove unusued variables and code. - (elf_backend_add_symbol_hook): Fix prototype. - - * elf32-sh.c (sh_elf_set_mach_from_flags): Use 'flags'. - - * elflink.h (elf_bfd_link_add_symbols): Add ATTRIBUTE_UNUSED - to unused function parameter. - - * pe-mips.c: Add ATTRIBUTE_UNUSED to unused function - parameters. - Use EMPTY_HOWTO to initialise empty howto slots. - Remove unused variables. - - * peicode.h (pe_ILF_build_a_bfd): Initialise id6. - -2000-03-01 H.J. Lu - - * aoutx.h (aout_link_input_section_std): Pass "true" to - the undefined_symbol callback. - (aout_link_input_section_ext): Likewise. - * bout.c (get_value): Likewise. - * coff-a29k.c (coff_a29k_relocate_section): Likewise. - * coff-alpha.c (alpha_ecoff_get_relocated_section_conten): - Likewise. - (alpha_relocate_section): Likewise. - * coff-arm.c (coff_arm_relocate_section): Likewise. - * coff-i960.c (coff_i960_relocate_section): Likewise. - * coff-mcore.c (coff_mcore_relocate_section): Likewise. - * coff-mips.c (mips_relocate_section): Likewise. - * coff-ppc.c (coff_ppc_relocate_section): Likewise. - * coff-sh.c (sh_relocate_section): Likewise. - * coff-tic80.c (coff_tic80_relocate_section): Likewise. - * cofflink.c (_bfd_coff_generic_relocate_section): Likewise. - * elf-m10200.c (mn10200_elf_relocate_section): Likewise. - * elf-m10300.c (mn10300_elf_relocate_section): Likewise. - * elf32-d10v.c (elf32_d10v_relocate_section): Likewise. - * elf32-fr30.c (fr30_elf_relocate_section): Likewise. - * elf32-hppa.c (elf32_hppa_relocate_section): Likewise. - * elf32-i370.c (i370_elf_relocate_section): Likewise. - * elf32-m32r.c (m32r_elf_relocate_section): Likewise. - * elf32-mcore.c (mcore_elf_relocate_section): Likewise. - * elf32-sh.c (sh_elf_relocate_section): Likewise. - * elf32-v850.c (v850_elf_relocate_section): Likewise. - * elflink.c (_bfd_elf_link_record_dynamic_symbol): Likewise. - * elflink.h (elf_link_output_extsym): Likewise. - * pe-mips.c (coff_pe_mips_relocate_section): Likewise. - * reloc.c (bfd_generic_get_relocated_section_conten): Likewise. - * reloc16.c (_bfd_ppc_xcoff_relocate_section): Likewise. - - * elf-hppa.h (elf_hppa_relocate_section): Pass "false" to the - undefined_symbol callback when building shared library with - -Bsymbolic and undefined symbols are allowed. Otherwise, pass - "true". - * elf32-arm.h (elf32_arm_relocate_section): Likewise. - * elf32-i386.c (elf_i386_relocate_section): Likewise. - * elf32-m68k.c (elf_m68k_relocate_section): Likewise. - * elf32-mips.c (mips_elf_calculate_relocation): Likewise. - (elf32_mips_get_relocated_section_content): Likewise. - * elf32-ppc.c (ppc_elf_relocate_section): Likewise. - * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. - * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. - * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. - -2000-02-28 Nick Clifton - - * Makefile.am: Add rules to build pe[i]-{sh|mips}.lo objects. - * Makefile.in: Regenerate. - - * configure.in: Add support for mips and sh pe vectors. - * configure: regenerate. - - * config.bfd: Add support for arm-wince, mips-pe and sh-pe - targets. - - * targets.c: Add mips and sh pe vectors. - - * libpei.h (coff_final_link_postscript): Only define if not - already defined. - - * coffcode.h: Add support for WinCE magic numbers. - - * peigen.c (pe_print_reloc): Update comment and rearrange - appending of newline character. - - * peicode.h: Add support for Image Library Format. - (pe_ILF_vars): Structure containing data used by ILF code. - (pe_ILF_make_a_section): New function. Create a section based - on ILF data. - (pe_ILF_make_a_reloc): New function. Create a reloc based on - ILF data. - (pe_ILF_make_a_symbol): New function. Create a symbol based - on ILF data. - (pe_ILF_save_relocs): New function. Store the relocs created - by pe_ILF_make_a_reloc in a section. - (pe_ILF_build_a_bfd): New function. Create a BFD describing - an ILF object. - (pe_ILF_object_p): New function. Return a bfd_target pointer - for an ILF object. - (pe_bfd_object_p): If an ILF object is detected call - pe_ILF_object_p on it. - - * coff-arm.c: Add support for WinCE relocs which are different - from normal ARM COFF relocs. - * pe-arm.c: Unset TARGET_UNDERSCORE for a WinCE target. - - * coff-sh.c: Add support for sh-pe target. - * pe-sh.c: New file. Support code for sh-pe target. - * pei-sh.c: New file. Support code for sh-pe target. - - * pe-mips.c: New file. Support code for mips-pe target. - * pei-mips.c: New file. Support code for mips-pe target. - -2000-02-27 Jakub Jelinek - - * elf32-sparc.c (elf32_sparc_merge_private_bfd_data): Don't bump - architecture if the object causing the bump is dynamic. - * elf64-sparc.c (sparc64_elf_merge_private_bfd_data): Likewise, - and also don't it for memory ordering. - (sparc64_elf_write_relocs): Take src_rela out of the loop. - -2000-02-27 Ian Lance Taylor - - * dwarf2.c (read_abbrevs): Use _raw_size directly rather than - calling bfd_get_section_size_before_reloc. - (decode_line_info): Likewise. - (_bfd_dwarf2_find_nearest_line): Likewise. - -2000-02-27 Eli Zaretskii - - * Makefile.am (stamp-lib): Use $(LIBTOOL) --config to get the - name of the libtool directory. - * Makefile.in: Rebuild. - -2000-02-25 Rodney Brown (RodneyBrown@pmsc.com) - - * som.c (SOM_HOWTO): Define. - (som_hppa_howto_table): Use it. - -2000-02-25 Alexandre Oliva - - * config.bfd: Enable 64 bit support for GNU/Linux/sparc. - - * config.bfd: Enable 64 bit support for Solaris7+/sparc. - -2000-02-24 Catherine Moore - - * som.c (som_misc_symbol_info): Add field - secondary_def. - (som_bfd_derive_misc_symbol_info): Initialize - secondary_def. - (som_build_and_write_symbol_table): Keep track - of secondary_def field. - (som_slurp_symbol_table): Set BSF_WEAK symbol flag - if secondary_def field is set. - (som_bfd_ar_write_symbol_stuff): Initialize - secondary_def. - -2000-02-23 Stephane Carrez - - * dwarf2.c (read_address): Read 16-bits addresses. - (parse_comp_unit): Accept addr_size == 2. - -2000-02-23 Alan Modra - - * bfd-in.h: Update copyright date. - -2000-02-23 Linas Vepstas - - * cpu-i370.c: New file. - * elf32-i370.c: New file. - * archures.c (enum bfd_architecture): Add bfd_arch_i370. - (bfd_i370_arch): New. - (bfd_archures_list): Add bfd_i370_arch. - * elf.c (prep_headers): Add bfd_arch_i370. - * Makefile.am: Add support for IBM 370 elf. - * config.bfd: Likewise. - * configure.in: Likewise. - * libbfd.h (bfd_reloc_code_real_names): Likewise. - * reloc.c (bfd_reloc_code_type): Likewise. - * targets.c: Likewise. - - * Makefile.in: Regenerate. - * configure: Regenerate. - * bfd-in2.h: Regenerate. - -2000-02-22 Ian Lance Taylor - - * elf32-i386.c (elf_i386_info_to_howto_rel): Give a warning for - invalid relocation types, and change them to R_386_NONE. - -2000-02-22 H.J. Lu - - * elflink.h (elf_link_add_object_symbols): If a version symbol is - not defined, don't add a second ELF_VER_CHR. - - * elflink.h (elf_bfd_final_link): Call output_extsym for global - symbols converted to local symbols even when stripping all - symbols. - (elf_link_output_extsym): Process global symbols converted to - local symbols even if they are being stripped. - -2000-02-21 Alan Modra - - * archures.c (bfd_octets_per_byte): Return unsigned int. - (bfd_arch_mach_octets_per_byte): Ditto. - * libbfd.c (bfd_read, bfd_seek): Quell signed vs. unsigned - comparison warning. - * section.c (bfd_get_section_size_before_reloc): Quell signed - vs. unsigned comparison warning. - (bfd_get_section_size_after_reloc): Same here. Fix parentheses too. - * trad-core.c (trad_unix_core_file_p): Correct 2000-01-27 - change. What was I thinking? - * bfd-in2.h: Regenerate. - - * elflink.h (elf_gc_sweep): Skip non-elf input bfds. - (elf_gc_sections): Same here. - (elf_gc_common_finalize_got_offsets): And here. - -2000-02-21 Ian Lance Taylor - - ELF HPPA doesn't work at present; remove it until it does. - * config.bfd: Comment out setting targ_defvec to - bfd_elf32_hppa_vec. - * Makefile.am: Rebuild dependencies. - (BFD32_BACKENDS): Remove elf32-hppa.lo. - (BFD32_BACKENDS_CFILES): Remove elf32-hppa.c. - (SOURCE_HFILES): Remove elf32-hppa.h and hppa_stubs.h. - * Makefile.in: Rebuild. - * targets.c (bfd_target_vector): Comment out bfd_elf32_hppa_vec. - -2000-02-18 Geoff Keating - - * coffcode.h (coff_set_arch_mach_hook): Use free(), because there - is no bfd_free(). Revert bfd_free part of previous change. - -2000-02-18 Geoff Keating - - * coffcode.h (coff_set_arch_mach_hook): Don't use variable-size - arrays. - (coff_compute_section_file_positions): Use bfd_free to pair - bfd_malloc. - (coff_write_object_contents): Likewise. - - * coff-rs6000.c (xcoff_howto_table_16): New variable. - (xcoff_rtype2howto): Handle 16-bit variants of 32-bit relocs. - -2000-02-18 Ulrich Drepper - - * coff-rs6000.c (XCOFFARMAGBIG): New macro. - (xcoff_ar_file_hdr_big): New structure. - (SIZEOF_AR_FILE_HDR_BIG): New macro. - (xcoff_ar_hdr_big): New structure. - (SIZEOF_AR_HDR_BIG): New macro. - (xcoff_big_format_p): New macro. - (xcoff_ardata_big): New macro. - (arch_xhdr_big): New macro. - (xcoff_slurp_armap): Handle large archives. - (xcoff_archive_p): Detect large archives. - (xcoff_read_ar_hdr): Handle large archives. - (xcoff_openr_next_archived_file): Handle large archives. - (xcoff_generic_stat_arch_elt): Handle large archives. - (xcoff_write_armap_old): Rename from xcoff_write_armap. - (xcoff_write_armap_big): New function. - (xcoff_write_armap): New function, dispatch to _old or _big. - (xcoff_write_archive_contents_old): Rename from - xcoff_write_archive_contents. - (xcoff_write_archive_contents_big): New function. - (xcoff_write_archive_contents): New function, dispatch to _old or - _big. - -2000-02-18 Richard Henderson - - * elf-bfd.h (struct elf_link_hash_table): Remove copy_indirect - and hide_symbol members. - (elf_link_hash_copy_indirect): Remove. - (elf_link_hash_hide_symbol): Remove. - (struct elf_backend_data): Add elf_backend_copy_indirect_symbol - and elf_backend_hide_symbol. - (_bfd_elf_link_hash_copy_indirect): Declare. - (_bfd_elf_link_hash_hide_symbol): Declare. - * elf.c (_bfd_elf_link_hash_copy_indirect): Remove table argument. - (_bfd_elf_link_hash_hide_symbol): Likewise. - (_bfd_elf_link_hash_table_init): Don't init killed members. - * elflink.h (elf_link_add_object_symbols): Use the bed function - pointers not elf_link_hash_{copy_indirect,hide_symbol}. - (elf_link_assign_sym_version): Likewise. - * elfxx-target.h (elf_backend_copy_indirect_symbol): Default. - (elf_backend_hide_symbol): Likewise. - (elfNN_bed): Update for new members. - -2000-02-17 Kevin Buettner - - * rs6000-core.c (CORE_DATA_SIZE_FIELD, CORE_COMM_FIELD, SAVE_FIELD, - STACK_END_ADDR): Define for new core file format. - (LOADER_OFFSET_FIELD, LOADER_REGION_SIZE, CORE_DUMP): New defines - for handling the vagaries of the various core file structures used - by AIX over the years. - (rs6000coff_core_p, rs6000coff_core_file_matches_executable, - Rs6kCorData): Use above defines to adapt code to use AIX 4.3's - core_dumpx structure. - -2000-02-17 J"orn Rennecke - - * archures.c (bfd_mach_sh2, bfd_mach_sh_dsp): New macros. - (bfd_mach_sh3_dsp): Likewise. - (bfd_mach_sh4): Reinstate. - (bfd_default_scan): Recognize 7410, 7708, 7729 and 7750. - * bfd-in2.h: Regenerate. - * coff-sh.c (struct sh_opcode): flags is no longer short. - (USESAS, USESAS_REG, USESR8, SETSAS, SETSAS_REG): New macros. - (sh_opcode41, sh_opcode42): Integrate as sh_opcode41. - (sh_opcode01, sh_opcode02, sh_opcode40): Add sh-dsp opcodes. - (sh_opcode41, sh_opcode4, sh_opcode80): Likewise. - (sh_opcodes): No longer const. - (sh_dsp_opcodef0, sh_dsp_opcodef): New arrays. - (sh_insn_uses_reg): Check for USESAS and USESR8. - (sh_insn_sets_reg, sh_insns_conflict): Check for SETSAS. - (_bfd_sh_align_load_span): Return early for SH4. - Modify sh_opcodes lookup table for sh-dsp / sh3-dsp. - Take into account that field b of a parallel processing insn - could be mistaken for a separate insn. - * cpu-sh.c (arch_info_struct): New array elements for - sh2, sh-dsp and sh3-dsp. - Reinstate element for sh4. - (SH2_NEXT, SH_DSP_NEXT, SH3_DSP_NEXT): New macros. - (SH4_NEXT): Reinstate. - (SH3_NEXT, SH3E_NEXT): Adjust. - * elf-bfd.h (_sh_elf_set_mach_from_flags): Declare. - * elf32-sh.c (sh_elf_set_private_flags): New function. - (sh_elf_copy_private_data, sh_elf_set_mach_from_flags): Likewise. - (sh_elf_merge_private_data): New function. - (elf_backend_object_p, bfd_elf32_bfd_set_private_bfd_flags): Define. - (bfd_elf32_bfd_copy_private_bfd_data): Define. - (bfd_elf32_bfd_merge_private_bfd_data): Change to - sh_elf_merge_private_data. - -2000-02-13 Richard Henderson - - * elf-bfd.h (struct elf_link_hash_table): Add copy_indirect and - hide_symbol members. - (elf_link_hash_copy_indirect): New. - (elf_link_hash_hide_symbol): New. - * elflink.h (elf_link_add_object_symbols): Break out copy from - indirect new new symbol to elf.c. - (elf_link_assign_sym_version): Break out privatization of - non-exported symbol to elf.c. - * elf.c (_bfd_elf_link_hash_copy_indirect): New. - (_bfd_elf_link_hash_hide_symbol): New. - (_bfd_elf_link_hash_table_init): Init copy_indirect and hide_symbol. - -2000-02-13 Ian Lance Taylor - - * section.c (_bfd_strip_section_from_output): Add info parameter. - If it passed as non-NULL, use it to check whether any input BFD - has an input section which uses this output section. Change all - callers. - * bfd-in2.h: Rebuild. - - * bfd-in.h: Move declarations of bfd_get_elf_phdr_upper_bound and - bfd_get_elf_phdrs in from bfd-in2.h, correcting patch of - 1999-11-29. - * bfd-in2.h: Rebuild. - -2000-02-10 Timothy Wall - - * coffswap.h (coff_swap_sym_in): Add hook SWAP_SYM_IN_POST to - allow final modifications of swapped-in symbol. - (coff_swap_sym_out): Ditto with SWAP_SYM_OUT_POST. - * coffcode.h (coff_write_relocs): Use macro - SECTION_RELATIVE_ABSOLUTE_SYMBOL_P if defined to determine whether - symbol index should be set to -1. - -2000-02-10 Toshiyasu Morita (toshi.morita@sega.com) - - * coff-sh.c (USES1_REG, USES2_REG, SETS1_REG, SETS2_REG, - USESF1_REG, USESF2_REG, SETSF1_REG, SETSF2_REG): New macros. - * (sh_insn_sets_reg, sh_insn_sets_freg): New prototypes. - * (sh_insn_sets_reg, sh_insn_uses_or_sets_reg, sh_insns_sets_freg, - sh_insns_uses_or_sets_freg): New functions. - * (sh_insn_uses_reg, sh_insn_uses_freg): Use new macros. - * (sh_insns_conflict): Use new functions and new macros to - detect conflicts when two instructions both set same integer registers, - both set same fp register, and both set special register. - -2000-02-09 Timothy Wall - - * coffgen.c (coff_real_object_p): Set arch/mach info prior to - swapping in sections, so that the swapping routines have access to - the arch/mach info. - -2000-02-08 Mark Elbrecht - - * coff-go32.c: Update comment. Update copyright. - -2000-01-27 Thomas de Lellis - - * syms.c (bfd_decode_symclass) - Two new class characters were added - 'V' and 'v'. The - meaning of 'W' is now restricted to just weak non-object - symbols. This allows differentiation between, for example, - weak functions vs weak objects. nm for example now dumps: - 'W' = weak global - 'w' = weak unresolved - 'V' = weak global object - 'v' = weak unresolved object - - (bfd_is_undefined_symclass): New function. Return true if the - given symbol class represents and undefined/unresolved symbol. - - (bfd_symbol_info): Use bfd_is_undefined_symclass to check for - unresolved symbols. - - * bfd-in2.h: Add prototype for bfd_is_undefined_symbol(). - - * elf32-arm.h (elf32_arm_get_symbol_type): If a symbol has the - STT_ARM_16BIT flag set, but it is not attached to a data object - return STT_ARM_16BIT so that it will be treated as code by the - disassembler. - -2000-01-27 Alan Modra - - * coff-i386.c (i3coff_object_p): Remove prototype. - Update copyright. - - * elflink.c (_bfd_elf_link_record_dynamic_symbol): Add const - to name. Update copyright. - - * trad-core.c (trad_unix_core_file_p): Cast core_regsec - assignment to avoid warning. Update copyright. - -2000-01-24 Robert Lipe (robertl@sco.com) - - * coffcode.h (coff_write_object_contents): Get buff via bfd_malloc - instead of using GNU C extension. - -2000-01-21 Nick Clifton - - * libbfd.c (bfd_read): Do not attempt to get a negativly sized - amount from a bfd_in_memory structure. - (bfd_seek): Do not allow seeks past the end of a bfd_in_memory - structure. - -2000-01-14 Nick Clifton - - * linker.c (default_indirect_link_order): oops - fix incorrectly - applied patch from Tim Wall. - -2000-01-13 Timothy Wall (twall@tiac.net> - - * coffcode.h: Use bfd_coff_xxx instead of the macro XXX (where xxx - = scnhsz, filhsz, relsz, aoutsz, etc) - - * coffswap.h: Ditto. - -2000-01-13 Nick Clifton - - * elf32-arm.h (elf32_thumb_to_arm_stub): Fix offset in branch to - interwork thumb to arm stub. - -2000-01-13 Timothy Wall (twall@tiac.net> - - * archures.c (bfd_octets_per_byte): New function: Return - target byte size. - (bfd_arch_mach_octets_per_byte): New function: Return target - byte size. - - * section.c: Distinguish between octets and bytes for usage of - _cooked_size, _raw_size, and output_offset. Clarify - description of bfd_set_section_contents. - - * bfd-in2.h: Regenerate. - - * coffgen.c: Indicate that the offset parameter is in bytes, not - octets. - - * cofflink.c (bfd_coff_link_input_bfd): Use bfd_octets_per_byte - where appropriate to get the octet offset when calling - bfd_set_section_contents. - (bfd_coff_reloc_link_order): Ditto. - - * linker.c (bfd_generic_reloc_link_order): Ditto. - (_bfd_default_link_order): Ditto. - - * reloc.c (bfd_perform_relocation): Distinguish between octets - and bytes. Use octets when indexing into octet data; use bytes - when calculating target addresses. - (bfd_install_relocation): Ditto. - - * srec.c (srec_write_section): Ditto. - -2000-01-13 Nick Clifton - - * coff-mcore.c (COFF_DEFAULT_SECTION_ALIGNMENT_POWER): Change from - 3 to 2. This allows 4 byte sized sections, which is necessary for - dlltool to build functioning DLLs. - -2000-01-10 Philip Blundell - - * config.bfd (arm*-*-linux-gnu*): Match instead of arm*-*-linux-gnu. - (arm*-*-conix*): New target. - -2000-01-10 Egor Duda - - * config.bfd: Include elf32_i386 vector to target list for cygwin - and mingw. - - * config.in: Undefine HAVE_WIN32_PSTATUS_T. - * configure.in: Test for structure win32_pstatus_t in - - * configure: Regenerate. - - * elf.c (elfcore_grok_win32pstatus): New function: process - win32_pstatus_t notes in elf core file. - (elfcore_grok_note): Detect win32_pstatus notes. - -2000-01-03 Martin v. Loewis +2002-01-02 Nick Clifton - * elflink.c (_bfd_elf_link_record_dynamic_symbol): Process symbol - visibility. - * elflink.h (elf_link_add_object_symbols): Combine visibilities. - * elf.c (bfd_elf_print_symbol): Interpret st_other as visibility. + * elf32-arm.h (elf32_arm_merge_private_bfd_data): Reformat error + messages to ease translation into other languages. -For older changes see ChangeLog-9899 +For older changes see ChangeLog-0001 Local Variables: mode: change-log