fcml  1.2.2
fcml_registers.hpp
Go to the documentation of this file.
1 /*
2  * FCML - Free Code Manipulation Library.
3  * Copyright (C) 2010-2020 Slawomir Wojtasiak
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Lesser General Public
7  * License as published by the Free Software Foundation; either
8  * version 2.1 of the License, or (at your option) any later version.
9  *
10  * This library is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13  * Lesser General Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public
16  * License along with this library; if not, write to the Free Software
17  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18  */
19 
29 #ifndef FCML_REGISTERS_HPP_
30 #define FCML_REGISTERS_HPP_
31 
32 #include "fcml_common.hpp"
33 
34 namespace fcml {
35 
36  extern const Register UNDEF;
37 
38  extern const Register AL;
39  extern const Register AX;
40  extern const Register EAX;
41  extern const Register RAX;
42  extern const Register MM0;
43  extern const Register XMM0;
44  extern const Register YMM0;
45  extern const Register ZMM0;
46 
47  extern const Register CL;
48  extern const Register CX;
49  extern const Register ECX;
50  extern const Register RCX;
51  extern const Register MM1;
52  extern const Register XMM1;
53  extern const Register YMM1;
54  extern const Register ZMM1;
55 
56  extern const Register DL;
57  extern const Register DX;
58  extern const Register EDX;
59  extern const Register RDX;
60  extern const Register MM2;
61  extern const Register XMM2;
62  extern const Register YMM2;
63  extern const Register ZMM2;
64 
65  extern const Register BL;
66  extern const Register BX;
67  extern const Register EBX;
68  extern const Register RBX;
69  extern const Register MM3;
70  extern const Register XMM3;
71  extern const Register YMM3;
72  extern const Register ZMM3;
73 
74  extern const Register AH;
75  extern const Register SPL;
76  extern const Register SP;
77  extern const Register ESP;
78  extern const Register RSP;
79  extern const Register MM4;
80  extern const Register XMM4;
81  extern const Register YMM4;
82  extern const Register ZMM4;
83 
84  extern const Register CH;
85  extern const Register BPL;
86  extern const Register BP;
87  extern const Register EBP;
88  extern const Register RBP;
89  extern const Register MM5;
90  extern const Register XMM5;
91  extern const Register YMM5;
92  extern const Register ZMM5;
93 
94  extern const Register DH;
95  extern const Register SIL;
96  extern const Register SI;
97  extern const Register ESI;
98  extern const Register RSI;
99  extern const Register MM6;
100  extern const Register XMM6;
101  extern const Register YMM5;
102  extern const Register ZMM5;
103 
104  extern const Register BH;
105  extern const Register DIL;
106  extern const Register DI;
107  extern const Register EDI;
108  extern const Register RDI;
109  extern const Register MM7;
110  extern const Register XMM7;
111  extern const Register YMM7;
112  extern const Register ZMM7;
113 
114  extern const Register R8L;
115  extern const Register R8W;
116  extern const Register R8D;
117  extern const Register R8;
118  extern const Register XMM8;
119  extern const Register YMM8;
120  extern const Register ZMM8;
121 
122  extern const Register R9L;
123  extern const Register R9W;
124  extern const Register R9D;
125  extern const Register R9;
126  extern const Register XMM9;
127  extern const Register YMM9;
128  extern const Register ZMM9;
129 
130  extern const Register R10L;
131  extern const Register R10W;
132  extern const Register R10D;
133  extern const Register R10;
134  extern const Register XMM10;
135  extern const Register YMM10;
136  extern const Register ZMM10;
137 
138  extern const Register R11L;
139  extern const Register R11W;
140  extern const Register R11D;
141  extern const Register R11;
142  extern const Register XMM11;
143  extern const Register YMM10;
144  extern const Register ZMM10;
145 
146  extern const Register R12L;
147  extern const Register R12W;
148  extern const Register R12D;
149  extern const Register R12;
150  extern const Register XMM12;
151  extern const Register YMM12;
152  extern const Register ZMM12;
153 
154  extern const Register R13L;
155  extern const Register R13W;
156  extern const Register R13D;
157  extern const Register R13;
158  extern const Register XMM13;
159  extern const Register YMM13;
160  extern const Register ZMM13;
161 
162  extern const Register R14L;
163  extern const Register R14W;
164  extern const Register R14D;
165  extern const Register R14;
166  extern const Register XMM14;
167  extern const Register YMM14;
168  extern const Register ZMM14;
169 
170  extern const Register R15L;
171  extern const Register R15W;
172  extern const Register R15D;
173  extern const Register R15;
174  extern const Register XMM15;
175  extern const Register YMM15;
176  extern const Register ZMM15;
177 
178  extern const Register XMM16;
179  extern const Register YMM16;
180  extern const Register ZMM16;
181 
182  extern const Register XMM17;
183  extern const Register YMM17;
184  extern const Register ZMM17;
185 
186  extern const Register XMM18;
187  extern const Register YMM18;
188  extern const Register ZMM18;
189 
190  extern const Register XMM19;
191  extern const Register YMM19;
192  extern const Register ZMM19;
193 
194  extern const Register XMM20;
195  extern const Register YMM20;
196  extern const Register ZMM20;
197 
198  extern const Register XMM21;
199  extern const Register YMM21;
200  extern const Register ZMM21;
201 
202  extern const Register XMM22;
203  extern const Register YMM22;
204  extern const Register ZMM22;
205 
206  extern const Register XMM23;
207  extern const Register YMM23;
208  extern const Register ZMM23;
209 
210  extern const Register XMM24;
211  extern const Register YMM24;
212  extern const Register ZMM24;
213 
214  extern const Register XMM25;
215  extern const Register YMM25;
216  extern const Register ZMM25;
217 
218  extern const Register XMM26;
219  extern const Register YMM26;
220  extern const Register ZMM26;
221 
222  extern const Register XMM27;
223  extern const Register YMM27;
224  extern const Register ZMM27;
225 
226  extern const Register XMM28;
227  extern const Register YMM28;
228  extern const Register ZMM28;
229 
230  extern const Register XMM29;
231  extern const Register YMM29;
232  extern const Register ZMM29;
233 
234  extern const Register XMM30;
235  extern const Register YMM30;
236  extern const Register ZMM30;
237 
238  extern const Register XMM31;
239  extern const Register YMM31;
240  extern const Register ZMM31;
241 
242  extern const Register ES;
243  extern const Register CS;
244  extern const Register SS;
245  extern const Register DS;
246  extern const Register FS;
247  extern const Register GS;
248 
249  extern const Register ST0;
250  extern const Register ST1;
251  extern const Register ST2;
252  extern const Register ST3;
253  extern const Register ST4;
254  extern const Register ST5;
255  extern const Register ST6;
256  extern const Register ST7;
257 
258  extern const Register CR0;
259  extern const Register CR2;
260  extern const Register CR3;
261  extern const Register CR4;
262  extern const Register CR8;
263 
264  extern const Register DR0;
265  extern const Register DR1;
266  extern const Register DR2;
267  extern const Register DR3;
268  extern const Register DR4;
269  extern const Register DR5;
270  extern const Register DR6;
271  extern const Register DR7;
272 
273  extern const Register K0;
274  extern const Register K1;
275  extern const Register K2;
276  extern const Register K3;
277  extern const Register K4;
278  extern const Register K5;
279  extern const Register K6;
280  extern const Register K7;
281 
282  extern const Register IP;
283  extern const Register EIP;
284  extern const Register RIP;
285 
286 }
287 
288 #endif /* FCML_REGISTERS_HPP_ */
C++ wrappers common classes.
Definition: fcml_assembler.hpp:39