Commit Graph

6341 Commits

Author SHA1 Message Date
H.J. Lu 00cbee0aa8 2007-07-09 H.J. Lu <hongjiu.lu@intel.com>
* elflink.c (bfd_elf_record_link_assignment): Handle indirect
	symbol.
	(_bfd_elf_merge_symbol): Properly update normal symbol when
	overriding the versioned symbol from a dynamic library.
2007-07-10 02:40:31 +00:00
Alan Modra e93cb65d42 daily update 2007-07-10 00:00:05 +00:00
Roland McGrath fd2f25da9b . 2007-07-09 21:25:39 +00:00
Roland McGrath ff59fc360e 2007-07-09 Roland McGrath <roland@redhat.com>
* elf-bfd.h (struct elf_obj_tdata): Add members
	emit_note_gnu_build_id and note_gnu_build_id_sec.
	* elf.c (_bfd_id_note_section_size): New global function.
	(read_hex, _bfd_elf_write_build_id_section): New static functions.
	(_bfd_elf_write_object_contents): Call _bfd_elf_write_build_id_section
	if emit_note_gnu_build_id is set.
	* Makefile.am (elf.lo): Update dependencies.
2007-07-09 21:23:43 +00:00
Roland McGrath 20a761b5e9 2007-07-09 Roland McGrath <roland@redhat.com>
* elf-bfd.h (struct elf_obj_tdata): Add members
	emit_note_gnu_build_id and note_gnu_build_id_sec.
	* elf.c (_bfd_id_note_section_size): New global function.
	(read_hex, _bfd_elf_write_build_id_section): New static functions.
	(_bfd_elf_write_object_contents): Call _bfd_elf_write_build_id_section
	if emit_note_gnu_build_id is set.
	* Makefile.am (elf.lo): Update dependencies.
	* elf-bfd.h (struct elf_size_info): Add checksum_contents hook.
	(bfd_elf32_checksum_contents, bfd_elf64_checksum_contents): Declare.
	* elfcode.h (elf_checksum_contents): New macro and function.
	(NAME(_bfd_elf,size_info)): Initialize checksum_contents hook.
2007-07-09 21:23:39 +00:00
Roland McGrath d94838b102 2007-07-09 Roland McGrath <roland@redhat.com>
* elf-bfd.h (struct elf_size_info): Add checksum_contents hook.
	(bfd_elf32_checksum_contents, bfd_elf64_checksum_contents): Declare.
	* elfcode.h (elf_checksum_contents): New macro and function.
	(NAME(_bfd_elf,size_info)): Initialize checksum_contents hook.
2007-07-09 21:23:37 +00:00
Alan Modra 049c3c6b72 daily update 2007-07-09 00:00:06 +00:00
Alan Modra 5da62ef0e8 daily update 2007-07-08 00:00:06 +00:00
Alan Modra 489cadc25a daily update 2007-07-07 00:00:06 +00:00
Alan Modra 9af2a943ee * elflink.c (elf_link_add_object_symbols): Return via
error_free_vers on "notice" failure.
2007-07-06 02:29:10 +00:00
Alan Modra e3bb9257f6 daily update 2007-07-06 00:00:05 +00:00
H.J. Lu a93221e521 2007-07-04 H.J. Lu <hongjiu.lu@intel.com>
* peicode.h (pe_bfd_object_p): Don't check PE vs. EFI target
	if arch is unknown.
2007-07-05 02:50:02 +00:00
Alan Modra 004082e09a daily update 2007-07-05 00:00:06 +00:00
Nick Clifton b49281938d * elf32-mep.c (mep_final_link_relocate) [R_MEP_HI16S]: Correctly compensate
for high bit set in R_MEP_LOW16.
2007-07-04 14:23:22 +00:00
Alan Modra 51afcce0d3 daily update 2007-07-04 00:00:05 +00:00
Joseph Myers 3cfad14c4a bfd:
* elf32-arm.c (elf32_arm_merge_eabi_attributes): Copy type from
	input attributes if value has been copied.

ld/testsuite:
	* ld-arm/attr-merge-2a.s, ld-arm/attr-merge-2b.s,
	ld-arm/attr-merge-2.attr: New.
	* ld-arm/arm-elf.exp (armelftests): Add new test.
2007-07-03 15:21:30 +00:00
Nick Clifton cd123cb70c Switch sources over to use the GPL version 3 2007-07-03 14:26:43 +00:00
Alan Modra 6e29ef6d28 daily update 2007-07-03 00:00:05 +00:00
Joseph Myers 741d6ea85b bfd:
* elfxx-mips.c (mips_elf_calculate_relocation): Handle
	R_MIPS_TLS_DTPREL32 and R_MIPS_TLS_DTPREL64.
	* elf64-mips.c (mips_elf64_howto_table_rela): Support
	R_MIPS_TLS_DTPREL64.

gas:
	* config/tc-mips.c (s_dtprelword, s_dtpreldword,
	s_dtprel_internal): New.
	(mips_pseudo_table): Add .dtprelword and .dtpreldword.
	(md_apply_fix): Handle BFD_RELOC_MIPS_TLS_DTPREL32 and
	BFD_RELOC_MIPS_TLS_DTPREL64.
2007-07-02 10:49:42 +00:00
Alan Modra ae351704e2 Regenerate files. 2007-07-02 07:12:53 +00:00
Alan Modra 3e5484dbb9 * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Tidy
symsec != NULL tests.
2007-07-02 06:51:57 +00:00
Alan Modra 08a40648e5 PR 4712
* elf.c (assign_file_positions_for_load_sections): Adjust lma
	by p_vaddr_offset.
2007-07-02 06:47:43 +00:00
Alan Modra 3adf154903 daily update 2007-07-02 00:00:06 +00:00
Alan Modra 89526cc00d daily update 2007-07-01 00:00:04 +00:00
H.J. Lu 86b57e315d bfd/
2007-06-30  H.J. Lu  <hongjiu.lu@intel.com>

	* aclocal.m4: Regenerated.
	* Makefile.in: Likewise.

bfd/doc/

2007-06-30  H.J. Lu  <hongjiu.lu@intel.com>

	* Makefile.in: Likewise.

binutils/

2007-06-30  H.J. Lu  <hongjiu.lu@intel.com>

	* aclocal.m4: Regenerated.
	* doc/Makefile.in: Likewise.
	* Makefile.in: Likewise.

gas/

2007-06-30  H.J. Lu  <hongjiu.lu@intel.com>

	* aclocal.m4: Regenerated.
	* doc/Makefile.in: Likewise.
	* Makefile.in: Likewise.

gprof/

2007-06-30  H.J. Lu  <hongjiu.lu@intel.com>

	* aclocal.m4: Regenerated.
	* Makefile.in: Likewise.

ld/

2007-06-30  H.J. Lu  <hongjiu.lu@intel.com>

	* aclocal.m4: Regenerated.
	* Makefile.in: Likewise.

opcodes/

2007-06-30  H.J. Lu  <hongjiu.lu@intel.com>

	* aclocal.m4: Regenerated.
	* Makefile.in: Likewise.
2007-06-30 17:21:16 +00:00
Joseph Myers 34c8bcbae2 bfd:
* elf32-ppc.c (ppc_elf_merge_obj_attributes): New.
	(ppc_elf_merge_private_bfd_data): Call it.

binutils:
	* readelf.c (display_power_gnu_attribute, process_power_specific):
	New.
	(process_arch_specific): Call process_power_specific.

include/elf:
	* ppc.h (Tag_GNU_Power_ABI_FP): Define.

ld/testsuite:
	* ld-powerpc/attr-gnu-4-0.s, ld-powerpc/attr-gnu-4-00.d,
	ld-powerpc/attr-gnu-4-01.d, ld-powerpc/attr-gnu-4-02.d,
	ld-powerpc/attr-gnu-4-1.s, ld-powerpc/attr-gnu-4-10.d,
	ld-powerpc/attr-gnu-4-11.d, ld-powerpc/attr-gnu-4-12.d,
	ld-powerpc/attr-gnu-4-13.d, ld-powerpc/attr-gnu-4-2.s,
	ld-powerpc/attr-gnu-4-20.d, ld-powerpc/attr-gnu-4-21.d,
	ld-powerpc/attr-gnu-4-22.d, ld-powerpc/attr-gnu-4-3.s,
	ld-powerpc/attr-gnu-4-31.d: New.
	* ld-powerpc/powerpc.exp: Run these new tests.
2007-06-30 00:03:40 +00:00
Alan Modra 89ebe69733 daily update 2007-06-30 00:00:05 +00:00
Joseph Myers 2cf19d5cb9 bfd:
* elfxx-mips.c (mips_elf_merge_obj_attributes): New.
	(_bfd_mips_elf_merge_private_bfd_data): Call it.

binutils:
	* readelf.c (display_mips_gnu_attribute): New.
	(process_mips_specific): Call process_attributes.

include/elf:
	* mips.h (Tag_GNU_MIPS_ABI_FP): Define.

ld/testsuite:
	* ld-mips-elf/attr-gnu-4-0.s, ld-mips-elf/attr-gnu-4-00.d,
	ld-mips-elf/attr-gnu-4-01.d, ld-mips-elf/attr-gnu-4-02.d,
	ld-mips-elf/attr-gnu-4-03.d, ld-mips-elf/attr-gnu-4-1.s,
	ld-mips-elf/attr-gnu-4-10.d, ld-mips-elf/attr-gnu-4-11.d,
	ld-mips-elf/attr-gnu-4-12.d, ld-mips-elf/attr-gnu-4-13.d,
	ld-mips-elf/attr-gnu-4-14.d, ld-mips-elf/attr-gnu-4-2.s,
	ld-mips-elf/attr-gnu-4-20.d, ld-mips-elf/attr-gnu-4-21.d,
	ld-mips-elf/attr-gnu-4-22.d, ld-mips-elf/attr-gnu-4-23.d,
	ld-mips-elf/attr-gnu-4-3.s, ld-mips-elf/attr-gnu-4-30.d,
	ld-mips-elf/attr-gnu-4-31.d, ld-mips-elf/attr-gnu-4-32.d,
	ld-mips-elf/attr-gnu-4-33.d, ld-mips-elf/attr-gnu-4-4.s,
	ld-mips-elf/attr-gnu-4-41.d: New.
	* ld-mips-elf/mips-elf.exp: Run these new tests.
