WIP FPC-III support
[linux/fpc-iii.git] / arch / powerpc / include / uapi / asm / ucontext.h
blob6f14a96d4985573ddc07211ed2ddad3920e915f3
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 #ifndef _ASM_POWERPC_UCONTEXT_H
3 #define _ASM_POWERPC_UCONTEXT_H
5 #ifdef __powerpc64__
6 #include <asm/sigcontext.h>
7 #else
8 #include <asm/elf.h>
9 #endif
10 #include <asm/signal.h>
12 #ifndef __powerpc64__
13 struct mcontext {
14 elf_gregset_t mc_gregs;
15 elf_fpregset_t mc_fregs;
16 unsigned long mc_pad[2];
17 elf_vrregset_t mc_vregs __attribute__((__aligned__(16)));
19 #endif
21 struct ucontext {
22 unsigned long uc_flags;
23 struct ucontext __user *uc_link;
24 stack_t uc_stack;
25 #ifndef __powerpc64__
26 int uc_pad[7];
27 struct mcontext __user *uc_regs;/* points to uc_mcontext field */
28 #endif
29 sigset_t uc_sigmask;
30 /* glibc has 1024-bit signal masks, ours are 64-bit */
31 #ifdef __powerpc64__
32 sigset_t __unused[15]; /* Allow for uc_sigmask growth */
33 struct sigcontext uc_mcontext; /* last for extensibility */
34 #else
35 int uc_maskext[30];
36 int uc_pad2[3];
37 struct mcontext uc_mcontext;
38 #endif
41 #endif /* _ASM_POWERPC_UCONTEXT_H */