diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2009-06-06 22:39:25 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2009-06-06 22:39:25 +0000 |
commit | 2a81c24ab145893771d1d64f204af5f864b67f2e (patch) | |
tree | 6ad54f8da71960f9ffb53e31e300d04bcac06e88 /bfd/ChangeLog | |
parent | 0e7c7f11f471e3350d50c08fda8e3ddf055940f2 (diff) | |
download | gdb-2a81c24ab145893771d1d64f204af5f864b67f2e.zip gdb-2a81c24ab145893771d1d64f204af5f864b67f2e.tar.gz gdb-2a81c24ab145893771d1d64f204af5f864b67f2e.tar.bz2 |
bfd/
2009-06-06 H.J. Lu <hongjiu.lu@intel.com>
* elf32-i386.c (elf_i386_link_hash_table): Add irelifunc.
(elf_i386_link_hash_table_create): Initialize irelifunc.
(elf_i386_check_relocs): Updated. Set up irelifunc for
shared objects.
(elf_i386_allocate_dynrelocs): Use irelifunc for dynamic
relocation for non-GOT reference of STT_GNU_IFUNC symbol in
shared objects.
(elf_i386_relocate_section): Likewise.
* elf64-x86-64.c (elf64_x86_64_link_hash_table): Add irelifunc.
(elf64_x86_64_link_hash_table_create): Initialize irelifunc.
(elf64_x86_64_check_relocs): Updated. Set up irelifunc for
shared objects.
(elf64_x86_64_allocate_dynrelocs): Use irelifunc for dynamic
relocation for non-GOT reference of STT_GNU_IFUNC symbol in
shared objects.
(elf64_x86_64_relocate_section): Likewise.
* elf-bfd.h (_bfd_elf_create_static_ifunc_sections): Renamed to
...
(_bfd_elf_create_ifunc_sections): This.
* elflink.c (_bfd_elf_create_static_ifunc_sections): Renamd to
...
(_bfd_elf_create_ifunc_sections): This. Create .rel[a].ifunc
for shared objects.
ld/
2009-06-06 H.J. Lu <hongjiu.lu@intel.com>
* scripttempl/elf.sc: Add .rel.ifunc and .rela.ifunc.
Diffstat (limited to 'bfd/ChangeLog')
-rw-r--r-- | bfd/ChangeLog | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 8948973..c306b52 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,34 @@ 2009-06-06 H.J. Lu <hongjiu.lu@intel.com> + * elf32-i386.c (elf_i386_link_hash_table): Add irelifunc. + (elf_i386_link_hash_table_create): Initialize irelifunc. + (elf_i386_check_relocs): Updated. Set up irelifunc for + shared objects. + (elf_i386_allocate_dynrelocs): Use irelifunc for dynamic + relocation for non-GOT reference of STT_GNU_IFUNC symbol in + shared objects. + (elf_i386_relocate_section): Likewise. + + * elf64-x86-64.c (elf64_x86_64_link_hash_table): Add irelifunc. + (elf64_x86_64_link_hash_table_create): Initialize irelifunc. + (elf64_x86_64_check_relocs): Updated. Set up irelifunc for + shared objects. + (elf64_x86_64_allocate_dynrelocs): Use irelifunc for dynamic + relocation for non-GOT reference of STT_GNU_IFUNC symbol in + shared objects. + (elf64_x86_64_relocate_section): Likewise. + + * elf-bfd.h (_bfd_elf_create_static_ifunc_sections): Renamed to + ... + (_bfd_elf_create_ifunc_sections): This. + + * elflink.c (_bfd_elf_create_static_ifunc_sections): Renamd to + ... + (_bfd_elf_create_ifunc_sections): This. Create .rel[a].ifunc + for shared objects. + +2009-06-06 H.J. Lu <hongjiu.lu@intel.com> + * elf32-i386.c (elf_i386_check_relocs): Make room for dynamic relocation for R_386_32 against STT_GNU_IFUNC symbol when building shared object. Check info->executable instead of |