41 lines
		
	
	
	
		
			912 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			41 lines
		
	
	
	
		
			912 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
|   | #ifndef _ASM_POWERPC_UCONTEXT_H
 | ||
|  | #define _ASM_POWERPC_UCONTEXT_H
 | ||
|  | 
 | ||
|  | #ifdef __powerpc64__
 | ||
|  | #include <asm/sigcontext.h>
 | ||
|  | #else
 | ||
|  | #include <asm/elf.h>
 | ||
|  | #endif
 | ||
|  | #include <asm/signal.h>
 | ||
|  | 
 | ||
|  | #ifndef __powerpc64__
 | ||
|  | struct mcontext { | ||
|  | 	elf_gregset_t	mc_gregs; | ||
|  | 	elf_fpregset_t	mc_fregs; | ||
|  | 	unsigned long	mc_pad[2]; | ||
|  | 	elf_vrregset_t	mc_vregs __attribute__((__aligned__(16))); | ||
|  | }; | ||
|  | #endif
 | ||
|  | 
 | ||
|  | struct ucontext { | ||
|  | 	unsigned long	uc_flags; | ||
|  | 	struct ucontext __user *uc_link; | ||
|  | 	stack_t		uc_stack; | ||
|  | #ifndef __powerpc64__
 | ||
|  | 	int		uc_pad[7]; | ||
|  | 	struct mcontext	__user *uc_regs;/* points to uc_mcontext field */ | ||
|  | #endif
 | ||
|  | 	sigset_t	uc_sigmask; | ||
|  | 	/* glibc has 1024-bit signal masks, ours are 64-bit */ | ||
|  | #ifdef __powerpc64__
 | ||
|  | 	sigset_t	__unused[15];	/* Allow for uc_sigmask growth */ | ||
|  | 	struct sigcontext uc_mcontext;	/* last for extensibility */ | ||
|  | #else
 | ||
|  | 	int		uc_maskext[30]; | ||
|  | 	int		uc_pad2[3]; | ||
|  | 	struct mcontext	uc_mcontext; | ||
|  | #endif
 | ||
|  | }; | ||
|  | 
 | ||
|  | #endif /* _ASM_POWERPC_UCONTEXT_H */
 |