2007-06-29 16:41:32 +00:00
Joseph Myers 104d59d19c bfd:
* elf-attrs.c: New.
	* Makefile.am (BFD32_BACKENDS): Add elf-attrs.lo.
	(BFD32_BACKENDS_CFILES): Add elf-attrs.c.
	(elf-attrs.lo): Generate dependencies.
	* Makefile.in: Regenerate.
	* configure.in (elf): Add elf-attrs.lo.
	* configure: Regenerate.
	* elf-bfd.h (struct elf_backend_data): Add entries for object
	attributes.
	(NUM_KNOWN_OBJ_ATTRIBUTES, obj_attribute, obj_attribute_list,
	OBJ_ATTR_PROC, OBJ_ATTR_GNU, OBJ_ATTR_FIRST, OBJ_ATTR_LAST,
	Tag_NULL, Tag_File, Tag_Section, Tag_Symbol, Tag_compatibility):
	New.
	(struct elf_obj_tdata): Add entries for object attributes.
	(elf_known_obj_attributes, elf_other_obj_attributes,
	elf_known_obj_attributes_proc, elf_other_obj_attributes_proc):
	New.
	(bfd_elf_obj_attr_size, bfd_elf_set_obj_attr_contents,
	bfd_elf_get_obj_attr_int, bfd_elf_add_obj_attr_int,
	bfd_elf_add_proc_attr_int, bfd_elf_add_obj_attr_string,
	bfd_elf_add_proc_attr_string, bfd_elf_add_obj_attr_compat,
	bfd_elf_add_proc_attr_compat, _bfd_elf_attr_strdup,
	_bfd_elf_copy_obj_attributes, _bfd_elf_obj_attrs_arg_type,
	_bfd_elf_parse_attributes, _bfd_elf_merge_object_attributes): New.
	* elf.c (_bfd_elf_copy_private_bfd_data): Copy object attributes.
	(bfd_section_from_shdr): Handle attributes sections.
	* elflink.c (bfd_elf_final_link): Handle attributes sections.
	* elfxx-target.h (elf_backend_obj_attrs_vendor,
	elf_backend_obj_attrs_section, elf_backend_obj_attrs_arg_type,
	elf_backend_obj_attrs_section_type): New.
	(elfNN_bed): Update.
	* elf32-arm.c (NUM_KNOWN_ATTRIBUTES, aeabi_attribute,
	aeabi_attribute_list): Remove.
	(struct elf32_arm_obj_tdata): Remove object attributes fields.
	(check_use_blx, bfd_elf32_arm_set_vfp11_fix, using_thumb2,
	elf32_arm_copy_private_bfd_data, elf32_arm_merge_eabi_attributes):
	Update for new object attributes interfaces.
	(uleb128_size, is_default_attr, eabi_attr_size,
	elf32_arm_eabi_attr_size, write_uleb128, write_eabi_attribute,
	elf32_arm_set_eabi_attr_contents, elf32_arm_bfd_final_link,
	elf32_arm_new_eabi_attr, elf32_arm_get_eabi_attr_int,
	elf32_arm_add_eabi_attr_int, attr_strdup,
	elf32_arm_add_eabi_attr_string, elf32_arm_add_eabi_attr_compat,
	copy_eabi_attributes, elf32_arm_parse_attributes): Remove.  Moved
	to generic code in elf-attrs.c.
	(elf32_arm_obj_attrs_arg_type): New.
	(elf32_arm_fake_sections): Do not handle .ARM.attributes.
	(elf32_arm_section_from_shdr): Do not handle SHT_ARM_ATTRIBUTES.
	(bfd_elf32_bfd_final_link): Remove.
	(elf_backend_obj_attrs_vendor, elf_backend_obj_attrs_section,
	elf_backend_obj_attrs_arg_type,
	elf_backend_obj_attrs_section_type): New.
	* elf32-bfin.c (bfin_elf_copy_private_bfd_data): Copy object
	attributes.
	* elf32-frv.c (frv_elf_copy_private_bfd_data): Likewise.
	* elf32-iq2000.c (iq2000_elf_copy_private_bfd_data): Likewise.
	* elf32-mep.c (mep_elf_copy_private_bfd_data): Likewise.
	* elf32-mt.c (mt_elf_copy_private_bfd_data): Likewise.
	* elf32-sh.c (sh_elf_copy_private_data): Likewise.
	* elf64-sh64.c (sh_elf64_copy_private_data_internal): Likewise.

binutils:
	* readelf.c (display_gnu_attribute): New.
	(process_arm_specific): Rearrange as process_attributes.
	(process_arm_specific): Replace by wrapper of process_attributes.

gas:
	* as.c (create_obj_attrs_section): New.
	(main): Call create_obj_attrs_section for ELF.
	* read.c (s_gnu_attribute, skip_whitespace, skip_past_char,
	skip_past_comma, s_vendor_attribute): New.
	(potable): Add gnu_attribute for ELF.
	* read.h (s_vendor_attribute): Declare.
	* config/tc-arm.c (s_arm_eabi_attribute): Replace by wrapper
	round s_vendor_attribute.
	(aeabi_set_public_attributes): Update for new attributes
	interfaces.
	(arm_md_end): Remove attributes contents setting now done
	generically.

include/elf:
	* arm.h (elf32_arm_add_eabi_attr_int,
	elf32_arm_add_eabi_attr_string, elf32_arm_add_eabi_attr_compat,
	elf32_arm_get_eabi_attr_int, elf32_arm_set_eabi_attr_contents,
	elf32_arm_eabi_attr_size, Tag_NULL, Tag_File, Tag_Section,
	Tag_Symbol, Tag_compatibility): Remove.
	* common.h (SHT_GNU_ATTRIBUTES): Define.

ld:
	* emulparams/armelf.sh (OTHER_SECTIONS): Remove .ARM.attributes.
	(ATTRS_SECTIONS): Define.
	* scripttempl/elf.sc, scripttempl/elf32sh-symbian.sc,
	scripttempl/elf_chaos.sc, scripttempl/elfi370.sc,
	scripttempl/elfxtensa.sc: Handle ATTRS_SECTIONS.
2007-06-29 16:29:17 +00:00
Paul Brook 5ab7998193 2007-06-29 Paul Brook <paul@codesourcery.com>
bfd/
	* elf32-arm.c (bfd_elf32_arm_process_before_allocation): Suppress
	call veneers for call relocations against undefined symbols.
	(elf32_arm_final_link_relocate): Turn call to undefined symbol
	into a jump to the next instruction.

	ld/testuite/
	* ld-arm/arm-elf.exp (armelftests): Add callweak.
	* ld-arm/callweak.d: New test.
	* ld-arm/callweak.s: New test.
2007-06-29 15:05:47 +00:00
Nick Clifton 32e8a950c4 * bfd.c (bfd_demangle): Plug memory leak (Coverity). 2007-06-29 14:36:21 +00:00
Nick Clifton 3d3d428f04 New port: National Semiconductor's CR16 2007-06-29 14:09:34 +00:00
Alan Modra c55fe0967e * elflink.c (_bfd_elf_link_assign_sym_version): Improve error
message for undefined version nodes.
	(elf_gc_sweep): Don't warn when zero size sections are
	removed.
2007-06-29 02:09:42 +00:00
Alan Modra 375de94a5e * elf32-ppc.c (ppc_elf_info_to_howto): Check for invalid relocation
types.
2007-06-29 01:51:55 +00:00
Alan Modra 7d3287cb71 * elf32-spu.c (spu_elf_fake_sections): New function.
(elf_backend_fake_sections): Define.
2007-06-29 01:39:54 +00:00
H.J. Lu 36fc76aebb Mention PR ld/4701. 2007-06-29 01:22:40 +00:00
Alan Modra 6a3cd2b4ed * elf.c (assign_file_positions_for_load_sections): Use elf
section header sh_size rather than bfd section size, simplifying
	.tbss handling.
2007-06-29 01:21:08 +00:00
Alan Modra bf988460f1 * elf.c (assign_file_positions_for_load_sections): Ensure bss
segments meet gABI alignment requirements.  Don't allocate
	file space for bss sections in a segment also containing file
	or program headers.
2007-06-29 01:12:52 +00:00
Alan Modra 0f504e0094 daily update 2007-06-29 00:00:05 +00:00
Alan Modra fe0a07a117 daily update 2007-06-28 00:00:05 +00:00
Alan Modra cc481421d0 bfd/
* bfd.c (struct bfd): Rename "next" to "archive_next".
	* archive.c: Rename uses throughout file.
	* archive64.c: Likewise.
	* coff-rs6000.c: Likewise.
	* ecoff.c: Likewise.
	* som.c: Likewise.
	* bfd-in2.h: Regenerate.
binutils/
	* ar.c: Rename uses of bfd.next to bfd.archive_next throughout.
	* arsup.c: Likewise.
	* binemul.c: Likewise.
	* objcopy.c: Likewise.
	* dlltool.c: Likewise.
ld/
	* pe-dll.c: Rename uses of bfd.next to bfd.archive_next throughout.
2007-06-27 11:54:10 +00:00
Alan Modra 58eb693ef1 * elf32-spu.c (spu_elf_create_sections): Properly iterate over
input bfds.
2007-06-27 07:12:54 +00:00
Alan Modra 60b31e8d17 * elf32-ppc.c (ppc_elf_select_plt_layout): Properly iterate over
input bfds.
2007-06-27 06:42:14 +00:00
Alan Modra bd30bda7eb daily update 2007-06-27 00:00:05 +00:00
Nick Clifton bec42b1574 * dwarf2.c (find_line): New. Contains the duplicated code from:
(_bfd_dwarf2_find_nearest_line): Use it.
  (_bfd_dwarf2_find_line): Use it.
2007-06-26 14:28:13 +00:00
Joseph Myers 3d3e6f9a7c bfd:
* elf32-arm.c (copy_eabi_attributes): Copy type of attributes.

ld/testsuite:
	* ld-arm/attr-merge.s, ld-arm/attr-merge.attr: New.
	* ld-arm/arm-elf.exp (armelftests): Add new test.
2007-06-26 13:55:04 +00:00
Alan Modra 5bbffd3d1d daily update 2007-06-26 00:00:05 +00:00
Richard Sandiford b314ec0eae bfd/
* elfxx-mips.c (mips_elf_calculate_relocation): Allow local stubs
	to be used for calls from MIPS16 code.

gas/
	* config/tc-mips.h (TC_SYMFIELD_TYPE): New.
	* config/tc-mips.c (append_insn): Record which symbols have
	R_MIPS16_26 relocations against them.
	(mips_fix_adjustable): Don't reduce relocations against such symbols.

ld/testsuite/
	* ld-mips-elf/mips16-local-stubs-1.s,
	* ld-mips-elf/mips16-local-stubs-1.d: New tests.
	* ld-mips-elf/mips-elf.exp: Run them.
2007-06-25 10:13:57 +00:00
Alan Modra 10efce5dc8 daily update 2007-06-25 00:00:06 +00:00
Alan Modra fa1de3c9b5 daily update 2007-06-24 00:00:05 +00:00
Andreas Schwab 0d4a14760d * configure.in (--with-separate-debug-dir): New option.
* configure: Regenerate.
	* Makefile.am (dwarf2.lo): Add rule to pass DEBUGDIR.
	* Makefile.in: Regenerate.
	* dwarf2.c (_bfd_dwarf2_find_nearest_line): Pass DEBUGDIR to
	bfd_follow_gnu_debuglink.
	(_bfd_dwarf2_find_line): Likewise.
2007-06-23 08:40:54 +00:00
Alan Modra b181e6240c daily update 2007-06-23 00:00:05 +00:00
Nick Clifton 0d161102d0 * dwarf2.c: Add support for reading in debug information via a .gnu_debuglink section:
(struct dwarf2_debug): Add bfd field to record the bfd containing the debug info.
  (parse_comp_unit): Remove ABFD parameter.  Instead use the bfd field in the dwarf2_debug structure.
  (_bfd_dwarf2_find_nearest_line): If a debug info section could not be found in the current bfd call bfd_follow_gnu_debuglink to see if another file contains the debug information.  If it does, open it and continue.
  (bfd_dwarf2_find_line): Likewise.
