mirror of
				https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
				synced 2025-10-31 20:42:39 +00:00 
			
		
		
		
	 a439fe51a1
			
		
	
	
		a439fe51a1
		
	
	
	
	
		
			
			The majority of this patch was created by the following script: *** ASM=arch/sparc/include/asm mkdir -p $ASM git mv include/asm-sparc64/ftrace.h $ASM git rm include/asm-sparc64/* git mv include/asm-sparc/* $ASM sed -ie 's/asm-sparc64/asm/g' $ASM/* sed -ie 's/asm-sparc/asm/g' $ASM/* *** The rest was an update of the top-level Makefile to use sparc for header files when sparc64 is being build. And a small fixlet to pick up the correct unistd.h from sparc64 code. Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
		
			
				
	
	
		
			72 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			72 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  * uctx.h: Sparc64 {set,get}context() register state layouts.
 | |
|  *
 | |
|  * Copyright (C) 1997 David S. Miller (davem@caip.rutgers.edu)
 | |
|  */
 | |
| 
 | |
| #ifndef __SPARC64_UCTX_H
 | |
| #define __SPARC64_UCTX_H
 | |
| 
 | |
| #define MC_TSTATE	0
 | |
| #define MC_PC		1
 | |
| #define MC_NPC		2
 | |
| #define MC_Y		3
 | |
| #define MC_G1		4
 | |
| #define MC_G2		5
 | |
| #define MC_G3		6
 | |
| #define MC_G4		7
 | |
| #define MC_G5		8
 | |
| #define MC_G6		9
 | |
| #define MC_G7		10
 | |
| #define MC_O0		11
 | |
| #define MC_O1		12
 | |
| #define MC_O2		13
 | |
| #define MC_O3		14
 | |
| #define MC_O4		15
 | |
| #define MC_O5		16
 | |
| #define MC_O6		17
 | |
| #define MC_O7		18
 | |
| #define MC_NGREG	19
 | |
| 
 | |
| typedef unsigned long mc_greg_t;
 | |
| typedef mc_greg_t mc_gregset_t[MC_NGREG];
 | |
| 
 | |
| #define MC_MAXFPQ	16
 | |
| struct mc_fq {
 | |
| 	unsigned long	*mcfq_addr;
 | |
| 	unsigned int	mcfq_insn;
 | |
| };
 | |
| 
 | |
| struct mc_fpu {
 | |
| 	union {
 | |
| 		unsigned int	sregs[32];
 | |
| 		unsigned long	dregs[32];
 | |
| 		long double	qregs[16];
 | |
| 	} mcfpu_fregs;
 | |
| 	unsigned long	mcfpu_fsr;
 | |
| 	unsigned long	mcfpu_fprs;
 | |
| 	unsigned long	mcfpu_gsr;
 | |
| 	struct mc_fq	*mcfpu_fq;
 | |
| 	unsigned char	mcfpu_qcnt;
 | |
| 	unsigned char	mcfpu_qentsz;
 | |
| 	unsigned char	mcfpu_enab;
 | |
| };
 | |
| typedef struct mc_fpu mc_fpu_t;
 | |
| 
 | |
| typedef struct {
 | |
| 	mc_gregset_t	mc_gregs;
 | |
| 	mc_greg_t	mc_fp;
 | |
| 	mc_greg_t	mc_i7;
 | |
| 	mc_fpu_t	mc_fpregs;
 | |
| } mcontext_t;
 | |
| 
 | |
| struct ucontext {
 | |
| 	struct ucontext		*uc_link;
 | |
| 	unsigned long		uc_flags;
 | |
| 	sigset_t		uc_sigmask;
 | |
| 	mcontext_t		uc_mcontext;
 | |
| };
 | |
| typedef struct ucontext ucontext_t;
 | |
| 
 | |
| #endif /* __SPARC64_UCTX_H */
 |