diff options
author | John David Anglin <dave.anglin@bell.net> | 2016-01-02 09:48:18 -0500 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2016-01-08 02:19:26 -0500 |
commit | 48025aa9ed3b9a5f5f3b1310eec79b66fb645c17 (patch) | |
tree | ca262547243148a546d8989f77b5180782374083 /sysdeps/powerpc | |
parent | 6e76c11f89e9bd0b8bb7185dc754bf6c7dac572b (diff) | |
download | glibc-48025aa9ed3b9a5f5f3b1310eec79b66fb645c17.zip glibc-48025aa9ed3b9a5f5f3b1310eec79b66fb645c17.tar.gz glibc-48025aa9ed3b9a5f5f3b1310eec79b66fb645c17.tar.bz2 |
hppa: fix dladdr [BZ #19415]
The attached patch fixes dladdr on hppa.
Instead of using the generic version of _dl_lookup_address, we use an
implementation more or less modeled after __canonicalize_funcptr_for_compare()
in gcc. The function pointer is analyzed and if it points to the
trampoline used to call _dl_runtime_resolve just before the global
offset table, then we call _dl_fixup to resolve the function pointer.
Then, we return the instruction pointer from the first word of the
descriptor.
The change fixes the testcase provided in [BZ #19415] and the Debian
nss package now builds successfully.
Diffstat (limited to 'sysdeps/powerpc')
0 files changed, 0 insertions, 0 deletions