// integer general registers (DO NOT REORDER THESE; must exactly match DbgModule X64 register mappings)
X64Reg_RAX=0,
X64Reg_RDX,
X64Reg_RCX,
X64Reg_RBX,
X64Reg_RSI,
X64Reg_RDI,
X64Reg_RBP,
X64Reg_RSP,
X64Reg_R8,
X64Reg_R9,
X64Reg_R10,
X64Reg_R11,
X64Reg_R12,
X64Reg_R13,
X64Reg_R14,
X64Reg_R15,
X64Reg_RIP,
X64Reg_EFL,
X64Reg_GS,
X64Reg_EAX,
X64Reg_EDX,
X64Reg_ECX,
X64Reg_EBX,
X64Reg_ESI,
X64Reg_EDI,
X64Reg_R8D,
X64Reg_R9D,
X64Reg_R10D,
X64Reg_R11D,
X64Reg_R12D,
X64Reg_R13D,
X64Reg_R14D,
X64Reg_R15D,
X64Reg_AX,
X64Reg_DX,
X64Reg_CX,
X64Reg_BX,
X64Reg_SI,
X64Reg_DI,
X64Reg_R8W,
X64Reg_R9W,
X64Reg_R10W,
X64Reg_R11W,
X64Reg_R12W,
X64Reg_R13W,
X64Reg_R14W,
X64Reg_R15W,
X64Reg_AL,
X64Reg_DL,
X64Reg_CL,
X64Reg_BL,
X64Reg_AH,
X64Reg_DH,
X64Reg_CH,
X64Reg_BH,
X64Reg_SIL,
X64Reg_DIL,
X64Reg_R8B,
X64Reg_R9B,
X64Reg_R10B,
X64Reg_R11B,
X64Reg_R12B,
X64Reg_R13B,
X64Reg_R14B,
X64Reg_R15B,
// fpu registers (80-bit st(#) reg stack)
X64Reg_FPST0,
X64Reg_FPST1,
X64Reg_FPST2,
X64Reg_FPST3,
X64Reg_FPST4,
X64Reg_FPST5,
X64Reg_FPST6,
X64Reg_FPST7,
// mmx registers (alias to the low 64 bits of the matching st(#) register)
X64Reg_MM0,
X64Reg_MM1,
X64Reg_MM2,
X64Reg_MM3,
X64Reg_MM4,
X64Reg_MM5,
X64Reg_MM6,
X64Reg_MM7,
// XMM registers, using first element as a double
X64Reg_XMM0_f64,
X64Reg_XMM1_f64,
X64Reg_XMM2_f64,
X64Reg_XMM3_f64,
X64Reg_XMM4_f64,
X64Reg_XMM5_f64,
X64Reg_XMM6_f64,
X64Reg_XMM7_f64,
X64Reg_XMM8_f64,
X64Reg_XMM9_f64,
X64Reg_XMM10_f64,
X64Reg_XMM11_f64,
X64Reg_XMM12_f64,
X64Reg_XMM13_f64,
X64Reg_XMM14_f64,
X64Reg_XMM15_f64,
// XMM registers, using first element as a float
X64Reg_XMM0_f32,
X64Reg_XMM1_f32,
X64Reg_XMM2_f32,
X64Reg_XMM3_f32,
X64Reg_XMM4_f32,
X64Reg_XMM5_f32,
X64Reg_XMM6_f32,
X64Reg_XMM7_f32,
X64Reg_XMM8_f32,
X64Reg_XMM9_f32,
X64Reg_XMM10_f32,
X64Reg_XMM11_f32,
X64Reg_XMM12_f32,
X64Reg_XMM13_f32,
X64Reg_XMM14_f32,
X64Reg_XMM15_f32,
// xmm registers
X64Reg_XMM00,
X64Reg_XMM01,
X64Reg_XMM02,
X64Reg_XMM03,
X64Reg_XMM10,
X64Reg_XMM11,
X64Reg_XMM12,
X64Reg_XMM13,
X64Reg_XMM20,
X64Reg_XMM21,
X64Reg_XMM22,
X64Reg_XMM23,
X64Reg_XMM30,
X64Reg_XMM31,
X64Reg_XMM32,
X64Reg_XMM33,
X64Reg_XMM40,
X64Reg_XMM41,
X64Reg_XMM42,
X64Reg_XMM43,
X64Reg_XMM50,
X64Reg_XMM51,
X64Reg_XMM52,
X64Reg_XMM53,
X64Reg_XMM60,
X64Reg_XMM61,
X64Reg_XMM62,
X64Reg_XMM63,
X64Reg_XMM70,
X64Reg_XMM71,
X64Reg_XMM72,
X64Reg_XMM73,
X64Reg_XMM80,
X64Reg_XMM81,
X64Reg_XMM82,
X64Reg_XMM83,
X64Reg_XMM90,
X64Reg_XMM91,
X64Reg_XMM92,
X64Reg_XMM93,
X64Reg_XMM10_0,
X64Reg_XMM10_1,
X64Reg_XMM10_2,
X64Reg_XMM10_3,
X64Reg_XMM11_0,
X64Reg_XMM11_1,
X64Reg_XMM11_2,
X64Reg_XMM11_3,
X64Reg_XMM12_0,
X64Reg_XMM12_1,
X64Reg_XMM12_2,
X64Reg_XMM12_3,
X64Reg_XMM13_0,
X64Reg_XMM13_1,
X64Reg_XMM13_2,
X64Reg_XMM13_3,
X64Reg_XMM14_0,
X64Reg_XMM14_1,
X64Reg_XMM14_2,
X64Reg_XMM14_3,
X64Reg_XMM15_0,
X64Reg_XMM15_1,
X64Reg_XMM15_2,
X64Reg_XMM15_3,
// xmm 128-bit macro-registers (no stored data with these, they're symbolic for use as higher-level constructs, aliases to the individual xmm regs above)
X64Reg_M128_XMM0,
X64Reg_M128_XMM1,
X64Reg_M128_XMM2,
X64Reg_M128_XMM3,
X64Reg_M128_XMM4,
X64Reg_M128_XMM5,
X64Reg_M128_XMM6,
X64Reg_M128_XMM7,
X64Reg_M128_XMM8,
X64Reg_M128_XMM9,
X64Reg_M128_XMM10,
X64Reg_M128_XMM11,
X64Reg_M128_XMM12,
X64Reg_M128_XMM13,
X64Reg_M128_XMM14,
X64Reg_M128_XMM15,
// flags boolean pseudo-registers (aliases to individual flags in EFL)