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) */
							 |