2008-08-08 Richard Sandiford <rdsandiford@googlemail.com>
Daniel Jacobowitz <dan@codesourcery.com>
Catherine Moore <clm@codesourcery.com>
Mark Shinwell <shinwell@codesourcery.com>
Maxim Kuvyrkov <maxim@codesourcery.com>
* elf32-mips.c (mips_vxworks_copy_howto_rela): Replace with...
(elf_mips_copy_howto): ...this howto. Clear the size fields.
(mips_vxworks_jump_slot_howto_rela): Replace with...
(elf_mips_jump_slot_howto): ...this howto.
(bfd_elf32_bfd_reloc_type_lookup): Handle BFD_RELOC_MIPS_COPY
and BFD_RELOC_MIPS_JUMP_SLOT.
(bfd_elf32_bfd_reloc_name_lookup): Handle "R_MIPS_COPY" and
"R_MIPS_JUMP_SLOT".
(mips_elf32_rtype_to_howto): Handle R_MIPS_COPY and R_MIPS_JUMP_SLOT.
(elf_backend_plt_readonly): Define.
(elf_backend_plt_sym_val): Define for non-VxWorks targets.
(mips_vxworks_bfd_reloc_type_lookup): Delete.
(mips_vxworks_bfd_reloc_name_lookup): Likewise.
(mips_vxworks_rtype_to_howto): Likewise.
(elf_backend_want_dynbss): Don't define for VxWorks.
(elf_backend_plt_readonly): Likewise.
(bfd_elf32_bfd_reloc_type_lookup): Likewise.
(bfd_elf32_bfd_reloc_name_lookup): Likewise.
(elf_backend_mips_rtype_to_howto): Likewise.
(elf_backend_adjust_dynamic_symbol): Likewise.
(elf_backend_got_symbol_offset): Don't define.
* elfn32-mips.c (elf_mips_copy_howto, elf_mips_jump_slot_howto): New.
(bfd_elf32_bfd_reloc_type_lookup): Handle BFD_RELOC_MIPS_COPY
and BFD_RELOC_MIPS_JUMP_SLOT.
(bfd_elf32_bfd_reloc_name_lookup): Handle "R_MIPS_COPY" and
"R_MIPS_JUMP_SLOT".
(mips_elf32_n32_rtype_to_howto): Handle R_MIPS_COPY and
R_MIPS_JUMP_SLOT.
(elf_backend_rela_plts_and_copies_p, elf_backend_plt_readonly)
(elf_backend_plt_sym_val): Define.
* elf64-mips.c (elf_mips_copy_howto, elf_mips_jump_slot_howto): New.
(bfd_elf64_bfd_reloc_type_lookup): Handle BFD_RELOC_MIPS_COPY
and BFD_RELOC_MIPS_JUMP_SLOT.
(bfd_elf64_bfd_reloc_name_lookup): Handle "R_MIPS_COPY" and
"R_MIPS_JUMP_SLOT".
(mips_elf64_rtype_to_howto): Handle R_MIPS_COPY and R_MIPS_JUMP_SLOT.
(elf_backend_rela_plts_and_copies_p, elf_backend_plt_readonly)
(elf_backend_plt_sym_val): Define.
* elfxx-mips.h (_bfd_mips_vxworks_adjust_dynamic_symbol): Delete.
(_bfd_mips_elf_use_plts_and_copy_relocs, _bfd_mips_elf_init_stubs)
(_bfd_mips_elf_plt_sym_val, _bfd_mips_post_process_headers): Declare.
* elfxx-mips.c (mips_elf_la25_stub): New structure.
(LA25_LUI, LA25_J, LA25_ADDIU): New macros.
(mips_elf_link_hash_entry): Add "la25_stubs", "has_static_relocs"
and "has_nonpic_branches" fields. Remove "is_relocation_target" and
"is_branch_target".
(mips_elf_link_hash_table): Add blank lines. Add
"use_plts_and_copy_relocs", "reserved_gotno", "strampoline",
"la25_stubs" and "add_stub_section" fields.
(mips_htab_traverse_info): New structure.
(PIC_OBJECT_P, MIPS_ELF_LOAD_WORD): New macros.
(MIPS_RESERVED_GOTNO): Delete.
(mips_o32_exec_plt0_entry, mips_n32_exec_plt0_entry)
(mips_n64_exec_plt0_entry, mips_exec_plt_entry): New tables.
(mips_elf_link_hash_newfunc): Update after the changes to
mips_elf_link_hash_entry.
(mips_elf_check_mips16_stubs): Replace the DATA parameter with
an INFO parameter. Don't look through warnings symbols here;
do it in mips_elf_check_symbols instead.
(mips_elf_create_stub_symbol): New function.
(mips_elf_la25_stub_hash, mips_elf_la25_stub_eq): New functions.
(_bfd_mips_elf_init_stubs, mips_elf_local_pic_function_p): Likewise.
(mips_elf_add_la25_intro, mips_elf_add_la25_trampoline): Likewise.
(mips_elf_add_la25_stub, mips_elf_check_symbols): New functions.
(mips_elf_gotplt_index): Check for VxWorks.
(mips_elf_output_dynamic_relocation): Take the relocation index
as an extra parameter. Do not increment reloc_count here.
(mips_elf_initialize_tls_slots): Update the calls to
mips_elf_output_dynamic_relocation accordingly.
(mips_elf_multi_got): Use htab->reserved_gotno instead of
MIPS_RESERVED_GOTNO.
(mips_elf_create_got_section): Don't allocate reserved GOT
entries here. Unconditionally create .got.plt, but don't
set its alignment here.
(mips_elf_relocation_needs_la25_stub): New function.
(mips_elf_calculate_relocation): Redirect branches and jumps to
a non-PIC stub if one exists. Check !h->has_static_relocs instead
of !htab->is_vxworks when deciding whether to create dynamic
relocations for R_MIPS_32, R_MIPS_REL32 and R_MIPS_64.
(_bfd_mips_elf_create_dynamic_sections): Unconditionally call
_bfd_elf_create_dynamic_sections. Unconditionally set up
htab->splt and htab->sdynbss. Set htab->srelplt to ".rel.plt"
if !htab->is_vxworks. Add non-VxWorks values of
htab->plt_header_size and htab->plt_entry_size.
(_bfd_mips_elf_check_relocs): Set pointer_equality_needed for
non-branch static relocations. Set has_nonpic_branches when an la25
stub might be required. Set can_make_dynamic_p to TRUE if R_MIPS_32,
R_MIPS_REL32 and R_MIPS_64 relocations can be made dynamic,
rather than duplicating the condition. Do not make them dynamic
for read-only sections in non-PIC executable objects.
Do not protect this code with dynobj == NULL || htab->sgot == NULL;
handle each group of cases separately. Add a default case that
sets has_static_relocs for non-GOT relocations that cannot be
made dynamic. Don't set is_relocation_target and is_branch_target.
Reject non-PIC static relocations in shared objects.
(_bfd_mips_vxworks_adjust_dynamic_symbol): Fold into...
(_bfd_mips_elf_adjust_dynamic_symbol): ...here, using
htab->use_plts_and_copy_relocs instead of htab->is_vxworks
to select PLT and copy-reloc handling. Set the alignment of
.plt and .got.plt when allocating the first entry. Generalize
code to handle REL as well as RELA sections and 64-bit as well as
32-bit GOT entries. Complain if we find a static-only reloc
against an externally-defined symbol and if we cannot create
dynamic relocations for it. Allocate copy relocs using
mips_elf_allocate_dynamic_relocations on non-VxWorks targets.
Set possibly_dynamic_relocs to 0 when using PLTs or copy relocs.
Skip reserved .got.plt entries.
(_bfd_mips_elf_always_size_sections): Use mips_elf_check_symbols
instead of mips_elf_check_mips16_stubs to process each symbol.
Do the traversal for relocatable objects too.
(mips_elf_lay_out_got): Use htab->reserved_gotno instead of
MIPS_RESERVED_GOTNO.
(_bfd_mips_elf_size_dynamic_sections): Exclude sdynbss if it
is empty. Extend the DT_PLTREL, DT_JMPREL and DT_PLTRELSZ handling
to non-VxWorks targets. Only add DT_REL{,A}, DT_REL{,A}SZ and
DT_REL{,A}ENT if .rel.dyn is nonempty. Create a symbol for the
PLT. Allocate a nop at the end of the PLT. Allocate DT_MIPS_PLTGOT.
(mips_elf_create_la25_stub_info): New function.
(_bfd_mips_elf_finish_dynamic_symbol): Write out PLT entries
and copy relocs where necessary. Check pointer_equality_needed.
(mips_finish_exec_plt): New function.
(_bfd_mips_elf_finish_dynamic_sections): Always set DT_PLTGOT
to the beginning of htab->sgot. Use htab->reserved_gotno instead
of MIPS_RESERVED_GOTNO. Assert htab->use_plts_and_copy_relocs
instead of htab->is_vxworks for DT_PLTREL, DT_PLTRELSZ and DT_JMPREL.
Set DT_PLTREL to DT_REL instead of DT_RELA on non-VxWorks targets.
Use mips_finish_exec_plt to create non-VxWorks PLT headers. Set
DT_MIPS_PLTGOT.
(_bfd_mips_elf_copy_indirect_symbol): Copy has_static_relocs
from the indirect symbol to the direct symbol. Also copy
has_nonpic_branches for indirect symbols.
(_bfd_mips_elf_get_target_dtag): Handle DT_MIPS_PLTGOT and
DT_MIPS_RWPLT.
(_bfd_mips_elf_link_hash_table_create): Initialize the new
mips_elf_link_hash_table fields.
(_bfd_mips_vxworks_link_hash_table_create): Set
use_plts_and_copy_relocs to TRUE. Use TRUE rather than 1
when setting is_vxworks.
(_bfd_mips_elf_use_plts_and_copy_relocs): New function.
(_bfd_mips_elf_final_link): Call mips_elf_create_la25_stub for
each la25_stub.
(_bfd_mips_elf_merge_private_bfd_data): Treat dynamic objects
as PIC. Generalize message about linking PIC and non-PIC.
(_bfd_mips_elf_plt_sym_val, _bfd_mips_post_process_headers): New
functions.
* reloc.c: Update comment near BFD_RELOC_MIPS_JUMP_SLOT.
* bfd-in2.h: Regenerated.
2008-08-08 Richard Sandiford <rdsandiford@googlemail.com>
Daniel Jacobowitz <dan@codesourcery.com>
Catherine Moore <clm@codesourcery.com>
Mark Shinwell <shinwell@codesourcery.com>
* readelf.c (get_mips_symbol_other): Handle STO_MIPS_PLT and
STO_MIPS_PIC.
(slurp_rela_relocs, slurp_rel_relocs): Handle MIPS ELF64 here.
(dump_relocations, debug_apply_relocations): Don't handle it here.
(get_mips_dynamic_type): Handle DT_MIPS_PLTGOT and DT_MIPS_RWPLT.
(print_mips_pltgot_entry): New function.
(process_mips_specific): Dump the PLT GOT.
2008-08-08 Richard Sandiford <rdsandiford@googlemail.com>
Daniel Jacobowitz <dan@codesourcery.com>
* config/tc-mips.c (OPTION_CALL_NONPIC): New macro.
(OPTION_NON_SHARED, OPTION_XGOT, OPTION_MABI, OPTION_32)
(OPTION_N32, OPTION_64, OPTION_MDEBUG, OPTION_NO_MDEBUG)
(OPTION_PDR, OPTION_NO_PDR, OPTION_MVXWORKS_PIC): Bump by 1.
(md_longopts): Add -call_nonpic.
(md_parse_option): Handle OPTION_CALL_NONPIC.
(md_show_usage): Add -call_nonpic.
2008-08-08 Richard Sandiford <rdsandiford@googlemail.com>
* gas/mips/call-nonpic-1.s, gas/mips/call-nonpic-1.d: New test.
* gas/mips/mips.exp: Run it.
2008-08-08 Richard Sandiford <rdsandiford@googlemail.com>
Daniel Jacobowitz <dan@codesourcery.com>
Catherine Moore <clm@codesourcery.com>
Mark Shinwell <shinwell@codesourcery.com>
* mips.h (STO_MIPS_PLT, ELF_ST_IS_MIPS_PLT, ELF_ST_SET_MIPS_PLT)
(STO_MIPS_PIC, DT_MIPS_PLTGOT, DT_MIPS_RWPLT): New macros.
2008-08-08 Richard Sandiford <rdsandiford@googlemail.com>
Daniel Jacobowitz <dan@codesourcery.com>
* emulparams/elf32bmip.sh (GOT): Define, moving .got.plt to...
(OTHER_RELRO_SECTIONS, OTHER_READWRITE_SECTIONS): ...one of these
two variables.
* emulparams/elf32bmipn32-defs.sh: Likewise.
* emultempl/mipself.em: Include ldctor.h, elf/mips.h and elfxx-mips.h.
(is_mips_elf): New macro.
(stub_file, stub_bfd): New variables.
(hook_stub_info): New structure.
(hook_in_stub): New function.
(mips_add_stub_section): Likewise.
(mips_create_output_section_statements): Likewise.
(mips_before_allocation): Likewise.
(real_func): New variable.
(mips_for_each_input_file_wrapper): New function.
(mips_lang_for_each_input_file): Likewise.
(lang_for_each_input_file): Define.
(LDEMUL_BEFORE_ALLOCATION): Likewise.
(LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Likewise.
2008-08-08 Richard Sandiford <rdsandiford@googlemail.com>
Daniel Jacobowitz <dan@codesourcery.com>
* ld-mips-elf/mips16-pic-3a.s,
ld-mips-elf/mips16-pic-3b.s,
ld-mips-elf/mips16-pic-3.dd,
ld-mips-elf/mips16-pic-3.gd,
ld-mips-elf/mips16-pic-3.rd,
ld-mips-elf/mips16-pic-3.inc,
ld-mips-elf/pic-and-nonpic-1a.s,
ld-mips-elf/pic-and-nonpic-1b.s,
ld-mips-elf/pic-and-nonpic-1.ld,
ld-mips-elf/pic-and-nonpic-1.dd,
ld-mips-elf/pic-and-nonpic-1.nd,
ld-mips-elf/pic-and-nonpic-1-rel.dd,
ld-mips-elf/pic-and-nonpic-1-rel.nd,
ld-mips-elf/pic-and-nonpic-2a.s,
ld-mips-elf/pic-and-nonpic-2b.s,
ld-mips-elf/pic-and-nonpic-2.d,
ld-mips-elf/pic-and-nonpic-3a.s,
ld-mips-elf/pic-and-nonpic-3a.ld,
ld-mips-elf/pic-and-nonpic-3a.dd,
ld-mips-elf/pic-and-nonpic-3a.gd,
ld-mips-elf/pic-and-nonpic-3a.sd,
ld-mips-elf/pic-and-nonpic-3b.s,
ld-mips-elf/pic-and-nonpic-3b.ld,
ld-mips-elf/pic-and-nonpic-3b.ad,
ld-mips-elf/pic-and-nonpic-3b.dd,
ld-mips-elf/pic-and-nonpic-3b.gd,
ld-mips-elf/pic-and-nonpic-3b.nd,
ld-mips-elf/pic-and-nonpic-3b.pd,
ld-mips-elf/pic-and-nonpic-3b.rd,
ld-mips-elf/pic-and-nonpic-3b.sd,
ld-mips-elf/pic-and-nonpic-3-error.d,
ld-mips-elf/pic-and-nonpic-4a.s,
ld-mips-elf/pic-and-nonpic-4b.s,
ld-mips-elf/pic-and-nonpic-4b.ld,
ld-mips-elf/pic-and-nonpic-4b.ad,
ld-mips-elf/pic-and-nonpic-4b.dd,
ld-mips-elf/pic-and-nonpic-4b.gd,
ld-mips-elf/pic-and-nonpic-4b.nd,
ld-mips-elf/pic-and-nonpic-4b.rd,
ld-mips-elf/pic-and-nonpic-4b.sd,
ld-mips-elf/pic-and-nonpic-4-error.d,
ld-mips-elf/pic-and-nonpic-5a.s,
ld-mips-elf/pic-and-nonpic-5b.s,
ld-mips-elf/pic-and-nonpic-5b.ld,
ld-mips-elf/pic-and-nonpic-5b.ad,
ld-mips-elf/pic-and-nonpic-5b.dd,
ld-mips-elf/pic-and-nonpic-5b.gd,
ld-mips-elf/pic-and-nonpic-5b.nd,
ld-mips-elf/pic-and-nonpic-5b.rd,
ld-mips-elf/pic-and-nonpic-5b.sd,
ld-mips-elf/pic-and-nonpic-5b.pd,
ld-mips-elf/pic-and-nonpic-6.ld,
ld-mips-elf/pic-and-nonpic-6-o32a.s,
ld-mips-elf/pic-and-nonpic-6-o32b.s,
ld-mips-elf/pic-and-nonpic-6-o32c.s,
ld-mips-elf/pic-and-nonpic-6-o32.ad,
ld-mips-elf/pic-and-nonpic-6-o32.dd,
ld-mips-elf/pic-and-nonpic-6-o32.gd,
ld-mips-elf/pic-and-nonpic-6-o32.nd,
ld-mips-elf/pic-and-nonpic-6-o32.pd,
ld-mips-elf/pic-and-nonpic-6-o32.rd,
ld-mips-elf/pic-and-nonpic-6-o32.sd,
ld-mips-elf/pic-and-nonpic-6-n32a.s,
ld-mips-elf/pic-and-nonpic-6-n32b.s,
ld-mips-elf/pic-and-nonpic-6-n32c.s,
ld-mips-elf/pic-and-nonpic-6-n32.ad,
ld-mips-elf/pic-and-nonpic-6-n32.dd,
ld-mips-elf/pic-and-nonpic-6-n32.gd,
ld-mips-elf/pic-and-nonpic-6-n32.nd,
ld-mips-elf/pic-and-nonpic-6-n32.pd,
ld-mips-elf/pic-and-nonpic-6-n32.rd,
ld-mips-elf/pic-and-nonpic-6-n32.sd,
ld-mips-elf/pic-and-nonpic-6-n64a.s,
ld-mips-elf/pic-and-nonpic-6-n64b.s,
ld-mips-elf/pic-and-nonpic-6-n64c.s,
ld-mips-elf/pic-and-nonpic-6-n64.ad,
ld-mips-elf/pic-and-nonpic-6-n64.dd,
ld-mips-elf/pic-and-nonpic-6-n64.gd,
ld-mips-elf/pic-and-nonpic-6-n64.nd,
ld-mips-elf/pic-and-nonpic-6-n64.pd,
ld-mips-elf/pic-and-nonpic-6-n64.rd,
ld-mips-elf/pic-and-nonpic-6-n64.sd: New tests.
* ld-mips-elf/mips-elf.exp: Run them.
2008-08-08 19:24:49 +00:00
|
|
|
|
2008-08-08 Richard Sandiford <rdsandiford@googlemail.com>
|
|
|
|
|
Daniel Jacobowitz <dan@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* ld-mips-elf/mips16-pic-3a.s,
|
|
|
|
|
ld-mips-elf/mips16-pic-3b.s,
|
|
|
|
|
ld-mips-elf/mips16-pic-3.dd,
|
|
|
|
|
ld-mips-elf/mips16-pic-3.gd,
|
|
|
|
|
ld-mips-elf/mips16-pic-3.rd,
|
|
|
|
|
ld-mips-elf/mips16-pic-3.inc,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-1a.s,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-1b.s,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-1.ld,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-1.dd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-1.nd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-1-rel.dd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-1-rel.nd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-2a.s,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-2b.s,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-2.d,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-3a.s,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-3a.ld,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-3a.dd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-3a.gd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-3a.sd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-3b.s,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-3b.ld,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-3b.ad,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-3b.dd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-3b.gd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-3b.nd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-3b.pd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-3b.rd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-3b.sd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-3-error.d,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-4a.s,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-4b.s,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-4b.ld,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-4b.ad,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-4b.dd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-4b.gd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-4b.nd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-4b.rd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-4b.sd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-4-error.d,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-5a.s,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-5b.s,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-5b.ld,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-5b.ad,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-5b.dd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-5b.gd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-5b.nd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-5b.rd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-5b.sd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-5b.pd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6.ld,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-o32a.s,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-o32b.s,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-o32c.s,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-o32.ad,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-o32.dd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-o32.gd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-o32.nd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-o32.pd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-o32.rd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-o32.sd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-n32a.s,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-n32b.s,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-n32c.s,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-n32.ad,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-n32.dd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-n32.gd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-n32.nd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-n32.pd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-n32.rd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-n32.sd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-n64a.s,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-n64b.s,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-n64c.s,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-n64.ad,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-n64.dd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-n64.gd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-n64.nd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-n64.pd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-n64.rd,
|
|
|
|
|
ld-mips-elf/pic-and-nonpic-6-n64.sd: New tests.
|
|
|
|
|
* ld-mips-elf/mips-elf.exp: Run them.
|
|
|
|
|
|
bfd/
* elfxx-mips.c (mips_got_info): Add a "reloc_only_gotno" field.
(mips_elf_got_section): Delete.
(mips_elf_sort_hash_table): Use g->reloc_only_gotno to decide
how many reloc-only entries there are.
(mips_elf_count_got_symbols): Adjust g->reloc_only_gotno as
well as g->global_gotno.
(mips_elf_make_got_per_bfd): Initialize reloc_only_gotno.
(mips_elf_multi_got): Likewise. Use gg->reloc_only_gotno
rather than gg->assigned_gotno to store the number of
reloc-only GOT entries.
(mips_elf_create_got_section): Remove the MAYBE_EXCLUDE parameter.
Initialize reloc_only_gotno.
(mips_elf_calculate_relocation): Check htab->got_info instead of
dynobj when deciding whether to call mips_elf_adjust_gp,
(_bfd_mips_elf_create_dynamic_sections): Adjust the call
to mips_elf_create_got_section.
(mips_elf_record_relocs): Likewise. Remove redundant
"dynobj == NULL" code. Do not use mips_elf_create_got_section
or mips_elf_record_global_got_symbol for R_MIPS_32, R_MIPS_REL32
and R_MIPS_64; limit global_got_area to GGA_RELOC_ONLY instead.
(_bfd_mips_elf_finish_dynamic_symbol): Use htab->sgot instead
of mips_elf_got_section.
(_bfd_mips_vxworks_finish_dynamic_symbol): Likewise.
(_bfd_mips_elf_finish_dynamic_sections): Likewise.
Move the initial assignment of G to the block that uses it;
it is used for an unrelated purpose later.
ld/testsuite/
* ld-mips-elf/tls-hidden4.got, ld-mips-elf/tls-hidden4.r: We have
removed an unused GOT entry that was allocated for the R_MIPS_32
relocation against "undef", so adjust addresses down by 4 bytes.
* ld-mips-elf/got-dump-1.d, ld-mips-elf/got-dump-2.d: We have
changed the order of the GOT entries so that reloc-only ones
come last. "undef" is only referred to by dynamic relocations,
so it now comes after "glob".
* ld-mips-elf/mips16-pic-2.dd, ld-mips-elf/mips16-pic-2.gd,
ld-mips-elf/mips16-pic-2.nd, ld-mips-elf/mips16-pic-2.rd: We have
removed two unused local GOT entries that were originally created
as global entries for the hidden symbols "used2" and "used3".
"used4" and "used5" are only referred to by relocations, so they
now come after "used6" and "used7".
2008-08-07 20:01:14 +00:00
|
|
|
|
2008-08-07 Richard Sandiford <rdsandiford@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* ld-mips-elf/tls-hidden4.got, ld-mips-elf/tls-hidden4.r: We have
|
|
|
|
|
removed an unused GOT entry that was allocated for the R_MIPS_32
|
|
|
|
|
relocation against "undef", so adjust addresses down by 4 bytes.
|
|
|
|
|
* ld-mips-elf/got-dump-1.d, ld-mips-elf/got-dump-2.d: We have
|
|
|
|
|
changed the order of the GOT entries so that reloc-only ones
|
|
|
|
|
come last. "undef" is only referred to by dynamic relocations,
|
|
|
|
|
so it now comes after "glob".
|
|
|
|
|
* ld-mips-elf/mips16-pic-2.dd, ld-mips-elf/mips16-pic-2.gd,
|
|
|
|
|
ld-mips-elf/mips16-pic-2.nd, ld-mips-elf/mips16-pic-2.rd: We have
|
|
|
|
|
removed two unused local GOT entries that were originally created
|
|
|
|
|
as global entries for the hidden symbols "used2" and "used3".
|
|
|
|
|
"used4" and "used5" are only referred to by relocations, so they
|
|
|
|
|
now come after "used6" and "used7".
|
|
|
|
|
|
2008-08-07 19:58:38 +00:00
|
|
|
|
2008-08-07 Richard Sandiford <rdsandiford@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* ld-mips-elf/got-vers-1a.s, ld-mips-elf/got-vers-1b.s,
|
|
|
|
|
ld-mips-elf/got-vers-1.ver, ld-mips-elf/got-vers-1.dd,
|
|
|
|
|
ld-mips-elf/got-vers-1.sd, ld-mips-elf/got-vers-1.rd: New tests.
|
|
|
|
|
* ld-mips-elf/mips-elf.exp: Run them.
|
|
|
|
|
|
2008-08-07 19:57:28 +00:00
|
|
|
|
2008-08-07 Richard Sandiford <rdsandiford@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* ld-mips-elf/tlsdyn-o32-2.got, ld-mips-elf/tlsdyn-o32-3.got,
|
|
|
|
|
ld-mips-elf/tlsdyn-o32-2.d, ld-mips-elf/tlsdyn-o32-3.d: Change the
|
|
|
|
|
GOT layout as follows:
|
|
|
|
|
|
|
|
|
|
BEFORE AFTER
|
|
|
|
|
+0x08 %call16(__tls_get_addr) %call16(__tls_get_addr)
|
|
|
|
|
+0x0c %tlsldm(tlsbin_ld) %gottprel(tlsvar_ie)
|
|
|
|
|
+0x10 " " %tlsgd(tlsvar_gd)
|
|
|
|
|
+0x14 %tlsgd(tlsvar_gd) " "
|
|
|
|
|
+0x18 " " %tlsgd(tlsbin_gd)
|
|
|
|
|
+0x1c %gottprel(tlsvar_ie) " "
|
|
|
|
|
+0x20 %tlsgd(tlsbin_gd) %tlsldm(tlsbin_ld)
|
|
|
|
|
+0x24 " " " "
|
|
|
|
|
+0x28 %gottprel(tlsbin_ie) %gottprel(tlsbin_ie)
|
|
|
|
|
|
2008-08-07 19:50:05 +00:00
|
|
|
|
2008-08-07 Richard Sandiford <rdsandiford@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* ld-mips-elf/reloc-estimate-1.d, ld-mips-elf/reloc-estimate-1.ld,
|
|
|
|
|
ld-mips-elf/reloc-estimate-1a.s, ld-mips-elf/reloc-estimate-1b.s:
|
|
|
|
|
New test.
|
|
|
|
|
* ld-mips-elf/mips-elf.exp: Run it.
|
|
|
|
|
|
2008-08-06 19:49:06 +00:00
|
|
|
|
2008-08-06 Richard Sandiford <rdsandiford@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* ld-mips-elf/tls-hidden3.ld: Remove the unused .MIPS.stubs section.
|
|
|
|
|
Keep the text start address the same.
|
|
|
|
|
* ld-mips-elf/tls-multi-got-1.got: We have removed a .MIPS.stubs
|
|
|
|
|
section that contained only a 16-byte dummy stub. Subtract 16
|
|
|
|
|
from addresses to account for the change.
|
|
|
|
|
* ld-mips-elf/tls-multi-got-1.r: Likewise. Adjust MIPS_UNREFEXTNO
|
|
|
|
|
to account the removed section symbol.
|
|
|
|
|
* ld-mips-elf/tlsdyn-o32-1.d: We have deleted a .MIPS.stubs
|
|
|
|
|
section that contained only a 16-byte dummy stub. Remove it
|
|
|
|
|
from the disassembly.
|
|
|
|
|
* ld-mips-elf/tlsdyn-o32-2.d: Likewise.
|
|
|
|
|
* ld-mips-elf/tlsdyn-o32-3.d: Likewise.
|
|
|
|
|
* ld-mips-elf/tlsdyn-o32.d: Likewise.
|
|
|
|
|
* ld-mips-elf/relax-jalr-n32-shared.d: Likewise.
|
|
|
|
|
* ld-mips-elf/relax-jalr-n64-shared.d: Likewise.
|
|
|
|
|
|
bfd/
* reloc.c (BFD_RELOC_MIPS16_GOT16, BFD_RELOC_MIPS16_CALL16): Declare.
* libbfd.h, bfd-in2.h: Regenerate.
* elf32-mips.c (elf_mips16_howto_table_rel): Fill in reserved
R_MIPS16_GOT16 and R_MIPS16_CALL16 entries.
(mips16_reloc_map): Add mappings.
* elf64-mips.c (mips16_elf64_howto_table_rel): Fill in reserved
R_MIPS16_GOT16 and R_MIPS16_CALL16 entries.
(mips16_elf64_howto_table_rela): Likewise.
(mips16_reloc_map): Add mappings.
* elfn32-mips.c (elf_mips16_howto_table_rel): Fill in reserved
R_MIPS16_GOT16 and R_MIPS16_CALL16 entries.
(elf_mips16_howto_table_rela): Likewise.
(mips16_reloc_map): Add mappings.
* elfxx-mips.c (mips_elf_create_shadow_symbol): New function.
(section_allows_mips16_refs_p): Likewise.
(mips16_stub_symndx): Likewise.
(mips_elf_check_mips16_stubs): Treat the data argument as a
bfd_link_info. Mark every dynamic symbol as needing MIPS16 stubs
and create a "shadow" symbol for the original MIPS16 definition.
(mips16_reloc_p, got16_reloc_p, call16_reloc_p, hi16_reloc_p)
(lo16_reloc_p, mips16_call_reloc_p): New functions.
(_bfd_mips16_elf_reloc_unshuffle): Use mips16_reloc_p to generalize
relocation checks.
(_bfd_mips16_elf_reloc_shuffle): Likewise.
(_bfd_mips_elf_lo16_reloc): Handle R_MIPS16_GOT16.
(mips_elf_got16_entry): Add comment.
(mips_elf_calculate_relocation): Use hi16_reloc_p,
lo16_reloc_p, mips16_call_reloc_p, call16_reloc_p and got16_reloc_p
to generalize relocation checks. Use section_allows_mips16_refs_p
instead of mips16_stub_section_p. Handle R_MIPS16_CALL16 and
R_MIPS16_GOT16, allowing the former to refer directly to a
MIPS16 function if its stub is not needed.
(mips16_stub_section_p): Delete.
(_bfd_mips_elf_symbol_processing): Convert odd-valued function
symbols into even MIPS16 symbols.
(mips_elf_add_lo16_rel_addend): Use mips16_reloc_p to generalize
a relocation check.
(_bfd_mips_elf_check_relocs): Calculate "bed" and "rel_end"
earlier in the function. Use mips16_stub_symndx to identify
the target function. Avoid out-of-bounds accesses when the
stub has no relocations; report an error instead. Use
section_allows_mips16_refs_p instead of mips16_stub_section_p.
Use mips16_call_reloc_p and got16_reloc_p to generalize relocation
checks. Handle R_MIPS16_CALL16 and R_MIPS16_GOT16. Don't create
dynamic relocations for absolute references to __gnu_local_gp.
(_bfd_mips_elf_always_size_sections): Pass a bfd_link_info as
the argument to mips_elf_check_mips16_stubs. Generalize comment.
(_bfd_mips_elf_relocate_section): Use hi16_reloc_p and got16_reloc_p
to generalize relocation checks.
(_bfd_mips_elf_finish_dynamic_symbol): If a dynamic MIPS16 function
symbol has a non-MIPS16 stub, redirect the symbol to the stub.
Fix an overly long line. Don't give dynamic symbols type STO_MIPS16.
(_bfd_mips_elf_gc_sweep_hook): Handle R_MIPS16_CALL16 and
R_MIPS16_GOT16.
gas/
* config/tc-mips.c (mips16_reloc_p, got16_reloc_p, hi16_reloc_p)
(lo16_reloc_p): New functions.
(reloc_needs_lo_p): Use hi16_reloc_p and got16_reloc_p to
generalize relocation checks.
(matching_lo_reloc): New function.
(fixup_has_matching_lo_p): Use it.
(mips16_mark_labels): Don't clobber a symbol's visibility.
(append_insn): Use hi16_reloc_p and lo16_reloc_p.
(mips16_ip): Handle BFD_RELOC_MIPS16_GOT16 and BFD_RELOC_MIPS16_CALL16.
(md_apply_fix): Likewise.
(mips16_percent_op): Add %got and %call16.
(mips_frob_file): Use got16_reloc_p to generalize relocation checks.
Use matching_lo_reloc.
(mips_force_relocation): Use hi16_reloc_p and lo16_reloc_p to
generalize relocation checks.
(mips_fix_adjustable): Use lo16_reloc_p to generalize relocation
checks.
gas/testsuite/
* gas/mips/elf-rel8-mips16.d, gas/mips/elf-rel8-mips16.s,
* gas/mips/elf-rel9-mips16.d, gas/mips/elf-rel9-mips16.s,
* gas/mips/elf-rel13-mips16.d, gas/mips/elf-rel13-mips16.s: New tests.
* gas/mips/mips.exp: Run them.
ld/testsuite/
* ld-mips-elf/mips16-local-stubs-1.d: Remove stub_for_h3,
which was only referenced by the .pdr section, and was not
actually needed by code.
* ld-mips-elf/mips16-intermix.d: Remove unused static function stubs.
* ld-mips-elf/mips16-pic-1a.s,
ld-mips-elf/mips16-pic-1b.s,
ld-mips-elf/mips16-pic-1-dummy.s,
ld-mips-elf/mips16-pic-1.dd,
ld-mips-elf/mips16-pic-1.gd,
ld-mips-elf/mips16-pic-1.inc,
ld-mips-elf/mips16-pic-1.ld,
ld-mips-elf/mips16-pic-2a.s,
ld-mips-elf/mips16-pic-2b.s,
ld-mips-elf/mips16-pic-2.ad,
ld-mips-elf/mips16-pic-2.dd,
ld-mips-elf/mips16-pic-2.gd,
ld-mips-elf/mips16-pic-2.nd,
ld-mips-elf/mips16-pic-2.rd: New tests.
* ld-mips-elf/mips-elf.exp: Run them.
2008-08-06 19:44:47 +00:00
|
|
|
|
2008-08-06 Richard Sandiford <rdsandiford@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* ld-mips-elf/mips16-local-stubs-1.d: Remove stub_for_h3,
|
|
|
|
|
which was only referenced by the .pdr section, and was not
|
|
|
|
|
actually needed by code.
|
|
|
|
|
* ld-mips-elf/mips16-intermix.d: Remove unused static function stubs.
|
|
|
|
|
* ld-mips-elf/mips16-pic-1a.s,
|
|
|
|
|
ld-mips-elf/mips16-pic-1b.s,
|
|
|
|
|
ld-mips-elf/mips16-pic-1-dummy.s,
|
|
|
|
|
ld-mips-elf/mips16-pic-1.dd,
|
|
|
|
|
ld-mips-elf/mips16-pic-1.gd,
|
|
|
|
|
ld-mips-elf/mips16-pic-1.inc,
|
|
|
|
|
ld-mips-elf/mips16-pic-1.ld,
|
|
|
|
|
ld-mips-elf/mips16-pic-2a.s,
|
|
|
|
|
ld-mips-elf/mips16-pic-2b.s,
|
|
|
|
|
ld-mips-elf/mips16-pic-2.ad,
|
|
|
|
|
ld-mips-elf/mips16-pic-2.dd,
|
|
|
|
|
ld-mips-elf/mips16-pic-2.gd,
|
|
|
|
|
ld-mips-elf/mips16-pic-2.nd,
|
|
|
|
|
ld-mips-elf/mips16-pic-2.rd: New tests.
|
|
|
|
|
* ld-mips-elf/mips-elf.exp: Run them.
|
|
|
|
|
|
2008-08-06 00:42:17 +00:00
|
|
|
|
2008-08-06 Alan Modra <amodra@bigpond.net.au>
|
|
|
|
|
|
|
|
|
|
* ld-elf/extract-symbol-1sec.d: Update.
|
|
|
|
|
|
2008-07-30 10:28:31 +00:00
|
|
|
|
2008-07-30 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* ld-elf/sec-to-seg.exp: New test: Checks the assignment of
|
|
|
|
|
sections to segments.
|
|
|
|
|
* ld-elf/sec-to-seg1.s: Test source file.
|
|
|
|
|
* ld-elf/sec-to-seg2.s: Test source file.
|
|
|
|
|
* ld-elf/sec-to-seg-script-same-page.t: Test linker script.
|
|
|
|
|
* ld-elf/sec-to-seg-script-adjoining-pages.t: Test linker script.
|
|
|
|
|
* ld-elf/sec-to-seg-script-disjoint-pages.t: Test linker script.
|
|
|
|
|
|
2008-07-28 18:07:05 +00:00
|
|
|
|
2008-07-28 Alexandre Oliva <aoliva@redhat.com>
|
|
|
|
|
|
|
|
|
|
* ld-i386/tlsbindesc.dd: Adjust incorrect expectations for LD to
|
|
|
|
|
LE relaxation.
|
|
|
|
|
* ld-x86-64/tlsbindesc.dd: Likewise.
|
|
|
|
|
* ld-i386/tlsbindesc.rd: Adjust address of _TLS_MODULE_BASE_.
|
|
|
|
|
* ld-x86-64/tlsbindesc.rd: Likewise.
|
|
|
|
|
Reported by Cary Coutant <ccoutant@google.com>
|
|
|
|
|
|
2008-07-27 04:40:58 +00:00
|
|
|
|
2008-07-27 Alan Modra <amodra@bigpond.net.au>
|
|
|
|
|
|
|
|
|
|
* ld-gc/gc.exp (test_gc): xfail powerpc64.
|
|
|
|
|
|
2008-07-26 13:10:48 +00:00
|
|
|
|
2008-07-26 Michael Eager <eager@eagercon.com>
|
|
|
|
|
|
|
|
|
|
* ld-powerpc/powerpc.exp: Run new tests.
|
|
|
|
|
* ld-powerpc/attr-gnu-4-03.d: New file.
|
|
|
|
|
* ld-powerpc/attr-gnu-4-14.d: New file.
|
|
|
|
|
* ld-powerpc/attr-gnu-4-23.d: New file.
|
|
|
|
|
* ld-powerpc/attr-gnu-4-24.d: New file.
|
|
|
|
|
* ld-powerpc/attr-gnu-4-32.d: New file.
|
|
|
|
|
* ld-powerpc/attr-gnu-4-33.d: New file.
|
|
|
|
|
* ld-powerpc/attr-gnu-4-34.d: New file.
|
|
|
|
|
* ld-powerpc/attr-gnu-4-41.d: New file.
|
|
|
|
|
* ld-powerpc/attr-gnu-4-4.s: New file.
|
|
|
|
|
* ld-powerpc/attr-gnu-4-13.d: Adjust.
|
|
|
|
|
* ld-powerpc/attr-gnu-4-31.d: Adjust.
|
|
|
|
|
|
2008-07-26 01:23:37 +00:00
|
|
|
|
2008-07-26 Alan Modra <amodra@bigpond.net.au>
|
|
|
|
|
|
|
|
|
|
* ld-scripts/include.exp: Don't run test for aout.
|
|
|
|
|
* ld-scripts/include.s: Use .fill rather than .4byte.
|
|
|
|
|
* ld-scripts/include-1.d: Adjust.
|
|
|
|
|
|
2008-07-22 14:15:32 +00:00
|
|
|
|
2008-07-22 Alan Modra <amodra@bigpond.net.au>
|
|
|
|
|
|
|
|
|
|
* ld-alpha/tlsbin.rd: Update.
|
|
|
|
|
* ld-alpha/tlsbinr.rd: Update.
|
|
|
|
|
* ld-arm/mixed-app.sym: Update.
|
|
|
|
|
* ld-arm/use-thumb-lib.sym: Update.
|
|
|
|
|
* ld-cris/pv32-1.d: Update.
|
|
|
|
|
|
2008-07-21 08:38:35 +00:00
|
|
|
|
2008-07-21 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* ld-scripts/include-sections.t: Discard all sections not
|
|
|
|
|
explicitly requested by the rest of the linker script.
|
|
|
|
|
* ld-scripts/include-1.d: Expect test to fail for AIX ports.
|
|
|
|
|
Do not assume that the .text section will be marked readonly.
|
|
|
|
|
* ld-scripts/include.s: Replace .section directives with just
|
|
|
|
|
.text or .data.
|
|
|
|
|
|
bfd:
* bfd-in.h (bfd_elf32_arm_set_target_relocs): Add new parameter.
* bfd-in2.h: Regenerate.
* elf32-arm.c (struct elf_arm_obj_tdata): Add field
no_wchar_size_warning.
(bfd_elf32_arm_set_target_relocs): Add new parameter
no_wchar_warn.
(elf32_arm_merge_eabi_attributes): Give a warning, not an error,
for conflicting wchar_t attributes. Do not warn if
--no-wchar-size-warning. Make diagnostic text more specific.
ld:
* ld.texinfo (--no-wchar-size-warning): Document new ARM option.
* emultempl/armelf.em (no_wchar_size_warning): New.
(arm_elf_create_output_section_statements): Pass
no_wchar_size_warning to arm_elf_create_output_section_statements.
(OPTION_NO_WCHAR_SIZE_WARNING): New.
(PARSE_AND_LIST_LONGOPTS): Add no-wchar-size-warning.
(PARSE_AND_LIST_OPTIONS): List --no-wchar-size-warning.
(PARSE_AND_LIST_ARGS_CASES): Handle --no-wchar-size-warning.
ld/testsuite:
* ld-arm/attr-merge-wchar-0.s,ld-arm/attr-merge-wchar-2.s,
ld-arm/attr-merge-wchar-4.s, ld-arm/attr-merge-wchar-00-nowarn.d,
ld-arm/attr-merge-wchar-00.d, ld-arm/attr-merge-wchar-02-nowarn.d,
ld-arm/attr-merge-wchar-02.d, ld-arm/attr-merge-wchar-04-nowarn.d,
ld-arm/attr-merge-wchar-04.d, ld-arm/attr-merge-wchar-20-nowarn.d,
ld-arm/attr-merge-wchar-20.d, ld-arm/attr-merge-wchar-22-nowarn.d,
ld-arm/attr-merge-wchar-22.d, ld-arm/attr-merge-wchar-24-nowarn.d,
ld-arm/attr-merge-wchar-24.d, ld-arm/attr-merge-wchar-40-nowarn.d,
ld-arm/attr-merge-wchar-40.d, ld-arm/attr-merge-wchar-42-nowarn.d,
ld-arm/attr-merge-wchar-42.d, ld-arm/attr-merge-wchar-44-nowarn.d,
ld-arm/attr-merge-wchar-44.d: New.
* ld-arm/arm-elf.exp: Run new tests.
2008-07-18 20:49:12 +00:00
|
|
|
|
2008-07-18 Joseph Myers <joseph@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* ld-arm/attr-merge-wchar-0.s,ld-arm/attr-merge-wchar-2.s,
|
|
|
|
|
ld-arm/attr-merge-wchar-4.s, ld-arm/attr-merge-wchar-00-nowarn.d,
|
|
|
|
|
ld-arm/attr-merge-wchar-00.d, ld-arm/attr-merge-wchar-02-nowarn.d,
|
|
|
|
|
ld-arm/attr-merge-wchar-02.d, ld-arm/attr-merge-wchar-04-nowarn.d,
|
|
|
|
|
ld-arm/attr-merge-wchar-04.d, ld-arm/attr-merge-wchar-20-nowarn.d,
|
|
|
|
|
ld-arm/attr-merge-wchar-20.d, ld-arm/attr-merge-wchar-22-nowarn.d,
|
|
|
|
|
ld-arm/attr-merge-wchar-22.d, ld-arm/attr-merge-wchar-24-nowarn.d,
|
|
|
|
|
ld-arm/attr-merge-wchar-24.d, ld-arm/attr-merge-wchar-40-nowarn.d,
|
|
|
|
|
ld-arm/attr-merge-wchar-40.d, ld-arm/attr-merge-wchar-42-nowarn.d,
|
|
|
|
|
ld-arm/attr-merge-wchar-42.d, ld-arm/attr-merge-wchar-44-nowarn.d,
|
|
|
|
|
ld-arm/attr-merge-wchar-44.d: New.
|
|
|
|
|
* ld-arm/arm-elf.exp: Run new tests.
|
|
|
|
|
|
2008-07-11 17:19:00 +00:00
|
|
|
|
2008-07-11 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* ld-m68k/got-12.s: Removed.
|
|
|
|
|
* ld-m68k/got-13.s: Likewise.
|
|
|
|
|
* ld-m68k/got-14.s: Likewise.
|
|
|
|
|
* ld-m68k/got-15.s: Likewise.
|
|
|
|
|
* ld-m68k/got-34.s: Likewise.
|
|
|
|
|
* ld-m68k/got-35.s: Likewise.
|
|
|
|
|
* ld-m68k/xgot-15.s: Likewise.
|
|
|
|
|
|
|
|
|
|
* ld-m68k/got-multigot-12-13-14-34-35-ok.d: Remove #source
|
|
|
|
|
and expected relocations.
|
|
|
|
|
* ld-m68k/got-multigot-14-ok.d: Likewise.
|
|
|
|
|
* ld-m68k/got-negative-12-13-14-34-ok.d: Likewise.
|
|
|
|
|
* ld-m68k/got-negative-14-ok.d: Likewise.
|
|
|
|
|
* ld-m68k/got-single-12-ok.d: Likewise.
|
|
|
|
|
* ld-m68k/got-xgot-12-13-14-15-34-35-ok.d: Likewise.
|
|
|
|
|
* ld-m68k/got-xgot-15-ok.d: Likewise.
|
|
|
|
|
|
|
|
|
|
* ld-m68k/got-multigot-15-er.d: Remove #source.
|
|
|
|
|
* ld-m68k/got-negative-12-13-14-35-er.d: Likewise.
|
|
|
|
|
* ld-m68k/got-negative-15-er.d: Likewise.
|
|
|
|
|
* ld-m68k/got-single-13-er.d: Likewise.
|
|
|
|
|
|
|
|
|
|
* ld-m68k/m68k.exp: Move GOT tests to ...
|
|
|
|
|
* ld-m68k/m68k-got.exp: This. New.
|
|
|
|
|
|
2008-07-10 19:06:54 +00:00
|
|
|
|
2008-07-10 Richard Sandiford <rdsandiford@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* ld-mips-elf/no-shared-1-o32.s,
|
|
|
|
|
ld-mips-elf/no-shared-1-o32.d,
|
|
|
|
|
ld-mips-elf/no-shared-1-n32.d,
|
|
|
|
|
ld-mips-elf/no-shared-1-n64.s,
|
|
|
|
|
ld-mips-elf/no-shared-1-n64.d,
|
|
|
|
|
ld-mips-elf/no-shared-1.ld: New tests.
|
|
|
|
|
* ld-mips-elf/mips-elf.exp: Run them.
|
|
|
|
|
|
2008-07-07 19:00:21 +00:00
|
|
|
|
2008-07-07 Stan Shebs <stan@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* ld-arm/arm-elf.exp: Use objdump -d for arm-be8 test.
|
|
|
|
|
* ld-arm/arm-be8.d: Change to test disassembly.
|
|
|
|
|
|
2008-07-06 13:38:37 +00:00
|
|
|
|
2008-07-06 Nathan Sidwell <nathan@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* ld-scripts/include-1.d: New.
|
|
|
|
|
* ld-scripts/include-1.t: New.
|
|
|
|
|
* ld-scripts/include-data.t: New.
|
|
|
|
|
* ld-scripts/include-mem.t: New.
|
|
|
|
|
* ld-scripts/include-ram.t: New.
|
|
|
|
|
* ld-scripts/include-sections.t: New.
|
|
|
|
|
* ld-scripts/include-subdata.t: New.
|
|
|
|
|
* ld-scripts/include.exp: New.
|
|
|
|
|
* ld-scripts/include.s: New.
|
|
|
|
|
|
2008-06-29 12:56:41 +00:00
|
|
|
|
2008-06-29 Andreas Schwab <schwab@suse.de>
|
|
|
|
|
|
|
|
|
|
* ld-m68k/got-1.s: New file.
|
|
|
|
|
* ld-m68k/got-1.d: New dump test.
|
|
|
|
|
* ld-m68k/m68k.exp: Run it.
|
|
|
|
|
|
* elf32-arm.c (STUB_ENTRY_NAME): Define.
(arm_thumb_thumb_long_branch_stub): Use bx instead of b.n.
(arm_pic_long_branch_stub): Mention R_ARM_REL32 instead of
R_ARM_ABS32.
(struct elf32_arm_stub_hash_entry): Add output_name.
(arm_build_one_stub): Move offsets into the offset argument
of _bfd_final_link_relocate. Correct offset for
arm_thumb_arm_v4t_stub_long_branch.
(elf32_arm_size_stubs): Set stub_entry->output_name.
(elf32_arm_ouput_plt_map_sym): Rename to elf32_arm_output_map_sym.
Update all callers.
(elf32_arm_output_stub_sym): New.
(arm_map_one_stub): Correct formatting. Use elf32_arm_output_stub_sym.
* ld-arm/farcall-arm-arm-be8.d, ld-arm/farcall-arm-arm-pic-veneer.d,
ld-arm/farcall-arm-arm.d, ld-arm/farcall-arm-thumb-blx-pic-veneer.d,
ld-arm/farcall-arm-thumb-blx.d, ld-arm/farcall-arm-thumb-pic-veneer.d,
ld-arm/farcall-arm-thumb.d, ld-arm/farcall-group-size2.d,
ld-arm/farcall-group.d, ld-arm/farcall-mix.d, ld-arm/farcall-mix2.d,
ld-arm/farcall-thumb-arm-blx-pic-veneer.d,
ld-arm/farcall-thumb-arm-blx.d, ld-arm/farcall-thumb-arm.d,
ld-arm/farcall-thumb-thumb-blx-pic-veneer.d,
ld-arm/farcall-thumb-thumb-blx.d, ld-arm/farcall-thumb-thumb-m.d,
ld-arm/thumb2-bl-as-thumb1-bad.d, ld-arm/thumb2-bl-bad.d: Update for
stub symbols and stub corrections.
2008-06-25 14:28:48 +00:00
|
|
|
|
2008-06-24 Daniel Jacobowitz <dan@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* ld-arm/farcall-arm-arm-be8.d, ld-arm/farcall-arm-arm-pic-veneer.d,
|
|
|
|
|
ld-arm/farcall-arm-arm.d, ld-arm/farcall-arm-thumb-blx-pic-veneer.d,
|
|
|
|
|
ld-arm/farcall-arm-thumb-blx.d, ld-arm/farcall-arm-thumb-pic-veneer.d,
|
|
|
|
|
ld-arm/farcall-arm-thumb.d, ld-arm/farcall-group-size2.d,
|
|
|
|
|
ld-arm/farcall-group.d, ld-arm/farcall-mix.d, ld-arm/farcall-mix2.d,
|
|
|
|
|
ld-arm/farcall-thumb-arm-blx-pic-veneer.d,
|
|
|
|
|
ld-arm/farcall-thumb-arm-blx.d, ld-arm/farcall-thumb-arm.d,
|
|
|
|
|
ld-arm/farcall-thumb-thumb-blx-pic-veneer.d,
|
|
|
|
|
ld-arm/farcall-thumb-thumb-blx.d, ld-arm/farcall-thumb-thumb-m.d,
|
|
|
|
|
ld-arm/thumb2-bl-as-thumb1-bad.d, ld-arm/thumb2-bl-bad.d: Update for
|
|
|
|
|
stub symbols and stub corrections.
|
|
|
|
|
|
2008-06-19 16:15:17 +00:00
|
|
|
|
2008-06-20 Alan Modra <amodra@bigpond.net.au>
|
|
|
|
|
|
|
|
|
|
* ld-spu/ovl.d: Update.
|
|
|
|
|
* ld-spu/ovl2.d: Update.
|
|
|
|
|
|
2008-06-16 15:07:01 +00:00
|
|
|
|
2008-06-16 Hans-Peter Nilsson <hp@bitrange.com>
|
|
|
|
|
|
|
|
|
|
PR gas/6607
|
|
|
|
|
* ld-mmix/loc10.d, ld-mmix/loc10.s, ld-mmix/loc10m.d, ld-mmix/loc8.d,
|
|
|
|
|
ld-mmix/loc8.s, ld-mmix/loc8m.d, ld-mmix/loc9.d, ld-mmix/loc9.s,
|
|
|
|
|
ld-mmix/loc9m.d: New tests.
|
|
|
|
|
|
2008-06-12 11:27:38 +00:00
|
|
|
|
2008-06-12 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* ld-scripts/overlay-size.t (end_of_bss_overlays): Define.
|
|
|
|
|
(end_of_text_overlays): Define.
|
|
|
|
|
(end_of_data_overlays): Define.
|
|
|
|
|
* ld-scripts/overlay-size-map.d: Add expected values for
|
|
|
|
|
end_of_bss_overlays, end_of_text_overlays and
|
|
|
|
|
end_of_data_overlays.
|
|
|
|
|
|
2008-06-09 22:22:05 +00:00
|
|
|
|
2008-06-09 Kaz Kojima <kkojima@rr.iij4u.or.jp>
|
|
|
|
|
|
|
|
|
|
* ld-sh/arch/arch_expected.txt: Regenerate.
|
|
|
|
|
|
2008-06-09 14:55:04 +00:00
|
|
|
|
2008-06-09 Daniel Jacobowitz <dan@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* ld-arm/mixed-lib.d: Loosen pattern.
|
|
|
|
|
|
2008-06-09 14:53:13 +00:00
|
|
|
|
2008-06-09 Christophe Lyon <christophe.lyon@st.com>
|
|
|
|
|
|
|
|
|
|
* ld-arm/farcall-thumb-thumb-m.d: Fix branch type.
|
|
|
|
|
* ld-arm/farcall-thumb-arm.d: Likewise.
|
|
|
|
|
|
2008-05-31 16:35:56 +00:00
|
|
|
|
2008-05-31 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR ld/6430
|
|
|
|
|
* ld-elfcomm/elfcomm.exp (test_sort_common): Test the
|
|
|
|
|
ascending/descending argument to the --sort-common command line
|
|
|
|
|
option.
|
|
|
|
|
* ld-elfcomm/sort-common.s: New file.
|
|
|
|
|
|
2008-05-28 15:38:36 +00:00
|
|
|
|
2008-05-28 Christophe Lyon <christophe.lyon@st.com>
|
|
|
|
|
|
|
|
|
|
* ld-arm/arm-elf.exp: Skip farcalls tests for non-ARM-EABI
|
|
|
|
|
targets.
|
|
|
|
|
* ld-arm/thumb2-bl-as-thumb1-bad-noeabi.d: New file.
|
|
|
|
|
* ld-arm/thumb2-bl-bad-noeabi.d: Likewise.
|
|
|
|
|
|
2008-05-23 13:53:27 +00:00
|
|
|
|
2008-05-22 Christophe Lyon <christophe.lyon@st.com>
|
|
|
|
|
|
|
|
|
|
* ld-arm/farcall-arm-arm.s: Force function type on 'bar'.
|
|
|
|
|
* ld-arm/farcall-thumb-arm.s: Likewise.
|
|
|
|
|
* ld-arm/farcall-thumb-arm-blx.d: Fix encoding.
|
|
|
|
|
* ld-arm/farcall-thumb-arm.d: Likewise.
|
|
|
|
|
* ld-arm/farcall-thumb-arm-blx-pic-veneer.d: Likewise.
|
|
|
|
|
* ld-arm/arm-elf.exp (armelftests): Add farcall-mix, farcall-mix2,
|
|
|
|
|
farcall-group-default, farcall-group-size2, farcall-section Ignore
|
|
|
|
|
gas warnings in farcall-thumb-arm, farcall-thumb-arm-blx,
|
|
|
|
|
farcall-thumb-arm-blx-pic-veneer.
|
|
|
|
|
|
Multi-GOT support for m68k.
bfd/
* elf32-m68k.c (struct elf_m68k_link_hash_entry: got_entry_key,
glist): New fields.
(struct elf_m68k_got_entry_key, struct elf_m68k_got_entry,
struct elf_m68k_got, struct elf_m68k_bfd2got_entry,
struct elf_m68k_multi_got): New data structures.
(struct elf_m68k_link_hash_table: local_gp_p, use_neg_got_offsets_p,
allow_multigot_p, multi_got_): New fields.
(elf_m68k_multi_got): New macro.
(elf_m68k_link_hash_newfunc): Initialize new fields of
struct elf_m68k_link_hash_entry.
(elf_m68k_link_hash_table_create): Initialize new fields of
struct elf_m68k_link_hash_table.
(elf_m68k_link_hash_table_free): New static function implementing hook.
(elf_m68k_init_got, elf_m68k_clear_got, elf_m68k_create_empty_got): New
static functions for struct elf_m68k_got.
(elf_m68k_init_got_entry_key, elf_m68k_got_entry_hash,
elf_m68k_got_entry_eq): New static functions for
struct elf_m68k_got_entry.
(ELF_M68K_REL_8O_MAX_N_ENTRIES_IN_GOT,
ELF_M68K_REL_8O_16O_MAX_N_ENTRIES_IN_GOT): New macros.
(enum elf_m68k_get_entry_howto): New enum.
(elf_m68k_get_got_entry, elf_m68k_update_got_entry_type,
elf_m68k_remove_got_entry_type): New static functions for
struct elf_m68k_got_entry.
(elf_m68k_add_entry_to_got): New static function.
(elf_m68k_bfd2got_entry_hash, elf_m68k_bfd2got_entry_eq,
elf_m68k_bfd2got_entry_del, elf_m68k_get_bfd2got_entry): New static
functions for struct elf_m68k_bfd2got_entry.
(struct elf_m68k_can_merge_gots_arg, elf_m68k_can_merge_gots_1,
elf_m68k_can_merge_gots): New traversal.
(struct elf_m68k_merge_gots_arg, elf_m68k_merge_gots_1,
elf_m68k_merge_gots): Ditto.
(struct elf_m68k_finalize_got_offsets_arg,
elf_m68k_finalize_got_offsets_1, elf_m68k_finalize_got_offsets): Ditto.
(struct elf_m68k_partition_multi_got_arg,
elf_m68k_partition_multi_got_1, elf_m68k_init_symndx2h_1,
elf_m68k_partition_multi_got): Ditto.
(elf_m68k_find_got_entry_ptr, elf_m68k_remove_got_entry): New static
functions.
(elf_m68k_copy_indirect_symbol): New static function implementing
a hook.
(elf_m68k_check_relocs): Update to add entries to multi-GOT.
(elf_m68k_gc_sweep_hook): Update to remove entries from multi-GOT.
(elf_m68k_always_size_sections): Assign BFDs to GOTs.
(elf_m68k_relocate_section): Update to properly handle GOT relocations.
(elf_m68k_finish_dynamic_symbol): Update to traverse all GOT entries
of a global symbol.
(bfd_elf_m68k_set_target_options): New function.
(bfd_elf32_bfd_link_hash_table_free): Define hook.
(bfd_elf32_bfd_final_link): Change expansion to bfd_elf_final_link
to skip generic calculation of GOT offsets.
(elf_backend_copy_indirect_symbol): Define hook.
* bfd-in.h (bfd_elf_m68k_set_target_options): Declare function.
* bfd-in2.h: Regenerate.
ld/
* configure.in (--enable-got): New option. Handle it.
* configure: Regenerate.
* config.in: Regenerate.
* emultempl/m68kelf.em: (got_handling_target_default): New shell
variable.
(GOT_HANDLING_TARGET_DEFAULT): New macro.
(GOT_HANDLING_DEFAULT): New macro. Initialize it from configure
option if one was given.
(got_handling): New static variable.
(elf_m68k_create_output_section_statements): New static function
implementing hook.
(PARSE_AND_LIST_PROLOGUE): Define shell variable.
(OPTION_GOT): New macro.
(PARSE_AND_LIST_LONGOPTS): Define shell variable. Specify
--got option.
(got): New linker option.
(PARSE_AND_LIST_OPTIONS): Define shell variable. Print help string
for --got option.
(PARSE_AND_LIST_ARGS_CASES): Define shell variable. Handle --got
option.
* ld.texinfo: Document --got=<type> option.
* gen-doc.texi: Add M68K.
* NEWS: Mention the new feature.
ld/testsuite/
* ld-m68k/got-12.s: New file.
* ld-m68k/got-13.s: New file.
* ld-m68k/got-14.s: New file.
* ld-m68k/got-15.s: New file.
* ld-m68k/got-34.s: New file.
* ld-m68k/got-35.s: New file.
* ld-m68k/got-single-12-ok.d: New dump test.
* ld-m68k/got-single-13-er.d: New dump test.
* ld-m68k/got-negative-14-ok.d: New dump test.
* ld-m68k/got-negative-15-er.d: New dump test.
* ld-m68k/got-negative-12-13-14-34-ok.d: New dump test.
* ld-m68k/got-negative-12-13-14-35-er.d: New dump test.
* ld-m68k/got-multigot-14-ok.d: New dump test.
* ld-m68k/got-multigot-15-er.d: New dump test.
* ld-m68k/got-multigot-12-13-14-34-35-ok.d: New dump test.
* ld-m68k/xgot-15.s: New source.
* ld-m68k/got-xgot-15-ok.d: New test.
* ld-m68k/got-xgot-12-13-14-15-34-35-ok.d: New test.
* ld-m68k/m68k.exp: Run new tests.
2008-05-21 12:01:37 +00:00
|
|
|
|
2008-05-21 Maxim Kuvyrkov <maxim@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* ld-m68k/got-12.s: New file.
|
|
|
|
|
* ld-m68k/got-13.s: New file.
|
|
|
|
|
* ld-m68k/got-14.s: New file.
|
|
|
|
|
* ld-m68k/got-15.s: New file.
|
|
|
|
|
* ld-m68k/got-34.s: New file.
|
|
|
|
|
* ld-m68k/got-35.s: New file.
|
|
|
|
|
* ld-m68k/got-single-12-ok.d: New dump test.
|
|
|
|
|
* ld-m68k/got-single-13-er.d: New dump test.
|
|
|
|
|
* ld-m68k/got-negative-14-ok.d: New dump test.
|
|
|
|
|
* ld-m68k/got-negative-15-er.d: New dump test.
|
|
|
|
|
* ld-m68k/got-negative-12-13-14-34-ok.d: New dump test.
|
|
|
|
|
* ld-m68k/got-negative-12-13-14-35-er.d: New dump test.
|
|
|
|
|
* ld-m68k/got-multigot-14-ok.d: New dump test.
|
|
|
|
|
* ld-m68k/got-multigot-15-er.d: New dump test.
|
|
|
|
|
* ld-m68k/got-multigot-12-13-14-34-35-ok.d: New dump test.
|
|
|
|
|
* ld-m68k/xgot-15.s: New source.
|
|
|
|
|
* ld-m68k/got-xgot-15-ok.d: New test.
|
|
|
|
|
* ld-m68k/got-xgot-12-13-14-15-34-35-ok.d: New test.
|
|
|
|
|
* ld-m68k/m68k.exp: Run new tests.
|
|
|
|
|
|
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
|
|
|
|
2008-05-15 Christophe Lyon <christophe.lyon@st.com>
|
|
|
|
|
|
|
|
|
|
* 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-07 14:46:44 +00:00
|
|
|
|
2008-05-08 Alan Modra <amodra@bigpond.net.au>
|
|
|
|
|
|
|
|
|
|
* ld-spu/ear.s: Align various sections.
|
|
|
|
|
* ld-spu/embed.rd: Update.
|
|
|
|
|
|
2008-05-05 01:43:55 +00:00
|
|
|
|
2008-05-05 Alan Modra <amodra@bigpond.net.au>
|
|
|
|
|
|
|
|
|
|
PR 6473
|
|
|
|
|
* ld-elf/lma.s, ld-elf/lma.lnk: New test.
|
|
|
|
|
* ld-elf/binutils.exp: Run it.
|
|
|
|
|
|
2008-05-03 06:19:19 +00:00
|
|
|
|
2008-05-03 Mike Frysinger <vapier@gentoo.org>
|
|
|
|
|
|
|
|
|
|
* ld-scripts/defined.s: Use .set syntax rather than =.
|
|
|
|
|
|
2008-05-02 15:11:49 +00:00
|
|
|
|
2008-05-02 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/6475
|
|
|
|
|
* ld-scripts/rgn-over8-ok.d: Accept any alignment.
|
|
|
|
|
|
2008-04-29 11:53:45 +00:00
|
|
|
|
2008-04-29 Daniel Jacobowitz <dan@codesourcery.com>
|
2008-05-02 15:11:49 +00:00
|
|
|
|
|
2008-04-29 11:53:45 +00:00
|
|
|
|
* ld-arm/symbian-seg1.s, ld-arm/symbian-seg1.d: New files.
|
|
|
|
|
* ld-arm/arm-elf.exp: Run symbian-seg1.
|
|
|
|
|
|
2008-04-28 12:45:34 +00:00
|
|
|
|
2008-04-28 Nathan Sidwell <nathan@codesourcery.com>
|
|
|
|
|
|
2008-04-28 14:08:15 +00:00
|
|
|
|
* ld-scripts/rgn-over8.s: Tweak.
|
|
|
|
|
|
2008-04-28 12:45:34 +00:00
|
|
|
|
* ld-scripts/rgn-over.exp: Allow -ok file names to pass.
|
|
|
|
|
* ld-scripts/rgn-over8.s: New.
|
|
|
|
|
* ld-scripts/rgn-over8.t: New.
|
|
|
|
|
* ld-scripts/rgn-over8-ok.d: New.
|
|
|
|
|
|
2008-04-21 17:54:25 +00:00
|
|
|
|
2008-04-21 Nathan Sidwell <nathan@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* ld-vxworks/plt-mips1.s: New.
|
|
|
|
|
* ld-vxworks/plt-mips1.d: New.
|
|
|
|
|
|
2008-04-16 08:51:18 +00:00
|
|
|
|
2008-04-16 David S. Miller <davem@davemloft.net>
|
|
|
|
|
|
|
|
|
|
* ld-sparc/gotop32.dd: New.
|
|
|
|
|
* ld-sparc/gotop32.rd: Likewise.
|
|
|
|
|
* ld-sparc/gotop32.s: Likewise.
|
|
|
|
|
* ld-sparc/gotop32.sd: Likewise.
|
|
|
|
|
* ld-sparc/gotop32.td: Likewise.
|
|
|
|
|
* ld-sparc/gotop64.dd: Likewise.
|
|
|
|
|
* ld-sparc/gotop64.rd: Likewise.
|
|
|
|
|
* ld-sparc/gotop64.s: Likewise.
|
|
|
|
|
* ld-sparc/gotop64.sd: Likewise.
|
|
|
|
|
* ld-sparc/gotop64.td: Likewise.
|
|
|
|
|
* ld-sparc/sparc.exp: Run new gotdata tests.
|
|
|
|
|
|
2008-04-15 15:53:26 +00:00
|
|
|
|
2008-04-15 Andrew Stubbs <andrew.stubbs@st.com>
|
|
|
|
|
|
|
|
|
|
* ld-sh/arch/sh-dsp.s: Regenerate.
|
|
|
|
|
* ld-sh/arch/sh.s: Regenerate.
|
|
|
|
|
* ld-sh/arch/sh2.s: Regenerate.
|
|
|
|
|
* ld-sh/arch/sh2a-nofpu-or-sh3-nommu.s: Regenerate.
|
|
|
|
|
* ld-sh/arch/sh2a-nofpu-or-sh4-nommu-nofpu.s: Regenerate.
|
|
|
|
|
* ld-sh/arch/sh2a-nofpu.s: Regenerate.
|
|
|
|
|
* ld-sh/arch/sh2a-or-sh3e.s: Regenerate.: Regenerate.
|
|
|
|
|
* ld-sh/arch/sh2a-or-sh4.s: Regenerate.
|
|
|
|
|
* ld-sh/arch/sh2a.s: Regenerate.
|
|
|
|
|
* ld-sh/arch/sh2e.s: Regenerate.
|
|
|
|
|
* ld-sh/arch/sh3-dsp.s: Regenerate.
|
|
|
|
|
* ld-sh/arch/sh3-nommu.s: Regenerate.
|
|
|
|
|
* ld-sh/arch/sh3.s: Regenerate.
|
|
|
|
|
* ld-sh/arch/sh3e.s: Regenerate.
|
|
|
|
|
* ld-sh/arch/sh4-nofpu.s: Regenerate.
|
|
|
|
|
* ld-sh/arch/sh4-nommu-nofpu.s: Regenerate.
|
|
|
|
|
* ld-sh/arch/sh4.s: Regenerate.
|
|
|
|
|
* ld-sh/arch/sh4a-nofpu.s: Regenerate.
|
|
|
|
|
* ld-sh/arch/sh4a.s: Regenerate.
|
|
|
|
|
* ld-sh/arch/sh4al-dsp.s: Regenerate.
|
|
|
|
|
|
2008-04-07 23:37:25 +00:00
|
|
|
|
2008-04-08 Alan Modra <amodra@bigpond.net.au>
|
|
|
|
|
|
|
|
|
|
* ld-spu/ovl2.s: Extend to test jump table references and
|
|
|
|
|
absolute _SPUEAR_ syms.
|
|
|
|
|
* ld-spu/ovl2.d: Update.
|
|
|
|
|
|
2008-03-28 01:12:56 +00:00
|
|
|
|
2008-03-28 Joseph Myers <joseph@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* ld-elfcomm/elfcomm.exp: Run $READELF not readelf.
|
|
|
|
|
|
2008-03-26 16:02:25 +00:00
|
|
|
|
2008-03-26 Daniel Jacobowitz <dan@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* ld-elf/flags1.d: Adjust for MIPS text alignment.
|
|
|
|
|
|
2008-03-25 18:56:02 +00:00
|
|
|
|
2008-03-25 Nathan Sidwell <nathan@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* ld-vxworks/tls-3.s: New.
|
|
|
|
|
* ld-vxworks/tls-3.d: New.
|
|
|
|
|
|
2008-03-22 12:23:54 +00:00
|
|
|
|
2008-03-22 Hans-Peter Nilsson <hp@axis.com>
|
|
|
|
|
|
|
|
|
|
* ld-cris/libdso-10.d: Adjust for change in objdump output.
|
|
|
|
|
|
2008-03-21 16:29:26 +00:00
|
|
|
|
2008-03-21 Adam Nemet <anemet@caviumnetworks.com>
|
|
|
|
|
|
|
|
|
|
* ld-mips-elf/dyn-sec64.d, ld-mips-elf/dyn-sec64.s,
|
|
|
|
|
ld-mips-elf/dyn-sec64.ld: New test.
|
|
|
|
|
* ld-mips-elf/mips-elf.exp: Run it.
|
|
|
|
|
|
2008-03-20 10:53:11 +00:00
|
|
|
|
2008-03-20 Richard Sandiford <rsandifo@nildram.co.uk>
|
|
|
|
|
|
|
|
|
|
* ld-mips-elf/got-dump-1.d, ld-mips-elf/got-dump-1.s,
|
|
|
|
|
ld-mips-elf/got-dump-1.ld, ld-mips-elf/got-dump-2.d,
|
|
|
|
|
ld-mips-elf/got-dump-2.s, ld-mips-elf/got-dump-2.ld: New tests.
|
|
|
|
|
* ld-mips-elf/mips-elf.exp: Run them.
|
|
|
|
|
|
2008-03-20 10:52:14 +00:00
|
|
|
|
2008-03-20 Richard Sandiford <rsandifo@nildram.co.uk>
|
|
|
|
|
|
|
|
|
|
* ld-mips-elf/elf-rel-got-n64-linux.d: Expect bit 63 rather than
|
|
|
|
|
bit 31 of the second GOT entry to be set.
|
|
|
|
|
* ld-mips-elf/elf-rel-got-n64.d: Likewise.
|
|
|
|
|
* ld-mips-elf/elf-rel-xgot-n64-linux.d: Likewise.
|
|
|
|
|
* ld-mips-elf/elf-rel-xgot-n64.d: Likewise.
|
|
|
|
|
|
2008-03-17 18:52:04 +00:00
|
|
|
|
2008-03-17 Richard Sandiford <rsandifo@nildram.co.uk>
|
|
|
|
|
|
|
|
|
|
* ld-mips-elf/eh-frame1-n32.d: Expect a warning about .eh_frame_hdr.
|
|
|
|
|
Remove duplicate CIEs. Adjust relocation addresses and .eh_frame
|
|
|
|
|
offsets accordingly. Do not allow there to be any trailing
|
|
|
|
|
R_MIPS_NONE relocations.
|
|
|
|
|
* ld-mips-elf/eh-frame1-n64.d: Likewise.
|
|
|
|
|
* ld-mips-elf/eh-frame2-n32.d: Likewise.
|
|
|
|
|
* ld-mips-elf/eh-frame2-n64.d: Likewise.
|
|
|
|
|
|
2008-03-17 18:45:35 +00:00
|
|
|
|
2008-03-17 Richard Sandiford <rsandifo@nildram.co.uk>
|
|
|
|
|
|
|
|
|
|
* ld-mips-elf/mips-elf.exp (o32_as_flags, o32_ld_flags): New variables.
|
|
|
|
|
(mips16_call_global_test, mips16_intermix_test): Use them.
|
|
|
|
|
|
2008-03-16 22:26:23 +00:00
|
|
|
|
2008-03-16 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/5789
|
|
|
|
|
PR ld/5943
|
|
|
|
|
* ld-i386/hidden1.d: New.
|
|
|
|
|
* ld-i386/hidden1.s: Likewise.
|
|
|
|
|
* ld-i386/hidden2.d: Likewise.
|
|
|
|
|
* ld-i386/hidden2.s: Likewise.
|
|
|
|
|
* ld-i386/hidden3.d: Likewise.
|
|
|
|
|
* ld-i386/hidden4.s: Likewise.
|
|
|
|
|
* ld-i386/protected1.d: Likewise.
|
|
|
|
|
* ld-i386/protected1.s: Likewise.
|
|
|
|
|
* ld-i386/protected2.d: Likewise.
|
|
|
|
|
* ld-i386/protected2.s: Likewise.
|
|
|
|
|
* ld-i386/protected3.d: Likewise.
|
|
|
|
|
* ld-i386/protected3.s: Likewise.
|
|
|
|
|
* ld-x86-64/hidden1.d: Likewise.
|
|
|
|
|
* ld-x86-64/hidden1.s: Likewise.
|
|
|
|
|
* ld-x86-64/hidden2.d: Likewise.
|
|
|
|
|
* ld-x86-64/hidden2.s: Likewise.
|
|
|
|
|
* ld-x86-64/hidden3.d: Likewise.
|
|
|
|
|
* ld-x86-64/hidden3.s: Likewise.
|
|
|
|
|
* ld-x86-64/protected1.d: Likewise.
|
|
|
|
|
* ld-x86-64/protected1.s: Likewise.
|
|
|
|
|
* ld-x86-64/protected2.d: Likewise.
|
|
|
|
|
* ld-x86-64/protected2.s: Likewise.
|
|
|
|
|
* ld-x86-64/protected3.d: Likewise.
|
|
|
|
|
* ld-x86-64/protected3.s: Likewise.
|
|
|
|
|
|
|
|
|
|
* ld-i386/i386.exp: Run hidden1, hidden2, hidden3, protected1,
|
|
|
|
|
protected2 and protected3.
|
|
|
|
|
* ld-x86-64/x86-64.exp: Likewise.
|
|
|
|
|
|
2008-03-14 04:43:08 +00:00
|
|
|
|
2008-03-14 Alan Modra <amodra@bigpond.net.au>
|
|
|
|
|
|
|
|
|
|
* ld-spu/ovl2.s: Make setjmp global.
|
|
|
|
|
* ld-spu/ovl2.d: Update.
|
|
|
|
|
|
include/elf/
PR 5900
* common.h (SHN_BAD): Delete.
(SHN_LORESERVE .. SHN_HIRESERVE): Move to..
* external.h: ..here.
* internal.h (SHN_LORESERVE, SHN_HIRESERVE): Define.
(SHN_LOPROC, SHN_HIPROC, SHN_LOOS, SHN_HIOS): Define.
(SHN_ABS, SHN_COMMON, SHN_XINDEX, SHN_BAD): Define.
bfd/
PR 5900
* elf-bfd.h: Include elf/internal.h after elf/external.h.
* elfcode.h (elf_swap_symbol_in): Map reserved shndx range.
(elf_swap_symbol_out): Adjust SHN_XINDEX test.
(elf_swap_ehdr_out): Mask SHN_LORESERVE and SHN_XINDEX to values
seen in external structs.
(valid_section_index_p): Delete.
(elf_object_p): Don't increment section numbers over reserved range.
Simplify test for valid sh_link, sh_info and e_shstrndx fields.
(elf_write_shdrs_and_ehdr): Mask SHN_LORESERVE and SHN_XINDEX to values
seen in external structs. Don't increment section numbers over
reserved range.
* elf.c (bfd_elf_sym_name): Remove redundant tests on st_shndx.
(bfd_section_from_shdr): Likewise.
(group_signature): Range check before accessing elf_elfsections.
(_bfd_elf_setup_sections): Likewise.
(bfd_section_from_shdr): Likewise.
(bfd_section_from_shdr): Don't increment section number over
reserved sections.
(assign_file_positions_for_non_load_sections): Likewise.
(assign_file_positions_except_relocs): Likewise.
(_bfd_elf_write_object_contents): Likewise.
(assign_section_numbers): Likewise. Adjust for changed SHN_*.
(prep_headers): Delete unused variable.
* elflink.c (bfd_elf_link_record_local_dynamic_symbol): Adjust
for changed SHN_* values.
(check_dynsym, elf_link_input_bfd): Likewise.
(bfd_elf_final_link): Likewise. Don't skip over reserved section
range.
(elf_fixup_link_order): Check that sh_link field is valid.
* elf-hppa.h (elf_hppa_add_symbol_hook): Make "index" unsigned.
* elf32-arm.c (elf32_arm_gc_mark_extra_sections): Range check before
accesssing elf_elfsections.
* elf32-avr.c (elf32_avr_size_stubs): Likewise.
* elf32-hppa.c (elf32_hppa_size_stubs): Likewise.
* elf32-m68hc1x.c (elf32_m68hc11_size_stubs): Likewise.
* elf64-hppa.c (elf64_hppa_check_relocs): Adjust for changed
SHN_* defines. Test for SHN_BAD return from
_bfd_elf_section_from_bfd_section
binutils/
PR 5900
* readelf.c (SECTION_HEADER_INDEX, SECTION_HEADER_NUM): Delete.
Remove use throughout file.
(SECTION_HEADER): Likewise.
(dump_relocations): Don't adjust st_shndx for reserved range.
(process_file_header): Mask SHN_XINDEX to values seen in external
elf structs. Simplify valid section index tests.
(get_32bit_elf_symbols, get_64bit_elf_symbols): Mask SHN_XINDEX.
Map reserved st_shndx to internal form.
(process_section_groups): Test that group symbol st_shndx is in
range, not just non-zero. Delete reserved range check.
(get_symbol_index_type): Mask "type" to 16 bits when printing PRC,
OS or RSV.
gdb/
PR 5900
* elfread.c (elf_symtab_read): Make shndx an unsigned int.
* mipsread.c: Include elf/internal.h.
(read_alphacoff_dynamic_symtab): Map external reserved sym_shndx
to internal range.
ld/testsuite/
PR 5900
* ld-elf/sec64k.exp: Update.
2008-03-12 08:37:09 +00:00
|
|
|
|
2008-03-12 Alan Modra <amodra@bigpond.net.au>
|
|
|
|
|
|
|
|
|
|
PR 5900
|
|
|
|
|
* ld-elf/sec64k.exp: Update.
|
|
|
|
|
|
2008-03-08 14:58:14 +00:00
|
|
|
|
2008-03-08 Paul Brook <paul@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* ld-arm/arm-elf.exp (armeabitests): Add thumb2-b-interwork.
|
|
|
|
|
* ld-arm/thumb2-b-interwork.d: New test.
|
|
|
|
|
* ld-arm/thumb2-b-interwork.s: New test.
|
|
|
|
|
|
2008-03-08 01:20:39 +00:00
|
|
|
|
2008-03-07 Paul Brook <paul@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* ld-arm/arm-elf.exp (armelftests): Add movw-merge and arm-app-movw.
|
|
|
|
|
* ld-arm/arm-app-movw.s: New test.
|
|
|
|
|
* ld-arm/arm-app.r: Update expected output.
|
|
|
|
|
* ld-arm/movw-merge.d: New test.
|
|
|
|
|
* ld-arm/movw-merge.s: New test.
|
|
|
|
|
|
2008-03-01 06:52:52 +00:00
|
|
|
|
2008-03-01 Alan Modra <amodra@bigpond.net.au>
|
|
|
|
|
|
|
|
|
|
* ld-powerpc/relbrlt.d: Update. Also check .branch_lt section.
|
|
|
|
|
|
2008-02-27 17:06:42 +00:00
|
|
|
|
2008-02-27 Catherine Moore <clm@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* ld-cris/libdso-10.d: Update expected output for the Dynamic
|
|
|
|
|
Section to allow an arbitrary number of spaces.
|
|
|
|
|
|
2008-02-22 23:10:45 +00:00
|
|
|
|
2008-02-20 Mark Mitchell <mark@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
ld/testsuite/
|
|
|
|
|
* ld-elf/seg.d: Expect .reginfo section on MIPS.
|
|
|
|
|
|
2008-02-20 17:51:18 +00:00
|
|
|
|
2008-02-20 Pedro Alves <pedro_alves@portugalmail.pt>
|
|
|
|
|
|
|
|
|
|
* ld-auto-import/auto-import.exp: Use $ld to link the dll for
|
|
|
|
|
cygwin, not $CC.
|
|
|
|
|
|
2008-02-18 11:04:09 +00:00
|
|
|
|
2008-02-18 Hans-Peter Nilsson <hp@axis.com>
|
|
|
|
|
|
|
|
|
|
* lib/ld-lib.exp (run_dump_test): Don't apply prune_warnings
|
|
|
|
|
for tool invocations where warnings or errors can be matched.
|
|
|
|
|
|
2008-02-14 20:23:27 +00:00
|
|
|
|
2008-02-14 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* ld-shared/sh1.c (shlib_overriddencall2): Moved to ...
|
|
|
|
|
* ld-shared/sh2.c (shlib_overriddencall2): Here. New.
|
|
|
|
|
|
2008-02-07 11:03:06 +00:00
|
|
|
|
2008-02-07 Alan Modra <amodra@bigpond.net.au>
|
|
|
|
|
|
|
|
|
|
* ld-spu/ovl.d: Update.
|
|
|
|
|
* ld-spu/ovl2.d: Update.
|
|
|
|
|
|
2008-02-04 23:41:54 +00:00
|
|
|
|
2008-02-04 Bob Wilson <bob.wilson@acm.org>
|
|
|
|
|
|
|
|
|
|
* ld-undefined/undefined.exp: XFAIL for xtensa*-*-linux*.
|
|
|
|
|
|
2008-02-01 17:58:48 +00:00
|
|
|
|
2008-01-31 Marc Gauthier <marc@tensilica.com>
|
|
|
|
|
|
|
|
|
|
* ld-elf/merge.d: Recognize Xtensa processor variants.
|
|
|
|
|
* ld-xtensa/coalesce.exp: Likewise.
|
|
|
|
|
* ld-xtensa/lcall.exp: Likewise.
|
|
|
|
|
|
2008-01-28 16:41:05 +00:00
|
|
|
|
2008-01-28 Petr Muller <pmuller@redhat.com>
|
|
|
|
|
|
|
|
|
|
* ld-elfvers/vers.exp (test_ar): Sort the expected output so that
|
|
|
|
|
it has matches the ordering of the obtained output.
|
|
|
|
|
|
2008-01-28 15:15:32 +00:00
|
|
|
|
2008-01-28 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* ld-elf/eh1.d: Replace DW_CFA_def_cfa_reg with
|
|
|
|
|
DW_CFA_def_cfa_register. Updated for i386/x86-64 register
|
|
|
|
|
names.
|
|
|
|
|
* ld-elf/eh2.d: Likewise.
|
|
|
|
|
* ld-elf/eh3.d: Likewise.
|
|
|
|
|
* ld-elf/eh4.d: Likewise.
|
|
|
|
|
* ld-elf/eh5.d: Likewise.
|
|
|
|
|
|
2008-01-28 05:59:24 +00:00
|
|
|
|
2008-01-28 Alan Modra <amodra@bigpond.net.au>
|
|
|
|
|
|
|
|
|
|
* ld-spu/ovl.d: Update.
|
|
|
|
|
* ld-spu/ovl2.d: Update.
|
|
|
|
|
|
2008-01-26 02:57:06 +00:00
|
|
|
|
2008-01-26 Alan Modra <amodra@bigpond.net.au>
|
|
|
|
|
|
|
|
|
|
* ld-elf/loadaddr.t: New, extracted from..
|
|
|
|
|
* ld-elf/loadaddr1.t: ..here. Use insert.
|
|
|
|
|
* ld-elf/loadaddr2.t: Likewise.
|
|
|
|
|
* ld-elf/loadaddr1.d: Update.
|
|
|
|
|
* ld-elf/loadaddr2.d: Update.
|
|
|
|
|
|
ld/
* ld.texinfo (INSERT): Describe.
* ldgram.y (ldgram_in_script, ldgram_had_equals): Delete.
(INSERT_K, AFTER, BEFORE): Add as tokens.
(ifile_p1): Handle INSERT statements.
(saved_script_handle, force_make_executable): Move to..
* ldmain.c: ..here.
(previous_script_handle): New global var.
* ldmain.h (saved_script_handle, force_make_executable): Declare.
(previous_script_handle): Likewise.
* ldlex.l (INSERT_K, AFTER, BEFORE): Add tokens.
* lexsup.c (parge_args <-T>): Set previous_script_handle.
* ldlang.c (lang_for_each_statement_worker): Handle insert statement.
(map_input_to_output_sections, print_statement): Likewise.
(lang_size_sections_1, lang_do_assignments_1): Likewise.
(insert_os_after): New function, extracted from..
(lang_insert_orphan): ..here.
(process_insert_statements): New function.
(lang_process): Call it.
(lang_add_insert): New function.
* ldlang.h (lang_insert_statement_enum): New.
(lang_insert_statement_type): New.
(lang_statement_union_type): Add insert_statement.
(lang_add_insert): Declare.
ld/testsuite/
* ld-spu/ovl.lnk: Delete overlay.
* ld-spu/ovl1.lnk: New file.
* ld-spu/ovl2.lnk: New file.
* ld-spu/ovl.d: Update.
* ld-spu/ovl2.d: Update.
2008-01-25 12:03:37 +00:00
|
|
|
|
2008-01-25 Alan Modra <amodra@bigpond.net.au>
|
|
|
|
|
|
|
|
|
|
* ld-spu/ovl.lnk: Delete overlay.
|
|
|
|
|
* ld-spu/ovl1.lnk: New file.
|
|
|
|
|
* ld-spu/ovl2.lnk: New file.
|
|
|
|
|
* ld-spu/ovl.d: Update.
|
|
|
|
|
* ld-spu/ovl2.d: Update.
|
|
|
|
|
|
2008-01-23 16:05:45 +00:00
|
|
|
|
2008-01-23 Andreas Schwab <schwab@suse.de>
|
|
|
|
|
|
|
|
|
|
* ld-gc/gc.c: Make sure used_func is not inlined.
|
|
|
|
|
|
2008-01-22 19:36:58 +00:00
|
|
|
|
2008-01-22 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* ld-gc/gc.exp: Use [which $CC] != 0.
|
|
|
|
|
|
2008-01-14 19:52:43 +00:00
|
|
|
|
2008-01-14 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* ld-gc/gc.exp (test_gc): Let missing C compiler make tests
|
|
|
|
|
"untested" instead of "failed".
|
|
|
|
|
|
2008-01-11 09:11:18 +00:00
|
|
|
|
2008-01-10 Tristan Gingold <gingold@adacore.com>
|
|
|
|
|
|
|
|
|
|
* lib/ld-lib.exp (check_gc_sections_available): Now available on
|
|
|
|
|
VxWorks.
|
|
|
|
|
* ld-gc: New directory for testing --gc-sections.
|
|
|
|
|
* ld-gc/gc.c: New file.
|
|
|
|
|
* ld-gc/gc.exp: New file.
|
|
|
|
|
* ld-gc/noent.s: New file.
|
|
|
|
|
* ld-gc/noent.d: New file.
|
|
|
|
|
|
2008-01-09 09:36:11 +00:00
|
|
|
|
2008-01-09 Richard Sandiford <rsandifo@nildram.co.uk>
|
|
|
|
|
|
|
|
|
|
PR ld/5526
|
|
|
|
|
* ld-elf/eh6.s, ld-elf/eh6.d: New test.
|
|
|
|
|
|
2008-01-07 16:45:35 +00:00
|
|
|
|
2008-01-07 H.J. Lu <hongjiu.lu@intel.com>
|
2007-12-31 11:29:01 +00:00
|
|
|
|
|
2008-01-07 16:45:35 +00:00
|
|
|
|
PR ld/5522
|
|
|
|
|
* ld-elf/noload-3.d: New file.
|
|
|
|
|
* ld-elf/noload-3.s: Likewise.
|
|
|
|
|
* ld-elf/noload-3.t: Likewise.
|
2007-12-31 11:29:01 +00:00
|
|
|
|
|
2008-01-07 16:45:35 +00:00
|
|
|
|
For older changes see ChangeLog-2007
|
2004-01-02 11:16:21 +00:00
|
|
|
|
|
|
|
|
|
Local Variables:
|
|
|
|
|
mode: change-log
|
|
|
|
|
left-margin: 8
|
|
|
|
|
fill-column: 74
|
|
|
|
|
version-control: never
|
|
|
|
|
End:
|