commit | ba85c15dabe144e4bcee5a1b388b32bee10729e1 | [log] [tgz] |
---|---|---|
author | Alan Modra <amodra@gmail.com> | Fri Nov 30 15:34:11 2018 +1030 |
committer | Alan Modra <amodra@gmail.com> | Fri Nov 30 16:18:58 2018 +1030 |
tree | ddf634de67d2a3d2c662c569788b3607b9995048 | |
parent | f746c08f26dd71fdd809bad8cb92a6cbb8336ec4 [diff] |
PR23937, powerpc64le local ifunc IRELATIVE relocs are wrong IFUNC resolvers must always be called via their global entry point. They will be called from ld.so rather than from the local executable. PR 23937 bfd/ * elf64-ppc.c (write_plt_relocs_for_local_syms): Don't add local entry offset for ifuncs. ld/ * testsuite/ld-powerpc/pr23937.d, * testsuite/ld-powerpc/pr23937.s: New test. * testsuite/ld-powerpc/powerpc.exp: Run it.