61 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C
		
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C
		
	
	
	
| /* $Id: user.h,v 1.5 1998/02/23 01:49:22 rth Exp $
 | |
|  * asm-sparc/user.h: Core file definitions for the Sparc.
 | |
|  *
 | |
|  * Keep in sync with reg.h.  Actually, we could get rid of this
 | |
|  * one, since we won't a.out core dump that much anyways - miguel.
 | |
|  * Copyright (C) 1995 (davem@caip.rutgers.edu)
 | |
|  */
 | |
| #ifndef _SPARC_USER_H
 | |
| #define _SPARC_USER_H
 | |
| 
 | |
| #include <asm/a.out.h>
 | |
| struct sunos_regs {
 | |
| 	unsigned long psr, pc, npc, y;
 | |
| 	unsigned long regs[15];
 | |
| };
 | |
| 
 | |
| struct sunos_fpqueue {
 | |
| 	unsigned long *addr;
 | |
| 	unsigned long inst;
 | |
| };
 | |
| 
 | |
| struct sunos_fp {
 | |
| 	union {
 | |
| 		unsigned long regs[32];
 | |
| 		double reg_dbls[16];
 | |
| 	} fregs;
 | |
| 	unsigned long fsr;
 | |
| 	unsigned long flags;
 | |
| 	unsigned long extra;
 | |
| 	unsigned long fpq_count;
 | |
| 	struct sunos_fpqueue fpq[16];
 | |
| };
 | |
| 
 | |
| struct sunos_fpu {
 | |
| 	struct sunos_fp fpstatus;
 | |
| };
 | |
| 
 | |
| /* The SunOS core file header layout. */
 | |
| struct user {
 | |
| 	unsigned long magic;
 | |
| 	unsigned long len;
 | |
| 	struct sunos_regs regs;
 | |
| 	struct exec uexec;
 | |
| 	int           signal;
 | |
| 	size_t        u_tsize; /* all of these in bytes! */
 | |
| 	size_t        u_dsize;
 | |
| 	size_t        u_ssize;
 | |
| 	char          u_comm[17];
 | |
| 	struct sunos_fpu fpu;
 | |
| 	unsigned long sigcode;   /* Special sigcontext subcode, if any */
 | |
| };
 | |
| 
 | |
| #define NBPG                   0x2000
 | |
| #define UPAGES                 1
 | |
| #define HOST_TEXT_START_ADDR   (u.start_code)
 | |
| #define HOST_DATA_START_ADDR   (u.uexec.a_data)
 | |
| #define HOST_STACK_END_ADDR    (- u.u_ssize * NBPG)
 | |
| #define SUNOS_CORE_MAGIC       0x080456
 | |
| 
 | |
| #endif /* !(_SPARC_USER_H) */
 |