Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | /* $Id: user.h,v 1.5 1998/02/23 01:49:22 rth Exp $ |
2 | * asm-sparc/user.h: Core file definitions for the Sparc. | |
3 | * | |
4 | * Keep in sync with reg.h. Actually, we could get rid of this | |
5 | * one, since we won't a.out core dump that much anyways - miguel. | |
6 | * Copyright (C) 1995 (davem@caip.rutgers.edu) | |
7 | */ | |
8 | #ifndef _SPARC_USER_H | |
9 | #define _SPARC_USER_H | |
10 | ||
11 | #include <asm/a.out.h> | |
12 | struct sunos_regs { | |
13 | unsigned long psr, pc, npc, y; | |
14 | unsigned long regs[15]; | |
15 | }; | |
16 | ||
17 | struct sunos_fpqueue { | |
18 | unsigned long *addr; | |
19 | unsigned long inst; | |
20 | }; | |
21 | ||
22 | struct sunos_fp { | |
23 | union { | |
24 | unsigned long regs[32]; | |
25 | double reg_dbls[16]; | |
26 | } fregs; | |
27 | unsigned long fsr; | |
28 | unsigned long flags; | |
29 | unsigned long extra; | |
30 | unsigned long fpq_count; | |
31 | struct sunos_fpqueue fpq[16]; | |
32 | }; | |
33 | ||
34 | struct sunos_fpu { | |
35 | struct sunos_fp fpstatus; | |
36 | }; | |
37 | ||
38 | /* The SunOS core file header layout. */ | |
39 | struct user { | |
40 | unsigned long magic; | |
41 | unsigned long len; | |
42 | struct sunos_regs regs; | |
43 | struct exec uexec; | |
44 | int signal; | |
45 | size_t u_tsize; /* all of these in bytes! */ | |
46 | size_t u_dsize; | |
47 | size_t u_ssize; | |
48 | char u_comm[17]; | |
49 | struct sunos_fpu fpu; | |
50 | unsigned long sigcode; /* Special sigcontext subcode, if any */ | |
51 | }; | |
52 | ||
53 | #define NBPG 0x2000 | |
54 | #define UPAGES 1 | |
55 | #define HOST_TEXT_START_ADDR (u.start_code) | |
56 | #define HOST_DATA_START_ADDR (u.uexec.a_data) | |
57 | #define HOST_STACK_END_ADDR (- u.u_ssize * NBPG) | |
58 | #define SUNOS_CORE_MAGIC 0x080456 | |
59 | ||
60 | #endif /* !(_SPARC_USER_H) */ |