X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=bfd%2FChangeLog;h=06b089d2db07ac530fc69682d3cdce89da165ecc;hb=c9e214e571d08fa968a53210682a14060261b91c;hp=5a343eac457dbf2d37d8ce590d369c7abe0b6748;hpb=f31a141e8d74ab0f0512b10255a6d144ef73274f;p=deliverable%2Fbinutils-gdb.git diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 5a343eac45..06b089d2db 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,10953 +1,13 @@ -2003-11-06 Alan Modra +2004-01-01 Grant Edwards - * elf32-ppc.c (ppc_elf_howto_raw); Add entry for R_PPC_RELAX32PC. - (ppc_elf_install_value): Handle R_PPC_RELAX32PC. Merge duplicate - cases. - (shared_stub_entry): Correct opcode. - (ppc_elf_relax_section): Generate R_PPC_RELAX32PC relocs. - (ppc_elf_relocate_section): Handle them. - -2003-11-05 Alan Modra - - * elf.c (_bfd_elf_rela_local_sym): Accept asection **, and return - updated section in case of merged section. - * elf-bfd.h (_bfd_elf_rela_local_sym): Update declaration. - * elf-hppa.h (elf_hppa_relocate_section): Adjust call. - * elf-m10200.c (mn10200_elf_relocate_section): Likewise. - * elf-m10300.c (mn10300_elf_relocate_section): Likewise. - * elf32-arm.h (elf32_arm_relocate_section): Likewise. - * elf32-avr.c (elf32_avr_relocate_section): Likewise. - * elf32-cris.c (cris_elf_relocate_section): Likewise. - * elf32-fr30.c (fr30_elf_relocate_section): Likewise. - * elf32-frv.c (elf32_frv_relocate_section): 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-msp430.c (elf32_msp430_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-sh.c (sh_elf_relocate_section): Likewise. - * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. - * elf32-v850.c (v850_elf_relocate_section) Likewise. - * elf32-vax.c (elf_vax_relocate_section): Likewise. - * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise. - * elf32-xtensa.c (elf_xtensa_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-sh64.c (sh_elf64_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. - - * elf32-cris.c (cris_elf_relocate_section): Don't recalculate symbol - section for reloc output. - * elf32-i370.c (i370_elf_relocate_section): Likewise. - * elf32-m68k.c (elf_m68k_relocate_section): Likewise. - * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. - * elf32-vax.c (elf_vax_relocate_section): Likewise. - * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. - * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. - - * elf32-ppc.c (ppc_elf_relocate_section): Don't recalculate everything - for R_PPC_RELAX32 reloc. Don't bother checking ppc_elf_install_value - return value. - * elf64-ppc.c (ppc64_elf_relocate_section ): Sanity check - sec->id. - -2003-11-05 Alan Modra - - * elf32-d10v.c (extract_rel_addend, insert_rel_addend): New functions. - (elf32_d10v_relocate_section): Use them to handle -r reloc - adjustments, and in place of _bfd_elf_rela_local_sym. - - * cpu-iq2000.c (arch_info_struct): Warning fix. - -2003-11-05 Alan Modra - - * elf32-hppa.c (ELIMINATE_COPY_RELOCS): Define. - (elf32_hppa_copy_indirect_symbol): Don't copy NON_GOT_REF on - weakdefs. - (elf32_hppa_check_relocs): Use ELIMINATE_COPY_RELOCS. - (elf32_hppa_adjust_dynamic_symbol): Likewise. Copy weakdef - NON_GOT_REF. - (allocate_dynrelocs): Use ELIMINATE_COPY_RELOCS and - SYMBOL_CALLS_LOCAL. Discard relocs for undef weak syms with - non-default visibility. - (elf32_hppa_relocate_section): Use ELIMINATE_COPY_RELOCS and - SYMBOL_CALLS_LOCAL. - -2003-11-04 Alan Modra - - * aout-target.h, aoutf1.h, bfdio.c, bfdwin.c: Update copyright date. - * coff-apollo.c, coff-sparc.c, coff-w65.c, coff-we32k.c: Ditto. - * coff-z8k.c, coffgen.c, cpu-frv.c, cpu-h8500.c, cpu-hppa.c: Ditto. - * cpu-ia64-opc.c, cpu-m10300.c, cpu-mips.c, cpu-msp430.c: Ditto. - * cpu-rs6000.c, cpu-z8k.c, efi-app-ia32.c, elf32-am33lin.c: Ditto. - * gen-aout.c, hash.c, hp300hpux.c, init.c, mach-o.c: Ditto. - * nlm-target.h, nlm.c, som.h, stabs.c, sysdep.h, xsym.h: Ditto. - - * elf-m10300.c (_bfd_mn10300_elf_create_got_section): Fix - "dereferencing type-punned pointer" warnings. - - * aout-adobe.c (aout_adobe_set_section_contents): Constify location. - * aoutx.h (NAME(aout,set_section_contents)): Ditto. - * bfd-in2.h: Regenerate. - * binary.c (binary_set_section_contents): Ditto. - * bout.c (b_out_set_section_contents): Ditto. - * coff-tic54x.c (tic54x_set_section_contents): Ditto. - * coffcode.h (coff_set_section_contents): Ditto. - * ecoff.c (_bfd_ecoff_set_section_contents): Ditto. - * elf-bfd.h (_bfd_elf_set_section_contents): Ditto. - * elf.c (_bfd_elf_set_section_contents): Ditto. - * elfxx-mips.c (_bfd_mips_elf_set_section_contents): Ditto. - * elfxx-mips.h (_bfd_mips_elf_set_section_contents): Ditto. - * i386msdos.c (msdos_set_section_contents): Ditto. - * ieee.c (ieee_set_section_contents): Ditto. - * ihex.c (ihex_set_section_contents): Ditto. - * libaout.h (NAME(aout,set_section_contents)): Ditto. - * libbfd-in.h (_bfd_nowrite_set_section_contents): Ditto. - (_bfd_generic_set_section_contents): Ditto. - * libbfd.h: Regenerate. - * libbfd.c (_bfd_generic_set_section_contents): Ditto. - * libecoff.h (_bfd_ecoff_set_section_contents): Ditto. - * libnlm.h (nlmNAME(set_section_contents)): Ditto. - (struct nlm_backend_data ): Ditto. - * mmo.c (mmo_set_section_contents): Ditto. - * nlm32-alpha.c (nlm_alpha_mangle_relocs): Ditto. - * nlm32-i386.c (nlm_i386_mangle_relocs): Ditto. - * nlm32-ppc.c (nlm_powerpc_mangle_relocs): Ditto. - * nlm32-sparc.c (nlm_sparc_mangle_relocs): Ditto. - * nlmcode.h (nlm_set_section_contents): Ditto. - * oasys.c (oasys_set_section_contents): Ditto. - * pdp11.c (NAME(aout,set_section_contents)): Ditto. - * ppcboot.c (ppcboot_set_section_contents): Ditto. - * srec.c (srec_set_section_contents): Ditto. - * targets.c (BFD_JUMP_TABLE_WRITE <_bfd_set_section_contents>): Ditto. - * tekhex.c (tekhex_set_section_contents): Ditto. - (move_section_contents): Ditto. - * versados.c (versados_set_section_contents): Ditto. - * vms-misc.c (_bfd_save_vms_section): Ditto. - * vms.c (vms_set_section_contents): Ditto. - * vms.h (_bfd_save_vms_section): Ditto. - -2003-11-04 Alan Modra - - * elf64-ppc.c (ppc_size_one_stub): Size relbrlt. Accept info arg - rather than htab. - (ppc64_elf_size_stubs): Adjust ppc_size_one_stub traversal. Zero - relbrlt size. - (ppc64_elf_build_stubs): Allocate space for relbrlt. - -2003-11-04 Alan Modra - - * bfd-in.h (_bfd_elf_tls_setup): Declare. - * bfd-in2.h: Regenerate. - * elf-bfd.h (struct elf_link_tls_segment): Delete. - (struct elf_link_hash_table): Add tls_sec and tls_size. - * elf.c (_bfd_elf_link_hash_table_init): Init tls_sec and tls_size. - * elflink.c (_bfd_elf_tls_setup): New function. - * elflink.h (struct elf_final_link_info): Remove first_tls_sec. - (elf_bfd_final_link): Don't set first_tls_sec here. Update code - saving tls segment info, round segment size up. - (elf_link_output_extsym): Adjust code using tls segment info. - (elf_link_input_bfd): Likewise. - * elf32-i386.c (dtpoff_base, tpoff): Likewise. - * elf32-s390.c (dtpoff_base, tpoff): Likewise. - * elf32-sh.c (dtpoff_base, tpoff): Likewise. - * elf32-sparc.c (dtpoff_base, tpoff): Likewise. - * elf64-s390.c (dtpoff_base, tpoff): Likewise. - * elf64-x86-64.c (dtpoff_base, tpoff): Likewise. - * elfxx-ia64.c (elfNN_ia64_tprel_base): Likewise. - (elfNN_ia64_dtprel_base): Likewise. - * elf64-alpha.c (alpha_get_dtprel_base): Likewise. - (alpha_get_tprel_base): Likewise. - (struct alpha_relax_info): Remove tls_segment. - (elf64_alpha_relax_got_load): Adjust invocation of - alpha_get_dtprel_base and alpha_get_tprel_base. - (elf64_alpha_relax_tls_get_addr): Likewise. - (elf64_alpha_relax_section): Likewise. - (elf64_alpha_relocate_section): Likewise. - (elf64_alpha_relax_find_tls_segment): Delete. - * elf32-ppc.c (struct ppc_elf_link_hash_table): Remove tls_sec. - (ppc_elf_tls_setup): Call _bfd_elf_tls_setup. Return section. - (ppc_elf_relocate_section): Adjust to use elf.tls_sec. - * elf32-ppc.h (ppc_elf_tls_setup): Update. - * elf64-ppc.c (struct ppc_link_hash_table): Remove tls_sec. - (ppc64_elf_tls_setup): Call _bfd_elf_tls_setup. Return section. - (ppc64_elf_tls_optimize): Adjust to use elf.tls_sec. - (ppc64_elf_relocate_section): Likewise. - * elf64-ppc.h (ppc64_elf_tls_setup): Update. - -2003-11-03 Daniel Jacobowitz - - * elf-bfd.h (struct elf_backend_data): Remove plt_header_size. - * elf-m10300.c (elf_backend_plt_header_size): Don't define. - * elf32-arm.h (elf_backend_plt_header_size): Don't define. - * elf32-cris.c (elf_backend_plt_header_size): Don't define. - * elf32-i386.c (elf_backend_plt_header_size): Don't define. - * elf32-mips.c (elf_backend_plt_header_size): Don't define. - * elf32-ppc.c (elf_backend_plt_header_size): Don't define. - * elf32-s390.c (elf_backend_plt_header_size): Don't define. - * elf32-sh.c (elf_backend_plt_header_size): Don't define. - * elf32-sparc.c (elf_backend_plt_header_size): Don't define. - * elf64-alpha.c (elf_backend_plt_header_size): Don't define. - * elf64-hppa.c (elf_backend_plt_header_size): Don't define. - * elf64-mips.c (elf_backend_plt_header_size): Don't define. - * elf64-ppc.c (elf_backend_plt_header_size): Don't define. - * elf64-s390.c (elf_backend_plt_header_size): Don't define. - * elf64-sh64.c (elf_backend_plt_header_size): Don't define. - * elf64-sparc.c (elf_backend_plt_header_size): Don't define. - * elf64-x86-64.c (elf_backend_plt_header_size): Don't define. - * elfn32-mips.c (elf_backend_plt_header_size): Don't define. - * elfxx-ia64.c (elf_backend_plt_header_size): Don't define. - * elfxx-target.h (elf_backend_plt_header_size): Don't define - or include in target initializer. - -2003-11-03 Andrew Cagney - - * section.c (bfd_set_section_contents): Make the "location" buffer - constant. - * bfd-in2.h: Re-generate. - -2003-10-30 Andrew Cagney - - * syms.c: Replace "struct symbol_cache_entry" with "struct - bfd_symbol". - * vms.h, targets.c, section.c, reloc.c, peicode.h: Ditto. - * mipsbsd.c, elf.c, linker.c, elf-bfd.h, ecoff.c: Ditto. - * cpu-z8k.c, cpu-ns32k.c, cpu-h8500.c, bfd.c, bfd-in.h: Ditto. - * bfd-in2.h: Re-generate. - -2003-10-30 Jakub Jelinek - - * elfxx-ia64.c: Include objalloc.h, hashtab.h. - (struct elfNN_ia64_local_hash_entry): Remove root. Add id and r_sym - fields. - (struct elfNN_ia64_local_hash_table): Remove. - (struct elfNN_ia64_link_hash_table): Change loc_hash_table's type - to htab_t. Add loc_hash_memory field. - (elfNN_ia64_local_hash_table_init, elfNN_ia64_new_loc_hash_entry): - Removed. - (elfNN_ia64_local_htab_hash, elfNN_ia64_local_htab_eq): New - functions. - (elfNN_ia64_hash_table_create): Use hashtab.h hashtable for - loc_hash_table. Initialize loc_hash_memory. - (elfNN_ia64_hash_table_free): New function. - (elfNN_ia64_local_hash_lookup): Remove. - (elfNN_ia64_local_dyn_sym_thunk): Change into htab_traverse - callback. - (elfNN_ia64_dyn_sym_traverse): Use htab_traverse. - (get_local_sym_hash): Use hashtab.h hashtable for loc_hash_table. - (bfd_elfNN_bfd_link_hash_table_free): Define. - -2003-10-30 Alan Modra - - * elflink.c (_bfd_elf_link_record_dynamic_symbol): Modify versioned - symbol string in place. - -2003-10-30 Jim Blandy - - * cpu-rs6000.c (rs6000_compatible): Check the correct arch_info - object's mach field: all PowerPC machines are supersets of the - original rs6000, but not later rs6000 machines. - -2003-10-30 Alan Modra - - * dwarf2.c (struct attribute): Delete "unsnd", "snd" and "addr". - Add "val" and "sval" fields. - (DW_STRING, DW_UNSND, DW_BLOCK, DW_SND, DW_ADDR): Delete. - (read_attribute_value): Expand and adjust DW_* occurrences. - (scan_unit_for_functions, parse_comp_unit): Likewise. - -2003-10-30 Phil Edwards - - * config.bfd (arm-*-vxworks): Remove separate stanza; merge with - other common ELF triples. - (i[3-7]86-*-vxworks): Change to ELF format. - (mips*-*-windiss): New triple, add to common MIPS/ELF stanza. - (sh-*-vxworks): New stanza. - -2003-10-30 Lars Knoll - Michael Matz - Jakub Jelinek - Alan Modra - - * merge.c (struct sec_merge_sec_info): Update comment. - (struct sec_merge_hash_entry): Remove entsize. - (sec_merge_hash_lookup): Only adjust alignment when creating. - (sec_merge_emit): Remove register keyword. - (cmplengthentry, last4_eq, last_eq): Delete. - (strrevcmp, strrevcmp_align, is_suffix): New. - (merge_strings): Use them to implement fast suffix merging. - * elf-strtab.c (struct elf_strtab_hash_entry): Update comments. - Make "len" signed. - (_bfd_elf_strtab_add): Lose on >2G strings. - (_bfd_elf_strtab_emit): Don't emit strings with len < 0. - (cmplengthentry, last4_eq): Delete. - (strrevcmp, is_suffix): New. - (_bfd_elf_strtab_finalize): Rework to implement fast suffix merging. - -2003-10-29 Daniel Jacobowitz - - * elf32-arm.h (elf32_arm_final_link_relocate): Move check for - SEC_ALLOC. - -2003-10-29 Philip Blundell - - * elf32-arm.h (elf32_arm_plt0_entry, elf32_arm_plt_entry): New - code sequence. - (PLT_HEADER_SIZE): New. - (struct elf32_arm_pcrel_relocs_copied): Rename to ... - (struct elf32_arm_relocs_copied): ... this. Count both - pcrel and non-pcrel relocs. All uses updated. - (struct elf32_arm_link_hash_table): Add pointers to dynamic linker - sections and symbol/section mapping cache. - (create_got_section): New. - (elf32_arm_create_dynamic_sections): New. - (elf_backend_create_dynamic_sections): Use it. - (elf32_arm_final_link_relocate): Support garbage collection of relocs. - (elf32_arm_check_relocs): Likewise. - (elf32_arm_adjust_dynamic_symbol): Likewise. - (elf32_arm_copy_indirect_symbol): New. - (elf32_arm_link_hash_table_create): Initialise new fields. - (elf32_arm_gc_sweep_hook): Implement. - (elf32_arm_discard_copies): Delete. - (elf32_arm_finish_dynamic_symbol): Use new PLT code. - (elf32_arm_finish_dynamic_sections): Likewise. - (elf_backend_can_refcount): Define. - (elf_backend_copy_indirect_symbol): Likewise. - (elf_backend_plt_header_size): Set to PLT_HEADER_SIZE. - -2003-10-29 Alan Modra - - * elf64-ppc.c (elf_backend_grok_prstatus): Define. - (elf_backend_grok_psinfo): Define. - (ppc64_elf_grok_prstatus, ppc64_elf_grok_psinfo): New functions. - - * elf.c (_bfd_elfcore_make_pseudosection): Allow multiple - sections with the same name. - (elfcore_grok_lwpstatus): Likewise. - (elfcore_grok_win32pstatus): Likewise. - (elfcore_grok_note): Likewise. - (elfcore_grok_nto_status): Likewise. - (elfcore_grok_nto_gregs): Likewise. - -2003-10-27 Daniel Jacobowitz - - * elf32-arm.h (elf32_arm_merge_private_bfd_data): Never skip dynamic - objects. - -2003-10-14 Richard Sandiford - - * elfxx-mips.c (mips_elf_create_got_section): Initialize global_gotno. - -2003-10-24 H.J. Lu - - * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Look up - hash table for real symbols. - -2003-10-23 Michael Snyder - - * section.c (asection): Fix typo in comment. - -2003-10-23 Alan Modra - - * elf64-ppc.c (get_tls_mask): Add toc_symndx param, save toc - reloc symbol index to it. Don't allow gd syms in shared libs - to be optimized. - (ppc64_elf_tls_optimize): Adjust get_tls_mask call. - (ppc64_elf_size_stubs): Likewise. - (ppc64_elf_relocate_section): Check that tls relocs are only used - with tls syms, and similarly for non-tls. Correct symbol used - when optimizing toc tls code. - -2003-10-22 Nick Clifton - - * peicode.h (coff_swap_scnhdr_in): Only remove padding when - processing an executable. - -2003-10-22 Jakub Jelinek - - * elflink.c (_bfd_elf_export_symbol): Adjust for globals and locals - field changes. - (_bfd_elf_link_assign_sym_version): Likewise. - * elflink.h (size_dynamic_sections): Likewise. - -2003-10-21 Alexandre Oliva , - Michael Snyder - - * archures.c (bfd_mach_sh4a, bfd_mach_sh4al_dsp, bfd_mach_sh4_nofpu, - bfd_mach_sh4a_nofpu): New machine types. - * bfd-in2.h: Rebuilt. - * cpu-sh.c (compatible): Remove unused function. - (SH4A_NEXT, SH4AL_DSP_NEXT, SH4_NOFPU_NEXT, SH4A_NOFPU_NEXT): New. - (arch_info_struct): Add sh4a, sh4al_dsp, sh4-nofpu and sh4a-nofpu. - * elf32-sh.c (sh_elf_set_mach_from_flags): Handle them. - -2003-10-21 Wouter van Heyst - - * elf32-arm.h (elf32_arm_merge_private_bfd_data): Correct text - describing mismatched formats involving the Maverick FP type. - -2003-10-21 Anil Paranjpe - - * binary.c (binary_object_p): Pass machine flag along with - architecture. - -2003-10-21 Thorsten Brehm - - * archures.c (bfd_default_scan): Add support for mcf528x. - * ieee.c (ieee_write_processor): Likewise. - -2003-10-21 Peter Barada - Bernardo Innocenti - - * archures.c: Add MCF528x (MCFv4) support. - * bfd/cpu-m68k.c (arch_info_struct): Likewise. - * bfd-in2.h: Regenerate. - -2003-10-20 Andrew Cagney - - * targets.c: Replace "struct sec" with "struct bfd_section" - * syms.c, sparclynx.c, section.c, opncls.c: Ditto. - * libcoff-in.h, libbfd-in.h, elfxx-target.h: Ditto. - * elf.c, coffgen.c, bfd.c, bfd-in.h, aoutf1.h: Ditto. - * aout-tic30.c, aout-target.h: - * bfd-in2.h, libcoff.h, libbfd.h: Regenerate. - -2003-10-18 Hans-Peter Nilsson - - Support linker relaxation of new R_MMIX_PUSHJ_STUBBABLE relocs. - * elf64-mmix.c (MAX_PUSHJ_STUB_SIZE): New macro. - (struct _mmix_elf_section_data): New member pjs. - (mmix_set_relaxable_size, mmix_elf_get_section_contents): New - functions. - (elf_mmix_howto_table): New entry for R_MMIX_PUSHJ_STUBBABLE. - (mmix_reloc_map): Ditto. - (mmix_elf_relocate_section): Handle R_MMIX_PUSHJ_STUBBABLE. - (mmix_final_link_relocate, mmix_elf_check_common_relocs): Ditto. - (mmix_elf_perform_relocation): Ditto. Don't mark parameter addr - unused. - (mmix_elf_check_relocs): Move early return to after - mmix_elf_check_common_relocs call. - (mmix_elf_symbol_processing): Fix cut-and-pasto in head comment. - (_bfd_mmix_before_linker_allocation): Rename from - _bfd_mmix_prepare_linker_allocated_gregs. All referers changed. - Arrange to set the initial relaxable size of sections. - (_bfd_mmix_after_linker_allocation): Rename from - _bfd_mmix_finalize_linker_allocated_gregs. - (mmix_elf_relax_section): Relax a R_MMIX_PUSHJ_STUBBABLE reloc. - (bfd_elf64_get_section_contents): Define. - * reloc.c: Add ENUMX for BFD_RELOC_MMIX_PUSHJ_STUBBABLE. - * libbfd.h, bfd-in2.h: Regenerate. - - * reloc.c (bfd_generic_relax_section): Default-set - section->_cooked_size here. - (bfd_generic_get_relocated_section_contents): Don't set it here. - Explain why. - -2003-10-17 John David Anglin - - * elf32-hppa.c (elf32_hppa_relocate_section): Skip relocation if - output section has been discarded. - -2003-10-17 Shrinivas Atre - - * coff-h8300.c (funcvec_hash_newfunc): Handle normal mode. - (h8300_reloc16_extra_cases): Likewise. - (h8300_bfd_link_add_symbols): Likewise. - -2003-10-17 Dhananjay Deshpande - - * cpu-h8300.c (h8300sxn_info_struct): Correct address size. - (h8300sn_info_struct): Likewise. - (h8300hn_info_struct): Likewise. - -2003-10-16 Pavel Roskin - - * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Don't calculate image size - for sections which lack size info. - -2003-10-17 Danny Smith - - * configure.host: Add __USE_MINGW_FSEEK to HDEFINES for - mingw32. - -2003-10-16 H.J. Lu - - * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Also warn - undefined patterns with '*'. - -2003-10-16 H.J. Lu - - * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't - use the last CIE from a different section. - (_bfd_elf_write_section_eh_frame): Don't pad beyond the raw - size of the output section. - -2003-10-07 Roland McGrath - - * elf.c (_bfd_elf_make_section_from_phdr): Set alignment_power of - new section from p_align header field. - -2003-10-16 H.J. Lu - - * elf32-xtensa.c (xtensa_read_table_entries): The external size - of entry is 8 bytes. - -2003-10-15 Andrew Cagney - - * targets.c (BFD_JUMP_TABLE_SYMBOLS): Replace NAME##_get_symtab - with NAME##_canonicalize_symtab. - * libcoff-in.h (coff_canonicalize_symtab): Update. - * xsym.h (bfd_sym_canonicalize_symtab): Update. - * elf-bfd.h (_bfd_elf_canonicalize_symtab): Update. - * coffgen.c (coff_canonicalize_symtab): Update. - * libbfd-in.h (_bfd_nosymbols_canonicalize_symtab): Update. - * libnlm.h (nlmNAME(canonicalize_symtab)): Update. - * ieee.c (ieee_vec): Update comment. - * libecoff.h (_bfd_ecoff_canonicalize_symtab): Update. - * mmo.c (mmo_canonicalize_symtab): Update. - * nlm-target.h (nlm_canonicalize_symtab): Update. - * nlmcode.h (nlm_canonicalize_symtab): Update. - * i386msdos.c (msdos_canonicalize_symtab): Update. - * hp300hpux.c (MY (canonicalize_symtab)): Update. - * oasys.c (oasys_canonicalize_symtab): Update. - * som.c (som_canonicalize_symtab): Update. - * pef.c (bfd_pef_canonicalize_symtab): Update. - * nlmcode.h (nlm_canonicalize_symtab): Update. - * xsym.c (bfd_sym_canonicalize_symtab): Update. - * vms.c (vms_canonicalize_symtab): Update. - * versados.c (versados_canonicalize_symtab): Update. - * mach-o.c (bfd_mach_o_canonicalize_symtab): Update. - * ieee.c (ieee_canonicalize_symtab): Update. - * pdp11.c (NAME(aout,canonicalize_symtab)): Update. - * reloc.c: Update comment. - * libaout.h (NAME(aout,canonicalize_symtab)): Update. - * coff64-rs6000.c (aix5coff64_vec): Update. - * coff64-rs6000.c (bfd_xcoff_aix5_backend_data): Update. - * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Update. - * aoutx.h (NAME(aout,canonicalize_symtab)): Update. - * elfxx-target.h (bfd_elfNN_canonicalize_symtab): Update. - * hp300hpux.c (MY_canonicalize_symtab): Update. - * ecoff.c (_bfd_ecoff_canonicalize_symtab): Update. - * aout-tic30.c (MY_canonicalize_symtab): Update. - * aout-target.h (MY_canonicalize_symtab): Update. - * ppcboot.c (ppcboot_canonicalize_symtab): Update. - * elf.c (_bfd_elf_canonicalize_symtab): Update. - * elfcode.h (elf_canonicalize_symtab): Update. - * ihex.c (ihex_canonicalize_symtab): Update. - * tekhex.c (tekhex_canonicalize_symtab): Update. - * binary.c (binary_canonicalize_symtab): Update. - * srec.c (srec_canonicalize_symtab): Update. - -2003-10-15 Kazu Hirata - - * elf32-h8300.c (elf_reloc_map): Fix a comment typo. - -2003-10-15 Kaz Kojima - - * elf32-sh.c (sh_elf_relocate_section): Handle R_SH_IMM_*_PCREL - relocations. - (sh_elf_check_relocs): Likewise. - - * elf32-sh64.c (elf_backend_merge_symbol_attribute): Define. - (sh64_elf_merge_symbol_attribute): New. - * elf64-sh64.c (elf_backend_merge_symbol_attribute): Define. - (sh64_elf64_merge_symbol_attribute): New. - -2003-10-14 Kaz Kojima - - * elf-bfd.h (struct elf_backend_data): New function pointer member - elf_backend_merge_symbol_attribute. - * elflink.h (elf_link_add_object_symbols): Adjust call to - elf_backend_merge_symbol_attribute if the backend defined it. - * elfxx-target.h (elf_backend_merge_symbol_attribute): New macro. - (elfNN_bed): Add that to the initializer. - -2003-10-14 Bob Wilson - - * elf32-xtensa.c (get_is_linkonce_section): Delete. - (xtensa_is_property_section, xtensa_is_littable_section): Use - XTENSA_INSN_SEC_NAME and XTENSA_LIT_SEC_NAME macros. Do not recognize - linkonce sections containing ".xt.insn" and ".xt.lit" substrings. - (xtensa_get_property_section_name): Check section name instead of - calling get_is_linkonce_section. Remove unused bfd parameter. Use - XTENSA_INSN_SEC_NAME and XTENSA_LIT_SEC_NAME macros. Never generate - linkonce section names by appending ".xt.insn" or ".xt.lit". - (xtensa_read_table_entries): Remove bfd argument in call to - xtensa_get_property_section_name. Free section name when done. - (elf_xtensa_combine_prop_entries): Free leaking table. - -2003-10-13 Richard Sandiford - - * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Don't add - DT_MIPS_LIBLIST or DT_MIPS_CONFLICT entries. - (_bfd_mips_elf_finish_dynamic_symbol): Don't handle them. Don't - handle DT_MIPS_MSYM. Set DT_RELSZ based on the number of relocations - that were needed. - (_bfd_mips_elf_modify_segment_map): Fix placement of PT_MIPS_OPTIONS. - (_bfd_mips_elf_merge_private_bfd_data): Ignore EF_MIPS_UCODE. - -2003-10-13 H.J. Lu - - * bfd-in.h (bfd_elf32_ia64_after_parse): New prototype. - (bfd_elf64_ia64_after_parse): Likewise. - * bfd-in2.h: Regenerated. - - * elfxx-ia64.c (oor_ip): New. - (oor_branch_size): Likewise. - (bfd_elfNN_ia64_after_parse): Likewise. - (elfNN_ia64_relax_section): Use oor_ip if oor_branch_size - equals sizeof (oor_ip). - -2003-10-12 Kaz Kojima - - * elf64-sh64.c (sh_elf64_relocate_section): Tidy up for the - renumbering of some relocation numbers. - -2003-10-11 Alan Modra - - * coff-sh.c: Move definition of MAP and guard more code with - COFF_IMAGE_WITH_PE. - - * section.c (bfd_get_section_size_before_reloc): Ignore reloc_done. - * bfd-in2.h: Regenerate. - -2003-10-10 H.J. Lu - - * Makefile.am: Run "make dep-am". - * Makefile.in: Regenerate. - * doc/Makefile.in: Likewise. - -2003-10-09 H.J. Lu - - * cofflink.c: Include "safe-ctype.h". - (coff_link_add_symbols): Use ISDIGIT instead of isdigit. - -2003-10-08 Dave Brolley - On behalf of Michael Snyder - - * archures.c: Add FRV fr550 machine. - * cpu-frv.c: Ditto. - * elf32-frv.c: Ditto. - * bfd-in2.h: Regenerate. - -2003-10-08 Thiemo Seufer - - * elfxx-mips.c (STUB_MOVE,STUB_LI16): Fix stub code - for non-SGI N64 ABI. Improve code consitency. - -2003-10-07 Alexandre Oliva - - * elf32-frv.c (elf32_frv_howto_table): Set R_FRV_LABEL16's - rightshift to 2. - -2003-10-07 Nathan Sidwell - - * libbfd-in.h (_bfd_link_section_stabs): Add string offset - parameter. - * cofflink.c (coff_link_add_symbols): Deal with split stab - sections. - * elflink.h (elf_link_add_object_symbols): Deal with split stab - sections. - * stabs.c (_bfd_link_section_stabs): Add string offset parameter. - * libbfd.h: Regenerated. - - * coffcode.h (coff_set_alignment_hook): With PE_COFF reloc - overflow, set reloc start position to after the count - reloc. Subtract one from num relocs. Give error on 0xffff relocs - and no overflow. - * cofflink.c (_bfd_coff_final_link): Deal with PE_COFF reloc - overflow. - * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Do overflow if >= - 0xffff. - -2003-10-06 H.J. Lu - - * elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Pad the - last CIE/FDE if needed. - -2003-10-06 Nick Clifton - - * targets.c (_bfd_target_vector): Include bfd_elf64_sparc_vec if - BFD64 is enabled. - -2003-10-06 Matt Thomas - - * config.bfd: Move the hppa*-*-netbsd* case to the hppa*-*-linux* case. - -2003-10-06 Robert Millan - - * configure.in: Match GNU/KNetBSD with new knetbsd*-gnu triplet. - * config.bfd: Likewise. - * configure: Regenerate. - -2003-10-04 Christian Groessler - - * coff-z8k.c (extra_case): Fix displacement length check for R_JR - and R_CALLR. - -2003-10-04 Stephane Carrez - - * elf32-m68hc1x.c: Update to ISO C90; replace PTR with void*. - * elf32-m68hc11.c: Likewise. - * elf32-m68hc12.c: Likewise. - * elf32-m68hc1x.h: Likewise. - -2003-10-04 Stephane Carrez - - * elf32-m68hc1x.c (_bfd_m68hc11_elf_merge_private_bfd_data): Fix merge - of flags between HC12 and HCS12. - -2003-10-04 Bryce McKinlay - - * merge.c (_bfd_merge_sections): Set SEC_EXCLUDE flag on sections - which become empty after merging. - -2003-09-30 Jakub Jelinek - - * elfxx-ia64.c (ia64_howto_table): Fix size of R_IA64_TPREL64[LM]SB, - R_IA64_DTPREL{32,64}[LM]SB and R_IA64_DTPMOD64[LM]SB. - -2003-09-30 Chris Demetriou - - * archures.c (bfd_mach_mipsisa64r2): New define. - * bfd-in2.h: Regenerate. - * aoutx.h (NAME(aout,machine_type)): Handle bfd_mach_mipsisa64r2. - * cpu-mips.c (I_mipsisa64r2): New enum value. - (arch_info_struct): Add entry for I_mipsisa64r2. - * elfxx-mips.c (_bfd_elf_mips_mach) - (_bfd_mips_elf_print_private_bfd_data): Handle E_MIPS_ARCH_64R2. - (mips_set_isa_flags): Add bfd_mach_mipsisa64r2 case. - (mips_mach_extensions): Add entry for bfd_mach_mipsisa64r2. - -2003-09-29 H.J. Lu - - * elfxx-ia64.c (elfNN_hpux_backend_symbol_processing): New. - Handle SHN_IA_64_ANSI_COMMON. - (elf_backend_section_from_bfd_section): Defined. - -2003-09-26 H.J. Lu - - * elflink.c (elf_link_read_relocs_from_section): Add an argument - of a pointer to section. Check bad symbol index. - (_bfd_elf_link_read_relocs): Modify calls to - elf_link_read_relocs_from_section. - -2003-09-23 DJ Delorie - - * elf32-sh.c (sh_elf_howto_table): R_SH_SWITCH8, - R_SH_GNU_VTINHERIT, R_SH_GNU_VTENTRY, - R_SH_LOOP_START,R_SH_LOOP_END moved to "reserved" spaces, - R_SH_DIR16, R_SH_DIR8, R_SH_DIR8UL, R_SH_DIR8UW, R_SH_DIR8U, - R_SH_DIR8SW, R_SH_DIR8S, R_SH_DIR4UL, R_SH_DIR4UW, R_SH_DIR4U, - R_SH_PSHA, R_SH_PSHL added. - (sh_reloc_map): Add R_SH_DIR16 and R_SH_DIR8. - (sh_elf_relocate_section): Support new relocs. - -2003-09-23 Bob Wilson - - * elf32-xtensa.c (elf_xtensa_relocate_section): Fix typo that clobbered - dynamic relocation offsets. - -2003-09-23 Alan Modra - - * simple.c (bfd_simple_get_relocated_section_contents): Free the - hash table using _bfd_generic_link_hash_table_free. - -2003-09-23 Alan Modra - - * elf-bfd.h (struct bfd_elf_special_section): Remove "suffix". Change - type of prefix_length and suffix_length to int. Rename "attributes" - to "attr". Comment. - (_bfd_elf_get_sec_type_attr): Update prototype. - * elf.c (get_special_section): Rewrite. - (_bfd_elf_get_sec_type_attr): Return struct rather than passing in - attr and type pointers. - (_bfd_elf_new_section_hook): Adjust for above. - (special_sections): Merge suffix with prefix. Set - prefix_length for all entries. Set suffix_length appropriately. - * elf32-m32r.c (m32r_elf_special_sections): Likewise. - * elf32-m68hc11.c (elf32_m68hc11_special_sections): Likewise. - * elf32-m68hc12.c (elf32_m68hc12_special_sections): Likewise. - * elf32-mcore.c (mcore_elf_special_sections): Likewise. - * elf32-sh64.c (sh64_elf_special_sections): Likewise. - * elf32-v850.c (v850_elf_special_sections): Likewise. - * elf32-xtensa.c (elf_xtensa_special_sections): Likewise. - * elf64-alpha.c (elf64_alpha_special_sections): Likewise. - * elf64-hppa.c (elf64_hppa_special_sections): Likewise. - * elf64-ppc.c (ppc64_elf_special_sections): Likewise. - * elf64-sh64.c (sh64_elf64_special_sections): Likewise. - * elfxx-ia64.c (elfNN_ia64_special_sections): Likewise. - * elfxx-mips.c (_bfd_mips_elf_special_sections): Likewise. - * elf32-ppc.c (ppc_elf_special_sections): Likewise. Fix .plt flags. - -2003-09-21 Daniel Jacobowitz - - * elf64-alpha.c (elf64_alpha_create_got_section): Initialize - ->got if the section already exists. - -2003-09-19 Nathan Sidwell - - * dwarf2.c (decode_line_info): Cope with an initially empty - filename table. - -2003-09-18 H.J. Lu - - * acinclude.m4: Include ../config/accross.m4. - * aclocal.m4: Regenerated. - - * configure.host (HOST_64BIT_TYPE): Remove if it is set to long - or long long. - (HOST_U_64BIT_TYPE): Remove if it is set to unsigned long long. - (host64): Remove if HOST_64BIT_TYPE is set to long. - - * configure.in (HOST_64BIT_TYPE): Set according to the size of - long and long long. - (HOST_U_64BIT_TYPE): Likewise. - (host64): Likewise. - * configure: Regenerated. - -2003-09-19 Alan Modra - - * elf.c (elfcore_write_note): Don't use sizeof(Elf_External_note) - since some ABIs round up the size of the struct. - -2003-09-18 H.J. Lu - - * elflink.c (_bfd_elf_merge_symbol): Allow type change if - the old symbol is undefined and the new symbol is defined. - -2003-09-18 Andreas Schwab - - * simple.c (bfd_simple_get_relocated_section_contents): Use - _bfd_generic_link_hash_table_create instead of - bfd_link_hash_table_create. - -2003-09-10 H.J. Lu - - * elfxx-ia64.c (elfNN_ia64_special_sections): Mark all sections - started with ".sbss" or "".sdata" as SHF_IA_64_SHORT. - -2003-09-10 John David Anglin - Randolph Chung - - * elf32-hppa.c (struct elf32_hppa_link_hash_entry, - hppa_link_hash_newfunc, hppa_build_one_stub, - elf32_hppa_adjust_dynamic_symbol, mark_PIC_calls, allocate_plt_static, - allocate_dynrelocs, elf32_hppa_size_dynamic_sections, - elf32_hppa_finish_dynamic_symbol): Remove pic_call field and all code - for generating import stubs for calls to statically linked PIC - functions. - (hppa_type_of_stub): Don't generate an import stub for calls to - statically linked pic functions. Generate import stubs for calls - in a shared object, to functions not in a regular file, and to - defined weak functions. Add new argument INFO. - (hppa_build_one_stub): Don't undef ADDIL_DP. - (elf32_hppa_check_relocs): Don't set SEC_HAS_GOT_REF flag. - (elf32_hppa_size_stubs): Pass info to hppa_type_of_stub. - (final_link_relocate): Change all DLTIND relocs to DPREL relocs in a - non-shared link. Convert instructions that use the the linkage table - pointer, or a facsimile thereof, to use the global data pointer when - the reloc has been changed. - -2003-09-08 Joel Brobecker - - * archures.c: Add new machine names for hppa. - * bfd-in2.h: Regenerate. - * cpu-hppa.c: Use the new machine names. - -2003-09-06 Stephane Carrez - - * elf32-m68hc1x.h (struct m68hc11_elf_link_hash_table): Remove - all_local_syms member. - * elf32-m68hc1x.c (elf32_m68hc11_size_stubs): Use bfd_elf_get_elf_syms - to get the local symbols. - -2003-09-06 Stephane Carrez - - * elf32-m68hc12.c (elf32_m68hc12_special_sections): New for hc11. - (elf_backend_special_sections): Define.a - - PR savannah/4950: - * elf32-m68hc11.c (elf32_m68hc11_special_sections): The .vectors - section is read-only. - -2003-09-04 Nick Clifton - - * archures.c (bfd_mach_v850e1): Define. - * bfd-in2.h: Regenerate. - * cpu-v850.h (scan): Accept bfd_mach_v850e1. - (arch_info_struct): Include an entry for bfd_mach_v850e1. - * elf32-v850.c (v850_elf_object_p): Accept E_V850E1_ARCH flag. - (v850_elf_final_write_processing): Accept bfd_mach_v850e1. - (v850_elf_print_private_bfd_data): Interpret E_V850E1_ARCH flag. - (v850_elf_merge_private_bfd_data): Allow v850e1 binaries to be - linked with v850e binaries. Mark the output as v850e. - -2003-09-03 Nick Clifton - - * cofflink.c (_bfd_coff_link_input_bfd): Do not skip section - symbols that are used in relocs. - -2003-08-30 Robert Millan - - * configure.in: Match GNU/KFreeBSD with new kfreebsd*-gnu triplet. - * config.bfd: Likewise. - * configure: Regenerate. - -2003-08-31 Christian Groessler - - * elf32-i860.c (i860_howto_pc26_reloc): Finish relocation here - instead of returning bfd_reloc_continue. - -2003-08-31 Andreas Jaeger - - * merge.c: Update to ISO C90. - -2003-08-27 Ian Lance Taylor - - * configure.in: Check for strtoull. - * bfd.c (bfd_scan_vma): Use strtoull when available. - * configure, config.in: Regenerate. - - * configure.in: Define and substitute BFD_HOST_LONG_LONG. - * bfd-in.h: Define BFD_HOST_LONG_LONG. Test it rather than - __GNUC__ when deciding whether to use long long for - BFD_HOST_64_BIT. - * configure, Makefile.in, doc/Makefile.in, bfd-in2.h: Regenerate. - -2003-08-27 Christian Groessler - - * elf32-i860.c (i860_howto_pc26_reloc, i860_howto_pc16_reloc, - i860_howto_splitn_reloc, i860_howto_highadj_reloc): New - functions. - (elf32_i860_howto_table): Insert the new functions as - 'special_function's in the proper reloc type entries. - -2003-08-27 Richard Sandiford - - * elf32-frv.c (elf32_frv_relocate_section): Use - _bfd_elf_rela_local_sym. - -2003-08-26 Michael Snyder - - * cpu-frv.c: Remove unused enum. - -2003-08-25 Maciej W. Rozycki - - * reloc.c: Fix documentation for MIPS ELF relocations. - libbfd.h: Regenerate. - bfd-in2.h: Regenerate. - -2003-08-24 Jason Eckhardt - - * coff-i860.c (CALC_ADDEND): Define to be a no-op. - -2003-08-24 Jason Eckhardt - - * elf32-i860.c (elf32_i860_relocate_pc16): Subtract 4 and - shift by 2 before storing the relocated value. - -2003-08-23 Jason Eckhardt - - * coff-i860.c (coff_i860_reloc_nyi): New function. - (howto_table): Add entries for relocations PAIR, HIGHADJ, HIGH, - LOWn, SPLITn, and BRADDR. - (RTYPE2HOWTO): Check that the r_type is within the howto_table - before trying to access the entry. - (coff_i860_rtype_to_howto): Likewise. - (coff_i860_reloc_type_lookup): New function. - (i860_reloc_processing): New function. - (coff_bfd_reloc_type_lookup): Define macro. - (RELOC_PROCESSING): Define macro. - Minor formatting adjustments. - -2003-08-23 Alan Modra - - * elflink.h (elf_link_add_object_symbols): Don't crash on NULL owner. - -2003-08-22 H.J. Lu - - * elfxx-ia64.c (elfNN_ia64_create_dynamic_sections): Align the - .got section at 8 bytes. - -2003-08-21 Nick Clifton - - * cofflink.c: Update to ISO C90 and tidy up formatting. - -2003-08-21 Randolph Chung - - * elf32-hppa.c (elf32_hppa_object_p): For elf32-hppa-linux, objects - can have OSABI=Linux or OSABI=SysV. Check for both. - * elf64-hppa.c (elf64_hppa_object_p): Likewise. - -2003-08-21 Nick Clifton - - * po/sv.po: Updated Swedish translation. - -2003-08-20 Richard Sandiford - - * elf64-mips.c (elf_backend_copy_indirect_symbol): Define. - -2003-08-20 Nick Clifton - - * elf-bfd.h (RELOC_FOR_GLOBAL_SYMBOL): New macro used to - replace some duplicated code in most elfxx-xxxx.c files. This - version uses the new fields in bfd_link_info. - - * elf-m10300.c (mn10300_elf_relocate_section): Use new macro. - * elf32-arm.h (elf32_arm_relocate_section): Likewise. - * elf32-cris.c (cris_elf_relocate_section): Likewise. - * elf32-hppa.c (elf32_hppa_relocate_section): Likewise. - * elf32-i386.c (elf_i386_relocate_section): Likewise. - * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise. - * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise. - * elf32-m68k.c (elf_m68k_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-vax.c (elf_vax_relocate_section): Likewise. - * elf32-xtensa.c (elf_xtensa_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_relocate_section): Likewise. - - * elf-hppa.h (elf_hppa_unmark_useless_dynamic_symbols, - elf_hppa_remark_useless_dynamic_symbols, - elf_hppa_relocate_section): Use the new fields in - bfd_link_info structure. - * elf32-sh.c (sh_elf_relocate_section): Likewise. - * elf64-alpha.c (elf64_alpha_check_relocs): Likewise. - * elf64-hppa.c (elf64_hppa_check_relocs): Likewise. - * elf64-sh64.c (sh_elf64_relocate_section): Likewise. - * elfxx-ia64.c (elfNN_ia64_check_relocs): Likewise. - * elfxx-mips.c (mips_elf_calculate_relocation): Likewise. - - * elflink.h (elf_link_output_extsym): Fix test for reporting - undefined symbols in shared libraries. Remove redundant test - of shlib_undefined when reporting references to forced local - symbols. - -2003-08-18 Andreas Schwab - - * libpei.h (bfd_pe_executable_p): Also recognize efi-app - executables. - -2003-08-17 Hans-Peter Nilsson - - * simple.c (bfd_simple_get_relocated_section_contents): Move - reloc_done hack to before first bfd_section_size call. Change all - returns to use new wrapper macro RETURN, restoring sec->reloc_done. - -2003-08-16 Alan Modra - - * elf64-ppc.c: Don't include elf/ppc.h. - -2003-08-14 Richard Sandiford - - * elfxx-mips.c (_bfd_mips_elf_modify_segment_map): Fix PT_DYNAMIC - code to work with 64-bit bfds. - -2003-08-14 Alan Modra - - * dep-in.sed: Remove libintl.h. - * Makefile.am (SRC-POTFILES.in, BLD-POTFILES.in): Unset LC_COLLATE. - (POTFILES.in): Remove target. - * Makefile.in: Regenerate. - -2003-08-12 Alan Modra - - * elf64-ppc.c (ppc64_elf_next_input_section): Update comment. - (ppc64_elf_relocate_section): For zero sym R_PPC64_TOC relocs, - use the function sym from the previous reloc. - -2003-08-11 Jakub Jelinek - - * elf32-i386.c (elf_i386_relocate_section): Make undefined symbols - fatal if -pie. - * elf32-s390.c (elf_s390_relocate_section): Likewise. - * elf32-sparc.c (elf32_sparc_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_relocate_section): Likewise. - * elf32-ppc.c (ppc_elf_relocate_section): Likewise. - (ppc_elf_relocate_section) : Issue fatal error - on undefined symbols if -pie. - * elf32-sh.c (sh_elf_relocate_section): Likewise. - -2003-08-11 Alan Modra - - * elf64-ppc.c (ppc64_elf_relocate_section): Add special case for crt1.o - branch to __libc_start_main. - -2003-08-08 Dmitry Diky - - * archures.c: Add xW42 and xE42 parts. Sort MPU list according to - gcc order. - * cpu-msp430.c: Likewise. - * elf32-msp430.c: Likewise. - * bfd-in2.h: Regenerate. - -2003-08-07 Alan Modra - - * elfxx-target.h: Remove PTR cast. - * targets.c (bfd_target): Make backend_data const void *. - * elf-bfd.h: Constify all occurrences of struct elf_backend_data. - * elf-m10300.c: Likewise. - * elf.c: Likewise. - * elf32-hppa.c: Likewise. - * elf32-i386.c: Likewise. - * elf32-m68hc1x.c: Likewise. - * elf32-ppc.c: Likewise. - * elf32-s390.c: Likewise. - * elf32-sh.c: Likewise. - * elf32-sh64.c: Likewise. - * elf32-sparc.c: Likewise. - * elf32-xtensa.c: Likewise. - * elf64-mips.c: Likewise. - * elf64-ppc.c: Likewise. - * elf64-s390.c: Likewise. - * elf64-sh64.c: Likewise. - * elf64-sparc.c: Likewise. - * elf64-x86-64.c: Likewise. - * elfcode.h: Likewise. - * elfcore.h: Likewise. - * elflink.c: Likewise. - * elflink.h: Likewise. - * elfxx-ia64.c: Likewise. - * elfxx-mips.c: Likewise. - * elfxx-mips.h: Likewise. - * elf.c (prep_headers): Remove useless check for null backend_data. - * bfd-in2.h: Regenerate. - - * elf-bfd.h: Remove PARAMS macro. Replace PTR with void *. - (NAME): Use ## rather than CONCAT4 macro. - * elfcode.h: Remove one remaining PARAMS macro. - * elf-eh-frame.c: Convert to C90, remove unneeded casts and prototypes. - * elf-strtab.c: Likewise. - * elf-hppa.h: Likewise. - * elf32-hppa.h: Likewise. - * elf32-hppa.c: Likewise. - (elf32_hppa_add_symbol_hook): Delete. - (elf_backend_add_symbol_hook): Don't define. - * libhppa.h: Convert to C90. Replace INLINE with inline. - -2003-08-06 Alan Modra - - * elf64-ppc.c (ppc_stub_name): Tweak names for better readability. - (ppc64_elf_adjust_dynamic_symbol): Allow copy relocs against - function descriptors, but warn. - (ppc_build_one_stub): Remove a couple of vars. Move code creating - stub syms so that we can avoid a stub sym if we already have a - plt sym. Do not redefine an existing symbol. - (ppc64_elf_build_stubs): When --emit-stub-syms, print a symbol for - glink. - -2003-08-06 Nick Clifton - - * po/fr.po: Updated French translation. - -2003-08-06 Alan Modra - - * elflink.c (_bfd_elf_create_dynamic_sections): Mark .dynbss with - SEC_LINKER_CREATED. - -2003-08-05 Daniel Jacobowitz - - * elf32-arm.h (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define. - (elf32_arm_final_link_relocate, elf32_arm_relocate_section): Use it. - -2003-08-03 Jeff Muizelaar - - * coffcode.h (coff_slurp_line_table): Return with a warning - message if the line number table could not be read. - -2003-08-04 Nick Clifton - - * elflink.h (elf_link_add_object_symbols): Prepend "warning: " - to messages produced for .gnu.warning.SYMBOL sections. - -2003-08-04 Alan Modra - - * elfcode.h: Convert to C90, remove unneeded casts and prototypes. - * elfcore.h: Likewise. - * elflink.c: Likewise. - * elflink.h: Likewise. - * elf.c (sym_is_global): Remove INLINE. - (align_file_position): Replace INLINE with inline. - * elfcode.h (elf_swap_dyn_in, elf_swap_dyn_out): Remove INLINE. - (elf_file_p): Replace INLINE with inline. - -2003-08-02 Kaz Kojima - - * elf32-sh.c (sh_elf_check_relocs): Don't set DF_TEXTREL here. - -2003-08-01 H.J. Lu - - * elfxx-ia64.c (get_got): Align the .got section at 8 bytes. - -2003-08-01 H.J. Lu - - * elfxx-ia64.c (elfNN_ia64_finish_dynamic_symbol): Use - ElfNN_External_Rela instead of Elf64_External_Rela. - -2003-08-01 Nick Clifton - - * config.bfd: Add code to catch obsolete configurations and warn - about them unless --enable-obsolete is used. Use this to mark - vax-vms port as obsolete. - -2003-07-30 Alan Modra - - * elf32-ppc.c (ppc_elf_install_value): Tidy. - (ppc_elf_relax_section): Remove dead code. Remove unnecessary casts. - Formatting. - * elfxx-target.h: Remove PARAMS macro. Formatting. - -2003-07-30 Alan Modra - - * elf.c (bfd_section_from_r_symndx): Test for SHN_UNDEF. - * elf64-ppc.c (get_fdh): New function, split out from - ppc64_elf_edit_opd. - (ppc64_elf_check_relocs): Use get_fdh. - (func_desc_adjust): Likewise. Tidy. - (ppc64_elf_edit_opd): Tighten reloc checks. Free local_syms on error - exit. Use get_fdh. Account for superfluous dynamic relocs. - (ppc64_elf_relocate_section): Warning fix. - -2003-07-30 Jason Eckhardt - - * coff-i860.c: Convert to ISO C90. Remove superflous prototypes. - -2003-07-30 Jason Eckhardt - - * elf32-i860.c: Convert to ISO C90. Remove superflous prototypes. - -2003-07-30 Randolph Chung - - * elf-hppa.h (elf_hppa_relocate_section): Look up dyn_h for undefweak. - * elf64-hppa.c (elf64_hppa_finalize_dlt): Check h->root.type. - -2003-07-30 Alan Modra - - * elf.c: Convert to C90, remove unnecessary prototypes and casts. - Replace PTR with void *. Formatting. - (_bfd_elf_assign_file_position_for_section): Remove INLINE. - (make_mapping): Likewise. - -2003-07-29 Alan Modra - - * elf64-ppc.c (func_desc_adjust): Give linker created function - descriptor symbols a size and type. - (ppc64_elf_relocate_section): Correct lq insn test. - -2003-07-28 Eric Christopher - - * elf32-ppc.c (R_PPC_RELAX32): New relocation. - (ppc_elf_install_value): New function. - (ppc_elf_sort_rela): Remove. - (ppc_elf_relax_section): Rewrite. Remove old relaxation - and replace with out of range branch stubs. - (ppc_elf_relocate_section): Handle R_PPC_RELAX32. - -2003-07-29 Alexandre Oliva - - * elf-m10300.c (mn10300_elf_relax_section): Take symbol hash table - from input_bfd. - -2003-07-28 Alan Modra - - * elf.c (special_sections): Set attributes for .got and .plt. - -2003-07-27 Alan Modra - - * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Ensure no copy relocs - on function descriptors. - (ELIMINATE_COPY_RELOCS): Expand comment. - (ppc64_elf_special_sections): Move. Don't include non-ppc64 sections. - Do include ".toc1". - -2003-07-25 H.J. Lu - - * elf.c (_bfd_elf_new_section_hook): Set the default section - type to SHT_NULL. - (elf_fake_sections): Set the section type based on asect->flags - if it is SHT_NULL. Don't abort on processor specific section - types. - -2003-07-25 H.J. Lu - - * bfd-in2.h: Regenerated. - -2003-07-25 H.J. Lu - - * elf-bfd.h (bfd_elf_special_section): New. - (elf_backend_data): Add special_sections, a pointer to - bfd_elf_special_section. - (elf_section_type). New. - (elf_section_flags): New. - (_bfd_elf_get_sec_type_attr): New. - - * elf.c (_bfd_elf_make_section_from_shdr): Always use the - real section type/flags. - (special_sections): New. - (get_special_section): New. - (_bfd_elf_get_sec_type_attr): New. - (_bfd_elf_new_section_hook): Check special_section to set - elf_section_type and elf_section_flags. - (elf_fake_sections): Don't use section name to set ELF section - data. - - * elf32-m32r.c (m32r_elf_special_sections): New. - (elf_backend_special_sections): Defined. - - * elf32-m68hc11.c (elf32_m68hc11_special_sections): New. - (elf_backend_special_sections): Defined. - - * elf32-mcore.c (mcore_elf_special_sections): New. - (elf_backend_special_sections): Defined. - - * elf32-ppc.c (ppc_elf_special_sections): New. - (elf_backend_special_sections): Defined. - - * elf32-sh64.c (sh64_elf_special_sections): New. - (elf_backend_special_sections): Defined. - - * elf32-v850.c (v850_elf_special_sections): New. - (elf_backend_special_sections): Defined. - - * elf32-xtensa.c (elf_xtensa_special_sections): New. - (elf_backend_special_sections): Defined. - - * elf64-alpha.c (elf64_alpha_special_sections): New. - (elf_backend_special_sections): Defined. - - * elf64-hppa.c (elf64_hppa_special_sections): New. - (elf_backend_special_sections): Defined. - - * elf64-ppc.c (ppc64_elf_special_sections): New. - (elf_backend_special_sections): Defined. - - * elf64-sh64.c (sh64_elf64_special_sections): New. - (elf_backend_special_sections): Defined. - - * elfxx-ia64.c (elfNN_ia64_special_sections): New. - (elf_backend_special_sections): Defined. - - * elfxx-mips.c (_bfd_mips_elf_special_sections): New. - - * elfxx-mips.h (_bfd_mips_elf_special_sections): New. - (elf_backend_special_sections): Defined. - - * elfxx-target.h (elf_backend_special_sections): New. Default - to NULL. - (elfNN_bed): Initialize special_sections. - - * section.c (bfd_abs_section): Remove const. - (bfd_und_section): Likewise. - (bfd_com_section): Likewise. - (bfd_ind_section): Likewise. - -2003-07-24 Nick Clifton - - * coff-arm.c (EXTRA_S_FLAGS): Include SEC_CODE so that code - sections are assigned the LOAD attribute. - -2003-07-25 Kaz Kojima - - * elf32-sh.c: Convert to C90. Replace PTR with void *. - * elf32-sh64-com.c: Likewise. - * elf32-sh64.c: Likewise. - * elf32-sh64.h: Likewise. - * elf64-sh64.c: Likewise. - -2003-07-24 Kaz Kojima - - * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Use SYMBOL_CALLS_LOCAL. - (allocate_dynrelocs): Likewise. - (sh_elf_relocate_section): Likewise. Use SYMBOL_REFERENCES_LOCAL. - (sh_elf_finish_dynamic_symbol): Use SYMBOL_REFERENCES_LOCAL. - -2003-07-24 Nick Clifton - - * po/fr.po: Updated French translation. - -2003-07-23 Bob Wilson - - * elf32-xtensa.c (xtensa_elf_dynamic_symbol_p): Make inline and move - near the beginning of the file. Swap order of arguments. Call - _bfd_elf_dynamic_symbol_p with "ignore_protected" set to 0. - (elf_xtensa_fix_refcounts): Adjust xtensa_elf_dynamic_symbol_p call. - (elf_xtensa_relocate_section): Likewise. - (shrink_dynamic_reloc_sections): Likewise. - -2003-07-23 Bob Wilson - - * elf32-xtensa.c (plt_reloc_count): Fix typo in comment. - (elf_xtensa_size_dynamic_sections): Use elf_discarded_section. - (elf_xtensa_combine_prop_entries): Avoid returning non-zero without - first printing an error message. - (elf_xtensa_finish_dynamic_sections): Likewise. - (elf_xtensa_discard_info_for_section): Adjust size of .got.loc when - discarding literal table entries. - (elf_xtensa_merge_private_bfd_data): Remove newline from error message. - (elf_xtensa_do_asm_simplify): Likewise. - -2003-07-23 Stephane Carrez - - * elf32-m68hc1x.c (elf32_m68hc11_size_stubs): Avoid crash when - we have a local symbol in common section. - -2003-07-22 H.J. Lu - - * elflink.c (_bfd_elf_dynamic_symbol_p): Don't return TRUE for - weak symbols. - -2003-07-22 Nick Clifton - - * coffcode.h (coff_slurp_symbol_table): Add C_TCSYM and C_ECOML to - expected RS6000 storage classes. - -2003-07-21 H.J. Lu - - * elfxx-ia64.c (elfNN_ia64_size_dynamic_sections): Mark - output_bfd unused to silence gcc. - -2003-07-21 Nick Clifton - - * po/sv.po: Updated Swedish translation. - -2003-07-21 Alan Modra - - * elf-bfd.h (SYMBOL_REFERENCES_LOCAL, SYMBOL_CALLS_LOCAL): Use.. - (_bfd_elf_symbol_refs_local_p): ..this. Declare. - * elflink.c (_bfd_elf_symbol_refs_local_p): New function. - * elf32-i386.c (elf_i386_relocate_section): Remove h NULL test - now done in _bfd_elf_symbol_refs_local_p. - * elf32-ppc.c (ppc_elf_relocate_section): Likewise. - * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. - * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. - -2003-07-18 H.J. Lu - - * elflink.c (_bfd_elf_dynamic_symbol_p): Undo the last change. - -2003-07-18 H.J. Lu - - * elf-bfd.h (SYMBOL_REFERENCES_LOCAL): Fix a typo. - (SYMBOL_CALLS_LOCAL): Likewise. - - * elflink.c (_bfd_elf_dynamic_symbol_p): Return TRUE - immediately if symbol isn't defined locally. - -2003-07-18 Richard Henderson - - * elflink.c (_bfd_elf_dynamic_symbol_p): New. - * elf-bfd.h (_bfd_elf_dynamic_symbol_p): Declare it. - (SYMBOL_REFERENCES_LOCAL, SYMBOL_CALLS_LOCAL): Use it. - * elf32-xtensa.c (xtensa_elf_dynamic_symbol_p): Likewise. - * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Likewise. - * elf64-hppa.c (elf64_hppa_dynamic_symbol_p): Likewise. - * elfxx-ia64.c (elfNN_ia64_dynamic_symbol_p): Likewise. - Update all callers to provide the relocation being resolved. - -2003-07-17 Shaun Jackman - - * config.bfd (arm-wince-pe): Add -DARM_COFF_BUGFIX to - targ_cflags. - -2003-07-17 Nick Clifton - - * po/es.po: New Spanish translation. - * po/sv.po: New Swedish translation. - * po/opcodes.pot: Regenerate. - -2003-07-16 Richard Henderson - - * config.bfd, configure.host, configure.in: Remove ia64-aix support. - * elfxx-ia64.c, targets.c: Likewise. - -2003-07-16 Richard Henderson - - * elfxx-ia64.c (elfNN_ia64_dynamic_symbol_p): Properly return false - for symbols defined locally plus -Bsymbolic. Tidy logic. - -2003-07-15 Richard Sandiford - - * archures.c (bfd_mach_mips7000): New. - * bfd-in2.h: Regenerated. - * cpu-mips.c (arch_info_struct): Add an entry for mips:7000. - * elfxx-mips.c (mips_set_isa_flags): Handle bfd_mach_mips7000. - (mips_mach_extensions): Add an entry for it. - -2003-07-14 Nick Clifton - - * po/tr.po: Update with latest version. - * po/SRC-POTFILES.in: Regenerate. - * po/bfd.pot: Regenerate. - * Makfile.in: Regenerate. - * configure: Regenerate. - -2003-07-12 Jeff Baker - - * bfd/config.bfd (__QNXTARGET__): Define for Neutrino architectures. - * bfd/elf32-arm.h (ELF_MAXPAGESIZE): Set to 4k for Neutrino. - * bfd/elf32-sh.c (ELF_MAXPAGESIZE): Set to 4k for Neutrino. - * bfd/elf32-ppc.c (ELF_MAXPAGESIZE): Set to 4k for Neutrino. - -2003-07-12 Jeff Muizelaar - - * coffcode.h (coff_set_section_contents): Set the - IMAGE_FILE_32BIT_MACHINE flag for PE targets. - -2003-07-11 Richard Sandiford - - * bfd-in.h (bfd_h8300_pad_address): Declare. - * bfd-in2.h: Regenerate. - * cpu-h8300.c (bfd_h8300_pad_address): New function. - * coff-h8300.c (h8300_reloc16_estimate): Use it to canonicalize - addresses before checking whether they can be relaxed. - (h8300_reloc16_extra_cases): Likewise for the R_MOVL2 sanity check. - Don't complain about overflows in general 8-bit relocations. - * elf32-h8300.c (elf32_h8_relax_section): Use bfd_h8300_pad_address. - Fix handling of R_H8_DIR24A8. - -2003-07-11 Richard Sandiford - - * elf32-h8300.c: Convert function prototypes and definitions - to C90 syntax. - * coff-h8300.c: Likewise. - * cpu-h8300.c: Likewise. - -2003-07-11 Alan Modra - - * po/SRC-POTFILES.in: Regenerate. - * po/bfd.pot: Likewise. - -2003-07-10 Bob Wilson - - * elf32-xtensa.c (elf_xtensa_create_dynamic_sections): Create new - .got.loc section. Do not set SEC_ALLOC or SEC_LOAD flags for the - .xt.lit.plt section. - (elf_xtensa_size_dynamic_sections): Set size of the .got.loc section - and allocate memory for it. - (elf_xtensa_combine_prop_entries): Copy contents of .xt.lit output - section to the .got.loc section. - (elf_xtensa_finish_dynamic_sections): Fix up call to - elf_xtensa_combine_prop_entries and set DT_XTENSA_GOT_LOC_OFF to - the address of .got.loc. - (relax_property_section): Shrink .got.loc to match changes in any - literal table section. - (xtensa_is_property_section): Change to match - xtensa_get_property_section_name. - (xtensa_is_littable_section): New. - -2003-07-10 H.J. Lu - - * elfxx-ia64.c (IA64_HOWTO): Set dst_mask to -1 instead of - -1LL. - -2003-07-10 Alan Modra - - * Makefile.am (BFD32_BACKENDS): Add elf32-am33lin.lo. - (BFD32_BACKENDS_CFILES): elf32-am33lin.c not elf32-am33lin.lo. - Run "make dep-am". - * Makefile.in: Regenerate. - -2003-07-10 Alexandre Oliva - - 2001-09-12 Alexandre Oliva - * elf32-am33lin.c (ELF_MACHINE_CODE): Redefine to EM_MN10300. - (ELF_MACHINE_ALT1): Define to EM_CYGNUS_MN10300. - 2001-06-02 Nick Clifton - * elf32-am33lin.c: Rename global functions. - 2001-05-09 Alexandre Oliva - * config.bfd (am33_2.0, am33_2.0-*-linux*): Added. - * configure.in (bfd_elf32_am33lin_vec): Added. - * Makefile.am (BFD32_BACKENDS): Added elf32-am33lin.lo. - (elf32-am33lin.lo): List dependencies. - * aclocal.m4, configure, Makefile.in: Rebuilt. - * elf-m10300.c (TARGET_LITTLE_SYM, TARGET_LITTLE_NAME, - ELF_ARCH, ELF_MACHINE_CODE, ELF_MAXPAGESIZE): Define only if - ELF_ARCH was not defined before. - (elf_symbol_leading_char): Define if not defined. - * elf32-am33lin.c: Override the definitions above. - * targets.c (bfd_elf32_am33lin_vec): New. - -2003-07-09 Alexandre Oliva - - 2002-12-12 Alexandre Oliva - * elf-m10300.c (elf32_mn10300_link_hash_newfunc): Initialize - pcrel_relocs_copied. - 2001-12-13 Alexandre Oliva - * elf-m10300.c (ELF_DYNAMIC_INTERPRETER): Renamed from - ld-linux.so.2 to ld.so.1. - 2001-10-10 Alexandre Oliva - * elf-m10300.c (elf_mn10300_sizeof_plt0): New macro. - (_bfd_mn10300_elf_adjust_dynamic_symbol): Use it. - (_bfd_mn10300_elf_finish_dynamic_symbol): Likewise. - * elf-m10300.c (_bfd_mn10300_elf_size_dynamic_sections): Allocate - .rela.* section contents with bfd_zalloc. - 2001-09-25 Alexandre Oliva - * elf-m10300.c: Added declarations for functions missing them. - Merge some shared-library changes from the i386 back-end. Use - R_MN10300_RELATIVE instead of R_MN10300_PCREL32 and - R_MN10300_GLOB_DAT instead of R_MN10300_32 where appropriate. - (struct elf32_mn10300_link_hash_entry): Remove duplicates of - members of elf_link_hash_entry. Adjusted references. - (mn10300_elf_final_link_relocate): dynobj was already loaded - into a local variable, use it. - 2001-09-21 Nick Clifton - * elf-m10300.c: Add missing function prototypes. - 2001-08-24 Alexandre Oliva - * elf-m10300.c (mn10300_elf_relocate_section): Don't compute - relocation for dynamic relocations. - 2001-05-16 Alexandre Oliva - * reloc.c (BFD_RELOC_MN10300_GOTOFF24): New. - * elf-m10300.c: Introduce GOTPC16, GOTOFF24, GOTOFF16 and - PLT16, and rename GOTPC to GOTPC32 and GOTOFF to GOTOFF32. - (_bfd_mn10300_elf_create_dynamic_sections): Move creation ot PLT... - (_bfd_mn10300_elf_create_got_section): ... here, so that its - adress is already known at the time we compute relaxations. - (mn10300_elf_relax_section): Relax GOTPC32, GOTOFF32, GOT32 - and PLT32 to narrower relocations. - * libbfd.h, bfd-in2.h: Rebuilt. - 2001-04-12 Alexandre Oliva - * reloc.c (BFD_RELOC_MN10300_GOT32, BFD_RELOC_MN10300_GOT24, - BFD_RELOC_MN10300_GOT16, BFD_RELOC_MN10300_COPY, - BFD_RELOC_MN10300_GLOB_DAT, BFD_RELOC_MN10300_JMP_SLOT, - BFD_RELOC_MN10300_RELATIVE): New relocs. - * libbfd.h, bfd-in2.h: Rebuilt. - * elf-m10300.c (struct elf_mn10300_pcrel_relocs_copied): New. - (struct elf32_mn10300_link_hash_entry): Added DSO-related - fields. - (elf_mn10300_howto): Defined new relocation types. - (mn10300_reloc_map): Map them. - (_bfd_mn10300_elf_create_got_section): New fn. - (mn10300_elf_check_relocs): Handle PIC relocs. - (mn10300_elf_final_link_relocate): Likewise. - (mn10300_elf_relocate_section): Handle DSOs. - (PLT0_ENTRY_SIZE, PLT_ENTRY_SIZE, PIC_PLT_ENTRY_SIZE): New macros. - (elf_mn10300_plt0_entry, elf_mn10300_plt_entry, - elf_mn10300_pic_plt_entry): New. - (elf_mn10300_sizeof_plt, elf_mn10300_plt_plt0_offset, - elf_mn10300_plt0_linker_offset, elf_mn10300_plt0_gotid_offset, - elf_mn10300_plt_temp_offset, elf_mn10300_plt_symbol_offset, - elf_mn10300_plt_reloc_offset: New macros. - (ELF_DYNAMIC_INTERPRETER): Likewise. - (_bfd_mn10300_elf_create_dynamic_sections): New function. - (_bfd_mn10300_elf_adjust_dynamic_symbol): Likewise. - (_bfd_mn10300_elf_discard_copies): Likewise. - (_bfd_mn10300_elf_size_dynamic_sections): Likewise. - (_bfd_mn10300_elf_finish_dynamic_symbol): Likewise. - (_bfd_mn10300_elf_finish_dynamic_sections): Likewise. - (elf_backend_can_gc_sections, - elf_backend_create_dynamic_sections, - elf_backend_adjust_dynamic_sections, - 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): New - macros. - -2003-07-09 Alexandre Oliva - - 2001-05-06 Alexandre Oliva - * elf-m10300.c (compute_function_info): Account for AM33 - registers in `movm' when computing stack space for `call' when - linking for AM33/2.0 link. - 2000-04-01 Alexandre Oliva - * archures.c (bfd_mach_am33_2): Renamed from bfd_mach_am332. - * bfd-in2.h: Rebuilt. - * cpu-m10300.c (bfd_am33_2_arch): Renamed from bfd_am332_arch. - * elf-m10300.c: Updated. - 2000-03-31 Alexandre Oliva - * archures.c (bfd_mach_am332): Defined. - * bfd-in2.h: Rebuilt. - * cpu-m10300.c (bfd_am332_arch): Defined. - (bfd_am33_arch): Chained with am33-2. - * elf-m10300.c (elf_mn10300_mach): Handle am332. - (_bfd_mn10300_elf_final_write_processing): Likewise. - -2003-07-09 H.J. Lu - - * elfxx-ia64.c (IA64_HOWTO): Set dst_mask to -1LL. - -2003-07-10 Alan Modra - - * elf64-ppc.c (bfd_elf64_mkobject): Define. - (struct ppc64_elf_obj_tdata): New. - (ppc64_elf_tdata, ppc64_tlsld_got): Define. - (ppc64_elf_mkobject): New function. - (struct got_entry): Add "owner". Move "tls_type". - (struct ppc_link_hash_table): Delete "relgot", "tlsld_got". - (ppc64_elf_init_stub_bfd): New function. - (create_got_section): Create header .got in dynobj. Create .got - and .rela.got in each bfd. Stash pointers in ppc64_elf_obj_tdata. - (ppc64_elf_create_dynamic_sections): Don't call create_got_section. - Look for dynobj .got, and test it. - (ppc64_elf_copy_indirect_symbol): Adjust for changed got. - (update_local_sym_info): Likewise. - (ppc64_elf_check_relocs): Likewise. - (ppc64_elf_gc_sweep_hook): Likewise. - (ppc64_elf_tls_optimize): Likewise. - (allocate_dynrelocs): Likewise. - (ppc64_elf_size_dynamic_sections): Likewise. - (ppc64_elf_relocate_section): Likewise. - (ppc64_elf_next_toc_section): Update comment. - (toc_adjusting_stub_needed): Remove unneeded cast. - (ppc64_elf_build_stubs): Check for stub sections in stub bfd by - testing section flags. - (ppc64_elf_build_stubs): Likewise. - (ppc64_elf_size_stubs): Likewise. Remove stub_bfd param. - (ppc64_elf_finish_dynamic_sections): Write out got sections. - (func_desc_adjust): Copy over dynamic info for undef weaks. - * elf64-ppc.h (ppc64_elf_init_stub_bfd): Declare. - (ppc64_elf_size_stubs): Update prototype. - * elflink.h (elf_link_sort_relocs): Use link_orders to find reldyn - input sections rather than scanning dynobj. - -2003-07-09 Richard Sandiford - - * elfxx-mips.c (mips_elf_link_hash_entry): Remove min_dyn_reloc_index. - (bfd_mips_elf_swap_msym_in, bfd_mips_elf_swap_msym_out): Delete. - (mips_elf_create_msym_section): Delete. - (mips_elf_create_dynamic_relocation): Don't set min_dyn_reloc_index. - (_bfd_mips_elf_copy_indirect_symbol): Likewise. - (_bfd_mips_elf_create_dynamic_sections): Don't create .msym. - (_bfd_mips_elf_size_dynamic_sections): Don't calculate its size. - (_bfd_mips_elf_size_dynamic_sections): Don't add DT_MIPS_MSYM. - (_bfd_mips_elf_finish_dynamic_symbol): Don't add symbols to .msym. - (_bfd_mips_elf_finish_dynamic_sections): Likewise. - -2003-07-09 Richard Sandiford - - * elfxx-mips.c (mips_elf_irix6_finish_dynamic_symbol): Make the - symbols protected. - -2003-07-09 Richard Sandiford - - * elfxx-mips.c (mips_elf_create_dynamic_relocation): Fix handling - of relocations whose offset is -2. - -2003-07-09 Richard Sandiford - - * bfd/elfxx-mips.c (mips_elf_create_dynamic_relocation): Treat - forced-local symbols like other locals. Don't create relocations - against STN_UNDEF in irix objects. - -2003-07-09 Richard Sandiford - - * bfd/elfxx-mips.c (mips_elf_create_dynamic_relocation): In SGI- - compatible objects, add the values of defined external symbols - to the addend. - -2003-07-09 Richard Sandiford - - * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Always - initialize a GOT entry to the symbol's st_value. - -2003-07-08 Alan Modra - - * elf-bfd.h (struct elf_obj_tdata): Move linker_section_pointers.. - * elf32-ppc.c (struct ppc_elf_obj_tdata): ..to here. New. - (ppc_elf_tdata): Define. - (elf_local_ptr_offsets): Adjust. - (ppc_elf_mkobject): New function. - (bfd_elf32_mkobject): Define. - - * elfcode.h (elf_object_p): Allocate tdata via _bfd_set_format. - * elfcore.h (elf_core_file_p): Likewise. - * section.c (bfd_section_init): Remove prototype. - -2003-07-08 Alan Modra - - * elf-bfd.h (struct elf_link_hash_entry): Remove linker_section_pointer - field. - (enum elf_linker_section_enum): Delete. - (struct elf_linker_section): Delete. - (struct elf_linker_section_pointers): Delete. - (struct elf_obj_tdata): Remove #if 0 chunk. Remove linker_section. - Make linker_section_pointers a void**. - (elf_local_ptr_offsets, elf_linker_section): Don't define. - * elf32-ppc.c (enum elf_linker_section_enum): New, cut-down version - of old item in elf-bfd.h. - (struct elf_linker_section): Likewise. - (struct elf_linker_section_pointers): Likewise. - (elf_local_ptr_offsets): Define. - (struct ppc_elf_link_hash_entry): Add linker_section_pointer. - (ppc_elf_link_hash_newfunc): Init it. - (struct ppc_elf_link_hash_table): Add sbss. - (ppc_elf_link_hash_table_create): zmalloc rather than clearing - individual fields. - (elf_create_linker_section): Fold into.. - (ppc_elf_create_linker_section): ..here. Remove hole_size code. - Make rela section here if shared. - (elf_find_pointer_linker_section): Pass lsect rather than enum. - (elf_create_pointer_linker_section): Adjust. zalloc rather than - clearing in a loop. - (elf_finish_pointer_linker_section): Adjust. Don't make rela - section here. - (ppc_elf_check_relocs): Adjust. - (ppc_elf_add_symbol_hook): Tighten hash creator test. Remove code - creating .sbss by hand. - * elf.c (_bfd_elf_link_hash_newfunc): Adjust. - -2003-07-04 Jakub Jelinek - - * elf32-s390.c (elf_howto_table): Change R_390_GOT12 to - complain_overflow_bitfield. - * elf64-s390.c (elf_howto_table): Change R_390_GOT12 to - complain_overflow_bitfield. - -2003-07-04 Jakub Jelinek - - * elf-bfd.h (SYMBOL_REFERENCES_LOCAL, SYMBOL_CALLS_LOCAL): Return - true even if -pie. - -2003-07-04 Jakub Jelinek - - * elfxx-ia64.c (struct elfNN_ia64_link_hash_table): Add rel_fptr_sec. - (elfNN_ia64_dynamic_symbol_p): Change info->shared into - !info->executable. - (get_fptr): For -pie create .opd as writable section and create - .rela.opd as well. - (elfNN_ia64_check_relocs): Change info->shared into - !info->executable. - (allocate_fptr): Likewise. - (allocate_dynrel_entries): Account for a relative reloc for -pie - @fptr(). Don't account for a relative reloc if -pie want_ltoff_fptr - for undefweak symbol. Account for an IPLT reloc in .rela.opd - section if -pie. - (set_got_entry): Don't create a relative reloc if -pie - want_ltoff_fptr for undefweak symbol. - (set_fptr_entry): Emit an IPLT reloc in .rela.opd for -pie. - (elfNN_ia64_relocate_section): Emit a relative reloc for -pie - @fptr(). - - * elfxx-ia64.c (elfNN_ia64_relocate_section): Issue undefined_symbol - even if -pie. - * elf32-i386.c (elf_i386_relocate_section): Likewise. - * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. - * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. - * elf64-s390.c (elf_s390_relocate_section): Likewise. - * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. - * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. - * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. - * elf32-s390.c (elf_s390_relocate_section): Likewise. - * elf32-ppc.c (ppc_elf_relocate_section): Likewise. - -2003-07-04 Paul Clarke - - * elf32-h8300.c (R_H8_DIR32A16): Fix name field. - (elf32_h8_relax_section) : Adjust position of relocation. - : Fix type of relocation. - -2003-07-04 Kaz Kojima - - * elf32-sh.c (sh_elf_create_dynamic_sections): Return if dynamic - sections were created already. Remove unnecessary tests of - the previous change. - -2003-07-04 Kaz Kojima - - * elf32-sh.c (sh_elf_create_dynamic_sections): Don't call - bfd_make_section for existing sections. - -2003-07-04 Alan Modra - - * elf32-sparc.c (elf32_sparc_check_relocs): Don't call - create_got_section if we already have done so. - * elf32-sh.c (sh_elf_create_dynamic_sections): Likewise. - (sh_elf_check_relocs): Likewise. - (sh_elf_adjust_dynamic_symbol): Delete "dynobj" var. Use - htab->root.dynobj instead. - (sh_elf_check_relocs): Likewise. - (sh_elf_finish_dynamic_sections): Likewise. - - * section.c (bfd_make_section): Return NULL for existing section. - -2003-07-04 Alan Modra - - * elf32-ppc.c (ppc_elf_create_dynamic_sections): Don't call - ppc_elf_create_got if we've already done so. - - * elf-bfd.h (_bfd_elf_create_linker_section) Don't declare. - (_bfd_elf_find_pointer_linker_section): Likewise. - (bfd_elf32_create_pointer_linker_section): Likewise. - (bfd_elf32_finish_pointer_linker_section): Likewise. - (bfd_elf64_create_pointer_linker_section): Likewise. - (bfd_elf64_finish_pointer_linker_section): Likewise. - (_bfd_elf_make_linker_section_rela): Likewise. - * elfcode.h (elf_create_pointer_linker_section): Don't define. - (elf_finish_pointer_linker_section): Likewise. - * elflink.c (_bfd_elf_make_linker_section_rela): Delete. - (_bfd_elf_create_linker_section): Move this function.. - (_bfd_elf_find_pointer_linker_section): ..and this.. - * elflink.h (elf_create_pointer_linker_section): ..and this.. - (elf_finish_pointer_linker_section): ..and this.. - * elf32-ppc.c: ..to here, renaming to the following, and adjusting - calls. - (elf_create_linker_section): Convert to C90, tidy. - (elf_find_pointer_linker_section): Likewise. - (elf_create_pointer_linker_section): Likewise. - (elf_finish_pointer_linker_section): Likewise. - * elf32-i370.c: Delete #if 0 code. - -2003-07-02 Alan Modra - - * elf64-ppc.c (ppc64_elf_func_desc_adjust): Don't allow _savef* and - _restf* to be satisfied by shared libs, and always force them local. - (toc_adjusting_stub_needed): Avoid scanning linker created sections. - Correct test for "bl". - (ppc64_elf_relocate_section ): Correct test for - primary opcode 31. - -2003-07-01 Martin Schwidefsky - - * elf32-s390.c (s390_elf_ldisp_reloc): New prototype. - (s390_tls_reloc): New function. - (elf_howto_table): Add long displacement relocations R_390_20, - R_390_GOT20, R_390_GOTPLT20 and R_390_TLS_GOTIE20. - (elf_s390_reloc_type_lookup): Likewise. - (elf_s390_check_relocs): Likewise. - (elf_s390_gc_sweep_hook): Likewise. - (elf_s390_relocate_section): Likewise. - * elf64-s390.c: Same changes as for elf32-s390.c. - * reloc.c: Add long displacement relocations BFD_RELOC_390_20, - BFD_RELOC_390_GOT20, BFD_RELOC_390_GOTPLT20 and - BFD_RELOC_390_TLS_GOTIE20. - * bfd-in2.h: Regenerate. - * libbfd.h: Likewise. - -2003-06-30 Alan Modra - - * cpu-ia64-opc.c (ext_imms_scaled): Don't sign extend using shifts. - (ins_imms, ins_immsm1u4): Likewise. Warning fix. - -2003-06-29 Alan Modra - - * archive.c: Convert to C90, remove unnecessary prototypes and casts. - Replace PTR with void *. Formatting. - * archive64.c: Likewise. - * archures.c: Likewise. - * bfd-in.h: Likewise. - * bfd.c: Likewise. - * bfdio.c: Likewise. - * bfdwin.c: Likewise. - * cache.c: Likewise. - * corefile.c: Likewise. - * format.c: Likewise. - * init.c: Likewise. - * libbfd-in.h: Likewise. - * libbfd.c: Likewise. - * linker.c: Likewise. - * opncls.c: Likewise. - * reloc.c: Likewise. - * section.c: Likewise. - * simple.c: Likewise. - * syms.c: Likewise. - * targets.c: Likewise. - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - - * ecoff.c (bfd_debug_section): Add missing kept_section initialization. - * libbfd-in.h (_bfd_sh_align_load_span): Don't declare if defined. - * libbfd.c (COERCE32, EIGHT_GAZILLION): Simplify. - (bfd_getb64): Rewrite without parens. - (bfd_getl64, bfd_getb_signed_64, bfd_getl_signed_64): Likewise. - * cache.c (insert, snip): Remove INLINE. - * linker.c (bfd_link_add_undef): Likewise. - -2003-06-29 Andreas Jaeger - - * elf64-x86-64.c: Convert to ISO C90 prototypes, remove - unnecessary prototypes. Replace PTR with void *. - (elf64_x86_64_adjust_dynamic_symbol): Use SYMBOL_CALLS_LOCAL to - trim plt entries. Move undefweak non-default visibility test ... - (allocate_dynrelocs): ... from here. - (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead of INFO. - Change all callers. - (allocate_dynrelocs): Use SYMBOL_CALLS_LOCAL. Use - SYMBOL_REFERENCES_LOCAL for dynreloc check. - (elf64_x86_64_relocate_section): Use SYMBOL_CALLS_LOCAL for - dynreloc and .got relocs. - (elf64_x86_64_finish_dynamic_symbol): Use SYMBOL_REFERENCES_LOCAL - for .got relocs. - -2003-06-29 Thiemo Seufer - - * elfxx-mips.c: Allow lazy binding for R_MIPS_JALR. - -2003-06-27 Nick Clifton - - * opncls.c (bfd_add_gnu_debuglink_section): Rename to - bfd_add_gnu_debuglink_section and only create the section, do not - fill in its contents. - (bfd_fill_in_gnu_debuglink_section): New function. Fill in the - contents of a .gnu-debuglink section. - * bfd-in2.h: Regenerate. - -2003-06-27 Thiemo Seufer - - * elfxx-mips.c: Revert .got alignment to 2**4. - -2003-06-27 Thiemo Seufer - - * elf32-mips.c: Fix addend for _gp_disp special symbol. - -2003-06-27 Thiemo Seufer - - * elfxx-mips.c (_bfd_mips_elf_fake_sections): Remove non-default - relocation header setup. - -2003-06-25 Alan Modra - - * elf32-ppc.c (ppc_elf_howto_table): Remove unnecessary cast. - (ppc_elf_reloc_type_lookup): Modify comment. - (ppc_elf_info_to_howto): Ditto. - (ppc_elf_relocate_section): Ditto. - (ppc_elf_check_relocs): Call ppc_elf_howto_init. - -2003-06-25 Alan Modra - - * aout-ns32k.c: Correct spelling of "relocatable". - * aoutx.h: Likewise. - * bfd-in.h: Likewise. - * bfd.c: Likewise. - * bout.c: Likewise. - * coff-a29k.c: Likewise. - * coff-alpha.c: Likewise. - * coff-arm.c: Likewise. - * coff-i386.c: Likewise. - * coff-i860.c: Likewise. - * coff-i960.c: Likewise. - * coff-m68k.c: Likewise. - * coff-m88k.c: Likewise. - * coff-mcore.c: Likewise. - * coff-mips.c: Likewise. - * coff-or32.c: Likewise. - * coff-ppc.c: Likewise. - * coff-rs6000.c: Likewise. - * coff-sh.c: Likewise. - * coff-tic80.c: Likewise. - * coff64-rs6000.c: Likewise. - * cofflink.c: Likewise. - * cpu-ns32k.c: Likewise. - * ecoff.c: Likewise. - * ecofflink.c: Likewise. - * elf-bfd.h: Likewise. - * elf-eh-frame.c: Likewise. - * elf-hppa.h: Likewise. - * elf-m10200.c: Likewise. - * elf-m10300.c: Likewise. - * elf.c: Likewise. - * elf32-arm.h: Likewise. - * elf32-avr.c: Likewise. - * elf32-cris.c: Likewise. - * elf32-d10v.c: Likewise. - * elf32-dlx.c: Likewise. - * elf32-fr30.c: Likewise. - * elf32-frv.c: Likewise. - * elf32-h8300.c: Likewise. - * elf32-hppa.c: Likewise. - * elf32-i370.c: Likewise. - * elf32-i386.c: Likewise. - * elf32-i860.c: Likewise. - * elf32-i960.c: Likewise. - * elf32-ip2k.c: Likewise. - * elf32-iq2000.c: Likewise. - * elf32-m32r.c: Likewise. - * elf32-m68hc11.c: Likewise. - * elf32-m68hc1x.c: Likewise. - * elf32-m68k.c: Likewise. - * elf32-mcore.c: Likewise. - * elf32-mips.c: Likewise. - * elf32-msp430.c: Likewise. - * elf32-openrisc.c: Likewise. - * elf32-ppc.c: Likewise. - * elf32-s390.c: Likewise. - * elf32-sh.c: Likewise. - * elf32-sh64.c: Likewise. - * elf32-sparc.c: Likewise. - * elf32-v850.c: Likewise. - * elf32-vax.c: Likewise. - * elf32-xstormy16.c: Likewise. - * elf32-xtensa.c: Likewise. - * elf64-alpha.c: Likewise. - * elf64-hppa.c: Likewise. - * elf64-mips.c: Likewise. - * elf64-mmix.c: Likewise. - * elf64-ppc.c: Likewise. - * elf64-s390.c: Likewise. - * elf64-sh64.c: Likewise. - * elf64-sparc.c: Likewise. - * elf64-x86-64.c: Likewise. - * elfcode.h: Likewise. - * elflink.h: Likewise. - * elfn32-mips.c: Likewise. - * elfxx-ia64.c: Likewise. - * elfxx-mips.c: Likewise. - * i386linux.c: Likewise. - * ieee.c: Likewise. - * libcoff-in.h: Likewise. - * linker.c: Likewise. - * m68klinux.c: Likewise. - * pdp11.c: Likewise. - * pe-mips.c: Likewise. - * peXXigen.c: Likewise. - * reloc.c: Likewise. - * reloc16.c: Likewise. - * sparclinux.c: Likewise. - * sunos.c: Likewise. - * syms.c: Likewise. - * versados.c: Likewise. - * vms.c: Likewise. - * xcofflink.c: Likewise. - * bfd-in2.h: Regenerate. - * libcoff.h: Regenerate. - * libbfd.h: Regenerate. - -2003-06-24 Alan Modra - - * elf32-ppc.c (ppc_elf_check_relocs): Report plt reloc against - local sym errors. - - * elf32-i386.c: Convert to C90 function definitions, remove unnecessary - prototypes and casts. Replace PTR with void *. Formatting. - * elf32-ppc.c: Likewise. Break long strings too. - (ppc_elf_relax_section): Use enum elf_ppc_reloc_type for r_type. - (ppc_elf_unhandled_reloc): Internationalize error message. - * elf32-ppc.h: Remove PARAMS. - -2003-06-23 Mark Mitchell - - * elf32-ppc.c (ppc_elf_begin_write_processing): Use bytes to count - APUinfo slots. - (ppc_elf_final_write_processing): Likewise. - -2003-06-23 H.J. Lu - - * elflink.h (elf_link_input_bfd): Check raw size when using - kept_section to preserve debug information discarded by - linkonce. - -2003-06-20 Alan Modra - - * elf64-ppc.c (struct ppc_link_hash_table): Add top_id. - (ppc64_elf_setup_section_lists): Set it. - (ppc64_elf_relocate_section): Check sym section id against top_id. - (ppc_build_one_stub): Comment on top_id. - -2003-06-20 Ralf Corsepius - - * config.bfd: Add tic4x-*-rtems*. - -2003-06-20 Alan Modra - - * elf64-ppc.c: Convert to C90 function definitions, remove unnecessary - prototypes and casts. Replace PTR with void *. Format copyright. - Mention ABI links. - (struct ppc_link_hash_table): Rename sgot, srelgot, splt, srelplt, - sdynbss, srelbss, sglink, sbrlt and srelbrlt to got, relgot .. relbrlt. - (ppc_type_of_stub): Make r_type an enum. - (ppc64_elf_size_stubs): Likewise. - * elf64-ppc.h: Remove PARAMS macro. - -2003-06-19 Alan Modra - - * elf64-ppc.c (ppc64_elf_link_hash_table_create): Reinstate init of - elf hash tab fields. - - * elf64-ppc.c (ppc64_elf_reloc_type_lookup): Tidy prototype. - (ppc64_elf_info_to_howto): Likewise. - (ppc64_elf_build_stubs): Add "stats" param, and print statistics. - * elf64-ppc.h (ppc64_elf_build_stubs): Adjust prototype. - -2003-06-19 Alan Modra - - * elf64-sparc.c (sparc64_elf_relocate_section): Ignore R_SPARC_DISP32 - reloc overflow on discarded eh_frame entries. - -2003-06-19 Alan Modra - - * elf64-ppc.c (toc_adjusting_stub_needed): New function. - (ppc64_elf_next_input_section): Use it here to set has_gp_reloc. - Return error condition. - (ppc64_elf_size_stubs): Restrict toc adjusting stubs to sections - that have has_gp_reloc set. - (struct ppc_link_hash_table): Add stub_count. - (ppc_build_one_stub): Increment it. - (ppc64_elf_link_hash_table_create): zmalloc rather than clearing - individual fields. - * elf64-ppc.h (ppc64_elf_next_input_section): Update prototype. - -2003-06-18 Alan Modra - - * elflink.h (elf_gc_record_vtentry): Revert last change. Correct - size calculation from addend. Round size up. - -2003-06-18 Hans-Peter Nilsson - - * elf32-cris.c (cris_elf_relocate_section) : When linking a program, don't complain about a - symbol from a normal object or an undefined weak symbol. - -2003-06-18 Alan Modra - - * elf64-ppc.c (ppc64_elf_relocate_section): Accept a symbol on - R_PPC64_TOC relocs. - -2003-06-17 H.J. Lu - - * section.c (struct sec): Put back kept_section. - (STD_SECTION): Put back kept_section initialization. - * bfd-in2.h: Regenerate. - - * elflink.h (elf_link_input_bfd): Also check discarded linkonce - sections for relocateable output. Use kept_section to preserve - debug information discarded by linkonce. - -2003-06-17 Roland McGrath - - * elfxx-ia64.c (elfNN_ia64_relocate_section): Support - segment-relative relocation between different segments. - -2003-06-17 Alan Modra - - * elf64-ppc.c (ppc64_elf_relocate_section): Do unaligned reloc - optimizations earlier. - - * elf64-ppc.c (struct ppc_link_hash_table): Reinstate top_index. - Restore previous input_list type. - (ppc64_elf_link_hash_table_create): Undo last change. - (ppc64_elf_setup_section_lists): Reinstate code setting up input lists - per output section, but don't bother with bfd_abs_section marker. - (ppc64_elf_next_input_section): Adjust for multiple input section - lists. - (group_sections): Likewise. - -2003-06-17 Jakub Jelinek - - * elf64-ppc.c (ppc64_elf_relocation_section): Ensure - *r_offset == r_addend for RELATIVE relocs against .got. - -2003-06-17 Alan Modra - - * elf64-ppc.c (ppc64_elf_relocate_section): Optimize unaligned relocs. - -2003-06-17 Nick Clifton - - * elflink.h (elf_gc_record_vtentry): Allocate an extra element - in the vtable_entries_used array to allow for the accessing - the largest element. - -2003-06-17 Alan Modra - - * elf64-ppc.c (struct ppc_link_hash_table): Remove top_index. Modify - input_list. - (ppc64_elf_link_hash_table_create): Init input_list here. - (ppc64_elf_setup_section_lists): Remove code setting up input lists - per output section. Set toc_off for abs and other standard sections. - (ppc64_elf_reinit_toc): Don't set elf_gp on input bfds lacking a toc. - (ppc64_elf_next_input_section): Adjust for single input section list. - Don't set toc_curr from input bfds that haven't set elf_gp. - (group_sections): Adjust for single input section list. - - * elf64-ppc.c (ppc64_elf_relocate_section): Correct pcrel section zero. - -2003-06-16 Alan Modra - - * elf64-ppc.c (ppc64_elf_relocate_section): When optimizing toctprel - tls, check that a TOC16_DS or TOC16_LO_DS reloc isn't pointing to a - dtprel entry. Ensure TLS_LD DTPMOD reloc has a zero addend. Write - got section for RELATIVE relocs. Fix wrong comment. Change condition - under which dynamic relocs update the section contents. - -2003-06-13 Robert Millan - - * config.bfd: Add i386-netbsd-gnu target. - -2003-06-12 Nick Clifton - - * opncls.c (calc_crc32): Rename to - bfd_calc_gnu_debuglink_crc32 and export. - (GNU_DEBUGLINK): Define and use to replace occurrences of - hard-coded ".gnu_debuglink" in the code. - (get_debug_link_info): Prevent aborts by replacing call to - xmalloc with a call to malloc. - (find_separate_debug_file): Prevent aborts by replacing calls - to xmalloc and xstrdup with calls to malloc and strdup. - (bfd_add_gnu_debuglink): New function. Add a .gnu_debuglink - section to a bfd. - * bfd-in2.h: Regenerate. - -2003-06-12 Federico G. Schwindt - - * config.bfd (i[3-7]86-*-openbsd[0-2].* | i[3-7]86-*-openbsd3.[0-3]): - New target (was i[3-7]86-*-openbsd* before). - (i[3-7]86-*-openbsd*): Change to use bfd_elf32_i386_vec. - (vax-*-openbsd*): New target. - -2003-06-11 Thiemo Seufer - - * elfxx-mips.c (MIPS_ELF_OPTIONS_SECTION_NAME): Use .MIPS.options - for n32, too. - (MIPS_ELF_STUB_SECTION_NAME): Use .MIPS.stubs for n32, too. - (mips_elf_rel_dyn_section): Use appropriate section alignment. - (mips_elf_create_got_section): Likewise. - (_bfd_mips_elf_create_dynamic_sections): Likewise. - -2003-06-11 Thiemo Seufer - - * elf32-mips.c (mips_elf_generic_reloc): New Function. - (elf_mips_howto_table_rel): Use it. - (gprel32_with_gp): Move prototype. - (mips_elf_hi16_reloc): Check for ! BSF_LOCAL instead of zero addend. - Use mips_elf_generic_reloc. - (mips_elf_got16_reloc): Check for ! BSF_LOCAL instead of zero addend. - Code cleanup. - (_bfd_mips_elf32_gprel16_reloc): Check for ! BSF_LOCAL instead of - zero addend. - (mips_elf_gprel32_reloc): Likewise. Use the same GP assignment logic - as in the other *_gprel*_reloc functions. - (gprel32_with_gp): Handle partial_inplace properly. - (mips32_64bit_reloc): Use mips_elf_generic_reloc. - (mips16_gprel_reloc): Check for ! BSF_LOCAL instead of zero addend. - Do addend handling directly instead of calling - _bfd_mips_elf_gprel16_with_gp. Handle partial_inplace properly. - * elf64-mips.c (mips_elf64_hi16_reloc): Check for ! BSF_LOCAL instead - of zero addend. Handle partial_inplace properly. - (mips_elf64_got16_reloc): Check for ! BSF_LOCAL instead of zero - addend. - (mips_elf64_gprel16_reloc): Likewise. - (mips_elf64_literal_reloc): Likewise. - (mips_elf64_gprel32_reloc): Likewise. Use the same GP assignment - logic as in the other *_gprel*_reloc functions. Handle - partial_inplace properly. - (mips_elf64_shift6_reloc): Check for ! BSF_LOCAL instead of zero - addend. Handle partial_inplace properly. - (mips16_gprel_reloc): Likewise. Do addend handling directly instead - of calling _bfd_mips_elf_gprel16_with_gp. - * elfn32-mips.c (mips_elf_got16_reloc): Check for BSF_LOCAL. - (mips_elf_gprel32_reloc): Check for ! BSF_LOCAL instead - of zero addend. - (mips_elf_shift6_reloc): Handle partial_inplace properly. - (mips16_gprel_reloc): Likewise. Do addend handling directly instead - of calling _bfd_mips_elf_gprel16_with_gp. - * elfxx-mips.c (_bfd_mips_elf_gprel16_with_gp): Handle - partial_inplace properly. Fix wrong addend handling. Fix overflow - check. - (_bfd_mips_elf_sign_extend): Renamed from mips_elf_sign_extend and - exported. - (mips_elf_calculate_relocation): Use _bfd_mips_elf_sign_extend. - (_bfd_mips_elf_relocate_section): Likewise. - (mips_elf_create_dynamic_relocation): Update sec_info_type access. - * elfxx-mips.h (_bfd_mips_relax_section): Fix prototype declaration. - (_bfd_mips_elf_sign_extend): New prototype. - -2003-06-11 Federico G. Schwindt - - * config.bfd (sparc-*-openbsd[0-2].* | sparc-*-openbsd3.[0-1]): - New target (was sparc-*-openbsd* before). - (sparc-*-openbsd*): Change to use bfd_elf32_sparc_vec. - - * configure.in (vax-*-openbsd*): Set COREFILE to netbsd-core.lo. - * configure: Regenerate. - -2003-06-11 H.J. Lu - - * po/Make-in (DESTDIR): New. - (install-data-yes): Support $(DESTDIR). - (uninstall): Likewise. - -2003-06-11 Alan Modra - - * Makefile.am (config.status): Depend on version.h. - Run "make dep-am". - * Makefile.in: Regenerate. - * po/SRC-POTFILES.in: Regenerate. - -2003-06-10 Alan Modra - Gary Hade - - * elf64-ppc.c (ppc64_elf_relocate_section <*_DS>): Special case lq. - -2003-06-10 Richard Sandiford - - * archures.c (bfd_mach_h8300sxn): New architecture. - * bfd-in2.h: Regenerate. - * cpu-h8300.c (h8300_scan): Check for 'sxn'. - (h8300sxn_info_struct): New. - (h8300sx_info_struct): Link to it. - * elf32-h8300.c (elf32_h8_mach): Add h8300sxn case. - (elf32_h8_final_write_processing): Likewise. - -2003-06-08 Alan Modra - - * elf64-ppc.c: Move TARGET_LITTLE_SYM and other macros used by - elfxx-target.h so that we can use elf_backend_got_header_size. - (ELF_MACHINE_ALT1, ELF_MACHINE_ALT2): Delete. - (GLINK_CALL_STUB_SIZE): Modify. Define new glink call stub and - associated macros. - (ppc64_elf_howto_raw ): Correct - dst_mask. - (enum ppc_stub_type): Add ppc_stub_long_branch_r2off and - ppc_stub_plt_branch_r2off. - (struct ppc_stub_hash_entry): Reorganize. - (struct ppc_link_hash_table): Add no_multi_toc, multi_toc_needed, - toc_curr, toc_off and emit_stub_syms. - (ppc64_elf_link_hash_table_create): Init them. - (ppc_stub_name): Correct string size. - (ppc64_elf_check_relocs): Set has_gp_reloc on GOT and TOC relocs. - (ppc64_elf_size_dynamic_sections): Set no_multi_toc if GOT entries - used. - (ppc_type_of_stub): Tweak root.type test. - (build_plt_stub): Remove glink code. Adjust for insn macro changes. - (ppc_size_one_stub): Handle ppc_stub_long_branch_r2off and - ppc_stub_plt_branch_r2off. - (ppc_build_one_stub): Likewise. Fix var shadowing. Correct addis,addi - range test. Use toc_off to calculte r2 values. Handle emit_stub_syms. - (ppc64_elf_setup_section_lists): Remove htab creator flavour test. - Initialize elf_gp and toc_curr. - (ppc64_elf_next_toc_section, ppc64_elf_reinit_toc): New functions. - (ppc64_elf_next_input_section): Set toc_off. - (group_sections): Ensure groups have the same TOC. - (ppc64_elf_size_stubs): Check whether we need a TOC adjusting stub. - (ppc64_elf_build_stubs): Add emit_stub_syms param, and stash in htab. - Build new glink stub. - (ppc64_elf_relocate_section): Handle multiple TOCs. Fix comments. - (ppc64_elf_finish_dynamic_sections): Adjust DT_PPC64_GLINK. - * elf64-ppc.h (ppc64_elf_build_stubs): Update prototype. - (ppc64_elf_next_toc_section, ppc64_elf_reinit_toc): Declare. - * section.c (struct sec): Rename flag12 to has_gp_reloc. - (STD_SECTION): Update. - * ecoff.c (bfd_debug_section): Update comment. - * bfd-in2.h: Regenerate. - -2003-06-05 Daniel Jacobowitz - - * elfcode.h (elf_slurp_reloc_table_from_section): Don't dereference - NULL function pointers. - -2003-06-05 Daniel Jacobowitz - - * simple.c (bfd_simple_get_relocated_section_contents): Call - _bfd_generic_link_add_symbols instead of bfd_link_add_symbols. - -2003-06-04 Svein E. Seldal - - * coff-tic54x.c: Removed the ticoff0_bad_format_hook() and - ticoff1_bad_format_hook() functions. Removed the coff0 and coff1 - swaptables. - * coff-tic4x.c: Ditto - * coffcode.h: Added extra arguments to CREATE_BIG_COFF_TARGET_VEC - and CREATE_LITTLE_COFF_TARGET_VEC. Created the macro - CREATE_BIGHDR_COFF_TARGET_VEC. Created the ticoff0_bad_format_hook(), - ticoff1_bad_format_hook() functions. Created the coff0 and coff1 - swap tables. - * coff-tic4x.c: Adopted new CREATE_xxx_COFF_TARGET_VEC macros. - * coff-a29k.c: Append COFF_SWAP_TABLE argument - * coff-apollo.c: Ditto - * coff-arm.c: Ditto - * coff-h8300.c: Ditto - * coff-h8500.c: Ditto - * coff-i960.c: Ditto - * coff-m68k.c: Ditto - * coff-m88k.c: Ditto - * coff-mcore.c: Ditto - * coff-sh.c: Ditto - * coff-sparc.c: Ditto - * coff-tic80.c: Ditto - * coff-we32k.c: Ditto - * coff-z8k.c: Ditto - * coff-w65.c: Ditto - -2003-06-04 Svein E. Seldal - - * coff-tic4x.c (ticoff0_swap_table, ticoff1_swap_table): Fixed - initialization bug - -2003-06-03 Jakub Jelinek - - * elf.c (_bfd_elf_print_private_bfd_data): Handle PT_GNU_STACK. - (bfd_section_from_phdr): Likewise. - (map_sections_to_segments): Create PT_GNU_STACK segment header. - (get_program_header_size): Count with PT_GNU_STACK. - * elf-bfd.h (struct elf_obj_tdata): Add stack_flags. - * elflink.h (bfd_elfNN_size_dynamic_sections): Set stack_flags. - -2003-06-03 H.J. Lu - - * elflink.h (elf_link_input_bfd): Call linker error_handler - for discarded definitions. - -2003-06-03 Elias Athanasopoulos - - * syms.c (decode_section_type): Return 'n' if section flags are - SEC_HAS_CONTENTS && SEC_READONLY. - -2003-06-03 Nick Clifton - - * elf32-v850.c (v850_elf_howto_t): Rename R_V850_32to - R_V850_ABS32. Add entry for R_V850_REL32. - (v850_elf_reloc_map): Likewise. - (v850_elf_check_relocs): Likewise. - (v850_elf_perform_relocation): Likewise. - (v850_elf_final_link_relocate): Likewise. Include computation - to make R_V850_REl32 pc-relative. - -2003-06-03 Kaz Kojima - - * elf32-sh.c (sh_elf_size_dynamic_sections): Create .interp section - and DT_DEBUG dynamic tag even for position independent executables. - * elf64-sh64.c (sh64_elf64_size_dynamic_sections): Likewize. - -2003-06-02 Daniel Jacobowitz - - * config.bfd: Move obsolete entries out of the range of the - targmatch sed script. - -2003-06-02 Daniel Jacobowitz - - * config.bfd (mips*-dec-bsd*, mips*-*-pe*): Mark as obsolete. - -2003-05-31 Jakub Jelinek - - * elf32-ppc.c (allocate_dynrelocs): Use single slot for first 8192 - plt entries, not just 8191. - -2003-05-30 Daniel Jacobowitz - - * elfxx-mips.c (_bfd_mips_elf_discard_info): Correct loop index. - Reported by Ken Faiczak . - -2003-05-30 Ulrich Drepper - Jakub Jelinek - - * elflink.h (elf_link_add_object_symbols): Use !info->executable - instead of info->shared where appropriate. - (bfd_elfNN_size_dynamic_sections, elf_link_output_extsym): Likewise. - * elflink.c (_bfd_elf_create_got_section): Likewise. - (_bfd_elf_link_create_dynamic_sections): Likewise. - (_bfd_elf_link_assign_sym_version): Likewise. - * elf32-i386.c (elf_i386_size_dynamic_sections): Create .interp section - and DT_DEBUG dynamic tag even for position independent executables. - * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise. - * elf32-s390.c (elf_s390_size_dynamic_sections: Likewise. - * elf64-ppc.c (ppc64_elf_size_dynamic_sections: Likewise. - * elf64-s390.c (elf_s390_size_dynamic_sections: Likewise. - * elf64-x86-64.c (elf64_x86_64_size_dynamic_sections: Likewise. - * elfxx-ia64.c (elfNN_ia64_size_dynamic_sections: Likewise. - * elf32-sparc.c (elf32_sparc_size_dynamic_sections: Likewise. - * elf64-alpha.c (elf64_alpha_size_dynamic_sections: Likewise. - * elf64-sparc.c (sparc64_elf_size_dynamic_sections: Likewise. - -2003-05-30 Kris Warkentin - - * elf.c (elfcore_grok_nto_status): Only set lwpid for the active or - signalled thread. - (elfcore_grok_nto_gregs): Only make .reg section for the active thread. - -2003-05-29 Nick Clifton - - * pef.c: Include "safe-ctype.h" instead of . - Tidy up formatting. - * Makefile.am: Add dependency on safe-ctype.h. - * Makefile.in: Regenerate. - -2003-05-29 Thiemo Seufer - - * elfxx-mips.c: Don't force symbols local unconditionally. - -2003-05-28 Alan Modra - - * elf32-hppa.c (elf32_hppa_relocate_section): Delete bogus - undefined_symbol call. - -2003-05-27 Richard Sandiford - - * elfxx-mips.c (mips_elf_hash_sort_data): Fix formattting. - (mips_elf_link_hash_table): Likewise. - -2003-05-22 Thiemo Seufer - - * elf64-mips.c (elf_mips_gnu_rel16_s2): Add internally used - R_MIPS_GNU_REL16_S2 support. - (bfd_elf64_bfd_reloc_type_lookup): Use it. - (mips_elf64_rtype_to_howto): Use it. - * elfn32-mips.c (elf_mips_gnu_rel16_s2): Add internally used - R_MIPS_GNU_REL16_S2 support. - (bfd_elf32_bfd_reloc_type_lookup): Use it. - (mips_elf_n32_rtype_to_howto): Use it. - -2003-05-21 Stuart F. Downing - - * som.h: Define PA_2_0 before including a.out.h - -2003-05-07 Eric Christopher - Alexandre Oliva - - * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Adjust - pic tests, change to warning. - (_bfd_mips_elf_final_link): Remove EF_MIPS_CPIC flag setting. - -2003-05-21 Marcus Comstedt - - * config.bfd: Check for a target triplet of shl-...-netbsdelf as - well as shle-...-netbsdelf. Remove duplicate entry. - -2003-05-21 Nick Clifton - - * elf32-xstormy16.c (xstormy16_elf_howto_table): Fix dst_mask - for X_STORMY16_REL_12 reloc. - - * elf.c (bfd_elf_get_needed_list): Use is_elf_hash_table to check - the type of the hash table in the bfd_link_info structure. - (bfd_elf_get_runpath_list): Likewise. - -2003-05-19 Roland McGrath - - * elf.c (bfd_elf_bfd_from_remote_memory): New function. - * bfd-in.h: Declare it. - * bfd-in2.h: Regenerated. - * elfcode.h (NAME(_bfd_elf,bfd_from_remote_memory)): New function. - * elf-bfd.h (struct elf_backend_data): New function pointer member - elf_backend_bfd_from_remote_memory. - (_bfd_elf32_bfd_from_remote_memory, _bfd_elf64_bfd_from_remote_memory): - Declare them. - * elfxx-target.h (elf_backend_bfd_from_remote_memory): New macro. - (elfNN_bed): Add that to the initializer. - -2003-05-15 Roland McGrath - - * elf.c (elfcore_grok_note): Grok NT_AUXV note, make ".auxv" section. - -2003-05-20 Jakub Jelinek - - * elflink.h (elf_link_output_extsym): Only issue error about != - STV_DEFAULT symbols if they are bfd_link_hash_undefined. - -2003-05-20 H.J. Lu - - * elflink.c (_bfd_elf_merge_symbol): Check ELF_LINK_DYNAMIC_DEF - when removing the old definition for symbols with non-default - visibility. - -2003-05-18 Jason Eckhardt - - * elf32-i860.c (elf32_i860_relocate_highadj): Simplify calculation. - -2003-05-17 Andreas Schwab - - * elf32-m68k.c (elf_m68k_check_relocs): Cache reloc section in - elf_section_data during processing of pc-relative and absolute - relocations. - (elf_m68k_relocate_section): Use the cached reloc section instead - of computing it again. Fix handling of visibility. Don't modify - addend when copying over a relocation into the output. - -2003-05-17 Alan Modra - - * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Use SYMBOL_CALLS_LOCAL - to trim plt entries. Move undefweak non-default visibility test.. - (allocate_dynrelocs): ..from here. - * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Don't test - dynamic_sections_created here. Update comment. Move undefweak - non-default visibility test.. - (allocate_dynrelocs): ..from here. Fix comment. - * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Use SYMBOL_CALLS_LOCAL - to trim plt entries. Move undefweak non-default visibility test.. - (allocate_dynrelocs): ..from here. Fix comment. - * elflink.h (elf_link_output_extsym): Compare ELF_ST_VISIBILITY with - STV_DEFAULT rather than comparing with zero. - * elflink.c (_bfd_elf_merge_symbol): Likewise. - (_bfd_elf_fix_symbol_flags): Likewise. Format comment. - -2003-05-17 Thiemo Seufer - - * bfd.c (_bfd_get_gp_value): Prevent illegal access for abfd null - pointers. - (_bfd_set_gp_value): Likewise. - -2003-05-16 Michael Snyder - From Bernd Schmidt - * archures.c (bfd_mach_h8300sx): New. - * bfd-in2.h: Regenerate. - * cpu-h8300.c (h8300_scan)): Add support for h8300sx. - (h8300sx_info_struct): New. - (h8300s_info_struct): Link to it. - * elf32-h8300.c (elf32_h8_mach): Add support for h8300sx. - (elf32_h8_final_write_processing): Likewise. - (elf32_h8_relax_section): Likewise. - -2003-05-16 Kelley Cook - - * config.bfd: Accept i[3-7]86 variants. - * configure.host: Likewise. - * configure.in: Likewise. - * configure: Regenerate. - -2003-05-15 H.J. Lu - - * elflink.c (_bfd_elf_fix_symbol_flags): Also hide protected - symbol. - -2003-05-15 H.J. Lu - - * elflink.h (elf_link_check_versioned_symbol): Also allow - the base version. - -2003-05-15 Alan Modra - H.J. Lu - - * elf32-i386.c (allocate_dynrelocs): Use SYMBOL_CALLS_LOCAL. - (elf_i386_relocate_section): Likewise. - * elf32-ppc.c (allocate_dynrelocs): Likewise. - (ppc_elf_relocate_section): Likewise. - * elf64-ppc.c (allocate_dynrelocs): Likewise. - (ppc64_elf_relocate_section): Likewise. - -2003-05-15 Thiemo Seufer - - * elf32-mips.c (gprel32_with_gp): Remove useless N64 ABI case. - -2003-05-13 Stephane Carrez - - * elf32-m68hc1x.c (_bfd_m68hc11_elf_merge_private_bfd_data): Check for - processor capability, allow merge of HC12 and HCS12 in some cases. - (m68hc11_elf_hash_table_create): Use bfd_malloc instead of bfd_zalloc. - * cpu-m68hc12.c (bfd_m68hc12s_arch): New struct. - (bfd_m68hc12_arch): Link it. - (scan_mach): New function. - -2003-05-13 Andrew Haley - - * elf.c (bfd_elf_hash): Mask lower 32 bits of hash. - -2003-05-13 Alan Modra - H.J. Lu - - * elf-bfd.h (SYMBOL_REFERENCES_LOCAL, SYMBOL_CALLS_LOCAL): Move from - elf32-ppc.c. Add ELF_LINK_FORCED_LOCAL check. - * elf32-ppc.c: (SYMBOL_REFERENCES_LOCAL, SYMBOL_CALLS_LOCAL): Delete. - (allocate_dynrelocs): Use SYMBOL_REFERENCES_LOCAL for dynreloc check. - (ppc_elf_relocate_section): Likewise. - * elf64-ppc.c (allocate_dynrelocs): Likewise. - (ppc64_elf_relocate_section): Likewise. Use for .got relocs too. - (ppc64_elf_adjust_dynamic_symbol): Don't assume symbols with .plt - relocs need no other types. - * elf32-i386.c (allocate_dynrelocs): Use SYMBOL_REFERENCES_LOCAL for - dynreloc check. - (elf_i386_relocate_section): Likewise. Use for .got relocs too. - (elf_i386_finish_dynamic_symbol): Use SYMBOL_REFERENCES_LOCAL for - .got relocs. - -2003-05-13 Kaz Kojima - - * elf32-sh.c (sh_elf_adjust_dynamic_symbol): For weak symbols, - copy ELF_LINK_NON_GOT_REF from weakdef. - (allocate_dynrelocs): For undef weak syms with non-default - visibility, a) don't allocate plt entries, b) don't allocate - .got relocs, c) discard dyn rel space - (sh_elf_relocate_section): d) don't generate .got relocs, e) - don't generate dynamic relocs. - (sh_elf_copy_indirect_symbol): Don't copy ELF_LINK_NON_GOT_REF - for weakdefs when symbol already adjusted. - -2003-05-12 Nick Clifton - - * elf32-xstormy16.c (xstormy16_elf_howto_table): use 'bitfield' - overflow detection for R_XSTORMY16_16 reloc. - -2003-05-12 Paul Clarke - - * elf32-h8300.c: Fix typo in name of R_H8_DIR8 reloc. - -2003-05-11 Jason Eckhardt - - * elf32-i860.c (elf32_i860_relocate_highadj): Properly - adjust upper bits. - (elf32_i860_relocate_splitn): Obtain upper 5 bits from the - proper place. - (elf32_i860_relocate_pc16): Obtain upper 5 bits from the - proper place. - -2003-05-11 Andreas Schwab - - * elf32-m68k.c (elf_m68k_relocate_section): Replace ugly - complicated tests for unresolvable relocs with a simple direct - scheme using "unresolved_reloc" var. Report some detail on - bfd_reloc_outofrange and similar errors. - -2003-05-09 Martin Schwidefsky - - * elf32-s390.c (allocate_dynrelocs, elf_s390_relocate_section): - Fix WILL_CALL_FINISH_DYNAMIC_SYMBOL call. - (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead of INFO. - * elf64-s390.c: Likewise. - -2003-05-09 Martin Schwidefsky - - * elf32-s390.c (ELIMINATE_COPY_RELOCS): Define as one. - (elf_s390_adjust_dynamic_symbol): For weak symbols, copy - ELF_LINK_NON_GOT_REF from weakdef. - (elf_s390_copy_indirect_symbol): Test whether the weakdef sym has - already been adjusted before treating it specially. - * el64-s390.c: Likwise. - -2003-05-09 Martin Schwidefsky - - * elf32-s390.c (allocate_dynrelocs): For undef weak syms with - non-default visibility, a) don't make them dynamic, b) discard - space for dynamic relocs. - (elf_s390_relocate_section): Initialize the GOT entries and skip - R_390_{8,16,32}/R_390_PC{16,16DBL,32DBL,32} for weak undefined - symbols with non-default visibility. - * elf64-s390.c: Likewise. - -2003-05-09 Alan Modra - - * cpu-arm.c (arm_check_note): Warning fix. - * elf32-iq2000.c (iq2000_elf_check_relocs): Warning fixes. Arrange - to keep relocs if edited. - (iq2000_elf_print_private_bfd_data): Return TRUE. - * elfxx-ia64.c (elfNN_ia64_relax_section): Use ELFNN_R_SYM, not - ELF64_R_SYM. - (elfNN_ia64_relax_ldxmov): Warning fix. - * xtensa-isa.c (xtensa_add_isa): Warning fix. - * xtensa-modules.c (get_num_opcodes): Warning fix. - -2003-05-09 Andrey Petrov - - * elf.c (elf_fake_sections): Use correct cast for sh_name. - -2003-05-09 Alan Modra - - * elflink.c (_bfd_elf_link_create_dynamic_sections): Move from - elflink.h. Replace LOG_FILE_ALIGN with bed->s->log_file_align. - (_bfd_elf_create_dynamic_sections): Use bed->s->log_file_align. - (bfd_elf_record_link_assignment): Move from elflink.h. - (_bfd_elf_merge_symbol): Likewise. - (_bfd_elf_add_default_symbol): Likewise. - (_bfd_elf_export_symbol): Likewise. - (_bfd_elf_link_find_version_dependencies): Likewise. - (_bfd_elf_link_assign_sym_version): Likewise. - (_bfd_elf_link_read_relocs): Likewise. - (_bfd_elf_link_size_reloc_section): Likewise. - (_bfd_elf_fix_symbol_flags): Likewise. - (_bfd_elf_adjust_dynamic_symbol): Likewise. - (_bfd_elf_link_sec_merge_syms): Likewise. - (elf_link_read_relocs_from_section): Likewise. Use bed->s->sizeof_rel - and bed->s->sizeof_rela. - (_bfd_elf_link_output_relocs): Likewise. - * elf-bfd.h (struct elf_size_info): Rename file_align to - log_file_align. - (struct elf_info_failed): Move from elflink.h. - (struct elf_assign_sym_version_info): Likewise. - (struct elf_find_verdep_info): Likewise. - (_bfd_elf_create_dynamic_sections): Delete duplicate declaration. - (_bfd_elf_merge_symbol, _bfd_elf_add_default_symbol, - _bfd_elf_export_symbol, _bfd_elf_link_find_version_dependencies, - _bfd_elf_link_assign_sym_version, - _bfd_elf_link_create_dynamic_sections, _bfd_elf_link_read_relocs, - _bfd_elf_link_size_reloc_section, _bfd_elf_link_output_relocs, - _bfd_elf_fix_symbol_flags, _bfd_elf_adjust_dynamic_symbol, - _bfd_elf_link_sec_merge_syms): Declare. - (bfd_elf32_link_create_dynamic_sections): Don't declare. - (_bfd_elf32_link_read_relocs): Likewise. - (bfd_elf64_link_create_dynamic_sections): Likewise. - (_bfd_elf64_link_read_relocs): Likewise. - * elflink.h: Move lots o' stuff elsewhere. - * bfd-in.h (bfd_elf32_record_link_assignment): Don't declare. - (bfd_elf64_record_link_assignment): Likewise. - (bfd_elf_record_link_assignment): Declare. - * bfd-in2.h: Regenerate. - * elfcode.h (elf_link_create_dynamic_sections): Don't declare. - (NAME(_bfd_elf,size_info)): Adjust for log_file_align. - * elf.c (_bfd_elf_init_reloc_shdr): Adjust for bed->s->log_file_align. - (assign_file_positions_for_segments): Likewise. - (assign_file_positions_except_relocs): Likewise. - (swap_out_syms, elfcore_write_note): Likewise. - * elf-m10200.c: Adjust for changed function names. - * elf-m10300.c: Likewise. - * elf32-arm.h: Likewise. - * elf32-h8300.c: Likewise. - * elf32-hppa.c: Likewise. - * elf32-ip2k.c: Likewise. - * elf32-m32r.c: Likewise. - * elf32-m68hc11.c: Likewise. - * elf32-m68hc1x.c: Likewise. - * elf32-m68k.c: Likewise. - * elf32-mips.c: Likewise. - * elf32-ppc.c: Likewise. - * elf32-sh.c: Likewise. - * elf32-v850.c: Likewise. - * elf32-xtensa.c: Likewise. - * elf64-alpha.c: Likewise. - * elf64-hppa.c: Likewise. - * elf64-mmix.c: Likewise. - * elf64-ppc.c: Likewise. - * elf64-sh64.c: Likewise. - * elfxx-ia64.c: Likewise. - * elfxx-mips.c: Likewise. - (MIPS_ELF_LOG_FILE_ALIGN): Use log_file_align. - * elf64-alpha.c (alpha_elf_size_info): Adjust for log_file_align. - * elf64-hppa.c (hppa64_elf_size_info): Likewise. - * elf64-mips.c (mips_elf64_size_info): Likewise. - * elf64-s390.c (s390_elf64_size_info): Likewise. - * elf64-sparc.c (sparc64_elf_size_info): Likewise. - -2003-05-08 H.J. Lu - - * elflink.h (elf_add_default_symbol): After skipping the - unversioned symbol, go to non-default one. - -2003-05-07 H.J. Lu - - * elfxx-ia64.c (_bfd_elf_link_hash_hide_symbol): Also clear the - want_plt field. - (elfNN_ia64_relocate_section): Don't do dynamic symbol lookup - for symbols with non-default visibility. - -2003-05-07 H.J. Lu - - * elflink.h (elf_link_check_versioned_symbol): Also handle the - case that a DSO references a hidden symbol which may be - satisfied by a versioned symbol in another DSO. - (elf_link_output_extsym): Check versioned definition for hidden - symbol referenced by a DSO. - -2003-05-07 Nick Clifton - - * elf32-xstormy16.c (xstormy16_elf_howto_table): Reset - R_XSTORMY16_16 reloc to ignore overflows. - -2003-05-06 Alexandre Oliva - - * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Improve - error message for mixing different-endian files. Check for ABI - compatibility of input files with the selected emulation. - -2003-05-05 Alan Modra - - * elf32-i386.c (allocate_dynrelocs): For undef weak syms with - non-default visibility, a) don't make them dynamic, b) discard - space for dynamic relocs. - * elf64-x86-64.c (allocate_dynrelocs): Likewise. - - * elf32-ppc.c (allocate_dynrelocs): For undef weak syms with - non-default visibility, a) don't allocate plt entries, b) don't - allocate .got relocs, c) discard dyn rel space, - (ppc_elf_relocate_section): d) don't generate .got relocs, e) - don't generate dynamic relocs. - * elf64-ppc.c (allocate_dynrelocs): As above. - (ppc64_elf_relocate_section): As above. - -2003-05-05 Andreas Jaeger - - * elf64-x86-64.c (allocate_dynrelocs): Don't allocate dynamic - relocation entries for weak undefined symbols with non-default - visibility. - (elf64_x86_64_relocate_section): Initialize the GOT entries and - skip R_386_32/R_386_PC32 for weak undefined symbols with - non-default visibility. - -2003-05-04 H.J. Lu - - * elf32-i386.c (allocate_dynrelocs): Don't allocate dynamic - relocation entries for weak undefined symbols with non-default - visibility. - (elf_i386_relocate_section): Initialize the GOT entries and - skip R_386_32/R_386_PC32 for weak undefined symbols with - non-default visibility. - - * elfxx-ia64.c (allocate_fptr): Don't allocate function - descriptors for weak undefined symbols with non-default - visibility. - (allocate_dynrel_entries): Don't allocate relocation entries - for symbols resolved to 0. - (set_got_entry): Don't install dynamic relocation for weak - undefined symbols with non-default visibility. - (set_pltoff_entry): Likewise. - - * elflink.h (elf_fix_symbol_flags): Hide weak undefined symbols - with non-default visibility. - (elf_link_output_extsym): Don't make weak undefined symbols - with non-default visibility dynamic. - -2003-05-04 H.J. Lu - - * elflink.h (elf_merge_symbol): Correctly handle weak definiton. - -2003-05-04 H.J. Lu - - * elflink.h (elf_merge_symbol): Don't record a hidden/internal - symbol dynamic. Check indirection when removing the old - definition for symbols with non-default visibility. - (elf_add_default_symbol): Skip when told by elf_merge_symbol. - -2003-05-02 Nick Clifton - - * elf32-xstormy16.c (xstormy16_elf_howto_table): Make the - R_XSTORMY16_8 and R_XSTORMY16_16 relocs detect and complain about - unsigned overflow. - -2003-05-02 Andreas Jaeger - - * elf64-x86-64.c (elf_x86_64_copy_indirect_symbol): Don't copy - ELF_LINK_NON_GOT_REF for weakdefs when symbol already adjusted. - (ELIMINATE_COPY_RELOCS): Define as one. Use throughout. - (elf_x86_64_adjust_dynamic_symbol): For weak symbols, copy - ELF_LINK_NON_GOT_REF from weakdef. - -2003-05-02 Charles Lepple - Nick Clifton - - * acinclude.m4: Fix name of --enable-install-libbfd switch. - * aclocal.m4: Regenerate. - * configure: Regenerate. - * Makefile.in: Regenerate. - -2003-05-01 Alan Modra - - * elf32-ppc.c (ppc_elf_copy_indirect_symbol): Test whether the - weakdef sym has already been adjusted before treating it specially. - * elf32-i386.c (elf_i386_copy_indirect_symbol): Don't copy - ELF_LINK_NON_GOT_REF for weakdefs when symbol already adjusted. - * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise. - (ppc64_elf_check_relocs): Set ELF_LINK_NON_GOT_REF. - -2003-04-28 H.J. Lu - - * elfxx-ia64.c (elfNN_ia64_relax_section): Relax ldxmov during - the relax finalize pass. - - * section.c (struct sec): Add need_finalize_relax and remove - flag11. - (STD_SECTION): Update struct sec initializer. - * bfd-in2.h: Regenerated. - -2003-04-28 H.J. Lu - - * elflink.h (elf_merge_symbol): Call elf_backend_copy_indirect_symbol - to copy any information related to dynamic linking when we flip - the indirection. - -2003-04-27 H.J. Lu - - * elf-bfd.h (ELF_LINK_DYNAMIC_DEF): New. - (ELF_LINK_DYNAMIC_WEAK): New. - - * elflink.h (elf_merge_symbol): Add one argument to indicate if - a symbol should be skipped. Ignore definitions in dynamic - objects for symbols with non-default visibility. - (elf_add_default_symbol): Adjusted. - (elf_link_add_object_symbols): Check if a symbol should be - skipped. Don't merge the visibility field with the one from - a dynamic object. - (elf_link_check_versioned_symbol): Use undef_bfd. - (elf_link_output_extsym): Warn if a forced local symbol is - referenced from dynamic objects. Make non-weak undefined symbol - with non-default visibility a fatal error. - -2003-04-27 Daniel Jacobowitz - - * configure.in: Bump version on HEAD to 2.14.90. - * configure: Regenerated. - -2003-04-26 Stephane Carrez - - PR savannah/3331: - * elf32-m68hc11.c (m68hc11_elf_relax_section): Clear prev_insn_group - when we couldn't relax something. - -2003-04-25 Alan Modra - - * elflink.h (elf_merge_symbol): When we find a regular definition - for an indirect symbol, flip the indirection so that the old - direct symbol now points to the new definition. - -2003-04-24 Roland McGrath - - * elf.c (bfd_section_from_phdr): Map PT_GNU_EH_FRAME to "eh_frame_hdr". - -2003-04-24 Alan Modra - - * elf32-ppc.c: Formatting and comment fixes. - (ELIMINATE_COPY_RELOCS): Move before ppc_elf_copy_indirect_symbol. - (ppc_elf_copy_indirect_symbol): Copy flags here for weakdefs. - -2003-04-24 Dhananjay Deshpande - - * archures.c (bfd_mach_h8300hn, bfd_mach_h8300sn): Added. - * bfd-in2.h: Rebuilt. - * coff-h8300.c (BADMAG): Add check for H8300HNBADMAG & H8300SNBADMAG. - * coffcode.h (coff_set_arch_mach_hook): Add case for H8300HNMAGIC - & H8300SNMAGIC. - (coff_set_flags): Add case for bfd_mach_h8300hn & bfd_mach_h8300sn. - * cpu-h8300.c (h8300_scan): Handle h8300hn, h8300sn. - (h8300sn_info_struct, h8300hn_info_struct): New. - * elf32-h8300.c (elf32_h8_mach): Handle case for h8300hn & h8300sn - (elf32_h8_final_write_processing): Likewise. - -2003-04-23 Kaz Kojima - - * elf32-sh.c (tpoff): New. - (struct elf_sh_dyn_relocs): Remove tls_tpoff32. - (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead of INFO. - (allocate_dynrelocs): Don't make unnecessary dynamic TLS - relocations. Adjust WILL_CALL_FINISH_DYNAMIC_SYMBOL uses. - (sh_elf_relocate_section): Likewise. Remove unnecessary tests. - (dtpoff_base): Fix wrong indentation. - (sh_elf_check_relocs): Don't set DF_STATIC_TLS flag with non-TLS - relocations. Don't set tls_tpoff32 flag. Don't make unnecessary - R_SH_TLS_TPOFF32 relocations. - -2003-04-23 J"orn Rennecke - - * archures.c (enum bfd_architecture): Amend comment to refer to SuperH. - * cpu-sh.c: Likewise. - * elf32-sh.c: Likewise. - * reloc.c (bfd_reloc_code_real): Likewise. - * elf32-sh64-com.c: Change comment to refer to SuperH. - * elf32-sh64.c: Likewise. - * elf64-sh64.c: Likewise. - * bfd-in2.h (enum bfd_architecture): Regenerate. - -2003-04-23 Alan Modra - - From Julien LEMOINE - * elf32-i386.c (elf_i386_info_to_howto): Delete. - (elf_info_to_howto): Define as elf_i386_info_to_howto_rel. - -2003-04-22 Kazuhiro Inaoka - - * archures.c: Replace references to Mitsubishi M32R with references - to Renesas M32R. - * relocs.c: Likewise. - * bfd-in2.h: Regenerate. - -2003-04-21 Richard Henderson - - * elf64-alpha.c (alpha_elf_dynamic_symbol_p): Return false for an - executable when a symbol is defined both regular and dynamic. - -2003-04-21 Stephane Carrez - - * Makefile.am (BFD32_BACKENDS): Add elf32-m68hc1x.lo. - (elf32-m68hc1x.lo): Update dependencies - * configure.in: Add elf32-m68hc1x.lo. - * configure: Rebuild. - * Makefile.in: Rebuild. - -2003-04-21 Stephane Carrez - - * elf32-m68hc1x.c: New file (from elf32-m68hc11.c and elf32-m68hc12.c) - (m68hc11_elf_hash_table_create): New function. - (elf32_m68hc11_link_hash_table_free): New function. - (stub_hash_newfunc): New function. - (m68hc11_add_stub): New function. - (elf32_m68hc11_add_symbol_hook): New function. - (elf32_m68hc11_setup_section_lists): New function. - (elf32_m68hc11_next_input_section): New function. - (elf32_m68hc11_size_stubs): New function. - (elf32_m68hc11_build_stubs): New function. - (m68hc11_get_relocation_value): New function. - (elf32_m68hc11_relocate_section): Call the above to redirect - some relocations to the trampoline code. - (m68hc11_elf_export_one_stub): New function. - (m68hc11_elf_set_symbol): New function. - (elf32_m68hc11_build_stubs): Call it via bfd_hash_traverse. - (m68hc11_elf_get_bank_parameters): Get parameters only when the info - is not yet initialized. - - * elf32-m68hc1x.h: New file (from elf32-m68hc11.c and elf32-m68hc12.c) - (elf32_m68hc11_stub_hash_entry): New struct. - (m68hc11_page_info): Add trampoline handler address. - (m68hc11_elf_link_hash_table): Add stubs generation members. - (elf32_m68hc11_add_symbol_hook): Declare. - (elf32_m68hc11_setup_section_lists): Declare. - (elf32_m68hc11_size_stubs): Declare. - (elf32_m68hc11_build_stubs): Declare. - - * elf32-m68hc11.c (m68hc11_elf_ignore_reloc): Move to elf32-m68hc1x.c. - (elf32_m68hc11_gc_mark_hook, elf32_m68hc11_gc_sweep_hook): Likewise. - (elf32_m68hc11_check_relocs, elf32_m68hc11_relocate_section): Ditto. - (_bfd_m68hc11_elf_set_private_flags): Ditto. - (_bfd_m68hc11_elf_merge_private_bfd_data): Ditto. - (_bfd_m68hc11_elf_print_private_bfd_data): Ditto. - (bfd_elf32_bfd_link_hash_table_create): Define. - (elf_backend_add_symbol_hook): Define. - (m68hc11_elf_bfd_link_hash_table_create): New function. - (m68hc11_elf_build_one_stub): New function. - (m68hc11_elf_size_one_stub): New function. - (m68hc11_elf_bfd_link_hash_table_create): Install the above. - (bfd_elf32_bfd_link_hash_table_create): Define. - - * elf32-m68hc12.c (m68hc11_elf_ignore_reloc): Remove. - (m68hc12_addr_is_banked): Remove, use m68hc11_addr_is_banked. - (m68hc12_phys_addr): Ditto. - (m68hc12_phys_page): Ditto. - (m68hc12_elf_special_reloc): Move to elf32-m68hc1x.c. - (elf32_m68hc11_gc_mark_hook): Likewise. - (elf32_m68hc11_gc_sweep_hook): Likewise. - (elf32_m68hc11_check_relocs): Likewise. - (elf32_m68hc11_relocate_section): Likewise. - (_bfd_m68hc12_elf_set_private_flags): Likewise. - (_bfd_m68hc12_elf_merge_private_bfd_data): Likewise. - (_bfd_m68hc12_elf_print_private_bfd_data): Likewise. - (m68hc12_elf_build_one_stub): New function. - (m68hc12_elf_size_one_stub): New function. - (m68hc12_elf_bfd_link_hash_table_create): New function, use the above. - (elf_backend_add_symbol_hook): Define. - (elf_m68hc11_howto_table): Use TRUE for pcrel relocs; fix masks. - -2003-04-18 Nick Clifton - - * format.c (bfd_check_format_matches): Only check associated - vector if the matching_vector has been created. - -2003-04-15 Alexandre Oliva - - * dwarf2.c (_bfd_dwarf2_find_nearest_line): Fix typo in - 2003-04-09's change. - -2003-04-15 Brian Ford - - * peicode.h (coff_swap_scnhdr_in): If a section holds - uninitialized data and is from an object file or from an - executable image that has not initialized the s_size field, or if - the physical size is padded, use the virtual size (stored in - s_paddr) instead. - -2003-04-15 H.J. Lu - - * elflink.h (elf_link_add_object_symbols): Properly report - filename for alignment reduction. - -2003-04-15 Rohit Kumar Srivastava - - * archures.c: Replace occurrances of 'Hitachi' with 'Renesas'. - * reloc.c: Likewise. - * coff-h8300.c: Likewise. - * coff-h8500.c: Likewise. - * coff-sh.c: Likewise. - * cpu-h8300.c: Likewise. - * cpu-sh.c: Likewise. - * elf32-h8300.c: Likewise. - * elf32-sh.c: Likewise. - * elf32-sh64-com.c: Likewise. - * elf32-sh64.c: Likewise. - * elf64-sh64.c: Likewise. - * bfd-in2.h: Regenerate. - -2003-04-14 H.J. Lu - - * elflink.h (elf_link_add_object_symbols): Maintain maximum - alignment for common symbols. Warn reducing alignment for - common symbols. Report old filename when symbol size changes. - -2003-04-12 Alexandre Oliva - - * elfxx-mips.c (mips_elf_calculate_relocation): Adjust two other - occurrences of the same test changed in the previous patch. - Optimize. - -2003-04-11 Alexandre Oliva - - * elfxx-mips.c (mips_elf_get_global_gotsym_index): New. - (mips_elf_calculate_relocation): Decay GOT_PAGE/GOT_OFST to - GOT_DISP/addend only if the symbol got a global GOT entry. - -2003-04-10 Alexandre Oliva - - * elfxx-mips.c (mips_elf_calculate_relocation): Decay - GOT_PAGE/GOT_OFST referencing overridable symbol to - GOT_DISP/addend. - (_bfd_mips_elf_check_relocs): Handle GOT_PAGE referencing - global symbol as GOT_DISP. - -2003-04-10 Bob Wilson - - * elf32-xtensa.c (elf_xtensa_relocate_section): Don't continue to the - next relocation on an undefined symbol. - -2003-04-09 Richard Henderson - - * elf64-alpha.c (elf64_alpha_relocate_section) : - Ignore relocations against r_symndx == 0. - -2003-04-09 H.J. Lu - - * elf64-alpha.c (elf64_alpha_relocate_section): Don't return - FALSE for undefined symbols. - * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise. - -2003-04-09 Alexandre Oliva - - * dwarf2.c (_bfd_dwarf2_find_nearest_line): Try DWARF3-standard - and IRIX-specific shift-to-64-bit 4-byte lengths before following - addr_size. - -2003-04-08 Alexandre Oliva - - * elf32-mips.c (bfd_elf32_bfd_reloc_type_lookup): Detect (ctor) - pointer size from ABI, not arch_bits_per_address. - -2003-04-07 Kevin Buettner - - * elfn32-mips.c (elf32_mips_grok_prstatus): Adjust core file related - constants for n32 ABI. - -2003-04-06 Andrew Cagney - - * simple.c (bfd_simple_get_relocated_section_contents): Disable - free that leads to GDB vs BFD memory corruption. - -2003-04-04 Stephane Carrez - - * elf32-m68hc11.c (m68hc11_elf_relax_delete_bytes): Also adjust - symbols that mark the end of the section. - (m68hc11_elf_relax_section): Use R_M68HC11_PCREL_8 relocs when - converting to a relative branch so that the offset is computed after - the relaxation; also relocate a jsr into a bsr if possible but don't - relax them if they are to a far symbol as we need to call the - trampoline code. - (elf_m68hc11_howto_table): Set pcrel_offset to true. - -2003-04-04 Svein E. Seldal - - * archures.c: Namespace cleanup. Rename bfd_mach_c3x to - bfd_mach_tic3x and bfd_mach_c4x to bfd_mach_tic4x - * bfd-in2.h: Regenerate - * coff-tic4x.c: Namespace cleanup. Replace s/c4x/tic4x/ - * cpu-tic4x.c: Ditto - -2003-04-03 Nick Clifton - - * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Compute ps and ss - differently for object files and executables. - * peicode.h (coff_swap_scnhdr_in): Only set the s_size field - for object files or for executables who have not already - initialised the field. - * libpei.h (bfd_pe_executable_p): New macro. Return true if - the PE format bfd is an executable. - -2003-04-03 Alan Modra - - * elf32-ppc.c (ppc_elf_check_relocs): Don't use SYMBOL_REFERENCES_LOCAL - here as it's too early to reliably determine locality. - (ppc_elf_gc_sweep_hook): Likewise. - (SYMBOL_REFERENCES_LOCAL): Expand comment. - -2003-04-02 Bob Wilson - - * xtensa-modules.c: Remove comment indicating that this is a - generated file. - -2003-04-02 Alan Modra - - * elfxx-mips.c (_bfd_mips_elf_hide_symbol): Test for NULL dynobj. - -2003-04-01 Bob Wilson - - * Makefile.am (ALL_MACHINES): Add cpu-xtensa.lo. - (ALL_MACHINES_CFILES): Add cpu-xtensa.c. - (BFD32_BACKENDS): Add elf32-xtensa.lo, xtensa-isa.lo, and - xtensa-modules.lo. - (BFD32_BACKENDS_CFILES): Add elf32-xtensa.c, xtensa-isa.c, and - xtensa-modules.c. - (cpu-xtensa.lo): New target. - (elf32-xtensa.lo): Likewise. - (xtensa-isa.lo): Likewise. - (xtensa-modules.lo): Likewise. - * Makefile.in: Regenerate. - * archures.c (bfd_architecture): Add bfd_{arch,mach}_xtensa. - (bfd_archures_list): Add bfd_xtensa_arch. - * config.bfd: Handle xtensa-*-*. - * configure.in: Handle bfd_elf32_xtensa_{le,be}_vec. - * configure: Regenerate. - * reloc.c: Add BFD_RELOC_XTENSA_{RTLD,GLOB_DAT,JMP_SLOT,RELATIVE, - PLT,OP0,OP1,OP2,ASM_EXPAND,ASM_SIMPLIFY}. - * targets.c (bfd_elf32_xtensa_be_vec): Declare. - (bfd_elf32_xtensa_le_vec): Likewise. - (bfd_target_vector): Add bfd_elf32_xtensa_{be,le}_vec. - * cpu-xtensa.c: New file. - * elf32-xtensa.c: Likewise. - * xtensa-isa.c: Likewise. - * xtensa-modules.c: Likewise. - * libbfd.h: Regenerate. - * bfd-in2.h: Likewise. - -2003-04-01 Nick Clifton - - * archures.c (bfd_mach_arm_unknown): Define. - * bfd-in.h (bfd_arm_merge_machines, bfd_arm+update_notes, - bfd_arm_get_mach_from_notes): Prototype. - * bfd-in2.h: Regenerate. - * coff-arm.c (coff_arm_merge_private_bfd_data): Call - bfd_arm_merge_machines. - (coff_arm_final_link_postscript): Call bfd_arm_update_notes. - * coffcode.h (coff_set_arch_mach_hook): Call - bfd_arm_get_mach_from_notes. - * coffgen.c (coff_real_object_p): Revert previous delta. - * cpu_arm.c (arm_check_note): New function. Examine a note in a - .note section. - (bfd_arm_merge_machines): New function: Handle the merging of ARM - binaries compiled for different architectures.. - (bfd_arm_update_notes): New function: Update an ARM note section. - (bfd_arm_get_mach_from_notes): New function: Extract a bfd machine - number from an ARM note section. - * elf32-arm.h (elf32_arm_object_p): Use - bfd_arm_get_mach_from_notes. - (elf32_arm_merge_private_bfd_data): Use bfd_arm_merge_machines. - (elf32_arm_final_write_processing): Use bfd_arm_update_notes. - -2003-04-01 Ben Elliston - - * dwarf2.c (read_attribute_value): Correct typo in comment. - -2003-04-01 Nick Clifton - - * dwarf2.c (concat_filename): Use bfd_malloc() and strdup() - instead of concat(). - (decode_line_info): Only free filename if it is not NULL. - (add_line_info): Make a copy of the filename when storing it into - the info structure. - -2003-03-31 Andreas Schwab - Daniel Jacobowitz - - * simple.c (bfd_simple_get_relocated_section_contents): Add - parameter symbol_table. Optionally use it instead of the symbol - table from the bfd. Save and restore output offsets and output - sections around bfd_get_relocated_section_contents. Fix a memory - leak. - (simple_save_output_info, simple_restore_output_info): New - functions. - * bfd-in2.h: Regenerate. - * dwarf2.c (read_abbrevs): Use - bfd_simple_get_relocated_section_contents instead of - bfd_get_section_contents. - (decode_line_info): Likewise. - (_bfd_dwarf2_find_nearest_line): Likewise. Don't call - find_rela_addend. - (find_rela_addend): Remove. - * elfxx-ia64.c (elfNN_ia64_reloc): Weaken sanity check for - debugging sections. - (elfNN_ia64_hash_table_create): Create the hash table with malloc, - not bfd_zalloc. - -2003-03-31 David Heine - - * aoutx.h (aout_link_hash_table_create): Use bfd_malloc instead of - bfd_alloc. - * dwarf2.c (concat_filename): Always allocate space for the - returned filename. - (decode_line_info): Free the allocated filename returned by - concat_filename. - * elf-eh-frame.c (bfd_elf_write_section_eh_frame): Fix memory leaks. - * elf.c (copy_private_bfd_data): Likewise. - (_bfd_elf_slurp_version_tables): Fix bug freeing contents pointer. - * elflink.h (elf_link_sort_relocs): Fix memory leak. - * format.c (bfd_check_format_matches): Likewise. - * linker.c (bfd_generic_final_link): Likewise. - * opncls.c (find_separate_debug_info): Likewise. - * simple.c (bfd_simple_get_relocated_section_contents): Likewise. - -2003-03-28 H.J. Lu - - * elflink.h (elf_link_add_object_symbols): Correctly combine - visibilities. - -2003-03-27 Jakub Jelinek - - * elfxx-ia64.c (elfNN_ia64_relax_section): Reset self_dtpmod_offset - to -1 before recomputing got offsets. - -2003-03-26 Andreas Schwab - - * elf32-m68k.c (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define. - (elf_m68k_relocate_section): Use it to correctly handle symbols - forced to be local. - (elf_m68k_finish_dynamic_symbol): Emit RELATIVE reloc for got - entries for symbols that are forced to be local. - -2003-03-25 Alexandre Oliva - - * elfxx-mips.c (_bfd_mips_relax_section): New function. - * elfxx-mips.h (_bfd_mips_relax_section): Declare. - * elfn32-mips.c, elf64-mips.c: Use it. - -2003-03-25 Stan Cox - Nick Clifton - - Contribute support for Intel's iWMMXt chip - an ARM variant: - - * archures.c: Add bfd_mach_arm_iWMMXt. - * reloc.c: Add BFD_RELOC_ARM_CP_OFF_IMM_S2. - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - * coff-arm.c (coff_arm_merge_private_bfd_data): Allow iWMMXt - object files to be linked with XScale ones. - (coff_arm_final_link_postscript): Update note section. - * coffcode.h (coff_set_arch_mach_hook): Handle note section. - * coffgen.c (coff_real_object_p): Call bfd_coff_set_arch_mach_hook - after identifying a coff binary. - * cpu-arm.c (processors): Add iWMMXt. - (arch_inf): Likewise. - * elf32-arm.h (arm_object_p): Handle note section. - (elf32_arm_merge_private_bfd_data): Allow iWMMXt object files to - be linked with XScale ones. - (elf32_arm_section_flags): New function: Set flags on note section. - (elf32_arm_final_write_processing): Handle note section. - -2003-03-21 DJ Delorie - - * elf32-xstormy16.c (elf32_xstormy16_relocate_section): Call - _bfd_elf_rela_local_sym. - -2003-03-20 H.J. Lu - - * elfxx-ia64.c (elfNN_ia64_relax_section): Don't try relax for - non-ELF outputs. - -2003-03-20 Nick Clifton - - * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Initialise $idata2 and - $idata5 in case bfd_coff_final_link is not called. - -2003-03-19 Jakub Jelinek - - * elf64-sparc.c (struct sparc64_elf_section_data): Add reloc_count - field. - (canon_reloc_count): Define. - (sparc64_elf_slurp_one_reloc_table, sparc64_elf_slurp_reloc_table, - sparc64_elf_canonicalize_dynamic_reloc): Use it instead of - reloc_count. - (sparc64_elf_canonicalize_reloc): New routine. - (bfd_elf64_canonicalize_reloc): Define. - -2003-03-18 Jakub Jelinek - - * elfxx-ia64.c (elfNN_ia64_relax_section): Handle relaxation - againt mergeable sections. Take r_addend into account when caching - trampolines. - -2003-03-18 Richard Henderson - - * elfxx-ia64.c (get_dyn_sym_info): Return NULL gracefully for - local symbols that have no dyninfo. - -2003-03-14 Gene Smith - - * ieee.c (ieee_write_expression): Handle the case where symbol is - NULL. - General formatting improvements. - -2003-03-13 Nick Clifton - - * configure.in (LINGUAS): Add zh_CN. - * configure: Regenerate. - * po/zh_CN.po: New file. - -2003-03-13 Elias Athanasopoulos - - * aout-cris.c (BYTES_IN_WORD): Don't define. - aout-encap.c: Likewise. - aout-ns32k.c: Likewise. - aout-tic30.c: Likewise. - hp300bsd.c: Likewise. - i386aout.c: Likewise. - i386dynix.c: Likewise. - i386linux.c: Likewise. - i386lynx.c: Likewise. - i386mach3.c: Likewise. - m68k4knetbsd.c: Likewise. - m68klinux.c: Likewise. - m68klynx.c: Likewise. - m68knetbsd.c: Likewise. - m88kmach3.c: Likewise. - mipsbsd.c: Likewise. - newsos3.c: Likewise. - sparclinux.c: Likewise. - sparclynx.c: Likewise. - sparcnetbsd.c: Likewise. - vaxbsd.c: Likewise. Fix comment formatting. - -2003-03-12 Alexandre Oliva - - * Reverted 2003-03-02's patch. - - * elfxx-target.h (bfd_elfNN_canonicalize_reloc): Make it - overridable. - * elf64-mips.c (mips_elf64_canonicalize_reloc, - mips_elf64_get_dynamic_reloc_upper_bound, - mips_elf64_canonicalize_dynamic_reloc): New, adapted from elf.c. - (bfd_elf64_get_canonicalize_reloc, - bfd_elf64_get_dynamic_reloc_upper_bound, - bfd_elf64_canonicalize_dynamic_reloc): Define. - (mips_elf64_slurp_reloc_table): Support dynamic. - (mips_elf64_slurp_one_reloc_table): Adjust. - -2003-03-12 Nick Clifton - - * xsym.c (bfd_sym_fetch_type_information_table_entry): Change - 'index' to 'offset' in test for zero value. - -2003-03-11 Alexandre Oliva - - * elfxx-mips.c (mips_elf_create_dynamic_relocation): Do not create - dynamic relocations pointing to local or section symbols, use the - NULL symbol instead. Document the choice to not emit an - additional R_MIPS_64 relocation. - -2003-03-11 Alan Modra - - * elf32-ppc.c (ppc_elf_relocate_section): Subtract tls seg vma from - zero index dynamic tls relocs generated for the GOT. Tidy code. - Set "relocation" to 1 on DTPMOD32 relocs. Optimize HA adjustment. - * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. - -2003-03-07 Alan Modra - - * elf32-ppc.c (ppc_elf_relocate_section): Don't look for a nop after - a tls_get_addr call. - - * elf32-ppc.c (ELIMINATE_COPY_RELOCS): Define as one. - (ppc_elf_adjust_dynamic_symbol): For weak symbols, copy - ELF_LINK_NON_GOT_REF from weakdef. - * elf64-ppc.c (ELIMINATE_COPY_RELOCS): Define as one. - (ppc64_elf_adjust_dynamic_symbol): For weak symbols, copy - ELF_LINK_NON_GOT_REF from weakdef. - * elf32-i386.c (ELIMINATE_COPY_RELOCS): Define as one. Use throughout. - (elf_i386_adjust_dynamic_symbol): For weak symbols, copy - ELF_LINK_NON_GOT_REF from weakdef. - -2003-03-06 Jakub Jelinek - Andrew Haley - - * elflink.h (elf_bfd_discard_info): Don't process eh frames if - output is relocateable. - -2003-03-06 Steven Konopa - - * som.c (som_fixup_formats): Correct formats for R_AUX_UNWIND and - R_COMMENT. - -2003-03-06 Alan Modra - - * elf32-ppc.c (ppc_elf_create_linker_section): Don't capitalize - error messages. - (ELIMINATE_COPY_RELOCS): Define to zero. - (ppc_elf_relocate_section): Don't deref htab->tls_sec when calculating - TLSLD relocs. Report reloc types on a number of errors. Optimize - LOCAL24PC check for non-local syms. Don't capitalize error messages. - * elf64-ppc.c (ELIMINATE_COPY_RELOCS): Define to zero. - (ppc64_elf_relocate_section): Don't deref htab->tls_sec when - calculating TLSLD relocs. Report reloc types on a number of errors. - Don't capitalize error messages. - -2003-03-03 H.J. Lu - - * elfxx-ia64.c (USE_BRL): Removed. - (oor_ip): Removed. - -2003-03-03 J"orn Rennecke - - * elf32-sh.c (sh_elf_howto_tab): Make R_SH_IND12W into an ordinary - relocation (no special function), and make it non-partial_inplace. - (sh_elf_relax_section): When creating a bsr, use a consistent value - no matter if the symbol is extern or not; set addend to -4. - Don't swap load / non-load instructions for SH4. - (sh_elf_relax_delete_bytes): In R_SH_IND12W case, check the offset - rather than if the symbol is external to determine if adjusting the - offset makes sense. Adjust the addend too if appropriate. - (sh_elf_relocate_section): In R_SH_IND12W, don't fiddle with the - relocation. - -2003-03-03 Nick Clifton - - * po/da.po: Installed latest translation. - -2003-03-02 Thiemo Seufer - - * elf32-mips.c (elf_mips_howto_table_rel): Change definition of - R_MIPS_PC16 to rightshift 2. - (elf_reloc_map mips_reloc_map): Map to rightshifted BFD reloc. - (bfd_elf32_bfd_reloc_type_lookup): Support - BFD_RELOC_MIPSEMB_16_PCREL_S2. - * elf64-mips.c (mips_elf64_howto_table_rel): Change definition of - R_MIPS_PC16 to rightshift 2. - (mips_elf64_howto_table_rela): Likewise. - (mips_reloc_map): Map to rightshifted BFD reloc. - * elfn32-mips.c: The same as in elf64-mips.c. - * elfxx-mips.c (mips_elf_got_for_ibfd): Typo in comment. - (mips_elf_calculate_relocation): Handle rightshifted addends for - R_MIPS_PC16. - * reloc.c (BFD_RELOC_MIPSEMB_16_PCREL_S2): New BFD relocation for - MIPS Embedded PIC. Remove superfluous empty COMMENT. - * libbfd.h: Regenerate. - * bfd-in2.h: Regenerate. - -2003-02-28 Richard Henderson - - * elfxx-ia64.c (elfNN_ia64_relax_section): Correct bounds - for ltoff22x relaxation. - -2003-03-01 Alan Modra - - * bfd-in.h (_bfd): Don't define. - * bfd.c: Rename occurrences of "struct _bfd" to "struct bfd". - * syms.c: Likewise. - * bfd-in2.h: Regenerate. - -2003-02-27 Richard Henderson - - * elfxx-ia64.c (struct elfNN_ia64_dyn_sym_info): Add want_gotx; - (elfNN_ia64_check_relocs): Set it. - (allocate_global_data_got): Check it. - (allocate_local_got): Likewise. - (allocate_dynrel_entries): Likewise. - (elfNN_ia64_relax_ldxmov): New. - (elfNN_ia64_relax_section): Handle LTOFF22X, LDXMOV. - (elfNN_ia64_choose_gp): Split out from ... - (elfNN_ia64_final_link): ... here. - -2003-02-27 Andrew Cagney - - * bfd.c (struct bfd): Rename "struct _bfd". - * bfd-in.h: Update copyright. - (struct bfd): Rename "struct _bfd". - (_bfd): Define for backward compatibility. - * bfd-in2.h: Regenerate. - -2003-02-25 Alan Modra - - * elflink.h (elf_bfd_final_link): Apportion reloc counts to rel_hdr - and rel_hdr2 when initially counting input relocs rather than after - creating output reloc sections. - (elf_link_read_relocs_from_section): Don't abort with wrong reloc - sizes. - - * Makefile.am: Run "make dep-am". - * Makefile.in: Regenerate. - -2003-02-24 Kris Warkentin - - * elf.c (elfcore_read_notes): Add check for QNX style core file. - (elfcore_grog_nto_note): New function. - (elfcore_grog_nto_gregs): New function. - (elfcore_grog_nto_status): New function. - -2003-02-24 Alan Modra - - * elflink.c (_bfd_elf_create_got_section): Check existing .got - section flags before concluding that we've already been called. - Don't use register keyword. - (_bfd_elf_create_dynamic_sections): Don't use register keyword. - (_bfd_elf_create_linker_section): Formatting. - -2003-02-20 jmc - - * coff-h8300.c: Fix typo: intial -> initial. - * coff-ppc.c: Likewise. - -2003-02-20 Alan Modra - - * elf32-ppc.c: Formatting. - (allocate_dynrelocs): LD and GD relocs against the same sym need - separate GOT entries. - (ppc_elf_relocate_section): Correct GOT handling for multiple GOT - entries per symbol. - -2003-02-19 Alan Modra - - * elf32-hppa.c (elf32_hppa_gc_sweep_hook): Simplify dynamic reloc - removal. Localize vars. Remove unnecessary dynobj test. - * elf32-i386 (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead - of INFO. - (allocate_dynrelocs): Adjust WILL_CALL_FINISH_DYNAMIC_SYMBOL uses, - and optimize. - (elf_i386_relocate_section): Likewise. - (elf_i386_gc_sweep_hook): Simplify dyn reloc removal. Localize vars. - * elf32-s390.c (elf_s390_gc_sweep_hook): Likewise. - * elf32-sh.c (sh_elf_gc_sweep_hook): Likewise. - * elf64-s390.c (elf_s390_gc_sweep_hook): Likewise. - * elf64-x86-64.c (elf64_x86_64_gc_sweep_hook): Likewise. - * elf32-sparc.c (elf32_sparc_gc_sweep_hook): Likewise. Remove - local_dynrel for section too. Don't touch HIPLT22, LOPLT10, PCPLT32 - or PCPLT10 relocs. Don't subtract twice on PLT32 relocs. - Formatting. - - * elf64-ppc.c (ELIMINATE_COPY_RELOCS): Define. - (ppc64_elf_check_relocs): Use it. Correct comment. Move SEC_ALLOC - test. - (ppc64_elf_adjust_dynamic_symbol): Use ELIMINATE_COPY_RELOCS. - (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead of INFO. - (allocate_dynrelocs): Adjust WILL_CALL_FINISH_DYNAMIC_SYMBOL uses, - and optimize. Use ELIMINATE_COPY_RELOCS. - (ppc64_elf_relocate_section): Likewise. - - * elf32-ppc.c (struct ppc_elf_dyn_relocs): Add pc_count field. - (ppc_elf_copy_indirect_symbol): Copy pc_count field. - (ELIMINATE_COPY_RELOCS): Define. - (ppc_elf_adjust_dynamic_symbol): Convert copy relocs to dynamic. - (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead of INFO. - (MUST_BE_DYN_RELOC): Define. - (allocate_dynrelocs): Adjust WILL_CALL_FINISH_DYNAMIC_SYMBOL uses, - and optimize. Trim dyn_relocs. - (ppc_elf_check_relocs): Don't generate dyn_relocs when we know they'll - not be used. Do generate dyn_relocs for copy reloc avoidance. Keep - track of pc_rel dyn relocs. - (ppc_elf_relocate_section): Remove "will_become_local". Adjust - WILL_CALL_FINISH_DYNAMIC_SYMBOL use. Trim dyn relocs as per - allocate_dynrelocs. Don't recalculate "sec". - -2003-02-18 Alan Modra - - * elf32-ppc.c (ppc_elf_relocate_section): Remove unnecessary test. - * elf64-ppc.c (ppc64_elf_tls_optimize): Decrement tlsld_got.refcount - on invalid LD relocs. - (allocate_dynrelocs): Invalid LD relocs don't use tlsld_got entry. - (ppc64_elf_relocate_section): Unify new handling of LD relocs and - tlsld_got entry. Use IS_PPC64_TLS_RELOC. - - * elf32-ppc.h: New file. - * elf32-ppc.c: Include elf32-ppc.h. - (NOP, CROR_151515, CROR_313131, TP_OFFSET, DTP_OFFSET): Define. - (struct ppc_elf_link_hash_entry): Rename "root" to "elf". Adjust uses. - Add "tls_mask" field. - (TLS_GD, TLS_LD, TLS_TPREL, TLS_DTPREL, TLS_TLS, TLS_TPRELGD): Define. - (struct ppc_elf_link_hash_table): Rename "root" to "elf". Adjust uses. - Add got, relgot, plt, relplt, dynbss, relbss, dynsbss, relsbss, - sdata, sdata2, tls_sec, tls_get_addr, tlsld_got fields. - Make use of htab shortcuts throughout file. - (ppc_elf_link_hash_newfunc): Init tls_mask field. - (ppc_elf_link_hash_table_create): Init new fields. - (ppc_elf_copy_indirect_symbol): Copy tls_mask. - (ppc_elf_howto_raw): Add tls relocs. - (ppc_elf_reloc_type_lookup): Handle them. - (ppc_elf_unhandled_reloc): New function. - (ppc_elf_create_got): Stash got section pointer in hash table, - return status. Make .rela.got too. - (ppc_elf_create_dynamic_sections): Stash section pointers in htab. - (ppc_elf_adjust_dynamic_symbol): Only set up copy relocs when - NON_GOT_REF set. Don't allocate space in .plt here.. - (allocate_dynrelocs): ..do so here instead, properly ref-counting and - not allocating plt entries unnecessarily. Allocate got entries here. - (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Define. - (ppc_elf_size_dynamic_sections): Allocate local got entries. Pass - "info" during allocate_dynrelocs hash traversal. Use htab section - shortcuts rather than searching for named sections. Get rid of - "plt" and "strip" booleans. - (update_local_sym_info, bad_shared_reloc): New functions. - (ppc_elf_check_relocs): Handle TLS relocs. Move .rela.got creation to - ppc_elf_create_got. Don't mark got or plt reloc syms dynamic, do so - in allocate_dynreloc. Use update_local_sym_info and bad_shared_reloc. - Disallow R_PPC_EMB_RELSDA, R_PPC_EMB_NADDR32, R_PPC_EMB_NADDR16, - R_PPC_EMB_NADDR16_LO, R_PPC_EMB_NADDR16_HI and R_PPC_EMB_NADDR16_HA - in shared libs. R_PPC_PLTREL32 is a plt reloc too. Refcount all - relocs that might use a plt entry. Set NON_GOT_REF too. - Enumerate all do-nothing relocs. - (ppc_elf_gc_sweep_hook): Simplify removal of dynrelocs. Handle - tls relocs and all plt relocs. - (ppc_elf_tls_setup, ppc_elf_tls_optimize): New functions. - (ppc_elf_finish_dynamic_symbol): Don't build got entries here. - (ppc_elf_finish_dynamic_sections): Rewrite tag code using htab - shortcuts. - (ppc_elf_relocate_section): Tidy. Handle TLS relocs. Use - bfd_elf_local_sym_name. Simplify unresolved reloc code. Build got - entries and got relocs here. Warn on non-zero got reloc addend. - Split out branch taken/not taken reloc code into a separate switch - and correct offset calculation. Allow BRTAKEN/BRNTAKEN dynamic relocs. - Split out HA reloc adjustments to separate switch statement. Don't - warn on reloc overflow if we've already warned about undefined. - Don't rebuild sym name when reporting errors. Report all possible - errors from _bfd_final_link_relocate. - (bfd_elf32_bfd_final_link): Don't define. - -2003-02-18 Alan Modra - - * elf64-ppc.c (ppc64_elf_relocate_section): Don't init "r". Don't - rebuild sym name when reporting errors. - -2003-02-17 Nick Clifton - - * elflink.h (elf_link_output_extsym): Only check - allow_shlib_undefined for shared libraries. - * elf32-i386.c (elf_i386_relocate_section): Remove bogus check - of allow_shlib_undefined. - * elf32-cris.c (cris_elf_relocate_section): Likewise. - * elf32-hppa.c (elf32_hppa_relocate_section): Likewise. - * elf32-m68k.c (elf_m68k_relocate_section): Likewise. - * elf32-ppc.c (ppc_elf_relocate_section): Likewise. - * elf32-s390.c (elf_s390_relocate_section): Likewise. - * elf32-sh.c (sh_elf_relocate_section): Likewise. - * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. - * elf32-vax.c (elf_vax_relocate_section): Likewise. - * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. - * elf64-hppa.c (elf64_hppa_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_relocate_section): Likewise. - * elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise. - -2003-02-17 Nick Clifton - - * elf.c (SEGMENT_AFTER_SEGMENT): Add third parameter - the - address field to use in the comparison. - (SEGMENT_OVERLAPS): Check that LMAs overlap as well. - -2003-02-14 Bob Wilson - - * elfcore.h (elf_core_file_p): Compare alternate machine codes for ELF - backends when checking if the generic ELF target should be used. - - * syms.c (_bfd_stab_section_find_nearest_line): For line number stabs - outside of functions, treat values as absolute addresses. - - * bfd.c: Change embedded documentation to use consistent indentation - and to split up long lines. Change informal style of description - for functions lacking real documentation. - * coffcode.h: Break up long lines in embedded documentation. - * format.c: Likewise. - * targets.c: Likewise. - * libcoff.h: Regenerate. - * bfd-in2.h: Regenerate. - -2003-02-14 Alan Modra - - * elf64-ppc.c (ppc64_elf_link_hash_table_create): Init tls_get_addr. - (ppc64_elf_copy_indirect_symbol): Merge tls_mask too. - (ppc64_elf_gc_sweep_hook): Simplify removal of dyn_relocs. - (allocate_dynrelocs): Don't treat undefined and undefweak specially. - (ppc_size_one_stub): Fix warning, and tighten plt entry check. - (group_sections): Don't share a stub section if stubs are for a large - section. Adjust comment. - (ppc64_elf_size_stubs): Roughly double the size left for stubs if - !stubs_always_before_branch. - (ppc64_elf_relocate_section): Initialize tlsld GOT entry once. Don't - treat undefined and undefweak specially when processing dyn relocs. - -2003-02-13 Jakub Jelinek - - * elflink.h (elf_link_add_object_symbols): Handle .symver x, x@FOO. - -2003-02-13 Nick Clifton - - * elf32-arm.h (elf32_thumb_to_arm_stub): Include section VMAs - in computation of offset to insert into BL instruction. - -2003-02-11 Uwe Stieber - - * config.bfd: Add support for kaOS as cross build target system. - -2003-02-11 Alan Modra - - * elf64-ppc.c (ppc64_elf_check_relocs): Match versioned - .__tls_get_addr too. - (ppc64_elf_tls_setup): Ensure cached tls_get_addr is not indirect. - -2003-02-10 Kaz kojima - - * elf32-sh.c (elf_sh_dyn_relocs): Add tls_tpoff32 field. - (elf_sh_link_hash_entry): Remove tls_tpoff32 field. - (sh_elf_link_hash_newfunc): Remove the initialization of - tls_tpoff32 field. - (allocate_dynrelocs): Keep dyn_relocs if it includes the entry - for which tls_tpoff32 flag is set. - (sh_elf_relocate_section): Covert to LE only if the dyn_relocs - of the symbol includes the entry matched with the input_section - and having tls_tpoff32 flag on. When linking statically, set - symbol index of R_SH_TLS_TPOFF32 relocation to zero if the symbol - is defined in this executable. - (sh_elf_check_relocs): Set tls_tpoff32 flag appropriately. - -2003-02-10 Jakub Jelinek - - * elf32-s390.c (elf_s390_size_dynamic_sections): Set relocs to TRUE - even if there is just non-empty .rela.plt. - -2003-02-10 Nick Clifton - - * archures.c (bfd_mach_arm_ep9312): Define. - * bfd-in2.h: Regenerate. - * cpu-arm.c (processors[]): Add ep9312. - (bfd_arm_arch): Add ep9312. - * elf32-arm.h (elf32_arm_merge_private_data): Update error - messages and add test for Maverick floating point support. - (elf32_arm_print_private_bfd_data): Handle - EF_ARM_MAVERICK_FLOAT flag. - (elf32_arm_object_p): New function. - (elf_backend_object_p): Define. - -2003-02-10 Alan Modra - - * elf64-ppc.c: Rename assorted occurrences of tls_type and similar - variables, structure fields or function params to tls_mask or - similar to better reflect usage. - (struct got_entry): Comment. - (struct ppc_link_hash_entry): Expand comment, and renumber TLS_*. - (get_tls_mask): Rename from get_tls_type. - -2003-02-09 Alan Modra - - * elf64-ppc.c (TLS_GD_LD): Don't define.. - (TLS_GD): ..define this instead and update all uses. - (TLS_TPRELGD): Define. - (ppc64_elf_link_hash_table_create): Tweak initialization of - init_refcount and init_offset. - (ppc64_elf_check_relocs): Add one extra element to t_symndx array. - Mark second slot of GD or LD toc entries. - (get_tls_type): Return an int. Distinguish toc GD and LD entries - from other tls types. - (ppc64_elf_tls_setup): New function, split out from.. - (ppc64_elf_tls_optimize): ..here. Don't optimize when symbols are - defined in a dynamic object. Fix LD optimization. Don't set TLS_TPREL - on GD->IE optimization, use TLS_TPRELGD instead. Use get_tls_type - return value to properly decide whether toc GD and LD entries can - optimize away __tls_get_addr call. Check next reloc after DTPMOD64 - to determine GD or LD rather than looking at TLS_LD flag. Don't - attempt to adjust got entry tls_type here.. - (allocate_dynrelocs): ..instead, adjust got entry tls_type here, and - look for possible merges. - (ppc64_elf_size_dynamic_sections): Adjust local got entries for - optimization. - (ppc64_elf_size_stubs): Tweak __tls_get_addr fudge. - (ppc64_elf_relocate_section): Rename some vars to better reflect usage. - Make use of return value from get_tls_type to properly detect GD and - LD optimizations. Split tlsld/gd hi/ha from lo/ds case. Don't - handle tls_get_addr removal when looking at REL24 relocs, do it when - looking at the previous reloc. Check reloc after DTPMOD64 to determine - GD or LD. - * elf64-ppc.h (ppc64_elf_tls_setup): Declare. - -2003-02-08 Alan Modra - - * elf32-hppa.c (group_sections): Don't share a stub section if - stubs are for a large section. - - * elf32-hppa.c (elf32_hppa_size_stubs): Double the size left for - stubs if !stubs_always_before_branch. - -2003-02-07 Nick Clifton - - * elf.c (swap_out_syms): Generate an error message if an - equivalent output section cannot be found for a symbol. - -2003-02-07 Jakub Jelinek - - * elf64-alpha.c (elf64_alpha_relax_section): Don't crash if - local_got_entries is NULL. - -2003-02-06 Andreas Schwab - - * elf-eh-frame.c (get_DW_EH_PE_signed): Define. - (read_value): Add parameter is_signed, use signed extraction if - the value is signed. - (_bfd_elf_write_section_eh_frame): Pass signed flag of the - encoding to read_value. - -2003-02-06 Alan Modra - - * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Don't copy got and - plt info when called to transfer weak sym info. - -2003-02-05 Alan Modra - - * reloc.c: Add PPC and PPC64 TLS relocs. - * libbfd.h: Regenerate. - * bfd-in2.h: Regenerate. - * elf64-ppc.c (TP_OFFSET, DTP_OFFSET): Declare. - (ppc64_elf_howto_raw): Add TLS howto's. Adjust R_PPC64_NONE to be - against a 32 bit field. - (ppc64_elf_reloc_type_lookup): Handle TLS relocs. - (_ppc64_elf_section_data): Add t_symndx and comments. - (ppc64_elf_section_data): Use elf_section_data macro. - (ppc64_elf_new_section_hook): American spelling. - (struct got_entry, struct plt_entry): New. - (MUST_BE_DYN_RELOC): Rename from IS_ABSOLUTE_RELOC. - (struct ppc_stub_hash_entry): Add "addend" field. - (struct ppc_link_hash_entry): Add "tls_type". - (TLS_TLS, TLS_GD_LD, TLS_LD, TLS_TPREL, TLS_DTPREL, - TLS_EXPLICIT): Define. - (struct ppc_link_hash_table): Add tls_sec, tls_get_addr, tlsld_got. - (link_hash_newfunc): Init new fields. - (ppc64_elf_link_hash_table_create): Likewise. Set init_refcount and - init_offset to NULL. - (ppc64_elf_copy_indirect_symbol): Copy got and plt info. Don't call - _bfd_elf_link_hash_copy_indirect, rather insert relevant code from - there. - (update_local_sym_info, update_plt_info): New functions. - (ppc64_elf_check_relocs): Use them. Handle TLS relocs. Adjust GOT - handling to use got.glist rather than got.refcount. Likewise for PLT. - (ppc64_elf_gc_sweep_hook): Handle TLS relocs, new GOT and PLT lists. - (func_desc_adjust): Adjust for new PLT list. - (ppc64_elf_adjust_dynamic_symbol): Likewise. - (get_sym_h, get_tls_type): New functions. - (ppc64_elf_edit_opd): Remove unused variable. Use get_sym_h. - (ppc64_elf_tls_optimize): New function. - (allocate_dynrelocs): Adjust for new PLT and GOT lists. Allocate - TLS relocs. - (ppc64_elf_size_dynamic_sections): Likewise. - (ppc_type_of_stub): Adjust for new PLT list. - (ppc_build_one_stub): Likewise. - (ppc64_elf_size_stubs): Likewise. Use get_sym_h. Treat __tls_get_addr - calls specially. - (ppc64_elf_relocate_section): Adjust for new GOT and PLT lists. Handle - TLS relocs. Report local syms using bfd_elf_local_sym_name. Don't - init GOT entries that have a reloc. Generate GOT relocs here.. - (ppc64_elf_finish_dynamic_symbol): ..not here. Adjust for PLT list. - * elf64-ppc.h (ppc64_elf_tls_optimize): Declare. - -2003-02-04 Andreas Schwab - - * elf32-m68k.c (elf_m68k_hash_entry): Define. - (elf_m68k_link_hash_traverse): Remove. - (elf_m68k_link_hash_newfunc): Use struct bfd_hash_entry and - elf_m68k_hash_entry instead of struct elf_m68k_link_hash_entry to - reduce casting. - (elf_m68k_check_relocs): Use elf_m68k_hash_entry instead of - casting. - (elf_m68k_size_dynamic_sections): Use elf_link_hash_traverse - instead of elf_m68k_link_hash_traverse. - (elf_m68k_discard_copies): Change first parameter to pointer to - struct elf_link_hash_entry and use elf_m68k_hash_entry when struct - elf_m68k_link_hash_entry is needed. - -2003-02-04 Alan Modra - - * elf-bfd.h (struct got_entry, struct plt_entry): Forward declare. - (struct elf_link_hash_entry): Add "glist" and "plist" fields to - "got" union, and declare as gotplt_union. Use gotplt_uinion for - "plt" field. - (struct elf_link_hash_table): Make "init_refcount" a gotplt_union. - Add "init_offset" field. - (struct elf_obj_tdata ): Add "struct got_entry **" to union. - (elf_local_got_ents): Declare. - * elf.c (_bfd_elf_link_hash_newfunc): Adjust initialization of "got" - and "plt". - (_bfd_elf_link_hash_hide_symbol): Use "init_offset". - (_bfd_elf_link_hash_table_init): Set "init_offset". - * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set init_refcount - from init_offset. - (elf_adjust_dynamic_symbol): Set plt and got offsets using init_offset. - - * elf.c (bfd_elf_local_sym_name): Split out from.. - (group_signature): ..here. - * elf-bfd.h (bfd_elf_local_sym_name): Declare. - -2003-02-04 Alan Modra - - * elf-bfd.h (enum elf_link_info_type): Remove. - (struct bfd_elf_section_data): Move sec_info_type, use_rela_p fields - to struct sec. Remove linkonce_p field. - (elf_linkonce_p): Delete. - (elf_discarded_section): Update for sec_info_type change. - * section.c (struct sec): Add sec_info_type, use_rela_p, has_tls_reloc, - flag11, flag12, flag13, flag14, flag15, flag16, flag20, flag24. - (ELF_INFO_TYPE_NONE): Define. - (ELF_INFO_TYPE_STABS): Define. - (ELF_INFO_TYPE_MERGE): Define. - (ELF_INFO_TYPE_EH_FRAME): Define. - (ELF_INFO_TYPE_JUST_SYMS): Define. - (STD_SECTION): Update struct sec initializer. - * ecoff.c (bfd_debug_section): Likewise. - * elf.c: Likewise. Update occurrences of sec_info_type and use_rela_p. - * elflink.h: Likewise. - * elf-eh-frame.c: Likewise. - * elf64-alpha.c: Likewise. - * elfxx-ia64.c: Likewise. - * elfxx-mips.c: Likewise. - * bfd-in2.h: Regenerate. - - * elf32-sparc.c (sec_do_relax): Use elf_section_data macro rather than - referring to used_by_bfd. - * elf64-sparc.c (sec_do_relax): Likewise. - * elf64-mmix.c (mmix_elf_section_data): Likewise. - * elfxx-mips.c (mips_elf_section_data): Likewise. - * ieee.c (ieee_slurp_section_data): Use ieee_per_section macro. - (ieee_get_section_contents): Likewise. - (ieee_new_section_hook): Formatting. - (ieee_canonicalize_reloc): Remove commented out code. - * mmo.c (mmo_section_data): Define. Use throughout file. - * oasys.c (oasys_get_section_contents): Use oasys_per_section macro. - -2003-01-31 Graydon Hoare - - * Makefile.am (opncls.lo): Add dependency upon libiberty.h. - * Makefile.in: Regenerate. - * opncls.c (calc_crc32, get_debug_link_info, - seperate_debug_file_exists, find_seperate_debug_file): New - internal functions. - (bfd_follow_gnu_debuglink): New function. Follow the pointer - contained inside a .gnu_debuglink section. - * bfd-in2.h: Regenerate. - -2003-01-29 Alexandre Oliva - - * elfxx-mips.c (mips_elf_got_entry_hash): Don't dereference - entry->abfd when it's NULL. - -2003-01-27 Alexandre Oliva - - * elfxx-mips.c (mips_elf_create_dynamic_relocation): Handle - _bfd_elf_section_offset returning -2 the same way as -1. - - * elfxx-mips.c (mips_elf_multi_got): New function. - (struct mips_got_entry): Make symndx and gotidx signed. Moved - addend into union along with address and link hash entry. - (struct mips_got_info): Added bfd2got and next. - (struct mips_elf_hash_sort_data): Added max_unref_got_dynindx. - (mips_elf_got_section, mips_elf_create_got_section): Use - SEC_EXCLUDE bit to tell whether we really need the got - section. Take boolean arguments to disregard an excluded - section, or to create it as excluded. Adjust all callers. - Use mips_elf_got_section all over. - (mips_elf_local_got_index, mips_elf_got_page, - mips_elf_got16_entry): Take input bfd as argument, and pass it - on to mips_elf_create_local_got_entry. - (mips_elf_global_got_index, mips_elf_create_local_got_entry): - Take input bfd as argument, and manage entries in the - appropriate GOT. - (mips_elf_got_offset_from_index): Take input bfd as argument, - and use it to adjust the GP offset of the bfd. - (mips_elf_sort_hash_table, mips_elf_sort_hash_table_f): Move - unreferenced GOT entries of global symbols to the end. - (mips_elf_record_global_got_symbol): Take input bfd as - argument. Add entries to the master GOT hash table. - (struct mips_elf_bfd2got_hash): New. - (struct mips_elf_got_per_bfd_arg): New. - (struct mips_elf_set_global_got_offset_arg): New. - (mips_elf_hash_bfd_vma, mips_elf_multi_got_entry_hash, - mips_elf_multi_got_entry_eq, mips_elf_bfd2got_entry_hash, - mips_elf_bfd2got_entry_eq, mips_elf_make_got_per_bfd, - mips_elf_merge_gots, mips_elf_set_global_got_offset, - mips_elf_resolve_final_got_entry, - mips_elf_resolve_final_got_entries, mips_elf_adjust_gp, - mips_elf_got_for_ibfd): New functions. - (ELF_MIPS_GP_OFFSET): Don't depend on SGI_COMPAT. - (MIPS_ELF_GOT_MAX_SIZE): New macro. - (STUB_LW): Generate 64-bit stub regardless of SGI_COMPAT. - (mips_elf_got_entry_hash): Take new fields into account. Use - mips_elf_hash_bfd_vma. - (mips_elf_got_entry_eq): Take new fields into account. - (mips_elf_create_got_section): Initialize new fields. - (mips_elf_calculate_relocation): Pass input_bfd to functions - that now take it. Adjust gp for the input_bfd. - (mips_elf_allocate_dynamic_relocation, - mips_elf_create_dynamic_relocation, - _bfd_mips_elf_create_dynamic_sections): Use... - (mips_elf_rel_dyn_section): New function. Borrow code from... - (_bfd_mips_elf_check_relocs): Pass input_bfd to functions that - now take it. Create the got section if needed, even if - excluded, before recording a global got symbol. Move some - code to... - (mips_elf_record_local_got_symbol): New fn. - (_bfd_mips_elf_size_dynamic_sections): Disable combreloc. - Compute multi-got global entries offsets. Move GOT code to... - (_bfd_mips_elf_always_size_sections): Call mips_elf_multi_got - if the GOT is too big. - (_bfd_mips_elf_finish_dynamic_symbol): Set got entry of - undefweak symbol to zero. Generate dynamic relocations for - non-primary GOT entries for global symbols. - (_bfd_mips_elf_finish_dynamic_sections): Handle multi-got - case. Generate dynamic relocations for local got entries. - Sort dynamic relocations on N64 too, using... - (sort_dynamic_relocs_64): New fns. - (_bfd_mips_elf_hide_symbol): Adjust multi-got counters. - (_bfd_mips_elf_merge_private_bfd_data): Ignore EF_MIPS_XGOT. - -2003-01-27 Alexandre Oliva - - * bfd.c (struct _bfd): Added id field. - * opncls.c (_bfd_id_counter): New static variable. - (_bfd_new_bfd): Use it. - * bfd-in2.h: Rebuilt. - -2003-01-25 Alan Modra - - * elf32-sparc.c (bfd_elf32_new_section_hook): Define. - -2003-01-25 Jakub Jelinek - - * elf32-sparc.c (_bfd_sparc_elf_howto_table): Add TLS relocs. - (elf32_sparc_rev32_howto): New variable. - (sparc_reloc_map): Add TLS relocs. - (elf32_sparc_reloc_type_lookup, elf32_sparc_info_to_howto): - Handle REV32. - (sparc_elf_hix22_reloc, sparc_elf_lox10_reloc, elf32_sparc_mkobject): - New functions. - (struct elf32_sparc_dyn_relocs, struct elf32_sparc_link_hash_entry, - struct elf32_sparc_link_hash_table): - New structures. - (elf32_sparc_tdata, elf32_sparc_local_got_tls_type, - elf32_sparc_hash_table): Define. - (link_hash_newfunc, elf32_sparc_link_hash_table_create, - create_got_section, elf32_sparc_create_dynamic_sections, - elf32_sparc_copy_indirect_symbol, elf32_sparc_tls_transition): New - functions. - (elf32_sparc_check_relocs): Handle TLS relocs. Add dynamic reloc - reference counting. - (elf32_sparc_gc_sweep_hook): Likewise. - (elf32_sparc_adjust_dynamic_symbol): Likewise. - (elf32_sparc_size_dynamic_sections): Likewise. - (elf32_sparc_relocate_section): Likewise. - (allocate_dynrelocs, readonly_dynrelocs, dtpoff_base, tpoff): - New functions. - (elf32_sparc_object_p): Allocate backend private object data. - (bfd_elf32_bfd_link_hash_table_create, - elf_backend_copy_indirect_symbol, bfd_elf32_mkobject, - elf_backend_can_refcount): Define. - (elf_backend_create_dynamic_sections): Define to - elf32_sparc_create_dynamic_sections. - * reloc.c: Add SPARC TLS relocs. - * bfd-in2.h, libbfd.h: Rebuilt. - * elf64-sparc.c (sparc64_elf_howto_table): Add TLS relocs. - (sparc_reloc_map): Likewise. - -2003-01-24 Martin Schwidefsky - - * bfd-in2.h: Regenerate. - * elf32-s390.c (elf_s390_mkobject, elf_s390_tls_transition, - s390_tls_reloc, dtpoff_base, tpoff, invalid_tls_insn): New functions. - (elf_howto_table): Add TLS relocs. - (elf_s390_reloc_type_lookup): Likewise. - (elf_s390_link_hash_entry): Add tls_type. - (elf_s390_hash_entry, elf_s390_obj_tdata, elf_s390_local_got_tls_type): - New macros. - (elf_s390_link_hash_table): Add tls_ldm_got. - (link_hash_newfunc): Initialize tls_type. - (elf_s390_link_hash_table_create): Initialize refcount of tls_ldm_got. - (elf_s390_copy_indirect_symbol): Copy tls_type information. - (elf_s390_check_relocs): Support TLS relocs. - (elf_s390_gc_sweep_hook): Likewise. - (allocate_dynrelocs): Likewise. - (elf_s390_size_dynamic_sections): Likewise. - (elf_s390_relocate_section): Likewise. - (elf_s390_finish_dynamic_symbol): Likewise. - (bfd_elf32_mkobject): Define for TLS. - * elf64-s390.c: Same changes as for elf32-s390.c. - * libbfd.h: Regenerate. - * reloc.c: Add s390 TLS relocations. - -2003-01-24 Charles Lepple - - * aclocal.m4: Fix name of --enable-install-libbfd switch. - -2003-01-23 Nick Clifton - - * Add sh2e support: - 2002-04-02 Elena Zannoni - * archures.c (bfd_mach_sh2e): Added. - * bfd-in2.h: Rebuilt. - * cpu-sh.c (arch_info_struct): Added SH2e. - * elf32-sh.c (sh_elf_set_mach_from_flags): Handle EF_SH2E. - -2003-01-23 Alan Modra - - * elf-bfd.h (struct bfd_elf_section_data): Remove tdata. Change - dynindx to an int. Rearrange for better packing. - * elf.c (_bfd_elf_new_section_hook): Don't alloc if already done. - * elf32-mips.c (bfd_elf32_new_section_hook): Define. - * elf32-sh64.h: New. Split out from include/elf/sh.h. - (struct _sh64_elf_section_data): New struct. - (sh64_elf_section_data): Don't dereference sh64_info (was tdata). - * elf32-sh64-com.c: Include elf32-sh64.h. - * elf32-sh64.c: Likewise. - (sh64_elf_new_section_hook): New function. - (bfd_elf32_new_section_hook): Define. - (sh64_elf_fake_sections): Adjust for sh64_elf_section_data change. - (sh64_bfd_elf_copy_private_section_data): Likewise. - (sh64_elf_final_write_processing): Likewise. - * elf32-sparc.c (struct elf32_sparc_section_data): New. - (elf32_sparc_new_section_hook): New function. - (SET_SEC_DO_RELAX, SEC_DO_RELAX): Delete. - (sec_do_relax): Define. - (elf32_sparc_relax_section): Adjust to use sec_do_relax. - (elf32_sparc_relocate_section): Likewise. - * elf64-mips.c (bfd_elf64_new_section_hook): Define. - * elf64-mmix.c (struct _mmix_elf_section_data): New. - (mmix_elf_section_data): Define. Use throughout file. - (mmix_elf_new_section_hook): New function. - (bfd_elf64_new_section_hook): Define. - * elf64-ppc.c (struct _ppc64_elf_section_data): New. - (ppc64_elf_section_data): Define. Use throughout. - (ppc64_elf_new_section_hook): New function. - (bfd_elf64_new_section_hook): Define. - * elf64-sparc.c (struct sparc64_elf_section_data): New. - (sparc64_elf_new_section_hook): New function. - (SET_SEC_DO_RELAX, SEC_DO_RELAX): Delete. - (sec_do_relax): Define. - (sparc64_elf_relax_section): Adjust to use sec_do_relax. - (sparc64_elf_relocate_section): Likewise. - (bfd_elf64_new_section_hook): Define. - * elfn32-mips.c (bfd_elf32_new_section_hook): Define. - * elfxx-mips.c (struct _mips_elf_section_data): New. - (mips_elf_section_data): Define. Use throughout. - (_bfd_mips_elf_new_section_hook): New function. - (mips_elf_create_got_section): Don't alloc used_by_bfd. - * elfxx-mips.h (_bfd_mips_elf_new_section_hook): Declare. - * elfxx-target.h (bfd_elfNN_new_section_hook): Add #ifndef. - * Makefile.am: Run "make dep-am". - * Makefile.in: Regenerate. - -2003-01-21 Richard Henderson - - * elf64-alpha.c (ALPHA_ELF_LINK_HASH_PLT_LOC): New. - (struct alpha_elf_link_hash_entry): Add plt_old_section, plt_old_value. - (elf64_alpha_adjust_dynamic_symbol): Set them. - (elf64_alpha_size_plt_section_1): Reset them when plt entry removed. - (elf64_alpha_relax_tls_get_addr): Handle LDM relocs. Frob the - symbol index when relaxing LDM to TPREL. - (elf64_alpha_relax_section): Likewise. Allow relaxation of GD - relocs, even if the target isn't locally defined. - (elf64_alpha_check_relocs): Frob LDM reloc symndx to zero. - (elf64_alpha_relocate_section): Likewise. Force TP-relative - relocs vs symndx 0 to the tp base. - -2003-01-21 Fabio Alemagna - - * config.bfd: Handle i[3456]86-*-aros*. - -2003-01-21 Andreas Schwab - - * elf32-ppc.c (struct ppc_elf_dyn_relocs): Define. - (struct ppc_elf_link_hash_entry): Define. - (ppc_elf_hash_entry): New function. - (struct ppc_elf_link_hash_table): Define. - (ppc_elf_hash_table): New function. - (ppc_elf_link_hash_newfunc): New function. - (ppc_elf_link_hash_table_create): New function. - (ppc_elf_copy_indirect_symbol): New function. - (allocate_dynrelocs): New function. - (readonly_dynrelocs): New function. - (ppc_elf_size_dynamic_sections): Allocate space for dynamic - relocs and determine DT_TEXTREL. - (ppc_elf_check_relocs): Don't do that here, just count the - dynamic relocs. - (ppc_elf_gc_sweep_hook): Discard any dynamic relocs against the - removed section. - (bfd_elf32_bfd_link_hash_table_create): Define. - (elf_backend_copy_indirect_symbol): Define. - -2003-01-21 Richard Henderson - - * elf64-alpha.c (alpha_dynamic_entries_for_reloc): GOTTPREL and - TPREL also get a reloc if shared. Remove SREL support. - (elf64_alpha_emit_dynrel): New. - (elf64_alpha_relocate_section): Use it. Resolve dynamic TPREL - and GOTTPREL relocs to local symbols against the tp base. - (elf64_alpha_finish_dynamic_symbol): Use elf64_alpha_emit_dynrel. - - * elf64-alpha.c (elf64_alpha_relax_got_load): Decrement got - use count before clobbering r_type. - (elf64_alpha_relax_tls_get_addr): Don't use pos[1] if insn - ordering would mean dataflow inspection is necessary. - -2003-01-20 Svein E. Seldal - - * coffcode.h (coff_set_flags): Added get/set arch hooks. - -2003-01-20 Fabio Alemagna - - * elf32-sh.c: Treat elfNN_bed like other macros defined in - elfxx-target.h and #undef it before #define'ing it. - * elf32-i386.c: Likewise. - * elf32-sh64.c: Likewise. - * elf64-alpha.c: Likewise. - * elf64-sh64.c: Likewise. - -2003-01-20 Martin Schwidefsky - - * bfd-in2.h: Regenerate. - * elf32-s390.c (elf_s390_adjust_gotplt): New prototype. - (elf_howto_table): Rename R_390_GOTOFF to R_390_GOTOFF32. Add - R_390_GOTOFF16, R_390_GOTOFF64, R_390_GOTPLT12, R_390_GOTPLT16, - R_390_GOTPLT32, R_390_GOTPLT64, R_390_GOTPLTENT, R_390_PLTOFF16, - R_390_PLTOFF32 and R_390_PLTOFF64. - (elf_s390_reloc_type_lookup): Likewise. - (struct elf_s390_link_hash_entry): Add gotplt_refcount to keep track - of GOTPLT references to a function. - (link_hash_newfunc): Initialize gotplt_refcount. - (elf_s390_check_relocs): Move allocation of local_got_refcounts array - and creation of the got section out of the main switch. Add support - for the gotoff, gotplt and pltoff relocations. - (elf_s390_gc_sweep_hook): Add reference counting for gotoff, gotplt - and pltoff. - (elf_s390_adjust_gotplt): New function. - (elf_s390_adjust_dynamic_symbol): Adjust gotplt refcount for removed - plt entries. - (allocate_dynrelocs): Add comment. - (elf_s390_relocate_section): Change r_type to unsigned. Add support - for gotoff, gotplt and pltoff relocations. - * elf64-s390.c: Same changes as for elf32-s390.c. - * libbfd.h: Regenerate. - * reloc.c: Add BFD_RELOC_390_GOTOFF64, BFD_RELOC_390_GOTPLT12, - BFD_RELOC_390_GOTPLT16, BFD_RELOC_390_GOTPLT32, BFD_RELOC_390_GOTPLT64, - BFD_RELOC_390_GOTPLTENT, BFD_RELOC_390_PLTOFF16, BFD_RELOC_390_PLTOFF32 - and BFD_RELOC_390_PLTOFF64. - -2003-01-18 Jakub Jelinek - - * elfxx-ia64.c (elfNN_ia64_relocate_section): Handle - R_IA64_TPREL64[LM]SB against non-global symbol properly. - -2003-01-16 Jakub Jelinek - - * elfxx-ia64.c (struct elfNN_ia64_link_hash_table): Add - self_dtpmod_done and self_dtpmod_offset. - (allocate_global_data_got): Only use one got entry for all - dtpmod relocs against local symbols. - (allocate_dynrel_entries): Only need .rela.got entry for - dtpmod against global symbol. - (elfNN_ia64_size_dynamic_sections): Initialize self_dtpmod_offset. - Reserve space in .rela.got for the local dtpmod entry. - (set_got_entry): Initialize the common local dtpmod .got entry. - (elfNN_ia64_relocate_section): Handle R_IA_64_DTPREL64LSB - and R_IA_64_DTPREL64MSB. - -2003-01-16 Alan Modra - - * elf64-ppc.c: Include elf/ppc64.h rather than elf/ppc.h. - (R_PPC_*): Rename all occurrences to R_PPC64_*. - (R_PPC64_ADDR30): Rename all occurrences to R_PPC64_REL30. - (enum elf_ppc_reloc_type): Ditto to enum elf_ppc64_reloc_type. - (ppc64_elf_gc_sweep_hook): Handle R_PPC64_REL30 along with other - relative relocs, not with absolute ones. - * Makefile.am: Run "make dep-am". - * Makefile.in: Regenerate. - * po/SRC-POTFILES.in: Regenerate. - -2003-01-15 Andreas Schwab - - * elf32-ppc.c (ppc_elf_check_relocs): Don't set DF_TEXTREL for a - relocation against a non-allocated readonly section. - -2003-01-10 Alan Modra - - * elf32-ppc.c (ppc_elf_relocate_section): Adjust addend for GOT16_HA. - * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. PLTGOT16_HA too. - -2002-01-08 Klee Dienes - - * Makefile.am (ALL_MACHINES): Use cpu-msp430.lo, not cpu-msp430.c. - (BFD32_BACKENDS): Use elf32-msp430.lo, not elf32-msp430.c. - * Makefile.in: Regenerate. - -2003-01-08 Alexandre Oliva - - * elfn32-mips.c (prev_reloc_section): New. - (GET_RELOC_ADDEND): Use it. Parenthesize macro arguments. - (SET_RELOC_ADDEND): Parenthesize macro argument. - -2003-01-07 John David Anglin - - * elf32-hppa.c (final_link_relocate): For all DP relative relocations, - adjust addil instructions if the symbol has no section. - -2003-01-07 DJ Delorie - - * elf32-xstormy16.c (xstormy16_elf_howto_table): Make REL_12 not - partial_inplace. - -2003-01-07 Andreas Schwab - - * elf32-m68k.c (elf_m68k_check_relocs): Don't set DF_TEXTREL for - PC relative relocations. - (elf_m68k_discard_copies): Set it here instead. - -2002-01-02 Ben Elliston - Jeff Johnston - - * Makefile.am (ALL_MACHINES): Add cpu-iq2000.lo. - (ALL_MACHINES_CFILES): Add cpu-iq2000.c. - (BFD32_BACKENDS): Add elf32-iq2000.lo. - (BFD32_BACKENDS_CFILES): Add elf32-iq2000.c. - (cpu-iq2000.lo): New target. - * Makefile.in: Regenerate. - * config.bfd: Handle iq2000-*-elf. - * archures.c (bfd_architecture): Add bfd_{arch,mach}_iq2000. - (bfd_archures_list): Add bfd_iq2000_arch. - * configure.in: Handle bfd_elf32_iq2000_vec. - * configure: Regenerate. - * reloc.c: Add BFD_RELOC_IQ2000_OFFSET_16, BFD_RELOC_IQ2000_OFFSET_21, - and BFD_RELOC_IQ2000_UHI16. - * targets.c (bfd_elf32_iq2000_vec): Declare. - (bfd_target_vector): Add bfd_elf32_iq2000_vec. - * elf.c (prep_headers): Set e_machine to EM_IQ2000. - * cpu-iq2000.c: New file. - * elf32-iq2000.c: Likewise. - * libbfd.h: Regenerate. - * bfd-in2.h: Likewise. - -2003-01-02 Richard Sandiford - - * elfxx-mips.c: Include libiberty.h. - (elf_mips_isa, _bfd_mips_elf_mach_extends_p): Remove. - (mips_set_isa_flags): New function, split out from... - (_bfd_mips_elf_final_write_processing): ...here. Only call - mips_set_isa_flags if the EF_MIPS_MACH bits are clear. - (mips_mach_extensions): New array. - (mips_32bit_flags_p): New function. - (_bfd_mips_elf_merge_private_bfd_data): Rework architecture checks. - Use mips_32bit_flags_p to check if one binary is 32-bit and the - other is 64-bit. When adopting IBFD's architecture, adopt the - bfd_mach as well as the flags. - -2003-01-02 Nick Kelsey - - * elf32-ip2k.c: Re-work of linker relaxation code for the ip2k to - fix internal errors, fix bad code generation, fix incorrect stabs - information, and improve ability to eliminate redundant page - instructions. Added code to ip2k_final_link_relocate to self-verify - the linker relaxation. Fix formatting problems. - -2002-12-30 Chris Demetriou - - * aoutx.h (NAME(aout,machine_type)): Add bfd_mach_mipsisa32r2 case. - * archures.c (bfd_mach_mipsisa32r2): New define. - * bfd-in2.h: Regenerate. - * cpu-mips.c (I_mipsisa32r2): New enum value. - (arch_info_struct): Add entry for I_mipsisa32r2. - * elfxx-mips.c (elf_mips_isa, _bfd_elf_mips_mach) - (_bfd_mips_elf_print_private_bfd_data): Handle E_MIPS_ARCH_32R2. - (_bfd_mips_elf_final_write_processing): Add - bfd_mach_mipsisa32r2 case. - (_bfd_mips_elf_merge_private_bfd_data): Handle merging of - binaries marked as using MIPS32 Release 2. - -2002-12-30 Dmitry Diky - - * Makefile.am: Add msp430 target. - * configure.in: Likewise. - * Makefile.in: Regenerate. - * configure: Regenerate. - * archures.c: Add msp430 architecture vector. - * config.bfd: Likewise. - * reloc.c: Add msp430 relocs. - * targets.c: Add msp320 target. - * cpu-msp430.c: New file: msp430 cpu detection. - * elf32-msp430.c: New file: msp430 reloc processing. - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - -2002-12-28 Jakub Jelinek - - * elf.c (elf_sort_sections): Don't reorder .tbss. - (assign_file_positions_for_segments): Only adjust off/voff - for increased alignment in PT_LOAD or PT_NOTE segment, - but adjust p_filesz for .tbss too. in PT_LOAD consider - .tbss to have zero memory size. - (copy_private_bfd_data) [SECTION_SIZE]: Define. - [IS_CONTAINED_BY_VMA, IS_CONTAINED_BY_LMA]: Use it. - [INCLUDE_SECTION_IN_SEGMENT]: Only put SHF_TLS sections - into PT_TLS segment. Never put SHF_TLS sections in - segments other than PT_TLS or PT_LOAD. - - * elf64-alpha.c (elf64_alpha_finish_dynamic_sections): Clear .plt - sh_entsize. - -2002-12-23 DJ Delorie - - * coff64-rs6000.c (xcoff64_ppc_relocate_section): Fix logic reversal. - -2002-12-23 Alan Modra - - * elflink.h (elf_link_output_extsym): Heed strip_discarded. - -2002-12-23 Nick Clifton - - * archures.c (bfd_arch_get_compatible): Add third parameter - 'accept_unknowns'. Only accept unknown format BFDs if - accept_unknowns is true, or if the format is "binary". - * bfd-in2.h: Regenerate. - -2002-12-21 Nick Clifton - - * coff-arm.c (coff_arm_relocate_section): Disable WINCE workaround - that subtracted 8 from pc relative relocations. - -2002-12-20 Kazu Hirata - - * coff-h8300.c: Fix comment typos. - * coffcode.h: Likewise. - * cpu-cris.c: Likewise. - * elf32-vax.c: Likewise. - * genlink.h: Likewise. - * linker.c: Likewise. - * som.c: Likewise. - * tekhex.c: Likewise. - * vms-misc.c: Likewise. - -2002-12-20 DJ Delorie - - * reloc.c: Add BFD_RELOC_XSTORMY16_12. - * libbfd.h: Regenerate. - * bfd-in2.h: Regenerate. - * elf32-xstormy16.c (xstormy16_elf_howto): Add R_XSTORMY16_12. - (xstormy16_reloc_map): Add R_XSTORMY16_12. - -2002-12-19 Kazu Hirata - - * doc/bfdint.texi: Fix typos. - -2002-12-20 Paul Eggert - - Port to POSIX 1003.1-2001. - * acinclude.m4 (AM_INSTALL_LIBBFD): Do not rely on "test -o". - * configure.in (build-warnings): Likewise. - (Horrible hacks to build DLLs on Windows): Do not rely on "tail -1". - * aclocal.m4: Regenerate. - * config.in: Regenerate. - * configure: Regenerate. - -2002-12-19 Alan Modra - - * coff-h8300.c: Include libiberty.h. - (h8300_reloc16_extra_cases): Check the hash table creator before - referencing h8300 specific fields. Stash the hash table pointer - in a local var. Comment typo fixes. - (h8300_bfd_link_add_symbols): Likewise. - - * reloc.c (struct reloc_howto_struct): Revise src_mask and - dst_mask comments. - * bfd-in2.h: Regenerate. - -2002-12-18 Alan Modra - - * elf32-ppc.c (ppc_elf_relocate_section): Reorganize dynamic reloc - code a little. Comment on dynamic relocs against section symbols. - -2002-12-17 Roger Sayle - - * configure.host (ia64-*-hpux*): Support 64 bit targets using - the HP compiler's "long long". - -2002-12-16 Andrew MacLeod - - * elf32-xstormy16.c (xstormy16_elf_howto): Add R_XSTORMY16_LO16 - and R_XSTORMY16_HI16) howto entries. - (xstormy16_reloc_map): Map R_XSTORMY16_{LO,HI}16 to BFD_RELOC_{LO,HI}16. - (xstormy16_info_to_howto_rela): Use R_XSTORMY16_GNU_VTINHERIT to - determine the start of the second reloc table. - -2002-12-16 Nathan Tallent - - * ecofflink.c: Fix the reading of the debugging information - of Tru64/Alpha binaries that are produced by recent Compaq - compilers. - (mk_fdrtab): Fix error in creating the FDR (file descriptor) - table. - (lookup_line): Because of the strange information sometimes - generated by Compaq's recent compilers, change how the FDR - table is searched so that PDRs (procedure descriptors) are - correctly found. Note that this change is really more of a hack; - however, I have included extensive documentation as to why - this is the best solution short of an extensive rewrite or - another hack. - (fdrtab_lookup): Add comments to explain the algorithm. - -2002-12-12 Alexandre Oliva - - * elf-m10300.c (elf32_mn10300_link_hash_newfunc): Reorder - initializers to match struct declaration. - -2002-12-12 Alan Modra - - * dwarf2.c (comp_unit_contains_address): Comment typo fix. - * elf.c (get_program_header_size): Likewise. - * elf32-m32r.c (m32r_elf_lo16_reloc): Likewise. - (m32r_elf_generic_reloc): Likewise. - * elf32-ppc.c (ppc_elf_howto_init): Likewise. - * elflink.h (elf_bfd_discard_info): Likewise. - -2002-12-12 Alan Modra - - * elf32-i386.c (elf_i386_finish_dynamic_sections): Add output_offset - to DT_JMPREL. Use srelplt input section size for DT_PLTRELSZ and - DT_RELSZ adjustment, not output section. Avoid writing tags when - unchanged. Don't assume linker script is sane, adjust DT_REL too. - * elf32-hppa.c (elf32_hppa_finish_dynamic_sections): Just use raw - size of srelplt for DT_PLTRELSZ. Use srelplt input section size for - DT_RELASZ adjustment, not output section. Avoid writing tags when - unchanged. Adjust DT_RELA. - * elf64-ppc.c (ppc64_elf_finish_dynamic_sections): Tweaks for better - formatting. Avoid writing tags when unchanged. Adjust DT_RELA. - -2002-12-12 Alexandre Oliva - - * elfxx-mips.c (mips_elf_calculate_relocation): Don't divide - addend by 4. - -2002-12-12 Alexandre Oliva - - * elfxx-mips.c (struct mips_got_entry): New. - (struct mips_got_info): Added got_entries field. - (mips_elf_got_entry_hash, mips_elf_got_entry_eq): New functions. - (mips_elf_local_got_index, mips_elf_got_page, - mips_elf_got16_entry): Re-implement in terms of new... - (mips_elf_create_local_got_entry): Rewrite to use got_entries. - Change return type. - (mips_elf_highest): Warning clean-up. - (mips_elf_create_got_section): Initialize got_entries. - (_bfd_mips_elf_check_relocs): Use got_entries to estimate - local got size. - (_bfd_mips_elf_size_dynamic_sections): Do not account for - GOT_PAGE entries, since we now reuse GOT16 entries. - -2002-12-10 Jason Thorpe - - * aoutx.h (set_section_contents): Allow an otherwise unrepresentable - read-only section that lies after .text and before .data to be - written into the output file and included in a_text. - (translate_to_native_sym_flags): If an otherwise unrepresentable - section was merged with .text, convert its symbols to N_TEXT - symbols. - * libaout.h (aout_section_merge_with_text_p): New macro. - -2002-12-08 Alan Modra - - * bfd-in.h: Comment typo fix. Formatting. - * bfd-in2.h: Regenerate. - * coff64-rs6000.c (xcoff64_openr_next_archived_file): Warning fix. - * elf32-m68hc12.c (m68hc12_elf_set_mach_from_flags): Prototype. - * elf64-mmix.c (mmix_dump_bpo_gregs): Warning fix. - -2002-12-05 Richard Henderson - - * elfxx-ia64.c (elfNN_ia64_relax_section): Handle PCREL21BI. - Only send PCREL21B though the plt. Fix installed reloc type. - (elfNN_ia64_relocate_section): Give error for dynamic reloc - against PCREL22 or PCREL64I; clean up error messages for - branch relocs. - -2002-12-04 Kevin Buettner - - * elf64-mips.c (elf64_mips_grok_prstatus, elf64_mips_grok_psinfo): - New functions. - (elf_backend_grok_prstatus, elf_backend_grok_psinfo): Define. - -2002-12-04 David Mosberger - - * cpu-ia64-opc.c: Add operand constant "ar.csd". - -2002-12-04 H.J. Lu - - * elfxx-ia64.c (get_local_sym_hash): Use section ID instead of - BFD address when constructing local name. - -2002-12-04 Andreas Schwab - - * elf32-m68k.c (struct elf_m68k_link_hash_table): Add sym_sec - member. - (elf_m68k_link_hash_table_create): Initialize it. - (elf_m68k_check_relocs): Handle symbols that are forced to be - local due to visibility changes. - (elf_m68k_adjust_dynamic_symbol): Likewise. - (elf_m68k_size_dynamic_sections): Likewise. - (elf_m68k_discard_copies): Likewise. - (elf_m68k_relocate_section): Likewise. - -2002-12-04 Alan Modra - - * elf64-ppc.c (ppc64_elf_edit_opd): Correct typo. - -2002-12-04 Alan Modra - - * srec.c (srec_write_symbols): Restore '$' prefix to address - accidentally removed in 2002-04-04 change. - (srec_get_symtab): Use 0 instead of `(long) FALSE'. - -2002-12-03 Nick Clifton - - * elf32-ppc.c (apuinfo_list_init): New function. - (apuinfo_list_add): New function: Add a value to the list. - (apuinfo_list_length): New function: Return the number of - values on the list. - (apuinfo_list_element): New function: Return a value on the - list. - (apuinfo_list_finish): New function: Free the resources used - by the list. - (ppc_elf_begin_write_processing): New function. Scan the - input bfds for apuinfo sections. - (ppc_elf_write_section): New function: Delay the creation of - the contents of an apuinfo section in an output bfd. - (ppc_elf_final_write_processing): New function. Create the - contents of an apuinfo section in an output bfd. - (elf_backend_begin_write_processing): Define. - (elf_backend_final_write_processing): Define. - (elf_backend_write_section): Define. - -2002-12-03 Richard Henderson - - * cpu-ia64-opc.c (elf64_ia64_operands): Add ldxmov entry. - -2002-12-01 Stephane Carrez - - Fix PR savannah/1417: - * elf32-m68hc11.c (m68hc11_elf_relax_delete_bytes): Don't adjust - branch if it goes to the start of the deleted region. - -2002-12-01 Stephane Carrez - - * bfd-in2.h (bfd_mach_m6812): Rebuild. - * archures.c (bfd_mach_m6812_default, bfd_mach_m6812, - bfd_mach_m6812s): Declare. - - * elf32-m68hc12.c (m68hc12_elf_set_mach_from_flags): New function. - (_bfd_m68hc12_elf_set_private_flags): Call it. - (_bfd_m68hc12_elf_print_private_bfd_data): Report processor version. - (_bfd_m68hc12_elf_merge_private_bfd_data): Merge the flags and - report microcontroller incompatibilities (HC12 vs HCS12). - (elf_backend_object_p): Update. - -2002-11-30 Alan Modra - - * bfd-in.h (TRUE_FALSE_ALREADY_DEFINED, BFD_TRUE_FALSE): Delete. - (enum bfd_boolean, boolean): Delete. - (bfd_boolean): Typedef to an int. - (FALSE, TRUE): Define. - * aix386-core.c, aix5ppc-core.c, aout-adobe.c, aout-arm.c, aout-cris.c, - aout-encap.c, aout-ns32k.c, aout-target.h, aout-tic30.c, aoutf1.h, - aoutx.h, archive.c, archive64.c, archures.c, bfd-in.h, bfd.c, bfdwin.c, - binary.c, bout.c, cache.c, cisco-core.c, coff-a29k.c, coff-alpha.c, - coff-apollo.c, coff-arm.c, coff-aux.c, coff-h8300.c, coff-h8500.c, - coff-i386.c, coff-i860.c, coff-i960.c, coff-ia64.c, coff-m68k.c, - coff-m88k.c, coff-mcore.c, coff-mips.c, coff-or32.c, coff-ppc.c, - coff-rs6000.c, coff-sh.c, coff-sparc.c, coff-stgo32.c, coff-tic30.c, - coff-tic4x.c, coff-tic54x.c, coff-tic80.c, coff-w65.c, coff-we32k.c, - coff-z8k.c, coff64-rs6000.c, coffcode.h, coffgen.c, cofflink.c, - corefile.c, cpu-a29k.c, cpu-alpha.c, cpu-arc.c, cpu-arm.c, cpu-avr.c, - cpu-cris.c, cpu-d10v.c, cpu-d30v.c, cpu-dlx.c, cpu-fr30.c, cpu-frv.c, - cpu-h8300.c, cpu-h8500.c, cpu-hppa.c, cpu-i370.c, cpu-i386.c, - cpu-i860.c, cpu-i960.c, cpu-ia64.c, cpu-ip2k.c, cpu-m10200.c, - cpu-m10300.c, cpu-m32r.c, cpu-m68hc11.c, cpu-m68hc12.c, cpu-m68k.c, - cpu-m88k.c, cpu-mcore.c, cpu-mips.c, cpu-mmix.c, cpu-ns32k.c, - cpu-openrisc.c, cpu-or32.c, cpu-pdp11.c, cpu-pj.c, cpu-powerpc.c, - cpu-rs6000.c, cpu-s390.c, cpu-sh.c, cpu-sparc.c, cpu-tic30.c, - cpu-tic4x.c, cpu-tic54x.c, cpu-tic80.c, cpu-v850.c, cpu-vax.c, - cpu-w65.c, cpu-we32k.c, cpu-xstormy16.c, cpu-z8k.c, dwarf1.c, - dwarf2.c, ecoff.c, ecofflink.c, efi-app-ia32.c, efi-app-ia64.c, - elf-bfd.h, elf-eh-frame.c, elf-hppa.h, elf-m10200.c, elf-m10300.c, - elf-strtab.c, elf.c, elf32-arc.c, elf32-arm.h, elf32-avr.c, - elf32-cris.c, elf32-d10v.c, elf32-d30v.c, elf32-dlx.c, elf32-fr30.c, - elf32-frv.c, elf32-gen.c, elf32-h8300.c, elf32-hppa.c, elf32-hppa.h, - elf32-i370.c, elf32-i386.c, elf32-i860.c, elf32-i960.c, elf32-ip2k.c, - elf32-m32r.c, elf32-m68hc11.c, elf32-m68hc12.c, elf32-m68k.c, - elf32-mcore.c, elf32-mips.c, elf32-openrisc.c, elf32-or32.c, - elf32-pj.c, elf32-ppc.c, elf32-s390.c, elf32-sh.c, elf32-sh64-com.c, - elf32-sh64.c, elf32-sparc.c, elf32-v850.c, elf32-vax.c, - elf32-xstormy16.c, elf64-alpha.c, elf64-gen.c, elf64-hppa.c, - elf64-mips.c, elf64-mmix.c, elf64-ppc.c, elf64-ppc.h, elf64-s390.c, - elf64-sh64.c, elf64-sparc.c, elf64-x86-64.c, elfarm-nabi.c, - elfarm-oabi.c, elfcode.h, elfcore.h, elflink.c, elflink.h, - elfn32-mips.c, elfxx-ia64.c, elfxx-mips.c, elfxx-mips.h, - elfxx-target.h, format.c, freebsd.h, genlink.h, hash.c, hp300hpux.c, - hppabsd-core.c, hpux-core.c, i386aout.c, i386linux.c, i386lynx.c, - i386mach3.c, i386msdos.c, i386os9k.c, ieee.c, ihex.c, irix-core.c, - libaout.h, libbfd-in.h, libbfd.c, libcoff-in.h, libecoff.h, libieee.h, - libnlm.h, liboasys.h, libpei.h, libxcoff.h, linker.c, lynx-core.c, - m68klinux.c, m68klynx.c, mach-o.c, mach-o.h, merge.c, mipsbsd.c, - mmo.c, netbsd-core.c, netbsd.h, nlm.c, nlm32-alpha.c, nlm32-i386.c, - nlm32-ppc.c, nlm32-sparc.c, nlmcode.h, oasys.c, opncls.c, osf-core.c, - pc532-mach.c, pdp11.c, pe-arm.c, pe-i386.c, pe-mcore.c, pe-mips.c, - pe-sh.c, peXXigen.c, pef.c, pei-arm.c, pei-i386.c, pei-mcore.c, - pei-mips.c, pei-sh.c, peicode.h, ppcboot.c, ptrace-core.c, reloc.c, - reloc16.c, riscix.c, rs6000-core.c, sco5-core.c, section.c, simple.c, - som.c, som.h, sparclinux.c, sparclynx.c, srec.c, stabs.c, sunos.c, - syms.c, targets.c, tekhex.c, ticoff.h, trad-core.c, versados.c, - vms-gsd.c, vms-hdr.c, vms-misc.c, vms-tir.c, vms.c, vms.h, - xcoff-target.h, xcofflink.c, xsym.c, xsym.h: Replace boolean with - bfd_boolean, true with TRUE, false with FALSE. Simplify comparisons - of bfd_boolean vars with TRUE/FALSE. Formatting. - * bfd-in2.h, libbfd.h, libcoff.h: Regenerate - -2002-11-28 Alan Modra - - * elf-bfd.h: Replace occurrences of Elf32_Internal_* and - Elf64_Internal_* with Elf_Internal_*. Replace Elf_Internal_Rel - with Elf_Internal_Rela. - * elf-hppa.h, elf-m10200.c, elf-m10300.c, elf32-arc.c, elf32-arm.h, - elf32-avr.c, elf32-cris.c, elf32-d10v.c, elf32-d30v.c, elf32-dlx.c, - elf32-fr30.c, elf32-frv.c, elf32-gen.c, elf32-h8300.c, elf32-hppa.c, - elf32-i370.c, elf32-i386.c, elf32-i860.c, elf32-i960.c, elf32-ip2k.c, - elf32-m32r.c, elf32-m68hc11.c, elf32-m68hc12.c, elf32-m68k.c, - elf32-mcore.c, elf32-mips.c, elf32-openrisc.c, elf32-or32.c, - elf32-ppc.c, elf32-s390.c, elf32-sh.c, elf32-v850.c, elf32-vax.c, - elf32-xstormy16.c, elf64-alpha.c, elf64-gen.c, elf64-hppa.c, - elf64-mips.c, elf64-mmix.c, elf64-ppc.c, elf64-s390.c, elf64-sh64.c, - elf64-sparc.c, elf64-x86-64.c, elfarm-nabi.c, elfarm-oabi.c, - elfcode.h, elflink.h, elfn32-mips.c, elfxx-ia64.c, elfxx-mips.c: Ditto. - * elf-hppa.h (elf_hppa_internal_shdr): Delete. Use Elf_Internal_Shdr - throughout instead. - * elf.c (_bfd_elf_no_info_to_howto_rel): Delete. - * elfcode.h (elf_swap_reloca_in): Pass source operand as a bfd_byte *. - Remove INLINE keyword. - (elf_swap_reloc_in): Likewise. Also clear r_addend. - (elf_swap_reloc_out, elf_swap_reloca_out): Pass destination operand - as a bfd_byte *. - (elf_write_relocs): Consolidate REL and RELA code. - (elf_slurp_reloc_table_from_section): Simplify REL code. - (NAME(_bfd_elf,size_info)): Populate reloc swap entries. - * elf-bfd.h (MAX_INT_RELS_PER_EXT_REL): Define. - * elflink.h (elf_link_read_relocs_from_section): Consolidate REL and - RELA code. - (elf_link_adjust_relocs): Likewise. Don't malloc space for temp - reloc array, use a fixed size of MAX_INT_RELS_PER_EXT_REL. - (elf_link_output_relocs): Likewise. - (elf_reloc_link_order): Likewise. - (elf_finish_pointer_linker_section): Likewise. - (struct elf_link_sort_rela): Remove union. - (elf_link_sort_cmp1): Update to suit. - (elf_link_sort_cmp2): Here too. - (elf_link_sort_relocs): Consolidate REL and RELA code. Fix memory - over-allocation for int_rels_per_ext_rel != 1 case. - * elf32-arm.h: Update all bfd_elf32_swap_reloc_out calls. - * elf32-i386.c: Likewise. - * elf32-cris.c: Likewise for bfd_elf32_swap_reloca_out. - * elf32-hppa.c, elf32-i370.c, elf32-m68k.c, elf32-ppc.c, elf32-s390.c, - elf32-sh.c, elf32-vax.c, elfxx-mips.c: Likewise. - * elf64-alpha.c: Likewise for bfd_elf64_swap_reloca_out. - * elf64-hppa.c, elf64-mips.c, elf64-ppc.c, elf64-s390.c, elf64-sh64.c, - elf64-sparc.c, elf64-x86-64.c: Likewise. - * elfxx-ia64.c: Likewise for bfd_elfNN_swap_reloca_out. - * elfxx-mips.c (sort_dynamic_relocs): Likewise for - bfd_elf32_swap_reloc_in. - - * elf32-arm.h: Update elf32_arm_info_to_howto calls. - * elf32-mips.c: Likewise for mips_info_to_howto_rel. - (mips_elf64_swap_reloc_in): Zero r_addend. - (mips_elf64_be_swap_reloc_in): Likewise. - (mips_elf64_slurp_one_reloc_table): Simplify. - - * elf64-alpha.c (alpha_elf_size_info): Populate reloc swap entries. - * elf64-hppa.c (hppa64_elf_size_info): Likewise. - * elf64-sparc.c (sparc64_elf_size_info): Likewise. - -2002-11-28 Kaz Kojima - - * elf32-sh.c (sh_elf_relocate_section): Don't complain about - unresolved debugging relocs in dynamic applications. - * elf64-sh64.c (sh_elf64_relocate_section): Likewise. - -2002-11-26 Alan Modra - - * elf-eh-frame.c (ENSURE_NO_RELOCS): Disregard R_*_NONE relocs. - (_bfd_elf_discard_section_eh_frame): Don't discard duplicate CIEs - on a relocatable link. Comment typos. - * elf.c (_bfd_elf_link_hash_newfunc): Assign elements of structure - in the order they are declared. Clear elf_hash_value too. - (_bfd_elf_link_hash_table_init): Likewise assign in order. Clear - eh_info and tls_segment. - * elflink.h (elf_link_input_bfd ): Keep reloc offsets - sorted when discarding relocs by turning them into R_*_NONE. - - * libbfd.c (warn_deprecated): Comment spelling. - * po/SRC-POTFILES.in: Regenerate. - -2002-11-21 Richard Henderson - - * elflink.h (elf_link_add_object_symbols): Don't overwrite the - arch's st_other bits when merging visibilities. - (elf_link_output_extsym): Tidy clearing of visibility field. - -2002-11-21 Alan Modra - - * coff-mcore.c (SWAP_IN_RELOC_OFFSET): Define. - (SWAP_OUT_RELOC_OFFSET): Define. - -2002-11-20 Alexandre Oliva - - * elf.c (_bfd_elf_link_hash_table_init): Make sure - can_refcount is properly extended to the type of - init_refcount. - -2002-11-19 Alexandre Oliva - - * elfxx-mips.c (MIPS_RELOC_RELA_P): New macro. - (_bfd_mips_elf_relocate_section): Use it. - - * elfxx-mips.c (MNAME): New macro. - (_bfd_mips_elf_check_relocs): Use it. - (_bfd_mips_elf_discard_info): Likewise. - (_bfd_mips_elf_final_link): Likewise. - -2002-11-19 Alan Modra - - * elf64-ppc.c (ppc64_elf_edit_opd): When deleting relocs, adjust - rel_hdr.sh_size too. - -2002-11-18 Klee Dienes - - * Makefile.am (BFD32_LIBS): Add bfdwin.lo, bfdio.lo. - (BFD32_LIBS_CFILES): Add bfdwin.c, bfdio.c. - (BFD_H_FILES): Add bfdwin.c, bfdio.c. - (LIBBFD_H_FILES): Add bfdwin.c, bfdio.c. - Add dependencies for bfdwin.c, bfdio.c. - * bfd.c: Remove bfd_get_mtime, bfd_get_size. - * libbfd.c: Remove real_read, bfd_bread, _bfd_window_internal, - bfd_init_window, bfd_free_window, bfd_get_file_window, bfd_bwrite, - bfd_tell, bfd_flush, bfd_stat, bfd_seek. - * bfdio.c: New file. Contains real_read, bfd_bread, bfd_write, - bfd_tell, bfd_flush, bfd_stat, bfd_seek, bfd_ge_mtime, - bfd_get_size (moved from libbfd.c and bfd.c). - * bfdwin.c New file. Contains _bfd_window_internal, - bfd_init_window, bfd_free_window, bfd_get_file_window (moved from - libbfd.c and bfd.c). - * po/SRC-POTFILES.in: Regenerate. - * po/bfd.pot: Regenerate. - * libbfd.h: Regenerate. - * bfd-in2.h: Regenerate. - * aclocal.m4: Regenerate. - * Makefile.in: Regenerate. - * configure: Regenerate. - -2002-11-18 Klee Dienes - - * bfd.c (bfd_preserve_save): Don't zero BFD_IN_MEMORY. - -2002-11-15 Kazu Hirata - - * coff-h8300.c (h8300_reloc16_estimate): Do not optimize away - jsr after a short jump. - * elf32-h8300.c (elf32_h8_relax_section): Likewise. - -2002-11-15 Klee Dienes - - * pef.c (bfd_pef_convert_architecture): Move declaration of - ARCH_POWERPC and ARCH_M68K to the start of the function. - -2002-11-14 Svein E. Seldal - - * coff-tic4x.c (tic4x_howto_table): Formatting fixup - -2002-11-14 Hans-Peter Nilsson - - * elf64-mmix.c (_bfd_mmix_finalize_linker_allocated_gregs): - For bpo_gregs_section->contents, allocate _raw_size, not - _cooked_size. - -2002-11-13 Klee Dienes - - * config.bfd: Add entries for powerpc-*-darwin and cousins. - -2002-11-13 H.J. Lu - - * elfcode.h (elf_object_p): Don't restore abfd->arch_info. - -2002-11-13 Klee Dienes - Alan Modra - - * bfd.c (struct bfd_preserve): New. - (bfd_preserve_save): New function. - (bfd_preserve_restore): Ditto. - (bfd_preserve_finish): Ditto. - * bfd-in2.h: Regenerate. - * mach-o.c: Formatting. - (bfd_mach_o_scan_read_symtab_symbol): Make "value" unsigned. - (bfd_mach_o_object_p): Use bfd_preserve_save/restore/finish. - (bfd_mach_o_core_p): Ditto. - (bfd_mach_o_scan): Pass in mdata. - * mach-o.h (bfd_mach_o_scan): Update prototype. - * pef.c: Formatting. - (bfd_pef_object_p): Use bfd_preserve_save/restore/finish. - (bfd_pef_xlib_object_p): Ditto. - (bfd_pef_scan): Pass in mdata. Move version check to bfd_pef_object_p. - * pef.h (bfd_pef_scan): Update prototype. - * xsym.c: Formatting, K&R fixes. - (bfd_sym_object_p): Use bfd_preserve_save/restore/finish. - (bfd_sym_scan): New function split out from bfd_sym_object_p. - * xsym.h (bfd_sym_scan): Declare. - * elfcode.h (elf_object_p): Use bfd_preserve_save/restore/finish. - * elfcore.h (elf_core_file_p): Likewise. - * targets.c (_bfd_target_vector): Revert 2002-11-08 change. - -2002-11-12 Nick Clifton - - * po/da.po: Updated Danish translation. - -2002-11-12 Alan Modra - - * elflink.h (elf_link_add_object_symbols): Optimize stabs for - relocatable link too. - (elf_link_input_bfd): When emitting relocs, adjust offsets for - eh_frame and stab sections. Zap deleted relocs. - (elf_reloc_symbol_deleted_p): Return true for zero r_symndx. - (elf_bfd_discard_info): Run for relocatable link too. - * elf64-ppc.c (ppc64_elf_edit_opd): Rename from edit_opd. Make global. - Handle ld -r case. - (ppc64_elf_size_dynamic_sections): Don't call edit_opd from here. - * elf64-ppc.h (ppc64_elf_edit_opd): Declare. - - * elf-bfd.h (struct cie_header): Move from elf_eh-frame.c. - (struct cie, struct eh_cie_fde, struct eh_frame_sec_info): Likewise. - (struct eh_frame_array_ent, struct eh_frame_hdr_info): Likewise. - (enum elf_link_info_type): Remove ELF_INFO_TYPE_EH_FRAME_HDR. - (struct eh_frame_hdr_info): Add "hdr_sec", remove "split". - (struct elf_link_hash_table): Add eh_info. - (struct elf_obj_tdata): Change eh_frame_hdr to an asection *. - (_bfd_elf_discard_section_eh_frame): Update prototype. - (_bfd_elf_discard_section_eh_frame_hdr): Likewise. - (_bfd_elf_write_section_eh_frame): Likewise. - (_bfd_elf_write_section_eh_frame_hdr): Likewise. - * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Remove "ehdrsec" - param. Get "hdr_info" from link hash table. - (_bfd_elf_discard_section_eh_frame_hdr): Remove "sec" param. Get - header section from link hash table. Save header section to elf_tdata. - (_bfd_elf_maybe_strip_eh_frame_hdr): Remove local "sec". Use - header section from link hash table. Don't alloc hdr_info. Clear - hdr_sec instead of setting "strip". - (_bfd_elf_eh_frame_section_offset): Formatting. - (_bfd_elf_write_section_eh_frame): Remove "ehdrsec", add "info" param. - Get header section from link hash table. - (_bfd_elf_write_section_eh_frame_hdr): Remove "sec", add "info" param. - Get header section from link hash table. - * elf.c (map_sections_to_segments): Use cached eh_frame_hdr. - (get_program_header_size): Likewise. - (_bfd_elf_section_offset): Formatting. - * elflink.h (elf_link_create_dynamic_sections): Stash eh frame header - section pointer in link hash table. - (elf_bfd_final_link): Adjust _bfd_elf_write_section_eh_frame_hdr - and _bfd_elf_write_section_eh_frame calls. Update comment about - eh_frame entries. - (elf_bfd_discard_info): Adjust _bfd_elf_discard_section_eh_frame and - _bfd_elf_discard_section_eh_frame_hdr calls. Remove "ehdr". - - * po/SRC-POTFILES.in: Regenerate. - - * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't zero - relocs for discarded FDEs. Remove dead code. - (_bfd_elf_write_section_eh_frame_hdr): Remove dead code. - * elflink.h (elf_bfd_discard_info): Don't save edited relocs. - Tidy conditions under which stabs are edited. Formatting. - * elf64-sparc.c (sparc64_elf_relocate_section): Ignore overflows - from discarded relocs. - * elfxx-ia64.c (elfNN_ia64_install_dyn_reloc): Add reloc output - section adjustments after testing magic values. - -2002-11-12 Thomas Moestl - - * elf64-sparc.c (sparc64_elf_adjust_dynamic_symbol): Correct - references to large plt symbols. - -2002-11-12 Klee Dienes - - * mach-o.c (bfd_mach_o_scan_read_thread): Don't re-use 'i' when - looking for an unused section name. - -2002-11-11 Kazu Hirata - - * coff-h8300.c: Fix formatting. - * elf32-h8300.c: Likewise. - * reloc16.c: Likewise. - -2002-11-09 Jeroen Dobbelaere - - * elf32-arm.h (elf32_arm_size_dynamic_sections): Don't strip output - section when dynamic section unused; _bfd_strip_section_from_output - instead. - -2002-11-08 Alan Modra - - * targets.c (_bfd_target_vector): Disable pef_vec, pef_xlib_vec - and sym_vec. - - * dwarf2.c: Revert last change. - -2002-11-07 Michal Ludvig - - * dwarf2.c (read_indirect_string, read_abbrevs, decode_line_info, - _bfd_dwarf2_find_nearest_line): Use - bfd_simple_get_relocated_section_contents() instead of - bfd_get_section_contents(). - * reloc.c (bfd_perform_relocation): Add sanity check. - * simple.c (simple_get_relocated_section_contents): If the section - does not have any relocs associated with it, just return the - unadjusted contents. - -2002-11-07 Hans-Peter Nilsson - - * elf32-cris.c (cris_elf_relocate_section) : Correct test for filling in constant .got - contents, enabling for a non-DSO, for symbols defined in the - program with --export-dynamic. - -2002-11-07 Alan Modra - - * elf64-ppc.c: Comment typo fixes. - (ppc64_elf_merge_private_bfd_data): Allow BFD_ENDIAN_UNKNOWN input. - -2002-11-07 Nick Clifton - - * po/da.po: Updated Danish translation. - -2002-11-06 Alexandre Oliva - - * elf64-mips.c (mips_elf64_slurp_one_reloc_table): Generate - exactly three internal relocs per external reloc. Set reloc_count - to the external reloc count. - -2002-11-06 Klee Dienes - - * coff-stgo32.c (stub_bytes): Mark as const. - Fix comment formatting. - -2002-11-06 Klee Dienes - - * Makefile.am (BFD32_BACKENDS): Add mach-o.lo, pef.lo, and - xsym.lo. - (BFD32_BACKENDS_CFILES): Add mach-o.c, pef.c, and xsym.c. - (SOURCE_HFILES): Add mach-o.h, pef.h, pef-traceback.h, xsym.h - * archures.c (enum bfd_architecture): Add bfd_arch_m98k. - * bfd.c (struct bfd): Add private data for mach-o, pef, and sym. - * targets.c (enum bfd_flavour): Add flavours for mach-o, pef, and - sym. - (_bfd_target_vector): Add target vectors for mach-o, pef, and sym. - * Makefile.in: Regenerate. - * doc/Makefile.in: Regenerate. - * bfd-in2.h: Regenerate. - * xsym.c: New file. Contains support for the Apple/Metrowerks - xSYM debugging format. - * xsym.h: New file. - * pef.c: New file. Contains support for the Apple Code Fragment - Manager Preferred Executable Format - * pef.h: New file. - * pef-traceback.h: New file. Contains support for parsing PowerPC - traceback tables as used by PEF executables (and perhaps other - systems as well). - * mach-o.c: New file. Contains support for the Mach-O object file - format. - * mach-o.h: New file. - * mach-o-target.c: New file. Declares the mach-o targets - themselves. Included three times by mach-o.c; each time with a - different set of macros set. - -2002-11-06 Graeme Peterson - - * Makefile.am: Remove entries for elf32-qnx.[ch]. - * Makefile.in: Regenerate. - * config.bfd: Change arm-nto to use bfd_elf32_{big|little}arm_vec, - ppc-nto to use bfd_elf32_powerpc{le}_vec, sh-nto to use - bfd_elf32_sh{l}_vec, and i386-nto to use bfd_elf32_i386_vec. - * configure.in: Remove support for bfd_elf32_sh{l}qnx_vec, - bfd_elf32_powerpc{le}qnx_vec, bfd_elf32_{big|little}armqnx_vec, - and bfd_elf32_i386qnx_vec, and removed elf32-qnx.lo from other targets. - bfd_elf32_sh{l}_vec, and i386-nto to use bfd_elf32_i386_vec. - * configure: Regenerate. - * elf32-qnx.c: Remove. - * elf32-qnx.h: Remove. - * elf.c: Remove calls to QNX specific set_nonloadable_filepos, - is_contained_by_filepos, and copy_private_bfd_data_p. - * elf-bfd.h (struct elf_backend_data): Remove set_nonloadable_filepos, - is_contained_by_filepos, and copy_private_bfd_data_p. - * elf32-i386.c: Remove QNX extended bfd support. - * elf32-ppc.c: Remove QNX extended bfd support. - * elf32-sh.c: Remove QNX extended bfd support. - * elfarm-nabi.c: Remove QNX extended bfd support. - * targets.c: Remove qnx vectors. - * elfxx-target.h (elf_backend_set_nonloadable_filepos): Remove - (elf_backend_is_contained_by_filepos): Remove. - (elf_backend_copy_private_bfd_data_p): Remove. - * po/SRC-POTFILES.in: Regenerate. - -2002-11-06 David O'Brien - Alan Modra - - * elf64-sparc.c (sparc64_elf_relocate_section): Adjust addend of - dynamic relocs against section symbols for the output section vma. - -2002-11-05 Alan Modra - - * elf32-arm.h (t2a1_push_insn, t2a2_ldr_insn, t2a3_mov_insn, - t2a4_bx_insn, t2a5_pop_insn, t2a6_bx_insn): Remove. - -2002-11-05 Kaz Kojima - Alan Modra - - * config.bfd (sh-*-linux*): Use bfd_elf*_sh64*lin_vec as sh64 - vectors in target_selvecs. - (shle-*-netbsdelf*): Use bfd_elf*_sh64*nbsd_vec as sh64 vectors - in target_selvecs. - (sh-*-netbsdelf*): Likewise. - * configure.in (assocvecs): New variable. Handle assocvecs like - selvecs. - * configure: Regenerate. - * format.c (bfd_check_format_matches): Store bfd_target pointers - in matching_vector instead of target names. Select first target - from bfd_associated_vector that matches a list of ambiguous targets. - * targets.c (_bfd_associated_vector): New array. - (bfd_associated_vector): New variable. - (_bfd_target_vector): Add bfd_elf*_sh64*lin_vec. - * libbfd-in.h (bfd_associated_vector): Declare. - * libbfd.h: Regenerate. - -2002-11-05 Elias Athanasopoulos - - * vms-gsd.c (_bfd_vms_write_gsd): Check that symbol->udata.p is - non-NULL before dereferencing. - -2002-11-04 Kaz Kojima - - * vms.c (vms_object_p): Restore the start address when returning - NULL. - -2002-11-04 Alan Modra - Hans-Peter Nilsson - - * elflink.h (struct elf_final_link_info): Add shndxbuf_size. - (elf_bfd_final_link): Don't bother zeroing symtab_hdr fields. - Set up a larger symshndxbuf, and write it out. Free it on - exit rather than freeing symbuf twice. Correct section index - on output section symbol loop. - (elf_link_output_sym): Accumulate symbol extension section - indices, reallocating symshndxbuf rather than writing it out. - (elf_link_flush_output_syms): Don't flush symshndxbuf. - * elf.c (assign_section_numbers): Init i_shdrp to all zero. - Use bfd_zalloc to clear i_shdrp[0] too. - -2002-11-03 Stephen Clarke - - * elf32-sh64-com.c (sh64_address_in_cranges): Use - _raw_size of cranges section if _cooked_size not yet set. - -2002-11-03 Hans-Peter Nilsson - - * elf32-v850.c (v850_elf_relax_delete_bytes): Correct parameters - for bfd_elf32_swap_symbol_out. - -2002-10-31 David O'Brien - - * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't mix - signed and unsigned in comparison. - -2002-10-30 Daniel Jacobowitz - - * coffcode.h: Remove extraneous '\'. - -2002-10-28 H.J. Lu - - * Makefile.am (targets.lo): Depend on Makefile instead of - config.status. - (archures.lo): Likewise. - * Makefile.in: Regenerated. - -2002-10-25 Jason Thorpe - - * config.bfd (mips*el-*-netbsd*, mips*-*-netbsd*): Add - bfd_elf64_bigmips_vec and bfd_elf64_littlemips_vec to - targ_selvecs. - -2002-10-25 Jim Wilson - - * elf64-sh64.c (sh_elf64_relocate_section): Call - _bfd_elf_rela_local_sym. Handle relocs against STT_SECTION symbol - of SHF_MERGE section. - -2002-10-25 Hans-Peter Nilsson - - * simple.c: Correct placement of ATTRIBUTE_UNUSED. - -2002-10-24 John David Anglin - - * aoutx.h (NAME(aout,swap_ext_reloc_in)): Cast bytes->r_index to - unsigned int. Cast RELOC_BASE10, RELOC_BASE13 and RELOC_BASE22 to - unsigned int. - (NAME(aout,final_link)): Cast enum used in assignment. - (aout_link_write_symbols): Cast enums in comparisons, int values to - boolean, enums in assignments to int. - (aout_link_input_section_std): Cast rel->r_index to unsigned int. - (aout_link_input_section_ext): Likewise. Cast enums used in - comparisons with unsigned ints. - (aout_link_reloc_link_order): Cast enum to int in assignment. - * archive.c (_bfd_generic_read_ar_hdr_mag): Cast result of memchr - calls to char *. - * bfd-in.h (bfd_set_section_vma): Cast enum true to unsigned int in - assignment. - * bfd-in2.h (bfd_set_section_vma): Likewise. - * bfd.c (bfd_record_phdr): Cast enums in assignments. - * binary.c (bfd_alloc): Cast enum to long. - * coffgen.c (_bfd_coff_is_local_label_name): Cast return to boolean. - * dwarf2.c (read_abbrevs): Add casts to enum types. - (read_attribute_value): Likewise. - (arange_add): Cast result of bfd_zalloc call. - (comp_unit_contains_address): Return true and false. - (comp_unit_find_nearest_line): Cast return to boolean. - * format.c (bfd_check_format_matches, bfd_set_format): Likewise. - * gen-aout.c: define macro '_' if not defined. - * libbfd.c (bfd_realloc): Cast malloc and realloc to PTR. - (bfd_bwrite): Cast bfd_realloc to bfd_byte *. - (bfd_write_bigendian_4byte_int): Cast return to boolean. - (bfd_seek): Cast bfd_realloc to bfd_byte *. - (bfd_generic_is_local_label_name): Cast return to boolean. - * libcoff.h (_bfd_coff_adjust_symndx): Remove extraneous '\'. - * linker.c (_bfd_link_hash_newfunc): Cast bfd_hash_allocate result to - struct bfd_hash_entry *. - (_bfd_generic_link_hash_newfunc): likewise. - (_bfd_generic_final_link): Cast enum to unsigned int. - * merge.c (sec_merge_emit): Cast return to boolean. - (merge_strings): Add casts to const unsigned char *. - * reloc.c (bfd_get_reloc_code_name): Cast enums in comparison to int. - (bfd_generic_get_relocated_section_content): Cast enum to unsigned int. - * section.c (bfd_section_hash_newfunc): Cast bfd_hash_allocate result - to struct bfd_hash_entry *. - (bfd_set_section_content): Add cast to PTR in comparison. - * simple.c (simple_dummy_warning, simple_dummy_undefined_symbol, - simple_dummy_reloc_overflow, simple_dummy_reloc_dangerous, - simple_dummy_unattached_reloc, - bfd_simple_get_relocated_section_contents): Add K&R declarations and - function definitions. - * srec.c (S3Forced): Initialize to false. - (srec_get_symtab): Cast return value from bfd_alloc to asymbol *. - * stabs.c (_bfd_link_section_stabs): Cast enum to int in comparisons. - (_bfd_discard_section_stabs): Likewise. Also cast return to boolean. - * syms.c (bfd_is_undefined_symclass): Cast return to boolean. - (_bfd_stab_section_find_nearest_line): Cast enum to bfd_byte in - comparisons. - -2002-10-23 Jakub Jelinek - - * elf64-alpha.c (elf64_alpha_check_relocs): Only put maybe_dynamic - relocs into shared lib non-allocated reloc sections. - -2002-10-23 Nathan Tallent - - * dwarf2.c (add_line_info): Ensure that the line_info_table is - sorted even when given an out-of-order line sequence. - (lookup_address_in_line_info_table): When an exact VMA match is - not found, return line information with the closest VMA. - -2002-10-23 Ross Alexander - - * elf64-hppa.c: Force DT_FLAGS to always be set. Required by - HPUX 11.00 patch PHSS_26559. - -2002-10-22 Alexandre Oliva - - * elfxx-mips.c (_bfd_mips_elf_modify_segment_map): Don't move - the options section into a separate section unless IRIX 6 - compatibility is enabled. - -2002-10-22 Alexandre Oliva - - * elflink.h (struct elf_link_sort_rela): Turn rel and rela - into arrays. - (elf_link_sort_cmp1, elf_link_sort_cmp2): Adjust. - (elf_link_sort_relocs): Likewise. Take int_rels_per_ext_rel - into account. - * elfxx-mips.c (mips_elf_create_dynamic_relocation): Compose - R_MIPS_REL32 with R_MIPS64 if ABI_64_P. - -2002-10-21 Graeme Peterson - - * targets.c (_bfd_target_vector): Add missing qnx vectors. - -2002-10-21 Alan Modra - - * targets.c (bfd_target_list): Don't return the default target twice. - -2002-10-21 Elias Athanasopoulos - - * archive.c (_bfd_archive_bsd_update_armap_timestamp): Replace - perror with bfd_perror. - -2002-10-19 H.J. Lu - - * elflink.h (elf_link_add_object_symbols): Correctly handle - DT_RPATH and DT_RUNPATH. - -2002-10-19 Mark Kettenis - - * elf.c (elfcore_grok_note): Fix recognition on NT_PRXFPREG notes. - -2002-10-17 Denis Chertykov - - * elf32-ip2k.c (ELF_MACHINE_ALT1): Define alternate machine code - for ip2k port. - -2002-10-17 Alan Modra - - * elfxx-target.h (USE_REL): Don't define as 1. - * elf32-arm.h (USE_REL): Provide a default define of 0. - Use #if rather than #ifdef when testing USE_REL. - * elf32-m32r.c: Likewise. - - * elf32-arc.c (USE_REL): Define as 1. - * elf32-d10v.c (USE_REL): Likewise. - * elf32-m32r.c (USE_REL): Likewise. - * elf32-m68hc11.c (USE_REL): Likewise. - * elf32-m68hc12.c (USE_REL): Likewise. - * elf32-or32.c (USE_REL): Likewise. - * elfarm-nabi.c (USE_REL): Likewise. - -2002-10-16 Jakub Jelinek - - * config.bfd (s390-*-linux*): Add targ64_selvecs. - (s390x-*-linux*): Add targ_selvecs. - -2002-10-16 Alan Modra - - * Makefile.am (BFD32_BACKENDS): Remove elfarmqnx-nabi.lo, - elf32-i386-fbsd.lo, elf32-i386qnx.lo, elf32-ppcqnx.lo, - elf32-sh-lin.lo, elf32-sh64-lin.lo, elf32-sh-nbsd.lo, - elf32-sh64-nbsd.lo, elf32-shqnx.lo. Add elf32-qnx.lo. - (BFD32_BACKENDS_CFILES): Likewise for corresponding C files. - (BFD64_BACKENDS): Remove elf64-sh64-lin.lo, elf64-sh64-nbsd.lo. - (BFD64_BACKENDS_CFILES): Likewise for corresponding C files. - (SOURCE_HFILES): Add elf32-qnx.h. - (BUILD_HFILES): Add bfdver.h. - Run "make dep-am". - * Makefile.in: Regenerate. - * configure.in Update bfd vector dependencies. - * configure: Regenerate. - * elf32-i386-fbsd.c: Delete. Move code to elf32-i386.c. - * elf32-i386qnx.c: Likewise. - * elf32-ppcqnx.c: Delete. Move code to elf32-ppc.c. - * elf32-sh-nbsd.c: Delete. Move code to elf32-sh.c. - * elf32-sh-lin.c: Likewise. - * elf32-shqnx.c: Likewise. - * elf32-sh64-lin.c: Delete. Move code to elf32-sh64.c. - * elf32-sh64-nbsd.c: Likewise. - * elf64-sh64-lin.c: Delete. Move code to elf64-sh64.c. - * elf64-sh64-nbsd.c: Likewise. - * elfarmqnx-nabi.c: Delete. Move code to elfarm-nabi.c. - * elf32-arm.h (ELF_MAXPAGESIZE): Always define. - * elf32-i386.c: Remove ELF_ARCH and ELF32_I386_C_INCLUDED tests. - * elf32-ppc.c: Remove ELF32_PPC_C_INCLUDED tests. - * elf32-qnx.h (elf_backend_set_nonloadable_filepos): Always define. - (elf_backend_is_contained_by_filepos): Likewise. - (elf_backend_copy_private_bfd_data_p): Likewise. - Globalize and move functions to.. - * elf32-qnx.c: ..here. New file. - * elf32-sh.c: Remove ELF_ARCH and ELF32_SH_C_INCLUDED tests. Don't - emit target vectors when INCLUDE_SHMEDIA. - * elf32-sh64.c: Remove ELF_ARCH test. Move TARGET_* etc. defines to - end of file. - * elf64-sh64.c: Remove ELF_ARCH test. - * elfarm-nabi.c: Remove ELFARM_NABI_C_INCLUDED test. - * po/BLD-POTFILES.in: Regenerate. - * po/SRC-POTFILES.in: Regenerate. - -2002-10-16 Alan Modra - - * elflink.h (elf_link_add_object_symbols): Error out on dynamic objects - loaded with --just-symbols. - - * elf32-i386qnx.c (TARGET_LITTLE_NAME): Define. - * elf32-ppcqnx.c (TARGET_LITTLE_NAME, TARGET_BIG_NAME): Define. - * elf32-shqnx.c (TARGET_LITTLE_NAME, TARGET_BIG_NAME): Define. - * elfarmqnx-nabi.c (TARGET_LITTLE_NAME, TARGET_BIG_NAME): Define. - -2002-10-15 Richard Henderson - - * Makefile.am (BFD64_BACKENDS): Remove elf64-alpha-fbsd. - (BFD64_BACKENDS_CFILES): Likewise. - * configure.in (bfd_elf64_alpha_freebsd_vec): Use elf64-alpha. - * elf64-alpha-fbsd.c: Remove file, move code ... - * elf64-alpha.c: ... here. - * Makefile.in, configure: Rebuild. - -2002-10-14 Richard Henderson - - * elf64-alpha.c (elf64_alpha_relocate_section) [BRSGP]: Increment - VALUE, not ADDEND. - -2002-10-14 Stephen Clarke - - * elf32-sh.c (elf_sh_link_hash_entry): Replace - datalabel_got_offset with union of datalabel_got - offset and refcount. - (sh_elf_link_hash_newfunc): Initialize datalabel_got.refcount. - (allocate_dynrelocs): Delete unnecessary code for - STT_DATALABEL type. Create entry in got for - datalabel version of symbol if datalabel_got.refcount > 0. - (sh_elf_relocate_section): Use datalabel_got union. - (sh_elf_gc_sweep_hook): Pull common code to initialize - h and eh out of switch statement. Declare seen_stt_datalabel. - Initialize it. Decrement datalabel_got.refcount for - got relocs when seen_stt_datalabel is true. - Decrement local_got_refcounts entry for datalabel got relocs - of local symbols. - (sh_elf_copy_indirect_symbol): Copy datalabel_got field over. - (sh_elf_check_relocs): Declare seen_stt_datalabel. - Initialize it. When seen_stt_datalabel is true, increment - datalabel_got refcount rather than got.refcount. - (sh_elf_finish_dynamic_symbol): Create relocs to - initialize got entry for datalabel version of symbol. - -2002-10-14 Alan Modra - - * Makefile.am: Run "make dep-am". - (BFD_H_FILES): Remove version.h. - * bfd-in.h (BFD_VERSION, BFD_VERSION_DATE, BFD_VERSION_STRING): Move.. - * version.h: ..to here. - * configure.in (bfd_version_date): Remove. - (AC_OUTPUT): Make bfdver.h from version.h. - * bfd.c: #include "bfdver.h". - * vms-hdr.c: Likewise. - * Makefile.in: Regenerate. - * bfd-in2.h: Regenerate. - * configure: Regenerate. - * po/SRC-POTFILES.in: Regenerate. - -2002-10-14 Alan Modra - - * archures.c (bfd_mach_i386_i386, bfd_mach_i386_i8086, - bfd_mach_i386_i386_intel_syntax, bfd_mach_x86_64, - bfd_mach_x86_64_intel_syntax bfd_mach_ppc, bfd_mach_ppc64, - bfd_mach_rs6k, bfd_mach_d10v, bfd_mach_sh, bfd_mach_v850, - bfd_mach_arc_5, bfd_mach_arc_6, bfd_mach_arc_7, bfd_mach_arc_8, - bfd_mach_m32r, bfd_mach_frv, bfd_mach_frvsimple, - bfd_mach_ia64_elf64, bfd_mach_ia64_elf32, - bfd_mach_ip2022, bfd_mach_ip2022ext, - bfd_mach_s390_31, bfd_mach_s390_64, bfd_mach_xstormy16): Renumber. - * bfd-in2.h: Regenerate. - -2002-10-14 Kaz Kojima - - * config.bfd (sh*eb-*-linux*, sh*-*-linux*): Add the alternative - endian vector to targ_selvecs. - -2002-10-13 Alexandre Oliva - - * elfxx-mips.c (mips_elf_calculate_relocation): Take - save_addend argument. Don't apply the 32-bit mask to a - GPREL32 value if it's to be used in another relocation. Don't - use forced-check computation of local_p to decide whether to - add gp0 to GPREL16 value. Don't use only the lowest 16 bits - of the addend of a non-in-place GPREL16 relocation. - (_bfd_mips_elf_relocate_section): Pass use_saved_addend_p to - mips_elf_calculate_relocation(). - -2002-10-12 Stephane Carrez - - * elf32-m68hc11.c (m68hc11_elf_relax_section): Don't treat relocs - with symbols in other sections if we relaxed something; the sections - output offsets must be re-computed before. - -2002-10-12 Stephane Carrez - - * elf32-m68hc11.c (m68hc11_elf_relax_section): Update symbols - handling to use Elf_Internal_Sym. - (m68hc11_elf_relax_delete_bytes): Likewise. - -2002-10-11 Kaz Kojima - - * elf32-sh.c (sh_elf_optimized_tls_reloc, sh_elf_mkobject, - sh_elf_object_p, dtpoff_base): New functions. - (sh_elf_howto_table): Add TLS relocs. - (sh_reloc_map): Likewise. - (sh_elf_info_to_howto): Support TLS relocs. - (elf_sh_link_hash_entry): Add tls_type and tls_tpoff32. - (sh_elf_hash_entry, sh_elf_tdata, sh_elf_local_got_tls_type): - New macros. - (sh_elf_obj_tdata): New. - (elf_sh_link_hash_table): Add tls_ldm_got. - (sh_elf_link_hash_table_create): Clear refcount of tls_ldm_got. - (allocate_dynrelocs): Support TLS relocs. - (sh_elf_size_dynamic_sections): Likewise. - (sh_elf_relocate_section): Support TLS relocs. Don't try to find - .rela.got section when found already. Return false after printing - error about unresolvable relocation. - (sh_elf_gc_sweep_hook): Support TLS relocs. - (sh_elf_check_relocs): Likewise. - (sh_elf_finish_dynamic_symbol): Likewise. - (bfd_elf32_mkobject, elf_backend_object_p): Define for TLS case. - * reloc.c: Add SH TLS relocs. - * bfd-in2.h, libbfd.h: Regenerate. - -2002-10-11 Daniel Jacobowitz - - * Makefile.in: Regenerated. - -2002-10-11 Daniel Jacobowitz - - * Makefile.am: Run dep-am. - (BFD_H_DEP): Add simple.c and linker.c. - (BFD32_LIBS): Add simple.lo. - (BFD32_LIBS_CFILES): Add simple.c. - * Makefile.in: Regenerated. - * bfd-in2.h: Regenerated. - * simple.c: New file. - -2002-10-11 Alan Modra - - * coff-arm.c (record_arm_to_thumb_glue): Avoid type-punned pointers. - (record_thumb_to_arm_glue): Likewise. - * ecoff.c (ecoff_link_add_externals): Likewise. - * elf32-arm.h (record_arm_to_thumb_glue): Likewise. - (record_thumb_to_arm_glue): Likewise. - * elf32-m32r.c (m32r_elf_add_symbol_hook): Likewise. - * elf32-sh.c (sh_elf_create_dynamic_sections): Likewise. - * elf32-sh64.c (sh64_elf_add_symbol_hook): Likewise. - * elf64-alpha.c (elf64_alpha_create_dynamic_sections): Likewise. - * elf64-ppc.c (func_desc_adjust): Likewise. - * elf64-sh64.c (sh64_elf64_add_symbol_hook): Likewise. - (sh64_elf64_create_dynamic_sections): Likewise. - * elflink.c (_bfd_elf_create_got_section): Likewise. - (_bfd_elf_create_dynamic_sections): Likewise. - (_bfd_elf_create_linker_section): Likewise. - * elflink.h (elf_add_default_symbol): Likewise. - (elf_link_create_dynamic_sections): Likewise. - (NAME(bfd_elf,size_dynamic_sections)): Likewise. - * elfxx-ia64.c (elfNN_ia64_aix_add_symbol_hook): Likewise. - * elfxx-mips.c (mips_elf_create_got_section): Likewise. - (_bfd_mips_elf_add_symbol_hook): Likewise. - (_bfd_mips_elf_create_dynamic_sections): Likewise. - * linker.c (generic_link_add_symbol_list): Likewise. - * xcofflink.c (xcoff_link_add_symbols): Likewise. - - * elfxx-ia64.c (oor_brl, oor_ip): Conditionally define. - - * elf64-ppc.c (edit_opd): Only zero opd syms when function is - completely removed. Correct local sym adjustment. - -2002-10-10 Stephen Clarke - - * elf32-sh.c (elf_sh_pic_plt_entry_be, elf_sh_pic_plt_entry_le): - Correct mistake in calculation of address of .got. - * elf64-sh64.c (elf_sh64_pic_plt_entry_be, - elf_sh64_pic_plt_entry_le): Likewise. - -2002-10-09 Richard Shann - Stephen Clarke - - * Makefile.am: Add entries for elf32-sh64-lin.c and - elf64-sh64-lin.c. Regenerate. - * Makefile.in: Regenerate. - * config.bfd: Change sh64eb-*-linux* and sh64-*-linux* - to use sh64 vectors rather than sh vectors. - * configure.in: Add bfd_elf32_sh64lin_vec, bfd_elf32_sh64blin_vec, - bfd_elf64_sh64lin_vec, bfd_elf64_sh64blin_vec. - * configure: Regenerate. - * elf32-sh64-lin.c: New file. - * elf64-sh64-lin.c: New file. - * targets.c: Add bfd_elf32_sh64lin_vec, bfd_elf32_sh64blin_vec, - bfd_elf64_sh64lin_vec, bfd_elf64_sh64blin_vec. - -2002-10-08 H.J. Lu - - * elf32-i386.c (elf_i386_relocate_section): Re-arrange the - IE->LE transition for R_386_TLS_IE. - -2002-10-08 Alan Modra - - * elf64-ppc.c (edit_opd): Correct test for discarded sections. - -2002-10-07 Mark Elbrecht - - * cofflink.c (mark_relocs): Don't mark relocations in excluded - sections. - -2002-10-07 Alan Modra - - * elflink.h (elf_link_input_bfd): Remove BFD_VERSION_DATE dependent - code. - - * elf64-ppc.c (ppc64_elf_build_stubs): Increment .glink indx. - -2002-10-06 Alan Modra - - * opncls.c: Formatting. - (_bfd_new_bfd): Use a smaller section hash table. - -2002-10-05 Alexandre Oliva - - * elfxx-mips.c (mips_elf_create_dynamic_relocation): Set the type - of the other two relocations packed with a REL32 to NONE. - -2002-10-02 Stephen Clarke - - * elf32-sh.c (elf_sh_link_hash_entry): Add gotplt_refcount. - (sh_elf_link_hash_newfunc): Initialize it. - (allocate_dynrelocs): Transfer gotplt refs from plt.refcount - to got.refcount for symbols that are forced local or when - we have direct got refs. - (sh_elf_gc_sweep_hook): Adjust gotplt_refcount. Use it - to correctly adjust got.refcount and plt.refcount. - (sh_elf_copy_indirect_symbol): Copy gotplt_refcount across. - (sh_elf_check_relocs): Increment gotplt_refcount. - -2002-10-01 Jakub Jelinek - - * elf32-i386.c (elf_i386_relocate_section): Fix - movl foo@indntpoff, %eax IE->LE transition. - -2002-10-01 Jakub Jelinek - - * elf64-x86-64.c (elf64_x86_64_relocate_section): Change TLSGD - sequence and its transitions. - -2002-10-01 Jakub Jelinek - - * elf32-i386.c (elf_i386_relocate_section): Resolve R_386_TLS_LDO_32 - to st_value + addend in non-code sections. - * elf64-x86-64.c (elf64_x86_64_relocate_section): Resolve - R_X86_64_DTPOFF32 to st_value + addend in non-code sections. - -2002-09-30 Gavin Romig-Koch - Ken Raeburn - Aldy Hernandez - Eric Christopher - Richard Sandiford - - * archures.c (bfd_mach_mips4120, bfd_mach_mips5400): New. - (bfd_mach_mips5500): New. - * cpu-mips.c (I_mips4120, I_mips5400, I_mips5500): New. - (arch_info_struct): Add corresponding entries here. - * elfxx-mips.c (_bfd_elf_mips_mach): Handle E_MIPS_MACH_4120, - E_MIPS_MACH_5400 and E_MIPS_MACH_5500. - (_bfd_mips_elf_final_write_processing): Handle bfd_mach_mips4120, - bfd_mach_mips5400 and bfd_mach_mips5500. - (_bfd_mips_elf_mach_extends_p): New function. - (_bfd_mips_elf_merge_private_bfd_data): Use it to help merge - the EF_MIPS_MACH flags. - * bfd-in2.h: Regenerate. - -2002-09-28 Jason Thorpe - - * elf32-vax.c (elf_vax_size_dynamic_section): Don't strip - .got sections. - -2002-09-28 Alan Modra - - * elf.c (map_sections_to_segments): Correct test for start of - writable section in the same page as end of read-only section. - -2002-09-27 Matt Thomas - - * elf32-vax.c (elf_vax_check_relocs): Remove unused - local_got_refcounts usage. Remove allocation of got slot. - (elf_vax_gc_sweep_hook): Remove unused local_got_refcounts usage. - Remove de-allocation of got slot. - (elf_vax_size_dynamic_section): Fix some indentation. Add hash - traversal for elf_vax_instantiate_got_entries. Allow empty .got - sections to be GC'ed. - (elf_vax_instantiate_got_entries): New function. - (elf_vax_relocate_section): Simplify R_VAX_GOT32 handling. Remove - tests that are now handled by elf_vax_instantiate_got_entries. - Assert GOT entry falls within .got section size. Remove redundant - comparisions. Fix comments. - -2002-09-27 Jakub Jelinek - - * reloc.c: Add x86-64 TLS relocs. - * bfd-in2.h, libbfd.h: Rebuilt. - * elf64-x86-64.c (x86_64_elf_howto): Fix size fields for 32-bit - relocs. Add TLS relocs. - (x86_64_reloc_map): Add TLS relocs. - (elf64_x86_64_info_to_howto): Adjust for added TLS relocs. - (struct elf64_x86_64_link_hash_entry): Add tls_type field. - (GOT_UNKNOWN, GOT_NORMAL, GOT_TLS_GD, GOT_TLS_IE): Define. - (elf64_x86_64_hash_entry): Define. - (struct elf64_x86_64_obj_tdata): New. - (elf64_x86_64_tdata, elf64_x86_64_local_got_tls_type): Define. - (struct elf64_x86_64_link_hash_table): Add tls_ld_got. - (link_hash_newfunc): Initialize tls_type. - (elf64_x86_64_link_hash_table_create): Initialize tls_ld_got. - (elf64_x86_64_copy_indirect_symbol): Swap tls_type if necessary. - (elf64_x86_64_mkobject): New. - (elf64_x86_64_elf_object_p): Allocate struct elf64_x86_64_obj_tdata. - (elf64_x86_64_tls_transition): New. - (elf64_x86_64_check_relocs): Add r_type variable and use it. - Handle TLS relocs. - (elf64_x86_64_gc_sweep_hook): Handle TLS relocs. - (allocate_dynrelocs): Allocate GOT space for TLS relocs. - (elf64_x86_64_size_dynamic_sections): Likewise. - (dtpoff_base, tpoff): New. - (elf64_x86_64_relocate_section): Handle TLS relocs. - (elf64_x86_64_finish_dynamic_symbol): Only handle non-TLS GOT - entries. - (bfd_elf64_mkobject): Define. - - * elf32-i386.c (elf_i386_check_relocs) [R_386_TLS_LE]: Set - DF_STATIC_TLS if shared. - -2002-09-26 Thiemo Seufer - - * elfxx-mips.c (_bfd_mips_elf_fake_sections): Don't emit unneeded - empty relocation sections. - -2002-09-26 Alan Modra - - * elf64-ppc.c (ppc_build_one_stub): Don't build glink stubs here. - (ppc64_elf_build_stubs): Build them here instead. - -2002-09-24 Jakub Jelinek - - * elf32-sparc.c (elf32_sparc_relocate_section): Put R_SPARC_RELATIVE - addend into r_addend, not *r_offset. - (elf32_sparc_finish_dynamic_symbol): Likewise. - * elf64-sparc.c (sparc64_elf_finish_dynamic_symbol): Clear xword at - R_SPARC_RELATIVE's r_offset. - -2002-09-23 Nathan Tallent - - * dwarf2.c (decode_line_info): Update to correctly decode - the (non-standard DWARF2) out-of-order address sequences - generated by the Intel C++ 6.0 compiler for ia64-Linux. - -2002-09-23 Mark Elbrecht - - * config.bfd: For DJGPP targets, match with any cpu and any machine. - -2002-09-23 Alan Modra - - * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Zero relocs - for discarded FDEs. Remove redundant assignment. - * elflink.h (elf_bfd_discard_info): Save edited relocs. - -2002-09-22 H.J. Lu - - * elf64-alpha.c (elf64_alpha_merge_ind_symbols): Don't merge - the relocation count between different .reloc sections. - -2002-09-21 Alan Modra - - * elf32-ppc.c (ppc_elf_relocate_section): Allow ".sbss.*" and - ".sdata.*" for R_PPC_SDAREL16, ".sbss2*" and ".sdata2*" for - R_PPC_EMB_SDA2REL. Similarly for R_PPC_EMB_SDA21 and - R_PPC_EMB_RELSDA. - - * elfcode.h (elf_slurp_reloc_table_from_section): Make "symcount" - unsigned. Move "symcount" assignment out of loop. - * Makefile.am: Run "make dep-am". - * Makefile.in: Regenerate. - * configure: Regenerate. - * po/SRC-POTFILES.in: Regnerate. - -2002-09-19 Nathan Tallent - - * dwarf2.c (_bfd_dwarf2_find_nearest_line): If address length is - zero, set it to 8 for (non-standard) 64-bit DWARF2 formats - (e.g. IRIX64). - -2002-09-19 Jakub Jelinek - - * elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Clear .got word - even if generating R_PPC_RELATIVE reloc. - (ppc_elf_relocate_section): Make sure relocation is performed - if skip == -2. Clear memory at r_offset when creating dynamic - relocation. - -2002-09-19 Jakub Jelinek - - * reloc.c (BFD_RELOC_386_TLS_TPOFF, BFD_RELOC_386_TLS_IE, - BFD_RELOC_386_TLS_GOTIE): Add. - * bfd-in2.h, libbfd.h: Rebuilt. - * elf32-i386.c (elf_howto_table): Add R_386_TLS_TPOFF, R_386_TLS_IE - and R_386_TLS_GOTIE. - (elf_i386_reloc_type_lookup): Handle it. - (struct elf_i386_link_hash_entry): Change tls_type type to unsigned - char instead of enum, change GOT_* into defines. - (GOT_TLS_IE_POS, GOT_TLS_IE_NEG, GOT_TLS_IE_BOTH): Define. - (elf_i386_tls_transition): Handle R_386_TLS_IE and R_386_TLS_GOTIE. - (elf_i386_check_relocs): Likewise. Avoid crash if local symbol is - accessed both as normal and TLS symbol. Move R_386_TLS_LDM and - R_386_PLT32 cases so that R_386_TLS_IE can fall through. - Handle R_386_TLS_LE_32 and R_386_TLS_LE in shared libs. - (elf_i386_gc_sweep_hook): Handle R_386_TLS_IE and R_386_TLS_GOTIE. - Handle R_386_TLS_LE_32 and R_386_TLS_LE in shared libs. - (allocate_dynrelocs): Allocate 2 .got and 2 .rel.got entries if - tls_type is GOT_TLS_IE_BOTH. - (elf_i386_size_dynamic_sections): Likewise. - (elf_i386_relocate_section): Handle R_386_TLS_IE and R_386_TLS_GOTIE. - Handle R_386_TLS_LE_32 and R_386_TLS_LE in shared libs. - (elf_i386_finish_dynamic_symbol): Use tls_type & GOT_TLS_IE to catch - all 4 GOT_TLS_* TLS types. - -2002-09-19 Nick Clifton - - * elflink.h (elf_fix_symbol_flags): When examining weak symbols, - follow indirect links. - -2002-09-19 Nathan Tallent - - * ecoffswap.h (ecoff_swap_pdr_in) : Update to - correctly sign-extend 32-bit ECOFF null values (0xffffffff, -1) - on 64 bit machines. - (ecoff_swap_sym_in) : Likewise. - * ecoff.c (_bfd_ecoff_slurp_symbolic_info): Fix error reading - ECOFF information: 'ioptMax' refers to the actual *size* - of the optimization symtab, not the number of entries. - -2002-09-19 Daniel Jacobowitz - - * elf32-arm.h (elf32_arm_adjust_dynamic_symbol): Update - ELF_LINK_HASH_NEEDS_PLT logic. - -2002-09-18 Daniel Jacobowitz - - * elfcode.h (elf_slurp_reloc_table_from_section): Check - correct relocation count. - -2002-09-17 Daniel Jacobowitz - - * bfd-in.h (bfd_get_dynamic_symcount): Define. - * bfd.c (struct _bfd): Add dynsymcount. - * bfd-in2.h: Regenerated. - * elf.c (_bfd_elf_canonicalize_dynamic_symtab): Set - abfd->dynsymcount. - * elfcode.h (elf_slurp_reloc_table_from_section): Check - for overflow. - -2002-09-17 Stan Cox - - * elf64-mips.c (mips_elf64_be_swap_reloca_out): Handle type2 and type3. - (mips_elf64_final_gp): Don't make up gp value. - * elfn32-mips.c (mips_elf_final_gp): Likewise. - * elfxx-mips.c (_bfd_mips_elf_final_link): Always create - .MIPS.options/.options section. - -2002-09-17 David O'Brien - - * elf32-i386-fbsd.c: Always label using the EI_OSABI method. - It is benign for FreeBSD < 4.1. Minor reformatting. - * elf64-alpha-fbsd.c: Likewise. - -2002-09-17 Jakub Jelinek - - * elf32-i386.c (elf_i386_relocate_section) [R_386_TLS_TPOFF32]: Negate - addend. - -2002-09-17 Alan Modra - - * elf64-alpha.c (alpha_elf_size_info): Make static. - -2002-09-17 Svein E. Seldal - - * coff-tic4x.c: Add function declarations and ATTRIBUTE_UNUSED. - * cpu-tic4x.c: Ditto. - -2002-09-17 Thiemo Seufer - - * elf64-mips.c (define elf_backend_ignore_discarded_relocs): Remove - duplicate define. - -2002-09-16 Bruno Haible - - * elf32-i386.c: Don't defined ELF_ARCH etc. if this file is included - by a target variant implementation. - * elf64-alpha.c: Likewise. - * elf32-i386-fbsd.c: New file. - * elf64-alpha-fbsd.c: New file. - * targets.c: Support bfd_elf32_i386_freebsd_vec and - bfd_elf64_alpha_freebsd_vec. - * configure.in: Accept the vectors bfd_elf32_i386_freebsd_vec, - bfd_elf64_alpha_freebsd_vec. - * Makefile.am (BFD32_BACKENDS): Add elf32-i386-fbsd.lo. - (BFD32_BACKENDS_CFILES): Add elf32-i386-fbsd.c. - (BFD64_BACKENDS): Add elf64-alpha-fbsd.lo. - (BFD64_BACKENDS_CFILES): Add elf64-alpha-fbsd.c. - (elf32-i386-fbsd.lo, elf64-alpha-fbsd.lo): Add dependencies. - * config.bfd: For FreeBSD targets, set targ_defvec to a FreeBSD - specific targets. Define OLD_FREEBSD_ABI_LABEL if appropriate. - -2002-09-12 Jakub Jelinek - - * elf32-i386.c (dtpoff_base, tpoff): Don't crash if tls_segment is - NULL. - (elf_i386_relocate_section): Return false after printing error about - unresolvable relocation. - -2002-09-12 Nick Clifton - - * elf32-arm.h (elf32_arm_final_link_relocate): Fix handling of - R_ARM_THM_PC11. - -2002-09-11 Jeffrey Law - - * elf32-h8300.c (elf32_h8_relax_section): Fix typo. - -2002-09-11 Andrew Haley - - * elf.c (_bfd_elf_find_nearest_line): Check functionname_ptr and - line_ptr before deciding we've found a symbol. - -2002-09-11 Nick Clifton - - * po/da.po: New Danish translation file. - * configure.in (LINGUAS): Add 'da'. - * configure: Regenerate. - -2002-09-10 Michael Snyder - - * irix-core.c (do_sections, do_sections64): New functions. - (irix_core_core_file_p): Call new functions do_sections, - do_sections64, depending on corefile (32-bit or 64-bit). - -2002-09-09 Richard Henderson - - * elfxx-ia64.c (elfNN_ia64_relax_section): Handle PCREL21M - and PCREL21F like PCREL21B. - -2002-09-04 Kevin Buettner - - * config.bfd (mips*-*-irix6*): Add new ABI vectors. Make n32 default - vector. - -2002-09-02 Nick Clifton - - * elf32-v850.c (v850_elf_final_link_relocate): Use helpful - names instead of cryptically overloaded bfd_reloc error - codes. - (v850_elf_relocate_section): Likewise. - (v850_elf_relax_section): Replace caching of external symbols - with caching of internal symbols obtained from calling - bfd_elf_get_elf_syms(). - Fixup problems with freeing cached allocated memory blocks. - -2002-09-02 Alan Modra - - * cpu-pj.c (scan_mach, compatible, arch_info_struct): Remove. - (bfd_pj_arch): Use bfd_default_scan. - * cpu-v850.c (scan): Remove. - (N): Use bfd_default_scan. - * cpu-z8k.c (scan_mach): Remove. - (arch_info_struct, bfd_z8k_arch): Reorganize so that the default is - first. Use bfd_default_scan. - - * ecoff.c (_bfd_ecoff_set_arch_mach_hook): Don't use hard-coded - bfd_mach constants. - (ecoff_get_magic): Likewise. - * elf32-v850.c (v850_elf_object_p): Likewise. - (v850_elf_final_write_processing): Likewise. - * mipsbsd.c (MY(set_arch_mach)): Likewise. - (MY(write_object_contents)): Likewise. - * coff64-rs6000.c (xcoff64_write_object_contents): Likewise. - * coffcode.h (coff_write_object_contents): Likewise. - (coff_set_arch_mach_hook): Add comment describing machine == 0. - Remove unnecessary "machine" assignments. - (coff_write_relocs): Test for the absolute section sym by testing - section and flags. - - * aoutx.h (NAME(aout,machine_type)): Recognize bfd_mach_i386_i386 - and bfd_mach_i386_i386_intel_syntax. - * pdp11.c (NAME(aout,machine_type)): Likewise. - -2002-08-30 John David Anglin - - * bfd-in.h (align_power): Cast constants to bfd_vma type. - * bfd-in2.h (align_power): Likewise. - -2002-08-30 Alan Modra - - * Makefile.am: Run "make dep-am". - * Makefile.in: Regenerate. - - * cpu-avr.c (compatible): Don't use hard-coded mach constants. - * cpu-powerpc.c (powerpc_compatible): Likewise. - * cpu-rs6000.c (rs6000_compatible): Likewise. - -2002-08-28 Catherine Moore - - * elf32-v850.c (v850_elf_reloc_map): Add new relocs. - (v850-elf-reloc): Don't resolve pc relative relocs. - (v850_elf_ignore_reloc): New routine. - (v850_elf_final_link_relocate): Handle new relocs. - (v850_elf_relax_delete_bytes ): New routine. - (v850_elf_relax_section): New routine. - (bfd_elf32_bfd_relax_section): Define. - (HOWTO): New entries for new relocs. - * reloc.c (BFD_RELOC_V850_LONGCALL): New reloc. - (BFD_RELOC_V850_LONGJUMP): New reloc. - (BFD_RELOC_V850_ALIGN): New reloc. - * archures.c: Remove redundant v850ea architecture. - * cpu-v850.c: Remove redundant v850ea support. - * libbfd.h: Regenerate. - * bfd-in2.h: Regenerated. - -2002-08-28 Svein E. Seldal - - * config.bfd: Add tic4x-*-*coff* and c4x-*-*coff* target. - * configure.in: Add tic4x_coff vector files. - * configure: Regenerate. - * Makefile.am: Add tic4x target. - * Makefile.in: Regenerate. - -2002-08-27 Michael Hayes - - * archures.c: Add the BFD arch type tic4x. - * bfd-in.h: Add BFD_IN_MEMORY flag. - * coff-tic4x.c: New file. - * coffswap.h (coff_swap_sym_out): Add preadjuster. - * cpu-tic4x.c: New file. - * targets.c: Added tic4x- in list of xvecs. - * ticoff.h: New file. - * bfd-in2.h: Regenerate. - -2002-08-27 Adam Nemet - - * elf32-arm.h (elf32_arm_finish_dynamic_sections): Set the last - bit of DT_INIT and DT_FINI for Thumb functions. - -2002-08-26 Alan Modra - - * coffcode.h (coff_set_arch_mach_hook): Handle W65MAGIC. - -2002-08-26 Alan Modra - - * aoutx.h (NAME(aout,reloc_type_lookup)): Handle BFD_RELOC_8. - -2002-08-24 Kaz Kojima - - * elf32-sh.c (sh_elf_copy_indirect_symbol): New. - (create_got_section, allocate_dynrelocs, readonly_dynrelocs): - Likewise. - (struct elf_sh_pcrel_relocs_copied): Removed. - (struct elf_sh_dyn_relocs): New. - (struct elf_sh_link_hash_entry): Replace pcrel_relocs_copied - field with dyn_relocs. - (struct elf_sh_link_hash_table): Add short-cuts to get dynamic - sections and sym_sec. - (sh_elf_link_hash_newfunc): Clear dyn_relocs. - (sh_elf_link_hash_table_create): Clear shorts-cuts and sym_sec. - (sh_elf_create_dynamic_sections): Use create_got_section instead - of _bfd_elf_create_got_section. - (sh_elf_check_relocs): Likewise. - (sh_elf_create_dynamic_sections): Use short-cuts to the dynamic - sections. - (sh_elf_adjust_dynamic_symbol, sh_elf_size_dynamic_sections, - sh_elf_relocate_section, sh_elf_check_relocs, - sh_elf_finish_dynamic_symbol, sh_elf_finish_dynamic_sections): - Likewise. - (sh_elf_adjust_dynamic_symbol): Handle nocopyreloc. Keep the - dynamic relocations and avoiding the copy relocation when we - didn't find any dynamic relocations in the section which has - contents or is read-only. - (WILL_CALL_FINISH_DYNAMIC_SYMBOL): New. - (sh_elf_size_dynamic_sections): Don't reset the size of - .rela.got section even if dynamic_sections_created flag is off. - Don't use sh_elf_discard_copies. Scan all input bfd and use - allocate_dynrelocs. Call readonly_dynrelocs to determine - whether we need DT_TEXTREL. - (sh_elf_adjust_dynamic_symbol): Use plt.refcount to determine - whether the symbol was never referred to. - (sh_elf_relocate_section): Use WILL_CALL_FINISH_DYNAMIC_SYMBOL. - (sh_elf_gc_sweep_hook): Fill with the real sweep function. - (sh_elf_check_relocs): Call create_got_section if the short-cut - to .got is null. Increment reference counters only instead of - allocating space on dynamic sections here. Don't conditionalize - uninitialized got.offset value when marking the symbol as a - global offset table entry. Keep relocations for symbols satisfied - by a dynamic library to avoid copy relocations for the symbol. - Set dynobj field of an elf hash table if needed. - (sh_elf_finish_dynamic_sections): Handle null section pointer - correctly. - (elf_backend_copy_indirect_symbol): Defined. - (elf_backend_can_refcount): Defined. - -2002-08-23 Nick Clifton - - * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Undo - previous change. Add comment explaining why. - -2002-08-23 Stephen Clarke - - * elf32-sh.c (elf_sh_plt0_entry_be, elf_sh_plt0_entry_le): Copy - contents of .got.plt[2] to tr0, not address of .got.plt. - (sh_elf_finish_dynamic_symbol): Do not apply GOT_BIAS when - patching absolute plt entry. For shmedia plt entry, set bottom bit - of branch to plt0 as this is a branch to an shmedia instruction. - * elf64-sh64.c (elf_sh64_plt0_entry_be, elf_sh64_plt0_entry_le): - Copy contents of .got.plt[2] to tr0, not address of .got.plt. - (elf_sh64_plt_entry_be, elf_sh64_plt_entry_le): Use ptrel to - branch to plt0. - (sh64_elf64_finish_dynamic_symbol): Do not apply GOT_BIAS when - patching absolute plt entry. For shmedia plt entry, branch to - plt0 is now ptrel, so use relative offset. Set bottom bit of - branch target as it is a branch to an shmedia instruction. - -2002-08-23 Stephen Clarke , - Richard Shann - - * elf32-sh.c (sh_elf_finish_dynamic_sections): Set LSB of DT_INIT - value if .init is an SHmedia function. Similarly for DT_FINI. - * elf64-sh64.c (sh64_elf64_finish_dynamic_sections): Likewise. - -2002-08-23 Stephen Clarke - - * elf32-sh.c (sh_elf_size_dynamic_sections): Zero initialize - dynamic section. - * elf64-sh64.c (sh64_elf64_size_dynamic_sections): Likewise. - -2002-08-22 Kaz Kojima - - * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Use a simple - byte read when reading the return address register column. - -2002-08-22 Nick Clifton - - * config.bfd: Add powepc64-*-*bsd* target. - -2002-08-22 Graeme Peterson - - * Makefile.am: Add entries for elf32-shqnx.c - * Makefile.in: Regenerate. - * config.bfd: Add support sh-*-nto* target. - * configure.in: Add support for bfd_elf32_sh{l}qnx_vec. - * configure: Regenerate. - * elf32-qnx.h: Changed typo "elf_i386qnx_*" to "elf_qnx_*" . - * elf32-sh.c: Do not include elf32-target.h if - ELF32_SH_C_INCLUDED is defined. - * elf32-shqnx.c: New file: Support for QNX. - * targets.c: Add bfd_elf32_sh{l}qnx_vec. - -2002-08-22 Nick Clifton - - * po/tr.po: Updated Turkish translation. - - * syms.c (_bfd_generic_read_minisymbols): Set bfd_error if the - symbols are not read. - -2002-08-22 Alan Modra - - * elf32-m68hc11.c: Formatting fixes. - (elf32_m68hc11_gc_mark_hook): Correct params. Remove unnecessary test. - * elf32-m68hc12.c: Formatting fixes. - (elf32_m68hc11_gc_mark_hook): Correct params. Remove unnecessary test. - -2002-08-22 Alan Modra - - * coff-rs6000.c (rs6000coff_vec ): Add SEC_CODE and - SEC_DATA. - (pmac_xcoff_vec): Likewise. - * coff64-rs6000.c (rs6000coff64_vec): Likewise. - (aix5coff64_vec): Likewise. - -2002-08-22 Alan Modra - - * elf-bfd.h (struct elf_backend_data): Add struct elf_backend_data - param to elf_backend_copy_indirect_symbol. - (_bfd_elf_link_hash_copy_indirect): Likewise. - * elflink.h (elf_add_default_symbol, elf_fix_symbol_flags): Adjust - calls to copy_indirect_symbol. - * elf32-hppa.c (elf32_hppa_copy_indirect_symbol): Likewise. - * elf32-i386.c (elf_i386_copy_indirect_symbol): Likewise. - * elf32-s390.c (elf_s390_copy_indirect_symbol): Likewise. - * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Likewise. - * elf64-s390.c (elf_s390_copy_indirect_symbol): Likewise. - * elf64-x86-64.c (elf64_x86_64_copy_indirect_symbol): Likewise. - * elfxx-ia64.c (elfNN_ia64_hash_copy_indirect): Likewise. - * elfxx-mips.c (_bfd_mips_elf_copy_indirect_symbol): Likewise. - * elfxx-mips.h (_bfd_mips_elf_copy_indirect_symbol): Likewise. - * elf.c (_bfd_elf_link_hash_copy_indirect): Likewise. Properly - test refcounts for "used" values. - -2002-08-21 John David Anglin - - * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Add PARAMS to - argument declaration. - -2002-08-19 Elena Zannoni - - * archures.c (bfd_mach_ppc_e500): Added. - * bfd-in2.h: Rebuilt. - * cpu-powerpc.c (bfd_powerpc_archs): Added e500. - -2002-08-19 Alan Modra - - * elf32-m68hc12.c (elf_backend_can_gc_sections): False. - -2002-08-17 Andrew Cagney - - * elf.c (bfd_elf_get_elf_syms): Change type of `esym' to - `bfd_byte'. - -2002-08-17 Stan Cox - - * elfxx-mips.c (_bfd_mips_elf_modify_segment_map): Use the - IRIX 6 segment layout for NEWABI. - -2002-08-16 Stephen Clarke - - * elf32-sh.c (sh_elf_gc_mark_hook): For sh64, skip indirect - symbols when looking for section referred to by a relocation. - * elf64-sh.c (sh_elf64_gc_mark_hook): Likewise. - -2002-08-15 Alan Modra - - * elf32-i370.c: Move reloc enum to include/elf/i370.h. - -2002-08-15 Hans-Peter Nilsson - - * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Add - missing check for whether the symbol is referenced by DSO before - unexporting it as an unneeded dynamic symbol. - -2002-08-14 H.J. Lu - - * libbfd.h: Regenerate. - -2002-08-14 H.J. Lu - - * config.bfd: Always add 64bit vectors to 32bit Linux/mips. - -2002-08-14 Stephane Carrez - - * elf32-m68hc11.c (m68hc11_relax_group): New to relax group of - instructions. - (m68hc11_direct_relax): New to define table of relaxable instructions. - (find_relaxable_insn): New, find a relaxable insn. - (compare_reloc): New to compare two relocs. - (m68hc11_elf_relax_section): New, relax text sections. - (m68hc11_elf_relax_delete_bytes): New, delete bytes and adjust branchs. - (elf32_m68hc11_check_relocs): New function for GC support. - (elf32_m68hc11_relocate_section): New function for GC support. - (bfd_elf32_bfd_relax_section): Define to support linker relaxation. - (elf_backend_check_relocs): Likewise. - (elf_backend_relocate_section): Likewise. - -2002-08-13 H.J. Lu - - * elflink.h (NAME(bfd_elf,size_dynamic_sections): Don't count - definitions in shared objects when checking symbol with - undefined version. - -2002-08-13 Stephane Carrez - - * elf32-m68hc11.c (elf32_m68hc11_gc_mark_hook): New for section GC. - (elf32_m68hc11_gc_sweep_hook): Likewise. - (elf_backend_gc_mark_hook): Define for GC section support. - (elf_backend_gc_sweep_hook): Likewise. - (elf_backend_can_gc_sections): Likewise. - - * elf32-m68hc12.c: Likewise. - -2002-08-13 Stephane Carrez - - * elf32-m68hc11.c (_bfd_m68hc11_elf_print_private_bfd_data): New. - (_bfd_m68hc11_elf_merge_private_bfd_data): New function. - (_bfd_m68hc11_elf_set_private_flags): New function. - Use them to set/check/print ELF flags specific to 68HC11. - - * elf32-m68hc12.c (_bfd_m68hc12_elf_print_private_bfd_data): New. - (_bfd_m68hc12_elf_merge_private_bfd_data): New function. - (_bfd_m68hc12_elf_set_private_flags): New function. - Use them to set/check/print ELF flags specific to 68HC12. - -2002-08-13 Stephane Carrez - - * elf32-m68hc11.c (elf_m68hc11_howto_table): Add the new relocs; - fix masks for PC-rel relocs. - (m68hc11_elf_ignore_reloc): New function. - - * elf32-m68hc12.c (m68hc12_elf_special_reloc): New to handle specific - 68HC12 banked addressing relocs. - (m68hc12_phys_addr): New to compute physical address of banked memory. - (m68hc12_phys_page): Likewise for page. - (m68hc12_addr_is_banked): New to see if address is in banked area. - (elf_m68hc12_howto_table): Add new relocs and rename to xx12. - -2002-08-13 Stephane Carrez - - * reloc.c (BFD_RELOC_M68HC11_RL_JUMP, BFD_RELOC_M68HC11_RL_GROUP, - BFD_RELOC_M68HC11_LO16, BFD_RELOC_M68HC11_PAGE, - BFD_RELOC_M68HC11_24): New relocs for 68HC11/68HC12. - * bfd-in2.h: Regenerate. - -2002-08-12 H.J. Lu - - * elflink.h (elf_add_default_symbol): Preserve section across - elf_merge_symbol. - -2002-08-09 Graeme Peterson - - * Makefile.am: Add entries for elf32-ppcqnx.c, and add - elf32-qnx.h dependency to elfarmqnx-nabi.c and elf32-i386qnx.c. - * Makefile.in: Regenerate. - * config.bfd: Add support for powerpc{le}-*-nto targets. - * configure.in: Add support for bfd_elf32_powerpc{le}qnx_vec. - * configure: Regenerate. - * elf32-i386qnx.c: Moved backend functions into a QNX specific - common file "elf32-qnx.h", and now include that file. - * elf32-qnx.h: New file: QNX specific common elf backend. - * elf32-ppc.c: Do not include elf32-target.h if - ELF32_PPC_C_INCLUDED is defined. - * elf32-ppcqnx.c: New file: Support for QNX. - * elfarmqnx-nabi.c: Include elf32-qnx.h for qnx elf backend. - * targets.c: Add bfd_elf32_powerpc{le}qnx_vec. - -2002-08-09 Nick Clifton - - * po/sv.po: Updated Swedish translation. - -2002-08-09 Thiemo Seufer - - * elfxx-mips.c (mips_elf_global_got_index): Avoid segfault if - g->global_gotsym is NULL. - -2002-08-08 H.J. Lu - - * elflink.h (elf_add_default_symbol): Don't warn if a definition - overrides an indirect versioned symbol. - -2002-08-08 Jakub Jelinek - - * elf32-i386.c (elf_i386_relocate_section): Fill in proper addend - for R_386_TLS_TPOFF32 relocs against symndx 0. - -2002-08-07 H.J. Lu - - * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Check symbol - with undefined version if needed. - (elf_link_assign_sym_version): Match a default symbol with a - version without definition. No need to hide the default - definition separately. - -2002-08-08 Alan Modra - - * elflink.h (elf_link_output_extsym): Don't output symbols from - SEC_EXCLUDE sections. - - * aoutx.h (aout_link_write_symbols): Correct handling of warning syms. - -2002-08-07 Alan Modra - - * elf64-ppc.c (edit_opd): Arrange to drop symbols for discarded .opd - entries. - -2002-08-07 Thiemo Seufer - - * elfxx-mips.c (mips_elf_create_dynamic_relocation): Cast signedness - mismatch. - -2002-08-07 Thiemo Seufer - - * elfxx-mips.c (ABI_64_P): Remove superfluous check. - -2002-08-07 Thiemo Seufer - - * elf32-mips.c (mips_reloc_map): Fix typo. - -2002-08-06 Alan Modra - - * xcofflink.c (xcoff_write_global_symbol): Set n_scnum for abs_section. - -2002-08-06 Alan Modra - - * elf64-ppc.c (ppc64_elf_howto_raw): Zero all src_mask entries. - -2002-08-06 Alan Modra - - * libxcoff.h: Use PARAMS on function declarations. - * coff-rs6000.c (xcoff_generate_rtinit): Simplify size calc. - * coff64-rs6000.c (xcoff64_generate_rtinit): Likewise. - - * coff-rs6000.c: (xcoff_rtype2howto): Don't place reloc address in - addend. - * coff64-rs6000.c: (xcoff64_rtype2howto): Likewise. - -2002-08-06 Alan Modra - - * coff-rs6000.c: Formatting fixes. - (xcoff_calculate_relocation): Use PARAMS in declaration. - (xcoff_complain_overflow): Likewise. - (xcoff_ppc_relocate_section): Use old-style function pointer call. - (bfd_xcoff_backend_data): Remove useless comments. - (rs6000coff_vec): Likewise. - (bfd_pmac_xcoff_backend_data): Likewise. - (pmac_xcoff_vec): Likewise. - - * coff64-rs6000.c: Formatting fixes. - (xcoff64_calculate_relocation): Use PARAMS in declaration. - (xcoff64_ppc_relocate_section): Use old-style function pointer call. - (bfd_xcoff_backend_data): Remove useless comments. - (rs6000coff64_vec): Likewise. - (bfd_xcoff_aix5_backend_data): Likewise. - (aix5coff64_vec): Likewise. - -2002-08-06 Alan Modra - - * coff-rs6000.c (xcoff_howto_table): Revert some of last change to - mask entries. Use complain_overflow_dont for R_REF. - (xcoff_reloc_type_ba): Revert last change. - (xcoff_reloc_type_br): Likewise. - (xcoff_reloc_type_crel): Likewise. - (xcoff_ppc_relocate_section): Likewise. - * coff64-rs6000.c (xcoff64_reloc_type_br): Likewise. - (xcoff64_ppc_relocate_section): Likewise. - (xcoff64_howto_table): Revert some of last change to mask entries. - Use complain_overflow_dont for R_REF. - - * coff-rs6000.c (xcoff_howto_table): Fix src_mask entries. Make all - relocs with bitsize == 16 have size = 1. - (xcoff_reloc_type_ba): Correct src_mask and dst_mask adjustment. - (xcoff_reloc_type_br): Likewise. - (xcoff_reloc_type_crel): Likewise. - (xcoff_ppc_relocate_section): Set up src_mask and dst_mask correctly. - * coff64-rs6000.c (xcoff64_reloc_type_br): Correct src_mask and - dst_mask adjustment. - (xcoff64_ppc_relocate_section): Set up src_mask and dst_mask correctly. - (xcoff64_howto_table): Fix src_mask entries. Make all relocs with - bitsize == 16 have size = 1. - -2002-08-01 Denis Chertykov - - * elf32-ip2k.c: Processor manufacturer changed to Ubicom. - (struct misc): New field isymbuf. All free_* fields removed. - (symbol_value): Pass in internal syms. No need to swap syms in. - (ip2k_elf_relax_section): Use bfd_elf_get_elf_syms. Properly free - possibly cached info. - (tidyup_after_error): Removed. - (ip2k_elf_relax_section_pass1): Don't use removed fields of struct - misc. Use new field. - (adjust_all_relocations): Use internal syms. No need to swap syms - in and out. - (add_page_insn): Don't use removed fields of struct misc. - -2002-08-01 Nick Clifton - - * elf32-arm.h: Revert previous delta. - -2002-08-01 Nick Clifton - - * configure.in (AM_INIT_AUTOMAKE): Bump version number. - * configure: Regenerate. - -2002-07-31 H.J. Lu - - * config.bfd: Add x86-64 vector to Linux/i386 if 64bit BFD is - selected. - -2002-07-31 H.J. Lu - - * config.bfd: Add n32 vectors to 32bit Linux/mips if 64bit BFD - is selected. - -2002-07-31 Jakub Jelinek - - * elf32-i386.c (elf_i386_copy_indirect_symbol): Swap tls_type - if _bfd_elf_link_hash_copy_indirect will swap got.refcount. - -2002-07-31 Ian Dall - - * cpu-ns32k.c (_bfd_ns32k_put_immdeiate, _bfd_ns32k_get_immediate): - There is no 8 byte relocation type for this architecture. - (do_ns32k_reloc): Use bfd_vma instead of native types. - (bfd_ns32k_put_immediate, _bfd_ns32k_relocate_contents) put_data - returns void. - (_bfd_ns32k_put_displacement): Don't check for overflow. We can - rely on generic code to do that. - * aout-ns32k.c (howto_table): Add appropriate overflow detection - to all table entries. - (_bfd_ns32k_relocate_contents): put_data returns void. - * ns32k.h: (_bfd_ns32k_put_displacement, _bfd_ns32k_put_immediate) - (_bfd_do_ns32k_reloc_contents): Fix prototypes. put data functions - return void. - -2002-07-31 Ian Dall - - * aoutx.h (aout_link_check_ar_symbols): Whether to include an - archive object is target dependant. - -2002-07-31 Adam Nemet - - * elf32-arm.h (ARM_PLT_ENTRY_SIZE): Rename PLT_ENTRY_SIZE. - (THUMB_PLT_ENTRY_SIZE): New macro. - (PLT_ENTRY_SIZE): Return the appropriate *_PLT_ENTRY_SIZE. - (elf32_arm_plt0_entry): Rename PLT_ENTRY_SIZE to - ARM_PLT_ENTRY_SIZE. - (elf32_arm_plt_entry): Likewise. - (elf_backend_plt_header_size): Likewise. - (elf32_thumb_plt0_entry): New global. - (elf32_arm_finish_dynamic_sections): Use it. Put Thumb entries - into .plt.thumb. - (elf32_thumb_plt_entry): New global. - (elf32_arm_finish_dynamic_symbol): Use it. Use .thumb.plt for - Thumb entries. Set the bottom bit of the corresponding GOT entry - for a Thumb PLT entry. - (struct elf32_arm_plt_entry_info): New structure. - (struct elf32_arm_link_hash_entry, plt_info): New member of this - type. - (elf32_arm_link_hash_newfunc): Initialize new member. - (elf32_arm_final_link_relocate, R_ARM_THM_PC22 case): Handle - relocations against the PLT. - (elf32_arm_check_relocs, case R_ARM_PLT32 case): Set - first_rel_type if this is the first time we encounter the symbol. - (elf32_arm_check_relocs, case R_ARM_THM_PC22 case): New case. - Determine if relocation needs a PLT entry. Set first_rel_type if - this is the first time we encounter the symbol - (elf32_arm_adjust_dynamic_symbol): Create PLT entries for Thumb - functions as well. - (elf32_arm_size_dynamic_sections): Handle .plt.thumb like .plt. - (elf32_arm_create_dynamic_sections): New function. Create the - .plt.thumb section. - (elf_backend_create_dynamic_sections): Call it. - -2002-07-31 Nick Clifton - - * bfd.c (bfd_alt_mach_code): Rename parameter 'index' to - 'alternative' in order to avoid shadowing global symbol of the - same name. - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - * libcoff.h: Regenerate. - -2002-07-31 Thiemo Seufer - - * Makefile.am: Add n32 ABI support. - * Makefile.in: Regenerate. - * config.bfd: Add n32 vectors to mips64*-*-linux* targets. Treat 64 - bit vectors for mips*-*-linux targets as optional. - * configure.in: Add n32 ABI vectors. - * configure: Regenerate. - * elf32-mips.c (mips_elf32_object_p): Reject n32 ABI files. - * elfn32-mips.c: New file, n32 ABI support. - * targets.c: Add n32 ABI vectors. - -2002-07-30 Graeme Peterson - - * elfarmqnx-nabi.c: New file: Support for QNX. - * config.bfd: Add support for arm-*-nto target. - * configure.in: Add support for bfd_elf32_{big|little}armqnx_vec. - * configure: Regenerate. - * Makefile.am: Add entries for elfarmqnx-nabi.c. - * Makefile.in: Regenerate. - * elf32-arm.h (ELF_MAXPAGESIZE): Do not define if already defined. - Do not define global function if ELFARM_NABI_C_INCLUDED is defined. - * elfarm-nabi.c: Do not include elf32-arm.h if - ELFARM_NABI_C_INCLUDED is defined. - * targets.c: Add bfd_elf32_{big|little}armqnx_vec. - -2002-07-30 Nick Clifton - - * po/sv.po: Updated Swedish translation. - -2002-07-30 Jakub Jelinek - - * elf.c (elf_fake_sections): Fix up .tbss sh_size and sh_type. - -2002-07-30 Alan Modra - - * aoutx.h (some_aout_object_p): Clean up tdata properly on error. - * archive.c (bfd_generic_archive_p): Likewise. - * coff-rs6000.c (_bfd_xcoff_archive_p): Likewise. - (_bfd_xcoff_archive_p): Use bfd_scan_vma in place of strtol. - * coff64-rs6000.c (xcoff64_slurp_armap): Likewise. - (xcoff64_archive_p): Likewise. - (xcoff64_openr_next_archived_file): Likewise. - (xcoff64_archive_p): Clean up tdata properly on error. - * coffgen.c (coff_real_object_p): Likewise. - (coff_object_p): Release filehdr and opthdr. - * ecoff.c (_bfd_ecoff_archive_p): Clean up tdata properly on error. - * ieee.c (ieee_archive_p): Likewise. - * ihex.c (ihex_object_p): Likewise. - (ihex_mkobject): Always allocate tdata. - * peicode.h (pe_ILF_object_p): Release bfd_alloc'd buffer on error. - * srec.c (srec_mkobject): Always allocate tdata. - (srec_object_p): Clean up tdata properly on error. - (symbolsrec_object_p): Likewise. - * versados.c (versados_object_p): Likewise. - * vms-misc.c (_bfd_vms_get_record): Use bfd_malloc instead of malloc, - and bfd_realloc instead of realloc. - (add_new_contents): Use bfd_alloc instead of bfd_malloc for sections. - * vms.c (vms_initialize): Always allocate tdata. Use bfd_alloc in - place of bfd_malloc, simplifying error freeing. Free hash table too. - (vms_object_p): Clean up tdata on error. - (vms_mkobject): Don't complain on stderr if vms_initialize fails. - (vms_close_and_cleanup): Adjust for bfd_alloc use. - -2002-07-30 Alan Modra - - * elfxx-ia64.c (elfNN_ia64_final_write_processing): Set e_flags. - -2002-07-26 Chris Demetriou - - * elfxx-mips.c (_bfd_mips_elf_merge_private_bfd_data): Merge ASE - flags into resulting BFD. - -2002-07-26 Alan Modra - - From John Reiser - * elf32-i386.c (elf_i386_link_hash_table_create): Clear - tls_ldm_got.refcount. - -2002-07-25 Thiemo Seufer - - * elf64-mips.c: Update TODO comment. - (mips_elf64_higher_reloc,mips_elf64_highest_reloc, - mips_elf64_gprel16_reloca): Remove prototypes. - (mips16_jump_reloc,mips16_gprel_reloc): Add functions. - (UNUSED_RELOC): Replace by EMPTY_RELOC. - (mips_elf64_howto_table_rel): Use special R_MIPS_HI16 handling. Remove - wrong comments. Remove disfunctional support of R_MIPS_HIGHER and - R_MIPS_HIGHEST. - (mips_elf64_howto_table_rela): Fix handling of R_MIPS_GPREL16 and - R_MIPS_GOT16. Remove wrong comments. - (elf_mips16_jump_howto,elf_mips16_gprel_howto, - elf_mips_gnu_vtinherit_howto,elf_mips_gnu_vtentry_howto): New, code - from elf32-mips.c. - (mips_elf64_hi16_reloc): Fix formatting. - (mips_elf64_higher_reloc,mips_elf64_highest_reloc): Remove. - (mips_elf64_got16_reloc): Fix formatting. Remove superfluous code. - Better comment. Fall back to R_MIPS_GOT_DISP instead of abort(). - (mips_elf64_gprel16_reloc): Make static. Add check for - partial_inplace. - (mips_elf64_gprel16_reloca): Remove. - (mips_elf64_literal_reloc): New function. - (mips_elf64_gprel32_reloc): Fix formatting. - (mips_elf64_shift6_reloc): Fix comment. Make static. - (mips16_jump_reloc,mips16_gprel_reloc): New functions, code from - elf32-mips.c. - (elf_reloc_map,mips_reloc_map): New mapping table, similiar as in - elf32-mips.c - (bfd_elf64_bfd_reloc_type_lookup): Use the mapping table. Enable GNU - specific relocations. - (mips_elf64_rtype_to_howto): Enable GNU specific relocations. - (mips_elf64_object_p): Invert logic to check for SGI-ish ABI. - (ELF_MAXPAGESIZE): Add comment. - -2002-07-25 Nick Clifton - - * po/sv.po: Updated Swedish translation. - * po/es.po: Updated Spanish translation. - * po/fr.po: Updated French translation. - -2002-07-25 Alan Modra - - * elf-bfd.h (_bfd_elf32_link_record_local_dynamic_symbol): Define - as elf_link_record_local_dynamic_symbol. - (_bfd_elf64_link_record_local_dynamic_symbol): Likewise. - (elf_link_record_local_dynamic_symbol): Declare. Now returns int. - * elflink.h (elf_link_record_local_dynamic_symbol): Move to.. - * elflink.c: .. here. Use bfd_elf_get_elf_syms. Check whether an - attempt is made to record a symbol in a discarded section, and - return `2' in that case. - -2002-07-24 Nick Clifton - - * po/sv.po: Updated Swedish translation. - * po/es.po: Updated Spanish translation. - -2002-07-23 Alan Modra - - * po/SRC-POTFILES.in: Regenerate. - - * elf-hppa.h (elf_hppa_relocate_section): If relocatable, return - immediately. Remove code handling relocatable linking. - * elf32-avr.c (elf32_avr_relocate_section): Likewise. - * elf32-cris.c (cris_elf_relocate_section): Likewise. - * elf32-fr30.c (elf32_frv_relocate_section): Likewise. - * elf32-frv.c (elf32_frv_relocate_section): Likewise. - * elf32-h8300.c (elf32_h8_relocate_section): Likewise. - * elf32-hppa.c (elf32_hppa_relocate_section): Likewise. - * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise. - * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. - * elf32-v850.c (v850_elf_relocate_section): Likewise. - * elf32-vax.c (elf_vax_relocate_section): Likewise. - * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. - * elf32-avr.c (elf_backend_rela_normal): Define. - * elf32-cris.c: Likewise. - * elf32-fr30.c: Likewise. - * elf32-frv.c: Likewise. - * elf32-h8300.c: Likewise. - * elf32-hppa.c: Likewise. - * elf32-ip2k.c: Likewise. - * elf32-sparc.c: Likewise. - * elf32-v850.c: Likewise. - * elf32-vax.c: Likewise. - * elf64-hppa.c: Likewise. - * elf64-sparc.c: Likewise. - * elf32-fr30.c (elf32_frv_relocate_section): Edit comment. - * elf32-frv.c (elf32_frv_relocate_section): Likewise. - * elf32-i860.c (elf32_i860_relocate_section): Likewise. - * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise. - * elf32-m32r.c (m32r_elf_relocate_section): Likewise. - * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise. - * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise. - * elf-m10200.c (USE_RELA): Don't define. - * elf-m10300.c: Likewise. - * elfarm-oabi.c: Likewise. - * elf32-i370.c: Likewise. - * elf32-ip2k.c: Likewise. - * elf32-m68k.c: Likewise. - * elf32-mcore.c: Likewise. - * elf32-ppc.c: Likewise. - * elf32-s390.c: Likewise. - * elf32-vax.c: Likewise. - * elf64-ppc.c: Likewise. - * elf64-s390.c: Likewise. - * elf64-x86-64.c: Likewise. - * elfxx-ia64.c: Likewise. - * elf32-avr.c (USE_REL): Don't undef. - * elf32-ip2k.c: Likewise. - -2002-07-23 Nick Clifton - - * elf-bfd.h (struct elf_backend_data): Add new bitfield - 'want_p_paddr_set_to_zero'. - * elfxx-target.h: Set default value for want_p_paddr_set_to_zero - to false; - * elfxx-ia64.c: Set want_p_paddr_set_zero for HPUX target. - * elf.c (copy_private_bfd_data): Test want_p_paddr_set_zero. - -2002-07-23 Gabor Keresztfalvi - - * nlmcode.h (nlm_swap_auxiliary_headers_out): Swapped the order of - the MeSsAgEs and CoPyRiGhT tags to make >=NW4.x NLM loaders to - show the Copyright string. - Minor formatting tidy ups. - -2002-07-23 Nick Clifton - - * po/fr.po: Updated French translation. - * po/sv.po: Updated Swedish translation. - -2002-07-23 Alan Modra - - * elflink.h (elf_link_input_bfd): Don't change internal symbols - when outputting relocs. - -2002-07-20 Jason Thorpe - - * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Only insert - DT_PLTGOT into the dynamic section if there is a PLT. - -2002-07-19 Thiemo Seufer - - * elfxx-mips.c (_bfd_mips_elf_discard_info): New function, code from - elf32-mips.c. - (_bfd_mips_elf_write_section): Likewise. - * elfxx-mips.h (_bfd_mips_elf_discard_info): New prototype. - (_bfd_mips_elf_write_section): Likewise. - * elf32-mips.c (elf32_mips_discard_info): Move to elfxx-mips.c. - (elf32_mips_write_section): Likewise. - * elf64-mips.c (_bfd_mips_elf_ignore_discarded_relocs): Use it. - (_bfd_mips_elf_write_section): Likewise. - -2002-07-19 Alan Modra - - * elfxx-ia64.c: (elfNN_ia64_modify_segment_map): Properly scan - PT_IA_64_UNWIND segments for a given section. - -2002-07-17 H.J. Lu - - * Makefile.am: Fix a typo. - * Makefile.in: Regenerate. - -2002-07-15 Denis Chertykov - Frank Ch. Eigler - Ben Elliston - Alan Lehotsky - John Healy - Graham Stott - Jeff Johnston - - * Makefile.am: Add support for ip2k. - * Makefile.in: Regenerate. - * doc/Makefile.in: Regenerate. - * archures.c: Add support for ip2k. - * config.bfd: Add support for ip2k. - * configure.in: Add support for ip2k. - * configure: Regenerate. - * reloc.c: Add support for ip2k. - * targets.c: Add support for ip2k. - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - * cpu-ip2k.c: New file. - * elf32-ip2k.c: New file. - -2002-07-17 Ian Rickards - - * dwarf2.c (concat_filename): If we can't establish the directory - just return the filename. - -2002-07-16 Moritz Jodeit - - * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Correct order of memset args. - -2002-07-16 Alan Modra - - * elflink.h: Formatting fixes, tidy prototypes. - (elf_link_assign_sym_version): Move common code out of loop. - -2002-07-16 Alan Modra - - * elflink.h (elf_link_input_bfd): Don't call reloc_emitter when - reloc section size is zero. Correct reloc output location. - -2002-07-16 John David Anglin - - * elf-hppa.h (elf_hppa_reloc_final_type): Use R_PARISC_PCREL16F as - the final type for the e_fsel selector when generating PA2.0W code. - (elf_hppa_relocate_insn): Provide support for PA2.0W 16-bit format 1 - relocations. - -2002-07-14 H.J. Lu - - * elflink.h (elf_link_assign_sym_version): Hide the default - definition if there is a hidden versioned definition. - -2002-07-12 Hans-Peter Nilsson - - * elf32-cris.c (cris_elf_relocate_section): Drop nonsensical - dynamic reference test in assertion when initializing GOT with - static contents. Just assert that there are either no dynamic - sections, the symbol is defined in the regular objects or that the - symbol is undef weak. Tweak comment. - (elf_cris_finish_dynamic_symbol): Emit .got reloc for a program - only if the symbol isn't defined in the program and isn't undef - weak. - (elf_cris_adjust_dynamic_symbol): Simplify condition for getting - rid of PLT entry: only do it if the symbol isn't defined in a DSO. - When doing so, clear ELF_LINK_HASH_NEEDS_PLT. Tweak comments. - (elf_cris_discard_excess_program_dynamics): Don't consider - ELF_LINK_HASH_REF_DYNAMIC when omitting .got runtime relocs. - -2002-07-11 Alan Modra - - * elf32-i386.c (elf_i386_relocate_section): Don't complain about - unresolved debugging relocs in dynamic applications. - * elf32-s390.c (elf_s390_relocate_section): Likewise. - * elf32-sparc.c (elf32_sparc_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. - -2002-07-10 Alan Modra - - * elf64-ppc.c (ONES): Define. - (ppc64_elf_howto_table): Use ONES here to avoid warnings. Fill in - missing src_mask fields. Tweak R_PPC64_NONE, R_PPC64_COPY. Fill - in missing dst_mask fields on R_PPC64_PLT32, R_PPC64_PLTREL32. - - * elf64-ppc.c (ppc64_elf_get_symbol_info): Delete. - (ppc64_elf_set_private_flags): Delete. - (ppc64_elf_section_from_shdr): Delete. - (ppc64_elf_merge_private_bfd_data): Remove flag checking/merging code. - (ppc64_elf_fake_sections): Delete. - (bfd_elf64_bfd_set_private_flags): Don't define. - (bfd_elf64_get_symbol_info): Likewise. - (elf_backend_section_from_shdr): Likewise. - (elf_backend_fake_sections): Likewise. - -2002-07-10 Marco Walther - - * elf.c: (assign_section_numbers) Set sh_entsize for .stab only - when not already set. - * elf64-sparc.c: (sparc64_elf_fake_sections): New function. - (elf_backend_fake_sections): Define. - -2002-07-10 Alan Modra - - * merge.c (_bfd_merge_section): Remove redundant output_section check. - Formatting. - (_bfd_merge_sections): Don't set SEC_EXCLUDE on unused sections. - -2002-07-09 Hans-Peter Nilsson - - * elf32-cris.c (cris_elf_relocate_section): Move sanity-check for - NULL sym_hashes to just before use. - : In test for local symbol, accept also - symbol with non-default visibility. - : Ditto. - : - Ditto. - (cris_elf_gc_sweep_hook): Only decrease h->plt.refcount for - symbol with non-default visibility. - (cris_elf_check_relocs): At tests for local symbol before - increasing h->plt.refcount, also check for non-default - visibility. Ditto when checking for local symbol to eliminate - pc-relative runtime relocs. - -2002-07-08 Alan Modra - - * elf.c: Formatting. - (IS_SOLARIS_PT_INTERP): Add p_paddr and p_memsz checks. - (INCLUDE_SECTION_IN_SEGMENT): Remove IS_SOLARIS_PT_INTERP. - (copy_private_bfd_data): Set p_vaddr on broken Solaris PT_INTERP - segments. - -2002-07-07 Mark Mitchell - Alan Modra - - * cofflink.c (_bfd_coff_final_link): On PE COFF systems, take into - account the impact of relocation count overflow when computing - section offsets. - * coffcode.h (coff_write_relocs): Use obj_pe when deciding whether - or not to apply the PE COFF reloc overflow handling. Fix a - fencepost error in deciding whether or not to use that technique. - -2002-07-07 Alan Modra - - * elf-bfd.h (struct elf_reloc_cookie): Remove locsym_shndx, - change type of locsyms. - (bfd_elf_get_elf_syms): Declare. - * elf.c (bfd_elf_get_elf_syms): New function. - (group_signature): Use bfd_elf_get_elf_syms. - (bfd_section_from_r_symndx): Likewise. - * elfcode.h (elf_slurp_symbol_table): Likewise. - * elflink.h (elf_link_is_defined_archive_symbol): Likewise. - (elf_link_add_object_symbols): Likewise. Reorganise to increase - locality of various data structures. Properly free internal relocs. - (elf_bfd_final_link): Properly free internal relocs. - (elf_link_check_versioned_symbol): Use bfd_elf_get_elf_syms. - (elf_link_input_bfd): Likewise. - (elf_gc_mark): Likewise. Properly free internal relocs. - (elf_gc_sweep): Properly free internal relocs. - (elf_reloc_symbol_deleted_p): No need to swap syms in. - (elf_bfd_discard_info): Use bfd_elf_get_elf_syms. Properly free - internal relocs. - * elf-m10200.c (mn10200_elf_relax_section): Use bfd_elf_get_elf_syms. - Properly free possibly cached info. - (mn10200_elf_relax_delete_bytes): Remove symbol swapping code. - (mn10200_elf_symbol_address_p): Pass in internal syms. Remove - symbol swapping code. - (mn10200_elf_get_relocated_section_contents): Use bfd_elf_get_elf_syms. - Properly free possibly cached info. - * elf-m10300.c (mn10300_elf_relax_section): As above for elf-m10200.c. - (mn10300_elf_relax_delete_bytes): Likewise. - (mn10300_elf_symbol_address_p): Likewise. - (mn10300_elf_get_relocated_section_contents): Likewise. - * elf32-h8300.c (elf32_h8_relax_section): As above for elf-m10200.c. - (elf32_h8_relax_delete_bytes): Likewise. - (elf32_h8_symbol_address_p): Likewise. - (elf32_h8_get_relocated_section_contents): Likewise. - * elf32-m32r.c (m32r_elf_relax_section): As above for elf-m10200.c. - (m32r_elf_relax_delete_bytes): Likewise. - (m32r_elf_get_relocated_section_contents): Likewise. - * elf32-sh.c (sh_elf_reloc_loop): Free section contents using - elf_section_data to determine whether cached. - (sh_elf_relax_section): As above for elf-m10200.c. - (sh_elf_relax_delete_bytes): Likewise. - (sh_elf_get_relocated_section_contents): Likewise. - * elf32-xstormy16.c (xstormy16_elf_relax_section): As above. - * elf64-alpha.c (elf64_alpha_relax_section): As above. Also delay - reading of local syms. - * elf64-mmix.c (mmix_elf_relax_section): Likewise. - * elf64-sh64.c (sh_elf64_get_relocated_section_contents): As above. - * elfxx-ia64.c (elfNN_ia64_relax_section): As above. - * elfxx-mips.c (_bfd_mips_elf_check_relocs): Properly free internal - relocs. - * elf32-arm.h (bfd_elf32_arm_process_before_allocation): Properly - free internal relocs and section contents. Don't read symbols. - * elf32-hppa.c (get_local_syms): Use bfd_elf_get_elf_syms. - (elf32_hppa_size_stubs): Don't free local syms. - * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): Delay - reading of local syms. Use bfd_elf_get_elf_syms. Properly free - possibly cached info. - * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Likewise. - * elf64-hppa.c (elf64_hppa_check_relocs): Use bfd_elf_get_elf_syms. - * elf64-ppc.c (struct ppc_link_hash_table): Delete bfd_count and - all_local_syms. - (get_local_syms): Delete function. - (edit_opd): Use bfd_elf_get_elf_syms. Free on error exit. Cache - on exit. - (ppc64_elf_size_stubs): Use bfd_elf_get_elf_syms. Free/cache on exit. - -2002-07-05 Jim Wilson - - * syms.c (decode_section_type): New. - (bfd_decode_symclass): Call decode_section_type. - -2002-07-04 Jakub Jelinek - - * merge.c (_bfd_merged_section_offset): Avoid accessing byte before - section content start. - Reported by Michael Schumacher . - -2002-07-04 Alan Modra - - * section.c (_bfd_strip_section_from_output): Remove unnecessary - link order code. Don't actually remove the output section here; - Just set a flag for the linker to do so. - * elflink.c (_bfd_elf_link_renumber_dynsyms): Test for removed - sections when setting up output section dynsyms. - -2002-07-04 Alan Modra - - * elflink.h (elf_link_add_object_symbols): Revert 1999-09-02 hpux - fudge. - * elf.c (bfd_section_from_shdr): Work around broken hpux shared - libs here instead. - -2002-07-02 Martin Schwidefsky - - * elf64-s390.c (create_got_section): Set .got section alignment to - 8 bytes. - (elf_s390_check_relocs): Set .rela.dyn section alignment to 8 bytes. - -2002-07-02 Alan Modra - - * elf.c (_bfd_elf_reloc_type_class): Fix comment grammar. - -2002-07-01 Matt Thomas - - * elf32-vax.c (elf32_vax_print_private_bfd_data): Change EF_* - to EF_VAX_*. - -2002-07-01 Thiemo Seufer - - * elfxx-mips.c (ABI_64_P): Fix comment. - (MIPS_ELF_OPTIONS_SECTION_NAME,MIPS_ELF_STUB_SECTION_NAME): Use the - new section names for N64 ABI. - (mips_elf_output_extsym): No special _gp_disp handling for NewABI. - (mips_elf_calculate_relocation): Code formatting. - (mips_elf_create_dynamic_relocation): Likewise. - (_bfd_mips_elf_fake_sections): IRIX6 needs this hack, too. - (_bfd_mips_elf_size_dynamic_sections): Handle GOT_PAGE for any NewABI. - (_bfd_mips_elf_relocate_section): No special handling for R_MIPS_64 - in any NewABI. - (_bfd_mips_elf_finish_dynamic_symbol): No special _gp_disp handling - for NewABI. - (_bfd_mips_elf_modify_segment_map): Handle any N64 ABI. - (_bfd_mips_elf_gc_sweep_hook): NewABI GOT relocs should be handled - here, too. - -2002-07-01 Andreas Schwab - - * elf64-x86-64.c (elf64_x86_64_relocate_section): Only convert - R_X86_64_64 to R_X86_64_RELATIVE. - -2002-07-01 John David Anglin - - * vaxbsd.c: New BFD backend for VAX BSD and Ultrix. - * Makefile.am (BFD32_BACKENDS, BFD32_BACKENDS_CFILES): Add new backend. - Run "make dep-am". - * config.bfd (vax-*-bsd* | vax-*-ultrix*): Use vaxbsd_vec instead of - host_aout_vec. - * configure.in (vaxbsd_vec): Add. - * targets.c (vaxbsd_vec): Add. - * Makefile.in: Rebuild. - * configure: Rebuild. - * po/SRC-POTFILES.in: Rebuild. - -2002-07-01 Alan Modra - - * elflink.h (elf_gc_mark): Pass in the section whose relocs we are - examining to gc_mark_hook, rather than the bfd. - (elf_gc_sections): Adjust. - * elf-bfd.h (struct elf_backend_data ): Likewise. - * elf-m10300.c (mn10300_elf_gc_mark_hook): Likewise. - * elf32-arm.h (elf32_arm_gc_mark_hook): Likewise. - * elf32-avr.c (elf32_avr_gc_mark_hook): Likewise. - * elf32-cris.c (cris_elf_gc_mark_hook): Likewise. - * elf32-d10v.c (elf32_d10v_gc_mark_hook): Likewise. - * elf32-fr30.c (fr30_elf_gc_mark_hook): Likewise. - * elf32-hppa.c (elf32_hppa_gc_mark_hook): Likewise. - * elf32-i386.c (elf_i386_gc_mark_hook): Likewise. - * elf32-m32r.c (m32r_elf_gc_mark_hook): Likewise. - * elf32-m68k.c (elf_m68k_gc_mark_hook): Likewise. - * elf32-mcore.c (mcore_elf_gc_mark_hook): Likewise. - * elf32-openrisc.c (openrisc_elf_gc_mark_hook): Likewise. - * elf32-ppc.c (ppc_elf_gc_mark_hook): Likewise. - * elf32-s390.c (elf_s390_gc_mark_hook): Likewise. - * elf32-sh.c (sh_elf_gc_mark_hook): Likewise. - * elf32-sparc.c (elf32_sparc_gc_mark_hook): Likewise. - * elf32-v850.c (v850_elf_gc_mark_hook): Likewise. - * elf32-vax.c (elf_vax_gc_mark_hook): Likewise. - * elf32-xstormy16.c (xstormy16_elf_gc_mark_hook): Likewise. - * elf64-mmix.c (mmix_elf_gc_mark_hook): Likewise. - * elf64-ppc.c (ppc64_elf_gc_mark_hook): Likewise. - * elf64-s390.c (elf_s390_gc_mark_hook): Likewise. - * elf64-sh64.c (sh_elf64_gc_mark_hook): Likewise. - * elfxx-mips.c (_bfd_mips_elf_gc_mark_hook): Likewise. - * elfxx-mips.h (_bfd_mips_elf_gc_mark_hook): Likewise. - * elf64-x86-64.c (elf64_x86_64_gc_mark_hook): Likewise. - * elf32-frv.c (elf32_frv_gc_mark_hook): Likewise. Also remove - redundant local sym tests. - * elf64-ppc.c (struct ppc_link_hash_entry): Add is_entry. - (link_hash_newfunc): Init is_entry. - (ppc64_elf_copy_indirect_symbol): Copy is_entry. - (ppc64_elf_link_hash_table_create): Init all_local_syms. - (create_linkage_sections): Use bfd_make_section_anyway rather than - bfd_make_section. - (ppc64_elf_mark_entry_syms): New function. - (ppc64_elf_check_relocs): Don't bother testing elf_bad_symtab. Set - up opd entry to function section map. - (ppc64_elf_gc_mark_hook): Special case opd section relocs, and - relocs that reference the opd section. - (edit_opd): New function. - (ppc64_elf_size_dynamic_sections): Call get_local_syms and edit_opd. - (ppc64_elf_setup_section_lists): Don't calculate htab->bfd_count here. - (get_local_syms): Do so here. Exit if we already have local syms. - Remove bogus comment imported from elf32-hppa.c. Don't attempt to - read local syms on non-ELF input. - (ppc64_elf_size_stubs): Call _bfd_elf64_link_read_relocs rather - than duplicating it's function here. Adjust free of internal - relocs to suit. - (ppc64_elf_relocate_section): Adjust local syms in opd section. - * elf64-ppc.h (ppc64_elf_mark_entry_syms): Declare. - * elf32-hppa.c (elf32_hppa_size_stubs): Call - _bfd_elf32_link_read_relocs rather than duplicating it's function - here. Adjust free of internal relocs to suit. - -2002-07-01 Andreas Jaeger - - * elf64-x86-64.c (elf64_x86_64_check_relocs): Certain relocations - are not allowed in shared libs code, enforce -fPIC. - -2002-06-29 Hans-Peter Nilsson - - * mmo.c (mmo_write_loc_chunk): Don't eliminate leading and - trailing zero-sequences when there's previous left-over data. - -2002-06-27 John David Anglin - - * elf64-hppa.c (elf64_hppa_reloc_type_class): New function. - (elf64_hppa_finish_dynamic_sections): Check other_rel_sec, dlt_rel_sec - and opd_rel_sec in order for starting rela section. Check _raw_size. - (elf_backend_reloc_type_class): Define. - -2002-06-27 Kevin Buettner - - * dwarf2.c (decode_line_info): Handle older, non-standard, 64-bit - DWARF2 formats. - -2002-06-27 Alan Modra - - * cpu-powerpc.c: Comment on ordering of arch_info. - * elf32-ppc.c (ppc_elf_object_p): New function. - (elf_backend_object_p): Define. - * elf64-ppc.c (ppc64_elf_object_p): New function. - (elf_backend_object_p): Define. - -2002-06-26 Jason Thorpe - - * configure.in (vax-*-netbsd*): Set COREFILE to netbsd-core.lo. - * configure: Regenerate. - -2002-06-25 Jason Eckhardt - - * dwarf2.c (decode_line_info): Check unit->addr_size - to read in the proper number of prologue bytes. - -2002-06-25 Nick Clifton - - * config.bfd (powerpc-*-aix5*): Only create a selvecs for - aix5coff64_vec if 64-bit bfd support has been enabled. - (powerpc64-*-aix5*): Only define if 64-bit bfd support has - been enabled. - - * targets.c (_bfd_target_vector[]): Only include - aix5coff64_vec if 64-bit bfd support has been enabled. - -2002-06-25 Alan Modra - - * elf64-ppc.c (ppc_add_stub): Replace strcpy/strncpy with memcpy. - * elf32-hppa.c (hppa_add_stub): Likewise. - * elflink.c (_bfd_elf_link_record_dynamic_symbol): Likewise. - * elflink.h (elf_add_default_symbol): Fix comment typo. - (elf_add_default_symbol): Replace strcpy and strncpy with memcpy. - (elf_link_add_object_symbols): Likewise. - (elf_link_assign_sym_version): Likewise. - * hash.c (bfd_hash_lookup): Likewise. - * linker.c (_bfd_generic_link_add_one_symbol): Likewise. - * section.c (bfd_get_unique_section_name): Likewise. - * syms.c (_bfd_stab_section_find_nearest_line): Likewise. - * elf.c (_bfd_elf_make_section_from_phdr): Likewise. - (assign_section_numbers): Likewise. - (_bfd_elfcore_make_pseudosection): Likewise. - (elfcore_grok_lwpstatus): Likewise. - (elfcore_grok_win32pstatus): Likewise. - (elfcore_write_note): Constify input params. Use PTR instead of - void *. Include terminating NUL in namesz. Correct padding. - Support NULL "name" param. Use memcpy instead of strcpy. - (elfcore_write_prpsinfo): Constify input params. - (elfcore_write_prstatus): Likewise. Use PTR instead of void *. - (elfcore_write_lwpstatus): Likewise. - (elfcore_write_pstatus): Likewise. - (elfcore_write_prfpreg): Likewise. - (elfcore_write_prxfpreg): Likewise. - * elf-bfd.h (elfcore_write_note): Update declaration. - (elfcore_write_prpsinfo): Likewise. - (elfcore_write_prstatus): Likewise. - (elfcore_write_pstatus): Likewise. - (elfcore_write_prfpreg): Likewise. - (elfcore_write_prxfpreg): Likewise. - (elfcore_write_lwpstatus): Likewise. - -2002-06-25 Jason Eckhardt - - * ecoff.c (ecoff_set_symbol_info): Set BSF_FUNCTION for - symbols of type stProc and stStaticProc. - -2002-06-25 Nick Clifton - - * ecoff.c: VArious formatting fixes. - -2002-06-25 Alan Modra - - * coff-rs6000.c (xcoff_generate_rtinit): Fix typo. - -2002-06-25 Alan Modra - - * aout-adobe.c: Don't compare against "true" or "false. - * aout-target.h: Likewise. - * aoutx.h: Likewise. - * archive.c: Likewise. - * bout.c: Likewise. - * cache.c: Likewise. - * coff-a29k.c: Likewise. - * coff-alpha.c: Likewise. - * coff-i386.c: Likewise. - * coff-mips.c: Likewise. - * coff-or32.c: Likewise. - * coff64-rs6000.c: Likewise. - * coffcode.h: Likewise. - * coffgen.c: Likewise. - * cpu-ns32k.c: Likewise. - * ecoff.c: Likewise. - * ecofflink.c: Likewise. - * elf.c: Likewise. - * elf32-arm.h: Likewise. - * elf32-cris.c: Likewise. - * elf32-d30v.c: Likewise. - * elf32-i386.c: Likewise. - * elf32-mcore.c: Likewise. - * elf32-ppc.c: Likewise. - * elf32-sh.c: Likewise. - * elf32-sh64.c: Likewise. - * elf32-v850.c: Likewise. - * elf64-alpha.c: Likewise. - * elf64-sh64.c: Likewise. - * elfcode.h: Likewise. - * elfcore.h: Likewise. - * elflink.h: Likewise. - * elfxx-mips.c: Likewise. - * i386os9k.c: Likewise. - * ieee.c: Likewise. - * libbfd.c: Likewise. - * linker.c: Likewise. - * mmo.c: Likewise. - * nlm32-alpha.c: Likewise. - * nlm32-i386.c: Likewise. - * nlm32-ppc.c: Likewise. - * nlm32-sparc.c: Likewise. - * nlmcode.h: Likewise. - * oasys.c: Likewise. - * pdp11.c: Likewise. - * peicode.h: Likewise. - * reloc.c: Likewise. - * som.c: Likewise. - * srec.c: Likewise. - * tekhex.c: Likewise. - * vms.c: Likewise. - * xcofflink.c: Likewise. - * elf64-sparc.c: Edit comment to not use "== false". - - * aoutf1.h: Don't use "? true : false". - * ecoff.c: Likewise. - * format.c: Likewise. - * ieee.c: Likewise. - * linker.c: Likewise. - * mmo.c: Likewise. - * oasys.c: Likewise. - -2002-06-23 H.J. Lu - - * elflink.h (elf_link_add_archive_symbols): For the default - version, check references with only one `@' first. - -2002-06-23 John David Anglin - - * elf64-hppa.c (elf64_hppa_mark_milli_and_exported_functions): New - function. - (allocate_global_data_dlt): Don't add millicode symbols to dynamic - symbol table. - (allocate_global_data_opd, allocate_dynrel_entries): Likewise. - (elf64_hppa_size_dynamic_sections): Revise to use - elf64_hppa_mark_milli_and_exported_functions. - (elf64_hppa_finish_dynamic_symbol): Remove code to keep millicode - symbols out of dynamic symbol table. - -2002-06-23 Alan Modra - - * Makefile.in: Regenerate. - * libbfd.h: Regenerate. - * bfd-in2.h: Regenerate. - * configure: Regenerate. - * po/SRC-POTFILES.in: Regenerate. - - * elflink.h: Comment typo fixes. - -2002-06-23 H.J. Lu - - * elf-bfd.h (elf_link_loaded_list): New structure. - (elf_link_hash_table): Add "loaded". - * elf.c (_bfd_elf_link_hash_table_init): Initialize "loaded". - * elflink.h (elf_link_check_versioned_symbol): New function. - (elf_link_output_extsym): Call elf_link_check_versioned_symbol. - -2002-06-19 Nick Clifton - - * elflink.h (size_dynamic_sections): If the target does not - support an ELF style hash table, return true, indicating that - nothing needed to be done, rather than false, indicating that the - section's size could not be computed. - -2002-06-18 Dave Brolley - - From Catherine Moore, Michael Meissner, Dave Brolley: - * po/SRC-POTFILES.in: Add cpu-frv.c and elf32-frv.c - * targets.c: Support bfd_elf32_frv_vec. - * reloc.c: Add FRV relocs. - * configure.in: Add support for bfd-elf32-frv-vec. - * config.bfd (targ_cpu): Add support for frv-*-elf. - * archures.c: Add frv arch and machines. - * Makefile.am (ALL_MACHINES): Add cpu-frv.lo. - (ALL_MACHINES_CFILES): Add cpu-frv.c. - (BFD32_BACKENDS): Add elf32-frv.lo. - (BFD32_BACKENDS_CFILES): Add elf32-frv.c - (cpu-frv.lo): New target. - (elf32-frv.lo): New target. - * cpu-frv.c: New file. - * elf32-frv.c: New file. - -2002-06-18 Jakub Jelinek - - * elfcode.h (elf_object_p): Sanity check eh_shoff == 0 implies - e_shnum == 0. - Only read the first section header if e_shoff is non-zero. - Don't consider e_shstrndx if there are no sections. - -2002-06-17 Tom Rix - - * elf32-d10v.c (elf_d10v_howto_table): Change R_D10V_10_PCREL_R, - R_D10V_10_PCREL_L and R_D10V_18_PCREL to use - complain_overflow_bitfield. - -2002-06-17 Alan Modra - - * opncls.c (bfd_openr): Remove redundant bfd_set_error. - (bfd_fdopenr): Likewise. - (bfd_openstreamr): Likewise. - (bfd_openw): Likewise. - - * targets.c: Sort target vecs. - (_bfd_target_vector): Add aix5coff64_vec, bfd_elf32_sh64_vec, - bfd_elf32_sh64l_vec, bfd_elf32_sh64lnbsd_vec, - bfd_elf32_sh64nbsd_vec, bfd_elf64_sh64_vec, bfd_elf64_sh64l_vec, - bfd_elf64_sh64lnbsd_vec, bfd_elf64_sh64nbsd_vec. - * configure.in: Sort target vecs. Add m88kmach3_vec. - * configure: Regenerate. - -2002-06-16 Hans-Peter Nilsson - - * elf64-mmix.c (bpo_reloc_request_sort_fn): Use member - bpo_reloc_no to break sort order ties, not address of items. - -2002-06-16 John David Anglin - - * elf-hppa.h (elf_hppa_final_link): Fix formatting in comment. - Skip excluded sections in determing __gp value. - (elf_hppa_final_link_relocate): Use the symbol's address in - R_PARISC_FPTR64 relocations that don't need an opd entry. - * elf64-hppa.c (allocate_dynrel_entries): Simplify code. - (elf64_hppa_finalize_dynreloc): Likewise. - (elf64_hppa_size_dynamic_sections): Move comments and fix typo. - (elf64_hppa_finish_dynamic_symbol): Break up assert. - -2002-06-14 Sergey Grigoriev - - * pei-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Enable 16 byte - alignment for .bss, .data and .text sections so that sse and sse2 - code will work. - * pe-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise. - -2002-06013 J"orn Rennecke - - config.bfd: Add support for sh[1234]l*-*-elf* | sh3el*-*-elf*, - sh[1234]*-elf*. - -2002-06-12 John David Anglin - - * elflink.h (elf_bfd_final_link): Improve error handling for missing - dynamic sections. - - * elf64-hppa.c (allocate_global_data_opd): We don't need an opd entry - for a symbol that has no output section. - (allocate_dynrel_entries): Correct comment. - (elf64_hppa_finalize_dynreloc): Likewise. Don't create an opd entry - unless we want one. - (elf64_hppa_finalize_opd): Prevent segfault if dyn_h is NULL. - (elf64_hppa_finalize_dlt): Likewise. Prevent segfault for symbols - with no section. Remove unnecessary parentheses. - -2002-06-11 Tom Rix - - * coffcode.h (coff_compute_section_file_positions): Add data - section to AIX loader alignment check. - - * coff-rs6000.c (_bfd_xcoff_mkobject): Set default text section - alignment to 4 bytes. - (_bfd_xcoff_copy_private_bfd_data): Use text and data alignment - power accessor macro. - (do_shared_object_padding): Remove invalid assertion. - -2002-06-10 Richard Sandiford - - * section.c (_bfd_strip_section_from_output): Set SEC_EXCLUDE - for removed output sections. - -2002-06-10 Geoffrey Keating - - * merge.c (merge_strings): Use htab_create_alloc with calloc, not - htab_alloc. - * elf-strtab.c (_bfd_elf_strtab_finalize): Likewise. - -2002-06-08 H.J. Lu - - * elf.c (copy_private_bfd_data): Don't cast to bfd_size_type to - work around a long long bug in gcc 2.96 on mips. - -2002-06-08 Jason Thorpe - - * Makefile.am (BFD32_BACKENDS): Add vax1knetbsd.lo. - (BFD32_BACKENDS_CFILES): Add vax1knetbsd.c. - Regenerate dependency lists. - * Makefile.in: Regenerate. - * config.bfd (vax-*-netbsdelf*, vax-*-netbsdaout*): Add - vax1knetbsd_vec to targ_selvecs. - * configure.in: Add vax1knetbsd_vec. - * configure: Regenerate. - * targets.c (_bfd_target_vector): Add vax1knetbsd_vec. - * vax1knetbsd.c: New file. - * vaxnetbsd.c: Update copyright years. - (TARGET_PAGE_SIZE): Set to 0x1000. - (DEFAULT_MID): Set to M_VAX4K_NETBSD. - -2002-06-08 Matt Thomas - - * libaout.h (enum machine_type): Add M_VAX4K_NETBSD. - -2002-06-08 Alan Modra - - * elf64-sh64.c (sh64_elf64_link_output_symbol_hook): Make static. - -2002-06-08 Alan Modra - - * Makefile.am: Run "make dep-am". - * Makefile.in: Regenerate. - - * armnetbsd.c: Replace CONST with const. - * corefile.c: Likewise. - * elf32-dlx.c: Likewise. - * elf64-mips.c: Likewise. - * mmo.c: Likewise. - * ns32knetbsd.c: Likewise. - - * elf64-sparc.c (sparc64_elf_add_symbol_hook): Check the hash - table is elf64-sparc. - -2002-06-08 Thiemo Seufer - - * elfxx-mips.c (_bfd_mips_elf_relocate_section): Simplify code. - Fix RELA addends to get not shifted in the result. Don't do special - handling of R_MIPS_64 for NewABI. - -2002-06-07 Alan Modra - - * aoutx.h (NAME(aout,slurp_symbol_table)): Use bfd_zmalloc. - (NAME(aout,slurp_reloc_table)): Likewise. - * coff-mips.c (mips_relax_section): Use bfd_zalloc. - * coff-rs6000.c (xcoff_write_armap_big): Use bfd_zmalloc. - (xcoff_write_archive_contents_big): Likewise. - (xcoff_generate_rtinit): Likewise. - (xcoff_generate_rtinit): Likewise, and check error return. - * coff64-rs6000.c (xcoff64_generate_rtinit): Likewise. - * coffgen.c (coff_section_symbol): Use bfd_zalloc. - (coff_get_normalized_symtab): Likewise. - (coff_make_empty_symbol): Likewise. - (bfd_coff_set_symbol_class): Likewise. - * cofflink.c (coff_link_add_symbols): Likewise. - * ecoff.c (_bfd_ecoff_make_empty_symbol): Likewise. - * ecofflink.c (ecoff_write_shuffle): Use bfd_zmalloc. - (bfd_ecoff_write_accumulated_debug): Likewise. - * elf64-alpha.c (get_got_entry): Use bfd_zalloc. - * i386linux.c (bfd_i386linux_size_dynamic_sections): Likewise. - * i386lynx.c (NAME(lynx,slurp_reloc_table)): Use bfd_zmalloc. - * ieee.c (do_with_relocs): Use bfd_zalloc. - * m68klinux.c (bfd_m68klinux_size_dynamic_sections): Likewise. - * pdp11.c (NAME(aout,slurp_symbol_table)): Use bfd_zmalloc. - (NAME(aout,slurp_reloc_table)): Likewise. - (NAME(aout,squirt_out_relocs)): Don't memset when zalloc'd. - * reloc16.c (bfd_coff_reloc16_relax_section): Use bfd_zmalloc. - * som.c (som_build_and_write_symbol_table): Likewise. - (som_slurp_string_table): Likewise. - (som_slurp_symbol_table): Likewise. - (som_bfd_ar_write_symbol_stuff): Likewise. - * sparclinux.c (bfd_sparclinux_size_dynamic_sections): Use bfd_zalloc. - * sunos.c (bfd_sunos_size_dynamic_sections): Likewise. - * tekhex.c (find_chunk): Likewise. Get rid of unused "sname". - * vms-gsd.c (_bfd_vms_slurp_gsd): Use bfd_zmalloc. - * xcofflink.c (xcoff_link_add_symbols): Use bfd_zalloc/bfd_zmalloc. - -2002-06-07 Alan Modra - - * elf-bfd.h (struct bfd_elf_section_data ): Replace with - "group" union. - (elf_group_name): Update. - (elf_group_id): Define. - (bfd_elf_set_group_contents): Declare. - * elf.c (elf_fake_sections): Qualify use of elf_group_name. - (set_group_contents): Rename to bfd_elf_set_group_contents. Remove - ATTRIBUTE_UNUSED from failedptrarg. If elf_group_id is set, use - that sym for the signature. - (_bfd_elf_compute_section_file_positions): Don't call - set_group_contents for "ld -r" case. - (swap_out_syms): Use bfd_zalloc. - * elflink.h (elf_link_add_archive_symbols): Likewise. - (NAME(bfd_elf,size_dynamic_sections)): Likewise. - (elf_bfd_final_link): Call bfd_elf_set_group_contents. - -2002-06-07 Alan Modra - - * elf64-ppc.c (ppc64_elf_relocate_section): Allow unresolved - relocs in opd for non-shared too. - -2002-06-06 Jeffrey Law - - * elf32-h8300.c (elf32_h8_relax_section): Ignore uninteresting - relocations. - -2002-06-06 Nick Clifton - - * merge.c: Include libiberty.h. - * elf-strtab.c: Include libiberty.h. - -2002-06-06 Elias Athanasopoulos - - * peXXigen.c (pe_print_idata): Remove unused variable. - -2002-06-06 David Heine - - * elf.c (assign_file_positions_for_segments): Remove unallocated - sections from the section to segment mapping for PT_LOAD segments. - Update comment about empty loadable segments. - -2002-06-06 Richard Sandiford - - * stabs.c (_bfd_link_section_stabs): Check that the symbol offset - is within the .stabstr section. - -2002-06-06 Alan Modra - - * elf-bfd.h (struct elf_size_info ): Function args - are "const PTR", not "const PTR *". - (bfd_elf32_swap_symbol_in): Likewise. - (bfd_elf64_swap_symbol_in): Likewise. - * elfcode.h (elf_swap_symbol_in): Change input args to const PTR. - (elf_slurp_symbol_table): Adjust call to elf_swap_symbol_in. - * elflink.h (elf_link_is_defined_archive_symbol): Likewise. - (elf_link_add_object_symbols): Likewise. - (elf_link_record_local_dynamic_symbol): Likewise. - (elf_link_input_bfd): Likewise. - (elf_gc_mark): Likewise. - (elf_reloc_symbol_deleted_p): Likewise. - * elf-m10200.c (mn10200_elf_relax_section): Likewise. - (mn10200_elf_relax_delete_bytes): Likewise. - (mn10200_elf_symbol_address_p): Likewise. - (mn10200_elf_get_relocated_section_contents): Likewise. - * elf-m10300.c (mn10300_elf_relax_section): Likewise. - (mn10300_elf_relax_section): Likewise. - (mn10300_elf_relax_delete_bytes): Likewise. - (mn10300_elf_symbol_address_p): Likewise. - (mn10300_elf_get_relocated_section_contents): Likewise. - * elf32-h8300.c (elf32_h8_relax_section): Likewise. - (elf32_h8_relax_delete_bytes): Likewise. - (elf32_h8_symbol_address_p): Likewise. - (elf32_h8_get_relocated_section_contents): Likewise. - * elf32-hppa.c (get_local_syms): Likewise. - * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): Likewise. - * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Likewise. - * elf32-sh.c (sh_elf_relax_section): Likewise. - (sh_elf_relax_delete_bytes): Likewise. - (sh_elf_get_relocated_section_contents): Likewise. - * elf32-xstormy16.c (xstormy16_elf_relax_section): Likewise. - * elf64-alpha.c (elf64_alpha_relax_section): Likewise. - * elf64-hppa.c (elf64_hppa_check_relocs): Likewise. - * elf64-mmix.c (mmix_elf_relax_section): Likewise. - * elf64-ppc.c (get_local_syms): Likewise. - * elf64-sh64.c (sh_elf64_get_relocated_section_contents): Likewise. - * elfxx-ia64.c (elfNN_ia64_relax_section): Likewise. - -2002-06-05 J"orn Rennecke - - * config.bfd (sh64l*-*-elf*, shl*-*-elf*): New configurations. - -2002-06-05 Alan Modra - - * elf.c (group_signature): Swap in the whole symbol, and handle - extracting section symbol names. - (setup_group): Add comment. - (set_group_contents): When called from objcopy or ld, arrange for - section contents to be written. Write group member output section - indices to allow objcopy to reorganize sections. - (_bfd_elf_copy_private_section_data): Copy group info. - - * elf-bfd.h (struct elf_size_info): Add swap_symbol_in field. - (bfd_elf32_swap_symbol_in): Update prototype. - (bfd_elf64_swap_symbol_in): Likewise. - * elfcode.h (elf_swap_symbol_in): Change input args to const PTR *. - (elf_slurp_symbol_table): Adjust call to elf_swap_symbol_in. - * elflink.h (elf_link_is_defined_archive_symbol): Likewise. - (elf_link_add_object_symbols): Likewise. - (elf_link_record_local_dynamic_symbol): Likewise. - (elf_link_input_bfd): Likewise. - (elf_gc_mark): Likewise. - (elf_reloc_symbol_deleted_p): Likewise. - * elf-m10200.c (mn10200_elf_relax_section): Likewise. - (mn10200_elf_relax_delete_bytes): Likewise. - (mn10200_elf_symbol_address_p): Likewise. - (mn10200_elf_get_relocated_section_contents): Likewise. - * elf-m10300.c (mn10300_elf_relax_section): Likewise. - (mn10300_elf_relax_section): Likewise. - (mn10300_elf_relax_delete_bytes): Likewise. - (mn10300_elf_symbol_address_p): Likewise. - (mn10300_elf_get_relocated_section_contents): Likewise. - * elf32-h8300.c (elf32_h8_relax_section): Likewise. - (elf32_h8_relax_delete_bytes): Likewise. - (elf32_h8_symbol_address_p): Likewise. - (elf32_h8_get_relocated_section_contents): Likewise. - * elf32-hppa.c (get_local_syms): Likewise. - * elf32-m68k.c (bfd_m68k_elf32_create_embedded_relocs): Likewise. - * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Likewise. - * elf32-sh.c (sh_elf_relax_section): Likewise. - (sh_elf_relax_delete_bytes): Likewise. - (sh_elf_get_relocated_section_contents): Likewise. - * elf32-xstormy16.c (xstormy16_elf_relax_section): Likewise. - * elf64-alpha.c (elf64_alpha_relax_section): Likewise. - * elf64-hppa.c (elf64_hppa_check_relocs): Likewise. - * elf64-mmix.c (mmix_elf_relax_section): Likewise. - * elf64-ppc.c (get_local_syms): Likewise. - * elf64-sh64.c (sh_elf64_get_relocated_section_contents): Likewise. - * elfxx-ia64.c (elfNN_ia64_relax_section): Likewise. - * elfcode.h (NAME(_bfd_elf,size_info)): Update initialiser. - * elf64-alpha.c (alpha_elf_size_info): Likewise. - * elf64-hppa.c (hppa64_elf_size_info): Likewise. - * elf64-mips.c (mips_elf64_size_info): Likewise. - * elf64-s390.c (s390_elf64_size_info): Likewise. - * elf64-sparc.c (sparc64_elf_size_info): Likewise. - -2002-06-05 Maciej W. Rozycki - - * elf32-mips.c (elf32_mips_ignore_discarded_relocs): Move to... - elfxx-mips.c (_bfd_mips_elf_ignore_discarded_relocs): ... here. - elf64-mips.c (elf_backend_ignore_discarded_relocs): Use - _bfd_mips_elf_ignore_discarded_relocs. - elfxx-mips.h (_bfd_mips_elf_ignore_discarded_relocs): Declare. - -2002-06-05 H.J. Lu - - * elfxx-mips.c (mips_elf_calculate_relocation): Call - _bfd_elf_rel_local_sym for STT_SECTION relocations against - the SEC_MERGE section. - -2002-06-05 Alan Modra - - * coff-alpha.c: Update copyright date. - * coff-mips.c: Likewise. - * xcoff-target.h: Likewise. - - * bfd-in.h: Remove "taken from the source" comment. - * libbfd-in.h: Likewise. - * libcoff-in.h: Likewise. - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - * libcoff.h: Regenerate. - - * elf.c (bfd_elf_discard_group): Return true. - * elf-bfd.h (bfd_elf_discard_group): Declare. - * bfd-in.h (bfd_elf_discard_group): Don't declare here. - * section.c (bfd_discard_group): Rename to bfd_generic_discard_group. - * bfd.c (bfd_discard_group): Define. - * targets.c (struct bfd_target): Add _bfd_discard_group. - (BFD_JUMP_TABLE_LINK): Here too. - * libbfd-in.h (_bfd_nolink_bfd_discard_group): Define. - * aout-adobe.c (aout_32_bfd_discard_group): Define. - * aout-target.h (MY_bfd_discard_group): Define. - * aout-tic30.c (MY_bfd_discard_group): Define. - * binary.c (binary_bfd_discard_group): Define. - * bout.c (b_out_bfd_discard_group): Define. - * coff-alpha.c (_bfd_ecoff_bfd_discard_group): Define. - * coffcode.h (coff_bfd_discard_group): Define. - * coff-mips.c (_bfd_ecoff_bfd_discard_group): Define. - * elfxx-target.h (bfd_elfNN_bfd_discard_group): Define. - * i386msdos.c (msdos_bfd_discard_group): Define. - * i386os9k.c (os9k_bfd_discard_group): Define. - * ieee.c (ieee_bfd_discard_group): Define. - * ihex.c (ihex_bfd_discard_group): Define. - * mmo.c (mmo_bfd_discard_group): Define. - * nlm-target.h (nlm_bfd_discard_group): Define. - * oasys.c (oasys_bfd_discard_group): Define. - * ppcboot.c (ppcboot_bfd_discard_group): Define. - * som.c (som_bfd_discard_group): Define. - * srec.c (srec_bfd_discard_group): Define. - * tekhex.c (tekhex_bfd_discard_group): Define. - * versados.c (versados_bfd_discard_group): Define. - * vms.c (vms_bfd_discard_group): Define. - * xcoff-target.h (_bfd_xcoff_bfd_discard_group): Define. - * coff64-rs6000.c (rs6000coff64_vec): Update initialiser. - (aix5coff64_vec): Likewise. - * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Likewise. - -2002-06-04 Jason Thorpe - - * Makefile.am (BFD32_BACKENDS): Add elf32-sh64-com.lo. - (BFD32_BACKENDS_CFILES): Add elf32-sh64-com.c. - (elf32-sh64-com.lo): New dependency list. - * Makefile.in: Regenerate. - * configure.in (bfd_elf32_sh64_vec, bfd_elf32_sh64l_vec) - (bfd_elf32_sh64nbsd_vec, bfd_elf32_sh64lnbsd_vec): Add - elf32-sh64-com.lo. - * configure: Regenerate. - * elf32-sh64.c (sh64_address_in_cranges) - (sh64_get_contents_type, sh64_address_is_shmedia): Move to... - (crange_qsort_cmpb, crange_qsort_cmpl, crange_bsearch_cmpb): - (crange_bsearch_cmpl): Prepend _bfd_sh64_ to name and move to... - * elf32-sh64-com.c: ...here. New file. - -2002-06-04 Alan Modra - - * elf32-openrisc.c (openrisc_elf_gc_mark_hook): Remove - ATTRIBUTE_UNUSED on used params. - * elf32-vax.c (elf_vax_gc_mark_hook): Remove unnecessary checks - before calling bfd_section_from_elf_index on local syms. - * elf64-sh64.c (sh_elf64_gc_mark_hook): Likewise. - -2002-06-04 Jason Thorpe - - * Makefile.am (BFD32_BACKENDS): Add elf32-sh64-nbsd.lo. - (BFD32_BACKENDS_CFILES): Add elf32-sh64-nbsd.c. - (BFD64_BACKENDS): Add elf64-sh64-nbsd.lo. - (BFD64_BACKENDS_CFILES): Add elf64-sh64-nbsd.c. - (elf32-sh64-nbsd.lo, elf64-sh64-nbsd.lo): New rules. - * Makefile.in: Regenerate. - * config.bfd (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*) - (sh64-*-netbsd*): New targets. - * configure.in: Add bfd_elf32_sh64nbsd_vec, bfd_elf32_sh64lnbsd_vec, - bfd_elf64_sh64nbsd_vec, and bfd_elf64_sh64lnbsd_vec. - * configure: Regenerate. - * elf32-sh64-nbsd.c: New file. - * elf64-sh64-nbsd.c: New file. - * targets.c: Add extern decls for bfd_elf32_sh64nbsd_vec, - bfd_elf32_sh64lnbsd_vec, bfd_elf64_sh64nbsd_vec, and - bfd_elf64_sh64lnbsd_vec. - -2002-06-04 Alan Modra - - * elf.c (setup_group): Set SEC_LINK_ONCE on GRP_COMDAT groups. - (bfd_section_from_shdr): Likewise. Set section name of group - sections from signature. - (group_signature): Split out from setup_group. Ensure symbol table - is available. - (bfd_elf_discard_group): New function. - (_bfd_elf_make_section_from_shdr): Don't set SEC_LINK_ONCE on - .gnu.linkonce* sections if they are members of a group. - (set_group_contents): Set GRP_COMDAT flag. - * section.c (bfd_discard_group): New function. - * bfd-in.h (bfd_elf_discard_group): Declare. - * bfd-in2.h: Regenerate. - * elf-bfd.h (struct bfd_elf_section_data): Add linkonce_p field. - (elf_linkonce_p): Define. - -2002-06-04 Alan Modra - - * elf.c (bfd_section_from_shdr): Make "name" const. - * elf-bfd.h (elf_backend_section_from_shdr): Likewise. - * elf32-i370.c (i370_elf_section_from_shdr): Likewise. - * elf32-ppc.c (ppc_elf_section_from_shdr): Likewise. - * elf32-sh64.c (sh64_backend_section_from_shdr): Likewise. - * elf32-v850.c (v850_elf_section_from_shdr): Likewise. - * elf64-alpha.c (elf64_alpha_section_from_shdr): Likewise. - * elf64-hppa.c (elf64_hppa_section_from_shdr): Likewise. - * elf64-ppc.c (ppc64_elf_section_from_shdr): Likewise. - * elfxx-ia64.c (elfNN_ia64_section_from_shdr): Likewise. - * elfxx-mips.c (_bfd_mips_elf_section_from_shdr): Likewise. - * elfxx-mips.h (_bfd_mips_elf_section_from_shdr): Likewise. - -2002-06-03 Maciej W. Rozycki - - * elfxx-mips.c (ABI_64_P): Use backend's data to determine the - ABI. - -2002-06-02 Kazu Hirata - - * elf32-arc.c: Fix formatting. - * elf32-arm.h: Likewise. - * elf32-cris.c: Likewise. - * elf32-dlx.c: Likewise. - * elf32-hppa.c: Likewise. - * elf32-i386.c: Likewise. - * elf32-i386qnx.c: Likewise. - * elf32-or32.c: Likewise. - * elf32-s390.c: Likewise. - * elf32-sh64.c: Likewise. - * elf32-vax.c: Likewise. - * elf32-xstormy16.c: Likewise. - * elf64-alpha.c: Likewise. - * elf64-mmix.c: Likewise. - * elf64-ppc.c: Likewise. - * elf64-s390.c: Likewise. - * elf64-sh64.c: Likewise. - * elf64-x86-64.c: Likewise. - -2002-06-02 Richard Henderson - - * elf64-alpha.c (elf64_alpha_relocate_section): Don't dereference - null when there are no got entries for a symbol. - (elf64_alpha_relax_find_tls_segment): Rearrange to avoid - uninitialized variable warning. - -2002-06-01 Richard Henderson - - * elf64-alpha.c (elf64_alpha_relax_with_lituse): Don't test for - undefined symbols here. - (elf64_alpha_relax_section): Do it here. Also test for not - defined in the current module. - (elf64_alpha_relocate_section_r): Split out of ... - (elf64_alpha_relocate_section): ... here. Don't dereference - NULL when looking up local got entries. - -2002-06-01 Richard Henderson - - * elf64-alpha.c (elf64_alpha_relax_with_lituse): Reject undefined - symbols from JSR relaxation. - (elf64_alpha_size_plt_section_1): New. - (elf64_alpha_calc_dynrel_sizes): Split out .rela.got bits ... - (elf64_alpha_size_rela_got_1): ... here. - (elf64_alpha_size_dynamic_sections): Split out .rela.got bits ... - (elf64_alpha_size_rela_got_section): ... here. - (elf64_alpha_size_plt_section): New. - (elf64_alpha_relax_section): Call them. - (elf64_alpha_size_got_sections): Remove output_bfd arg. - (elf64_alpha_finish_dynamic_symbol): Check gotent use_count. - -2002-06-01 Richard Henderson - - * elf64-alpha.c (alpha_get_dtprel_base, alpha_get_tprel_base): New. - (elf64_alpha_relocate_section): Use them. Reject LE TLS relocs - in shared libraries. Fix DTPRELHI and TPRELHI value. - (INSN_ADDQ, INSN_RDUNIQ): New. - (struct alpha_relax_info): Add symtab_hdr, tls_segment, first_gotent. - (elf64_alpha_relax_with_lituse): Return boolean. Remove irelend - argument. Reject dynamic symbols. Use LITUSE symbolic constants. - (elf64_alpha_relax_got_load): Rename from relax_without_lituse. - Handle GOTDTPREL and GOTTPREL relocations. - (elf64_alpha_relax_gprelhilo): New. - (elf64_alpha_relax_tls_get_addr): New. - (elf64_alpha_relax_find_tls_segment): New. - (elf64_alpha_relax_section): Handle TLS relocations. - (ALPHA_ELF_LINK_HASH_TLS_IE): New. - (elf64_alpha_check_relocs): Set it. - -2002-06-01 Richard Henderson - - * elf64-alpha.c (elf64_alpha_relax_section): Don't store computed gp. - - * elf64-alpha.c (elf64_alpha_check_relocs): Fix typo on maybe_dynamic - check; don't suppress dynamic relocs for non-allocated sections. - - * elf64-alpha.c: Remove dead code. - -2002-05-31 Alan Modra - - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - * po/SRC-POTFILES.in: Regenerate. - - * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Don't allocate - space for bss .plt. - -2002-05-31 Graeme Peterson - - * Makefile.am (BFD32_BACKENDS): Add elf32-i386qnx.lo. - (BFD32_BACKENDS_CFILES): Add elf32-i386qnx.c. - Run "make dep-am". - * Makefile.in: Regenerate. - * config.bfd: Add i[3456]86-*-nto-qnx* support. - * configure.in: Add bfd_elf32_i386qnx_vec support. - * configure: Regenerate. - * elf-bfd.h (struct elf_backend_data): Add set_nonloadable_filepos, - is_contained_by_filepos, and copy_private_bfd_data_p. - * elf.c (assign_file_positions_for_segments): Call backend - set_nonloadable_filepos. Fix non-K&R call to _bfd_error_handler. - (IS_CONTAINED_BY_FILEPOS): Define. - (INCLUDE_SECTION_IN_SEGMENT): Also test IS_CONTAINED_BY_FILEPOS. - (copy_private_bfd_data): Use IS_CONTAINED_BY_FILEPOS. Typo fix. - Fix non-K&R call to _bfd_error_handler. - (_bfd_elf_copy_private_section_data): Use backend - copy_private_bfd_data_p. - * elf32-i386.c: Don't include elfxx-target.h when - ELF32_I386_C_INCLUDED is defined. - * elf32-i386qnx.c: New QNX elf backend file. - * elfxx-target.h: Add elf_backend_set_nonloadable_filepos, - elf_backend_is_contained_by_filepos, and - elf_backend_do_copy_private_bfd_data. - * targets.c: Add bfd_target bfd_elf32_i386qnx_vec. - -2002-05-31 Alan Modra - - * elfarm-oabi.c (bfd_elf32_arm_add_glue_sections_to_bfd): Define. - Move other similar defines to start of file. - -2002-05-30 Tom Rix - - * coff-rs6000.c (xcoff_rtype2howto): Handle 16 bit R_RBA. - * coff64-rs6000.c (xcoff64_rtype2howto): Same. - -2002-05-30 Richard Henderson - - * elf64-alpha.c (ALPHA_ELF_LINK_HASH_LU_TLSGD, - ALPHA_ELF_LINK_HASH_LU_TLSLDM, ALPHA_ELF_LINK_HASH_LU_FUNC): New. - (ALPHA_ELF_GOT_ENTRY_RELOCS_DONE): Remove. - (ALPHA_ELF_GOT_ENTRY_RELOCS_XLATED): Remove. - (struct alpha_elf_got_entry): Add reloc_type, reloc_done, reloc_xlated. - (struct alpha_elf_obj_tdata): Rename total_got_entries and - n_local_got_entries to total_got_size and local_got_size. - (elf64_alpha_howto, elf64_alpha_reloc_map): Update for TLS relocs. - (alpha_got_entry_size): New. - (elf64_alpha_relax_with_lituse): Use it. - (elf64_alpha_relax_without_lituse): Likewise. - (MAX_GOT_SIZE): Rename from MAX_GOT_ENTRIES. - (get_got_entry): New. - (elf64_alpha_check_relocs): Handle TLS relocs. Reorganize. - (elf64_alpha_adjust_dynamic_symbol): Test LU_FUNC as a mask. - (elf64_alpha_merge_ind_symbols): Check gotent->reloc_type. - (elf64_alpha_can_merge_gots, elf64_alpha_merge_gots): Likewise. - (elf64_alpha_calc_got_offsets_for_symbol): Use alpha_got_entry_size. - (elf64_alpha_calc_got_offsets): Likewise. - (alpha_dynamic_entries_for_reloc): New. - (elf64_alpha_calc_dynrel_sizes): Use it. - (elf64_alpha_size_dynamic_sections): Likewise. - (elf64_alpha_relocate_section): Handle TLS relocations. - * reloc.c: Add Alpha TLS relocations. - * bfd-in2.h, libbfd.h: Rebuild. - -2002-05-29 Ralf Habacker - - * peXXigen.c (pe_print_idata): Remove double printed - import table lines; add Bound-To comment. - -2002-05-29 Matt Thomas - - * Makefile.am (BFD32_BACKENDS): Add elf32-vax.lo. - (BFD32_BACKENDS_CFILES): Add elf32-vax.c. - (elf32-vax.lo): New rule. - * Makefile.in: Regenerate. - * configure.in (bfd_elf32_vax_vec) - (vaxnetbsd_vec): New vectors. - * configure: Regenerate. - * config.bfd (vax-*-netbsdelf*) - (vax-*-netbsdaout*) - (vax-*-netbsd*): New targets. - * elf32-vax.c: New file. - * reloc.c: Add VAX relocations. - * bfd-in2.h: Regenerate. - * targets.c (_bfd_target_vector): Add bfd_elf32_vax_vec. - -2002-05-29 Jason Thorpe - - * config.bfd (arm-*-netbsd*): Add bfd_elf32_littlearm_vec - and bfd_elf32_bigarm_vec to targ_selvecs. - -2002-05-29 Ralf Habacker - - * peXXigen.c (pe_print_idata): Fix seg faults on printing import tables - with auto-imported symbols. - -2002-05-29 Adam Nemet - - * elf32-arm.h (bfd_elf32_arm_get_bfd_for_interworking): Don't add glue - sections only record bfd. - (bfd_elf32_arm_add_glue_sections_to_bfd): New function. - * bfd-in.h (bfd_elf32_arm_add_glue_sections_to_bfd): Declare it. - * bfd-in2.h: Regenerate. - -2002-05-28 Nick Clifton - - * syms.c (_bfd_stab_section_find_nearest_line): Move - declaration and initialisation of saw_line and saw_func out of - for loop. - -2002-05-29 Alan Modra - - * elf64-ppc.c (ppc64_elf_get_symbol_info): New function. - (bfd_elf64_get_symbol_info): Define. - * elfxx-target.h (bfd_elfNN_get_symbol_info): Only define if undef. - -2002-05-29 Andrey Volkov - - * cpu-h8300.c: Make default h8300 machine first in machine list. - -2002-05-28 Kuang Hwa Lin - - * config.bfd: Added DLX configuraton. - * Makefile.am: Added DLX configuraton. - * configure.in: Added DLX configuraton. - * archures.c: Add DLX architecure. - * reloc.c: Add DLX relocs. - * targets.c: Added DLX target vector. - * configure: Regenerate. - * Makefile.in: Regenreate. - * bfd-in2.h: Regenreate. - * elf32-dlx.c: New file: Support DLX target. - * cpu-dlx.c: New file: Support DLX target. - -2002-05-25 Alan Modra - - * elf32-m68k.c (elf32_m68k_print_private_bfd_data): Formatting. - - * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Revert last change. - (ppc64_elf_check_relocs): Don't set up function descriptor symbol - strings to point inside function code sym string. - (func_desc_adjust): Likewise. - (ppc64_elf_hide_symbol): Rewrite code to look up function code sym. - -2002-05-24 Michal Ludvig - - * elf64-x86-64.c (elf64_x86_64_grok_prstatus): Added. - (elf64_x86_64_grok_psinfo): Added. - -2002-05-24 TAMURA Kent - - * config.bfd: Add a target for i386-netbsdpe. - -2002-05-24 Alan Modra - - * elf64-ppc.c (ppc64_elf_copy_indirect_symbol): Don't copy is_func - and is_func_descriptor. - (func_desc_adjust): Hide function code sym in shared libs unless - there is a matching exported function descriptor sym. - -2002-05-23 Jakub Jelinek - - * elf.c (_bfd_elf_make_section_from_shdr): Set SEC_THREAD_LOCAL - for symbols from SHF_TLS section. - (_bfd_elf_print_private_bfd_data): Add PT_TLS. - (elf_fake_sections): Set SHF_TLS for SEC_THREAD_LOCAL sections. - (map_sections_to_segments): Build PT_TLS segment if necessary. - (assign_file_positions_for_segments): Likewise. - (get_program_header_size): Account for PT_TLS segment. - (swap_out_syms): Set type of BSF_THREAD_LOCAL symbols and symbols from - SEC_THREAD_LOCAL sections to STT_TLS. - * reloc.c: Add 386 and IA-64 TLS relocs. - * section.c (SEC_THREAD_LOCAL): Define. - (SEC_CONSTRUCTOR_TEXT, SEC_CONSTRUCTOR_DATA, SEC_CONSTRUCTOR_BSS): - Remove. - * elflink.h (elf_link_add_object_symbols): Support .tcommon. - (size_dynamic_sections): If DF_STATIC_TLS, set DF_FLAGS - unconditionally. - (struct elf_final_link_info): Add first_tls_sec. - (elf_bfd_final_link): Set first_tls_sec. - Compute elf_hash_table (info)->tls_segment. - (elf_link_output_extsym): Handle STT_TLS symbols. - (elf_link_input_bfd): Likewise. - * syms.c (BSF_THREAD_LOCAL): Define. - * bfd-in2.h: Rebuilt. - * libbfd.h: Rebuilt. - * elf32-i386.c (elf_i386_tls_transition, dtpoff_base, tpoff, - elf_i386_mkobject, elf_i386_object_p): New functions. - (elf_howto_table): Add TLS relocs. - (elf_i386_reloc_type_lookup): Support TLS relocs. - (elf_i386_info_to_howto_rel): Likewise. - (struct elf_i386_link_hash_entry): Add tls_type. - (struct elf_i386_obj_tdata): New. - (elf_i386_hash_entry, elf_i386_tdata, elf_i386_local_got_tls_type): - New macros. - (struct elf_i386_link_hash_table): Add tls_ldm_got. - (link_hash_newfunc): Clear tls_type. - (elf_i386_check_relocs): Support TLS relocs. - (elf_i386_gc_sweep_hook): Likewise. - (allocate_dynrelocs): Likewise. - (elf_i386_size_dynamic_sections): Likewise. - (elf_i386_relocate_section): Likewise. - (elf_i386_finish_dynamic_symbol): Likewise. - (bfd_elf32_mkobject, elf_backend_object_p): Define. - * elfxx-ia64.c (struct elfNN_ia64_dyn_sym_info): Add tprel_offset, - dtpmod_offset, dtprel_offset, tprel_done, dtpmod_done, dtprel_done, - want_tprel, want_dtpmod, want_dtprel. - (elfNN_ia64_tprel_base, elfNN_ia64_dtprel_base): New functions. - (ia64_howto_table): Add TLS relocs, rename R_IA64_LTOFF_TP22 to - R_IA64_LTOFF_TPREL22. - (elf_code_to_howto_index): Add TLS relocs. - (elfNN_ia64_check_relocs): Support TLS relocs. - (allocate_global_data_got): Account for TLS .got data. - (allocate_dynrel_entries): Account for TLS dynamic relocations. - (elfNN_ia64_install_value): Supprt TLS relocs. - (set_got_entry): Support TLS relocs. - (elfNN_ia64_relocate_section): Likewise. - -2002-05-23 Nick Clifton - - * elf32-arm.h (elf32_arm_final_link_relocate): For the Thumb - BLX reloc round the relocation up rather than down. - * coff-arm.c (coff_arm_relocate_section): Likewise. - -2002-05-21 H.J. Lu (hjl@gnu.org) - - * linker.c (_bfd_generic_link_add_one_symbol): Allow multiple - definition. - -2002-05-22 Alan Modra - - * elf64-ppc.c (ppc64_elf_size_stubs): Don't strip .branch_lt. - (ppc64_elf_relocate_section): Handle unresolved relocs in opd. - -2002-05-22 Alan Modra - - * elf64-ppc.c (ppc64_elf_relocate_section): Return false for - unresolved relocs. - (ppc64_elf_size_dynamic_sections): Check for splt NULL. - -2002-05-21 Thiemo Seufer - - * bfd.c (bfd_get_arch_size): Remove bfd_set_error call for - non-ELF targets. - -2002-05-21 Thiemo Seufer - - * elf-bfd.h (elf_backend_emit_relocs): Change prototype to return - an error value. - * elflink.h (elf_link_output_relocs): Likewise. Improve error message. - return with false on error. - (elf_link_input_bfd): Check reloc_emitter return value. - -2002-05-21 Jason Thorpe - - * config.bfd (armeb-*-netbsdelf*): New target. - -2002-05-20 Alan Modra - - * elf64-ppc.c (ppc_build_one_stub): Point undefined function syms - at the plt call stub. - -2002-05-19 Thiemo Seufer - - * cpu-mips.c (mips_compatible): Don't try to check machine - compatibility. - -2002-05-18 Tom Rix - - * coff64-rs6000.c (_bfd_xcoff64_swap_aux_out): Fix C_FILE auxent. - -2002-05-17 Alan Modra - - * elf64-ppc.c (ppc64_elf_info_to_howto): Formatting. - (ppc64_elf_relocate_section): Don't warn about reloc overflow when - we've already warned about an undefined symbol. Report more - detail on reloc errors. - -2002-05-17 Alan Modra - - * acinclude.m4 (AM_INSTALL_LIBBFD): New. - * configure.in: Invoke AM_INSTALL_LIBBFD. - * Makefile.am (install-data-local): Revert 2002-05-13. Move to.. - (install_libbfd): .. New target. - (uninstall_libbfd): Likewise. - (install-bfdlibLTLIBRARIES): Likewise. - (uninstall-bfdlibLTLIBRARIES): Likewise. - (bfdlibdir): New. - (bfdincludedir): New. - (lib_LTLIBRARIES): Rename to bfdlib_LTLIBRARIES. - * aclocal.m4: Regenerate. - * configure: Regenerate. - * Makefile.in: Regenerate. - -2002-05-17 Stuart Balfour - - * hash.c (bfd_hash_lookup): Remove computation of len from inside - hash loop. - -2002-05-16 Nick Clifton - - * config.bfd: Add targets for sh64-linux (little endian and - big endian). - -2002-05-15 Laurent Pinchart - - * peXXigen.c (pe_print_idata): Do not assume that the first thunk - is located in the same section as the import table. Instead - check, and if necessary load the section containing the thunk. - -2002-05-15 Nick Clifton - - * aix5ppc-core.c (xcoff64_core_p): Replace bfd_read with - bfd_bread. - (xcoff64_core_file_matches_executable_p): Replace bfd_read - with bfd_bread. - -2002-05-15 Alan Modra - - * aix5ppc-core.c: Warning fixes. - * aout-adobe.c (aout_32_bfd_link_just_syms): Define. - * aout-target.h (MY_bfd_link_just_syms): Define. - * aout-tic30.c (MY_bfd_link_just_syms): Define. - * bfd.c (bfd_link_just_syms): Define. - * binary.c (binary_bfd_link_just_syms): Define. - * bout.c (b_out_bfd_link_just_syms): Define. - * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Update initializer. - * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Likewise. - * coffcode.h (coff_bfd_link_just_syms): Define. - * elf-bfd.h (enum elf_link_info_type): Add ELF_INFO_TYPE_JUST_SYMS. - (elf_discarded_section): Check for ELF_INFO_TYPE_JUST_SYMS. - (_bfd_elf_link_just_syms): Declare. - * elf.c (_bfd_elf_link_just_syms): New function. - * elf-eh-frame.c (_bfd_elf_maybe_strip_eh_frame_hdr): Check that - sections haven't already been discarded by the linker. - * elflink.h (elf_link_add_object_symbols): Likewise for stab - sections and SEC_MERGE sections. - (elf_bfd_discard_info): Similarly here. - * elfxx-target.h (bfd_elfNN_bfd_link_just_syms): Define. - * i386msdos.c (msdos_bfd_link_just_syms): Define. - * i386os9k.c (os9k_bfd_link_just_syms): Define. - * ieee.c (ieee_bfd_link_just_syms): Define. - * ihex.c (ihex_bfd_link_just_syms): Define. - * libbfd-in.h (_bfd_nolink_bfd_link_just_syms): Define. - (_bfd_generic_link_just_syms): Declare. - * libecoff.h (_bfd_ecoff_bfd_link_just_syms): Define. - * linker.c (_bfd_generic_link_just_syms): New function. - * mmo.c (mmo_bfd_link_just_syms): Define. - * nlm-target.h (nlm_bfd_link_just_syms): Define. - * oasys.c (oasys_bfd_link_just_syms): Define. - * ppcboot.c (ppcboot_bfd_link_just_syms): Define. - * som.c (som_bfd_link_just_syms): Define. - * srec.c (srec_bfd_link_just_syms): Define. - * targets.c (struct bfd_target): Add _bfd_link_just_syms. - (BFD_JUMP_TABLE_LINK): And here. - * tekhex.c (tekhex_bfd_link_just_syms): Define. - * versados.c (versados_bfd_link_just_syms): Define. - * vms.c (vms_bfd_link_just_syms): Define. - * libbfd.h: Regenerate. - * bfd-in2.h: Regenerate. - -2002-05-15 Thiemo Seufer - - * elf32-mips.c: Remove superfluous definitions copied from - elfxx-mips.c. - (bfd_elf32_bigmips_vec,bfd_elf32_littlemips_vec): Use the - SGIish vectors to check the special case. - (mips_elf_hi16_reloc): Fix comment. - (mips_elf_got16_reloc): Likewise. - (_bfd_mips_elf32_gprel16_reloc): Likewise. - (elf_reloc_map): Code cleanup. - (mips_reloc_map): Add comment. - (bfd_elf23_bfd_reloc_type_lookup): Code cleanup. - (mips_elf32_rtype_to_howto): Likewise. - (mips_elf32_discard_info): Likewise. - (elf32_mips_irix_compat): Invert logic: Only SGIish vectors - lead to IRIX compatibility now. - -2002-05-15 Thiemo Seufer - - * elfxx-mips.c: Call it IRIX, not Irix in comments. - -2002-05-13 Jason Thorpe - - * config.bfd (shle-*-netbsdelf*): Add target which includes - sh64 support. - -2002-05-13 David Edelsohn - - * configure.in: Revert 2002-04-07. Instead, auto-configure - HAVE_ST_C_IMPL. - * configure: Regenerate. - * config.in: Regenerate. - * rs6000-core.c (CNEW_IMPL): Guard use of c_impl with HAVE_ST_C_IMPL - or AIX_5_CORE. - -2002-05-11 Federico G. Schwindt - - * configure.in (sparc*-*-openbsd*): Support sparc64-openbsd - corefiles as well.2 - * configure: Regenerate. - -2002-05-13 Alan Modra - - * Makefile.am (install-data-local): Install headers to - $(exec_prefix)/include. - * Makefile.in: Regenerate. - -2002-05-11 Ralf Corsepius - Daniel Jacobowitz - - * coff-sh.c (sh_reloc_map): Map to R_SH_IMM32 for non-PE. Don't - map BFD_RELOC_RVA. - -2002-05-11 Federico G. Schwindt - - * config.bfd (alpha*-*-openbsd*, sparc64*-*-openbsd*, - hppa*-*-openbsd*): New targets. - * configure.in (alpha*-*-openbsd*): Set COREFILE. - * configure: Regenerate. - -2002-05-10 Tom Rix - - * coff64-rs6000.c (xcoff64_reloc_type_br): New function for - xcoff64_ppc_relocate_section. - * coff-rs6000.c : Extern common xcoff_reloc_type functions. - * libxcoff.h: Common xcoff_reloc_type function declaration. - -2002-05-10 Alan Modra - - * elf32-i386.c (elf_i386_relocate_section): Remove overflow checks - added in 2002-05-09 commit. - - * elf32-hppa.c (elf32_hppa_size_stubs): Revert part of 2002-05-04, - don't look for stubs on all undefined syms. - -2002-05-09 Alan Modra - - * elf64-ppc.c (RA_REGISTER_MASK, RA_REGISTER_SHIFT): Delete. - (ppc64_elf_howto_raw ): Not pc_relative or - pcrel_offset. - - * elf32-i386.c (elf_howto_table): Comments. - (elf_i386_relocate_section): Handle more relocs for relocatable - linking and against SEC_MERGE sections. - -2002-05-08 Alan Modra - - * elf32-ppc.c (ppc_elf_create_got): New function. - (ppc_elf_create_dynamic_sections): Call ppc_elf_create_got before - _bfd_elf_create_dynamic_sections. Correct .plt flags. - (ppc_elf_check_relocs): Use ppc_elf_create_got in place of - _bfd_elf_create_got_section. - -2002-05-07 Alan Modra - - * elf-bfd.h (struct elf_backend_data): Add rela_normal. - * elfxx-target.h (elf_backend_rela_normal): Define. - (elfNN_bed): Init rela_normal. - * elflink.h (elf_link_input_bfd ): Handle adjustment - for section symbols here if rela_normal. Simplify abs section test. - * elf-m10200.c (mn10200_elf_relocate_section): If relocatable, - return immediately. Remove code handling relocatable linking. - * elf-m10300.c (mn10300_elf_relocate_section): Likewise. - * elf32-fr30.c (fr30_elf_relocate_section): Likewise. - * elf32-i370.c (i370_elf_relocate_section): Likewise. - * elf32-i860.c (elf32_i860_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-xstormy16.c (xstormy16_elf_relocate_section): Likewise. - * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. - * elf64-s390.c (elf_s390_relocate_section): Likewise. - * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. - * elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise. - * elf32-arm.h (elf32_arm_relocate_section): Likewise #ifndef USE_REL. - * elf32-m32r.c (m32r_elf_relocate_section): Likewise. - * elf-m10200.c (elf_backend_rela_normal): Define. - * elf-m10300.c (elf_backend_rela_normal): Define. - * elf32-fr30.c (elf_backend_rela_normal): Define. - * elf32-i370.c (elf_backend_rela_normal): Define. - * elf32-i860.c (elf_backend_rela_normal): Define. - * elf32-m68k.c (elf_backend_rela_normal): Define. - * elf32-mcore.c (elf_backend_rela_normal): Define. - * elf32-openrisc.c (elf_backend_rela_normal): Define. - * elf32-ppc.c (elf_backend_rela_normal): Define. - * elf32-s390.c (elf_backend_rela_normal): Define. - * elf32-xstormy16.c (elf_backend_rela_normal): Define. - * elf64-ppc.c (elf_backend_rela_normal): Define. - * elf64-s390.c (elf_backend_rela_normal): Define. - * elf64-x86-64.c (elf_backend_rela_normal): Define. - * elfxx-ia64.c (elf_backend_rela_normal): Define. - * elf32-arm.h (elf_backend_rela_normal): Define #ifndef USE_REL. - * elf32-m32r.c (elf_backend_rela_normal): Likewise. - -2002-05-06 Nick Clifton - - * elf32-arm.h (elf32_arm_final_link_relocate): Convert - 'reloc_signed_max' and 'reloc_signed_min' into half-word offsets. - -2002-05-06 Alan Modra - - * elflink.h (elf_link_input_bfd ): Adjust r_offset - when not relocatable. Fix reloc_emitter call for K&R. - -2002-05-04 Alan Modra - - * elf64-ppc.c (ppc64_elf_relocate_section): Reinstate code - reloading local sym addend mistakenly removed in 2002-05-01 change. - - * dwarf2.c (struct line_head): Make prologue_length a bfd_vma. - (read_abbrevs): Change "offset" param to bfd_vma. - (parse_comp_unit): Change "version" and addr_size to unsigned ints. - Change "abbrev_offset" to bfd_vma. - (read_indirect_string): Use correct conversion chars in error - message format string, cast bfd_vma's to unsigned long. - (read_abbrevs): Likewise. - (read_attribute_value): Likewise. - (decode_line_info): Likewise. - (scan_unit_for_functions): Likewise. - (parse_comp_unit): Likewise. - -2002-05-04 Tom Rix - - * coffswap.h (coff_swap_reloc_in): Remove XCOFF support. - (coff_swap_reloc_out): Same. - * coff-rs6000.c: (xcoff_swap_reloc_in): Moved from coffswap.h. - (xcoff_swap_reloc_out): Same. - (xcoff_rtype2howto): Renamed from _bfd_xcoff_rtype2howto. Special - case some 16 bit relocs. Add reloc value to output. - (xcoff_howto_table): Remove 64 bit R_POS, add 16 bit - R_RBR. Improve names. - (_bfd_xcoff_reloc_type_lookup): Adjust for removal of 64 bit R_POS. - (bfd_xcoff_backend_data): Update with new reloc swap names. - (bfd_pmac_xcoff_backend_data) : Same. - * coff64-rs6000.c: (xcoff64_swap_reloc_in): Moved from coffswap.h. - (xcoff64_swap_reloc_out): Same. - (xcoff64_rtype2howto): Special case some 16 bit relocs and 32 bit - R_POS. Add reloc value to output. - (xcoff64_howto_table): Move 64 bit R_POS to first entry. Add 16 - bit R_RBR. Improve names, masks. - (xcoff64_reloc_type_lookup): Adjust for move of 64 bit R_POS. - (bfd_xcoff_backend_data): Update with new reloc swap names. - (bfd_xcoff_aix5_backend_data) : Same. - -2002-05-04 Alan Modra - - * elf32-hppa.c (struct elf32_hppa_link_hash_table): Add - bfd_count top_index, input_list, all_local_syms. - (elf32_hppa_setup_section_lists): New function, split from - elf32_hppa_size_stubs. - (elf32_hppa_next_input_section): Likewise. - (group_sections): Likewise. - (get_local_syms): Likewise. - (elf32_hppa_size_stubs): Adjust for split out functions. Look for - stubs on undefined syms too. - (elf32_hppa_set_gp): Use bfd_link_hash* instead of elf_link_hash*. - Only access htab elf fields when we have an elf hash table. - * elf32-hppa.h (elf32_hppa_setup_section_lists): Declare. - (elf32_hppa_next_input_section): Declare. - -2002-05-04 Bob Byrnes - - * opncls.c (_bfd_new_bfd_contained_in): Check return value of - _bfd_new_bfd. - -2002-05-03 H.J. Lu (hjl@gnu.org) - - * elfxx-mips.c (mips_elf_link_hash_entry): Add forced_local. - (mips_elf_link_hash_newfunc): Initialize forced_local to false. - (mips_elf_record_global_got_symbol): Call _bfd_mips_elf_hide_symbol - to hide a global symbol. - (_bfd_mips_elf_hide_symbol): Return if forced_local is true. Set - forced_local to true. - -2002-05-02 Richard Henderson - - * elf64-alpha.c (elf64_alpha_relocate_section): Force relative relocs - vs SHN_UNDEF to zero. - -2002-05-02 Alan Modra - - * elf64-ppc.c (ppc64_elf_howto_raw ): Change to a - 16 bit reloc. - : Likewise. - (ppc64_elf_reloc_type_lookup): Map from BFD_RELOC_16_BASEREL to - SECTOFF reloc. - * elf32-ppc.c (ppc_elf_howto_raw ): Correct. - (ppc_elf_reloc_type_lookup): Map from BFD_RELOC_16_BASEREL to - SECTOFF reloc. - - * elf64-ppc.c (ppc64_elf_addr16_ha_reloc): Delete. - (ppc64_elf_ha_reloc): New function. - (ppc64_elf_brtaken_reloc): New function. - (ppc64_elf_sectoff_reloc): New function. - (ppc64_elf_sectoff_ha_reloc): New function. - (ppc64_elf_toc_reloc): New function. - (ppc64_elf_toc_ha_reloc): New function. - (ppc64_elf_toc64_reloc): New function. - (ppc64_elf_unhandled_reloc): New function. - (ppc64_elf_howto_raw): Use the above. - : Mark pc_relative, pcrel_offset. - : Not pc_relative or pcrel_offset. Fix dst_mask. - : Likewise. - (IS_ABSOLUTE_RELOC): Update. - (struct ppc_link_hash_table): Add have_undefweak. - (ppc64_elf_link_hash_table_create): Init. - (func_desc_adjust): Set have_undefweak. - (ppc64_elf_func_desc_adjust): Call func_desc_adjust earlier. Only - add the .sfpr blr when have_undefweak. - (ppc64_elf_setup_section_lists): Check hash table flavour. - (ppc64_elf_next_input_section): Move output_section->owner test to - ppc64elf.em. - (ppc64_elf_set_toc): Rename to ppc64_elf_toc, remove info param - and relocatable test. Return TOCstart and don't set elf_gp. - (ppc64_elf_relocate_section): Correct BRTAKEN/BRNTAKEN branch - offset calculation. Add assert on weak sym branch tweaks. - * elf64-ppc.h (ppc64_elf_set_toc): Delete. - (ppc64_elf_toc): Declare. - (ppc64_elf_next_input_section): Update. - -2002-05-01 Alan Modra - - * syms.c (_bfd_stab_section_find_nearest_line): Don't bomb on NULL - file_name. - -2002-05-01 Alan Modra - - * elf64-ppc.c (CROR_151515, CROR_313131): Define. - (ppc64_elf_relocate_section): Use them. Don't look for plt calls - on R_PPC64_ADDR24 relocs. Require a nop or no link reg on plt - call branches. Correct undefined weak destination. - (ppc64_elf_func_desc_adjust): Always create at least one blr in - .sfpr, and correct case where either only savef* or restf* is - needed. - - Long branch stubs, multiple stub sections. - * elf64-ppc.h (ppc64_elf_setup_section_lists): Declare. - (ppc64_elf_next_input_section): Declare. - * elf64-ppc.c: Move linker-only prototypes. - (STUB_SUFFIX): Define. - (enum ppc_stub_type): New. - (struct ppc_stub_hash_entry): New. - (struct ppc_branch_hash_entry): New. - (struct ppc_link_hash_entry): Add stub_cache, oh. - (struct ppc_link_hash_table): Add stub_hash_table etc. Remove - sstub. Add sbrlt, srelbrlt, has_14bit_branch, stub_iteration. - Rename plt_overflow to stub_error. - (ppc_stub_hash_lookup): Define. - (ppc_branch_hash_lookup): Define. - (stub_hash_newfunc): New function. - (branch_hash_newfunc): New function. - (link_hash_newfunc): Init new fields. - (ppc64_elf_link_hash_table_create): Likewise. - (ppc64_elf_link_hash_table_free): New function. - (ppc_stub_name): New function. - (ppc_get_stub_entry): New function. - (ppc_add_stub): New function. - (create_linkage_sections): Use bfd_make_section_anyway. Create - .branch_lt and .rela.branch_lt sections. Don't create .stub. - (ppc64_elf_check_relocs): Set has_14bit_branch on R_PPC64_REL14*, - and set up for plt call stubs. Link func and func desc syms. - (ppc64_elf_gc_sweep_hook): Handle REL14* as per REL24. - (func_desc_adjust): Avoid hash lookup when func desc sym available - via shortcut, and set links when processing. - (ppc64_elf_hide_symbol): Likewise. - (allocate_dynrelocs): Don't allocate stub section here. - (ppc64_elf_size_dynamic_sections): Handle sbrlt and srelbrlt. - Remove sstub code. - (ppc_type_of_stub): New function. - (build_one_stub): Delete. - (ppc_build_one_stub): New function. - (ppc_size_one_stub): New function. - (ppc64_elf_setup_section_lists): New function. - (ppc64_elf_next_input_section): New function. - (group_sections): New function. - (get_local_syms): New function. - (ppc64_elf_size_stubs): Rewrite. - (ppc64_elf_build_stubs): Rewrite. - (ppc64_elf_relocate_section): Look up stub entry for REL24 - relocs. Don't propagate REL14* to dynamic objects. Look for long - branch stubs if REL14* or REL24 relocs won't reach. - (bfd_elf64_bfd_link_hash_table_free): Define. - -2002-04-30 Mark Mitchell - - * config.bfd: Add support for powerpc-*-windiss. - -2002-04-30 Tom Rix - - * xcofflink.c (xcoff_link_add_symbols): Always copy undef C_EXT - symbol names into the hash table. - -2002-04-28 Tom Rix - - * coff-rs6000.c (xcoff_calculate_relocation) : Function table for - calulating relocations. - (xcoff_complain_overflow) : Function table for relocation errors. - (xcoff_ppc_relocate_section): Use relocation and complain function - tables. - (xcoff_complain_overflow_unsigned_func): New complain function. - (xcoff_complain_overflow_signed_func): Same. - (xcoff_complain_overflow_bitfield_func): Same. - (xcoff_complain_overflow_dont_func): Same. - (xcoff_reloc_type_crel): New recot function. - (xcoff_reloc_type_br): Same. - (xcoff_reloc_type_ba): Same. - (xcoff_reloc_type_toc): Same. - (xcoff_reloc_type_rel): Same. - (xcoff_reloc_type_neg): Same. - (xcoff_reloc_type_pos): Same. - (xcoff_reloc_type_fail): Same. - (xcoff_reloc_type_noop): Same. - * libxcoff.h : Declare common parts for xcoff64. - * coff64-rs6000.c (xcoff64_ppc_relocate_section): Use relocation - and complain function tables. - -2002-04-28 Alan Modra - - * elf64-x86-64.c (struct elf64_x86_64_dyn_relocs): Comment typo. - * elf32-hppa.c (elf32_hppa_final_link): Formatting. - -2002-04-26 Alan Modra - - * opncls.c (bfd_make_readable): Call bfd_section_list_clear. - * xcofflink.c (xcoff_link_add_dynamic_symbols): Likewise. - - * elflink.h (elf_bfd_final_link): Ensure input bfd class is the - same as the output before calling elf_link_input_bfd. - - * coffcode.h (coff_compute_section_file_positions): Set - section_tail after shuffling section list. - -2002-04-24 Christian Groessler - - * coff-z8k.c (extra_case): Fix R_IMM32 relocations: The - addresses are 23bit with a special layout, not plain 32bit - values. Prevent relocation of immediate values. - -2002-04-24 Chris G. Demetriou - - * elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data): If MDMX or - MIPS-16 ASE flags are set, print something to indicate that. - -2002-04-23 Alan Modra - - * elf32-hppa.c (hppa_type_of_stub): Correct and simplify condition - under which a plt call stub is used. - (final_link_relocate): Similarly. - (allocate_plt_static): Clear h-plabel except when plt entry is - exclusively used for a plabel. - (allocate_dynrelocs): Use the above to simplify plt sizing. - (struct elf32_hppa_link_hash_table): Add has_22bit_branch. - (elf32_hppa_link_hash_table_create): Init. - (BL22_RP): Define. - (hppa_build_one_stub): Use BL22_RP if has_22bit_branch. - (elf32_hppa_check_relocs): Set has_22bit_branch. - - * elf32-hppa.c (elf32_hppa_check_relocs): Remove debug message. - (final_link_relocate): Likewise. - -2002-04-22 Jakub Jelinek - - * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't build - search table if some FDE is DW_EH_PE_aligned encoded either. - (_bfd_elf_write_section_eh_frame): Handle terminating FDE specially. - -2002-04-22 Richard Smith - Jakub Jelinek - - * elf-eh-frame.c (struct eh_cie_fde): Add per_encoding_relative. - (_bfd_elf_discard_section_eh_frame): Set it for CIEs with pcrel - encoded personality. - (_bfd_elf_write_section_eh_frame): Adjust pcrel encoded personality - for CIE/FDE removal. - -2002-04-20 Tom Rix - - * coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Fix C_FILE auxent. - -2002-04-20 Alan Modra - - * archures.c (bfd_lookup_arch): Move the list order comment.. - (struct bfd_arch_info): ..to where it belongs. - * bfd-in2.h: Regenerate. - - * archures.c (bfd_lookup_arch): Add comment on list order. - (bfd_default_set_arch_mach): Use bfd_lookup_arch. - * cpu-powerpc.c (bfd_powerpc_archs): Re-order so that the default - is always at head of list. - -2002-04-18 Nick Clifton - - * coff-arm.c (coff_thumb_pcrel_12, coff_thumb_pcrel_9, - insert_thumb_branch, record_thumb_to_arm_glue): Suppress - definition of these functions for ARM_WINCE builds as they are - not used. - (SWAP_IN_RELOC_OFFSET, SWAP_OUT_RELOC_OFFSET): Do not define - for ARM_WINCE builds. - -2002-04-18 Nick Clifton - - * coff-arm.c (bfd_arm_process_before_allocation): - -2002-04-17 J"orn Rennecke - - * cpu-sh.c (scan_mach): Delete. - (arch_info_struct): Replace scan_mach with bfd_default_scan. - (bfd_sh_arch): Likewise. - -2002-04-16 Nick Clifton - - * ihex.c (ihex_write_object_contents): Fix check for records - crossing 64K boundaries. - -2002-04-16 Alan Modra - - * elf32-m32r.c (m32r_elf_add_symbol_hook): Check the hash table - type rather than just assuming entries are ELF. - * elf32-sh64.c (sh64_elf_add_symbol_hook): Likewise. - * elf64-sh64.c (sh64_elf64_add_symbol_hook): Likewise. - * elf64-sparc.c (sparc64_elf_add_symbol_hook): Likewise. - * elf64-mmix.c (mmix_elf_add_symbol_hook): Use bfd_link_hash_entry - rather than elf_link_hash_entry. - -2002-04-15 Richard Henderson - - * elf32-mips.c (mips_elf32_object_p): Revert 0404 fragment: allow - n32 binaries. - -2002-04-15 Michael Snyder - - * opncls.c (bfd_close): Write contents if writeable. - Minor formatting tidy-ups. - -2002-04-15 Alan Modra - - * elf32-ppc.c (ppc_elf_add_symbol_hook): Check the hash table type. - -2002-04-12 Michael Snyder - - * bfd-in.h (bfd_get_section_lma): New access macro. - Minor white-space fix-up. - -2002-04-12 Alan Modra - - * elf.c (prep_headers): Don't zero EI_OSABI, EI_ABIVERSION or - header pad. - -2002-04-09 DJ Delorie - - * elfarm-nabi.c (elf32_arm_howto_table): Fix ABS16 masks. - -2002-04-09 Casper S. Hornstrup - - * coffcode.h (coff_read_word): New. - (coff_compute_checksum): New. - (coff_apply_checksum): New. - (coff_write_object_contents): Call coff_apply_checksum () to - apply checksum to PE image. - -2002-04-08 Randolph Chung - - * elf32-hppa.c (hppa_unwind_entry_compare): Move to elf-hppa.h. - (elf32_hppa_final_link): Split out sorting logic to.. - * elf-hppa.h (elf_hppa_sort_unwind): ..here. - (elf_hppa_final_link): Call elf_hppa_sort_unwind. - -2002-04-07 Andrew Cagney - - * configure.in: Add missing ``|'' to powerpc-*-aix4.[4-9]* - pattern. - * configure: Re-generate. - -2002-04-07 Andrew Cagney - - * configure.in: Only define AIX_CORE_DUMPX_CORE when AIX version - is greater or equal to 4.3.3. - * configure: Regenerate. - Fix PR gdb/344. - -2002-04-05 Hans-Peter Nilsson - - * elf32-cris.c (cris_elf_howto_table) : Fix typo in name. - (cris_elf_check_relocs): Always create .rela.got here when - R_CRIS_16_GOTPLT or R_CRIS_32_GOTPLT is seen. - (elf_cris_adjust_gotplt_to_got): Don't create .rela.got here; - assume it's created. - -2002-04-04 Daniel Jacobowitz - - * aout-adobe.c (aout_32_bfd_link_hash_table_free): Define. - * aout-target.h (MY_bfd_link_hash_table_free): Conditionally - define. - * aout-tic30.c (MY_bfd_link_hash_table_free): Likewise. - * bfd.c (bfd_link_hash_table_free): Define. - * binary.c (binary_bfd_link_hash_table_free): Define. - * bout.c (b_out_bfd_link_hash_table_free): Define. - * coff-rs6000.c (rs6000coff_vec): Include - _bfd_generic_link_hash_table_free. - (pmac_xcoff_vec): Likewise. - * coff64-rs6000.c (rs6000coff64_vec): Likewise. - (aix5coff64_vec): Likewise. - * coffcode.h (coff_bfd_link_hash_table_free): Conditionally define. - * elf-m10300.c (elf32_mn10300_link_hash_table_free): New function. - (bfd_elf32_bfd_link_hash_table_free): Define. - * elf32-hppa.c (elf32_hppa_link_hash_table_free): New function. - (bfd_elf32_bfd_link_hash_table_free): Define. - * elfxx-target.h (bfd_elfNN_bfd_link_hash_table_free): Conditionally - define. - * i386msdos.c (msdos_bfd_link_hash_table_free): Define. - * i386os9k.c (os9k_bfd_link_hash_table_free): Define. - * ieee.c (ieee_bfd_link_hash_table_free): Define. - * ihex.c (ihex_bfd_link_hash_table_free): Define. - * libbfd-in.h (_bfd_nolink_bfd_link_hash_table_free): Define. - (_bfd_generic_link_hash_table_free): Add prototype. - * libcoff-in.h (_bfd_xcoff_bfd_link_hash_table_free): Add prototype. - * libecoff.h (_bfd_ecoff_bfd_link_hash_table_free): Define. - * linker.c (_bfd_generic_link_hash_table_free): New function. - * mmo.c (mmo_bfd_link_hash_table_free): Define. - * nlm-target.h (nlm_bfd_link_hash_table_free): Define. - * oasys.c (oasys_bfd_link_hash_table_free): Define. - * ppcboot.c (ppcboot_bfd_link_hash_table_free): Define. - * som.c (som_bfd_link_hash_table_free): Define. - * srec.c (srec_bfd_link_hash_table_free): Define. - * tekhex.c (tekhex_bfd_link_hash_table_free): Define. - * versados.c (versados_bfd_link_hash_table_free): Define. - * vms.c (vms_bfd_link_hash_table_free): New function. - * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_free): New function. - - * coff-arm.c (coff_arm_link_hash_table_create): Use bfd_malloc - instead of bfd_alloc. - * coff-h8300.c (h8300_coff_link_hash_table_create): Likewise. - * coff-mcore.c (coff_mcore_link_hash_table_create): Likewise. - * coff-ppc.c (ppc_coff_link_hash_table_create): Likewise. - * cofflink.c (_bfd_coff_link_hash_table_create): Likewise. - * ecoff.c (_bfd_ecoff_bfd_link_hash_table_create): Likewise. - * elf-m10300.c (elf32_mn10300_link_hash_table_create): Likewise. - * elf.c (_bfd_elf_link_hash_table_create): Likewise. - * elf32-arm.h (elf32_arm_link_hash_table_create): Likewise. - * elf32-cris.c (elf_cris_link_hash_table_create): Likewise. - * elf32-hppa.c (elf32_hppa_link_hash_table_create): Likewise. - * elf32-i386.c (elf_i386_link_hash_table_create): Likewise. - * elf32-m68k.c (elf_m68k_link_hash_table_create): Likewise. - * elf32-s390.c (elf_s390_link_hash_table_create): Likewise. - * elf32-sh.c (sh_elf_link_hash_table_create): Likewise. - * elf64-alpha.c (elf64_alpha_bfd_link_hash_table_create): Likewise. - * elf64-ppc.c (ppc64_elf_link_hash_table_create): Likewise. - * elf64-s390.c (elf_s390_link_hash_table_create): Likewise. - * elf64-sh64.c (sh64_elf64_link_hash_table_create): Likewise. - * elf64-sparc.c (sparc64_elf_bfd_link_hash_table_create): Likewise. - * elf64-x86-64.c (elf64_x86_64_link_hash_table_create): Likewise. - * elfxx-mips.c (_bfd_mips_elf_link_hash_table_create): Likewise. - * linker.c (_bfd_generic_link_hash_table_create): Likewise. - * m68klinux.c (linux_link_hash_table_create): Likewise. - * sparclinux.c (linux_link_hash_table_create): Likewise. - * sunos.c (sunos_link_hash_table_create): Likewise. - * xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create): Likewise. - - * targets.c: Add _bfd_link_hash_table_free to xvec. - - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - * libcoff.h: Regenerate. - -2002-04-04 Alan Modra - - * dep-in.sed: Cope with absolute paths. - * Makefile.am (dep.sed): Subst TOPDIR, and not INCDIR. - Run "make dep-am". - * Makefile.in: Regenerate. - * coff-arm.c: Fix copyright date. - * cpu-h8300.c: Likewise. - * cpu-i370.c: Likewise. - * cpu-s390.c: Likewise. - * cpu-mips.c: Likewise. - * po/SRC-POTFILES.in: Regenerate. - -2002-04-04 Thiemo Seufer - - * Makefile.am: Add elfxx-mips.c to the known backends. - (elf32-mips.lo): remove dependency to coff/external.h. - * Makefile.in: Regenerate. - * configure.in: Add elfxx-mips.lo to all vectors using elf32-mips.lo - Remove elf32-mips.lo from 64 bit vectors. Update dependencies - accordingly. - * configure: Regenerate. - * elf-bfd.h: Move all MIPS ELF specific prototypes to elfxx-mips.h. - (irix_compat_t): IRIX compatibility level, moved from elf32-mips.c. - (elf_backend_mips_irix_compat, elf_backend_mips_rtype_to_howto): New - MIPS specific backend functions. - * elf32-mips.c: Moved most code to elfxx-mips.c. - (mips_elf_hi16_reloc): Rename from _bfd_mips_elf_hi16_reloc and make - static. - (mips_elf_lo16_reloc): Likewise, was _bfd_mips_elf_lo16_reloc. - (mips_elf_got16_reloc): Likewise, was _bfd_mips_elf_got16_reloc. - (mips_elf_gprel32_reloc): Likewise, was _bfd_mips_elf_gprel32_reloc. - (mips_elf32_rtype_to_howto): Rename from mips_rtype_to_howto. Changed - interface to allow selection of the right REL or RELA howto table. - (mips_elf32_object_p): Rename from _bfd_mips_elf_object_p and made - static. Let it refuse n32 objects. - (elf32_mips_grok_prstatus): Rename from _bfd_elf32_mips_grok_prstatus. - (elf32_mips_grok_psinfo): Rename from _bfd_elf32_mips_grok_psinfo. - (elf32_mips_discard_info): Rename from _bfd_elf32_mips_discard_info. - (elf32_mips_ignore_discarded_relocs): Rename from - _bfd_elf32_mips_ignore_discarded_relocs. - (elf32_mips_write_section): Rename from _bfd_elf32_mips_write_section. - (elf32_mips_irix_compat): New function, replaces IRIX_COMPAT. - (elf_mips_howto_table_rela): Remove. - * elf64-mips.c: Moved most code to elfxx-mips.c. - (bfd_elf64_bfd_reloc_type_lookup): Make static. - (mips_elf64_rtype_to_howto): New function. - (mips_elf64_object_p): Likewise. - (elf64_mips_irix_compat): Likewise. - * elfxx-mips.c: New file containing common code merged together from - elf32-mips.c and elf64-mips.c. - * elfxx-mips.h: New file containing MIPS specific prototypes from - elf-bfd.h. - * elfxx-target.h: Add handling for elf_backend_mips_irix_compat and - elf_backend_mips_rtype_to_howto. - -2002-04-04 Alan Modra - - * srec.c (MAXCHUNK, Chunk): Revise comments. - (srec_write_record): Correct buffer size. - (srec_write_header): Do without intermediate buffer. - (srec_write_section): Validate Chunk. - (srec_write_terminator): Pass NULL instead of dummy buffer. - (srec_write_symbols): Pass file and symbol names directly to - bfd_bwrite so sprintf won't overflow buffer. - -2002-04-03 Jakub Jelinek - - * elf32-sparc.c (elf32_sparc_relocate_section): Don't emit dynamic - PC relative relocs against hidden symbols. - * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. - -2002-04-03 Alan Modra - - * elf.c (_bfd_elf_make_section_from_shdr): When setting section - LMAs, loop over segments until p_vaddr and p_memsz specify an - extent enclosing the section. - -2002-04-02 Nick Clifton - - * ihex.c (ihex_write_object_contents): Do not allow records to - cross a 64K boundary - wrap if necessary. - -2002-04-01 Nathan Williams - - * elf.c (elfcore_netbsd_get_lwpid): Fix off-by-one error - which caused the returned LWP ID to always be 0. - -2002-04-01 Richard Henderson - - * elf32-sparc.c (WILL_CALL_FINISH_DYNAMIC_SYMBOL): New. - (elf32_sparc_relocate_section): Use it to figure out when to - initialize .got entries. - * elf64-sparc.c: Similarly. - -2002-03-28 Alan Modra - - * linker.c (link_action): Ignore duplicate warning syms. - (_bfd_generic_link_write_global_symbol): Follow warning symbol link. - * elflink.h (elf_adjust_dynstr_offsets): Likewise. - (elf_adjust_dynamic_symbol): Likewise. - (elf_export_symbol): Likewise. - (elf_link_find_version_dependencies): Likewise. - (elf_link_assign_sym_version): Likewise. - (elf_link_sec_merge_syms): Likewise. - (elf_link_output_extsym): Likewise. - (elf_gc_sweep_symbol): Likewise. - (elf_gc_propagate_vtable_entries_used): Likewise. - (elf_gc_smash_unused_vtentry_relocs): Likewise. - (elf_gc_allocate_got_offsets): Likewise. - (elf_collect_hash_codes): Likewise. - * elflink.c (elf_link_renumber_hash_table_dynsyms): Likewise. - * elf-hppa.h (elf_hppa_unmark_useless_dynamic_symbols): Likewise. - (elf_hppa_remark_useless_dynamic_symbols): Likewise. - * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Likewise. - * elf32-arm.h (elf32_arm_discard_copies): Likewise. - * elf32-cris.c (elf_cris_adjust_gotplt_to_got): Likewise. - (elf_cris_discard_excess_dso_dynamics): Likewise. - * elf32-hppa.c (clobber_millicode_symbols): Likewise. - (mark_PIC_calls): Likewise. - (allocate_plt_static): Likewise. - (allocate_dynrelocs): Likewise. - (readonly_dynrelocs): Likewise. - * elf32-i386.c (allocate_dynrelocs): Likewise. - (readonly_dynrelocs): Likewise. - * elf32-i370.c (i370_elf_adjust_dynindx): Likewise. - * elf32-m68k.c (elf_m68k_discard_copies): Likewise. - * elf32-mips.c (mips_elf_output_extsym): Likewise. - (mips_elf_sort_hash_table_f): Likewise. - (mips_elf_check_mips16_stubs): Likewise. - * elf32-s390.c (allocate_dynrelocs): Likewise. - (readonly_dynrelocs): Likewise. - * elf32-sh.c (sh_elf_discard_copies): Likewise. - * elf32-xstormy16.c (xstormy16_relax_plt_check): Likewise. - (xstormy16_relax_plt_realloc): Likewise. - * elf64-alpha.c (elf64_alpha_calc_got_offsets_for_symbol): Likewise. - (elf64_alpha_output_extsym): Likewise. - * elf64-hppa.c (elf64_hppa_mark_exported_functions): Likewise. - * elf64-mips.c (mips_elf64_sort_hash_table_f): Likewise. - (mips_elf64_check_mips16_stubs): Likewise. - (mips_elf64_output_extsym): Likewise. - * elf64-ppc.c (func_desc_adjust): Likewise. - (allocate_dynrelocs): Likewise. - (readonly_dynrelocs): Likewise. - * elf64-s390.c (allocate_dynrelocs): Likewise. - (readonly_dynrelocs): Likewise. - * elf64-sh64.c (sh64_elf64_discard_copies): Likewise. - * elf64-x86-64.c (allocate_dynrelocs): Likewise. - (readonly_dynrelocs): Likewise. - * elfxx-ia64.c (elfNN_ia64_global_dyn_sym_thunk): Likewise. - * aoutx.h (aout_link_write_other_symbol): Likewise. - * cofflink.c (_bfd_coff_write_task_globals): Likewise. - (_bfd_coff_write_global_sym): Likewise. - * i386linux.c (linux_tally_symbols): Likewise. - * m68klinux.c (linux_tally_symbols): Likewise. - * sparclinux.c (linux_tally_symbols): Likewise. - * pdp11.c (aout_link_write_other_symbol): Likewise. - * sunos.c (sunos_scan_dynamic_symbol): Likewise. - * xcofflink.c (xcoff_build_ldsyms): Likewise. - (xcoff_write_global_symbol): Likewise. - - * cofflink.c (_bfd_coff_final_link): Formatting. - * cpu-mips.c (mips_compatible): Make static, prototype. - * elf32-i386.c (elf_i386_check_relocs): Formatting. - * elf32-sh.c (sh_elf_size_dynamic_sections): Likewise. - * elf64-alpha.c (elf64_alpha_output_extsym): Likewise. - * elf64-mips.c (mips_elf64_sort_hash_table): Likewise. - (mips_elf64_final_link): Likewise. - * elflink.h (elf_link_find_version_dependencies): Remove duplicate - prototype. - -2002-03-27 Nick Clifton - - * coff-arm.c (SWAP_IN_RELOC_OFFSET): Define. - (SWAP_OUT_RELOC_OFFSET): Define. - -2002-03-27 Gregory Steuck - - * elf.c (_bfd_elf_get_symtab_upper_bound): Leave space for - terminating NULL if empty symbol table. - (_bfd_elf_get_dynamic_symtab_upper_bound): Likewise. - -2002-03-26 H.J. Lu (hjl@gnu.org) - - * elflink.h (elf_link_input_bfd): Revert the last change since - the gcc exception handling isn't fixed yet. - -2002-03-26 H.J. Lu (hjl@gnu.org) - - * elflink.h (elf_link_input_bfd): Complain about relocations - against local symbols in discarded sections. - -2002-03-26 Alan Modra - - * elflink.h (elf_gc_mark): Don't recurse into non-ELF sections. - -2002-03-23 Alan Modra - - * elf.c (_bfd_elf_make_section_from_shdr): Don't set lma based on - section file offset for !SEC_LOAD sections. - -2002-03-21 Richard Earnshaw - - * elf32-arm.h (elf32_arm_final_link_relocate , - ): Handle relocations to Thumb functions. - -2002-03-21 Alan Modra - - * coff64-rs6000.c (_bfd_xcoff64_put_symbol_name): Prototype. - Whitespace changes. - * archive.c: Update copyright date. - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - * Makefile.am: Run "make dep-am" - * Makefile.in: Regenerate. - * po/SRC-POTFILES.in: Regenerate. - -2002-03-20 Daniel Jacobowitz - - * dwarf2.c (struct funcinfo): Move up. - (lookup_address_in_function_table): New argument function_ptr. - Set it. - (lookup_address_in_line_table): New argument function. If function - is non-NULL, use it to handle ``addr'' before the first line note of - the function. - (comp_unit_find_nearest_line): Update and swap calls to - lookup_address_in_function_table and lookup_address_in_line_table. - * syms.c (_bfd_stab_section_find_nearest_line): Use the first - N_SLINE encountered if we see an N_FUN before any N_SLINE. - -2002-03-20 Tom Rix - - * coff-rs6000.c (_bfd_xcoff_stat_arch_elt): Renamed from - _bfd_xcoff_generic_stat_arch_elt. Fix format check. - * coff64-rs6000.c : Use _bfd_xcoff_stat_arch_elt. - -2002-03-19 Tom Rix - - * xcofflink.c (_bfd_xcoff_bfd_link_add_symbols): Look through all - dynamic objects in archives. - -2002-03-19 Hans-Peter Nilsson - - * elflink.h (NAME(bfd_elf,record_link_assignment)): Don't set - STT_NOTYPE symbols to STT_OBJECT. - -2002-03-18 Jan Hubicka - - * cpu-i386.c (bfd_x86_64_arch): Rename to "i386:x86-64" - -2002-03-18 Tom Rix - - * aix5ppc.core.c : New file for AIX 5 64 bit core support. - * bfd-in.h : Add bfd_xcoff_ar_archive_set_magic declaration. - * coff-rs6000 (do_pad) : New function for archive padding. - (do_copy) : New function for object file copying in archives. - (do_shared_object_padding) : New function for padding shared - objects to their text section alignment in archives. - (bfd_xcoff_ar_achive_set_magic) : Stub. - (xcoff_write_armap_big) : Use do_copy and do_pad. - (xcoff_write_archive_contents_big) : Use do_shared_object_padding, - do_copy and do_pad. - * coff64-rs6000.c (xcoff64_write_ojbect_contents) : Use - bfd_xcoff_magic_number. - (xcoff64_bad_format_hook) : New function for _bfd_bad_format_hook - fop. - (xcoff_backend_data_r) : Use xcoff64_bad_format_hook. - (bfd_xcoff_aix5_backend_data) : New Aix 5 backend data. - (aix5coff64_vec) : New Aix 5 target aix5coff64-rs6000. - * rs6000-core.c : Update copyright date. - * xcofflink.c (bfd_xcoff_size_dynamic_sections): Check for NULL - csectpp. - * coffcode.h (coff_new_section_hook) : Use new accessor macros. - (coff_set_arch_mach_hook) : Add Aix 5 U64_TOCMAGIC magic #. - (coff_set_flags) : Use bfd_xcoff_magic_number. - * libxcoff.h (bfd_xcoff_is_xcoff64): Add U64_TOCMAGIC. - * configure.in : Add powerpc-*-aix5 and rs6000-*-aix5 support. - * Makefile.am : Same. - * config.bfd : Same. - * targets.c : Same. - * configure : Regnerate. - * Makefile.in : Same. - * bfd-in2.h : Same. - -2002-03-18 Nick Clifton - - * po/fr.po: Updated version. - -2002-03-18 Alan Modra - - * libbfd.c (bfd_write_bigendian_4byte_int): Return true iff success. - * libbfd.h: Regenerate. - * archive.c (coff_write_armap): Pass on failures from - bfd_write_bigendian_4byte_int. - -2002-03-14 H.J. Lu - - * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set the BFD - error to bfd_error_nonrepresentable_section for reinit_array - section in DSO. - -2002-03-14 Nick Clifton - - * coffcode.h (coff_slurp_symbol_table): When adding BSF_WEAK flag, - OR it in rather than replacing previously selected flags. - - * elfxx-target.h (TARGET_BIG_SYM): Set ar_max_namelen to 15. - (TARGET_LITTLE_SYM): Set ar_max_namelen to 15. - -2002-03-14 Alan Modra - - * cpu-mips.c (mips_compatible): New. Don't check bits_per_word. - (N): Use the above. - * elflink.h (elf_bfd_final_link): Revert last change. Instead, - ensure reloc size matches before calling elf_link_input_bfd. - Add an assert to check reloc size when counting output relocs. - -2002-03-14 Nick Clifton - - * mmo.c (mmo_get_loc): Return NULL rather than false. - -2002-03-13 Nick Clifton - - * po/fr.po: Updated version. - -2002-03-13 Alan Modra - - * archures.c (bfd_default_compatible): Test bits_per_word. - * cpu-i386.c (i386_compatible): Remove. Replace occurrences with - bfd_default_compatible. - * cpu-i370.c (i370_compatible): Likewise. - * cpu-sparc.c (sparc_compatible): Likewise. - * cpu-h8300.c (compatible): Test in->arch == out->arch. - - * elflink.h: Formatting fixes. - (elf_link_output_extsym): Merge undefined and undef weak cases. - - * elflink.h (elf_bfd_final_link): Only call elf_link_input_bfd - when word size of input matches output word size. - -2002-03-12 Andreas Jaeger - - * cpu-i386.c (i386_compatible): New. Use it instead of - bfd_default_compatible. - -2002-03-07 H.J. Lu (hjl@gnu.org) - - * coff-sh.c (shcoff_reloc_map): Use bfd_reloc_code_real_type - as the type for bfd_reloc_val. - -2002-03-05 John David Anglin - - * elf-hppa.h (elf_hppa_is_dynamic_loader_symbol): New function. - (elf_hppa_relocate_section): Ignore undefined dynamic loader symbols. - (elf_hppa_final_link_relocate): Correct relocations for indirect - references to local data through the DLT. Fix .opd creation for - local symbols using R_PARISC_LTOFF_FPTR32 and R_PARISC_FPTR64 - relocations. Use e_lsel selector for R_PARISC_DLTIND21L, - R_PARISC_LTOFF_FPTR21L and R_PARISC_LTOFF_TP21L as per - "Processor-Specific ELF for PA_RISC, Version 1.43" document. - Similarly, use e_rsel for DLT and LTOFF 'R' relocations. - * elf32-hppa.c (final_link_relocate): Revise relocation selectors - as per "Processor-Specific ELF for PA_RISC, Version 1.43" document. - -2002-03-05 Jakub Jelinek - - * merge.c (_bfd_merge_sections): Don't segfault if there - is nothing to merge due to GC. - -2002-03-05 Alan Modra - - * elf32-hppa.c (clobber_millicode_symbols): Remove hack to keep - symbols that have been forced local. - - * elflink.h (elf_bfd_final_link): Call elf_link_output_extsym - to output forced local syms for non-shared link. - (elf_link_output_extsym): Tweak condition for calling backend - adjust_dynamic_symbol so that previous behaviour is kept. - Whitespace changes throughout file. - -2002-03-04 H.J. Lu - - * elf.c (bfd_section_from_shdr): Handle special sections, - .init_array, .fini_array and .preinit_array. - (elf_fake_sections): Likewise. - - * elflink.h (NAME(bfd_elf,size_dynamic_sections)): Create the - DT entry only if the section is in output for .init_array, - .fini_array and .preinit_array. Complain about .preinit_array - section in DSO. - (elf_bfd_final_link): Warn zero size for .init_array, - .fini_array and .preinit_array sections. - - * elfxx-ia64.c (elfNN_ia64_section_from_shdr): Remove - SHT_INIT_ARRAY, SHT_FINI_ARRAY and SHT_PREINIT_ARRAY. - (elfNN_ia64_fake_sections): Remove .init_array, .fini_array and - .preinit_array. - -2002-03-04 Alan Modra - - * configure.in (WIN32LIBADD): Don't eval PICFLAG assignment. - * configure: Regenerate. - -2002-03-02 Tom Rix - - * coff64-rs6000.c (xcoff64_howto_table): Replace howto types with - symbolic equiv. - * coff-rs6000.c (xcoff_howto_table): Same. - -2002-03-01 David Mosberger - - * elflink.h (size_dynamic_sections): If section named - ".preinit_array" exists, create DT_PREINIT_ARRAY and - DT_PREINIT_ARRAYSZ entries in dynamic table. Analogously for - ".init_array" and ".fini_array". - (elf_bfd_final_link): Handle DT_PREINIT_ARRAYSZ, DT_INIT_ARRAYSZ, - DT_FINI_ARRAYSZ, DT_PREINIT_ARRAY, DT_INIT_ARRAY, and - DT_FINI_ARRAY. - -2002-02-26 Andrew Macleod - - * elflink.h (elf_bfd_final_link): Don't crash on SHN_UNDEF local - dynsyms. - -2002-02-25 Alan Modra - - * elf64-hppa.h: Update copyright date. - - * elf64-ppc.c (ppc64_elf_check_relocs): Warning fix. - (ppc64_elf_relocate_section): Don't generate power4 style branch - hints for *_BRTAKEN and *_BRNTAKEN relocs. - -2002-02-22 Jakub Jelinek - - * elf64-sh64.c (sh_elf64_relocate_section): Fix a typo from my - last patch. - * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. - -2002-02-21 Andreas Jaeger - - * elf64-x86-64.c: Major rework that introduces all recent changes - to the x86-64 backend. Get a closer match to elf32-i386. - (struct elf64_x86_64_dyn_relocs): Rename from - elf64_x86_64_pcrel_relocs_copied, add additional fields. Change - all users. - (struct elf64_x86_64_link_hash_table): Add short cuts to some - sections. - (link_hash_newfunc): Rename from elf64_x86_64_link_hash_newfunc, - remove casts, initialize new hash members. - (create_got_section): New. - (elf64_x86_64_create_dynamic_sections): New. - (elf64_x86_64_copy_indirect_symbol): New. - (elf64_x86_64_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. Cache - pointer to "sreloc" section in elf_section_data. Tweak condition - under which .got created. Report files with bad relocation - section names. - (elf64_x86_64_gc_sweep_hook): Sweep dyn_relocs and local_dynrel. - Reference count possible .plt entries. Don't deallocate .got and - .relgot space here. - (elf64_x86_64_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. - (WILL_CALL_FINISH_DYNAMIC_SYMBOL): New. - (allocate_dynrelocs): New. - (readonly_dynrelocs): New. - (elf64_x86_64_size_dynamic_sections): Call readonly_dynrelocs. - Allocate space for dyn relocs. Replace BFD_ASSERT with abort. - Zero out the dynamic allocated content space. - (elf64_x86_64_discard_copies): Removed. - (elf64_x86_64_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. - (elf64_x86_64_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 relocate_section. Expand - SHN_UNDEF comment. Move expressions out of function calls. - Replace BFD_ASSERT with abort. - (bfd_elf64_bfd_final_link): Removed. - (elf_backend_copy_indirect_symbol): Define. - -2002-02-20 Tom Rix - - * coff-rs6000.c (xcoff_howto_table): Add 16 bit R_BA. - (_bfd_xcoff_reloc_type_lookup): Use it. - * coff64-rs6000.c (xcoff64_howto_table): Same. - (xcoff64_reloc_type_lookup): Same. - -2002-02-20 Peter Schauer - - * osf-core.c (osf_core_vec): OSF/1 (Digital Unix) core files are - little endian. - -2002-02-19 Martin Schwidefsky - - * archures.c (bfd_mach_s390_esa): Rename to bfd_mach_s390_31. - (bfd_mach_s390_esame): Rename to bfd_mach_s390_64. - * bfd-in2.h: Regenerate. - * cpu-s390.c (arch_info_struct): Use renamed architecture defines. - Replace architecture name "s390" with "s390:31-bit" and "s390:esame" - with "s390:64-bit". - * elf32-s390.c (elf_howto_table): Add 32 bit pc relative relocations. - (elf_s390_reloc_type_lookup): Likewise. - (elf_s390_check_relocs): Likewise. - (elf_s390_gc_sweep_hook): Likewise. - (elf_s390_relocate_section): Likewise. - (elf_s390_object_p): Use renamed architecture define. - * elf64-s390.c (elf_s390_object_p): Use renamed architecture define. - -2002-02-19 Frank Ch. Eigler - - * syms.c (stt[]): Sorted. Added .init/.fini -> "t" mapping. - -2002-02-19 Jakub Jelinek - - * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Enable - absptr -> pcrel optimization for shared libs. - Only create minimal .eh_frame_hdr if absptr FDE encoding in shared - library cannot be converted to pcrel. - (_bfd_elf_eh_frame_section_offset): Return -2 if making absptr - relative. - * elf32-i386.c (elf_i386_relocate_section): If - _bfd_elf_section_offset returned -2, skip, but make sure the - relocation is installed. - * elf32-arm.h (elf32_arm_final_link_relocate): Likewise. - * 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-ppc.c (ppc_elf_relocate_section): Likewise. - * elf32-s390.c (elf_s390_relocate_section): Likewise. - * elf32-sh.c (sh_elf_relocate_section): Likewise. - * elf32-sparc.c (elf32_sparc_relocate_section): Likewise. - * elf64-ppc.c (ppc64_elf_relocate_section): Likewise. - * elf64-s390.c (elf_s390_relocate_section): Likewise. - * elf64-sh64.c (sh_elf64_relocate_section): Likewise. - * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. - * elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise. - * elf64-alpha.c (elf64_alpha_relocate_section): Handle - _bfd_elf_section_offset returning -2 the same way as -1. - * elfxx-ia64.c (elfNN_ia64_install_dyn_reloc): Likewise. - * elf32-mips.c (mips_elf_create_dynamic_relocation): Add FIXME - and BFD_ASSERT. - * elf64-mips.c (mips_elf64_create_dynamic_relocation): Likewise. - -2002-02-18 Tom Rix - - * xcofflink.c (bfd_xcoff_link_gernate_rtinit): Add -brtl support. - (bfd_xcoff_size_dynamic_sections): Same. - * bfd-in.h (bfd_xcoff_link_generate_rtinit): Same. - (bfd_xcoff_size_dynamic_sections): Same. - * coff-rs6000.c (xcoff_generate_rtinit): Same. - * coff-rs646000.c (xcoff64_generate_rtinit): Same. - * libxcoff.h (struct xcoff_backend_data_rec): Same. - * xcofflink.c (xcoff_build_ldsyms, xcoff_link_add_symbols): Clean. - * bfd-in2.h: Regenerate. - -2002-02-18 Alan Modra - - * elf64-ppc.c (STFD_FR0_0R1, LFD_FR0_0R1, BLR): Define. - (struct ppc_link_hash_table): Add sfpr. - (ppc64_elf_link_hash_table_create): Init it. - (ppc64_elf_create_dynamic_sections): Split creation of .stub and - .glink out to.. - (create_linkage_sections): ..here. Make .sfpr too. - (ppc64_elf_check_relocs): Call create_linkage_sections, and set - dynobj early. - (MIN_SAVE_FPR, MAX_SAVE_FPR): Define. - (ppc64_elf_func_desc_adjust): Look for missing ._savef* and - ._restf* functions, and create as needed. - (func_desc_adjust): Only force_local for shared libs. - -2002-02-18 David O'Brien - - * configure.in: Bump version number post 2.12 branching. - * configure: Regenerate. - -2002-02-17 Hans-Peter Nilsson - - * mmo.c: Correct and improve comments. - (mmo_write_chunk): Store trailing byte in bfd buffer; don't - zero-pad. Use input to fill up non-empty bfd buffer. - (mmo_flush_chunk): New function. - (mmo_write_loc_chunk): Add parameter last_vmap, all callers - changed. Don't emit location specifier if VMA is same as - *LAST_VMAP after omitting leading zero contents. Call - mmo_flush_chunk before emitting location specifier. - (mmo_write_loc_chunk_list): Call mmo_flush_chunk when finished - with mmo_write_loc_chunk calls. - (mmo_internal_write_section): Call mmo_flush_chunk after - mmo_write_chunk. - (mmo_write_symbols_and_terminator): Move :Main to first position - in symbol array. Add faked one if it does not exist if there are - other symbols. Don't add it if there are no symbols at all. Move - out test for value of :Main from symbol loop. Rename table - fakemain to maintable and variable mainsym to fakemain. - -2002-02-15 Richard Henderson - - * elf64-alpha.c (elf64_alpha_relocate_section) [BRSGP]: A target - section with no got matches any got. Simplify error generaion. - -2002-02-15 Alan Modra - - Support arbitrary length fill patterns. - * linker.c (bfd_new_link_order): Zero all fields with bfd_zalloc. - (_bfd_default_link_order): Remove bfd_fill_link_order code. - Call default_data_link_order. - (default_fill_link_order): Delete. - (default_data_link_order): New function. - * elf32-mips.c (_bfd_mips_elf_final_link): Replace occurrences - of bfd_fill_link_order with bfd_data_link_order. - * elf64-alpha.c (elf64_alpha_final_link): Likewise. - * elf64-mips.c (mips_elf64_final_link): Likewise. - - * bfd.c (bfd_scan_vma): Clamp overflows to max bfd_vma value. - Correct value returned in "end" for "0x". - -2002-02-14 Nick Clifton - - * cpu-arm.c (processors): Replace 'arch' field with 'mach'. - (scan): Test against 'mach' field in info structure. - -2002-02-14 Alan Modra - - * elf.c (elf_fake_sections): Use SHT_NOBITS when SEC_NEVER_LOAD. - -2002-02-14 Matt Fredette - - * elf32-m68k.c (elf32_m68k_print_private_bfd_data): Recognize - EF_M68000. - -2002-02-13 Nick Clifton - - * elf.c (_bfd_elf_make_section_from_shdr): Do not insist on - non-zero physical addresses when adjusting the LMAs of new - sections. - -2002-02-12 John David Anglin - - * elf-hppa.h (elf_hppa_reloc_final_type): New function stripped - from _bfd_elf_hppa_gen_reloc_type. - (_bfd_elf_hppa_gen_reloc_type): Remove duplicate prototype. - * elf32-hppa.h (elf32_hppa_reloc_final_type): Add protptype. - * elf32-hppa.c: Include elf32-hppa.h before elf-hppa.h. - * elf64-hppa.h (elf64_hppa_reloc_final_type): Add protptype. - -2002-02-12 Alexandre Oliva - - * elf-m10300.c (mn10300_elf_relax_section): Skip section before - loading its contents if there's nothing to do in it. - -2002-02-12 Alan Modra - - * elf64-ppc.c (ppc64_elf_size_stubs): Correct test for crossing - 64k boundary. - - * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Add dynamic - DT_PPC64_OPD and DT_PPC64_OPDSZ tags. - (ppc64_elf_finish_dynamic_sections): Set values for them. - -2002-02-11 Michael Snyder - - * elf-bfd.h (elfcore_write_lwpstatus): Add prototype. - * elf.c (elfcore_grok_pstatus): Add prototype. - (elfcore_grok_lwpstatus): Add prototype. - (elfcore_write_lwpstatus): New function. - (elfcore_write_pstatus): Fix typo, eliminate unnecessary memcpy. - -2002-02-11 Alexandre Oliva - - * elf32-sh.c: Added missing prototypes. - * elf32-sh64.c: Likewise. - (sh_elf_align_loads): Mark unused args as such. - * elf64-sh64.c: Added missing prototypes. - (struct elf_sh64_link_hash_entry): Fix typo. - (sh_elf64_relocate_section): Fix info argument passed to - _bfd_elf_section_offset. - -2002-02-11 Alan Modra - - * Makefile.am: "make dep-am". - * Makefile.in: Regenerate. - * aclocal.m4: Regenerate. - * config.in: Regenerate. - * configure: Regenerate. - -2002-02-10 Daniel Jacobowitz - - * coff-rs6000.c (xcoff_generate_rtinit): Silence uninitialized - variable warnings. - * elf32-sh.c (sh_elf_relax_section): Silence signed/unsigned - comparison warning. - * trad-core.c (trad_unix_core_file_p): Silence pointer/integer - cast warnings for the common case. - -2002-02-10 Hans-Peter Nilsson - - * config.bfd (sh-*-linux*, sh-*-elf* | sh-*-rtemself*): Add sh64 - vectors. - (sh-*-netbsdelf*): New, to trump sh*-*-netbsdelf* and add sh64 - vectors. - -2002-02-09 Richard Henderson - - * elf64-alpha.c (elf64_alpha_howto): Add R_ALPHA_BRSGP. - (elf64_alpha_reloc_map, elf64_alpha_check_relocs): Likewise. - (elf64_alpha_relocate_section): Likewise. - * reloc.c (BFD_RELOC_ALPHA_BRSGP): New. - * bfd-in2.h, libbfd.h: Rebuild. - -2002-02-09 Hans-Peter Nilsson - - * elf64-mmix.c (_bfd_mmix_finalize_linker_allocated_gregs): Check - that base-plus-offset reloc accounting is consistent. - (mmix_elf_relax_section): Keep base-plus-offset reloc accounting - up to date for undefined symbols. - -2002-02-08 Eric Christopher - - From Rainer Orth - - * elf32-mips.c (_bfd_mips_elf_fake_sections): Don't create .rela - sections for the O32 ABI. - -2002-02-08 Chris Demetriou - - * elf32-arm.h: Fix formatting of _("..."). - * elf32-d10v.c: Likewise. - * elf32-m68k.c: Likewise. - * elf32-mips.c: Likewise. - -2002-02-08 Ivan Guzvinec - - * coff-or32.c: Fix compile time warning messages. - -2002-02-08 Alexandre Oliva - - Contribute sh64-elf. - 2002-01-23 Alexandre Oliva - * reloc.c (R_SH_GOTPLT32, R_SH_GOT_LOW16, R_SH_GOT_MEDLOW16, - R_SH_GOT_MEDHI16, R_SH_GOT_HI16, R_SH_GOTPLT_LOW16, - R_SH_GOTPLT_MEDLOW16, R_SH_GOTPLT_MEDHI16, R_SH_GOTPLT_HI16, - R_SH_PLT_LOW16, R_SH_PLT_MEDLOW16, R_SH_PLT_MEDHI16, - R_SH_PLT_HI16, R_SH_GOTOFF_LOW16, R_SH_GOTOFF_MEDLOW16, - R_SH_GOTOFF_MEDHI16, R_SH_GOTOFF_HI16, R_SH_GOTPC_LOW16, - R_SH_GOTPC_MEDLOW16, R_SH_GOTPC_MEDHI16, R_SH_GOTPC_HI16, - R_SH_GOT10BY4, R_SH_GOTPLT10BY4, R_SH_GOT10BY8, R_SH_GOTPLT10BY8, - R_SH_COPY64, R_SH_GLOB_DAT64, R_SH_JMP_SLOT64, R_SH_RELATIVE64): - New relocs. - * libbfd.h, bfd-in2.h: Rebuilt. - * elf32-sh.c (sh_elf_howto_table): Define new relocs. - (sh_reloc_map): Map them. - (PLT_ENTRY_SIZE, 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, elf_sh_plt0_entry, elf_sh_plt_entry, - elf_sh_pic_plt_entry, elf_sh_sizeof_plt, elf_sh_plt_plt0_offset, - elf_sh_plt0_gotplt_offset, elf_sh_plt_temp_offset, - elf_sh_plt_symbol_offset, elf_sh_plt_reloc_offset, - movi_shori_putval) [INCLUDE_SHMEDIA]: New. - (elf_sh_link_hash_entry) [INCLUDE_SHMEDIA]: Add - datalabel_got_offset. - (sh_elf_link_hash_newfunc): Initialize it. - (sh_elf_relocate_section): Augment the scope of - seen_stt_datalabel. Introduce GOTPLT support. Extend GOTPC, PLT, - GOT and GOTOFF handling to new SHmedia relocation types. Support - GOT_BIAS. - (sh_elf_check_relocs): Likewise. - (sh_elf_finish_dynamic_symbol) [TARGET_SHMEDIA]: Set up values in - PLT entries using movi_shori_putval. Support GOT_BIAS. - (sh_elf_finish_dynamic_sections): Likewise. - * elf32-sh64.c (shmedia_prepare_reloc): Do not add addend to - relocation, it's now done by the caller. - (GOT_BIAS): New. - * elf64-sh64.c (GOT_BIAS, PLT_ENTRY_SIZE, elf_sh64_sizeof_plt, - elf_sh64_plt_plt0_offset, elf_sh64_plt0_gotplt_offset, - elf_sh64_plt_temp_offset, elf_sh64_plt_symbol_offset, - elf_sh64_plt_reloc_offset, ELF_DYNAMIC_INTERPRETER, - elf_sh64_pcrel_relocs_copied, elf_sh64_link_hash_entry, - elf_sh64_link_hash_table, sh64_elf64_link_hash_traverse, - sh64_elf64_hash_table): New. - (sh_elf64_howto_table): Introduce new relocs. - (sh_elf64_info_to_howto): Accept new PIC relocs. - (sh_elf64_relocate_section): Augment the scope of - seen_stt_datalabel. Support new PIC relocs. - (sh_elf64_check_relocs): Support new PIC relocs. - (elf_sh64_plt0_entry_be, elf_sh64_plt0_entry_le, - elf_sh64_plt_entry_be, elf_sh64_plt_entry_le, - elf_sh64_pic_plt_entry_be, elf_sh64_pic_plt_entry_le, - elf_sh64_plt0_entry, elf_sh64_plt_entry, elf_sh64_pic_plt_entry, - sh64_elf64_link_hash_newfunc, sh64_elf64_link_hash_table_create, - movi_shori_putval, movi_3shori_putval, - sh64_elf64_create_dynamic_sections, - sh64_elf64_adjust_dynamic_symbol, sh64_elf64_discard_copies, - sh64_elf64_size_dynamic_sections, - sh64_elf64_finish_dynamic_symbol, - sh64_elf64_finish_dynamic_sections): New. - (elf_backend_create_dynamic-sections, - bfd_elf64_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. - 2001-05-16 Alexandre Oliva - * elf32-sh.c: Renumbered and renamed some SH5 relocations to - match official numbers and names; moved unmaching ones to the - range 0xf2-0xff. - * elf32-sh64.c, elf64-sh64.c: Likewise. - 2001-03-12 DJ Delorie - * elf32-sh.c (sh_elf_relax_section): Don't relax SHmedia - sections. - 2001-03-12 DJ Delorie - * elf32-sh64.c (shmedia_prepare_reloc): Validate relocs that must - be aligned. - * elf64-sh64.c (sh_elf64_relocate_section): Ditto. - 2001-01-14 Hans-Peter Nilsson - * elf32-sh64.c (bfd_elf32_bfd_copy_private_section_data): Define. - (sh64_elf_fake_sections): Set type to SHT_SH5_CR_SORTED for a - .cranges section with SEC_SORT_ENTRIES set. - (sh64_backend_section_from_shdr): Set SEC_SORT_ENTRIES on an - incoming sorted .cranges section. - (sh64_bfd_elf_copy_private_section_data): New. - (sh64_elf_final_write_processing): Only sort .cranges and modify - start address if called by linker. - 2001-01-08 Ben Elliston - * elf32-sh64.c (sh64_elf_final_write_processing): Activate - Hans-Peter Nilsson's set bit 0 patch from 2001-01-06. - * elf64-sh64.c (sh64_elf64_final_write_processing): Ditto. - 2001-01-06 Hans-Peter Nilsson - * elf64-sh64.c (sh_elf64_howto_table): No open brace at start of - line. Add comments before all entries. - : Correct and clarify describing - comment. - (sh_elf64_reloc): Correct head comment. - (sh_elf64_relocate_section): Correct spacing. - : Do not honour STO_SH5_ISA32; - instead call reloc_dangerous callback. - : New case. - (sh_elf64_gc_mark_hook): Correct spacing. - (sh_elf64_check_relocs): Ditto. - * elf32-sh64.c (shmedia_prepare_reloc) : - New case. - * elf32-sh.c: Correct #endif comments for #ifndef-wrapped - functions. - (sh_elf_howto_table) : Correct, - clarify describing comment. Add comments before all entries. - (sh_elf_relocate_section) : Do not - honour STO_SH5_ISA32; instead call reloc_dangerous callback. - 2001-01-06 Hans-Peter Nilsson - Sort .cranges section in final link. Prepare to set bit 0 on - entry address. - * elf32-sh64.c (struct sh64_find_section_vma_data): New. - (sh64_elf_link_output_symbol_hook): Fix typo in prototype. - (sh64_elf_set_mach_from_flags): Set SEC_DEBUGGING on incoming - .cranges section. - (sh64_backend_section_from_shdr): New, to recognize - SHT_SH5_CR_SORTED on incoming .cranges section. - (elf_backend_section_from_shdr): Define. - (sh64_elf_final_write_processing): Sort outgoing .cranges - section. (New, temporarily disabled:) Set bit 0 on entry address - according to ISA type. - (sh64_find_section_for_address): New. - (crange_qsort_cmpb, crange_qsort_cmpl, crange_bsearch_cmpb, - crange_bsearch_cmpl): Move here from opcodes/sh64-dis.c. - (sh64_address_in_cranges): Move here from opcodes/sh64-dis.c. Use - bfd_malloc, not xmalloc. - (sh64_get_contents_type): Move here from opcodes/sh64-dis.c. Make - global. - * elf32-sh64.c (sh64_elf64_final_write_processing): New, (but - temporarily disabled) setting bit 0 on entry address. - (elf_backend_final_write_processing): Define. - 2001-01-05 Hans-Peter Nilsson - * elf32-sh.c (sh_elf_howto_table) : Adjust fields to - be a proper relocation for PTA and PTB rather than a marker. - : - Zero src_mask. - * elf64-sh64.c: Ditto. - (sh_elf64_relocate_section) : New case. - * elf32-sh64.c: Include opcodes/sh64-opc.h - (shmedia_prepare_reloc): Take a bfd_link_info pointer as first - argument. Drop const qualifiers from "bfd *" and "bfd_byte *" - parameters. No unused parameters. Caller changed. - : New case. - * Makefile.am (elf32-sh64.lo): Add dependency on sh64-opc.h. - * Makefile.in: Regenerate. - 2000-12-30 Hans-Peter Nilsson - * elf64-sh64.c (sh64_elf64_fake_sections): Set SHF_SH5_ISA32 for - all code sections. - (sh_elf64_set_mach_from_flags): Change from EF_SH64 to EF_SH5. - (sh64_elf_merge_private_data): Ditto. - * elf32-sh64.c (sh64_elf_fake_sections): Use sh64_elf_section_data - to access stored section flags. - (sh64_elf_final_write_processing): Return immediately unless - called by linker. Use sh64_elf_section_data (cranges) to get size - of linker-generated cranges entries. - (sh64_elf_copy_private_data): Add missing "return true". - (sh64_elf_set_mach_from_flags): Change from EF_SH64 to EF_SH5. - (sh_elf64_merge_private_data): Ditto. - 2000-12-19 Hans-Peter Nilsson - * elf64-sh64.c (sh64_elf64_fake_sections): New, copy of - elf64-sh64.c:sh64_elf_fake_sections. - (elf_backend_fake_sections): Define as sh64_elf64_fake_sections. - 2000-12-18 Hans-Peter Nilsson - * elf32-sh64.c (sh64_elf_copy_private_data_internal): Delete. - (sh64_elf_final_write_processing): New. - (elf_backend_final_write_processing): Define. - (sh64_elf_fake_sections): Get header flags from tdata field. - (sh64_elf_copy_private_data): Do not call - sh64_elf_copy_private_data_internal, just copy e_flags field. - (sh64_elf_merge_private_data): Do not call - sh64_elf_copy_private_data_internal. - 2000-12-12 Hans-Peter Nilsson - Remove EF_SH64_ABI64, let ELF size make difference. - Remove SH64-specific BFD section flag. - * elf32-sh64.c (sh64_elf_fake_sections): Recognize section as - containing SHmedia through elf_section_data (asect)->tdata - non-zero, not using a BFD section flag. - (sh64_elf_set_mach_from_flags): Don't recognize EF_SH64_ABI64. - (sh64_elf_merge_private_data): Similar. - (elf_backend_section_flags): Don't define. - (sh64_elf_backend_section_flags): Delete. - * elf64-sh64.c (sh_elf64_set_mach_from_flags): Recognize EF_SH64, - not EF_SH64_ABI64. - (sh_elf64_merge_private_data): Similar. - * section.c (Section flags definitions): Don't define - SEC_SH_ISA_SHMEDIA. - (bfd-in2.h): Regenerate. - 2000-12-09 Hans-Peter Nilsson - Make DataLabel references work with partial linking. - * elf32-sh64.c: Fix formatting. - (sh64_elf_link_output_symbol_hook): New. - (elf_backend_link_output_symbol_hook): Define to - sh64_elf_link_output_symbol_hook. - (sh64_elf_add_symbol_hook): Make DataLabel symbol just global - undefined if partial linking. Adjust sanity check. - * elf64-sh64.c (sh64_elf64_link_output_symbol_hook): New. - (elf_backend_link_output_symbol_hook): Define to - sh64_elf64_link_output_symbol_hook. - (sh64_elf64_add_symbol_hook): Make DataLabel symbol just global - undefined if partial linking. Adjust sanity check. - 2000-12-07 Hans-Peter Nilsson - Implement semantics for inter-file DataLabel references. - * elf64-sh64.c (DATALABEL_SUFFIX): Define. - (sh64_elf64_add_symbol_hook): New. - (sh_elf64_relocate_section): If passing an indirect symbol with - st_type STT_DATALABEL on the way to a symbol with st_other - STO_SH5_ISA32, do not bitor 1 to the relocation. - (elf_backend_add_symbol_hook): Define to - sh64_elf64_add_symbol_hook. - * elf64-sh32.c: Tweak comments. - (DATALABEL_SUFFIX): Define. - (sh64_elf_add_symbol_hook): New. - (elf_backend_add_symbol_hook): Define to sh64_elf_add_symbol_hook. - * elf32-sh.c (sh_elf_relocate_section): If passing an indirect - symbol with st_type STT_DATALABEL on the way to a symbol with - st_other STO_SH5_ISA32, do not bitor 1 to the relocation. - 2000-12-05 Hans-Peter Nilsson - Pass through STT_DATALABEL. - * elf32-sh64.c (sh64_elf_get_symbol_type): New. - (elf_backend_get_symbol_type): Define. - * elf64-sh64.c (sh64_elf64_get_symbol_type): New. - (elf_backend_get_symbol_type): Define. - 2000-11-30 Hans-Peter Nilsson - * elf32-sh64.c: Tweak comments. - (sh64_elf_copy_private_data_internal): Add prototype. - (bfd_elf32_bfd_set_private_flags): Define. - (sh64_elf_copy_private_data_internal): Compare machine name, not - textual BFD target name, to check whether to copy section flag - SHF_SH5_ISA32. - (sh64_elf_merge_private_data): Validize bfd_get_arch_size. - Tweak section-contents-type-mismatch message. - (shmedia_prepare_reloc): Add ATTRIBUTE_UNUSED markers. - Validize reloc-types. - * elf64-sh64.c: New file. - * targets.c (bfd_elf64_sh64_vec, bfd_elf64_sh64l_vec): Declare. - * Makefile.am (BFD64_BACKENDS): Add elf64-sh64.lo. - (BFD64_BACKENDS_CFILES): Add elf64-sh64.c. - Regenerate dependencies. - * Makefile.in: Regenerate. - * config.bfd (sh64-*-elf*): Add bfd_elf64_sh64_vec and - bfd_elf64_sh64l_vec. - * configure.in: Handle bfd_elf64_sh64_vec and - bfd_elf64_sh64l_vec. - * configure: Regenerate. - * po/POTFILES.in: Regenerate. - * po/bfd.pot: Regenerate. - 2000-11-29 Hans-Peter Nilsson - * elf32-sh64.c (sh64_elf_set_mach_from_flags): Do not recognize - anything else but EF_SH64 and EF_SH64_ABI64. - (sh64_elf_merge_private_data): Emit error for anything else but - EF_SH64 and EF_SH64_ABI64. - * config.bfd: Remove bfd_elf32_shblin_vec and bfd_elf32_shlin_vec - from targ_selvecs. - * configure.in: Add cofflink.lo to bfd_elf32_sh64_vec and - bfd_elf32_sh64l_vec as a temporary measure. - * configure: Regenerate. - 2000-11-27 Hans-Peter Nilsson - * cpu-sh.c (arch_info_struct): Include sh5 item - unconditionalized. - * config.bfd (sh64-*-elf*): Do not set targ_cflags. - Add targ_selvecs bfd_elf32_sh_vec, bfd_elf32_shl_vec, - bfd_elf32_shblin_vec and bfd_elf32_shlin_vec. - * elf32-sh64.c: Tweak comments. - (sh64_elf_set_mach_from_flags): Recognize all machine flags that - are proper subsets of SH64 as bfd_mach_sh5. Add EF_SH64_ABI64. - (sh64_elf_copy_private_data_internal): Wrap long line. - (sh64_elf_merge_private_data): Rewrite to allow objects from - SH64 subsets to be linked together. - (INCLUDE_SHMEDIA): Define. - * elf32-sh.c (sh_elf_relocate_section) : - Parenthesize plus-expression inside or-expression. - : Ditto. - (sh_elf_set_mach_from_flags): Remove code refusing - deleted EF_SH64_32BIT_ABI flag. - 2000-11-26 Hans-Peter Nilsson - * elf32-sh.c (sh_elf_howto_table) : Set pcrel_offset to true. - (sh_elf_relocate_section) : Or 1 in - calculation of relocation if sym->st_other & STO_SH5_ISA32. - : Ditto if h->other & STO_SH5_ISA32. - * elf32-sh64.c (shmedia_prepare_reloc): Add rel->r_addend to - relocation. - 2000-11-24 Hans-Peter Nilsson - * Makefile.am (BFD32_BACKENDS): Add elf32-sh64.lo. - (BFD32_BACKENDS_CFILES): Add elf32-sh64.c. - Regenerate dependencies. - * Makefile.in: Regenerate. - * archures.c: Add bfd_mach_sh5. - * config.bfd: Map targ_cpu sh* to bfd_sh_arch. - Handle sh64-*-elf*. Set targ_cflags to -DINCLUDE_SHMEDIA. - * configure.in: Handle bfd_elf32_sh64_vec and bfd_elf32_sh64l_vec. - * configure: Regenerate. - * reloc.c (BFD_RELOC_SH_SHMEDIA_CODE, BFD_RELOC_SH_IMMU5, - BFD_RELOC_SH_IMMS6, BFD_RELOC_SH_IMMS6BY32, BFD_RELOC_SH_IMMU6, - BFD_RELOC_SH_IMMS10, BFD_RELOC_SH_IMMS10BY2, - BFD_RELOC_SH_IMMS10BY4, BFD_RELOC_SH_IMMS10BY8, - BFD_RELOC_SH_IMMS16, BFD_RELOC_SH_IMMU16, BFD_RELOC_SH_IMM_LOW16, - BFD_RELOC_SH_IMM_LOW16_PCREL, BFD_RELOC_SH_IMM_MEDLOW16, - BFD_RELOC_SH_IMM_MEDLOW16_PCREL, BFD_RELOC_SH_IMM_MEDHI16, - BFD_RELOC_SH_IMM_MEDHI16_PCREL, BFD_RELOC_SH_IMM_HI16, - BFD_RELOC_SH_IMM_HI16_PCREL, BFD_RELOC_SH_PT_16): New relocations. - * cpu-sh.c [INCLUDE_SHMEDIA] (arch_info_struct): Define and link - in item for SH5. - * elf32-sh.c [INCLUDE_SHMEDIA] (sh_elf_howto_table): Add howto items - for SHmedia relocs. - [INCLUDE_SHMEDIA] (sh_rel): Add mappings for SHmedia relocs. - [INCLUDE_SHMEDIA] (sh_elf_relocate_section) [default]: Call - shmedia_prepare_reloc, goto final_link_relocate if it returns - non-zero, else fail as before. - (sh_elf_set_mach_from_flags): Provide function only if not defined - as macro. Do not recognize objects with EF_SH64_32BIT_ABI set. - (sh_elf_set_private_flags): Provide function only if not defined - as a macro. - (sh_elf_copy_private_data): Similar. - (sh_elf_merge_private_data): Similar. - * section.c (SEC_SH_ISA_SHMEDIA): New. - * targets.c (bfd_elf32_sh64_vec, bfd_elf32_sh64l_vec): Declare. - * elf32-sh64.c: New file. - * libbfd.h: Regenerate. - * bfd-in2.h: Regenerate. - * po/POTFILES.in: Regenerate. - * po/bfd.pot: Regenerate. - * bfd-in2.h: Regenerate. - * libbfd.h: Regenerate. - -2002-02-07 Daniel Jacobowitz - - * bfd-in.h: Update check to only see if has - been included, not drag it in. - * bfd-in2.h: Regenerate. - -2002-02-06 H.J. Lu (hjl@gnu.org) - - * elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data): Update - the mach and ISA fields if necessary. - -2002-02-06 Nick Clifton - - * coffcode.h (coff_set_arch_mach_hook): Select the highest known - ARM architecture when an F_ARM_5 flag is detected, since we cannot - be sure exactly which architecture this represents. - -2002-02-05 Nick Clifton - - * po/tr.po: Updated translation. - -2002-02-05 Alan Modra - - From Jimi X - * archures (bfd_mach_ppc64): Define. - (bfd_powerpc_arch): Rename to bfd_powerpc_archs. - (bfd_powerpc_arch): Define. - * bfd-in2.h: Regenerate. - * cpu-powerpc.c (arch_info_struct): Rename to bfd_powerpc_archs. - (bfd_powerpc_arch): Move to tail of bfd_powerpc_archs. - (bfd_powerpc_archs): Add default powerpc64 arch. - -2002-02-05 Alan Modra - - * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Check for relocs - against section syms in readonly sections. Don't do the global - sym check if we find one. - * elf64-s390.c (elf_s390_size_dynamic_sections): Likewise. - * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise. - * elf32-i386.c (elf_i386_size_dynamic_sections): Likewise. - * elf32-s390.c (elf_s390_size_dynamic_sections): Likewise. - (elf_s390_grok_prstatus): Add missing prototype. - -2002-02-04 Hans-Peter Nilsson - - * elf64-mmix.c (mmix_dump_bpo_gregs): New function. - (mmix_elf_check_common_relocs) : - Call bfd_get_section_by_name only once. Initialize - bpodata->n_bpo_relocs_this_section. - (_bfd_mmix_prepare_linker_allocated_gregs): Remove comment - referring to DSOs. - (bpo_reloc_request_sort_fn): Don't use difference of values as - return-value. - -2002-02-02 David O'Brien - - * configure.in: Tweak the FreeBSD 4.x recognition more. Only treat - version 4.5 and later the same as 5-CURRENT. - * configure: Re-generate. - -2002-02-02 Jason Thorpe - - * config.bfd (hppa*-*-netbsd*): New target. - -2002-01-31 Philipp Thomas - - * coff-arm.c (coff_arm_merge_private_bfd_data): Move ERROR - to front of message. Unify messages with elf32-arm.h. Use - commas where neccessary. - * elf32-arm.h (elf32_arm_merge_private_bfd_data): Use all upcase - ERROR in messages. Unify messages with coff-arm.c. Correct - VFP/FPA error message. - (elf32_arm_print_private_bfd_data): Don't mark APCS-26 and - APCS-32 for translation. - -2002-02-01 Hans-Peter Nilsson - - Perform on-demand global register allocation from - R_MMIX_BASE_PLUS_OFFSET relocs. - * elf64-mmix.c (struct bpo_reloc_section_info, struct - bpo_reloc_request, struct bpo_greg_section_info): New. - (mmix_elf_check_common_relocs, mmix_elf_gc_sweep_hook, - bpo_reloc_request_sort_fn, mmix_elf_relax_section, - _bfd_mmix_check_all_relocs, - _bfd_mmix_prepare_linker_allocated_gregs, - _bfd_mmix_finalize_linker_allocated_gregs): New functions. - (elf_mmix_howto_table): Correct src_mask for most relocs. - (mmix_elf_perform_relocation) : New - case. - (mmix_final_link_relocate) : New - case. Fix typo in comment. New label do_mmix_reloc. - (mmix_elf_check_relocs): Abuse bfd_link_info member base_file to - store first object file with a base-plus-offset reloc. Call - mmix_elf_check_common_relocs for the part common with mmo. - (mmix_elf_final_link): Write out linker-allocated register - contents section. + * elflink.h (elf_gc_sections): Warn when gc-sections option is ignored. + * elf32-h8300.c (elf32_h8_gc_mark_hook): New function. + (elf32_h8_gc_sweep_hook): New function. + (elf_backend_gc_mark_hook): Define. (elf_backend_gc_sweep_hook): Define. - (bfd_elf64_bfd_relax_section): Define. - - * mmo.c: Don't include - (mmo_init): Correct init-once logic. - -2002-02-01 Tom Rix - - * config.bfd: Conditionally support for pre AIX 4.3. - -2002-02-01 Alan Modra - - * Makefile.am: Run "make dep-am" - * Makefile.in: Regenerate. - -2002-01-31 David O'Brien - - * configure.in: Recognize the differences in core files from FreeBSD - 4.{0,1} and later versions of 4.x. This treats 4.2+ the same as - 5-CURRENT. - * configure: Regenerate. - -2002-01-31 Ivan Guzvinec - - * coff-or32.c: New file. - * cpu-or32.c: New file. - * elf32-or32.c: New file. - * archures.c: Add support for or32. - * targets.c: Add support for or32. - * bfd-in2.h: Regenerate. - * coffcode.h (coff_set_arch_mach_hook, coff_set_flags, - coff_write_object_contents): Add support for or32. - * config.bfd: Add target. - * configure.in: Add support for or32. - * configure: Regenerate. - * Makefile.am: Add support for or32. - * Makefile.in: Regenerate. - * po/SRC-POTFILES.in: Add or32 files. - * po/bfd.pot: Regenerate. - -2002-01-31 Nick Clifton - Don Lindsay - - * elf32-mips.c (mips_elf_calculate_relocation): Replace 'return - false' with a return of a bfd_reloc_ error code. - -2002-01-31 Hans-Peter Nilsson - - * elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't - unexport unreferenced symbols when --export-dynamic. Call - _bfd_elf_strtab_delref when unexporting. - -2002-01-30 Daniel Jacobowitz - - * bfd-in.h: Include if it is available. - * bfd-in2.h: Regenerated. - -2002-01-31 Alan Modra - - * elf64-ppc.c (func_desc_adjust): STV_PROTECTED functions should - not go via the plt. - -2002-01-30 Nick Clifton - - * archures.c: Tidy up formatting of embedded comments. - * bfd.c: Tidy up formatting of embedded comments. - * bfd-in.h: Fix formatting of comments. - * reloc.c: Tidy up formatting of ordinary & embedded comments. - * section.c: Tidy up formatting of embedded comments. - * syms.c: Tidy up formatting of embedded comments. - * targets.c: Tidy up formatting of embedded comments. - - * bfd-in2.h: Regenerate. - -2002-01-30 Nick Clifton - - * vms-tir.c (cmd_name): New function. - (tir_cmd_name): New function. - (etir_sta, etir_sto, etir_opr, etir_stc): Use cmd_name(). - (tir_opr, tir_ctl, tir_cmd): use tir_cmd_name(). - Fix formatting. - - * peXXigen.c (pe_print_idata): Rearrange message to aid in - translation. - (pe_print_pdata): Rearrange message to aid in translation. - - * libbfd.c (warn_deprecated): Rearrange error message to aid in - translation. - - * ihex.c (ihex_write_object_contents): Fix spelling typo. - - * ieee.c (ieee_slurp_external_symbols): Remove spurious space. - - * elf64-sparc.c (sparc64_elf_add_symbol_hook): Rearrange error - message to aid in translation. - - * elf64-mmix.c (mmix_final_link_relocate): Rearrange error message - to aid in translation. - - * elf32-arm.h (elf32_arm_merge_private_bfd_data): Fix typo. - -2002-01-30 Philipp Thomas - - * coff-arm.c, elf32-elf.h: Unify messages. - -2002-01-30 Nick Clifton - - * po/sv.po: Updated translation. - -2002-01-30 Philipp Thomas - - * dwarf2.c (read_abbrev): Use full section name in error message. - (decode_line_info): Likewise. - - * elf.c (_bfd_elf_symbol_from_bfd_symbol): Don't translate debugging - message. - -2002-01-30 Alan Modra - - * elf64-ppc.c (func_desc_adjust): Only provide missing function - descriptor symbols for undefined function code syms. Clear - ELF_LINK_NON_ELF so that they can stay weak. - -2002-01-29 Chris Demetriou - Mitch Lichtenberg - - * bfd-in.h (bfd_mips_elf32_create_embedded_relocs): New prototype. - * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): New function - to handle 32-bit ELF embedded reloc (ld --embedded-relocs) - generation. - * bfd-in2.h: Regenerate. - -2002-01-29 Chris Demetriou - - * elf32-mips.c: Add additional comments about HI16 relocation - processing. - (_bfd_mips_elf_hi16_reloc): Don't subtract address here for - pc-relative relocations. (Reverts change made on 2001-10-31.) - (_bfd_mips_elf_lo16_reloc): Subtract address of LO16 part here - for pc-relative relocations. - (mips_elf_calculate_relocation): Add a comment about a kludge - in the R_MIPS_GNU_REL_HI16 handling. - (_bfd_mips_elf_relocate_section): Implement that kludge; - adjust pc-relative HI16 relocation for difference in HI16 and - LO16 addresses, since it can't easily be done in - mips_elf_calculate_relocation. - -2002-01-29 Martin Schwidefsky - - * 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. - -2002-01-28 Jason Thorpe - - * elfcore.h (elf_core_file_p): Improve comment for last change. - -2002-01-27 Daniel Jacobowitz - - * configure: Regenerated. - -2002-01-27 Jason Thorpe - - * elfcore.h (elf_core_file_p): Set the machine architecture - before processing the program headers. - -2002-01-26 Hans-Peter Nilsson - - * configure.in <64-bit configuration>: If using gcc, check and - emit error for egcs-1.1.2. - * configure: Regenerate. - -2002-01-26 Egor Duda - - * elf.c (elfcore_grok_win32pstatus): Copy only as much information - as possible to avoid stack corruption. - -2002-01-26 Richard Henderson - - * elf64-alpha.c (elf64_alpha_check_relocs): Don't set reltext - for non-allocated sections. - -2002-01-25 Mark Kettenis - - * elf.c (elfcore_write_prstatus): Make sure we pass the address of - prstat.pr_reg even if it is a struct. - -2002-01-25 Steve Ellcey - - * elfxx-ia64.c: Reset AIX vector function overrides for HP-UX. - -2002-01-25 Philipp Thomas - - * coffgen.c (coff_print_symbol): Don't mark info message - for translation. - -2002-01-25 Nick Clifton - - * po/fr.po: Updated translation. - * po/es.po: Updated translation. - -2002-01-25 Philipp Thomas - - * coff-alpha.c (alpha_relocate_section): Unify warning message - for GP relative relocations without GP defined. - * coff-mips.c (mips_relocate_section): Likewise. - -2002-01-25 Alan Modra - - * elf-eh-frame.c (_bfd_elf_eh_frame_section_offset): Avoid - unsigned overflow when new_offset < old_offset. - -2002-01-24 Philipp Thomas - - * bfd.c (_bfd_abort): Fix typo. - -2002-01-23 Richard Henderson - - * elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't suppress - plt entries for undefweak symbols. - -2002-01-23 Steve Ellcey - - * targets.c (bfd_elf32_ia64_hpux_big_vec): Add to DEFAULT_VECTOR. - (bfd_elf64_ia64_hpux_big_vec): Ditto. - (bfd_elf32_h8300_vec): Ditto. - -2002-01-23 Alan Modra - - * 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. - -2002-01-22 Richard Henderson - - * elf64-alpha.c (INSN_UNOP): Encode with RB as $sp. - -2002-01-22 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. - -2002-01-22 John David Anglin - - * configure.host (hppa*64*-*-hpux*, hppa*64*-*-linux*): Add new - host defines. - -2002-01-21 Hans-Peter Nilsson - - * elf32-cris.c (cris_elf_relocate_section) : - Check for and emit error if sgot is NULL at this point. - -2002-01-21 Jason Thorpe - - * config.bfd (ia64*-*-netbsd*): New target. - -2002-01-21 Thomas Klausner - - * som.c (som_write_space_strings): Comment typo fix. - -2002-01-21 Alan Modra - - * 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. - -2002-01-18 Alan Modra - - * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Test for a - dynamic function descriptor symbol, not the associated function - symbol. - -2002-01-17 Eric Christopher - - * elf32-mips.c (mips_elf_calculate_relocation): Fix typo. - -2002-01-17 Nick Clifton - - * 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. - -2002-01-15 Nick Clifton - - * po/sv.po: New file: Swedish translation. - * configure.in (ALL_LINGUAS): Add sv. - * configure: Regenerate. - -2002-01-15 Jakub Jelinek - - * 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. - -2002-01-15 Nick Clifton - - * 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. - -2002-01-10 Michael Snyder - - * 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; - -2002-01-09 Jason Thorpe - - * elf.c: Update copyright years. - (elfcore_grok_netbsd_note): Use NT_NETBSDCORE_PROCINFO - and NT_NETBSDCORE_FIRSTMACH. Improve a comment. - -2002-01-08 Michael Snyder - - 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. - -2002-01-08 Alexandre Oliva - - * elf.c (elf_fake_sections): Propagate errors from - elf_backend_fake_section. - -2002-01-07 Jason Thorpe - - * 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. - * elf32-sh-nbsd.c: New file. - * targets.c: Update copyright years. - (_bfd_target_vector): Add bfd_elf32_shlnbsd_vec and - bfd_elf32_shnbsd_vec. - -2002-01-07 Aldy Hernandez - - * coff-rs6000.c (READ20): Use bfd_scan_vma. - -2002-01-07 Geoffrey Keating - - * elflink.h (elf_link_input_bfd): Don't ask for the merged offset - of a symbol in a section that will be deleted. - -2002-01-07 Nick Clifton - - * po/es.po: New file: Spanish translation. - * configure.in (ALL_LINGUAS): Add es. - * configure: Regenerate. - -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. - * 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. - -2002-01-03 Tom Rix - - * xcofflink.c (_bfd_xcoff_bfd_final_link): Update .pad section ordering - for recent bfd_make_section_anyway change. - -2002-01-03 Nick Clifton - - * elf32-arm.h (elf32_arm_final_link_relocate): Handle - R_ARM_THM_PC11 reloc. - -2002-01-02 Nick Clifton - - * configure.in (LINGUAS): Add ja. - * configure: Regenerate. - * po/ja.po: Import from translation project's web site. - -2002-01-02 Nick Clifton - - * elf32-arm.h (elf32_arm_merge_private_bfd_data): Reformat error - messages to ease translation into other languages. + (elf_backend_can_gc_sections): Define. -For older changes see ChangeLog-0001 +For older changes see ChangeLog-0203 Local Variables: mode: change-log