diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2011-05-25 17:41:32 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2011-05-25 17:41:32 +0000 |
commit | 946593d19f203b02efd45b5102dd2787d9418e24 (patch) | |
tree | 5988de1a80f005860c0712a8679edb872e9063de /ld/testsuite/ld-ifunc/ifunc-12-x86-64.d | |
parent | f6cc7b1a4ec26e3f629949c4834945d6bcbc7267 (diff) | |
download | binutils-redhat-946593d19f203b02efd45b5102dd2787d9418e24.tar.gz |
Handle STT_GNU_IFUNC symols when building shared library.
bfd/
2012-05-25 H.J. Lu <hongjiu.lu@intel.com>
Backport from mainline
2012-01-06 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12366
PR ld/12371
* elf-ifunc.c (_bfd_elf_allocate_ifunc_dyn_relocs): Properly
handle symbols marked with regular reference, but not non-GOT
reference when building shared library.
* elf32-i386.c (elf_i386_gc_sweep_hook): Properly handle
local and global STT_GNU_IFUNC symols when building shared
library.
* elf64-x86-64.c (elf_x86_64_gc_sweep_hook): Likewise.
ld/testsuite/
2012-05-25 H.J. Lu <hongjiu.lu@intel.com>
Backport from mainline
2012-01-06 H.J. Lu <hongjiu.lu@intel.com>
PR ld/12366
PR ld/12371
* ld-ifunc/ifunc-10-i386.s: Add more tests.
* ld-ifunc/ifunc-10-x86-64.s: Likewise.
* ld-ifunc/ifunc-11-i386.s: Likewise.
* ld-ifunc/ifunc-11-x86-64.s: Likewise.
* ld-ifunc/ifunc-12-i386.d: New.
* ld-ifunc/ifunc-12-i386.s: Likewise.
* ld-ifunc/ifunc-12-x86-64.d: Likewise.
* ld-ifunc/ifunc-12-x86-64.s: Likewise.
* ld-ifunc/ifunc-13-i386.d: Likewise.
* ld-ifunc/ifunc-13-x86-64.d: Likewise.
* ld-ifunc/ifunc-13a-i386.s: Likewise.
* ld-ifunc/ifunc-13a-x86-64.s: Likewise.
* ld-ifunc/ifunc-13b-i386.s: Likewise.
* ld-ifunc/ifunc-13b-x86-64.s: Likewise.
Diffstat (limited to 'ld/testsuite/ld-ifunc/ifunc-12-x86-64.d')
-rw-r--r-- | ld/testsuite/ld-ifunc/ifunc-12-x86-64.d | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/ld/testsuite/ld-ifunc/ifunc-12-x86-64.d b/ld/testsuite/ld-ifunc/ifunc-12-x86-64.d new file mode 100644 index 0000000000..40f07c38bb --- /dev/null +++ b/ld/testsuite/ld-ifunc/ifunc-12-x86-64.d @@ -0,0 +1,6 @@ +#ld: -shared -m elf_x86_64 -e bar --gc-sections +#as: --64 +#readelf: -r --wide +#target: x86_64-*-* + +There are no relocations in this file. |