Alan Modra
3285cf2c2f
daily update
2008-05-20 00:00:06 +00:00
Alan Modra
6ffd79000b
PR 2995, PR 6473
...
* elf.c (_bfd_elf_make_section_from_shdr): Leave lma equal to
vma when all p_paddr fields are zero and there is more than
one PT_LOAD header.
2008-05-19 06:06:03 +00:00
Alan Modra
15fdb6a4ef
daily update
2008-05-19 00:00:05 +00:00
Alan Modra
9993939649
daily update
2008-05-18 00:00:06 +00:00
Alan Modra
87096d2b26
daily update
2008-05-17 00:00:05 +00:00
Alan Modra
3560d16246
daily update
2008-05-16 00:00:05 +00:00
Nick Clifton
906e58cab5
bfd/
...
* elf32-arm.c (THM2_MAX_FWD_BRANCH_OFFSET): Define.
(THM2_MAX_BWD_BRANCH_OFFSET): Define.
(ARM_MAX_FWD_BRANCH_OFFSET): Define.
(ARM_MAX_BWD_BRANCH_OFFSET): Define.
(THM_MAX_FWD_BRANCH_OFFSET): Define.
(THM_MAX_BWD_BRANCH_OFFSET): Define.
(arm_long_branch_stub): Define.
(arm_pic_long_branch_stub): Define.
(arm_thumb_v4t_long_branch_stub): Define.
(arm_thumb_thumb_long_branch_stub): Define.
(arm_thumb_arm_v4t_long_branch_stub): Define.
(STUB_SUFFIX): Define.
(elf32_arm_stub_type): Define.
(elf32_arm_stub_hash_entry): Define.
(elf32_arm_link_hash_entry): Add stub_cache field.
(arm_stub_hash_lookup): Define.
(elf32_arm_link_hash_table): Add stub_hash_table, stub_bfd,
add_stub_section, layout_sections_again, stub_group, bfd_count,
top_index, input_list fields.
(elf32_arm_link_hash_newfunc): Init new field.
(stub_hash_newfunc): New function.
(elf32_arm_link_hash_table_create): Init stub_hash_table.
(elf32_arm_hash_table_free): New function.
(arm_type_of_stub): New function.
(elf32_arm_stub_name): New function.
(elf32_arm_get_stub_entry): New function.
(elf32_arm_stub_add_mapping_symbol): New function.
(elf32_arm_add_stub): New function.
(arm_build_one_stub): New function.
(arm_size_one_stub): New function.
(elf32_arm_setup_section_lists): New function.
(elf32_arm_next_input_section): New function.
(group_sections): New function.
(elf32_arm_size_stubs): New function.
(elf32_arm_build_stubs): New function.
(bfd_elf32_arm_add_glue_sections_to_bfd): Skip stub sections.
(bfd_elf32_arm_process_before_allocation): No longer handle
R_ARM_CALL and R_ARM_THM_CALL.
(using_thumb_only): New function.
(elf32_arm_final_link_relocate): Redirect calls to stub if range
exceeds encoding capabilities.
(bfd_elf32_bfd_link_hash_table_free): Define.
* bfd-in.h (R_ARM_max): Fix value to 130.
(elf32_arm_setup_section_lists): Protype.
(elf32_arm_next_input_section): Protype.
(elf32_arm_size_stubs): Protype.
(elf32_arm_build_stubs): Protype.
ld/
* emultempl/armelf.em (build_section_lists): New function.
(stub_file): Define.
(need_laying_out): Define.
(group_size): Define.
(hook_stub_info): Define.
(hook_in_stub): New function.
(elf32_arm_add_stub_section): New function.
(gldarm_layout_sections_again): New function.
(gld${EMULATION_NAME}_finish): Replace arm_elf_finish(). Generate
stubs for long calls if needed.
(arm_elf_create_output_section_statements): create stub_file bfd.
(arm_for_each_input_file_wrapper): New function.
(arm_lang_for_each_input_file): New function.
(lang_for_each_input_file): Define.
(PARSE_AND_LIST_PROLOGUE): Add option token OPTION_STUBGROUP_SIZE.
(PARSE_AND_LIST_LONGOPTS): Add option stub-group-size.
(PARSE_AND_LIST_OPTIONS): Add option stub-group-size.
(PARSE_AND_LIST_ARGS_CASES): Add OPTION_STUBGROUP_SIZE case.
(LDEMUL_FINISH): Update to gld${EMULATION_NAME}_finish.
* ld/lang.c (print_input_statement): Skip if bfd has
BFD_LINKER_CREATED.
ld/testsuite
* ld-arm/arm-elf.exp (armelftests): Add farcall-arm-arm,
farcall-arm-arm-pic-veneer, farcall-arm-arm-be8 farcall-arm-thumb,
farcall-arm-thumb-blx, farcall-arm-thumb-pic-veneer,
farcall-arm-thumb-blx-pic-veneer, farcall-thumb-thumb,
farcall-thumb-thumb-pic-veneer, farcall-thumb-thumb-blx,
farcall-thumb-thumb-m, farcall-thumb-thumb-m-pic-veneer,
farcall-thumb-thumb-blx-pic-veneer, farcall-thumb-arm,
farcall-thumb-arm-pic-veneer, farcall-thumb-arm-blx,
farcall-thumb-arm-blx-pic-veneer.
Change thumb2-bl-as-thumb1-bad, thumb2-bl-bad.
* ld-arm/thumb2-bl-as-thumb1-bad.d: Reflects farcall stub
generation.
* ld-arm/thumb2-bl-bad.d: Likewise.
* ld-arm/thumb2-bl-as-thumb1-bad.s: Update comments.
* ld-arm/thumb2-bl-bad.s: Likewise.
2008-05-15 17:00:15 +00:00
Alan Modra
13aeb833a1
daily update
2008-05-15 00:00:05 +00:00
Ulrich Weigand
86a4952b14
* elf32-ppc.c (ppc_elf_get_synthetic_symtab): Fix memset calls.
...
* elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Likewise.
2008-05-14 16:00:38 +00:00
Alan Modra
8944f3c277
update dependencies
2008-05-14 06:45:42 +00:00
Alan Modra
468392fb66
* elf32-ppc.c (section_covers_vma): New function.
...
(ppc_elf_get_synthetic_symtab): New function.
(bfd_elf32_get_synthetic_symtab): Define.
* elf64-ppc.c (section_covers_vma): New function.
(ppc64_elf_get_synthetic_symtab): Generate sym@plt on glink branch
table entries, and __glink_PLTresolve on resolver stub.
(ppc64_elf_build_stubs): Rename __glink sym to __glink_PLTresolve.
2008-05-14 02:21:19 +00:00
Alan Modra
1650e108ba
daily update
2008-05-14 00:00:05 +00:00
Alan Modra
e4c1685bab
daily update
2008-05-13 00:00:05 +00:00
Alan Modra
1d483afedd
PR 6443
...
* elf32-ppc.c (MUST_BE_DYN_RELOC): Delete.
(must_be_dyn_reloc): New function.
(ppc_elf_check_relocs): Don't set DF_STATIC_TLS for tprel relocs
in pies.
(ppc_elf_tls_optimize): Optimise pies.
(ppc_elf_relocate_section): Use a section symbol rather than no
symbol if possible for LD->IE TLS sequence, but don't error if
we must use no symbol.
* elf64-ppc.c (MUST_BE_DYN_RELOC): As for elf32-ppc.c.
(must_be_dyn_reloc): Likewise.
(ppc64_elf_check_relocs): Likewise.
(ppc64_elf_tls_optimize): Likewise.
(ppc64_elf_relocate_section): Likewise.
2008-05-12 12:47:47 +00:00
Alan Modra
cc5ca406f9
* elf32-spu.c (spu_elf_relocate_section): Rename is_ea to is_ea_sym.
2008-05-12 12:22:53 +00:00
Alan Modra
01cc54cfcd
daily update
2008-05-12 00:00:06 +00:00
Alan Modra
efd14abde9
daily update
2008-05-11 00:00:06 +00:00
Alan Modra
536d0ff40e
* elfcore.h (elf_core_file_p): Warn about core truncation.
2008-05-10 01:58:17 +00:00
Alan Modra
14a720a133
daily update
2008-05-10 00:00:06 +00:00
Alan Modra
e8525b24f4
daily update
2008-05-09 00:00:05 +00:00
Alan Modra
311b556392
daily update
2008-05-08 00:00:05 +00:00
Bob Wilson
51c8ebc1d0
bfd/
...
* elf32-xtensa.c (xtensa_property_section_name): New.
(xtensa_make_property_section): New.
(xtensa_get_property_section): Make static. Do not create a new
section if it does not exist.
gas/
* config/tc-xtensa.c (xtensa_create_property_segments): Use
xtensa_make_property_section instead of xtensa_get_property_section.
(xtensa_create_xproperty_segments): Likewise.
2008-05-07 23:13:09 +00:00
Alan Modra
8374f9d4b5
bfd/
...
* elf32-spu.c (spu_elf_special_sections): Add "._ea".
(spu_elf_relocate_section): Handle relocations against symbols
defined in ._ea specially.
binutils/
* embedspu.sh: Take note of R_SPU_PPU32/64 relocs without a symbol,
and if present, put image in ".data.speelf". Put program handle
in ".data.spehandle".
ld/emulparams/
* elf32_spu.sh (OTHER_SECTIONS): Add "._ea".
* elf32ppc.sh: If building with spu support, put ".data.spehandle"
sections at the start of ".data" and provide a symbol to locate
the directory of embedded spe programs.
ld/testsuite/
* ld-spu/ear.s: Align various sections.
* ld-spu/embed.rd: Update.
2008-05-07 14:46:44 +00:00
Alan Modra
567f807c66
daily update
2008-05-07 00:00:05 +00:00
Alan Modra
00d1674256
daily update
2008-05-06 00:00:05 +00:00
Alan Modra
0768d95b23
daily update
2008-05-05 00:00:06 +00:00
Alan Modra
e551b91b02
daily update
2008-05-04 00:00:05 +00:00
Daniel Jacobowitz
95720a8625
* elf32-arm.c (elf32_arm_symbian_link_hash_table_create): Use
...
ARRAY_SIZE.
(elf32_arm_symbian_plt_sym_val): New.
(elf_backend_plt_sym_val): Define.
2008-05-03 15:36:34 +00:00
Alan Modra
5c44b38ef6
PR 2995, PR 6473
...
* elf.c (rewrite_elf_program_header): Rather than clearing
p_paddr_valid at end, don't set it in the first place. Delete
comment no longer relevant. When not p_paddr_valid, don't set
paddr from vaddr, and don't set p_vaddr_offset.
2008-05-03 05:18:02 +00:00
Alan Modra
4383e50aa7
daily update
2008-05-03 00:00:05 +00:00
Alan Modra
a99f88dcfc
daily update
2008-05-02 00:00:05 +00:00
Cary Coutant
3471d59d31
* elf.c (bfd_elf_get_str_section): Fix memory leak caused by
...
corrupt string table.
2008-05-01 17:06:52 +00:00
Joel Brobecker
f12a02c018
* cache.c (cache_bread_1): Renames cache_bread.
...
(cache_bread): New function.
2008-05-01 15:45:43 +00:00
Alan Modra
889677147d
PR 2995, PR 6473
...
* elf.c (_bfd_elf_make_section_from_shdr): Always set lma from p_paddr.
(assign_file_positions_for_load_sections): Combine nested "if".
(copy_elf_program_header): Don't set p_paddr_valid or p_vaddr_offset
when all header p_paddr fields are zero.
2008-05-01 14:13:58 +00:00
Alan Modra
9fdcc737cc
daily update
2008-05-01 00:00:06 +00:00
Alan Modra
9239aded50
missed from 20080414 commit for e500mc support
2008-04-30 06:47:24 +00:00
Alan Modra
7113306b60
daily update
2008-04-30 00:00:06 +00:00
Daniel Jacobowitz
266b05cf76
* elf.c (_bfd_elf_get_dynamic_reloc_upper_bound)
...
(_bfd_elf_canonicalize_dynamic_reloc): Find dynamic relocations
even if they are not loaded.
* elflink.c (_bfd_elf_init_2_index_sections): Set data_index_section
first.
* ld-arm/symbian-seg1.s, ld-arm/symbian-seg1.d: New files.
* ld-arm/arm-elf.exp: Run symbian-seg1.
2008-04-29 11:53:45 +00:00
Alan Modra
2b79f900dc
daily update
2008-04-29 00:00:05 +00:00
Alan Modra
03ffc2d0a6
daily update
2008-04-28 00:00:05 +00:00
Alan Modra
2836c85068
daily update
2008-04-27 00:00:05 +00:00
Alan Modra
4c8a3dd20c
daily update
2008-04-26 00:00:04 +00:00
Nick Clifton
fc2db3b82b
* reloc16.c (bfd_coff_reloc16_get_value): Add support for
...
undefined weak symbols.
2008-04-25 16:02:43 +00:00
Nick Clifton
ddeca4680f
* po/vi.po: Updated Vietnamese translation.
2008-04-25 14:52:23 +00:00
Alan Modra
55ada6d956
daily update
2008-04-25 00:00:05 +00:00
Alan Modra
7011b767d8
daily update
2008-04-24 00:00:04 +00:00
H.J. Lu
6194aaaba7
bfd/
...
2008-04-23 Paolo Bonzini <bonzini@gnu.org>
* aclocal.m4: Regenerate.
* configure: Regenerate.
binutils/
2008-04-23 Paolo Bonzini <bonzini@gnu.org>
* aclocal.m4: Regenerate.
* configure: Regenerate.
gas/
2008-04-23 Paolo Bonzini <bonzini@gnu.org>
* aclocal.m4: Regenerate.
* configure: Regenerate.
gold/
2008-04-23 Paolo Bonzini <bonzini@gnu.org>
* aclocal.m4: Regenerate.
* configure: Regenerate.
gprof/
2008-04-23 Paolo Bonzini <bonzini@gnu.org>
* aclocal.m4: Regenerate.
* configure: Regenerate.
ld/
2008-04-23 Paolo Bonzini <bonzini@gnu.org>
* aclocal.m4: Regenerate.
* configure: Regenerate.
opcodes/
2008-04-23 Paolo Bonzini <bonzini@gnu.org>
* aclocal.m4: Regenerate.
* configure: Regenerate.
2008-04-23 16:11:47 +00:00
Alan Modra
4f2658a76f
daily update
2008-04-23 00:00:05 +00:00
Cary Coutant
38d6ea5b02
* archive.c (_bfd_write_archive_contents): Fix incorrect use of
...
ARFMAG.
2008-04-22 00:12:23 +00:00
Alan Modra
cc0dcea88a
daily update
2008-04-22 00:00:06 +00:00