- * po/SRC-POTFILES.in: Regenerate.
-
-2008-03-12 Bernd Schmidt <bernd.schmidt@analog.com>
-
- From Jie Zhang <jie.zhang@analog.com>
- * elf32-bfin.c (struct bfinfdpic_relocs_info): Make got17m4,
- gothilo, fd, fdgot17m4, fdgothilo, fdgoff17m4, fdgoffhilo,
- gotoff, call and sym not bitfields.
- (bfinfdpic_gc_sweep_hook): New function; update the relocation
- information for the relocations of the section being removed.
- (bfinfdpic_check_relocs): Accumulate the number of relocations
- which set got17m4, gothilo, fd, fdgot17m4, fdgothilo, fdgoff17m4,
- fdgoffhilo, gotoff, call and sym fields.
- (elf_backend_gc_sweep_hook): Redefine for FD-PIC.
-
-2008-03-12 Alan Modra <amodra@bigpond.net.au>
-
- PR 5900
- * elf-bfd.h: Include elf/internal.h after elf/external.h.
- * elfcode.h (elf_swap_symbol_in): Map reserved shndx range.
- (elf_swap_symbol_out): Adjust SHN_XINDEX test.
- (elf_swap_ehdr_out): Mask SHN_LORESERVE and SHN_XINDEX to values
- seen in external structs.
- (valid_section_index_p): Delete.
- (elf_object_p): Don't increment section numbers over reserved range.
- Simplify test for valid sh_link, sh_info and e_shstrndx fields.
- (elf_write_shdrs_and_ehdr): Mask SHN_LORESERVE and SHN_XINDEX to values
- seen in external structs. Don't increment section numbers over
- reserved range.
- * elf.c (bfd_elf_sym_name): Remove redundant tests on st_shndx.
- (bfd_section_from_shdr): Likewise.
- (group_signature): Range check before accessing elf_elfsections.
- (_bfd_elf_setup_sections): Likewise.
- (bfd_section_from_shdr): Likewise.
- (bfd_section_from_shdr): Don't increment section number over
- reserved sections.
- (assign_file_positions_for_non_load_sections): Likewise.
- (assign_file_positions_except_relocs): Likewise.
- (_bfd_elf_write_object_contents): Likewise.
- (assign_section_numbers): Likewise. Adjust for changed SHN_*.
- (prep_headers): Delete unused variable.
- * elflink.c (bfd_elf_link_record_local_dynamic_symbol): Adjust
- for changed SHN_* values.
- (check_dynsym, elf_link_input_bfd): Likewise.
- (bfd_elf_final_link): Likewise. Don't skip over reserved section
- range.
- (elf_fixup_link_order): Check that sh_link field is valid.
- * elf-hppa.h (elf_hppa_add_symbol_hook): Make "index" unsigned.
- * elf32-arm.c (elf32_arm_gc_mark_extra_sections): Range check before
- accesssing elf_elfsections.
- * elf32-avr.c (elf32_avr_size_stubs): Likewise.
- * elf32-hppa.c (elf32_hppa_size_stubs): Likewise.
- * elf32-m68hc1x.c (elf32_m68hc11_size_stubs): Likewise.
- * elf64-hppa.c (elf64_hppa_check_relocs): Adjust for changed
- SHN_* defines. Test for SHN_BAD return from
- _bfd_elf_section_from_bfd_section
-
-2008-03-12 Alan Modra <amodra@bigpond.net.au>
-
- * elf-bfd.h (_bfd_elf_section_from_bfd_section): Update prototype.
- * elf.c (_bfd_elf_section_from_bfd_section): Return unsigned int,
- SHN_BAD on error.
- (_bfd_elf_print_private_bfd_data): Test for SHN_BAD result from
- _bfd_elf_section_from_bfd_section, not -1.
- (swap_out_syms): Likewise.
- * elflink.c (elf_link_add_object_symbols): Likewise.
- (bfd_elf_get_bfd_needed_list): Likewise.
- (bfd_elf_match_symbols_in_sections): Likewise.
- (elf_link_add_object_symbols): Don't bother testing for symbols
- using normal sections before calling bfd_section_from_elf_index.
- (elf_link_input_bfd, bfd_elf_final_link): Likewise.
- (bfd_elf_reloc_symbol_deleted_p): Likewise.
- * elfcode.h (elf_slurp_symbol_table): Likewise.
- * elf32-spu.c (get_sym_h): Likewise.
- * elf32-xtensa.c (get_elf_r_symndx_section): Likewise.
- * elf64-ppc.c (opd_entry_value, get_sym_h, ppc64_elf_edit_toc): Ditto.
- * elf64-sh64.c (sh_elf64_get_relocated_section_contents): Likewise.
-
-2008-03-11 Alan Modra <amodra@bigpond.net.au>
-
- * elf32-spu.c (spu_elf_relocate_section): Test identical conditions
- to those in process_stubs for overlay symbols.
-
-2008-03-09 Paul Brook <paul@codesourcery.com>
-
- * elf32-arm.c (elf32_arm_merge_eabi_attributes): Handle new
- Tag_VFP_arch values.
-
-2008-03-08 Paul Brook <paul@codesourcery.com>
-
- * elf32-arm.c (insert_thumb_branch): Rewrite.
- (elf32_thumb_to_arm_stub): Use new insert_thumb_branch.
-
-2008-03-07 Paul Brook <paul@codesourcery.com>
-
- * elf32-arm.c (elf32_arm_howto_table_1): Fix bitmasks for MOVW and
- MOVT relocations.
- (elf32_arm_final_link_relocate): Fix off by one MOVW/MOVT sign
- extension.
- (elf32_arm_relocate_section): Handle MOVW and MOVT
- relocations. Improve safety check for other weird relocations.
- (elf32_arm_check_relocs): Only set h->needs_plt for branch/call
- relocations.
-
-2008-03-03 Bob Wilson <bob.wilson@acm.org>
-
- * xtensa-isa.c (xtensa_isa_num_pipe_stages): Make max_stage static and
- only compute its value once.
-
-2008-03-03 Alan Modra <amodra@bigpond.net.au>
-
- * elf32-spu.c (struct got_entry): Add "addend" field.
- (count_stub, build_stub): Use a new stub if relocation addend
- differs from existing stubs for this symbol.
- (process_stubs): Deal with addends.
- (spu_elf_relocate_section, spu_elf_output_symbol_hook): Likewise.
-
-2008-03-02 H.J. Lu <hongjiu.lu@intel.com>
-
- PR ld/5789
- * elflink.c (_bfd_elf_symbol_refs_local_p): Always return true
- for hidden and local symbols.
-
-2008-03-03 Alan Modra <amodra@bigpond.net.au>
-
- * elf32-ppc.c (allocate_dynrelocs): Discard relocs on
- undefined symbols with internal or hidden visibility.
- (ppc_elf_relocate_section): Likewise. Use SYMBOL_CALLS_LOCAL
- rather than SYMBOL_REFERENCES_LOCAL on branches. Don't
- return immediately on dynamic reloc error.
-
-2008-03-01 Alan Modra <amodra@bigpond.net.au>
-
- * elf64-ppc.c (build_plt_stub): Add relocs on plt call stubs
- if emitrelocations.
- (get_relocs): New function, split out from..
- (ppc_build_one_stub): ..here. Add relocs on plt_branch stubs if
- emitrelocations. Remove indx temp.
- (ppc_size_one_stub): Count new stub relocs.
- (ppc64_elf_size_stubs): Count new glink reloc.
- (ppc64_elf_build_stubs): Emit glink reloc if emitrelocations.
- (ppc64_elf_finish_dynamic_sections): Output glink relocs.
- * elf32-ppc.c (ppc_elf_finish_dynamic_sections): Describe non-pic
- glink code.
-
-2008-02-28 Alan Modra <amodra@bigpond.net.au>
-
- * elf32-spu.c (mark_functions_via_relocs): Don't assume that
- the "->start" pointer reaches to function origin, so that we
- can handle functions split over more than two sections.
- (build_call_tree): Likewise.
- (pasted_function): Don't attempt to set fun->start back to the
- function origin, just go back one section.
-
-2008-02-27 Catherine Moore <clm@codesourcery.com>
-
- * elf.c ( _bfd_elf_print_private_bfd_data): Call
- elf_backend_get_target_dtag if defined.
- * elf32-mips.c (elf_backend_get_target_dtag): Define.
- * elf64-mips.c: Likewise.
- * elfn32-mips.c: Likewise.
- * elfxx-mips.c (_bfd_mips_elf_get_target_dtag): New.
- * elfxx-mips.h (_bfd_mips_elf_get_target_dtag): Declare.
- * elf-bfd.h (elf_backend_get_target_dtag): Add prototype.
- * elfxx-target.h (elf_backend_get_target_dtag): Add default.
- (elf_backend_data): Add elf_backend_get_target_dtag.
-
-2008-02-26 Alan Modra <amodra@bigpond.net.au>
-
- * elf32-ppc.c (ppc_elf_check_relocs): Set pointer_equality_needed
- for R_PPC_REL32 syms. Don't set non_got_ref on branch reloc syms,
- and assume branch relocs are not dynamic when non-shared.
- (readonly_dynrelocs): New function, split out from..
- (maybe_set_textrel): ..here, renamed from old readonly_dynrelocs.
- (ppc_elf_adjust_dynamic_symbol): For symbols generating plt entries,
- clear non_got_ref..
- (allocate_dynrelocs): ..and don't set u.def for undefined weak.
- Do allow dynamic relocs on undefined symbols.
- (ppc_elf_adjust_dynamic_symbol): Use readonly_dynrelocs.
- (ppc_elf_relocate_section): Mirror dynamic reloc changes in
- check_relocs.
- (ppc_elf_finish_dynamic_symbol): Don't give a warning on weak
- plt symbols needing pointer_equality_needed.
-
-2008-02-23 Alan Modra <amodra@bigpond.net.au>
-
- * elf32-ppc.c (ppc_elf_check_relocs): Revert non_got_ref change.
-
-2008-02-23 Alan Modra <amodra@bigpond.net.au>
-
- * elf32-ppc.c (ppc_elf_copy_indirect_symbol): Copy
- pointer_equality_needed.
- (ppc_elf_check_relocs): Split out non-branch relocs from others
- that might emit dynamic relocs. Set pointer_equality_needed
- for their symbols. Don't set non_got_ref on branch reloc symbols.
- (ppc_elf_hash_symbol): New function.
- (elf_backend_hash_symbol): Define.
- (ppc_elf_finish_dynamic_symbol): Handle pointer_equality_needed.
- Error if pointer_equality_needed on weak plt symbol.
-
-2008-02-22 H.J. Lu <hongjiu.lu@intel.com>
-
- PR ld/5788
- * elflink.c (elf_create_symbuf): Correct buffer size and
- position.
-
-2008-02-22 Nick Clifton <nickc@redhat.com>
-
- PR 868
- * dwarf2.c: Revert previous patch. All of the allocate memory is
- on an obstack which will be freed at some other time.
-
-2008-02-20 Nick Clifton <nickc@redhat.com>
-
- PR 868
- * libbfd.c (bfd_realloc_or_free): New function. Performs like
- bfd_realloc, but if the (re)allocation fails, the pointer is
- freed.
- * libbfd-in.h: Prototype.
- * libbfd.h: Regenerate.
- * bfdio.c (bfd_bwrite): Use the new function.
- (bfd_seek): Likewise.
- * bfdwin.c:(bfd_get_file_window): Likewise.
- * elf-strtab.c (_bfd_elf_strtab_add): Likewise.
- * elf32-ppc.c (ppc_elf_relax_section): Likewise.
- * elf32-xtensa.c (vsprintf_msg): Likewise.
- * mach-o.c (bfd_mach_o_core_fetch_environment): Likewise.
- * stabs.c (_bfd_link_seciton_stabs): Likewise.
- * vms-misc.c (_bfd_vms_get_record): Likewise.
- * vms-tir.c (check_section): Likewise.
- * vms.c (vms_new_section_hook): Likewise.
- * elf32-arm.c (elf32_arm_section_map_add): Check that the
- allocation of sec_data->map succeeded before using it.
- * elflink.c (elf_link_output_sym): Do not overwrite finfo->
- symshndxbuf until it is known that the reallocation succeeded.
-
-2008-02-20 Diogo de Carvalho Kraemer <diogo@kraemer.eng.br>
- Nick Clifton <nickc@redhat.com>
-
- PR 868
- * dwarf2.c (read_abbrevs): Free the abbreviation table if we run
- out of memory.
- (decode_line_info): Free the line_info_table before returning a
- failure result.
- (_bfd_dwarf2_cleanup_debug_info): Free the abbreviation table.
- Free the line table. Free the function table. Free the variable
- table.
-
-2008-02-17 Mark Kettenis <kettenis@gnu.org>
-
- * elf.c (swap_out_syms): Avoid preprocessing directive within
- macro arg.
-
-2008-02-17 Jan Kratochvil <jan.kratochvil@redhat.com>
-
- * elf.c (assign_file_positions_for_load_sections): Set the type of
- PT_NOTE sections to SHT_NOTE.
-
-2008-02-17 Ulrich Weigand <uweigand@de.ibm.com>
-
- * simple.c (bfd_simple_get_relocated_section_contents): Set
- link_info.output_bfd.
-
-2008-02-16 Nathan Sidwell <nathan@codesourcery.com>
-
- * dwarf2.c (find_line): Don't trust debug information after an
- unparseable compilation unit.
-
-2008-02-15 Alan Modra <amodra@bigpond.net.au>
-
- PR 5765
- * section.c (SEC_LINK_DUPLICATES): Correct. Renumber following flags.
- * bfd-in2.h: Regenerate.
-
-2008-02-15 Alan Modra <amodra@bigpond.net.au>
-
- * elf-bfd.h (enum elf_object_id): Add HPPA_ELF_TDATA.
- * elf.c (bfd_elf_allocate_object): Don't check for already allocated
- tdata.
- * elf32-hppa.c (elf32_hppa_mkobject): New function.
- (bfd_elf32_mkobject): Define.
- * elf32-ppc.c (is_ppc_elf_target): Delete. Replace all uses with..
- (is_ppc_elf): ..this new macro.
- * elf64-ppc.c (is_ppc64_elf_target): Delete. Replace all uses with..
- (is_ppc64_elf): ..this new macro.
-
-2008-02-15 Alan Modra <amodra@bigpond.net.au>
-
- * elflink.c: Replace all accesses to hash->creator field with
- output_bfd->xvec.
- * cofflink.c: Likewise.
- * coff-h8300.c: Likewise.
- * ecoff.c: Likewise.
- * elf32-m68hc1x.c: Likewise.
- * elf32-ppc.c: Likewise.
- * elf64-alpha.c: Likewise.
- * elf64-ppc.c: Likewise.
- * elf64-sparc.c: Likewise.
- * elfxx-mips.c: Likewise.
- * i386linux.c: Likewise.
- * m68klinux.c: Likewise.
- * sparclinux.c: Likewise.
- * sunos.c: Likewise.
- * xcofflink.c: Likewise.
- * linker.c: Likewise.
- (_bfd_link_hash_table_init): Don't store creator.
-
-2008-02-14 Peter Jones <pjones@redhat.com>
-
- * efi-rtdrv-ia32.c: New file.
- * efi-bsdrv-ia32.c: New file.
- * efi-rtdrv-ia64.c: New file.
- * efi-bsdrv-ia64.c: New file.
- * efi-rtdrv-x86_64.c: New file.
- * efi-bsdrv-x86_64.c: New file.
- * peicode.h (pe_bfd_object_p): Add support for boot service and
- runtime service drivers.
- * libpei.h: Add macros for EFI formats, and rename the efi application
- format macros to disambiguate.
- * targets.c: Add bfd_target _vec externs.
- (_bfd_tar): Add EFI _vec entries.
- * config.bfd: Add EFI vectors into the selection routines.
- * configure.in: add EFI _vec entries.