1 /* Copyright (C) 2003 Free Software Foundation, Inc. 2 3 The GNU C Library is free software; you can redistribute it and/or 4 modify it under the terms of the GNU Lesser General Public 5 License as published by the Free Software Foundation; either 6 version 2.1 of the License, or (at your option) any later version. 7 8 The GNU C Library is distributed in the hope that it will be useful, 9 but WITHOUT ANY WARRANTY; without even the implied warranty of 10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 11 Lesser General Public License for more details. 12 13 You should have received a copy of the GNU Lesser General Public 14 License along with the GNU C Library; if not, see 15 <http://www.gnu.org/licenses/>. */ 16 17 #ifndef _SYS_USER_H 18 #define _SYS_USER_H 1 19 20 struct sunos_regs 21 { 22 unsigned int psr, pc, npc, y; 23 unsigned int regs[15]; 24 }; 25 26 struct sunos_fpqueue 27 { 28 unsigned int *addr; 29 unsigned int inst; 30 }; 31 32 struct sunos_fp 33 { 34 union 35 { 36 unsigned int regs[32]; 37 double reg_dbls[16]; 38 } fregs; 39 unsigned int fsr; 40 unsigned int flags; 41 unsigned int extra; 42 unsigned int fpq_count; 43 struct sunos_fpqueue fpq[16]; 44 }; 45 46 struct sunos_fpu 47 { 48 struct sunos_fp fpstatus; 49 }; 50 51 /* The SunOS core file header layout. */ 52 struct user { 53 unsigned int magic; 54 unsigned int len; 55 struct sunos_regs regs; 56 struct 57 { 58 unsigned char a_dynamic :1; 59 unsigned char a_toolversion :7; 60 unsigned char a_machtype; 61 unsigned short a_info; 62 unsigned int a_text; 63 unsigned int a_data; 64 unsigned int a_bss; 65 unsigned int a_syms; 66 unsigned int a_entry; 67 unsigned int a_trsize; 68 unsigned int a_drsize; 69 } uexec; 70 int signal; 71 size_t u_tsize; 72 size_t u_dsize; 73 size_t u_ssize; 74 char u_comm[17]; 75 struct sunos_fpu fpu; 76 unsigned int sigcode; 77 }; 78 79 #define NBPG 0x2000 80 #define UPAGES 1 81 #define SUNOS_CORE_MAGIC 0x080456 82 83 #endif 84