Split code that use arch-specific registers to separate arch files. * sigreturn.c (sys_sigreturn): Move arch-specific code to linux/*/arch_sigreturn.c, include "arch_sigreturn.c". * linux/arch_sigreturn.c: New file. * Makefile.am (EXTRA_DIST): Add linux/arch_sigreturn.c and linux/*/arch_sigreturn.c files.
16 lines
448 B
C
16 lines
448 B
C
#define SIZEOF_STRUCT_SIGINFO 128
|
|
#define SIZEOF_STRUCT_SIGCONTEXT (21 * 4)
|
|
#define OFFSETOF_STRUCT_UCONTEXT_UC_SIGMASK (5 * 4 + SIZEOF_STRUCT_SIGCONTEXT)
|
|
|
|
const long addr =
|
|
#ifdef AARCH64
|
|
current_personality == 1 ?
|
|
(*aarch64_sp_ptr + SIZEOF_STRUCT_SIGINFO +
|
|
offsetof(struct ucontext, uc_sigmask)) :
|
|
#endif
|
|
(*arm_sp_ptr +
|
|
OFFSETOF_STRUCT_UCONTEXT_UC_SIGMASK);
|
|
tprints("{mask=");
|
|
print_sigset_addr_len(tcp, addr, NSIG / 8);
|
|
tprints("}");
|