reg.h 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. /* $Id: reg.h,v 1.6 1999/09/06 08:22:10 jj Exp $
  2. * linux/asm-sparc64/reg.h
  3. * Layout of the registers as expected by gdb on the Sparc
  4. * we should replace the user.h definitions with those in
  5. * this file, we don't even use the other
  6. * -miguel
  7. *
  8. * The names of the structures, constants and aliases in this file
  9. * have the same names as the sunos ones, some programs rely on these
  10. * names (gdb for example).
  11. *
  12. */
  13. #ifndef __SPARC64_REG_H
  14. #define __SPARC64_REG_H
  15. struct regs {
  16. unsigned long r_g1;
  17. unsigned long r_g2;
  18. unsigned long r_g3;
  19. unsigned long r_g4;
  20. unsigned long r_g5;
  21. unsigned long r_g6;
  22. unsigned long r_g7;
  23. unsigned long r_o0;
  24. unsigned long r_o1;
  25. unsigned long r_o2;
  26. unsigned long r_o3;
  27. unsigned long r_o4;
  28. unsigned long r_o5;
  29. unsigned long r_o6;
  30. unsigned long r_o7;
  31. unsigned long __pad;
  32. unsigned long r_tstate;
  33. unsigned long r_tpc;
  34. unsigned long r_tnpc;
  35. unsigned int r_y;
  36. unsigned int r_fprs;
  37. };
  38. #define FPU_REGS_TYPE unsigned int
  39. #define FPU_FSR_TYPE unsigned long
  40. struct fp_status {
  41. unsigned long fpu_fr[32];
  42. unsigned long Fpu_fsr;
  43. };
  44. struct fpu {
  45. struct fp_status f_fpstatus;
  46. };
  47. #define fpu_regs f_fpstatus.fpu_fr
  48. #define fpu_fsr f_fpstatus.Fpu_fsr
  49. #endif /* __SPARC64_REG_H */