OSDN Git Service

bfd/
authorhjl <hjl>
Mon, 1 Jun 2009 12:53:00 +0000 (12:53 +0000)
committerhjl <hjl>
Mon, 1 Jun 2009 12:53:00 +0000 (12:53 +0000)
commit6857fe6d510104e3f2936ff09526d6151e257ad7
treed8af422c037b4f6081fcd9e64f992fd45f936c76
parent675cc1b55b5933bea511d818a14b1f8644e6fdc4
bfd/

2009-06-01  H.J. Lu  <hongjiu.lu@intel.com>

* elf-bfd.h (struct bfd_elf_section_data): Remove indirect_relocs.
(_bfd_elf_make_ifunc_reloc_section): Removed.
(_bfd_elf_is_ifunc_symbol): Likewise.
(_bfd_elf_create_static_ifunc_sections): New.

* elflink.c (_bfd_elf_adjust_dynamic_symbol): Move STT_GNU_IFUNC
symbol check to ...
(elf_link_add_object_symbols): Here.
(_bfd_elf_link_hash_hide_symbol): Don't clean plt on
STT_GNU_IFUNC symbol.
(elf_link_output_extsym): Call elf_backend_finish_dynamic_symbol
if a STT_GNU_IFUNC symbol is referenced in a non-shared object.
(IFUNC_INFIX): Removed.
(get_ifunc_reloc_section_name): Likewise.
(_bfd_elf_make_ifunc_reloc_section): Likewise.
(_bfd_elf_is_ifunc_symbol): Likewise.
(_bfd_elf_create_static_ifunc_sections): New.

ld/

2009-06-01  H.J. Lu  <hongjiu.lu@intel.com>

* scripttempl/elf.sc (PLT): Add "*(.iplt)".
(GOT): Add "*(.igot.plt)a" and "*(.igot)".
(GOTPLT): Add "*(.igot)".
(__rel_iplt_start): New.
(__rel_iplt_end): Likewise.
(__rela_iplt_start): Likewise.
(__rela_iplt_end): Likewise.
bfd/ChangeLog
bfd/elf-bfd.h
bfd/elflink.c
ld/ChangeLog
ld/scripttempl/elf.sc