From 42de7e20299e0bab8b8b761b34ebcd4b60c68132 Mon Sep 17 00:00:00 2001 From: Adhemerval Zanella Date: Wed, 8 Feb 2017 16:30:43 -0200 Subject: aarch64: fix errno address calculation in SYSCALL_ERROR_HANDLER This patch fixes the last regression in LTP lite scenario (mmap16) comparing to lp64 in my source trees [1, 2]. The fix has been suggested back in 2015 [3] but was never applied. Checked on aarch64-linux-gnu. * sysdeps/unix/sysv/linux/aarch64/sysdep.h: use PTR_REG() for offset calculation in SYSCALL_ERROR_HANDLER(). [1] https://github.com/norov/glibc/tree/dev9 [2] https://github.com/norov/linux/tree/ilp32-20170203 [3] https://sourceware.org/ml/libc-alpha/2015-03/msg00587.html --- sysdeps/unix/sysv/linux/aarch64/sysdep.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'sysdeps') diff --git a/sysdeps/unix/sysv/linux/aarch64/sysdep.h b/sysdeps/unix/sysv/linux/aarch64/sysdep.h index ad49241620..f301638a81 100644 --- a/sysdeps/unix/sysv/linux/aarch64/sysdep.h +++ b/sysdeps/unix/sysv/linux/aarch64/sysdep.h @@ -108,7 +108,7 @@ .Lsyscall_error: \ adrp x1, :gottprel:errno; \ neg w2, w0; \ - ldr x1, [x1, :gottprel_lo12:errno]; \ + ldr PTR_REG(1), [x1, :gottprel_lo12:errno]; \ mrs x3, tpidr_el0; \ mov x0, -1; \ str w2, [x1, x3]; \ -- cgit v1.2.3