user.h 1.9 KB

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