aarch64: implement rt_sigreturn decoding

* linux/64/syscallent.h (139): Use sys_sigreturn for rt_sigreturn
decoding.
* syscall.c [ARM] (arm_regs): Make static.
[ARM] (arm_sp_ptr): New variable.
[AARCH64] (aarch64_sp_ptr, arm_sp_ptr): New variables.
* linux/aarch64/arch_regs.h: New file.
* linux/arm/arch_regs.h (arm_regs): Remove.
(arm_sp_ptr): New declaration.
* signal.c (sys_sigreturn) [ARM]: Use arm_sp_ptr.
[AARCH64]: Print signal mask.
diff --git a/syscall.c b/syscall.c
index cfedc9f..59f7d9a 100644
--- a/syscall.c
+++ b/syscall.c
@@ -712,7 +712,8 @@
 #elif defined(BFIN)
 static long bfin_r0;
 #elif defined(ARM)
-struct pt_regs arm_regs; /* not static */
+static struct pt_regs arm_regs;
+long *const arm_sp_ptr = &arm_regs.ARM_sp;
 # define ARCH_REGS_FOR_GETREGS arm_regs
 #elif defined(AARCH64)
 struct arm_pt_regs {
@@ -742,6 +743,8 @@
 } arm_regs_union;
 # define aarch64_regs arm_regs_union.aarch64_r
 # define arm_regs     arm_regs_union.arm_r
+uint64_t *const aarch64_sp_ptr = &aarch64_regs.sp;
+int *const arm_sp_ptr = &arm_regs.ARM_sp;
 static struct iovec aarch64_io = {
 	.iov_base = &arm_regs_union
 };