Alan Modra
00bb149b28
* emultempl/elf-generic.em (map_segments): Reorganise loop so that
...
layout happens before segment map. Don't do segment map on
relocatable link.
2006-07-26 12:27:12 +00:00
Alan Modra
a7f651f7f2
* ld-scripts/overlay-size-map.d: Update.
2006-07-26 05:10:05 +00:00
Alan Modra
66e28d60cb
* ldexp.c (fold_name <LOADADDR>): Use the lma.
...
* ldlang.h (lang_memory_region_type): Delete old_length. Add
last_os.
* ldlang.c (lang_memory_region_lookup): Init new field.
(lang_reset_memory_regions): Reset new field.
(lang_insert_orphan): Don't set load_base.
(lang_leave_overlay): Likewise.
(lang_size_sections_1): Delete unnecessary code setting lma_region
to region. Correct lma region check.
(lang_do_assignments_1): Rename output_section_statement parm
to current_os. Set lma from previous section in region.
2006-07-26 05:05:52 +00:00
Alan Modra
329c1c8685
* ldlang.c: Formatting.
2006-07-26 00:42:33 +00:00
Bob Wilson
b2f2897591
* emultempl/xtensaelf.em (xtensa_strip_inconsistent_linkonce_sections):
...
Set discarded section's output_section to bfd_abs_section_ptr.
2006-07-26 00:10:26 +00:00
Thiemo Seufer
6085129af6
* ld-mips-elf/mips16-call-global-2.s,
...
ld-mips-elf/mips16-call-global-3.s, ld-mips-elf/mips16-call-global.d:
Improve test robustness.
2006-07-25 16:45:55 +00:00
Alan Modra
7544697a28
* ldlang.c (analyze_walk_wild_section_handler): Init handler_data
...
earlier.
2006-07-25 14:45:17 +00:00
Bob Wilson
644143c8e1
* emultempl/xtensaelf.em (is_inconsistent_linkonce_section): Add space
...
in dep_sec_name for null terminator. Make sure dep_sec_name has a
".t" linkonce tag.
2006-07-25 00:20:09 +00:00
Nick Clifton
ff15b24025
* emulparams/elf_x86_64.sh (LIBPATH_SUFFIX, ELF_INTERPRETER_NAME): Set for *-*-solaris2*.
...
* elf.c (bfd_section_from_shdr): Reject unrecognised OS-specific sections
only if the SHF_OS_NONCONFORMING flag is present.
2006-07-24 18:18:19 +00:00
Nick Clifton
b45619c047
Fix spelling typos
2006-07-24 13:49:50 +00:00
Nick Clifton
50c77e5dcb
* ldlang.c (lang_section_bst): New structure for sorting sections by name.
...
(wild_sort_fast): New function: Insert a section into a binary search tree.
(output_section_callback_fast): New function: Store a section in BST.
(output_section_callback_tree_to_list): New function: Convert a BST into a list.
(analyze_walk_wild_section_handler): Initialize handler_data elements.
(wild): If the data is sorted by name use the BST method to sort the names.
2006-07-23 15:32:08 +00:00
Nick Clifton
3e4cf9243a
* ld-sh/arch/arch.exp (test_arch): Set the endian flag to suit the multilib
...
being tested.
2006-07-21 09:56:40 +00:00
Thiemo Seufer
35d3d567cc
[ bfd/ChangeLog ]
...
* elf32-mips.c (mips16_jump_reloc): Remove function.
(elf_mips16_howto_table_rel): Use _bfd_mips_elf_generic_reloc
instead of mips16_jump_reloc.
* elf64_mips.c, wlfn32-mips.c (mips16_jump_reloc): Remove function.
(elf_mips16_howto_table_rel, elf_mips16_howto_table_rela): Use
_bfd_mips_elf_generic_reloc instead of mips16_jump_reloc.
[ gas/ChangeLog ]
* config/tc-mips.c (mips_fix_adjustable): Handle BFD_RELOC_MIPS16_JMP.
(tc_gen_reloc): Handle mips16 jumps to section symbol offsets.
[ ld/testsuite/ChangeLog ]
* ld-mips-elf/mips16-call-global-1.s,
ld-mips-elf/mips16-call-global-2.s,
ld-mips-elf/mips16-call-global-3.s, ld-mips-elf/mips16-call-global.d:
Test linking of external mips16 jumps.
* ld-mips-elf/mips-elf.exp: Run new test.
2006-07-20 16:46:30 +00:00
Thiemo Seufer
8c991f1883
* ld-selective/selective.exp: Fix selective testcases for MIPS.
2006-07-19 11:49:32 +00:00
Alan Modra
5061a8853b
bfd/
...
* bfd-in.h (enum notice_asneeded_action): Define.
* bfd-in2.h: Regenerate.
* elflink.c (elf_link_add_object_symbols): Call linker "notice"
function with NULL name for as-needed handling.
ld/
* ld.h (handle_asneeded_cref): Declare.
* ldcref.c: Include objalloc.h.
(old_table, old_count, old_tab, alloc_mark): New variables.
(tabsize, entsize, refsize, old_symcount): Likewise.
(add_cref): Use bfd_hash_allocate for refs.
(handle_asneeded_cref): New function.
* ldmain.c (notice): Call handle_asneeded_cref for NULL name.
2006-07-19 01:50:23 +00:00
Daniel Jacobowitz
d19628a59d
* configure.tgt (i[3-7]86-*-solaris2*, i[3-7]86-*-solaris*): Correct
...
typo setting targ_extra_libpath.
2006-07-14 15:26:36 +00:00
Thiemo Seufer
5bf2ff2f3e
* ld-mips-elf/tlslib-o32-ver.got, ld-mips-elf/tlslib-o32.got:
...
Update TLS testcases.
2006-07-13 10:58:47 +00:00
H.J. Lu
d2dee3b25c
bfd/
...
2006-07-12 H.J. Lu <hongjiu.lu@intel.com>
PR ld/2884
* elflink.c (_bfd_elf_merge_symbol): Copy the symbol info from
the old versioned dynamic definition to the new one with
non-default visibility. Hide the symbol if it is hidden or
internal.
ld/testsuite/
2006-07-12 H.J. Lu <hongjiu.lu@intel.com>
PR ld/2884
* ld-elf/begin.c: New file.
* ld-elf/end.c: Likewise.
* ld-elf/endhidden.c: Likewise.
* ld-elf/endprotected.c: Likewise.
* ld-elf/foo.c: Likewise.
* ld-elf/foo.map: Likewise.
* ld-elf/hidden.out: Likewise.
* ld-elf/main.c: Likewise.
* ld-elf/normal.out: Likewise.
* ld-elf/shared.exp: Likewise.
* lib/ld-lib.exp (run_cc_link_tests): New.
2006-07-12 15:45:33 +00:00
Richard Sandiford
fb405f8a9f
bfd/
...
2006-07-12 Matthew R. Dempsky <mrd@alkemio.org>
* cpu-m68k.c (bfd_m68k_compatible): Handle CPU32.
ld/testsuite/
2006-07-12 Richard Sandiford <richard@codesourcery.com>
* ld-m68k/merge-ok-1c.d: New test.
* ld-m68k/m68k.exp: Run it.
2006-07-12 12:47:00 +00:00
Hans-Peter Nilsson
73724cd71b
* ld-cris/libdso-2.d: Adjust for recent hash-related changes.
2006-07-11 21:47:41 +00:00
Jakub Jelinek
fdc90cb46b
include/
...
* bfdlink.h (struct bfd_link_info): Add emit_hash and
emit_gnu_hash bitfields.
include/elf/
* common.h (SHT_GNU_HASH, DT_GNU_HASH): Define.
ld/
* scripttempl/elf.sc: Add .gnu.hash section.
* emultempl/elf32.em (OPTION_HASH_STYLE): Define.
(gld${EMULATION_NAME}_add_options): Register --hash-style option.
(gld${EMULATION_NAME}_handle_option): Handle it.
(gld${EMULATION_NAME}_list_options): Document it.
* ldmain.c (main): Initialize emit_hash and emit_gnu_hash.
* ld.texinfo: Document --hash-style option.
bfd/
* elf.c (_bfd_elf_print_private_bfd_data): Handle DT_GNU_HASH.
(bfd_section_from_shdr, elf_fake_sections, assign_section_numbers):
Handle SHT_GNU_HASH.
(special_sections_g): Include .gnu.hash section.
(bfd_elf_gnu_hash): New function.
* elf-bfd.h (bfd_elf_gnu_hash, _bfd_elf_hash_symbol): New prototypes.
(struct elf_backend_data): Add elf_hash_symbol method.
* elflink.c (_bfd_elf_link_create_dynamic_sections): Create .hash
only if info->emit_hash, create .gnu.hash section if
info->emit_gnu_hash.
(struct collect_gnu_hash_codes): New type.
(elf_collect_gnu_hash_codes, elf_renumber_gnu_hash_syms,
_bfd_elf_hash_symbol): New functions.
(compute_bucket_count): Don't compute HASHCODES array, instead add
that and NSYMS as arguments. Use bed->s->sizeof_hash_entry
instead of bed->s->arch_size / 8. Fix .hash size estimation.
When not optimizing, use the number of hashed symbols rather than
dynsymcount.
(bfd_elf_size_dynamic_sections): Only add DT_HASH if info->emit_hash,
and ADD DT_GNU_HASH if info->emit_gnu_hash.
(bfd_elf_size_dynsym_hash_dynstr): Size .hash only if info->emit_hash,
adjust compute_bucket_count caller. Create and populate .gnu.hash
section if info->emit_gnu_hash.
(elf_link_output_extsym): Only populate .hash section if
finfo->hash_sec != NULL.
(bfd_elf_final_link): Adjust assertion. Handle DT_GNU_HASH.
* elfxx-target.h (elf_backend_hash_symbol): Define if not yet defined.
(elfNN_bed): Add elf_backend_hash_symbol.
* elf64-x86-64.c (elf64_x86_64_hash_symbol): New function.
(elf_backend_hash_symbol): Define.
* elf32-i386.c (elf_i386_hash_symbol): New function.
(elf_backend_hash_symbol): Define.
binutils/
* readelf.c (get_dynamic_type): Handle DT_GNU_HASH.
(get_section_type_name): Handle SHT_GNU_HASH.
(dynamic_info_DT_GNU_HASH): New variable.
(process_dynamic_section): Handle DT_GNU_HASH.
(process_symbol_table): Print also DT_GNU_HASH histogram.
ld/testsuite/
* ld-powerpc/tlsso32.r: Adjust.
* ld-powerpc/tlsso32.d: Adjust.
* ld-powerpc/tlsso32.g: Adjust.
* ld-powerpc/tlsso.r: Adjust.
* ld-powerpc/tlsso.g: Adjust.
* ld-powerpc/tlstocso.g: Adjust.
2006-07-10 21:40:25 +00:00
Nick Clifton
b83ef3ee25
* po/zh_TW.po: New Chinese (traditional) translation.
...
* configure.in (ALL_LINGUAS): Add zh_TW.
* configure: Regenerate.
2006-07-10 14:30:41 +00:00
Nick Clifton
71ba23f64d
PR ld/2874
...
* ld.texinfo: Remove "Using LD" from the title since it is redundant.
2006-07-07 11:18:51 +00:00
Nick Clifton
ba1be17eab
PR ld/2877
...
* ld.texinfo: Fix spelling mistakes.
2006-07-06 10:46:46 +00:00
Thiemo Seufer
de4f2349c5
* ld-mips-elf/multi-got-1.d, ld-mips-elf/tls-multi-got-1.got,
...
ld-mips-elf/tls-multi-got-1.r: Update multigot testcases.
2006-07-05 16:01:38 +00:00
H.J. Lu
10efb593b7
bfd/
...
2006-06-30 H.J. Lu <hongjiu.lu@intel.com>
* elf32-i386.c (elf_i386_relocate_section): Use xchg %ax,%ax
instead of 2 nops.
* elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
(elf64_x86_64_plt0_entry): Use nopl 0(%rax) instead of 4 nops.
ld/testsuite/
2006-06-30 H.J. Lu <hongjiu.lu@intel.com>
* ld-i386/tlsbindesc.dd: Updated to expect xchg %ax,%ax instead
of 2 nops.
* ld-i386/tlsdesc.dd: Likewise.
* ld-i386/tlsgdesc.dd: Likewise.
* ld-x86-64/tlsbindesc.dd: Likewise.
* ld-x86-64/tlsdesc.dd: Likewise.
* ld-x86-64/tlsdesc.pd: Likewise.
* ld-x86-64/tlsgdesc.dd: Likewise.
2006-06-30 14:16:13 +00:00
Jakub Jelinek
ebcfb3c00f
PR ld/2513
...
* elf32-i386.c (GOT_TLS_MASK, GOT_TLS_IE_IE, GOT_TLS_IE_GD,
GOT_TLS_IE_MASK, elf_i386_check_relocs, allocate_dynrelocs): Revert
2006-04-08 changes.
(elf_i386_relocate_section): Likewise. For GD->IE transition
change subl into addl whenever tls_type is GOT_TLS_IE_POS.
* ld-i386/tlsbin.dd: Fix expected output.
2006-06-29 12:34:37 +00:00
Nick Clifton
b1d9458ab4
* emultempl/pe.em (gld_$_open_dynamic_archive): Compute maximum length of
...
format strings in the libname_fmt[] array, rather than relying upon a
statically chosen value. Adjust xmalloc call to use this longest length.
2006-06-27 11:45:21 +00:00
Nick Clifton
ece2d90e7c
(-rpath-link): Clarify distinction between -rpath and -rpath-link.
2006-06-27 08:52:38 +00:00
Daniel Jacobowitz
0faaaeb8fc
* configure.tgt (i[3-7]86-*-solaris2*, i[3-7]86-*-solaris*): Set
...
targ_extra_libpath.
2006-06-23 18:11:47 +00:00
Nick Clifton
5b8273bf5f
* pe-dll.c (pe_details_type): Add new pointer for symbols list autofilter.
...
(autofilter_symbollist): Split into autofilter_symbollist_generic and
autofilter_symbollist_i386.
(pe_detail_list): Add autofilter_symbollist_i386 to i386 case and
autofilter_symbollist_generic for all the others.
(autofilter_symbolprefixlist): Moved _fmode, _impure_ptr, cygwin_attach_dll,
cygwin_premain0, cygwin_premain1, cygwin_premain2, cygwin_premain3,
environ, into autofilter_symbollist_i386.
(auto_export): Get autofilter_symbollist from pe_details.
2006-06-23 11:20:15 +00:00
Nick Clifton
b952b98f27
PR ld/2757
...
* emultempl/pe.em (gld_$_after_open): When reporting non PE format output
files mention the file name and the fact that it is an output file.
2006-06-22 16:25:36 +00:00
Nick Clifton
cf8456db9f
Correct comment.
2006-06-22 13:48:30 +00:00
Nick Clifton
45e948fe97
* emultempl/pe.em (gld_${EMULATION_NAME}_open_dynamic_archive): Restructure.
...
Add native "%s.lib" format to search list
* ld.texinfo (node WIN32): Update documentation on dynamic lib search order.
Add another reason for using import libs.
2006-06-22 13:43:04 +00:00
Mark Shinwell
5e542ba70e
Fix for segmentation fault.
...
* ldlang.c (lang_insert_orphan): Correctly handle the case where
the section is to end up after the section currently at the end
of the list in output_bfd.
2006-06-21 13:25:54 +00:00
Alan Modra
c219a7a5ff
* ld-elf/tls_common.exp: Match 32-bit output.
2006-06-21 05:36:17 +00:00
Hans-Peter Nilsson
a4308b792c
* emultempl/mmo.em: Improve comments. Explain why there's
...
ELF-stuff here.
2006-06-21 02:53:43 +00:00
Alan Modra
f5ff60a6db
* emultempl/elf-generic.em (gld${EMULATION_NAME}_map_segments): Limit
...
loop to ten iterations. Throw away any previous linker generated
segment map.
* ldlang.c (lang_phdr_list): Make global.
* ldlang.h (lang_phdr_list): Declare.
* Makefile.am (ELF_GEN_DEPS): Define. Use in emul deps.
* Makefile.in: Regenerate.
2006-06-20 16:37:29 +00:00
Jakub Jelinek
6a4a0940e5
* elflink.c (elf_link_add_object_symbols): Don't create .tcommon
...
section for relocatable link.
* ld-elf/tls_common.exp: New test.
* ld-elf/tls_common.s: New file.
2006-06-20 16:36:18 +00:00
Paul Brook
add68859a9
2006-06-19 Vladimir Prus <vladimir@codesourcery.com>
...
bfd/
* elf32-arm.c (elf32_arm_swap_symbol_out): Don't set low
bit for undefined symbols.
ld/testsuite
* ld-arm/arm-elf.exp: New test.
* ld-arm/use-thumb-lib.s: New file.
* ld-arm/use-thumb-lib.sym: New file.
2006-06-20 13:55:08 +00:00
Alan Modra
8ded5a0fc3
bfd/
...
* elf-bfd.h: Formatting.
(_bfd_elf_map_sections_to_segments): Declare.
* elf-eh-frame.c (_bfd_elf_discard_section_eh_frame_hdr): Don't
clear program_header_size.
* elf.c (get_program_header_size): Move. Don't use or set saved
program_header_size here.
(elf_modify_segment_map): New function. Split out from..
(assign_file_positions_for_load_sections): ..here. Assert
header size is correct. Remove dead code.
(_bfd_elf_map_sections_to_segments): Rename from
map_sections_to_segments. Make global. Use get_program_header_size
when we need estimate of header size. Call elf_modify_segment_map.
Set program_header_size.
(print_segment_map): Delete.
(_bfd_elf_sizeof_headers): If segment_map available, get the
actual size.
* elf32-arm.c (elf32_arm_symbian_modify_segment_map): Make safe
for calling more than once.
* elf32-bfin.c (elf32_bfinfdpic_modify_segment_map): Likewise.
* elf32-frv.c (elf32_frvfdpic_modify_segment_map): Likewise.
* elfxx-mips.c (_bfd_mips_elf_modify_segment_map): Likewise.
* elf32-i370.c (elf_backend_add_symbol_hook): Delete.
(elf_backend_additional_program_headers): Delete.
(elf_backend_modify_segment_map): Delete.
* elf64-hppa.c (elf64_hppa_modify_segment_map): Convert to ISO C.
* elfxx-ia64.c (elfNN_ia64_modify_segment_map): Likewise.
* doc/bfdint.texi: Delete SIZEOF_HEADERS difficulties.
ld/
* Makefile.am (ELF_DEPS): Define. Use in emul file deps. Fix
many ELF emul file deps that incorrectly said they needed elf32.em
instead of generic.em. Add genelf.em as required.
* Makefile.in: Regenerate.
* ldlang.c (lang_process): Call ldemul_finish before
lang_check_section_addresses.
* emulparams/arcelf.sh: Generic elf target needs genelf.
* emulparams/d30v_e.sh: Likewise.
* emulparams/d30v_o.sh: Likewise.
* emulparams/d30velf.sh: Likewise.
* emulparams/elf32_dlx.sh: Likewise.
* emulparams/elf32_i860.sh: Likewise.
* emulparams/elf32fr30.sh: Likewise.
* emulparams/elf32frv.sh: Likewise.
* emulparams/elf32iq10.sh: Likewise.
* emulparams/elf32iq2000.sh: Likewise.
* emulparams/elf32mt.sh: Likewise.
* emulparams/mn10200.sh: Likewise.
* emulparams/or32.sh: Likewise.
* emulparams/or32elf.sh: Likewise.
* emulparams/pjelf.sh: Likewise.
* emulparams/msp430all.sh: Likewise. Extract common entries.
* emulparams/pjlelf.sh: Include pjelf.sh.
* emulparams/elf32frvfd.sh (EXTRA_EM_FILE): Unset.
* emulparams/mn10300.sh (EXTRA_EM_FILE): Unset.
* emultempl/elf-generic.em: New file.
* emultempl/genelf.em: New file.
* emultempl/elf32.em: Include elf-generic.em.
(gld${EMULATION_NAME}_layout_sections_again): Delete.
(gld${EMULATION_NAME}_finish): Call gld${EMULATION_NAME}_map_segments.
* emultempl/hppaelf.em (hppaelf_layout_sections_again): Likewise.
(gld${EMULATION_NAME}_finish): Rename from hppaelf_finish. Call
gld${EMULATION_NAME}_map_segments.
(LDEMUL_FINISH): Update.
* emultempl/mmo.em: Correct comment. Include elf-bfd.h and
source elf-generic.em.
(mmo_finish): Call gld${EMULATION_NAME}_map_segments.
* emultempl/ppc64elf.em (ppc_layout_sections_again): Likewise.
(gld${EMULATION_NAME}_finish): Rename from ppc_finish. Call
gld${EMULATION_NAME}_map_segments.
(LDEMUL_FINISH): Update.
ld/testsuite/
* ld-elf/eh1.d: Update for fewer program headers.
* ld-elf/eh2.d: Likewise.
* ld-elf/eh3.d: Likewise.
2006-06-20 02:22:16 +00:00
Paul Brook
0fa3dcad7e
2006-06-19 Vladimir Prus <vladimir@codesourcery.com>
...
bfd/
* elf32-arm.c (elf32_arm_swap_symbol_out): Don't set low
bit for undefined symbols.
ld/testsuite
* ld-arm/arm-elf.exp: New test.
* ld-arm/use-thumb-lib.s: New file.
* ld-arm/use-thumb-lib.sym: New file.
2006-06-19 14:22:27 +00:00
Alan Modra
a6b96bebd2
bfd/
...
* elf-bfd.h (struct elf_backend_data): Add bfd_link_info pointer
parameter.
(_bfd_elf_sizeof_headers): Replace bfd_boolean param with
bfd_link_info pointer.
* targets.c (struct bfd_target <_bfd_sizeof_headers>): Likewise.
* bfd.c (bfd_sizeof_headers): Tweak param name.
* aout-adobe.c (aout_adobe_sizeof_headers): Adjust.
* aoutx.h (NAME (aout, sizeof_headers)): Adjust.
* binary.c (binary_sizeof_headers): Adjust.
* bout.c (b_out_sizeof_headers): Adjust.
* coff-rs6000.c (_bfd_xcoff_sizeof_headers): Adjust.
* coff64-rs6000.c (xcoff64_sizeof_headers): Adjust.
* coffgen.c (coff_sizeof_headers): Adjust.
* ecoff.c (_bfd_ecoff_sizeof_headers): Adjust.
(ecoff_compute_section_file_positions): Adjust.
(_bfd_ecoff_write_object_contents): Adjust.
* elf.c (get_program_header_size, _bfd_elf_sizeof_headers): Adjust.
* elf32-arm.c (elf32_arm_additional_program_headers): Adjust.
* elf32-i370.c (elf_backend_additional_program_headers): Adjust.
* elf32-ppc.c (ppc_elf_additional_program_headers): Adjust.
* elf64-hppa.c (elf64_hppa_additional_program_headers): Adjust.
* elf64-x86-64.c (elf64_x86_64_additional_program_headers): Adjust.
* elfxx-ia64.c (elfNN_ia64_additional_program_headers): Adjust.
* elfxx-mips.c (_bfd_mips_elf_additional_program_headers): Adjust.
* elfxx-mips.h (_bfd_mips_elf_additional_program_headers): Adjust.
* i386msdos.c: Convert to ISO C.
(msdos_sizeof_headers): Adjust.
* i386os9k.c: Convert to ISO C.
(os9k_sizeof_headers): Adjust.
* ieee.c (ieee_sizeof_headers): Adjust.
* ihex.c (ihex_sizeof_headers): Adjust.
* libaout.h (NAME (aout, sizeof_headers)): Adjust.
* libbfd-in.h (_bfd_nolink_sizeof_headers): Adjust.
* libcoff-in.h (coff_sizeof_headers): Adjust.
* libecoff.h (_bfd_ecoff_sizeof_headers): Adjust.
* mach-o.c (bfd_mach_o_sizeof_headers): Adjust.
* mmo.c (mmo_sizeof_headers): Adjust.
* oasys.c (oasys_sizeof_headers): Adjust.
* pdp11.c (NAME (aout, sizeof_headers)): Adjust.
* pef.c (bfd_pef_sizeof_headers): Adjust.
* ppcboot.c (ppcboot_sizeof_headers): Adjust.
* som.c (som_sizeof_headers): Adjust.
* srec.c (srec_sizeof_headers): Adjust.
* tekhex.c (tekhex_sizeof_headers): Adjust.
* versados.c (versados_sizeof_headers): Adjust.
* vms.c (vms_sizeof_headers): Adjust.
* xcoff-target.h (_bfd_xcoff_sizeof_headers): Adjust.
* xsym.c (bfd_sym_sizeof_headers): Adjust.
* xsym.h (bfd_sym_sizeof_headers): Adjust.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.
* libcoff.h: Regenerate.
ld/
* ldexp.c (fold_name): Adjust bfd_sizeof_headers call.
2006-06-19 13:17:44 +00:00
Mark Shinwell
4962c51a67
* include/elf/arm.h: Correct names of R_ARM_LDC_G{0,1,2}
...
to R_ARM_LDC_SB_G{0,1,2} respectively.
bfd/
* bfd-in2.h: Regenerate.
* elf32-arm.c (R_ARM_ALU_PC_G0_NC, R_ARM_ALU_PC_G0,
R_ARM_ALU_PC_G1_NC, R_ARM_ALU_PC_G1, R_ARM_ALU_PC_G2,
R_ARM_LDR_PC_G1, R_ARM_LDR_PC_G2, R_ARM_LDRS_PC_G0,
R_ARM_LDRS_PC_G1, R_ARM_LDRS_PC_G2, R_ARM_LDC_PC_G0,
R_ARM_LDC_PC_G1, R_ARM_LDC_PC_G2, R_ARM_ALU_SB_G0_NC,
R_ARM_ALU_SB_G0, R_ARM_ALU_SB_G1_NC, R_ARM_ALU_SB_G1,
R_ARM_ALU_SB_G2, R_ARM_LDR_SB_G0, R_ARM_LDR_SB_G1,
R_ARM_LDR_SB_G2, R_ARM_LDRS_SB_G0, R_ARM_LDRS_SB_G1,
R_ARM_LDRS_SB_G2, R_ARM_LDC_SB_G0, R_ARM_LDC_SB_G1,
R_ARM_LDC_SB_G2): New relocation types.
(R_ARM_PC13): Rename to AAELF name R_ARM_LDR_PC_G0 and
adjust HOWTO entry to be consistent with R_ARM_LDR_PC_G1
and friends.
(elf32_arm_howto_table_3): Delete; contents merged into
elf32_arm_howto_table_2.
(elf32_arm_howto_from_type): Adjust correspondingly.
(elf32_arm_reloc_map): Extend with the above relocations.
(calculate_group_reloc_mask): New function.
(identify_add_or_sub): New function.
(elf32_arm_final_link_relocate): Support for the above
relocations.
* reloc.c: Add enumeration entries for BFD_RELOC_ARM_...
codes to correspond to the above relocations.
gas/
* config/tc-arm.c (enum parse_operand_result): New.
(struct group_reloc_table_entry): New.
(enum group_reloc_type): New.
(group_reloc_table): New array.
(find_group_reloc_table_entry): New function.
(parse_shifter_operand_group_reloc): New function.
(parse_address_main): New function, incorporating code
from the old parse_address function. To be used via...
(parse_address): wrapper for parse_address_main; and
(parse_address_group_reloc): new function, likewise.
(enum operand_parse_code): New codes OP_SHG, OP_ADDRGLDR,
OP_ADDRGLDRS, OP_ADDRGLDC.
(parse_operands): Support for these new operand codes.
New macro po_misc_or_fail_no_backtrack.
(encode_arm_cp_address): Preserve group relocations.
(insns): Modify to use the above operand codes where group
relocations are permitted.
(md_apply_fix): Handle the group relocations
ALU_PC_G0_NC through LDC_SB_G2.
(tc_gen_reloc): Likewise.
(arm_force_relocation): Leave group relocations for the linker.
(arm_fix_adjustable): Likewise.
gas/testsuite/
* gas/arm/group-reloc-alu.d: New test.
* gas/arm/group-reloc-alu-encoding-bad.d: New test.
* gas/arm/group-reloc-alu-encoding-bad.l: New test.
* gas/arm/group-reloc-alu-encoding-bad.s: New test.
* gas/arm/group-reloc-alu-parsing-bad.d: New test.
* gas/arm/group-reloc-alu-parsing-bad.l: New test.
* gas/arm/group-reloc-alu-parsing-bad.s: New test.
* gas/arm/group-reloc-alu.s: New test.
* gas/arm/group-reloc-ldc.d: New test.
* gas/arm/group-reloc-ldc-encoding-bad.d: New test.
* gas/arm/group-reloc-ldc-encoding-bad.l: New test.
* gas/arm/group-reloc-ldc-encoding-bad.s: New test.
* gas/arm/group-reloc-ldc-parsing-bad.d: New test.
* gas/arm/group-reloc-ldc-parsing-bad.l: New test.
* gas/arm/group-reloc-ldc-parsing-bad.s: New test.
* gas/arm/group-reloc-ldc.s: New test.
* gas/arm/group-reloc-ldr.d: New test.
* gas/arm/group-reloc-ldr-encoding-bad.d: New test.
* gas/arm/group-reloc-ldr-encoding-bad.l: New test.
* gas/arm/group-reloc-ldr-encoding-bad.s: New test.
* gas/arm/group-reloc-ldr-parsing-bad.d: New test.
* gas/arm/group-reloc-ldr-parsing-bad.l: New test.
* gas/arm/group-reloc-ldr-parsing-bad.s: New test.
* gas/arm/group-reloc-ldr.s: New test.
* gas/arm/group-reloc-ldrs.d: New test.
* gas/arm/group-reloc-ldrs-encoding-bad.d: New test.
* gas/arm/group-reloc-ldrs-encoding-bad.l: New test.
* gas/arm/group-reloc-ldrs-encoding-bad.s: New test.
* gas/arm/group-reloc-ldrs-parsing-bad.d: New test.
* gas/arm/group-reloc-ldrs-parsing-bad.l: New test.
* gas/arm/group-reloc-ldrs-parsing-bad.s: New test.
* gas/arm/group-reloc-ldrs.s: New test.
ld/testsuite/
* ld-arm/group-relocs-alu-bad.d: New test.
* ld-arm/group-relocs-alu-bad.s: New test.
* ld-arm/group-relocs.d: New test.
* ld-arm/group-relocs-ldc-bad.d: New test.
* ld-arm/group-relocs-ldc-bad.s: New test.
* ld-arm/group-relocs-ldr-bad.d: New test.
* ld-arm/group-relocs-ldr-bad.s: New test.
* ld-arm/group-relocs-ldrs-bad.d: New test.
* ld-arm/group-relocs-ldrs-bad.s: New test.
* ld-arm/group-relocs.s: New test.
* ld-arm/arm-elf.exp: Wire in new tests.
2006-06-15 11:03:02 +00:00
Richard Sandiford
cc3e26bed7
bfd/
...
* elf32-m68k.c (elf_m68k_plt_info): New structure.
(elf_m68k_plt0_entry): Add R_68K_PC32-style in-place addends.
(elf_m68k_plt_entry): Likewise.
(elf_m68k_plt_info): New table.
(CFV4E_PLT_ENTRY_SIZE): Rename to...
(ISAB_PLT_ENTRY_SIZE): ...this.
(CFV4E_FLAG): Delete.
(elf_cfv4e_plt0_entry): Rename to...
(elf_isab_plt0_entry): ...this. Adjust comments. Use (-6,%pc,%d0)
for the second instruction too.
(elf_cfv4e_plt_entry): Rename to...
(elf_isab_plt_entry): ...this. Adjust comments and use (-6,%pc,%d0).
(elf_isab_plt_info): New table.
(CPU32_FLAG): Delete.
(PLT_CPU32_ENTRY_SIZE): Rename to...
(CPU32_PLT_ENTRY_SIZE): ...this.
(elf_cpu32_plt0_entry): Update bounds accordingly. Add R_68K_PC32-
style in-place addends.
(elf_cpu32_plt_entry): Likewise.
(elf_cpu32_plt_info): New table.
(elf_m68k_link_hash_table): Add a plt_info field.
(elf_m68k_link_hash_table_create): Initialize it.
(elf_m68k_get_plt_info): New function.
(elf_m68k_always_size_sections): Likewise.
(elf_m68k_adjust_dynamic_symbol): Use the plt_info hash table field.
(elf_m68k_install_pc32): New function.
(elf_m68k_finish_dynamic_symbol): Factor code using plt_info and
elf_m68k_install_pc32.
(elf_m68k_finish_dynamic_sections): Likewise.
(elf_m68k_plt_sym_val): Use elf_m68k_get_plt_info.
(elf_backend_always_size_sections): Define.
ld/testsuite/
* ld-m68k/plt1.s, ld-m68k/plt1-empty.s, ld-m68k/plt1.ld: New files.
* ld-m68k/plt1-68020.d, ld-m68k/plt1-cpu32.d: Likewise.
* ld-m68k/plt1-isab.d: Likewise.
* ld-m68k/m68k.exp: Run new PLT tests.
2006-06-14 08:27:41 +00:00
Alan Modra
5fa222e442
* ld.texinfo: Document new -z lazy option.
...
* emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Handle
new option.
(gld${EMULATION_NAME}_list_options): Update help text.
2006-06-14 02:43:58 +00:00
Fred Fish
ce28273f99
Reviewed and approved by Daniel Jacobowitz and Thiemo Seufer
...
2006-06-12 Fred Fish <fnf@specifix.com>
* emulparams/elf32bmip.sh (OTHER_SECTIONS): Keep the
".mdebug.<abi>" and ".gcc_compiled_long<size>" sections
generated by mips gcc.
2006-06-12 12:36:26 +00:00
Thiemo Seufer
7fd91fe0bb
[ bfd/ChangeLog ]
...
* elf32-mips.c: Expand comment about ABI-mandated pagesize values.
(ELF_MAXPAGESIZE, ELF_COMMONPAGESIZE): define in a more obvious way.
* elf64-mips.c, elfn32-mips.c (ELF_MAXPAGESIZE): Fix value for IRIX6.
Delete old comments.
(ELF_COMMONPAGESIZE): Define in a more obvious way.
[ ld/ChangeLog ]
* emulparams/elf64bmip.sh, emulparams/elf64btsmip.sh (COMMONPAGESIZE):
Define.
[ ld/testsuite/ChangeLog ]
* ld-mips-elf/multi-got-no-shared.d: Adjust for recent change of
ELF_MAXPAGESIZE.
2006-06-12 11:35:45 +00:00
Richard Sandiford
5108fc1bc9
bfd/
...
* elfxx-mips.c (mips_elf_link_hash_table): Add function_stub_size.
(STUB_ORI): New macro.
(STUB_LI16U): Fix formatting.
(MIPS_FUNCTION_STUB_SIZE): Delete.
(MIPS_FUNCTION_STUB_MAX_SIZE): Likewise.
(MIPS_FUNCTION_STUB_NORMAL_SIZE): New macro.
(MIPS_FUNCTION_STUB_BIG_SIZE): Likewise.
(_bfd_mips_elf_adjust_dynamic_symbol): Use htab->function_stub_size
instead of MIPS_FUNCTION_STUB_SIZE.
(count_section_dynsyms): New function, split out from
_bfd_mips_elf_final_link.
(_bfd_mips_elf_always_size_sections): Get a worst-case estimate
of the number of dynamic symbols needed and use it to set up
function_stub_size. Use function_stub_size rather than
MIPS_FUNCTION_STUB_SIZE to determine the size of the stub section.
Use 16-byte stubs for 0x10000 dynamic symbols.
(_bfd_mips_elf_size_dynamic_sections): Use htab->function_stub_size
instead of MIPS_FUNCTION_STUB_SIZE. Fix formatting.
(_bfd_mips_elf_finish_dynamic_symbol): Likewise. Change the
size of the stub buffer from MIPS_FUNCTION_STUB_MAX_SIZE to
MIPS_FUNCTION_STUB_BIG_SIZE. Tweak the check for unhandled dynindxes.
Use MIPS_FUNCTION_STUB_BIG_SIZE rather than a hard-coded 20.
Use STUB_ORI rather than STUB_LI16U for big stubs.
(_bfd_mips_elf_link_hash_table_create): Initialize function_stub_size.
(_bfd_mips_elf_final_link): Use count_section_dynsyms.
ld/testsuite/
* ld-mips-elf/stub-dynsym-1.s,
* ld-mips-elf/stub-dynsym-1.ld,
* ld-mips-elf/stub-dynsym-1-7fff.d,
* ld-mips-elf/stub-dynsym-1-8000.d,
* ld-mips-elf/stub-dynsym-1-fff0.d,
* ld-mips-elf/stub-dynsym-1-10000.d,
* ld-mips-elf/stub-dynsym-1-2fe80.d: New test.
* ld-mips-elf/mips-elf.exp: Run it.
2006-06-11 08:33:27 +00:00
Alan Modra
409d7240c7
* ldlang.h (lang_input_statement_type): Use bitfields for booleans.
...
* ldlang.c (struct out_section_hash_entry): Rename from
output_statement_hash_entry. Delete output_section_statement_type
entry. Add statement_union_type entry. Adjust all users.
(output_section_statement_table): Rename from output_statement_table.
Adjust all users.
(output_section_statement_newfunc): Rename from
output_statement_newfunc. Adjust all users.
(output_section_statement_table_init): Rename from
output_statement_table_init. Adjust all users.
(output_section_statement_table_free): Rename from
output_statement_table_free. Adjust all users.
2006-06-09 01:13:39 +00:00
Joseph Myers
6648b7cff9
bfd/doc:
...
* bfd.texinfo: Remove local @tex code.
bfd:
* po/Make-in (pdf, ps): New dummy targets.
binutils:
* po/Make-in (pdf, ps): New dummy targets.
gas:
* po/Make-in (pdf, ps): New dummy targets.
gprof:
* po/Make-in (pdf, ps): New dummy targets.
ld:
* po/Make-in (pdf, ps): New dummy targets.
opcodes:
* po/Make-in (pdf, ps): New dummy targets.
2006-06-07 15:38:01 +00:00
Alan Modra
02a38f9286
* ldlang.h (enum section_type): Delete dsect_section, copy_section,
...
info_section and overlay_section. Add noalloc_section.
* ldlang.c (lang_add_section): Adjust.
* ldgram.y (type): Adjust.
2006-06-07 04:55:11 +00:00
Alan Modra
65864bd2a6
* ld-elfvers/vers.exp (objdump_versionstuff): Allow versions in
...
any order.
* ld-elfvers/vers1.ver: Update.
* ld-elfvers/vers2.ver: Update.
* ld-elfvers/vers4a.ver: Update.
* ld-elfvers/vers7a.ver: Update.
* ld-elfvers/vers8.ver: Update.
* ld-elfvers/vers9.ver: Update.
* ld-elfvers/vers15.ver: Update.
* ld-elfvers/vers16a.ver: Update.
* ld-elfvers/vers17.ver: Update.
* ld-elfvers/vers18.ver: Update.
* ld-elfvers/vers20.ver: Update.
* ld-elfvers/vers20a.ver: Update.
* ld-elfvers/vers21.ver: Update.
* ld-elfvers/vers22a.ver: Update.
* ld-elfvers/vers22b.ver: Update.
* ld-elfvers/vers23a.ver: Update.
* ld-elfvers/vers23b.ver: Update.
* ld-elfvers/vers23c.ver: Update.
* ld-elfvers/vers25a.ver: Update.
* ld-elfvers/vers26a.ver: Update.
* ld-elfvers/vers27a.ver: Update.
* ld-elfvers/vers27d.ver: Update.
* ld-elfvers/vers28b.ver: Update.
* ld-elfvers/vers29.ver: Update.
* ld-elfvers/vers30.ver: Update.
* ld-elfvers/vers31.ver: Update.
2006-06-06 04:30:21 +00:00
Alan Modra
e0f6802f19
* ldlang.c (init_os): Whitespace.
...
(map_input_to_output_sections): Don't init_os for lang_input_section.
(print_all_symbols): Remove forward declaration. Convert to ISO C.
2006-06-06 02:24:33 +00:00
Daniel Jacobowitz
4cfe2c59ff
bfd/, binutils/, gas/, gprof/, ld/, opcodes/
...
* po/Make-in (top_builddir): Define.
2006-06-05 14:04:05 +00:00
Alan Modra
bac7e5292c
* ld-elf/sec64k.exp: Add "main" symbol. Use dc.a for addresses.
...
Cater for different address sizes. Match end of line when
comparing symbols.
* ld-elf/start.s: Use dc.a for addresses.
2006-06-05 12:53:50 +00:00
Alan Modra
65ede3f489
* ldexp.c (exp_get_abs_int): Make error message the same as
...
others emitted in this file.
2006-06-05 12:45:34 +00:00
Alan Modra
8c61c1533b
* config.in: Regenerate.
2006-06-05 12:30:16 +00:00
Alan Modra
87aa7f19be
* ldlang.c (lookup_name): Delete dead code. Remove FIXMEs.
2006-06-05 06:12:40 +00:00
Alan Modra
e13629bc07
* emultempl/elf32.em (global_found): Make it a pointer.
...
(stat_needed, try_needed): Adjust.
(check_needed): Don't skip non-loaded as-needed entries. Only
consider entries with both filename and the_bfd non-null.
(after_open): Try loading non-loaded as-needed libs to satisfy
DT_NEEDED libs.
2006-06-03 02:45:26 +00:00
Joseph Myers
e10fad1212
binutils:
...
* doc/Makefile.am (TEXI2DVI): Define.
* doc/Makefile.in: Regenerate.
gas:
* doc/Makefile.am (TEXI2DVI): Define.
* doc/Makefile.in: Regenerate.
* doc/c-arc.texi: Fix typo.
ld:
* Makefile.am (TEXI2DVI): Add -I $(top_srcdir)/../libiberty.
* Makefile.in: Regenerate.
2006-06-02 23:08:12 +00:00
Alan Modra
92c6c67a5d
* ld-powerpc/tlsexe.r: Update for removal of some section syms.
...
* ld-powerpc/tlsexetoc.r: Likewise.
* ld-powerpc/tlsso.r: Likewise.
* ld-powerpc/tlstocso.r: Likewise.
* ld-s390/tlsbin_64.rd: Likewise.
* ld-s390/tlspic_64.rd: Likewise.
2006-06-02 07:53:30 +00:00
Alan Modra
f0b5bb34d5
bfd/
...
PR ld/2723
* elflink.c (bfd_elf_final_link): Don't output section symbols
for special ELF sections.
ld/testsuite/
Update for removal of some section syms.
2006-06-02 00:32:00 +00:00
H.J. Lu
1224efb888
include/elf/
...
2006-05-31 H.J. Lu <hongjiu.lu@intel.com>
* internal.h (ELF_SECTION_SIZE): New.
(ELF_IS_SECTION_IN_SEGMENT): Likewise.
(ELF_IS_SECTION_IN_SEGMENT_FILE): Updated.
(ELF_IS_SECTION_IN_SEGMENT_MEMORY): Likewise.
ld/testsuite/
2006-05-31 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/binutils.exp: Make it Linux only.
(strip_test): Renamed to binutils_test. Check for unsupported
options.
Add more tests.
* ld-elf/commonpage1.d: Make it Linux only.
* ld-elf/maxpage1.d: Likewise.
* ld-elf/maxpage1.s: Add main, start and __start.
* ld-elf/maxpage2.d: New file.
* ld-elf/tbss1.s: Likewise.
* ld-elf/tbss2.s: Likewise.
* ld-elf/tdata1.s: Likewise.
* ld-elf/tdata2.s: Likewise.
2006-06-01 05:40:24 +00:00
Daniel Jacobowitz
20e95c23ab
Configury changes: update src repository (binutils, gdb, and rda) to use
...
config/gettext-sister.m4 instead of the old gettext.m4. Regenerate all
affected autotools files. Include intl in gdb releases again.
2006-05-31 15:14:46 +00:00
H.J. Lu
24718e3ba5
bfd/
...
2006-05-30 H.J. Lu <hongjiu.lu@intel.com>
* bfd.c (bfd_emul_get_maxpagesize): New.
(bfd_elf_set_pagesize): Likewise.
(bfd_emul_set_maxpagesize): Likewise.
(bfd_emul_get_commonpagesize): Likewise.
(bfd_emul_set_commonpagesize): Likewise.
* bfd-in2.h: Regenerated.
* elf-bfd.h (elf_backend_data): Add commonpagesize.
(xvec_get_elf_backend_data): New.
(get_elf_backend_data): Use xvec_get_elf_backend_data.
* elf32-arm.c (elf32_arm_vxworks_bed): Remove const.
* elfxx-target.h (elfNN_bed): Likewise.
* elf32-arm.c (ELF_COMMONPAGESIZE): Defined.
* elf32-mips.c (ELF_COMMONPAGESIZE): Likewise.
* elf32-ppc.c (ELF_COMMONPAGESIZE): Likewise.
* elf32-sh.c (ELF_COMMONPAGESIZE): Likewise.
* elf32-sh64.c (ELF_COMMONPAGESIZE): Likewise.
* elf32-sparc.c (ELF_COMMONPAGESIZE): Likewise.
* elf64-alpha.c (ELF_COMMONPAGESIZE): Likewise.
* elf64-ppc.c (ELF_COMMONPAGESIZE): Likewise.
* elf64-sparc.c (ELF_COMMONPAGESIZE): Likewise.
* elf64-x86-64.c (ELF_COMMONPAGESIZE): Likewise.
* elfn32-mips.c (ELF_COMMONPAGESIZE): Likewise.
* elfxx-ia64.c (ELF_COMMONPAGESIZE): Likewise.
* elfxx-target.h (ELF_COMMONPAGESIZE): Define if not defined.
(elfNN_bed): Initialize commonpagesize with ELF_COMMONPAGESIZE.
* targets.c (bfd_find_target): Support NULL abfd.
ld/
2006-05-30 H.J. Lu <hongjiu.lu@intel.com>
* emulparams/arcelf.sh (MAXPAGESIZE): Changed to
"CONSTANT (MAXPAGESIZE)".
* emulparams/armelf_nbsd.sh: Likewise.
* emulparams/armelf_vxworks.sh: Likewise.
* emulparams/armnto.sh: Likewise.
* emulparams/armsymbian.sh: Likewise.
* emulparams/crislinux.sh: Likewise.
* emulparams/elf32_i860.sh: Likewise.
* emulparams/elf32_i960.sh: Likewise.
* emulparams/elf32am33lin.sh: Likewise.
* emulparams/elf32bfinfd.sh: Likewise.
* emulparams/elf32bmipn32-defs.sh: Likewise.
* emulparams/elf32frvfd.sh: Likewise.
* emulparams/elf32i370.sh: Likewise.
* emulparams/elf32lppcnto.sh: Likewise.
* emulparams/elf32mcore.sh: Likewise.
* emulparams/elf32openrisc.sh: Likewise.
* emulparams/elf32ppcnto.sh: Likewise.
* emulparams/elf32ppcwindiss.sh: Likewise.
* emulparams/elf32vax.sh: Likewise.
* emulparams/elf32xc16x.sh: Likewise.
* emulparams/elf32xc16xl.sh: Likewise.
* emulparams/elf32xc16xs.sh: Likewise.
* emulparams/elf64_aix.sh: Likewise.
* emulparams/elf64hppa.sh: Likewise.
* emulparams/elf64mmix.sh: Likewise.
* emulparams/elf_i386_be.sh: Likewise.
* emulparams/elf_i386_chaos.sh: Likewise.
* emulparams/elf_i386_ldso.sh: Likewise.
* emulparams/hppa64linux.sh: Likewise.
* emulparams/hppalinux.sh: Likewise.
* emulparams/hppaobsd.sh: Likewise.
* emulparams/i386lynx.sh: Likewise.
* emulparams/i386moss.sh: Likewise.
* emulparams/i386nto.sh: Likewise.
* emulparams/i386nw.sh: Likewise.
* emulparams/m32relf_linux.sh: Likewise.
* emulparams/m68kpsos.sh: Likewise.
* emulparams/or32elf.sh: Likewise.
* emulparams/pjelf.sh: Likewise.
* emulparams/pjlelf.sh: Likewise.
* emulparams/ppclynx.sh: Likewise.
* emulparams/ppcnw.sh: Likewise.
* emulparams/shelf32_nbsd.sh : Likewise.
* emulparams/shelf_nbsd.sh: Likewise.
* emulparams/shelf_nto.sh: Likewise.
* emulparams/shlelf_nto.sh: Likewise.
* emulparams/xtensa-config.sh: Likewise.
* emulparams/armelf_linux.sh (MAXPAGESIZE): Changed to
"CONSTANT (MAXPAGESIZE)".
(COMMONPAGESIZE): Changed to "CONSTANT (COMMONPAGESIZE)".
* emulparams/elf32_sparc.sh: Likewise.
* emulparams/elf32bmip.sh: Likewise.
* emulparams/elf32ppccommon.sh: Likewise.
* emulparams/elf64_ia64.sh: Likewise.
* emulparams/elf64_s390.sh: Likewise.
* emulparams/elf64_sparc.sh: Likewise.
* emulparams/elf64alpha.sh: Likewise.
* emulparams/elf64ppc.sh: Likewise.
* emulparams/elf_i386.sh: Likewise.
* emulparams/elf_i386_vxworks.sh: Likewise.
* emulparams/elf_s390.sh: Likewise.
* emulparams/elf_x86_64.sh: Likewise.
* emulparams/shlelf32_linux.sh: Likewise.
* emulparams/shlelf_linux.sh: Likewise.
* emulparams/elf32bmipn32.sh (COMMONPAGESIZE): Changed to
"CONSTANT (COMMONPAGESIZE)".
* emulparams/elf32btsmipn32.sh: Likewise.
* emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Add
"-z max-page-size=" and "-z common-page-size=".
(gld${EMULATION_NAME}_list_options): Likewise.
* ld.h (ld_config_type): Add maxpagesize and commonpagesize.
* ld.texinfo: Document "-z max-page-size=" and
"-z common-page-size=".
* ldexp.c (exp_print_token): Handle CONSTANT.
(fold_name): Likewise.
* ldgram.y: Likewise.
* ldlex.l: Likewise.
* ldmain.c (main): Initiliaze config.maxpagesize and
config.commonpagesize. Call bfd_emul_set_maxpagesize if
config.maxpagesize isn't 0. Call bfd_emul_set_commonpagesize if
config.commonpagesize config.maxpagesize isn't 0.
ld/testsuite/
2006-05-30 H.J. Lu <hongjiu.lu@intel.com>
* ld-elf/binutils.exp: New file.
* ld-elf/commonpage1.d: Likewise.
* ld-elf/maxpage1.d: Likewise.
* ld-elf/maxpage1.s: Likewise.
2006-05-30 16:45:32 +00:00
Nick Clifton
eebf07fbf5
Update Spanish translation
2006-05-30 11:01:59 +00:00
H.J. Lu
f7661549c7
bfd/
...
2006-05-25 H.J. Lu <hongjiu.lu@intel.com>
* elf64-x86-64.c (ELF_MAXPAGESIZE): Updated to 0x200000.
ld/
2006-05-25 H.J. Lu <hongjiu.lu@intel.com>
* emulparams/elf_x86_64.sh (MAXPAGESIZE): Updated to 0x200000.
ld/testsuite/
2006-05-25 H.J. Lu <hongjiu.lu@intel.com>
* ld-x86-64/tlsbin.dd: Updated for 2MB maximum page size.
* ld-x86-64/tlsbin.rd: Likewise.
* ld-x86-64/tlsbin.sd: Likewise.
* ld-x86-64/tlsbin.td: Likewise.
* ld-x86-64/tlsbindesc.dd: Likewise.
* ld-x86-64/tlsbindesc.rd: Likewise.
* ld-x86-64/tlsbindesc.sd: Likewise.
* ld-x86-64/tlsbindesc.td: Likewise.
* ld-x86-64/tlsdesc.dd: Likewise.
* ld-x86-64/tlsdesc.pd: Likewise.
* ld-x86-64/tlsdesc.rd: Likewise.
* ld-x86-64/tlsdesc.sd: Likewise.
* ld-x86-64/tlsdesc.td: Likewise.
* ld-x86-64/tlsgdesc.dd: Likewise.
* ld-x86-64/tlspic.dd: Likewise.
* ld-x86-64/tlspic.rd: Likewise.
* ld-x86-64/tlspic.sd: Likewise.
* ld-x86-64/tlspic.td: Likewise.
2006-05-26 02:44:19 +00:00
H.J. Lu
314e9a4e32
bfd/
...
2006-05-24 H.J. Lu <hongjiu.lu@intel.com>
PR ld/1485
* config.bfd: Set want64 to true if 64bit bfd is used.
(sh-*-linux*): Use targ64_selvecs for 64bit targets.
(sh*l*-*-netbsdelf*): Likewise.
(sh-*-netbsdelf*): Likewise.
(shl*-*-elf*): Likewise.
(sh[1234]l*-*-elf*): Likewise.
(sh3el*-*-elf*): Likewise.
(shl*-*-kaos*): Likewise.
(sh-*-elf*): Likewise.
(sh[1234]*-elf*): Likewise.
(sh-*-rtems*): Likewise.
(sh-*-kaos*): Likewise.
ld/
2006-05-24 H.J. Lu <hongjiu.lu@intel.com>
PR ld/1485
* configure.in: Use ${srcdir}/../bfd/config.bfd to check 64bit
bfd. Support 64bit host for --enable-targets=all.
* configure: Regenerated.
2006-05-25 01:03:09 +00:00
Paul Brook
4e617b1e97
2006-05-24 Paul Brook <paul@codesourcery.com>
...
bfd/
* elf-bfd.h (elf_backend_data): Add elf_backend_output_arch_local_syms
* elf32-arm.c (output_arch_syminfo): Define.
(elf32_arm_ouput_plt_map_sym, elf32_arm_output_plt_map,
elf32_arm_output_arch_local_syms): New functions.
(elf_backend_output_arch_local_syms): Define.
* elflink.c (bfd_elf_final_link): Call
elf_backend_output_arch_local_syms.
* elfxx-target.h (elf_backend_output_arch_local_syms): Provide default
definition.
(elfNN_bed): Add elf_backend_output_arch_local_syms.
ld/testsuite/
* ld-arm/arm-app-abs32.d: Update expected output.
* ld-arm/arm-app.d: Ditto.
* ld-arm/arm-lib-plt32.d: Ditto.
* ld-arm/arm-lib.d: Ditto.
* ld-arm/mixed-app-v5.d: Ditto.
* ld-arm/mixed-app.d: Ditto.
* ld-arm/mixed-lib.d: Ditto.
2006-05-24 17:10:02 +00:00
Nick Clifton
4a4d496a37
Updated Vietnamese and Irish translations
2006-05-24 07:54:45 +00:00
Nick Clifton
28c9d252b4
Add support for AVR6 family
2006-05-24 07:36:12 +00:00
H.J. Lu
f607ec8858
2006-05-23 H.J. Lu <hongjiu.lu@intel.com>
...
PR ld/2655
PR ld/2657
* ld-elf/eh1.d: New file.
* ld-elf/eh1.s: Likewise.
* ld-elf/eh1a.s: Likewise.
* ld-elf/eh2.d: Likewise.
* ld-elf/eh2a.s: Likewise.
* ld-elf/eh3.d: Likewise.
* ld-elf/eh3.s: Likewise.
* ld-elf/eh3a.s: Likewise.
2006-05-24 02:39:16 +00:00
Daniel Jacobowitz
943284cc7c
bfd/
...
* elflink.c (_bfd_elf_add_dynamic_entry): Remove DT_TEXTREL
check.
(bfd_elf_final_link): Add a late DT_TEXTREL check.
* elfxx-mips.c (MIPS_ELF_READONLY_SECTION): Define.
(mips_elf_create_dynamic_relocation): Set DF_TEXTREL.
(_bfd_mips_elf_check_relocs): Delete MIPS_READONLY_SECTION.
Use MIPS_ELF_READONLY_SECTION.
(_bfd_mips_elf_size_dynamic_sections): Clear DF_TEXTREL after
creating DT_TEXTREL.
(_bfd_mips_elf_finish_dynamic_sections): Clear textrel markers
if no text relocations were generated.
ld/testsuite/
* ld-mips-elf/textrel-1.d: Relax some patterns.
2006-05-22 15:06:23 +00:00
Nick Clifton
b7309adaf2
* scripttempl/elf32crx.sc (.rdata): Add .rodata.*.
2006-05-22 08:49:33 +00:00
Nick Clifton
03f4e42f06
fix typo
2006-05-22 08:45:46 +00:00
Nick Clifton
761d8d914d
* ld-eld/start.s (start): Add this symbol for SH targets.
...
(main): Add this symbol for HPPA targets.
2006-05-22 08:45:18 +00:00
Nick Clifton
7ff7c29e1f
Remove ChangeLog entries, since the template files were already up to date.
2006-05-22 08:30:57 +00:00
Nick Clifton
5002adadc5
Update translation templates
2006-05-22 08:25:15 +00:00
Alan Modra
9e328bda63
* ld-scripts/empty-orphan.d: Update again.
2006-05-19 11:50:31 +00:00
Alan Modra
c6f90868f6
* ld-scripts/empty-orphan.t: Discard .reginfo.
...
* ld-scripts/empty-orphan.d: Update.
2006-05-19 06:10:03 +00:00
Alan Modra
f0636a4439
* ldlang.c (lang_size_sections_1): Don't check mem regions for
...
os->ignored sections.
2006-05-19 06:09:31 +00:00
Daniel Jacobowitz
f86a87568d
* ldlang.c (lang_size_sections): Call lang_reset_memory_regions
...
before redoing one_lang_size_sections_pass.
2006-05-17 16:46:54 +00:00
Thiemo Seufer
1038890526
* ld-elfweak/size2.d, ld-elfweak/size2a.s, ld-elfweak/size2b.s:
...
Add __start as entry symbol.
2006-05-17 11:30:24 +00:00
Thiemo Seufer
c5eb39efda
* ld-elf/orphan.ld: Add placement for MIPS .reginfo section.
2006-05-16 13:58:51 +00:00
Paul Brook
b079691183
2006-05-15 Paul Brook <paul@codesourcery.com>
...
bfd/
* cpu-arm.c (bfd_is_arm_mapping_symbol_name): Rename ...
(bfd_is_arm_special_symbol_name): ... to this. Add type argument.
Check symbol name is of specified type.
* elf32-arm.c (elf32_arm_is_target_special_symbol,
arm_elf_find_function, elf32_arm_output_symbol_hook): Use
bfd_is_arm_special_symbol_name.
* bfd-in.h (BFD_ARM_SPECIAL_SYM_TYPE_MAP,
BFD_ARM_SPECIAL_SYM_TYPE_TAG, BFD_ARM_SPECIAL_SYM_TYPE_OTHER,
BFD_ARM_SPECIAL_SYM_TYPE_ANY): Define.
(bfd_is_arm_mapping_symbol_name): Remove prototype.
(bfd_is_arm_special_symbol_name): Add prototype.
* bfd-in2.h: Regenerate.
gas/
* config/tc-arm.c (arm_adjust_symtab): Use
bfd_is_arm_special_symbol_name.
ld/testsuite/
* ld-arm/arm-be8.d: New test.
* ld-arm/arm-be8.s: New test.
* ld-arm/arm-elf.exp: Add arm-be8.
2006-05-15 19:57:35 +00:00
H.J. Lu
30b2f8e793
2006-05-14 H.J. Lu <hongjiu.lu@intel.com>
...
* ld-elf/stab.d: Skip ia64-*-*.
2006-05-15 00:48:44 +00:00
Carlos O'Donell
370b66a128
bfd/doc/
...
2006-05-11 Carlos O'Donell <carlos@codesourcery.com>
* bfd.texinfo: Rename "Index" to "BFD Index"
gas/
2006-05-11 Carlos O'Donell <carlos@codesourcery.com>
* doc/as.texinfo: Rename "Index" to "AS Index",
and "ABORT" to "ABORT (COFF)".
ld/
2006-05-11 Carlos O'Donell <carlos@codesourcery.com>
* ld.texinfo: Rename "Index" to "LD Index"
2006-05-11 16:11:29 +00:00
Paul Brook
b6895b4f37
2006-05-11 Paul Brook <paul@codesourcery.com>
...
bfd/
* elf32-arm.c (elf32_arm_reloc_map): Add MOVW and MOVT relocs.
(elf32_arm_final_link_relocate): Handle MOVW and MOVT relocs.
(elf32_arm_gc_sweep_hook, elf32_arm_check_relocs): Ditto.
* reloc.c: Ditto.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.
* libcoff.h: Regenerate.
gas/
* config/tc-arm.c (parse_half): New function.
(operand_parse_code): Remove OP_Iffff. Add OP_HALF.
(parse_operands): Ditto.
(do_mov16): Reject invalid relocations.
(do_t_mov16): Ditto. Use Thumb reloc numbers.
(insns): Replace Iffff with HALF.
(md_apply_fix): Add MOVW and MOVT relocs.
(tc_gen_reloc): Ditto.
* doc/c-arm.texi: Document relocation operators
ld/testsuite/
* ld-arm/arm-elf.exp: Add arm-movwt.
* ld-arm/arm-movwt.d: New test.
* ld-arm/arm-movwt.s: New test.
* ld-arm/arm.ld: Add .far.
2006-05-11 15:17:34 +00:00
Alan Modra
b1f2595c5d
* ld-elf/stab.d: New.
2006-05-11 12:35:44 +00:00
Nick Clifton
53baae4870
Apply fixes to allow arm WinCE toolchain to produce working executables.
2006-05-11 08:48:58 +00:00
Thiemo Seufer
1cb571e976
* ld-elf/sec64k.exp: Extend for MIPS ELF.
2006-05-10 15:07:24 +00:00
Alan Modra
d1b46e8025
* ld-powerpc/tlsexetoc.r: Update for correction to tls optimization.
...
* ld-powerpc/tlsexetoc.g: Likewise.
2006-05-05 13:08:49 +00:00
Alan Modra
2a60a7a82c
* ld.texinfo: Document PowerPC and PowerPC64 options.
...
* gen-doc.texi: Enable.
2006-05-05 00:51:37 +00:00
Daniel Jacobowitz
38fc1cb168
binutils/
...
* doc/Makefile.am (AM_MAKEINFOFLAGS): New.
(TEXI2POD): Use AM_MAKEINFOFLAGS.
(config.texi): Don't set top_srcdir.
* doc/binutils.texi: Don't use top_srcdir.
* aclocal.m4, Makefile.in, doc/Makefile.in: Regenerated.
gas/
* doc/Makefile.am (AM_MAKEINFOFLAGS): New.
(TEXI2POD): Use AM_MAKEINFOFLAGS.
(asconfig.texi): Don't set top_srcdir.
* doc/as.texinfo: Don't use top_srcdir.
* aclocal.m4, Makefile.in, doc/Makefile.in: Regenerated.
ld/
* Makefile.am (AM_MAKEINFOFLAGS): Add libiberty.
(TEXI2POD): Use AM_MAKEINFOFLAGS.
(configdoc.texi): Don't set top_srcdir.
* ld.texinfo: Don't use top_srcdir.
* aclocal.m4, Makefile.in: Regenerated.
2006-05-02 14:20:46 +00:00
H.J. Lu
a78d2a672f
2006-05-02 H.J. Lu <hongjiu.lu@intel.com>
...
* ld-cdtest/cdtest-foo.cc (Foo::Foo): Add const to char *.
* ld-cdtest/cdtest-foo.h (Foo::Foo): Likewise.
* ld-srec/sr3.cc (Foo::Foo): Likewise.
2006-05-02 13:35:45 +00:00
Paul Brook
a8bc6c780e
2006-05-02 Paul Brook <paul@codesourcery.com>
...
bfd/
* elf32-arm.c (elf32_arm_final_link_relocate): Set thumb funciton bit
for R_ARM_REL32.
gas/
* config/tc-arm.c (arm_optimize_expr): New function.
* config/tc-arm.h (md_optimize_expr): Define
(arm_optimize_expr): Add prototype.
(TC_FORCE_RELOCATION_SUB_SAME): Define.
ld/testsuite/
* ld-arm/arm-elf.exp: Add thumb-rel32.
* ld-arm/thumb-rel32.d: New test.
* ld-arm/thumb-rel32.s: New test.
2006-05-02 13:09:18 +00:00
H.J. Lu
da54898db3
2006-04-26 H.J. Lu <hongjiu.lu@intel.com>
...
* ld-elfvers/vers.exp: Xfail vers7a, vers7, vers23a, vers23b,
vers23c, vers23d, vers23, vers25a, vers25b1, vers25b2, vers27a,
vers27b, vers27c1, vers27c2, vers27d4 and vers27d5 if PIC is
required.
2006-04-30 00:23:00 +00:00
H.J. Lu
eaa628a1d3
2006-04-25 H.J. Lu <hongjiu.lu@intel.com>
...
* ld-alpha/tlsbin.rd: Updated for readelf change.
* ld-alpha/tlsbinr.rd: Likewise.
* ld-alpha/tlspic.rd: Likewise.
2006-04-25 22:05:15 +00:00
Alan Modra
abe6ac950c
* ldlang.c (wild): Tidy default_common_section loop.
...
(print_input_section): Format.
2006-04-19 02:10:43 +00:00