summaryrefslogtreecommitdiff
path: root/regs.dat
blob: 14cdd50fb4d686d2b4d55d86475a390a184ac1d0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
# $Id$
#
# List of registers and their classes; classes are defined in nasm.h
#
# The columns are:
#
# register name, assembler class, disassembler class(es), x86 register number
#
# If the register name ends in two numbers separated by a dash, then it is
# repeated as many times as indicated, and the register number is
# updated with it.
#

# General-purpose registers
al	REG_AL		reg8,reg8_rex	0
ah	REG_HIGH	reg8		4
ax	REG_AX		reg16		0
eax	REG_EAX		reg32		0
rax	REG_RAX		reg64		0
bl	REG8		reg8,reg8_rex	3
bh	REG_HIGH	reg8		7
bx	REG16		reg16		3
ebx	REG32		reg32		3
rbx	REG64		reg64		3
cl	REG_CL		reg8,reg8_rex	1
ch	REG_HIGH	reg8		5
cx	REG_CX		reg16		1
ecx	REG_ECX		reg32		1
rcx	REG_RCX		reg64		1
dl	REG_DL		reg8,reg8_rex	2
dh	REG_HIGH	reg8		6
dx	REG_DX		reg16		2
edx	REG_EDX		reg32		2
rdx	REG_RDX		reg64		2
spl	REG8		reg8_rex	4
sp	REG16		reg16		4
esp	REG32		reg32		4
rsp	REG64		reg64		4
bpl	REG8		reg8_rex	5
bp	REG16		reg16		5
ebp	REG32		reg32		5
rbp	REG64		reg64		5
sil	REG8		reg8_rex	6
si	REG16		reg16		6
esi	REG32		reg32		6
rsi	REG64		reg64		6
dil	REG8		reg8_rex	7
di	REG16		reg16		7
edi	REG32		reg32		7
rdi	REG64		reg64		7
r8b	REG8		reg8_rex	8
r8w	REG16		reg16		8
r8d	REG32		reg32		8
r8	REG64		reg64		8
r9b	REG8		reg8_rex	9
r9w	REG16		reg16		9
r9d	REG32		reg32		9
r9	REG64		reg64		9
r10b	REG8		reg8_rex	10
r10w	REG16		reg16		10
r10d	REG32		reg32		10
r10	REG64		reg64		10
r11b	REG8		reg8_rex	11
r11w	REG16		reg16		11
r11d	REG32		reg32		11
r11	REG64		reg64		11
r12b	REG8		reg8_rex	12
r12w	REG16		reg16		12
r12d	REG32		reg32		12
r12	REG64		reg64		12
r13b	REG8		reg8_rex	13
r13w	REG16		reg16		13
r13d	REG32		reg32		13
r13	REG64		reg64		13
r14b	REG8		reg8_rex	14
r14w	REG16		reg16		14
r14d	REG32		reg32		14
r14	REG64		reg64		14
r15b	REG8		reg8_rex	15
r15w	REG16		reg16		15
r15d	REG32		reg32		15
r15	REG64		reg64		15

# Segment registers
cs	REG_CS		sreg		1
ds	REG_DESS	sreg		3
es	REG_DESS	sreg		0
ss	REG_DESS	sreg		2
fs	REG_FSGS	sreg		4
gs	REG_FSGS	sreg		5
segr6-7	REG_SEG67	sreg		6

# Control registers
cr0-15	REG_CREG	creg		0

# Debug registers
dr0-15	REG_DREG	dreg		0

# Test registers
tr0-7	REG_TREG	treg		0

# Floating-point registers
st0	FPU0		fpureg		0
st1-7	FPUREG		fpureg		1

# MMX registers
mm0-7	MMXREG		mmxreg		0

# SSE registers
xmm0-15	XMMREG		xmmreg		0

# Special registers
eip	REG_EIP		eipreg		0
rip	REG_RIP		ripreg		0