ureg.h 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  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. struct Ureg
  10. {
  11. uint32_t status;
  12. uint32_t pc;
  13. union{
  14. uint32_t sp; /* r29 */
  15. uint32_t usp; /* r29 */
  16. };
  17. uint32_t cause;
  18. uint32_t badvaddr;
  19. uint32_t tlbvirt;
  20. uint32_t hi;
  21. uint32_t lo;
  22. uint32_t r31;
  23. uint32_t r30;
  24. uint32_t r28;
  25. uint32_t r27; /* unused */
  26. uint32_t r26; /* unused */
  27. uint32_t r25;
  28. uint32_t r24;
  29. uint32_t r23;
  30. uint32_t r22;
  31. uint32_t r21;
  32. uint32_t r20;
  33. uint32_t r19;
  34. uint32_t r18;
  35. uint32_t r17;
  36. uint32_t r16;
  37. uint32_t r15;
  38. uint32_t r14;
  39. uint32_t r13;
  40. uint32_t r12;
  41. uint32_t r11;
  42. uint32_t r10;
  43. uint32_t r9;
  44. uint32_t r8;
  45. uint32_t r7;
  46. uint32_t r6;
  47. uint32_t r5;
  48. uint32_t r4;
  49. uint32_t r3;
  50. uint32_t r2;
  51. uint32_t r1;
  52. };