ucontext.h (975B)
1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2#ifndef _ASM_POWERPC_UCONTEXT_H 3#define _ASM_POWERPC_UCONTEXT_H 4 5#ifdef __powerpc64__ 6#include <asm/sigcontext.h> 7#else 8#include <asm/elf.h> 9#endif 10#include <asm/signal.h> 11 12#ifndef __powerpc64__ 13struct 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))); 18}; 19#endif 20 21struct 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 39}; 40 41#endif /* _ASM_POWERPC_UCONTEXT_H */