+2007-12-17 Pedro Alves <pedro_alves@portugalmail.pt>
+
+ * config.bfd: Add arm-*-mingw32ce* target.
+
+2007-12-15 Richard Sandiford <rsandifo@nildram.co.uk>
+
+ * elf-bfd.h (eh_cie_fde): Replace u.cie.merged with a union of
+ a merged field and a sec field.
+ (eh_frame_hdr_info): Remove offsets_adjusted.
+ * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Update accesses to
+ the CIE merged field.
+ (_bfd_elf_gc_mark_fdes): Likewise.
+ (_bfd_elf_discard_section_eh_frame): Likewise. Set u.cie.u.sec
+ when clearing the removed flag.
+ (_bfd_elf_eh_frame_section_offset): Remove offsets_adjusted handling.
+ (_bfd_elf_write_section_eh_frame): Likewise. Apply output_offsets
+ where appropriate.
+
+2007-12-15 Richard Sandiford <rsandifo@nildram.co.uk>
+
+ * elf-bfd.h (eh_cie_fde): Move add_fde_encoding and
+ per_encoding_relative to u.cie. Add commentary.
+ * elf-eh-frame.c (cie): Remove make_relative.
+ (extra_augmentation_string_bytes): Update use of add_fde_encoding.
+ (extra_augmentation_data_bytes): Likewise. Use an FDE's own
+ add_augmentation_size field, rather than referring to the CIE.
+ (_bfd_elf_parse_eh_frame): Don't set the struct cie
+ make_relative field; set the eh_cie_fde field directly.
+ Update setting of add_fde_encoding and per_encoding_relative.
+ Copy make_relative and add_augmentation_size from the CIE
+ to the FDE.
+ (_bfd_elf_discard_section_eh_frame): Use the FDE's own
+ make_relative field.
+ (_bfd_elf_eh_frame_section_offset): Likewise.
+ (_bfd_elf_write_section_eh_frame): Update accesses to
+ add_fde_encoding and per_encoding_relative. Use the FDE's
+ own make_relative and add_augmentation_size fields.
+
+2007-12-15 Richard Sandiford <rsandifo@nildram.co.uk>
+
+ * elf-bfd.h (eh_cie_fde): Remove need_lsda_relative.
+ Move make_lsda_relative to u.cie.
+ * elf-eh-frame.c (cie): Rename make_lsda_relative to
+ can_make_lsda_relative.
+ (_bfd_elf_parse_eh_frame): Don't set the old eh_cie_fde
+ make_lsda_relative field. Update after cie renaming.
+ Set u.cie.make_lsda_relative if can_make_lsda_relative
+ and if we find a relocation against the LSDA.
+ (_bfd_elf_discard_section_eh_frame): Copy make_lsda_relative when
+ changing a CIE's group representative.
+ (_bfd_elf_eh_frame_section_offset): Don't set need_ldsa_relative here.
+ (_bfd_elf_write_section_eh_frame): Check u.cie.make_lsda_relative
+ rather than need_lsda_relative.
+
+2007-12-15 Richard Sandiford <rsandifo@nildram.co.uk>
+
+ * elf-bfd.h (eh_cie_fde): Add u.fde.next_for_section and
+ u.cie.gc_mark.
+ (bfd_elf_section_data): Add fde_list.
+ (elf_fde_list): New macro.
+ (elf_obj_tdata): Add eh_frame_section.
+ (elf_eh_frame_section): New macro.
+ (_bfd_elf_gc_mark_reloc): Remove last parameter.
+ (_bfd_elf_gc_mark_fdes): Declare.
+ * elf-eh-frame.c (_bfd_elf_get_eh_frame_sec_info): Chain the FDEs
+ for each input section.
+ (mark_entry, _bfd_elf_gc_mark_fdes): New functions.
+ * elflink.c (_bfd_elf_gc_mark_reloc): Remove is_eh parameter.
+ (_bfd_elf_gc_mark): Update call accordingly. Mark the relocations
+ againts the section's FDEs. Don't mark the bfd's elf_eh_frame_section.
+ (bfd_elf_gc_sections): Parse each input bfd's .eh_frame before
+ marking any input sections. Remove the current EH handling.
+ * section.c (bfd_section): Remove gc_mark_from_eh.
+ * ecoff.c (bfd_debug_section): Update initializer accordingly.
+
+2007-12-15 Richard Sandiford <rsandifo@nildram.co.uk>
+
+ * elf-bfd.h (eh_cie_fde): Add u.cie. Document how u.fde.cie_inf
+ changes when removed == 0.
+ (eh_frame_hdr_info): Add parsed_eh_frames.
+ (_bfd_elf_begin_eh_frame_parsing): Declare.
+ (_bfd_elf_parse_eh_frame): Declare.
+ (_bfd_elf_end_eh_frame_parsing): Declare.
+ * elf-eh-frame.c (_bfd_elf_begin_eh_frame_parsing): New function.
+ (_bfd_elf_parse_eh_frame): New function, split out from
+ _bfd_elf_discard_section_eh_frame. Make a first pass through the
+ buffer to calculate the number of entries and CIEs. Allocate memory
+ for them before the main loop. Replace current extended cie
+ representation with a pair of pointers, one to the local eh_cie_fde
+ and one to the full struct cie. Allocate a separate array of struct
+ cies if not merging. Merge CIEs during the main loop and set up each
+ u.cie.merged field. Point an FDE's cie_inf field directly at the
+ local CIE. Initially assume that all entries should be removed.
+ (_bfd_elf_end_eh_frame_parsing): New function.
+ (_bfd_elf_discard_section_eh_frame): Assume that the section has
+ already been parsed. Use a separate pass to mark entries that
+ need to be kept. Use the u.cie.merged field to track a CIE's
+ group representative.
+ * elflink.c (bfd_elf_discard_info): Call _bfd_elf_parse_eh_frame
+ before _bfd_elf_discard_section_eh_frame. Wrap loop with calls to
+ _bfd_elf_begin_eh_frame_parsing and _bfd_elf_end_eh_frame_parsing.
+
+2007-12-15 Richard Sandiford <rsandifo@nildram.co.uk>
+
+ * elf-bfd.h (eh_cie_fde): Put cie_inf in a union. Add a reloc_index
+ field. Use bitfields for fde_encoding, lsda_encoding and lsda_offset.
+ * elf-eh-frame.c (extra_augmentation_data_bytes): Adjust cie_inf
+ accesses after the above change.
+ (_bfd_elf_eh_frame_section_offset): Likewise.
+ (_bfd_elf_write_section_eh_frame): Likewise.
+ (_bfd_elf_discard_section_eh_frame): Likewise. Set up reloc_index.
+
+2007-12-15 Richard Sandiford <rsandifo@nildram.co.uk>
+
+ * elf-bfd.h (_bfd_elf_gc_mark_rsec, _bfd_elf_gc_mark_reloc): Declare.
+ (_bfd_elf_gc_mark): Use elf_gc_mark_hook_fn.
+ * elflink.c (init_reloc_cookie, fini_reloc_cookie)
+ (init_reloc_cookie_rels, fini_reloc_cookie_rels): New functions,
+ split out from...
+ (bfd_elf_discard_info): ...here.
+ (init_reloc_cookie_for_section): New function.
+ (fini_reloc_cookie_for_section): Likewise.
+ (_bfd_elf_gc_mark_rsec, _bfd_elf_gc_mark_reloc): New functions,
+ split out from...
+ (_bfd_elf_gc_mark): ...here. Use init_reloc_cookie_for_section
+ and fini_reloc_cookie_for_section.
+
+2007-12-12 Bob Wilson <bob.wilson@acm.org>
+
+ * elf32-xtensa.c (elf_xtensa_do_reloc): Update self_address along with
+ address.
+ (print_action_list): Fix name for ta_convert_longcall.
+
+2007-12-11 Catherine Moore <clm@codesourcery.com>
+
+ * elf.c (_bfd_elf_copy_private_symbol_data): Don't copy shndx if
+ the symbol's section is the undefined section.
+
+2007-12-11 Alan Modra <amodra@bigpond.net.au>
+
+ * elf.c (elf_fake_sections): Add "warning:" to "..changed to PROGBITS"
+ message.
+
+2007-12-07 Bob Wilson <bob.wilson@acm.org>
+
+ * elf32-xtensa.c (elf_howto_table): Add R_XTENSA_32_PCREL.
+ (elf_xtensa_reloc_type_lookup): Handle BFD_RELOC_32_PCREL.
+ (elf_xtensa_check_relocs): Use default case for all relocations that
+ need nothing done here.
+ (elf_xtensa_do_reloc): Compute self_address for all relocation types.
+ Handle R_XTENSA_32_PCREL.
+ (elf_xtensa_relocate_section): Check for R_XTENSA_32_PCREL for dynamic
+ symbols.
+ (check_section_ebb_pcrels_fit): Ignore R_XTENSA_32_PCREL relocations.
+
+2007-12-05 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-spu.c (spu_elf_size_stubs): Do consider branches to
+ non-function symbols for overlay stubs.
+
+2007-12-04 Bob Wilson <bob.wilson@acm.org>
+
+ * elf32-xtensa.c (elf_xtensa_size_dynamic_sections): Create DT_PLTGOT
+ entry for all dynamic objects.
+
+2007-12-04 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-spu.c (spu_elf_size_stubs): Correct section alignment.
+
+2007-11-30 Richard Sandiford <rsandifo@nildram.co.uk>
+
+ * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Use the
+ ELF header to choose between 32-bit and 64-bit relocation structures.
+
+2007-11-29 Mark Shinwell <shinwell@codesourcery.com>
+
+ * archures.c (bfd_mach_mips_loongson_2e): New.
+ (bfd_mach_mips_loongson_2f): New.
+ * bfd-in2.h (bfd_mach_mips_loongson_2e): New.
+ (bfd_mach_mips_loongson_2f): New.
+ * cpu-mips.c: Add I_loongson_2e and I_loongson_2f to
+ anonymous enum.
+ (arch_info_struct): Add Loongson-2E and Loongson-2F entries.
+ * elfxx-mips.c (_bfd_elf_mips_mach): Handle Loongson-2E
+ and Loongson-2F flags.
+ (mips_set_isa_flags): Likewise.
+ (mips_mach_extensions): Add Loongson-2E and Loongson-2F
+ entries.
+
+2007-11-29 Nick Clifton <nickc@redhat.com>
+
+ PR ld/5398
+ * elf32-arm.c (bfd_elf32_arm_process_before_allocation): Do not
+ complain if there is no glue bfd, just return.
+
+2007-11-28 Nick Clifton <nickc@redhat.com>
+
+ * elf-m10300.c (mn10300_elf_relax_section): Extend previous fix to
+ cover forward jumps.
+
+2007-11-21 Nick Clifton <nickc@redhat.com>
+
+ * elf-m10300.c (mn10300_elf_relax_section): Allow for alignment
+ relocs when computing whether instructions can be relaxed.
+
+2007-11-16 Tristan Gingold <gingold@adacore.com>
+
+ * elflink.c (elf_link_output_extsym): Weaken assertion: if
+ --gc-section is set, there may be no TLS segment.
+
+2007-11-19 Alan Modra <amodra@bigpond.net.au>
+
+ * elf-bfd.h (bfd_elf_perform_complex_relocation): Update prototype.
+ * elflink.c (bfd_elf_perform_complex_relocation): Return status.
+ Don't print reloc overflow message.
+ * elf32-mep.c (mep_elf_relocate_section): Handle status from
+ bfd_elf_perform_complex_relocation.
+
+2007-11-17 Thiemo Seufer <ths@mips.com>
+
+ * elfxx-mips.c (mips_elf_merge_obj_attributes): Handle -mips32r2
+ -mfp64 attribute.
+
+2007-11-16 Nick Clifton <nickc@redhat.com>
+
+ * elf-m10300.c (mn10300_elf_check_relocs): Fix memory leak and
+ check that bfd_elf_get_elf_syms is only called once.
+
+2007-11-16 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Set udata.p of
+ synthetic symbol to point to the ELF symbol it was derived from.
+
+2007-11-15 Alan Modra <amodra@bigpond.net.au>
+
+ PR 5328
+ * opncls.c (separate_debug_file_exists): Use fopen/fread
+ rather than open/read and open in binary mode.
+
+2007-11-14 Richard Sandiford <richard@codesourcery.com>
+
+ * elfxx-mips.c (mips_got_page_range): New structure.
+ (mips_got_page_entry): Likewise.
+ (mips_got_info): Add page_gotno and got_page_entries fields.
+ (mips_elf_got_per_bfd_arg): Add max_pages field. Delete
+ primary_count and current_count fields.
+ (mips_got_page_entry_hash, mips_got_page_entry_eq): New functions.
+ (mips_elf_pages_for_range, mips_elf_record_got_page_entry): Likewise.
+ (mips_elf_get_got_for_bfd): New function, split out from
+ mips_elf_make_got_per_bfd. Initialize the page_gotno and
+ got_page_entries fields when creating a new GOT structure.
+ (mips_elf_make_got_pages_per_bfd): New function.
+ (mips_elf_merge_got_with): New function, split out from
+ mips_elf_make_got_per_bfd. Merge page entries as well as
+ non-page entries. Use the minimum of max_pages and the sum
+ of the page_gotnos to estimate the number of page entries.
+ (mips_elf_merge_gots): Use the minimum of max_pages and the
+ bfd's page_gotno to estimate the number of page entries.
+ Use the above functions.
+ (mips_elf_multi_got): Add page entries as well as non-page entries
+ to the individual per-bfd GOTs. Initialize got_per_bfd_arg.max_pages.
+ Initialize the page_gotno and got_page_entries fields when creating
+ a new primary GOT. Use the minimum of pages and page_gotno when
+ adding the number of pages entries to local_gotno.
+ (mips_elf_create_got_section): Initialize the page_gotno and
+ got_page_entries fields of the GOT structure.
+ (mips_elf_rel_relocation_p, mips_elf_read_rel_addend)
+ (mips_elf_add_lo16_rel_addend, mips_elf_get_section_contents): New
+ functions, split out from...
+ (_bfd_mips_elf_relocate_section): ...here.
+ (_bfd_mips_elf_check_relocs): Record GOT page entries too.
+ (_bfd_mips_relax_section): Use mips_elf_get_section_contents.
+ (_bfd_mips_elf_always_size_sections): Use the smaller of the
+ loadable_size- and page_gotno-derived estimates.
+
+2007-11-14 Thiemo Seufer <ths@mips.com>
+
+ * elfxx-mips.c (mips_elf_merge_obj_attributes): Prevent
+ unwanted fallthroughs in case statement.
+
+2007-11-13 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR binutils/5307
+ * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Don't
+ copy input subsystem if output is different from input.
+
+2007-11-13 Nick Clifton <nickc@redhat.com>
+
+ * elf-m10300.c (mn10300_elf_final_link_relocate): Prevent the
+ accidental termination of DWARF location list entries.
+ (mn10300_elf_relax_delete_bytes): Stop deletion if an align reloc
+ is encountered that is larger than or not a mutliple of the number
+ of bytes being deleted.
+ When adjusting symbols, any symbols inside the region being
+ deleted must be moved to the end of the region.
+ Move align relocs forward if there is room for them after the
+ deletion of the region.
+
+2007-11-13 Alan Modra <amodra@bigpond.net.au>
+
+ PR 5233
+ * elf.c (rewrite_elf_program_header): Formatting. Add
+ first_matching_lma and first_suggested_lma booleans and use
+ instead of testing matching_lma and suggested_lma for zero.
+
+2007-11-12 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR binutils/5299
+ * peicode.h (pe_bfd_object_p): Save and restore previous bfd
+ state when calling coff_object_p.
+
+2007-11-12 Alan Modra <amodra@bigpond.net.au>
+
+ * elf.c (_bfd_elf_get_synthetic_symtab): Only bump the symbol
+ pointer when we have a valid symbol. Init udata.p to NULL.
+
+2007-11-09 Nathan Sidwell <nathan@codesourcery.com>
+
+ * elf-vxworks.c (elf_vxworks_emit_relocs): Don't clobber
+ rel_hash. Move loop inside if test.
+
+2007-11-08 Nathan Sidwell <nathan@codesourcery.com>
+
+ * elf-vxworks.h (elf_vxworks_add_dynamic_entries): Declare.
+ (elf_vxworks_finish_dynamic_entry): Declare.
+ * elf-vxworks.c: Include elf/vxworks.h.
+ (elf_vxworks_add_dynamic_entries): New.
+ (elf_vxworks_finish_dynamic_entry): New.
+ * Makefile.am (elf-vxworks.lo): Add dependency.
+ * Makefile.in (elf-vxworks.lo): Add dependency.
+ * elf32-i386.c (elf_i386_size_dynamic_sections,
+ elf_i386_finish_dynamic_sections): Call
+ elf_vxworks_add_dynamic_entries and
+ elf_vxworks_finish_dynamic_entry.
+ * elf32-ppc.c (ppc_elf_size_dynamic_sections,
+ ppc_elf_finish_dynamic_sections): Likewise.
+ * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections,
+ sparc_finish_dyn): Likewise.
+ * elf32-sh.c (sh_elf_size_dynamic_sections,
+ sh_elf_finish_dynamic_sections): Likewise.
+ * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections,
+ _bfd_mips_elf_finish_dynamic_sections): Likewise.
+ * elf32-arm.c (elf32_arm_size_dynamic_sections,
+ elf32_arm_finish_dynamic_sections): Likewise.
+
+2007-11-07 Olivier Hainque <hainque@adacore.com>
+
+ * bfd/elfxx-mips.c (_bfd_mips_elf_fake_sections): Force
+ SHF_MIPS_NOSTRIP on .debug_frame for Irix.
+
+2007-11-06 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (ppc64_elf_check_relocs): Don't refcount tlsld_got here..
+ (ppc64_elf_gc_sweep_hook): ..or here..
+ (ppc64_elf_tls_optimize): ..or here. Make two passes through the
+ relocs, ensuring that tls_get_addr calls follow gd and ld relocs.
+ (allocate_dynrelocs): Refcount tlsld_got here.
+ (ppc64_elf_size_dynamic_sections): Allocate local got and call
+ allocate_dynrelocs before allocating tlsld_got.
+ (ppc64_elf_relocate_section): Remove check that a tls_get_addr
+ call follows gd and ld relocs.
+
+ * elf32-ppc.c (ppc_elf_check_relocs): Don't refcount tlsld_got here..
+ (ppc_elf_gc_sweep_hook): ..or here..
+ (ppc_elf_tls_optimize): ..or here. Make two passes through the
+ relocs, ensuring that tls_get_addr calls follow gd and ld relocs.
+ (allocate_dynrelocs): Refcount tlsld_got here.
+ (ppc_elf_size_dynamic_sections): Call allocate_dynrelocs before
+ allocating tlsld_got.
+ (ppc_elf_relocate_section): Remove check that a tls_get_addr
+ call follows gd and ld relocs.
+
+2007-11-05 Alan Modra <amodra@bigpond.net.au>
+
+ * merge.c (sec_merge_hash_lookup): Revert last change.
+ (record_section): Likewise.
+ (_bfd_merge_sections): Likewise.
+ (_bfd_merged_section_offset): Properly handle NULL secinfo.
+ (_bfd_add_merge_section): Allocate extra space for a zero
+ terminator on SEC_STRINGS sections.
+
+2007-11-05 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * pe-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Let .data, .text
+ and .bss section use the default.
+ * pei-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise.
+
+2007-11-01 Joseph Myers <joseph@codesourcery.com>
+
+ * merge.c (sec_merge_hash_lookup): Add parameter sec_end. Check
+ for unterminated strings. All callers changed.
+ (record_section): Add parameter abfd. Give error message for
+ unterminated strings.
+ (_bfd_merge_sections): Update call to record_section.
+ (_bfd_write_merged_section, _bfd_merged_section_offset): Handle
+ NULL secinfo from merge failures.
+
+2007-10-31 Nick Clifton <nickc@redhat.com>
+
+ * elf-m10300.c (mn10300_elf_relax_delete_bytes): Do not look for
+ align relocs when there are no relocs attached to the section.
+
+2007-10-31 Alan Modra <amodra@bigpond.net.au>
+
+ * elf-bfd.h (bfd_elf_match_symbols_in_sections): Don't declare.
+ * elflink.c (bfd_elf_match_symbols_in_sections): Make static.
+ Remove section name comparisons.
+
+2007-10-30 Nick Clifton <nickc@redhat.com>
+
+ * reloc.c (BFD_RELOC_MN10300_ALIGN): Add.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regnerate.
+ * elf-m10300.h: Handle R_MN10300_ALIGN relocs.
+ (mn10300_elf_relax_delete_bytes): Honour R_MN10300_ALIGN relocs.
+ Re-fix off by one error in comparisons.
+
+2007-10-25 Pedro Alves <pedro_alves@portugalmail.pt>
+
+ * bfd-in.h (STRING_COMMA_LEN): Don't handle NULL STR case.
+ * bfd-in2.h: Regenerate.
+
+2007-10-25 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * elf32-ppc.c (ppc_elf_merge_obj_attributes): Add support for
+ Tag_GNU_Power_ABI_Vector.
+
+2007-10-25 Joseph Myers <joseph@codesourcery.com>
+
+ * elfxx-mips.c (_bfd_mips_elf_modify_segment_map): Do not add
+ PT_NULL header when not linking.
+
+2007-10-25 Carlos Eduardo Seo <cseo@linux.vnet.ibm.com>
+
+ * elf.c (elfcore_grok_ppc_vmx): New function.
+ (elfcore_grok_note): Handle NT_PPC_VMX.
+ (elfcore_write_ppc_vmx): New function.
+ * elf-bfd.h (elfcore_write_ppc_vmx): Declare.
+
+2007-10-24 Alan Modra <amodra@bigpond.net.au>
+
+ * Makefile.am: Run "make dep-am".
+ * Makefile.in: Regenerate.
+ * po/SRC-POTFILES.in: Regenerate.
+
+2007-10-23 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-ppc.c (ppc_build_one_stub): Don't duplicate relocs
+ emitted for ".brlt" entries.
+ (toc_adjusting_stub_needed): Don't treat ".fixup" specially here..
+ (ppc64_elf_next_input_section): ..instead do so here.
+
+2007-10-19 Nick Clifton <nickc@redhat.com>
+
+ * config.bfd: Recognise am34-linux-gnu target.
+ * reloc.c: Add BFD_RELOC_MN10300_SYM_DIFF relocation.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+ * elf-m10300.c (elf_mn10300_howto): Add R_MN10300_SYM_DIFF.
+ (mn10300_reloc_map): Likewise.
+ (mn10300_elf_check_relocs): Do not create dynamic relocs for
+ symbol differences or relocations against absolute symbols.
+ (mn10300_elf_final_link_relocate): Likewise.
+ Handle R_MN10300_SYM_DIFF relocs.
+ (mn10300_elf_relocate_section): Fix for creating local copys of
+ dynamic relocs.
+ (mn10300_elf_relax_delete_bytes): Adjust symbols at the end of the
+ region. Adjust the size of function symbols.
+ (mn10300_elf_relax_section): Ignore symbols that are in discarded
+ sections.
+
+2007-10-19 Nick Clifton <nickc@redhat.com>
+
+ * elf-m10300.c: Convert to ISO C.
+
+2007-10-18 H.J. Lu <hongjiu.lu@intel.com>
+ Alan Modra <amodra@bigpond.net.au>
+
+ PR ld/4424
+ * config.bfd (targ_selvecs): Add bfd_elf64_alpha_vec for
+ alpha/FreeBSD. Add bfd_elf64_sparc_vec for sparc64/FreeBSD.
+ Add bfd_elf32_i386_vec and bfd_efi_app_ia32_vec for i386/FreeBSD.
+ (targ64_selvecs): Set for i386/FreeBSD.
+ * elf-bfd.h (elf_backend_data): Add relocs_compatible.
+ (_bfd_elf_default_relocs_compatible): Declare.
+ (_bfd_elf_relocs_compatible): Declare.
+ * elfxx-target.h (elf_backend_relocs_compatible): Define.
+ (elfNN_bed): Init new relocs_compatible field.
+ * elflink.c (_bfd_elf_default_relocs_compatible): New function.
+ (_bfd_elf_relocs_compatible): New function.
+ (elf_link_add_object_symbols): Call bed->relocs_compatible.
+ * elf32-i386.c (elf_backend_relocs_compatible): Define.
+ * elf64-alpha.c: Likewise.
+ * elf64-sparc.c: Likewise.
+ * elf64-x86-64.c: Likewise.
+
+2007-10-16 Bob Wilson <bob.wilson@acm.org>
+
+ * elf32-xtensa.c (relax_section): Check for a reference to a discarded
+ DWARF section and anticipate its replacement with the kept section.
+
+2007-10-16 Bob Wilson <bob.wilson@acm.org>
+
+ * elf32-xtensa.c (elf_xtensa_discard_info_for_section): Remove
+ unnecessary size variables. Set sec->rawsize.
+ (relax_section, relax_property_section): Likewise.
+
+2007-10-16 Bob Wilson <bob.wilson@acm.org>
+
+ * section.c (struct bfd_section): Clarify comment for rawsize field.
+ * bfd-in2.h: Regenerate.
+
+2007-10-16 Bob Wilson <bob.wilson@acm.org>
+
+ * elflink.c (_bfd_elf_check_kept_section): Use the section rawsize
+ values if they are set.
+
+2007-10-16 Nick Clifton <nickc@redhat.com>
+
+ PR 5146
+ * configure.in (AC_CHECK_HEADERS): Add alloca.h
+ * configure: Regenerate.
+ * config.in: Regenerate.
+ * som.c: Replace alloca-conf.h inclusion with code recommended in
+ autoconf documentation.
+ * elf64-hppa.c: Likewise.
+
+2007-10-16 Nick Clifton <nickc@redhat.com>
+
+ * configure.in (--enable-elf-stt-common): New configure
+ option. If enabled then the tools can generate symbols with
+ the ELF STT_COMMON type.
+ * config.in: Regenerate.
+ * configure: Regenerate.
+ * elf.c (swap_out_syms): If USE_STT_COMMON is defined then set
+ the type of emitted common symbols to STT_COMMON.
+ * elfcode.h (elf_slurp_symbol_table): Accept STT_COMMON symbol
+ types.
+
+2007-10-15 Alan Modra <amodra@bigpond.net.au>
+
+ * coff-arm.c (arm_emit_base_file_entry): Check fwrite return value.
+ Return status. Adjust callers.
+ * coff-mcore.c (mcore_emit_base_file_entry): Likewise.
+ * coff-ppc.c (write_base_file_entry): New function.
+ (coff_ppc_relocate_section): Use it.
+ * elf32-arm.c (find_thumb_glue): Check asprintf return status.
+ (find_arm_glue): Likewise.
+ * vms-misc.c (_bfd_vms_output_flush): Check fwrite return value.
+
+2007-10-12 Nick Clifton <nickc@redhat.com>
+
+ PR 5160
+ * elflink.c (eval_symbol): Remove bufsz variable and use
+ sizeof(symbuf) where necessary.
+
+2007-10-12 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
+
+ * elf32-cr16.c (elf32_cr16_relax_section): Fix condition check typo.
+
2007-10-12 Daniel Jacobowitz <dan@codesourcery.com>
* elfxx-mips.c (mips_elf_sort_hash_table_f): Handle forced
(read_rangelist): Change interface to accept a callback and data to
allow caller to select the action peformed on a new range list read.
(scan_unit_for_symbols): Use new interface of read_rangelist.
- (parse_comp_unit): Create an arange set for each new comp unit. Use new
- interface of read_rangelist. Replace call to arange_add with that to
- dwarf2_comp_unit_arange_add.
+ (parse_comp_unit): Create an arange set for each new comp unit.
+ Use new interface of read_rangelist. Replace call to arange_add
+ with that to dwarf2_comp_unit_arange_add.
(comp_unit_contains_address): Replace sequential search with a call to
arange_set_lookup_address, which can handles large set efficiently.
(stash_copy_local_aranges, stash_maybe_enable_arange_set,