2007-06-22 08:13:12 +00:00
Alan Modra b547d72b61 daily update 2007-06-22 00:00:05 +00:00
Alan Modra 8685c9a3b1 daily update 2007-06-21 00:00:05 +00:00
Alan Modra e44b7a179e daily update 2007-06-20 00:00:04 +00:00
H.J. Lu 293a012441 bfd/
2007-06-19  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/4590
	* elfxx-ia64.c (sort_dyn_sym_info): Keep the valid got_offset
	when removing duplicated entries.
	(get_dyn_sym_info): Initialize the got_offset field to -1.
	Update call to sort_dyn_sym_info.
	(elfNN_ia64_relocate_section): Call sort_dyn_sym_info to sort
	array of addend and remove duplicates.

ld/testsuite/

2007-06-19  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/4590
	* ld-ia64/merge1.d: New.
	* ld-ia64/merge1.s: Likewise.
	* ld-ia64/merge2.d: Likewise.
	* ld-ia64/merge2.s: Likewise.
	* ld-ia64/merge3.d: Likewise.
	* ld-ia64/merge3.s: Likewise.
	* ld-ia64/merge4.d: Likewise.
	* ld-ia64/merge4.s: Likewise.
	* ld-ia64/merge5.d: Likewise.
	* ld-ia64/merge5.s: Likewise.
2007-06-19 13:05:55 +00:00
Alan Modra d308ef20d1 daily update 2007-06-19 00:00:06 +00:00
H.J. Lu 0d823e126f Move entry for doc/Makefile.in to doc/ChangeLog. 2007-06-18 17:44:45 +00:00
H.J. Lu dc1f3d8a2d 2007-06-18 H.J. Lu <hongjiu.lu@intel.com>
* libpei.h (_bfd_XXi_final_link_postscript): Remove
	duplication.
	(bfd_target_pei_p): New.
	(bfd_target_pei_arch): New
	(bfd_target_efi_p): Likewise.
	(bfd_target_efi_arch): New
	(bfd_pe_executable_p): Use bfd_target_pei_p and
	bfd_target_efi_p.

	* peicode.h (arch_type): New enum.
	(pe_arch): New function.
	(pe_bfd_object_p): Don't match PE/EFI target with EFI/PE file
	if there is an EFI/PE target.
2007-06-18 16:26:28 +00:00
Alan Modra af4a3a18d9 daily update 2007-06-18 00:00:05 +00:00
Alan Modra d434a860bd daily update 2007-06-17 00:00:05 +00:00
Alan Modra 7cc23052d5 daily update 2007-06-16 00:00:05 +00:00
Alan Modra 3c2d9dec5b daily update 2007-06-15 00:00:06 +00:00
H.J. Lu 798879259b bfd/
2007-06-14  H.J. Lu  <hongjiu.lu@intel.com>

	* Makefile.am (ACLOCAL_AMFLAGS): Add -I . -I ../config.

	* acinclude.m4: Don't include m4 files. Remove libtool
	kludge.

	* Makefile.in: Regenerated.
	* doc/Makefile.in: Likewise.
	* aclocal.m4: Likewise.
	* configure: Likewise.

binutils/

2007-06-14  H.J. Lu  <hongjiu.lu@intel.com>

	* Makefile.am (ACLOCAL_AMFLAGS): Add -I ../config -I ../bfd.

	* acinclude.m4: Removed.

	* Makefile.in: Regenerated.
	* aclocal.m4: Likewise.
	* configure: Likewise.

gas/

2007-06-14  H.J. Lu  <hongjiu.lu@intel.com>

	* Makefile.am (ACLOCAL_AMFLAGS): Add -I ../config -I ../bfd.

	* acinclude.m4: Don't include m4 files.
	(BFD_BINARY_FOPEN): Removed.
	Remove libtool kludge.

	* Makefile.in: Regenerated.
	* doc/Makefile.in: Likewise.
	* aclocal.m4: Likewise.
	* configure: Likewise.

gprof/

2007-06-14  H.J. Lu  <hongjiu.lu@intel.com>

	* Makefile.am (ACLOCAL_AMFLAGS): Add -I ../config -I ../bfd.

	* acinclude.m4: Removed.

	* Makefile.in: Regenerated.
	* aclocal.m4: Likewise.
	* configure: Likewise.

ld/

2007-06-14  H.J. Lu  <hongjiu.lu@intel.com>

	* Makefile.am (ACLOCAL_AMFLAGS): Add -I ../config -I ../bfd.

	* acinclude.m4: Removed.

	* Makefile.in: Regenerated.
	* aclocal.m4: Likewise.
	* configure: Likewise.

opcodes/

2007-06-14  H.J. Lu  <hongjiu.lu@intel.com>

	* Makefile.am (ACLOCAL_AMFLAGS): Add -I ../config -I ../bfd.

	* acinclude.m4: Removed.

	* Makefile.in: Regenerated.
	* doc/Makefile.in: Likewise.
	* aclocal.m4: Likewise.
	* configure: Likewise.
2007-06-14 15:31:01 +00:00
Alan Modra f2029b3aad daily update 2007-06-14 00:00:05 +00:00
Alan Modra 6326e5da7f daily update 2007-06-13 00:00:05 +00:00
Alan Modra 5adbd72d2e daily update 2007-06-12 00:00:06 +00:00
Bob Wilson 99ded152a5 bfd/
* elf32-xtensa.c (extend_ebb_bounds_forward): Use renamed
        XTENSA_PROP_NO_TRANSFORM flag instead of XTENSA_PROP_INSN_NO_TRANSFORM.
        (extend_ebb_bounds_backward, compute_text_actions): Likewise.
        (compute_ebb_proposed_actions, coalesce_shared_literal): Likewise.
        (xtensa_get_property_predef_flags): Likewise.
        (compute_removed_literals): Pass new arguments to is_removable_literal.
        (is_removable_literal): Add sec, prop_table and ptblsize arguments.
        Do not remove literal if the NO_TRANSFORM property flag is set.
gas/
        * config/tc-xtensa.c (XTENSA_PROP_INSN_NO_TRANSFORM): Renamed to...
        (XTENSA_PROP_NO_TRANSFORM): ...this.
        (frag_flags_struct): Move is_no_transform out of the insn sub-struct.
        (xtensa_mark_frags_for_org): New.
        (xtensa_handle_align): Set RELAX_ORG frag subtype for rs_org.
        (xtensa_post_relax_hook): Call xtensa_mark_frags_for_org.
        (get_frag_property_flags): Adjust reference to is_no_transform flag.
        (xtensa_frag_flags_combinable): Likewise.
        (frag_flags_to_number): Likewise.  Use XTENSA_PROP_NO_TRANSFORM.
        * config/tc-xtensa.h (xtensa_relax_statesE): Add RELAX_ORG.
include/elf/
        * xtensa.h (XTENSA_PROP_INSN_NO_TRANSFORM): Renamed to...
        (XTENSA_PROP_NO_TRANSFORM): ...this.
ld/
        * emultempl/xtensaelf.em (replace_insn_sec_with_prop_sec): Use renamed
        XTENSA_PROP_NO_TRANSFORM flag instead of XTENSA_PROP_INSN_NO_TRANSFORM.
2007-06-11 16:53:08 +00:00
Alan Modra 33c02870f4 daily update 2007-06-11 00:00:05 +00:00
Alan Modra d6fb1e5cc9 daily update 2007-06-10 00:00:06 +00:00
Alan Modra ba6bd54195 daily update 2007-06-09 00:00:05 +00:00
Alan Modra bf7c57a85e daily update 2007-06-08 00:00:06 +00:00
Alan Modra 22c0ef5c12 daily update 2007-06-07 00:00:05 +00:00
Alan Modra 81103de8dd daily update 2007-06-06 00:00:08 +00:00
Alan Modra a9beac614b daily update 2007-06-05 00:00:05 +00:00
Alan Modra f6c489bc53 daily update 2007-06-04 00:00:05 +00:00
Alan Modra a901c493b8 daily update 2007-06-03 00:00:05 +00:00
Alan Modra d142e9b5b4 daily update 2007-06-02 00:00:06 +00:00
Alan Modra 1b10b7bfe2 daily update 2007-06-01 00:00:06 +00:00
Richard Sandiford cbf2cba4be bfd/
* elfxx-mips.c (mips_elf_initialize_tls_index): When processing a
	type (3) single-GOT entry, read tls_type from the hash table entry
	rather than the GOT entry.
2007-05-31 20:22:56 +00:00
Alan Modra a9a4c53ecc include/
* bfdlink.h (struct bfd_link_info): Add input_bfds_tail.
bfd/
	* simple.c (bfd_simple_get_relocated_section_content): Init
	input_bfds_tail.
ld/
	* ldlang.c (ldlang_add_file): Use input_bfds_tail.
	* ldmain.c (main): Init input_bfds_tail.  Sort link_info
	initialization.
2007-05-31 15:04:52 +00:00
Alan Modra 8fd3aac734 daily update 2007-05-31 00:00:05 +00:00
Alan Modra 42bb2e3317 bfd/
* elf.c (elf_fake_sections): Adjust test for SHT_NOBITS sections
	created by objcopy --only-keep-debug.
	(_bfd_elf_init_private_section_data): Only change elf_section_type
	if it is SHT_NULL.
binutils/
	* objcopy.c (copy_object): Revert 2007-05-11 change.  Don't
	avoid calling bfd_copy_private_bfd_data for ELF STRIP_NONDEBUG.
	(setup_section): Don't modify flags, and don't avoid calling
	bfd_copy_private_section_data for ELF STRIP_NONDEBUG.
	* readelf.c (process_program_headers): Ignore .dynamic of type
	SHT_NOBITS.
2007-05-30 14:29:27 +00:00
Alan Modra 02bf8d82b5 * elf.c (assign_file_positions_for_load_sections): Correct sh_type
to SHT_NOBITS earlier.  Base actions in rest of function on sh_type
	and sh_flags instead of bfd section flags.  Delete voff and code
	keeping nobits segments aligned.
2007-05-30 13:38:50 +00:00
Alan Modra 4e57dfd62a daily update 2007-05-30 00:00:06 +00:00
Alan Modra 846a3c3a49 daily update 2007-05-29 00:00:06 +00:00
Alan Modra e92a48353d daily update 2007-05-28 00:00:05 +00:00
Alan Modra afa923e792 daily update 2007-05-27 00:00:05 +00:00
Alan Modra be69418222 daily update 2007-05-26 00:00:07 +00:00
Eric Christopher 4e591bc17f 2007-05-25 Eric Christopher <echristo@apple.com>
* elf-eh-frame.c (_bfd_elf_discard_section_eh_frame):
        Check that sym_sec isn't NULL before accessing.
