ureg.h 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. /*
  2. * This file is part of the UCB release of Plan 9. It is subject to the license
  3. * terms in the LICENSE file found in the top-level directory of this
  4. * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
  5. * part of the UCB release of Plan 9, including this file, may be copied,
  6. * modified, propagated, or distributed except according to the terms contained
  7. * in the LICENSE file.
  8. */
  9. #ifndef __UREG_H
  10. #define __UREG_H
  11. #if !defined(_PLAN9_SOURCE)
  12. This header file is an extension to ANSI/POSIX
  13. #endif
  14. struct Ureg
  15. {
  16. unsigned long status;
  17. unsigned long pc;
  18. union{
  19. unsigned long sp; /* r29 */
  20. unsigned long usp; /* r29 */
  21. };
  22. unsigned long cause;
  23. unsigned long badvaddr;
  24. unsigned long tlbvirt;
  25. unsigned long hi;
  26. unsigned long lo;
  27. unsigned long r31;
  28. unsigned long r30;
  29. unsigned long r28;
  30. unsigned long r27; /* unused */
  31. unsigned long r26; /* unused */
  32. unsigned long r25;
  33. unsigned long r24;
  34. unsigned long r23;
  35. unsigned long r22;
  36. unsigned long r21;
  37. unsigned long r20;
  38. unsigned long r19;
  39. unsigned long r18;
  40. unsigned long r17;
  41. unsigned long r16;
  42. unsigned long r15;
  43. unsigned long r14;
  44. unsigned long r13;
  45. unsigned long r12;
  46. unsigned long r11;
  47. unsigned long r10;
  48. unsigned long r9;
  49. unsigned long r8;
  50. unsigned long r7;
  51. unsigned long r6;
  52. unsigned long r5;
  53. unsigned long r4;
  54. unsigned long r3;
  55. unsigned long r2;
  56. unsigned long r1;
  57. };
  58. #endif