reg.h 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206
  1. /*
  2. * Various register offset definitions for debuggers, core file
  3. * examiners and whatnot.
  4. *
  5. * This file is subject to the terms and conditions of the GNU General Public
  6. * License. See the file "COPYING" in the main directory of this archive
  7. * for more details.
  8. *
  9. * Copyright (C) 1995, 1999 Ralf Baechle
  10. * Copyright (C) 1995, 1999 Silicon Graphics
  11. */
  12. #ifndef __UAPI_ASM_MIPS_REG_H
  13. #define __UAPI_ASM_MIPS_REG_H
  14. #define MIPS32_EF_R0 6
  15. #define MIPS32_EF_R1 7
  16. #define MIPS32_EF_R2 8
  17. #define MIPS32_EF_R3 9
  18. #define MIPS32_EF_R4 10
  19. #define MIPS32_EF_R5 11
  20. #define MIPS32_EF_R6 12
  21. #define MIPS32_EF_R7 13
  22. #define MIPS32_EF_R8 14
  23. #define MIPS32_EF_R9 15
  24. #define MIPS32_EF_R10 16
  25. #define MIPS32_EF_R11 17
  26. #define MIPS32_EF_R12 18
  27. #define MIPS32_EF_R13 19
  28. #define MIPS32_EF_R14 20
  29. #define MIPS32_EF_R15 21
  30. #define MIPS32_EF_R16 22
  31. #define MIPS32_EF_R17 23
  32. #define MIPS32_EF_R18 24
  33. #define MIPS32_EF_R19 25
  34. #define MIPS32_EF_R20 26
  35. #define MIPS32_EF_R21 27
  36. #define MIPS32_EF_R22 28
  37. #define MIPS32_EF_R23 29
  38. #define MIPS32_EF_R24 30
  39. #define MIPS32_EF_R25 31
  40. /*
  41. * k0/k1 unsaved
  42. */
  43. #define MIPS32_EF_R26 32
  44. #define MIPS32_EF_R27 33
  45. #define MIPS32_EF_R28 34
  46. #define MIPS32_EF_R29 35
  47. #define MIPS32_EF_R30 36
  48. #define MIPS32_EF_R31 37
  49. /*
  50. * Saved special registers
  51. */
  52. #define MIPS32_EF_LO 38
  53. #define MIPS32_EF_HI 39
  54. #define MIPS32_EF_CP0_EPC 40
  55. #define MIPS32_EF_CP0_BADVADDR 41
  56. #define MIPS32_EF_CP0_STATUS 42
  57. #define MIPS32_EF_CP0_CAUSE 43
  58. #define MIPS32_EF_UNUSED0 44
  59. #define MIPS32_EF_SIZE 180
  60. #define MIPS64_EF_R0 0
  61. #define MIPS64_EF_R1 1
  62. #define MIPS64_EF_R2 2
  63. #define MIPS64_EF_R3 3
  64. #define MIPS64_EF_R4 4
  65. #define MIPS64_EF_R5 5
  66. #define MIPS64_EF_R6 6
  67. #define MIPS64_EF_R7 7
  68. #define MIPS64_EF_R8 8
  69. #define MIPS64_EF_R9 9
  70. #define MIPS64_EF_R10 10
  71. #define MIPS64_EF_R11 11
  72. #define MIPS64_EF_R12 12
  73. #define MIPS64_EF_R13 13
  74. #define MIPS64_EF_R14 14
  75. #define MIPS64_EF_R15 15
  76. #define MIPS64_EF_R16 16
  77. #define MIPS64_EF_R17 17
  78. #define MIPS64_EF_R18 18
  79. #define MIPS64_EF_R19 19
  80. #define MIPS64_EF_R20 20
  81. #define MIPS64_EF_R21 21
  82. #define MIPS64_EF_R22 22
  83. #define MIPS64_EF_R23 23
  84. #define MIPS64_EF_R24 24
  85. #define MIPS64_EF_R25 25
  86. /*
  87. * k0/k1 unsaved
  88. */
  89. #define MIPS64_EF_R26 26
  90. #define MIPS64_EF_R27 27
  91. #define MIPS64_EF_R28 28
  92. #define MIPS64_EF_R29 29
  93. #define MIPS64_EF_R30 30
  94. #define MIPS64_EF_R31 31
  95. /*
  96. * Saved special registers
  97. */
  98. #define MIPS64_EF_LO 32
  99. #define MIPS64_EF_HI 33
  100. #define MIPS64_EF_CP0_EPC 34
  101. #define MIPS64_EF_CP0_BADVADDR 35
  102. #define MIPS64_EF_CP0_STATUS 36
  103. #define MIPS64_EF_CP0_CAUSE 37
  104. #define MIPS64_EF_SIZE 304 /* size in bytes */
  105. #if _MIPS_SIM == _MIPS_SIM_ABI32
  106. #define EF_R0 MIPS32_EF_R0
  107. #define EF_R1 MIPS32_EF_R1
  108. #define EF_R2 MIPS32_EF_R2
  109. #define EF_R3 MIPS32_EF_R3
  110. #define EF_R4 MIPS32_EF_R4
  111. #define EF_R5 MIPS32_EF_R5
  112. #define EF_R6 MIPS32_EF_R6
  113. #define EF_R7 MIPS32_EF_R7
  114. #define EF_R8 MIPS32_EF_R8
  115. #define EF_R9 MIPS32_EF_R9
  116. #define EF_R10 MIPS32_EF_R10
  117. #define EF_R11 MIPS32_EF_R11
  118. #define EF_R12 MIPS32_EF_R12
  119. #define EF_R13 MIPS32_EF_R13
  120. #define EF_R14 MIPS32_EF_R14
  121. #define EF_R15 MIPS32_EF_R15
  122. #define EF_R16 MIPS32_EF_R16
  123. #define EF_R17 MIPS32_EF_R17
  124. #define EF_R18 MIPS32_EF_R18
  125. #define EF_R19 MIPS32_EF_R19
  126. #define EF_R20 MIPS32_EF_R20
  127. #define EF_R21 MIPS32_EF_R21
  128. #define EF_R22 MIPS32_EF_R22
  129. #define EF_R23 MIPS32_EF_R23
  130. #define EF_R24 MIPS32_EF_R24
  131. #define EF_R25 MIPS32_EF_R25
  132. #define EF_R26 MIPS32_EF_R26
  133. #define EF_R27 MIPS32_EF_R27
  134. #define EF_R28 MIPS32_EF_R28
  135. #define EF_R29 MIPS32_EF_R29
  136. #define EF_R30 MIPS32_EF_R30
  137. #define EF_R31 MIPS32_EF_R31
  138. #define EF_LO MIPS32_EF_LO
  139. #define EF_HI MIPS32_EF_HI
  140. #define EF_CP0_EPC MIPS32_EF_CP0_EPC
  141. #define EF_CP0_BADVADDR MIPS32_EF_CP0_BADVADDR
  142. #define EF_CP0_STATUS MIPS32_EF_CP0_STATUS
  143. #define EF_CP0_CAUSE MIPS32_EF_CP0_CAUSE
  144. #define EF_UNUSED0 MIPS32_EF_UNUSED0
  145. #define EF_SIZE MIPS32_EF_SIZE
  146. #elif _MIPS_SIM == _MIPS_SIM_ABI64 || _MIPS_SIM == _MIPS_SIM_NABI32
  147. #define EF_R0 MIPS64_EF_R0
  148. #define EF_R1 MIPS64_EF_R1
  149. #define EF_R2 MIPS64_EF_R2
  150. #define EF_R3 MIPS64_EF_R3
  151. #define EF_R4 MIPS64_EF_R4
  152. #define EF_R5 MIPS64_EF_R5
  153. #define EF_R6 MIPS64_EF_R6
  154. #define EF_R7 MIPS64_EF_R7
  155. #define EF_R8 MIPS64_EF_R8
  156. #define EF_R9 MIPS64_EF_R9
  157. #define EF_R10 MIPS64_EF_R10
  158. #define EF_R11 MIPS64_EF_R11
  159. #define EF_R12 MIPS64_EF_R12
  160. #define EF_R13 MIPS64_EF_R13
  161. #define EF_R14 MIPS64_EF_R14
  162. #define EF_R15 MIPS64_EF_R15
  163. #define EF_R16 MIPS64_EF_R16
  164. #define EF_R17 MIPS64_EF_R17
  165. #define EF_R18 MIPS64_EF_R18
  166. #define EF_R19 MIPS64_EF_R19
  167. #define EF_R20 MIPS64_EF_R20
  168. #define EF_R21 MIPS64_EF_R21
  169. #define EF_R22 MIPS64_EF_R22
  170. #define EF_R23 MIPS64_EF_R23
  171. #define EF_R24 MIPS64_EF_R24
  172. #define EF_R25 MIPS64_EF_R25
  173. #define EF_R26 MIPS64_EF_R26
  174. #define EF_R27 MIPS64_EF_R27
  175. #define EF_R28 MIPS64_EF_R28
  176. #define EF_R29 MIPS64_EF_R29
  177. #define EF_R30 MIPS64_EF_R30
  178. #define EF_R31 MIPS64_EF_R31
  179. #define EF_LO MIPS64_EF_LO
  180. #define EF_HI MIPS64_EF_HI
  181. #define EF_CP0_EPC MIPS64_EF_CP0_EPC
  182. #define EF_CP0_BADVADDR MIPS64_EF_CP0_BADVADDR
  183. #define EF_CP0_STATUS MIPS64_EF_CP0_STATUS
  184. #define EF_CP0_CAUSE MIPS64_EF_CP0_CAUSE
  185. #define EF_SIZE MIPS64_EF_SIZE
  186. #endif /* _MIPS_SIM == _MIPS_SIM_ABI64 || _MIPS_SIM == _MIPS_SIM_NABI32 */
  187. #endif /* __UAPI_ASM_MIPS_REG_H */