2007-05-25 23:06:11 +00:00
Alan Modra 53d33df97a daily update 2007-05-25 00:00:05 +00:00
Steve Ellcey d7040cdb28 * regenerated files from updating libtool. 2007-05-24 18:12:51 +00:00
Steve Ellcey 37ad95141b * ltmain.sh: Update from GCC.
* libtool.m4: Update from GCC.
	* ltsugar.m4: New. Update from GCC.
	* ltversion.m4: New. Update from GCC.
	* ltoptions.m4: New. Update from GCC.
	* ltconfig: Remove.
	* ltcf-c.sh: Remove.
	* ltcf-cxx.sh: Remove.
	* ltcf-gcj.sh: Remove.
	* src-release: Update with new libtool file list.
	* newlib/*/configure.in: invoke _LD_DECL_SED.
	* newlib/*/Makefile.am: Ensure toplevel is included in ACLOCAL_AMFLAGS.
	* Regenerate subdirectories
2007-05-24 17:33:42 +00:00
Alan Modra 6f60ca4eac daily update 2007-05-24 00:00:07 +00:00
Alan Modra 950c3b7d2c daily update 2007-05-23 00:00:10 +00:00
Paul Brook 91a5743d01 2007-05-22 Paul Brook <paul@codesourcery.com>
ld/testsuite/
	* ld-arm/arm-pic-veneer.d: Update expected output.
	* ld-arm/arm-call.d: Ditto.

	bfd/
	* elf32-arm.c (output_arch_syminfo): Replace plt_shndx and plt_offset
	with sec and sec_shndx.
	(elf32_arm_ouput_plt_map_sym): Use them.
	(elf32_arm_output_arch_local_syms): Output mapping symbols for
	interworking glue.
2007-05-22 17:17:53 +00:00
Nick Clifton 0e9517a90d Use @copying around copyright notices 2007-05-22 09:16:39 +00:00
Alan Modra 1d47bfb06d daily update 2007-05-22 00:00:06 +00:00
Nick Clifton f07575174a * bfdint.texi: Add GNU Free Documentation License notice. 2007-05-21 16:39:51 +00:00
Alan Modra 56c40d18e2 daily update 2007-05-21 00:00:06 +00:00
Alan Modra d8073b87c8 daily update 2007-05-20 00:00:05 +00:00
Alan Modra 379c558d32 daily update 2007-05-19 00:00:13 +00:00
Paul Brook 26079076f5 2007-05-18 Paul Brook <paul@codesourcery.com>
bfd/
	* elf32-arm.c (ARM2THUMB_V5_STATIC_GLUE_SIZE): Define.
	(a2t1v5_ldr_insn, a2t1v5_ldr_insn): New.
	(record_arm_to_thumb_glue): Add v5t non-pic glue.
	(elf32_arm_create_thumb_stub): Ditto.

	ld/testsuite/
	* ld-arm/arm-call.d: Update expected output.
2007-05-18 00:25:04 +00:00
Alan Modra 0ee68a72db daily update 2007-05-18 00:00:05 +00:00
Alan Modra 2106c1f0c5 daily update 2007-05-17 00:00:07 +00:00
H.J. Lu 91ac591132 2007-05-16 H.J. Lu <hongjiu.lu@intel.com>
Alan Modra  <amodra@bigpond.net.au>

	* elflink.c (_bfd_elf_adjust_dynamic_copy): Align dynamic bss
	section to the minimum alignment.
2007-05-16 12:52:03 +00:00
Alan Modra 017f71b6e8 daily update 2007-05-16 00:00:05 +00:00
H.J. Lu 027297b7a8 2007-05-15 H.J. Lu <hongjiu.lu@intel.com>
Alan Modra  <amodra@bigpond.net.au>

	PR ld/4504
	* elf-bfd.h (_bfd_elf_adjust_dynamic_copy): New.
	* elflink.c (_bfd_elf_adjust_dynamic_copy): New.

	* elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Call
	_bfd_elf_adjust_dynamic_copy to adjust for the copy in dynamic
	bss section.
	* elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise.
	* elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise.
	* elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise.
	* elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise.
	* elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise.
	* elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise.
	* elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
	* elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise.
	* elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
	* elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise.
	* elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise.
	* elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
	* elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
	* elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise.
	* elf64-x86-64.c (elf64_x86_64_adjust_dynamic_symbol): Likewise.
	* elfxx-mips.c (_bfd_mips_vxworks_adjust_dynamic_symbol): Likewise.
	* elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise.
2007-05-15 13:55:54 +00:00
Richard Sandiford 5c18022ec5 bfd/
* elfxx-mips.c (mips_elf_create_local_got_entry): Remove
	input_section argument.  Create .rela.dyn relocations against
	symbol 0 rather than the section symbol.
	(mips_elf_local_got_index): Remove input_section argument.
	Update call to mips_elf_create_local_got_entry.
	(mips_elf_got_page, mips_elf_got16_entry): Likewise.
	(mips_elf_calculate_relocation): Update calls to
	mips_elf_local_got_index, mips_elf_got16_entry and mips_elf_got_page.

ld/testsuite/
	* ld-mips-elf/vxworks1-lib.rd: Expect the GOT relocation to be
	against symbol 0.
2007-05-15 12:18:53 +00:00
Mark Shinwell a00a1f35e1 bfd/
* elf32-arm.c (elf32_arm_final_link_relocate): Correctly
	handle the Thumb-2 JUMP19 relocation.

	ld/testsuite/
	* ld-arm/arm-elf.exp: Add jump19 testcase.
	* ld-arm/jump19.d: New.
	* ld-arm/jump19.s: New.
2007-05-15 09:54:09 +00:00
Alan Modra 0414f35b82 PR 4479
* elf.c (elf_fake_sections): Don't allow backend to change
	SHT_NOBITS if called for strip/objcopy --only-keep-debug.
	* elfxx-mips.c (_bfd_mips_elf_fake_sections): Remove similar
	fix from here.
2007-05-15 08:39:58 +00:00
Alan Modra 78832c11e4 daily update 2007-05-15 00:00:05 +00:00
Alan Modra 74f2e02bf4 * elf.c (bfd_elf_string_from_elf_section): Return NULL on
invalid shstrndx.
	(bfd_elf_get_str_section): Likewise.
2007-05-14 04:15:53 +00:00
Alan Modra a1513dafcc daily update 2007-05-14 00:00:05 +00:00
Alan Modra adc44effcb daily update 2007-05-13 00:00:06 +00:00
Alan Modra f137a54e7a PR 4497
* elf-eh-frame.c (struct cie): Add "local_personality".  Make
	"personality" a union.
	(cie_eq): Compare local_personality too.  Adjust personality
	comparison.
	(_bfd_elf_discard_section_eh_frame): Check binding on personality
	reloc sym to allow for bad symtab.  Use stashed local syms rather
	than reading personality local sym.  Handle discarded sections.
2007-05-12 14:27:34 +00:00
Alan Modra 4f4416b5f9 include/elf/
* spu.h (R_SPU_ADDR16X): Define.
	(R_SPU_PPU32, R_SPU_PPU64): Renumber.
bfd/
	* elf32-spu.c (elf_howto_table): Add howto for R_SPU_ADDR16X.
2007-05-12 06:45:33 +00:00
Alan Modra 1602ef01c2 daily update 2007-05-12 00:00:05 +00:00
Alan Modra 016687f8ba bfd/
* elf32-ppc.h (ppc_elf_select_plt_layout): Update prototype.
	(enum ppc_elf_plt_type): Move from..
	* elf32-ppc.c: ..here.
	(struct ppc_elf_obj_tdata): Add makes_plt_call and has_rel16.
	(struct ppc_elf_link_hash_table): Reorder.  Add old_bfd.  Delete
	can_use_new_plt.  Make is_vxworks a bitfield.
	(ppc_elf_link_hash_table_create): Don't clear is_vxworks (again).
	(ppc_elf_check_relocs): Update setting of reloc flags.  Set old_bfd.
	(ppc_elf_select_plt_layout): Modify parameters.  Use bfd reloc
	flags to better detect object files needing old bss-style plt.
	Allow secure plt to be used without rel16 relocs being detected.
	Warn if secure plt request cannot be allowed.
