Asm

/* $Id$ */
REG(rax, 64, 0x00, 0, "General-purpose register")
REG(rcx, 64, 0x01, 0, "General-purpose register")
REG(rdx, 64, 0x02, 0, "General-purpose register")
REG(rbx, 64, 0x03, 0, "General-purpose register")
REG(rsp, 64, 0x04, 0, "Stack pointer")
REG(rbp, 64, 0x05, 0, "Base pointer")
REG(rsi, 64, 0x06, 0, "Array index")
REG(rdi, 64, 0x07, 0, "Array index")
REG(r8, 64, 0x08, 0, "General-purpose register")
REG(r9, 64, 0x09, 0, "General-purpose register")
REG(r10, 64, 0x0a, 0, "General-purpose register")
REG(r11, 64, 0x0b, 0, "General-purpose register")
REG(r12, 64, 0x0c, 0, "General-purpose register")
REG(r13, 64, 0x0d, 0, "General-purpose register")
REG(r14, 64, 0x0e, 0, "General-purpose register")
REG(r15, 64, 0x0f, 0, "General-purpose register")
REG(rip, 64, 0x10, 0, "Instruction pointer")
/* aliases */
/* 8 bits */
REG(r0b, 8, 0x00, ARF_ALIAS,NULL)
REG(r1b, 8, 0x01, ARF_ALIAS,NULL)
REG(r2b, 8, 0x02, ARF_ALIAS,NULL)
REG(r3b, 8, 0x03, ARF_ALIAS,NULL)
REG(r4b, 8, 0x04, ARF_ALIAS,NULL)
REG(r5b, 8, 0x05, ARF_ALIAS,NULL)
REG(r6b, 8, 0x06, ARF_ALIAS,NULL)
REG(r7b, 8, 0x07, ARF_ALIAS,NULL)
REG(r8b, 8, 0x08, ARF_ALIAS,NULL)
REG(r9b, 8, 0x09, ARF_ALIAS,NULL)
REG(r10b,8, 0x0a, ARF_ALIAS,NULL)
REG(r11b,8, 0x0b, ARF_ALIAS,NULL)
REG(r12b,8, 0x0c, ARF_ALIAS,NULL)
REG(r13b,8, 0x0d, ARF_ALIAS,NULL)
REG(r14b,8, 0x0e, ARF_ALIAS,NULL)
REG(r15b,8, 0x0f, ARF_ALIAS,NULL)
/* 16 bits */
REG(r0w, 16, 0x00, ARF_ALIAS,NULL)
REG(r1w, 16, 0x01, ARF_ALIAS,NULL)
REG(r2w, 16, 0x02, ARF_ALIAS,NULL)
REG(r3w, 16, 0x03, ARF_ALIAS,NULL)
REG(r4w, 16, 0x04, ARF_ALIAS,NULL)
REG(r5w, 16, 0x05, ARF_ALIAS,NULL)
REG(r6w, 16, 0x06, ARF_ALIAS,NULL)
REG(r7w, 16, 0x07, ARF_ALIAS,NULL)
REG(r8w, 16, 0x08, ARF_ALIAS,NULL)
REG(r9w, 16, 0x09, ARF_ALIAS,NULL)
REG(r10w,16, 0x0a, ARF_ALIAS,NULL)
REG(r11w,16, 0x0b, ARF_ALIAS,NULL)
REG(r12w,16, 0x0c, ARF_ALIAS,NULL)
REG(r13w,16, 0x0d, ARF_ALIAS,NULL)
REG(r14w,16, 0x0e, ARF_ALIAS,NULL)
REG(r15w,16, 0x0f, ARF_ALIAS,NULL)
/* 32 bits */
REG(r0d, 32, 0x00, ARF_ALIAS,NULL)
REG(r1d, 32, 0x01, ARF_ALIAS,NULL)
REG(r2d, 32, 0x02, ARF_ALIAS,NULL)
REG(r3d, 32, 0x03, ARF_ALIAS,NULL)
REG(r4d, 32, 0x04, ARF_ALIAS,NULL)
REG(r5d, 32, 0x05, ARF_ALIAS,NULL)
REG(r6d, 32, 0x06, ARF_ALIAS,NULL)
REG(r7d, 32, 0x07, ARF_ALIAS,NULL)
REG(r8d, 32, 0x08, ARF_ALIAS,NULL)
REG(r9d, 32, 0x09, ARF_ALIAS,NULL)
REG(r10d,32, 0x0a, ARF_ALIAS,NULL)
REG(r11d,32, 0x0b, ARF_ALIAS,NULL)
REG(r12d,32, 0x0c, ARF_ALIAS,NULL)
REG(r13d,32, 0x0d, ARF_ALIAS,NULL)
REG(r14d,32, 0x0e, ARF_ALIAS,NULL)
REG(r15d,32, 0x0f, ARF_ALIAS,NULL)
/* 64 bits */
REG(r0, 64, 0x00, ARF_ALIAS,NULL)
REG(r1, 64, 0x01, ARF_ALIAS,NULL)
REG(r2, 64, 0x02, ARF_ALIAS,NULL)
REG(r3, 64, 0x03, ARF_ALIAS,NULL)
REG(r4, 64, 0x04, ARF_ALIAS,NULL)
REG(r5, 64, 0x05, ARF_ALIAS,NULL)
REG(r6, 64, 0x06, ARF_ALIAS,NULL)
REG(r7, 64, 0x07, ARF_ALIAS,NULL)