Implement missing bits to support lazy binding. Note that the code
authorkettenis <kettenis@openbsd.org>
Thu, 21 Dec 2017 00:32:55 +0000 (00:32 +0000)
committerkettenis <kettenis@openbsd.org>
Thu, 21 Dec 2017 00:32:55 +0000 (00:32 +0000)
commit1e3b5417ef9f10e0ae59a4caa859002e701284c3
treecd08a658150025dad25d4d6f4c63b9357eb8329a
parent704c36ef6689739296d1c295b6eadcf3a1b900a5
Implement missing bits to support lazy binding.  Note that the code
deliberately does not save the floating-point argument registers
before calling _dl_bind().  Doing so would force an FPU context switch
upon every function call through the PLT.  But since we compile ld.so
with -march=armv8-a+nofp+nosimd this is safe since nothing in the _dl_bind()
codepath uses he FPU registers.

ok guenther@, drahn@
libexec/ld.so/aarch64/ldasm.S
libexec/ld.so/aarch64/rtld_machine.c