Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | /* $Id: user.h,v 1.1 1996/12/26 14:22:44 davem Exp $ |
2 | * asm-sparc64/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 _SPARC64_USER_H | |
9 | #define _SPARC64_USER_H | |
10 | ||
11 | #include <asm/a.out.h> | |
12 | struct sunos_regs { | |
13 | unsigned int psr, pc, npc, y; | |
14 | unsigned int regs[15]; | |
15 | }; | |
16 | ||
17 | struct sunos_fpqueue { | |
18 | unsigned int *addr; | |
19 | unsigned int inst; | |
20 | }; | |
21 | ||
22 | struct sunos_fp { | |
23 | union { | |
24 | unsigned int regs[32]; | |
25 | double reg_dbls[16]; | |
26 | } fregs; | |
27 | unsigned int fsr; | |
28 | unsigned int flags; | |
29 | unsigned int extra; | |
30 | unsigned int 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 int magic; | |
41 | unsigned int 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 int sigcode; /* Special sigcontext subcode, if any */ | |
51 | }; | |
52 | ||
53 | #define NBPG PAGE_SIZE /* XXX 4096 maybe? */ | |
54 | #define UPAGES 1 | |
55 | #define HOST_TEXT_START_ADDR (u.start_code) | |
56 | #define HOST_DATA_START_ADDR (u.start_data) | |
57 | #define HOST_STACK_END_ADDR (u.start_stack + u.u_ssize * NBPG) | |
58 | #define SUNOS_CORE_MAGIC 0x080456 | |
59 | ||
60 | #endif /* !(_SPARC64_USER_H) */ |