diff options
author | Richard Henderson <rth@redhat.com> | 2014-05-21 11:36:03 -0400 |
---|---|---|
committer | Richard Henderson <rth@redhat.com> | 2014-05-21 11:36:03 -0400 |
commit | 3612eb8f25d978e7e4ac536a34098091f737161c (patch) | |
tree | 7d70eb50ed9a9a6a6b807cc345b2e27e26983248 | |
parent | 175cef4163dd60f95106cfd5f593b8a4e09d02c9 (diff) | |
download | glibc-3612eb8f25d978e7e4ac536a34098091f737161c.tar.gz glibc-3612eb8f25d978e7e4ac536a34098091f737161c.tar.xz glibc-3612eb8f25d978e7e4ac536a34098091f737161c.zip |
aarch64: Merge rtld_errno offset with memory reference
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/aarch64/sysdep.h | 3 |
2 files changed, 6 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog index 7f49fbbf70..4f0414ef0a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2014-05-21 Richard Henderson <rth@redhat.com> + + * sysdeps/unix/sysv/linux/aarch64/sysdep.h [RTLD_PRIVATE_ERRNO] + (SYSCALL_ERROR_HANDLER): Fold add insn into str offset. + 2014-05-20 Joseph Myers <joseph@codesourcery.com> * sysdeps/unix/sysv/linux/arm/unwind-forcedunwind.c diff --git a/sysdeps/unix/sysv/linux/aarch64/sysdep.h b/sysdeps/unix/sysv/linux/aarch64/sysdep.h index d90ef25bc4..8397ad30a9 100644 --- a/sysdeps/unix/sysv/linux/aarch64/sysdep.h +++ b/sysdeps/unix/sysv/linux/aarch64/sysdep.h @@ -117,9 +117,8 @@ # define SYSCALL_ERROR_HANDLER \ __local_syscall_error: \ adrp x1, C_SYMBOL_NAME(rtld_errno); \ - add x1, x1, #:lo12:C_SYMBOL_NAME(rtld_errno); \ neg w0, w0; \ - str w0, [x1]; \ + str w0, [x1, :lo12:C_SYMBOL_NAME(rtld_errno)]; \ mov x0, -1; \ RET; # else |