ld/
	* emultempl/ppc32elf.em (plt_style): New variable.
	(old_plt): Delete.
	(ppc_after_open): Adjust ppc_elf_select_plt_layout call.
	(PARSE_AND_LIST_PROLOGUE): Define OPTION_NEW_PLT, renumber
	OPTION_OLD_PLT, OPTION_OLD_GOT and OPTION_STUBSYMS.
	(PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add secure-plt.
	(PARSE_AND_LIST_ARGS_CASES): Handle OPTION_NEW_PLT.
	* ld.texinfo (--secure-plt): Document.
2007-05-11 06:39:05 +00:00
Alan Modra ece5ef6079 include/elf/
* spu.h (R_SPU_PPU32, R_SPU_PPU64): Define.
bfd/
	* reloc.c (BFD_RELOC_SPU_PPU32, BFD_RELOC_SPU_PPU64): Define.
	* elf-bfd.h (struct elf_backend_data): Change return type of
	elf_backend_relocate_section to int.
	* elf32-spu.c (elf_howto_table): Add howtos for R_SPU_PPU32 and
	R_SPU_PPU64.
	(spu_elf_bfd_to_reloc_type): Convert new relocs.
	(spu_elf_count_relocs): New function.
	(elf_backend_count_relocs): Define.
	(spu_elf_relocate_section): Arrange to emit R_SPU_PPU32 and
	R_SPU_PPU64 relocs.
	* elflink.c (elf_link_input_bfd): Emit relocs if relocate_section
	returns 2.
	* bfd-in2.h: Regenerate.
	* libbfd.h: Regenerate.
gas/
	* config/tc-spu.c (md_pseudo_table): Add int, long, quad.  Call
	spu_cons for word.
	(md_assemble): Tidy use of insn.flag.
	(get_imm): Likewise.  Handle uppercase input too.
	(spu_cons): New function.
	* config/tc-spu.h (tc_fix_adjustable): Don't adjust SPU_PPU relocs.
	(TC_FORCE_RELOCATION): Don't resolve them either.
binutils/
	* embedspu.sh (find_prog): Prefer prog in same dir as embedspu
	over one found on the users path.
	(main): Generate .reloc for each R_SPU_PPU* reloc.
2007-05-11 03:10:11 +00:00
Alan Modra 18f9fa0ab7 daily update 2007-05-11 00:00:06 +00:00
Richard Sandiford d3753b85b4 bfd/
* elf32-arm.c (elf32_arm_check_relocs): Don't create PLT entries
	for R_ARM_ABS12 relocs.
	(elf32_arm_finish_dynamic_symbol): Fix the loop that creates
	non-shared VxWorks PLT entries.

ld/testsuite/
	* ld-arm/vxworks1-lib.dd: Expect "push" instead of stmdb and
	"pop" instead of ldmia.  Don't require specific symbolic addresses
	for in-text addresses.  Expect data to be rendered as .words rather
	than disassembled.
	* ld-arm/vxworks1.dd: Likewise.
2007-05-10 17:00:03 +00:00
Alan Modra ef8c95ad21 PR 4454
* elf-eh-frame.c (struct cie): Make "personality" a bfd_vma.
	(_bfd_elf_discard_section_eh_frame): Handle local syms on
	personality relocation.
2007-05-10 15:08:02 +00:00
Richard Sandiford 8c252fd9c3 bfd/
* elf.c (assign_file_positions_for_load_sections): Use p_memsz
	rather than p_filesz to calculate the LMA of the end of a segment.

ld/testsuite/
	* ld-elf/multibss1.d, ld-elf/multibss1.s: New test.
2007-05-10 14:46:48 +00:00
Jakub Jelinek b186458a4d * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Don't do copyreloc
processing if symbol is defined in the executable.
2007-05-10 11:45:07 +00:00
Alexandre Oliva 8857127957 * elf32-frv.c (_frvfdpic_check_discarded_relocs): New.
(frvfdpic_elf_discard_info): New.
(elf_backend_discard_info): Define for FDPIC.
2007-05-10 05:18:42 +00:00
Alan Modra 4b5e3fb90d daily update 2007-05-10 00:00:06 +00:00
Mark Shinwell 2e6030b931 bfd/
* elf32-arm.c (bfd_elf32_arm_vfp11_erratum_scan): Don't
        attempt to scan if the bfd doesn't correspond to an ELF image.
        (bfd_elf32_arm_vfp11_fix_veneer_locations): Likewise.
2007-05-09 13:02:10 +00:00
Alan Modra 39909b2a75 daily update 2007-05-09 00:00:06 +00:00
Alexandre Oliva 0d4cc89286 * elf32-frv.c (elf32_frv_relocate_section): Discard dynamic relocs
for which _bfd_elf_section_offset returns -1.
2007-05-08 06:09:30 +00:00
Alan Modra d02496489e * elf32-spu.c (spu_elf_size_stubs): Use "void *" for psyms.
(mark_functions_via_relocs): Likewise.
2007-05-08 02:29:27 +00:00
Alan Modra b80f943be5 daily update 2007-05-08 00:00:06 +00:00
Alan Modra 1182cb9397 * elflink.c (bfd_elf_final_link): Correct reloc handling for
elf_backend_count_relocs.
	(bfd_elf_discard_info): Print an error if we can't read syms.
2007-05-07 14:47:28 +00:00
Alan Modra b16f296eba * elf32-spu.c (spu_elf_reloc_type_lookup): Return NULL on
invalid reloc code.
	(spu_elf_gc_mark_hook, spu_elf_section_processing): Delete functions.
	(elf_backend_gc_mark_hook, elf_backend_section_processing): Don't
	define.
2007-05-07 14:37:27 +00:00
Alan Modra 7c9283002d * elf.c (assign_file_positions_for_load_sections): Don't check
core segment.
2007-05-07 01:05:46 +00:00
Alan Modra ee6f74de9b daily update 2007-05-07 00:00:05 +00:00
Alan Modra df1891da55 daily update 2007-05-06 00:00:06 +00:00
Alan Modra 345d3bb99a daily update 2007-05-05 00:00:06 +00:00
H.J. Lu fc66a176eb 2007-05-04 H.J. Lu <hongjiu.lu@intel.com>
* elflink.c (elf_link_sort_relocs): Return if both .rela.dyn
	and .rel.dyn aren't present.
2007-05-04 21:53:02 +00:00
Nick Clifton 3410fea824 * elflink.c (elf_link_sort_relocs): If both .rela.dyn and .rel.dyn sections
are present examine the indirect sections in an attempt to compute the
  correct relocation size.  If there is any ambiguity, produce an error and
  refuse to sort.
2007-05-04 14:17:07 +00:00
Alan Modra 330ecedfe9 daily update 2007-05-04 00:00:06 +00:00
Sandra Loosemore 7bdca076ec 2007-05-03 Sandra Loosemore <sandra@codesourcery.com>
bfd/
	* elf32-arm.c (allocate_dynrelocs): Fix typo in comment.
2007-05-03 19:27:14 +00:00
Nick Clifton 22184a77be PR gas/3041
* gas/config/tc-m68k.c (relaxable_symbol): Do not relax weak symbols.
    (tc_gen_reloc): Adjust the addend of relocs against weak symbols.
     (md_apply_fix): Put zero values into the frags referencing weak symbols.
* bfd/aoutx.h (swap_std_reloc_out): Treat relocs against weak symbols in the same way as relocs against external symbols.
2007-05-03 15:55:38 +00:00
Alan Modra 09968e6866 daily update 2007-05-03 00:00:06 +00:00
Alan Modra 627b32bcf9 include/elf/
* internal.h (ELF_IS_SECTION_IN_SEGMENT): Check both file offset
	and vma for appropriate sections.
bfd/
	* elf.c (assign_file_positions_for_load_sections): Set sh_offset
	here.  Set sh_type to SHT_NOBITS if we won't be allocating
	file space.  Don't bump p_memsz for non-alloc sections.  Adjust
	section-in-segment check.
	(assign_file_positions_for_non_load_sections): Don't set sh_offset
	here for sections that have already been handled above.
2007-05-02 13:44:37 +00:00
Alan Modra d92353a580 daily update 2007-05-02 00:00:38 +00:00
Alan Modra c766957eea daily update 2007-05-01 00:00:05 +00:00
Alan Modra 49fa1e1518 bfd/
* elf32-spu.c (struct spu_link_hash_table): Add stack_analysis
	and emit_stack_syms bitfields.
	(get_sym_h): Read all symbols if stack analysis will be done.
	(spu_elf_create_sections): Add stack_analysis and emit_stack_syms
	params, and stash in hash table.
	(is_hint): Split off from..
	(is_branch): ..here.  Adjust callers.
	(spu_elf_size_stubs): Add stack_analysis param.  Arrange to read
	and keep all syms.
	(write_one_stub): Fix mem leak.
	(find_function_stack_adjust): New function.
	(sort_syms_syms, sort_syms_psecs): New vars.
	(sort_syms): New function.
	(struct call_info, struct function_info): New.
	(struct spu_elf_stack_info): New.
	(alloc_stack_info, maybe_insert_function, func_name): New functions.
	(is_nop, insns_at_end, check_function_ranges): Likewise.
	(find_function, insert_callee, mark_functions_via_relocs): Likewise.
	(pasted_function, interesting_section, discover_functions): Likewise.
	(mark_non_root, call_graph_traverse, build_call_tree): Likewise.
	(sum_stack, spu_elf_stack_analysis, spu_elf_final_link): Likewise.
	(bfd_elf32_bfd_final_link): Define.
	* elf32-spu.h (struct _spu_elf_section_data): Add stack_info field.
	(spu_elf_create_sections, spu_elf_size_stubs): Update prototypes.
include/
	* bfdlink.h (struct bfd_link_info): Add "info" and "minfo".
ld/
	* ldmain.c (link_callbacks): Init info and minfo fields.
	* ldmisc.c (minfo): Do nothing if no map file.
	* emultempl/spuelf.em (stack_analysis, emit_stack_syms): New vars.
	(spu_after_open): Adjust spu_elf_create_sections call.
	(spu_before_allocation): Likewise for spu_elf_size_stubs.
	(OPTION_SPU_STACK_ANALYSIS, OPTION_SPU_STACK_SYMS): Define.
	(PARSE_AND_LIST_LONGOPTS): Add new entries.
	(PARSE_AND_LIST_OPTIONS, PARSE_AND_LIST_ARGS_CASES): Likewise.
	* gen-doc.texi: Add @set for SPU and other missing targets.
	* ld.texinfo: Update man page selection to match gen-doc.texi.
	Document SPU features.
2007-04-30 14:06:40 +00:00
Alan Modra a8bf1262d7 daily update 2007-04-30 00:00:07 +00:00
Alan Modra d8ab3e5259 daily update 2007-04-29 00:00:08 +00:00
Thiemo Seufer 9ddf830930 * elfxx-mips.c (mips_elf_create_dynamic_relocation): Don't access
memory which we might not own.
2007-04-28 22:31:45 +00:00
Alan Modra d6f7985d40 daily update 2007-04-28 00:00:06 +00:00
Bob Wilson 951474417e * elf32-xtensa.c (elf_xtensa_make_sym_local): Restore deleted function.
(elf_xtensa_hide_symbol, elf_backend_hide_symbol): Likewise.
	(elf_xtensa_allocate_dynrelocs): Use elf_xtensa_make_sym_local.
2007-04-27 20:10:47 +00:00
Bob Wilson bcc2cc8eff * elf32-xtensa.c (xtensa_read_table_entries): Step through table
contents and relocs in parallel.
2007-04-27 19:57:40 +00:00
Bob Wilson f29f96b630 * elf32-xtensa.c (relax_property_section): Remove extra irel increment. 2007-04-27 18:28:22 +00:00
Alan Modra 2ce18a1626 Write Mimi's name in ASCII. 2007-04-27 03:37:43 +00:00
Alan Modra 26c9828ba0 daily update 2007-04-27 00:00:08 +00:00
Alan Modra eddc20adcb bfd/
* sysdep.h: Include config.h first.
	Many files: Include sysdep.h before bfd.h.
	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.
binutils/
	* bucumm.h: Split off host dependencies to..
	* sysdep.h: ..here.
	Many files: Include sysdep.h.  Remove duplicate headers and reorder.
	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.
ld/
	Many files: Include sysdep.h first.  Remove duplicate headers.
	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.
opcodes/
	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.
	* ns32k-dis.c: Include sysdep.h first.
2007-04-26 14:58:51 +00:00
Alan Modra 3db64b0092 bfd/
Many files: Include sysdep.h before bfd.h.
	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.
binutils/
	* bucumm.h: Split off host dependencies to..
	* sysdep.h: ..here.
	Many files: Include sysdep.h.  Remove duplicate headers and reorder.
	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.
ld/
	Many files: Include sysdep.h first.  Remove duplicate headers.
	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.
opcodes/
	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.
	* ns32k-dis.c: Include sysdep.h first.
2007-04-26 14:47:00 +00:00
Alan Modra 4aee063404 daily update 2007-04-26 00:00:08 +00:00
Alan Modra 495443d4ec * sysdep.h: Revert last change. 2007-04-25 06:32:13 +00:00
Alan Modra 8fe03a7608 daily update 2007-04-25 00:00:07 +00:00
Nick Clifton 40b1c6c5d4 Fix compile time warnings (at -O3 with gcc 4.1.2) 2007-04-24 13:05:46 +00:00
Alan Modra 64be15537d * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Warn if
eh_frame_hdr table won't be created.
2007-04-24 04:28:38 +00:00
Alan Modra 080b416d73 * Makefile.in: Regenerate. 2007-04-24 04:06:36 +00:00
Alan Modra d5efd9fc3f * acinclude.m4: Include config/stdint.m4.
* configure.in: Invoke GCC_HEADER_STDINT.
	* sysdep.h: Don't include ansidecl.h here.
	* configure: Regenerate.
	* config.in: Regenerate.
	* Makefile.in: Regenerate.
2007-04-24 04:05:04 +00:00
Alan Modra 87a87f7063 daily update 2007-04-24 00:00:07 +00:00
Nathan Sidwell 9a2e615a9f gas/testsuite/
* gas/m68k/br-isaa.s: New.
	* gas/m68k/br-isaa.d: New.
	* gas/m68k/br-isab.s: New.
	* gas/m68k/br-isab.d: New.
	* gas/m68k/br-isac.s: New.
	* gas/m68k/br-isac.d: New.
	* gas/m68k/all.exp: Adjust.

	gas/
	* config/tc-m68k.c (mcf54455_ctrl): New.
	(HAVE_LONG_DISP, HAVE_LONG_CALL, HAVE_LONG_COND): New.
	(m68k_archs): Add isac.
	(m68k_cpus): Add 54455 family.
	(m68k_ip): Split Bg into Bb, Bs, Bg.
	(m68k_elf_final_processing): Add ISA_C.
	* doc/c-m68k.texi (M680x0 Options): Add isac.

	include/opcode/
	* m68k.h (mcfisa_c): New.
	(mcfusp, mcf_mask): Adjust.

	bfd/
	* archures.c (bfd_mach_mcf_isa_c, bfd_mach_mcf_isa_c_mac,
	bfd_mach_mcf_isa_c_emac): New.
	* elf32-m68k.c (ISAC_PLT_ENTRY_SIZE, elf_isac_plt0_entry,
	elf_isac_plt_entry, elf_isac_plt_info): New.
	(elf32_m68k_object_p): Add ISA_C.
	(elf32_m68k_print_private_bfd_data): Print ISA_C.
	(elf32_m68k_get_plt_info): Detect ISA_C.
	* cpu-m68k.c (arch_info): Add ISAC.
	(m68k_arch_features): Likewise,
	(bfd_m68k_compatible): ISAs B & C are not compatible.

	opcodes/
	* m68k-opc.c: Mark mcfisa_c instructions.
2007-04-23 07:51:33 +00:00
Alan Modra d069994d0e daily update 2007-04-23 00:00:07 +00:00
Alan Modra 0224c58ec6 daily update 2007-04-22 00:00:08 +00:00
Nick Clifton 1b0b5b1b6a * ecoff.c (_bfd_ecoff_write_armap): Initialise rehash.
(ecoff_link_add_archive_symbols): Likewise.
* coff-m68k.c (m68kcoff_common_addend_rtype_to_howto): Initialise relent.howto.
* ieee.c (parse_int): Initialise x.
  (must_parse_int): Initialise result.
  (ieee_slurp_external_symbols): Initialise value.
2007-04-21 07:49:29 +00:00
Alan Modra bd7803a985 * config.bfd (spu-*-elf): Delete targ_selvecs. 2007-04-21 05:01:22 +00:00
Alan Modra 57d9f5132f daily update 2007-04-21 00:00:08 +00:00
Alan Modra 12741b1efd daily update 2007-04-20 00:00:06 +00:00
Nick Clifton 964597d07b * coffcode.h (coff_rtype_to_howto): Initialise genrel.howto. 2007-04-19 13:36:41 +00:00
Alan Modra 3fad56a3d4 missed from last commit 2007-04-19 10:51:34 +00:00
Alan Modra 01e7679297 * bfd.c (bfd_demangle): New function.
* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.
	* bfd-in2.h: Regenerate.
2007-04-19 10:41:30 +00:00
Alan Modra 9e420ec8b4 daily update 2007-04-19 00:00:07 +00:00
Daniel Jacobowitz ee5c21a00e 2007-04-18 Matthias Klose <doko@ubuntu.com>
* Makefile.am (libbfd_la_LDFLAGS): Use bfd soversion.
	(bfdver.h): Use the date in non-release builds for the soversion.
	* Makefile.in: Regenerate.

2007-04-18  Matthias Klose  <doko@ubuntu.com>

	* Makefile.am (libopcodes_la_LDFLAGS): Use bfd soversion.
	* Makefile.in: Regenerate.
2007-04-18 12:14:50 +00:00
Alan Modra 4904bbd9d1 daily update 2007-04-18 00:00:06 +00:00
Paul Brook fcb93ecfc2 2007-04-17 Paul Brook <paul@codesourcery.com>
bfd/
	* elf.c (_bfd_elf_is_function_type): New function.
	* elflink.c (_bfd_elf_merge_symbol): Use bed->is_function_type.
	(_bfd_elf_dynamic_symbol_p, _bfd_elf_symbol_refs_local_p,
	is_global_data_symbol_definition, elf_link_add_object_symbols): Ditto.
	* elf-bfd.h (elf_backend_data): Add is_function_type.
	(_bfd_elf_is_function_type): Add prototype.
	* elfxx-target.h (elf_backend_is_function_type): Add default
	definition.
	(elfNN_bed): Add elf_backend_is_function_type.
	* elf32-arm.c (elf32_arm_is_function_type): New function.
	(elf_backend_is_function_type): Define.

	ld/testsuite/
	* ld-arm/preempt-app.s: New test.
	* ld-arm/preempt-app.sym: New.
	* ld-arm/arm-elf.exp: Add preempt-app.
2007-04-17 20:09:52 +00:00
Daniel Jacobowitz 5750dcecf6 * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Put
DT_MIPS_RLD_MAP before DT_DEBUG again.
2007-04-17 13:14:08 +00:00
Alan Modra a4a181ad26 daily update 2007-04-17 00:00:10 +00:00
Alan Modra b1aefea209 daily update 2007-04-16 00:00:07 +00:00
Alan Modra e9043d6669 daily update 2007-04-15 00:00:06 +00:00
Steve Ellcey cfbc9945d4 * Makefile.am: Add ACLOCAL_AMFLAGS.
* configure.in: Change macro call order.
        * Makefile.in: Regnerate.
        * doc/Makefile.in: Regenerate.
        * configure: Regenerate.
2007-04-14 20:36:56 +00:00
Jakub Jelinek 3fcd97f16c * elflink.c (bfd_elf_final_link): Don't free symbuf for
non-elf input bfds.
	(bfd_elf_size_dynamic_sections): Don't access elf_section_data
	for non-elf input bfds.
2007-04-14 13:01:24 +00:00
Alan Modra 2ecdf9ee67 daily update 2007-04-14 00:00:05 +00:00
Alan Modra 49cc25b740 daily update 2007-04-13 00:00:05 +00:00
Richard Sandiford af5978fb74 bfd/
* elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Don't add
	DT_MIPS_RTLD_MAP for PIEs.
2007-04-12 19:27:35 +00:00
Richard Sandiford 9e3313aecd bfd/
* elfxx-mips.c (mips_elf_calculate_relocation): Set DT_TEXTREL
	when creating a __GOTT_BASE__ or __GOTT_INDEX__ relocation
	in a read-only section.
	(_bfd_mips_elf_check_relocs): Likewise.

ld/testsuite/
	* ld-mips-elf/vxworks1-lib.td: New test.
	* ld-mips-elf/mips-elf.exp: Run it.
2007-04-12 19:26:09 +00:00
Bob Wilson 1d25768e7c * elf32-xtensa.c (xtensa_is_insntable_section): New.
(xtensa_is_proptable_section): New.
	(elf_xtensa_discard_info_for_section): Handle "full" .xt.prop property
	tables with 12-byte entries, as well as tables with 8-byte entries.
	Sort the relocations before examining them.
	(relax_property_section): Use xtensa_is_proptable_section and
	xtensa_is_littable_section.  Rewrite code for combining table entries
	to be more robust in case of unexpected relocations.  Do not set offset
	of unused relocations to less than zero.
	(xtensa_is_property_section): Use other functions instead of
	duplicating section name comparisons.
	(xtensa_is_littable_section): Use CONST_STRNEQ for ".gnu.linkonce.p.".
	(xtensa_get_property_predef_flags): Use xtensa_is_insntable_section.
2007-04-12 18:55:29 +00:00
Bob Wilson e1e5c0b5eb bfd/
* elf32-xtensa.c (elf_xtensa_gc_mark_hook): Don't follow references
	from Xtensa property sections.
ld/
	* emulparams/elf32xtensa.sh (OTHER_SECTIONS): KEEP property sections.
2007-04-12 15:52:02 +00:00
Alan Modra 2c67c5f3e9 * elf32-spu.c (needs_ovl_stub): Test that spu_elf_section_data
is non-NULL before dereferencing.
2007-04-12 07:47:13 +00:00
Alan Modra bddaf4aa26 daily update 2007-04-12 00:00:06 +00:00
Nathan Sidwell c10564a99e fix typo in previous commit 2007-04-11 14:36:33 +00:00
Nathan Sidwell 8776bb8aa5 * elf-vxworks.c (elf_vxworks_emit_relocs): Remap weakdef PLT slot
relocs too.
2007-04-11 12:02:32 +00:00
Alan Modra 14ee09e13c daily update 2007-04-11 00:00:08 +00:00
Richard Henderson 4a828aab99 bfd/
* elf64-alpha.c (struct alpha_elf_link_hash_table): Add relax_trip.
        (elf64_alpha_size_got_sections): Remove unused something_changed local.
        (elf64_alpha_size_plt_section): Return void.
        (elf64_alpha_size_rela_got_section): Likewise.
        (elf64_alpha_relax_section): Only regenerate got+plt if the
        relax_trip counter has changed.
include/
        * bfdlink.h (struct bfd_link_info): Add relax_trip.
ld/
        * ldlang.c (relax_sections): Initialize and increment
        link_info.relax_trip.
2007-04-10 18:00:26 +00:00
Alan Modra cc4e0f0dc3 daily update 2007-04-10 00:00:06 +00:00
Daniel Jacobowitz 9150673628 * src-release (do-proto-toplev): Process the support directories before
the tool directory.

	* Makefile.am (bfdver.h): Do not generate doc/bfdver.texi.
	* doc/Makefile.am (DOCFILES): Add bfdver.texi.
	(bfdver.texi): New rule.
	* Makefile.in, doc/Makefile.in: Regenerated.
2007-04-09 15:36:44 +00:00
Alan Modra 3a8f241d20 daily update 2007-04-09 00:00:04 +00:00
Alan Modra 4b36751659 daily update 2007-04-08 00:00:05 +00:00
Alan Modra e62ef0e682 daily update 2007-04-07 00:00:07 +00:00
Matt Thomas da6bcfca95 2007-04-03 Matt Thomas <matt@netbsd.org>
* elf32-vax.c (elf_vax_relocate_section): Do not emit a PCREL reloc
	in a shared object if it is not in a CODE section or if it is against
	a section symbol.  This allows DWARF2 to use pcrel format.
2007-04-06 16:29:32 +00:00
Alan Modra c4d88c12e6 daily update 2007-04-06 00:00:07 +00:00
H.J. Lu 9267588cdc bfd/
2007-04-05  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/4304
	* elflink.c (bfd_elf_final_link): Call einfo callback in
	bfd_link_info instead of _bfd_error_handler for DT_TEXTREL
	warning.

ld/testsuite/

2007-04-05  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/4304
	* ld-i386/i386.exp: Run "warn1".

	* ld-i386/warn1.d: New file.
	* ld-i386/warn1.s: Likewise.
2007-04-05 16:16:28 +00:00
Alan Modra c1b2796f47 bfd/
* elf32-spu.c (spu_elf_output_symbol_hook): New function.
	(elf_backend_link_output_symbol_hook): Define.
ld/testsuite/
	* ld-spu/ovl2.d: Update.
2007-04-05 07:01:53 +00:00
Alan Modra e713eb1619 daily update 2007-04-05 00:00:05 +00:00
Alan Modra e7951e8e63 daily update 2007-04-04 00:00:06 +00:00
Alan Modra 497ad96a43 daily update 2007-04-03 00:00:06 +00:00
Nick Clifton 970ccc7734 PR binutils/4292
* bfd.c (bfd_fprintf_vma): Do not print addresses of 32-bit
  targets as 64-bit values, even if running on a 64-bit host.
* coffgen.c (coff_print_symbol): Likewise.
* nm.c (value_format): Replace with value_format_32bit and
  value_format_64bit.
  (set_radix): Update setting of value_format.
  (set_print_width): New function.  Compute the address size of a
  given bfd and set the print_width global appropriately.
  (display_archive): Use set_print_width.
  (display_file): Likewise,
  (print_object_filename_sysv): Update use of print_width.
  (print_archive_member_sysv): Likewise.
  (print_symbol_filename_posix): Likewise.
  (print_sumbol_info_bfd, print_symbol_info_sysv): Likewise.
2007-04-02 16:51:13 +00:00
Alan Modra e06c28431c daily update 2007-04-02 00:00:07 +00:00
Alan Modra 30dc3ae378 daily update 2007-04-01 00:00:05 +00:00
Alan Modra 35f386809e daily update 2007-03-31 00:00:06 +00:00
Alan Modra 680b00aa93 daily update 2007-03-30 00:00:09 +00:00
Nick Clifton 1783205a77 PR binutils/4110
* elf.c (IS_VALID_GROUP_SECTION_HEADER): New macro.
  (setup_group): Use it.  Report corrupt group section headers.
  (bfd_section_from_shdr): Use new macro.  Replace constant 4 with
      GRP_ENTRY_SIZE.  Cope with NULLs in the group section table.
  (elf_fake_section): Replace constant 4 with GRP_ENTRY_SIZE.
2007-03-29 14:37:02 +00:00
Alan Modra 947844a311 PR ld/4267
* elflink.c (evaluate_complex_relocation_symbols): Use bfd_vma
	for rel->r_info values.
	(bfd_elf_perform_complex_relocation): Likewise.
2007-03-29 02:38:00 +00:00
Alan Modra 2ce859a18d PR ld/4267
* elf32-ppc.c (allocate_dynrelocs): Set plt.offset to -1 for
	unused entries.  Don't clear plt.plist in loop.
2007-03-29 01:11:30 +00:00
Alan Modra a7b7bc0d0e daily update 2007-03-29 00:00:07 +00:00
Richard Sandiford 39817122fc bfd/
* elfxx-sparc.h (_bfd_sparc_elf_link_hash_table): Remove append_rela.
	* elfxx-sparc.c (sparc_elf_append_rela_64, sparc_elf_append_rela_32):
	Merge into...
	(sparc_elf_append_rela): ...this new function.
	(SPARC_ELF_APPEND_RELA): Delete.
	(_bfd_sparc_elf_link_hash_table_create): Don't initialize
	the deleted append_rela field.
	(_bfd_sparc_elf_relocate_section): Use sparc_elf_append_rela
	instead of SPARC_ELF_APPEND_RELA.
	(_bfd_sparc_elf_finish_dynamic_symbol): Likewise.  Use the
	elf_size_info structure to find the size of a RELA entry and
	the associated swap-out function.
	(sparc64_finish_dyn, sparc64_finish_dyn): Merge into...
	(sparc_finish_dyn): ...this new function.
	(_bfd_sparc_elf_finish_dynamic_sections): Update calls accordingly.
2007-03-28 14:39:10 +00:00
Richard Sandiford 4ecceb71ac bfd/
200x-xx-xx  Richard Sandiford  <richard@codesourcery.com>
	    Phil Edwards  <phil@codesourcery.com>

	* doc/bfd.texinfo: Put the contents after the title page rather
	than at the end of the document.

binutils/
200x-xx-xx  Richard Sandiford  <richard@codesourcery.com>
	    Phil Edwards  <phil@codesourcery.com>

	* doc/binutils.texi: Put the contents after the title page rather
	than at the end of the document.

gas/
200x-xx-xx  Richard Sandiford  <richard@codesourcery.com>
	    Phil Edwards  <phil@codesourcery.com>

	* doc/as.texinfo: Put the contents after the title page rather
	than at the end of the document.

gprof/
200x-xx-xx  Richard Sandiford  <richard@codesourcery.com>
	    Phil Edwards  <phil@codesourcery.com>

	* gprof.texi: Put the contents after the title page rather
	than at the end of the document.

ld/
200x-xx-xx  Richard Sandiford  <richard@codesourcery.com>
	    Phil Edwards  <phil@codesourcery.com>

	* ld.texinfo: Put the contents after the title page rather
	than at the end of the document.
2007-03-28 09:08:53 +00:00
Alan Modra 513766ac8b daily update 2007-03-28 00:00:06 +00:00
H.J. Lu 831480e942 Fix year. 2007-03-27 22:45:19 +00:00
Alan Modra 00cea84609 daily update 2007-03-27 00:00:05 +00:00
Andreas Schwab d4d2b80b9f * elfxx-ia64.c (elf_backend_default_execstack): Define to 0. 2007-03-26 23:35:34 +00:00
H.J. Lu a5cb1fd77d Mention PR ld/4208 in ChangeLog entry. 2007-03-26 15:44:43 +00:00
H.J. Lu 5bd8253dbb 2007-03-26 H.J. Lu <hongjiu.lu@intel.com>
* acx.m4 (ACX_BUGURL): Set BUGURL first. Quote $BUGURL first
	when setting REPORT_BUGS_TEXI.
2007-03-26 15:40:00 +00:00
Alan Modra f4b39977c8 * elf32-spu.c (struct stubarr): Add stub_hash_table and err fields.
(allocate_spuear_stubs): New function.
	(spu_elf_size_stubs): Call allocate_spuear_stubs.
2007-03-26 12:50:09 +00:00
Alan Modra 157090f728 * aout-adobe.c (aout_32_bfd_reloc_name_lookup): Define.
* aout-arm.c (MY_bfd_reloc_name_lookup): Define.
	(MY (bfd_reloc_name_lookup)): New function.
	* aout-ns32k.c (MY (bfd_reloc_name_lookup)): New function.
	* aout-target.h (NAME (aout, reloc_name_lookup)): Declare.
	(MY_bfd_reloc_name_lookup): Define.
	* aout-tic30.c (tic30_aout_reloc_name_lookup): New function.
	(MY_bfd_reloc_name_lookup): Define.
	* aoutx.h (NAME (aout, reloc_type_lookup)): Don't declare.
	(NAME (aout, reloc_name_lookup)): New function.
	* bout.c (b_out_bfd_reloc_name_lookup): New function.
	* coff-alpha.c (alpha_bfd_reloc_name_lookup): New function.
	(_bfd_ecoff_bfd_reloc_name_lookup): Define.
	* coff-arm.c (coff_arm_reloc_name_lookup): New function.
	(coff_bfd_reloc_name_lookup): Define.
	* coff-i386.c (coff_bfd_reloc_name_lookup): Define.
	(coff_i386_reloc_name_lookup): New function.
	* coff-i860.c (coff_i860_reloc_name_lookup): New function.
	(coff_bfd_reloc_name_lookup): Define.
	* coff-i960.c (coff_i960_reloc_name_lookup): New function.
	(coff_bfd_reloc_name_lookup): Define.
	* coff-m68k.c (m68k_reloc_name_lookup): New function.
	(coff_bfd_reloc_name_lookup): Define.
	* coff-maxq.c (maxq_reloc_name_lookup): New function.
	(coff_bfd_reloc_name_lookup): Define.
	* coff-mcore.c (mcore_coff_reloc_name_lookup): New function.
	(coff_bfd_reloc_name_lookup): Define.
	* coff-mips.c (mips_bfd_reloc_name_lookup): New function.
	(_bfd_ecoff_bfd_reloc_name_lookup): Define.
	* coff-ppc.c (ppc_coff_reloc_name_lookup): New function.
	(coff_bfd_reloc_name_lookup): Define.
	* coff-rs6000.c (coff_bfd_reloc_name_lookup): Define.
	(_bfd_xcoff_reloc_name_lookup): New function.
	(rs6000coff_vec, pmac_xcoff_vec): Init new field.
	* coff-sh.c (coff_bfd_reloc_name_lookup): Define.
	(sh_coff_reloc_name_lookup): New function.
	* coff-sparc.c (coff_sparc_reloc_name_lookup): New function.
	(coff_bfd_reloc_name_lookup): Define.
	* coff-tic30.c (coff_bfd_reloc_name_lookup): Define.
	(tic30_coff_reloc_name_lookup): New function.
	* coff-tic4x.c (coff_bfd_reloc_name_lookup): Define.
	(tic4x_coff_reloc_name_lookup): New function.
	* coff-tic54x.c (coff_bfd_reloc_name_lookup): Define.
	(tic54x_coff_reloc_name_lookup): New function.
	* coff-x86_64.c (coff_bfd_reloc_name_lookup): Define.
	(coff_amd64_reloc_name_lookup): New function.
	* coff-z80.c (coff_z80_reloc_name_lookup): New function.
	(coff_bfd_reloc_name_lookup): Define.
	* coff-z8k.c (coff_z8k_reloc_name_lookup): New function.
	(coff_bfd_reloc_name_lookup): Define.
	* coff64-rs6000.c (coff_bfd_reloc_name_lookup): Define.
	(xcoff64_reloc_name_lookup): New function.
	(rs6000coff64_vec, aix5coff64_vec): Init new field.
	* coffcode.h (coff_bfd_reloc_name_lookup): Define.
	* elf-hppa.h (elf_hppa_reloc_name_lookup): New function.
	* elf-m10200.c (bfd_elf32_bfd_reloc_name_lookup): New function.
	* elf-m10300.c (bfd_elf32_bfd_reloc_name_lookup): New function.
	* elf32-arc.c (bfd_elf32_bfd_reloc_name_lookup): New function.
	* elf32-arm.c (elf32_arm_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-avr.c (bfd_elf32_bfd_reloc_name_lookup): New function.
	* elf32-bfin.c (bfin_bfd_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-cr16c.c (elf_cr16c_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-cris.c (cris_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-crx.c (elf_crx_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-d10v.c (bfd_elf32_bfd_reloc_name_lookup): New function.
	* elf32-d30v.c (bfd_elf32_bfd_reloc_name_lookup): New function.
	* elf32-dlx.c (elf32_dlx_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-fr30.c (fr30_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-frv.c (frv_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-gen.c (bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-h8300.c (elf32_h8_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-hppa.c (bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-i370.c (i370_elf_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-i386.c (elf_i386_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-i860.c (elf32_i860_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-i960.c (elf32_i960_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-ip2k.c (ip2k_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-iq2000.c (iq2000_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-m32c.c (m32c_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-m32r.c (bfd_elf32_bfd_reloc_name_lookup): New function.
	* elf32-m68hc11.c (bfd_elf32_bfd_reloc_name_lookup): New function.
	* elf32-m68hc12.c (bfd_elf32_bfd_reloc_name_lookup): New function.
	* elf32-m68k.c (reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-m88k.c (bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-mcore.c (mcore_elf_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-mep.c (mep_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-mips.c (bfd_elf32_bfd_reloc_name_lookup): New function.
	(mips_vxworks_bfd_reloc_name_lookup): Likewise.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-msp430.c (bfd_elf32_bfd_reloc_name_lookup): New function.
	* elf32-mt.c (mt_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-openrisc.c (openrisc_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-or32.c (bfd_elf32_bfd_reloc_name_lookup): New function.
	* elf32-pj.c (pj_elf_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-ppc.c (ppc_elf_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-s390.c (elf_s390_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-score.c (elf32_score_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-sh.c (sh_elf_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-sparc.c (bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-spu.c (spu_elf_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-v850.c (v850_elf_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-vax.c (reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-xc16x.c (xc16x_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-xstormy16.c (xstormy16_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf32-xtensa.c (elf_xtensa_reloc_name_lookup): New function.
	(bfd_elf32_bfd_reloc_name_lookup): Define.
	* elf64-alpha.c (elf64_alpha_bfd_reloc_name_lookup): New function.
	(bfd_elf64_bfd_reloc_name_lookup): Define.
	* elf64-gen.c (bfd_elf64_bfd_reloc_name_lookup): Define.
	* elf64-hppa.c (bfd_elf64_bfd_reloc_name_lookup): Define.
	* elf64-mips.c (bfd_elf64_bfd_reloc_name_lookup): New function.
	* elf64-mmix.c (bfd_elf64_bfd_reloc_name_lookup): New function.
	* elf64-ppc.c (ppc64_elf_reloc_name_lookup): New function.
	(bfd_elf64_bfd_reloc_name_lookup): Define.
	* elf64-s390.c (elf_s390_reloc_name_lookup): New function.
	(bfd_elf64_bfd_reloc_name_lookup): Define.
	* elf64-sh64.c (sh_elf64_reloc_name_lookup): New function.
	(bfd_elf64_bfd_reloc_name_lookup): Define.
	* elf64-sparc.c (bfd_elf64_bfd_reloc_name_lookup): Define.
	* elf64-x86-64.c (elf64_x86_64_reloc_name_lookup): New function.
	(bfd_elf64_bfd_reloc_name_lookup): Define.
	* elfn32-mips.c (bfd_elf32_bfd_reloc_name_lookup): New function.
	* elfxx-ia64.c (elfNN_ia64_reloc_name_lookup): New function.
	(bfd_elfNN_bfd_reloc_name_lookup): Define.
	* elfxx-sparc.c (_bfd_sparc_elf_reloc_name_lookup): New function.
	* elfxx-sparc.h (_bfd_sparc_elf_reloc_name_lookup): Declare.
	* i386msdos.c (msdos_bfd_reloc_name_lookup): Define.
	* i386os9k.c (aout_32_bfd_reloc_name_lookup): Define.
	* ieee.c (ieee_bfd_reloc_name_lookup): Define.
	* libaout.h (NAME (aout, reloc_name_lookup)): Declare.
	* libbfd-in.h (_bfd_norelocs_bfd_reloc_name_lookup): Declare.
	* mipsbsd.c (MY_bfd_reloc_name_lookup): Define.
	(MY(reloc_type_lookup)): Rename from MY(reloc_howto_type_lookup).
	(MY(reloc_name_lookup)): New function.
	* nlm-target.h (nlm_bfd_reloc_name_lookup): Define.
	* oasys.c (oasys_bfd_reloc_name_lookup): Define.
	* pdp11.c (NAME (aout, reloc_name_lookup)): New function.
	* pe-mips.c (coff_mips_reloc_name_lookup): New function.
	(coff_bfd_reloc_name_lookup): Define.
	* reloc.c (bfd_reloc_name_lookup): New function.
	* riscix.c (riscix_reloc_name_lookup): New function.
	(MY_bfd_reloc_name_lookup): Define.
	* som.c (som_bfd_reloc_name_lookup): New function.
	* targets.c (struct bfd_target): Add reloc_name_lookup.
	(BFD_JUMP_TABLE_RELOCS): Add NAME##_bfd_reloc_name_lookup.
	* versados.c (versados_bfd_reloc_name_lookup): Define.
	* vms.c (vms_bfd_reloc_name_lookup): New function.
	* bfd-in2.h: Regenerate.
	* libbfd.h: Regenerate.
2007-03-26 12:23:03 +00:00
Thiemo Seufer 2d82d84d7d * elfxx-mips.c (mips_elf_next_relocation): Don't signal an error if no
matching relocation is found.
	(_bfd_mips_elf_relocate_section): Only warn about missing relocations.
2007-03-26 10:29:35 +00:00
Alan Modra 382a778ec3 daily update 2007-03-26 00:00:06 +00:00
Alan Modra 3a3c108143 daily update 2007-03-25 00:00:08 +00:00
Alan Modra d3db214299 daily update 2007-03-23 23:00:07 +00:00
H.J. Lu 1a27db7d98 2003-03-23 H.J. Lu <hongjiu.lu@intel.com>
* configure: Regenerated.
2007-03-23 17:14:08 +00:00
Joseph Myers a1ac819031 bfd:
* configure.in: Use ACX_PKGVERSION and ACX_BUGURL.
	* configure: Regenerate.

config:
	* acx.m4 (ACX_PKGVERSION, ACX_BUGURL): Define.
2007-03-23 02:51:30 +00:00
Alan Modra aa7a0635f3 * elf32-spu.c (spu_stub_name): Don't put input section in stub name.
Remove input_sec param.  Adjust all calls.
	(write_one_stub): Adjust stub symbol.
	(needs_ovl_stub): New function, extracted from..
	(spu_elf_size_stubs): ..here.
	(spu_elf_relocate_section): Use needs_ovl_stub.
2007-03-23 00:42:00 +00:00
Alan Modra 32f1924dfe daily update 2007-03-22 23:00:09 +00:00
Joseph Myers e49e529d12 bfd:
* Makefile.am (bfdver.h): Only set VERSION_PACKAGE in bfdver.texi
	if nonempty.
	* configure.in (REPORT_BUGS_TO): Do not use "URL:" prefix.
	* Makefile.in, configure, doc/Makefile.in: Regenerate.

binutils:
	* doc/binutils.texi: Include VERSION_PACKAGE when reporting
	version.

gas:
	* doc/as.texinfo: Include VERSION_PACKAGE when reporting version.

gprof:
	* Makefile.am (TEXI2POD): Include $(AM_MAKEINFOFLAGS).
	(AM_MAKEINFOFLAGS, TEXI2DVI): Define with -I ../bfd/doc.
	* Makefile.in: Regenerate.
	* gprof.texi: Include bfdver.texi.  Report both VERSION_PACKAGE
	and VERSION.

ld:
	* ld.texinfo: Include VERSION_PACKAGE when reporting version.
2007-03-22 21:18:34 +00:00
H.J. Lu 50572669e4 bfd/
2003-03-22  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/4210
	* peXXigen.c (_bfd_XXi_swap_aouthdr_out): Use the virtual
	address and virtual size of the last section for the image
	size.

ld/testsuite/

2003-03-22  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/4210
	* ld-pe/image_size.d: New file.
	* ld-pe/image_size.s: Likewise.
	* ld-pe/image_size.t: Likewise.

	* ld-pe/pe.exp: Run image_size.
2007-03-22 15:52:29 +00:00
H.J. Lu 0920dee7ba bfd/
2007-03-22  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/4007
	* elf.c (assign_file_positions_for_load_sections): Check if
	all sections are in the segment.

ld/testsuite/

2007-03-22  H.J. Lu  <hongjiu.lu@intel.com>

	PR ld/4007
	* ld-elf/note-1.d: New file.
	* ld-elf/note-1.s: Likewise.
	* ld-elf/note-1.t: Likewise.
	* ld-i386/alloc.d: Likewise.
	* ld-i386/alloc.s: Likewise.
	* ld-i386/alloc.t: Likewise.

	* ld-i386/i386.exp: Run "alloc".
2007-03-22 15:50:38 +00:00
Alan Modra d5b57bda12 daily update 2007-03-21 23:00:10 +00:00
H.J. Lu 749b8d9d45 2003-03-19 H.J. Lu <hongjiu.lu@intel.com>
PR ld/4208
	* elfxx-mips.c (_bfd_mips_elf_relocate_section): Report missing
	matching LO16 relocation for HI16 relocation.
2007-03-21 04:03:09 +00:00
Alan Modra fad666658c daily update 2007-03-20 23:00:06 +00:00
Paul Brook 27e55c4d0b 2007-03-20 Paul Brook <paul@codesourcery.com>
ld/
	* emultempl/armelf.em (pic_veneer): New variable.
	(PARSE_AND_LIST_PROLOGUE): Add OPTION_PIC_VENEER.
	(PARSE_AND_LIST_ARGS_CASES): Ditto.
	(PARSE_AND_LIST_LONGOPTS): Add "pic-veneer".
	(PARSE_AND_LIST_OPTIONS): Ditto.
	* ld.texinfo: Document --pic-veneer.

	ld/testsuite/
	* ld-arm/arm-elf.exp (ld-arm/arm-elf.exp): Add arm-pic-veneer.
	* ld-arm/arm-pic-veneer.d: New test.
	* ld-arm/arm-pic-veneer.s: New test.

	bfd/
	* bfd-in.h (bfd_elf32_arm_set_target_relocs): Update prototype.
	* bfd-in2.h: Regenerate.
	* elf32-arm.c (elf32_arm_link_hash_table): Add pic_veneer.
	(record_arm_to_thumb_glue): Use globals->pic_veneer.
	(elf32_arm_create_thumb_stub): Ditto.
	(bfd_elf32_arm_set_target_relocs): Set globals->pic_veneer.
2007-03-20 20:19:07 +00:00
Mark Shinwell bf21ed7807 bfd/
* bfd-in.h (bfd_elf32_arm_set_target_relocs): Add "bfd *"
	argument and extra last argument.
	* bfd-in2.h: Regenerate.
	* elf32-arm.c (elf32_arm_obj_tdata): Add no_enum_size_warning
	member.
	(bfd_elf32_arm_set_target_relocs): Add "bfd *" argument and
	extra last argument.  Set no_enum_size_warning appropriately.
	(elf32_arm_merge_eabi_attributes): Improve enum sizes
	diagnostic, suppressing it when no_enum_size_warning dictates.

	ld/
	* ld.texinfo: Document --no-enum-size-warning.
	* emultempl/armelf.em (no_enum_size_warning): New.
	(arm_elf_create_output_section_statements): Correct typo
	in comment.  Pass no_enum_size_warning to
	bfd_elf32_arm_set_target_relocs.
	(PARSE_AND_LIST_PROLOGUE): Define OPTION_NO_ENUM_SIZE_WARNING.
	(PARSE_AND_LIST_OPTIONS): Document --no-enum-size-warning.
	(PARSE_AND_LIST_ARGS_CASES): Add OPTION_NO_ENUM_SIZE_WARNING
	case.
2007-03-20 14:24:57 +00:00
Nick Clifton 5f6999aa00 PR binutils/3535
* elf.c (copy_private_bfd_data): Widen the scope of Solaris specific
  conditions that need the program headers to be rewritten.
2007-03-20 12:18:18 +00:00
H.J. Lu d13c9dc69a *** empty log message *** 2007-03-19 23:06:06 +00:00
Alan Modra 1615fd1630 daily update 2007-03-19 23:00:08 +00:00