Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

201 lines
5.3 KiB

  1. //----------------------------------------------------------------------------
  2. //
  3. // AMD64 register definitions.
  4. //
  5. // Copyright (C) Microsoft Corporation, 2000.
  6. //
  7. //----------------------------------------------------------------------------
  8. #ifndef __AMD64_REG_H__
  9. #define __AMD64_REG_H__
  10. //
  11. // x86 common registers.
  12. //
  13. #define AMD64_RAX X86_NAX
  14. #define AMD64_RCX X86_NCX
  15. #define AMD64_RDX X86_NDX
  16. #define AMD64_RBX X86_NBX
  17. #define AMD64_RSP X86_NSP
  18. #define AMD64_RBP X86_NBP
  19. #define AMD64_RSI X86_NSI
  20. #define AMD64_RDI X86_NDI
  21. #define AMD64_RIP X86_NIP
  22. #define AMD64_EFL X86_NFL
  23. #define AMD64_CS X86_NCS
  24. #define AMD64_DS X86_NDS
  25. #define AMD64_ES X86_NES
  26. #define AMD64_FS X86_NFS
  27. #define AMD64_GS X86_NGS
  28. #define AMD64_SS X86_NSS
  29. #define AMD64_SEG_FIRST X86_NSEG_FIRST
  30. #define AMD64_SEG_LAST X86_NSEG_LAST
  31. //
  32. // AMD64 registers.
  33. //
  34. #define AMD64_R8 17
  35. #define AMD64_R9 18
  36. #define AMD64_R10 19
  37. #define AMD64_R11 20
  38. #define AMD64_R12 21
  39. #define AMD64_R13 22
  40. #define AMD64_R14 23
  41. #define AMD64_R15 24
  42. #define AMD64_CR0 25
  43. #define AMD64_CR2 26
  44. #define AMD64_CR3 27
  45. #define AMD64_CR4 28
  46. #define AMD64_CR8 29
  47. #define AMD64_DR0 30
  48. #define AMD64_DR1 31
  49. #define AMD64_DR2 32
  50. #define AMD64_DR3 33
  51. #define AMD64_DR6 34
  52. #define AMD64_DR7 35
  53. #define AMD64_GDTR 36
  54. #define AMD64_GDTL 37
  55. #define AMD64_IDTR 38
  56. #define AMD64_IDTL 39
  57. #define AMD64_TR 40
  58. #define AMD64_LDTR 41
  59. // Floating-point registers:
  60. #define AMD64_FPCW 50
  61. #define AMD64_FPSW 51
  62. #define AMD64_FPTW 52
  63. #define AMD64_FPCTRL_FIRST AMD64_FPCW
  64. #define AMD64_FPCTRL_LAST AMD64_FPTW
  65. #define AMD64_ST0 53
  66. #define AMD64_ST1 54
  67. #define AMD64_ST2 55
  68. #define AMD64_ST3 56
  69. #define AMD64_ST4 57
  70. #define AMD64_ST5 58
  71. #define AMD64_ST6 59
  72. #define AMD64_ST7 60
  73. #define AMD64_ST_FIRST AMD64_ST0
  74. #define AMD64_ST_LAST AMD64_ST7
  75. // MMX registers:
  76. #define AMD64_MM0 61
  77. #define AMD64_MM1 62
  78. #define AMD64_MM2 63
  79. #define AMD64_MM3 64
  80. #define AMD64_MM4 65
  81. #define AMD64_MM5 66
  82. #define AMD64_MM6 67
  83. #define AMD64_MM7 68
  84. #define AMD64_MM_FIRST AMD64_MM0
  85. #define AMD64_MM_LAST AMD64_MM7
  86. // SSE registers:
  87. #define AMD64_MXCSR 69
  88. #define AMD64_XMM0 70
  89. #define AMD64_XMM1 71
  90. #define AMD64_XMM2 72
  91. #define AMD64_XMM3 73
  92. #define AMD64_XMM4 74
  93. #define AMD64_XMM5 75
  94. #define AMD64_XMM6 76
  95. #define AMD64_XMM7 77
  96. #define AMD64_XMM8 78
  97. #define AMD64_XMM9 79
  98. #define AMD64_XMM10 80
  99. #define AMD64_XMM11 81
  100. #define AMD64_XMM12 82
  101. #define AMD64_XMM13 83
  102. #define AMD64_XMM14 84
  103. #define AMD64_XMM15 85
  104. #define AMD64_XMM_FIRST AMD64_XMM0
  105. #define AMD64_XMM_LAST AMD64_XMM15
  106. #define AMD64_EAX 100
  107. #define AMD64_ECX 101
  108. #define AMD64_EDX 102
  109. #define AMD64_EBX 103
  110. #define AMD64_ESP 104
  111. #define AMD64_EBP 105
  112. #define AMD64_ESI 106
  113. #define AMD64_EDI 107
  114. #define AMD64_R8D 108
  115. #define AMD64_R9D 109
  116. #define AMD64_R10D 110
  117. #define AMD64_R11D 111
  118. #define AMD64_R12D 112
  119. #define AMD64_R13D 113
  120. #define AMD64_R14D 114
  121. #define AMD64_R15D 115
  122. #define AMD64_EIP 116
  123. #define AMD64_AX 117
  124. #define AMD64_CX 118
  125. #define AMD64_DX 119
  126. #define AMD64_BX 120
  127. #define AMD64_SP 121
  128. #define AMD64_BP 122
  129. #define AMD64_SI 123
  130. #define AMD64_DI 124
  131. #define AMD64_R8W 125
  132. #define AMD64_R9W 126
  133. #define AMD64_R10W 127
  134. #define AMD64_R11W 128
  135. #define AMD64_R12W 129
  136. #define AMD64_R13W 130
  137. #define AMD64_R14W 131
  138. #define AMD64_R15W 132
  139. #define AMD64_IP 133
  140. #define AMD64_FL 134
  141. #define AMD64_AL 135
  142. #define AMD64_CL 136
  143. #define AMD64_DL 137
  144. #define AMD64_BL 138
  145. #define AMD64_SPL 139
  146. #define AMD64_BPL 140
  147. #define AMD64_SIL 141
  148. #define AMD64_DIL 142
  149. #define AMD64_R8B 143
  150. #define AMD64_R9B 144
  151. #define AMD64_R10B 145
  152. #define AMD64_R11B 146
  153. #define AMD64_R12B 147
  154. #define AMD64_R13B 148
  155. #define AMD64_R14B 149
  156. #define AMD64_R15B 150
  157. #define AMD64_AH 151
  158. #define AMD64_CH 152
  159. #define AMD64_DH 153
  160. #define AMD64_BH 154
  161. #define AMD64_IOPL 200
  162. #define AMD64_OF 201
  163. #define AMD64_DF 202
  164. #define AMD64_IF 203
  165. #define AMD64_TF 204
  166. #define AMD64_SF 205
  167. #define AMD64_ZF 206
  168. #define AMD64_AF 207
  169. #define AMD64_PF 208
  170. #define AMD64_CF 209
  171. #define AMD64_VIP 210
  172. #define AMD64_VIF 211
  173. #define AMD64_SUBREG_BASE AMD64_EAX
  174. #endif // #ifndef __AMD64_AMD64_H__