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