Added phash.pl
[nasm/perl-rewrite.git] / perl / old / insns / insnsa.c
blob671babb5bdfeb4763ec05c8e66b6d1a1394d1de1
1 /* This file auto-generated from insns.dat by insns.pl - don't edit it */
3 #include "nasm.h"
4 #include "insns.h"
6 static const struct itemplate instrux_AAA[] = {
7 {I_AAA, 0, {0,0,0,0,0}, nasm_bytecodes+20413, IF_8086|IF_NOLONG},
8 ITEMPLATE_END
9 };
11 static const struct itemplate instrux_AAD[] = {
12 {I_AAD, 0, {0,0,0,0,0}, nasm_bytecodes+19365, IF_8086|IF_NOLONG},
13 {I_AAD, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+19369, IF_8086|IF_SB|IF_NOLONG},
14 ITEMPLATE_END
17 static const struct itemplate instrux_AAM[] = {
18 {I_AAM, 0, {0,0,0,0,0}, nasm_bytecodes+19373, IF_8086|IF_NOLONG},
19 {I_AAM, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+19377, IF_8086|IF_SB|IF_NOLONG},
20 ITEMPLATE_END
23 static const struct itemplate instrux_AAS[] = {
24 {I_AAS, 0, {0,0,0,0,0}, nasm_bytecodes+20416, IF_8086|IF_NOLONG},
25 ITEMPLATE_END
28 static const struct itemplate instrux_ADC[] = {
29 {I_ADC, 2, {MEMORY,REG8,0,0,0}, nasm_bytecodes+19381, IF_8086|IF_SM},
30 {I_ADC, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+19381, IF_8086},
31 {I_ADC, 2, {MEMORY,REG16,0,0,0}, nasm_bytecodes+17490, IF_8086|IF_SM},
32 {I_ADC, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+17490, IF_8086},
33 {I_ADC, 2, {MEMORY,REG32,0,0,0}, nasm_bytecodes+17495, IF_386|IF_SM},
34 {I_ADC, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+17495, IF_386},
35 {I_ADC, 2, {MEMORY,REG64,0,0,0}, nasm_bytecodes+17500, IF_X64|IF_SM},
36 {I_ADC, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+17500, IF_X64},
37 {I_ADC, 2, {REG8,MEMORY,0,0,0}, nasm_bytecodes+10672, IF_8086|IF_SM},
38 {I_ADC, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+10672, IF_8086},
39 {I_ADC, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+17505, IF_8086|IF_SM},
40 {I_ADC, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+17505, IF_8086},
41 {I_ADC, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+17510, IF_386|IF_SM},
42 {I_ADC, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+17510, IF_386},
43 {I_ADC, 2, {REG64,MEMORY,0,0,0}, nasm_bytecodes+17515, IF_X64|IF_SM},
44 {I_ADC, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+17515, IF_X64},
45 {I_ADC, 2, {RM_GPR|BITS16,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+13980, IF_8086},
46 {I_ADC, 2, {RM_GPR|BITS32,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+13986, IF_386},
47 {I_ADC, 2, {RM_GPR|BITS64,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+13992, IF_X64},
48 {I_ADC, 2, {REG_AL,IMMEDIATE,0,0,0}, nasm_bytecodes+19385, IF_8086|IF_SM},
49 {I_ADC, 2, {REG_AX,SBYTE16,0,0,0}, nasm_bytecodes+13980, IF_8086|IF_SM},
50 {I_ADC, 2, {REG_AX,IMMEDIATE,0,0,0}, nasm_bytecodes+17520, IF_8086|IF_SM},
51 {I_ADC, 2, {REG_EAX,SBYTE32,0,0,0}, nasm_bytecodes+13986, IF_386|IF_SM},
52 {I_ADC, 2, {REG_EAX,IMMEDIATE,0,0,0}, nasm_bytecodes+17525, IF_386|IF_SM},
53 {I_ADC, 2, {REG_RAX,SBYTE64,0,0,0}, nasm_bytecodes+13992, IF_X64|IF_SM},
54 {I_ADC, 2, {REG_RAX,IMMEDIATE,0,0,0}, nasm_bytecodes+17530, IF_X64|IF_SM},
55 {I_ADC, 2, {RM_GPR|BITS8,IMMEDIATE,0,0,0}, nasm_bytecodes+17535, IF_8086|IF_SM},
56 {I_ADC, 2, {RM_GPR|BITS16,IMMEDIATE,0,0,0}, nasm_bytecodes+13998, IF_8086|IF_SM},
57 {I_ADC, 2, {RM_GPR|BITS32,IMMEDIATE,0,0,0}, nasm_bytecodes+14004, IF_386|IF_SM},
58 {I_ADC, 2, {RM_GPR|BITS64,IMMEDIATE,0,0,0}, nasm_bytecodes+14010, IF_X64|IF_SM},
59 {I_ADC, 2, {MEMORY,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+17535, IF_8086|IF_SM},
60 {I_ADC, 2, {MEMORY,IMMEDIATE|BITS16,0,0,0}, nasm_bytecodes+13998, IF_8086|IF_SM},
61 {I_ADC, 2, {MEMORY,IMMEDIATE|BITS32,0,0,0}, nasm_bytecodes+14004, IF_386|IF_SM},
62 ITEMPLATE_END
65 static const struct itemplate instrux_ADD[] = {
66 {I_ADD, 2, {MEMORY,REG8,0,0,0}, nasm_bytecodes+19389, IF_8086|IF_SM},
67 {I_ADD, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+19389, IF_8086},
68 {I_ADD, 2, {MEMORY,REG16,0,0,0}, nasm_bytecodes+17540, IF_8086|IF_SM},
69 {I_ADD, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+17540, IF_8086},
70 {I_ADD, 2, {MEMORY,REG32,0,0,0}, nasm_bytecodes+17545, IF_386|IF_SM},
71 {I_ADD, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+17545, IF_386},
72 {I_ADD, 2, {MEMORY,REG64,0,0,0}, nasm_bytecodes+17550, IF_X64|IF_SM},
73 {I_ADD, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+17550, IF_X64},
74 {I_ADD, 2, {REG8,MEMORY,0,0,0}, nasm_bytecodes+11323, IF_8086|IF_SM},
75 {I_ADD, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+11323, IF_8086},
76 {I_ADD, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+17555, IF_8086|IF_SM},
77 {I_ADD, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+17555, IF_8086},
78 {I_ADD, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+17560, IF_386|IF_SM},
79 {I_ADD, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+17560, IF_386},
80 {I_ADD, 2, {REG64,MEMORY,0,0,0}, nasm_bytecodes+17565, IF_X64|IF_SM},
81 {I_ADD, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+17565, IF_X64},
82 {I_ADD, 2, {RM_GPR|BITS16,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+14016, IF_8086},
83 {I_ADD, 2, {RM_GPR|BITS32,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+14022, IF_386},
84 {I_ADD, 2, {RM_GPR|BITS64,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+14028, IF_X64},
85 {I_ADD, 2, {REG_AL,IMMEDIATE,0,0,0}, nasm_bytecodes+19393, IF_8086|IF_SM},
86 {I_ADD, 2, {REG_AX,SBYTE16,0,0,0}, nasm_bytecodes+14016, IF_8086|IF_SM},
87 {I_ADD, 2, {REG_AX,IMMEDIATE,0,0,0}, nasm_bytecodes+17570, IF_8086|IF_SM},
88 {I_ADD, 2, {REG_EAX,SBYTE32,0,0,0}, nasm_bytecodes+14022, IF_386|IF_SM},
89 {I_ADD, 2, {REG_EAX,IMMEDIATE,0,0,0}, nasm_bytecodes+17575, IF_386|IF_SM},
90 {I_ADD, 2, {REG_RAX,SBYTE64,0,0,0}, nasm_bytecodes+14028, IF_X64|IF_SM},
91 {I_ADD, 2, {REG_RAX,IMMEDIATE,0,0,0}, nasm_bytecodes+17580, IF_X64|IF_SM},
92 {I_ADD, 2, {RM_GPR|BITS8,IMMEDIATE,0,0,0}, nasm_bytecodes+17585, IF_8086|IF_SM},
93 {I_ADD, 2, {RM_GPR|BITS16,IMMEDIATE,0,0,0}, nasm_bytecodes+14034, IF_8086|IF_SM},
94 {I_ADD, 2, {RM_GPR|BITS32,IMMEDIATE,0,0,0}, nasm_bytecodes+14040, IF_386|IF_SM},
95 {I_ADD, 2, {RM_GPR|BITS64,IMMEDIATE,0,0,0}, nasm_bytecodes+14046, IF_X64|IF_SM},
96 {I_ADD, 2, {MEMORY,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+17585, IF_8086|IF_SM},
97 {I_ADD, 2, {MEMORY,IMMEDIATE|BITS16,0,0,0}, nasm_bytecodes+14034, IF_8086|IF_SM},
98 {I_ADD, 2, {MEMORY,IMMEDIATE|BITS32,0,0,0}, nasm_bytecodes+14040, IF_386|IF_SM},
99 ITEMPLATE_END
102 static const struct itemplate instrux_ADDPD[] = {
103 {I_ADDPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15924, IF_WILLAMETTE|IF_SSE2|IF_SO},
104 ITEMPLATE_END
107 static const struct itemplate instrux_ADDPS[] = {
108 {I_ADDPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15210, IF_KATMAI|IF_SSE},
109 ITEMPLATE_END
112 static const struct itemplate instrux_ADDSD[] = {
113 {I_ADDSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15930, IF_WILLAMETTE|IF_SSE2|IF_SQ},
114 ITEMPLATE_END
117 static const struct itemplate instrux_ADDSS[] = {
118 {I_ADDSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15216, IF_KATMAI|IF_SSE|IF_SD},
119 ITEMPLATE_END
122 static const struct itemplate instrux_ADDSUBPD[] = {
123 {I_ADDSUBPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16200, IF_PRESCOTT|IF_SSE3|IF_SO},
124 ITEMPLATE_END
127 static const struct itemplate instrux_ADDSUBPS[] = {
128 {I_ADDSUBPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16206, IF_PRESCOTT|IF_SSE3|IF_SO},
129 ITEMPLATE_END
132 static const struct itemplate instrux_AESDEC[] = {
133 {I_AESDEC, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9171, IF_SSE|IF_WESTMERE|IF_SO},
134 ITEMPLATE_END
137 static const struct itemplate instrux_AESDECLAST[] = {
138 {I_AESDECLAST, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9178, IF_SSE|IF_WESTMERE|IF_SO},
139 ITEMPLATE_END
142 static const struct itemplate instrux_AESENC[] = {
143 {I_AESENC, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9157, IF_SSE|IF_WESTMERE|IF_SO},
144 ITEMPLATE_END
147 static const struct itemplate instrux_AESENCLAST[] = {
148 {I_AESENCLAST, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9164, IF_SSE|IF_WESTMERE|IF_SO},
149 ITEMPLATE_END
152 static const struct itemplate instrux_AESIMC[] = {
153 {I_AESIMC, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9185, IF_SSE|IF_WESTMERE|IF_SO},
154 ITEMPLATE_END
157 static const struct itemplate instrux_AESKEYGENASSIST[] = {
158 {I_AESKEYGENASSIST, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5911, IF_SSE|IF_WESTMERE|IF_SO},
159 ITEMPLATE_END
162 static const struct itemplate instrux_AND[] = {
163 {I_AND, 2, {MEMORY,REG8,0,0,0}, nasm_bytecodes+19397, IF_8086|IF_SM},
164 {I_AND, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+19397, IF_8086},
165 {I_AND, 2, {MEMORY,REG16,0,0,0}, nasm_bytecodes+17590, IF_8086|IF_SM},
166 {I_AND, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+17590, IF_8086},
167 {I_AND, 2, {MEMORY,REG32,0,0,0}, nasm_bytecodes+17595, IF_386|IF_SM},
168 {I_AND, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+17595, IF_386},
169 {I_AND, 2, {MEMORY,REG64,0,0,0}, nasm_bytecodes+17600, IF_X64|IF_SM},
170 {I_AND, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+17600, IF_X64},
171 {I_AND, 2, {REG8,MEMORY,0,0,0}, nasm_bytecodes+11610, IF_8086|IF_SM},
172 {I_AND, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+11610, IF_8086},
173 {I_AND, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+17605, IF_8086|IF_SM},
174 {I_AND, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+17605, IF_8086},
175 {I_AND, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+17610, IF_386|IF_SM},
176 {I_AND, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+17610, IF_386},
177 {I_AND, 2, {REG64,MEMORY,0,0,0}, nasm_bytecodes+17615, IF_X64|IF_SM},
178 {I_AND, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+17615, IF_X64},
179 {I_AND, 2, {RM_GPR|BITS16,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+14052, IF_8086},
180 {I_AND, 2, {RM_GPR|BITS32,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+14058, IF_386},
181 {I_AND, 2, {RM_GPR|BITS64,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+14064, IF_X64},
182 {I_AND, 2, {REG_AL,IMMEDIATE,0,0,0}, nasm_bytecodes+19401, IF_8086|IF_SM},
183 {I_AND, 2, {REG_AX,SBYTE16,0,0,0}, nasm_bytecodes+14052, IF_8086|IF_SM},
184 {I_AND, 2, {REG_AX,IMMEDIATE,0,0,0}, nasm_bytecodes+17620, IF_8086|IF_SM},
185 {I_AND, 2, {REG_EAX,SBYTE32,0,0,0}, nasm_bytecodes+14058, IF_386|IF_SM},
186 {I_AND, 2, {REG_EAX,IMMEDIATE,0,0,0}, nasm_bytecodes+17625, IF_386|IF_SM},
187 {I_AND, 2, {REG_RAX,SBYTE64,0,0,0}, nasm_bytecodes+14064, IF_X64|IF_SM},
188 {I_AND, 2, {REG_RAX,IMMEDIATE,0,0,0}, nasm_bytecodes+17630, IF_X64|IF_SM},
189 {I_AND, 2, {RM_GPR|BITS8,IMMEDIATE,0,0,0}, nasm_bytecodes+17635, IF_8086|IF_SM},
190 {I_AND, 2, {RM_GPR|BITS16,IMMEDIATE,0,0,0}, nasm_bytecodes+14070, IF_8086|IF_SM},
191 {I_AND, 2, {RM_GPR|BITS32,IMMEDIATE,0,0,0}, nasm_bytecodes+14076, IF_386|IF_SM},
192 {I_AND, 2, {RM_GPR|BITS64,IMMEDIATE,0,0,0}, nasm_bytecodes+14082, IF_X64|IF_SM},
193 {I_AND, 2, {MEMORY,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+17635, IF_8086|IF_SM},
194 {I_AND, 2, {MEMORY,IMMEDIATE|BITS16,0,0,0}, nasm_bytecodes+14070, IF_8086|IF_SM},
195 {I_AND, 2, {MEMORY,IMMEDIATE|BITS32,0,0,0}, nasm_bytecodes+14076, IF_386|IF_SM},
196 ITEMPLATE_END
199 static const struct itemplate instrux_ANDNPD[] = {
200 {I_ANDNPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15936, IF_WILLAMETTE|IF_SSE2|IF_SO},
201 ITEMPLATE_END
204 static const struct itemplate instrux_ANDNPS[] = {
205 {I_ANDNPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15222, IF_KATMAI|IF_SSE},
206 ITEMPLATE_END
209 static const struct itemplate instrux_ANDPD[] = {
210 {I_ANDPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15942, IF_WILLAMETTE|IF_SSE2|IF_SO},
211 ITEMPLATE_END
214 static const struct itemplate instrux_ANDPS[] = {
215 {I_ANDPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15228, IF_KATMAI|IF_SSE},
216 ITEMPLATE_END
219 static const struct itemplate instrux_ARPL[] = {
220 {I_ARPL, 2, {MEMORY,REG16,0,0,0}, nasm_bytecodes+19405, IF_286|IF_PROT|IF_SM|IF_NOLONG},
221 {I_ARPL, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+19405, IF_286|IF_PROT|IF_NOLONG},
222 ITEMPLATE_END
225 static const struct itemplate instrux_BB0_RESET[] = {
226 {I_BB0_RESET, 0, {0,0,0,0,0}, nasm_bytecodes+19409, IF_PENT|IF_CYRIX},
227 ITEMPLATE_END
230 static const struct itemplate instrux_BB1_RESET[] = {
231 {I_BB1_RESET, 0, {0,0,0,0,0}, nasm_bytecodes+19413, IF_PENT|IF_CYRIX},
232 ITEMPLATE_END
235 static const struct itemplate instrux_BLENDPD[] = {
236 {I_BLENDPD, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5607, IF_SSE41},
237 ITEMPLATE_END
240 static const struct itemplate instrux_BLENDPS[] = {
241 {I_BLENDPS, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5615, IF_SSE41},
242 ITEMPLATE_END
245 static const struct itemplate instrux_BLENDVPD[] = {
246 {I_BLENDVPD, 3, {XMMREG,RM_XMM,XMM0,0,0}, nasm_bytecodes+7918, IF_SSE41},
247 ITEMPLATE_END
250 static const struct itemplate instrux_BLENDVPS[] = {
251 {I_BLENDVPS, 3, {XMMREG,RM_XMM,XMM0,0,0}, nasm_bytecodes+7925, IF_SSE41},
252 ITEMPLATE_END
255 static const struct itemplate instrux_BOUND[] = {
256 {I_BOUND, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+17640, IF_186|IF_NOLONG},
257 {I_BOUND, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+17645, IF_386|IF_NOLONG},
258 ITEMPLATE_END
261 static const struct itemplate instrux_BSF[] = {
262 {I_BSF, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+14088, IF_386|IF_SM},
263 {I_BSF, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+14088, IF_386},
264 {I_BSF, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+14094, IF_386|IF_SM},
265 {I_BSF, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+14094, IF_386},
266 {I_BSF, 2, {REG64,MEMORY,0,0,0}, nasm_bytecodes+14100, IF_X64|IF_SM},
267 {I_BSF, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+14100, IF_X64},
268 ITEMPLATE_END
271 static const struct itemplate instrux_BSR[] = {
272 {I_BSR, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+14106, IF_386|IF_SM},
273 {I_BSR, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+14106, IF_386},
274 {I_BSR, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+14112, IF_386|IF_SM},
275 {I_BSR, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+14112, IF_386},
276 {I_BSR, 2, {REG64,MEMORY,0,0,0}, nasm_bytecodes+14118, IF_X64|IF_SM},
277 {I_BSR, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+14118, IF_X64},
278 ITEMPLATE_END
281 static const struct itemplate instrux_BSWAP[] = {
282 {I_BSWAP, 1, {REG32,0,0,0,0}, nasm_bytecodes+14124, IF_486},
283 {I_BSWAP, 1, {REG64,0,0,0,0}, nasm_bytecodes+14130, IF_X64},
284 ITEMPLATE_END
287 static const struct itemplate instrux_BT[] = {
288 {I_BT, 2, {MEMORY,REG16,0,0,0}, nasm_bytecodes+14136, IF_386|IF_SM},
289 {I_BT, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+14136, IF_386},
290 {I_BT, 2, {MEMORY,REG32,0,0,0}, nasm_bytecodes+14142, IF_386|IF_SM},
291 {I_BT, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+14142, IF_386},
292 {I_BT, 2, {MEMORY,REG64,0,0,0}, nasm_bytecodes+14148, IF_X64|IF_SM},
293 {I_BT, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+14148, IF_X64},
294 {I_BT, 2, {RM_GPR|BITS16,IMMEDIATE,0,0,0}, nasm_bytecodes+6735, IF_386|IF_SB},
295 {I_BT, 2, {RM_GPR|BITS32,IMMEDIATE,0,0,0}, nasm_bytecodes+6742, IF_386|IF_SB},
296 {I_BT, 2, {RM_GPR|BITS64,IMMEDIATE,0,0,0}, nasm_bytecodes+6749, IF_X64|IF_SB},
297 ITEMPLATE_END
300 static const struct itemplate instrux_BTC[] = {
301 {I_BTC, 2, {MEMORY,REG16,0,0,0}, nasm_bytecodes+14154, IF_386|IF_SM},
302 {I_BTC, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+14154, IF_386},
303 {I_BTC, 2, {MEMORY,REG32,0,0,0}, nasm_bytecodes+14160, IF_386|IF_SM},
304 {I_BTC, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+14160, IF_386},
305 {I_BTC, 2, {MEMORY,REG64,0,0,0}, nasm_bytecodes+14166, IF_X64|IF_SM},
306 {I_BTC, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+14166, IF_X64},
307 {I_BTC, 2, {RM_GPR|BITS16,IMMEDIATE,0,0,0}, nasm_bytecodes+6756, IF_386|IF_SB},
308 {I_BTC, 2, {RM_GPR|BITS32,IMMEDIATE,0,0,0}, nasm_bytecodes+6763, IF_386|IF_SB},
309 {I_BTC, 2, {RM_GPR|BITS64,IMMEDIATE,0,0,0}, nasm_bytecodes+6770, IF_X64|IF_SB},
310 ITEMPLATE_END
313 static const struct itemplate instrux_BTR[] = {
314 {I_BTR, 2, {MEMORY,REG16,0,0,0}, nasm_bytecodes+14172, IF_386|IF_SM},
315 {I_BTR, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+14172, IF_386},
316 {I_BTR, 2, {MEMORY,REG32,0,0,0}, nasm_bytecodes+14178, IF_386|IF_SM},
317 {I_BTR, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+14178, IF_386},
318 {I_BTR, 2, {MEMORY,REG64,0,0,0}, nasm_bytecodes+14184, IF_X64|IF_SM},
319 {I_BTR, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+14184, IF_X64},
320 {I_BTR, 2, {RM_GPR|BITS16,IMMEDIATE,0,0,0}, nasm_bytecodes+6777, IF_386|IF_SB},
321 {I_BTR, 2, {RM_GPR|BITS32,IMMEDIATE,0,0,0}, nasm_bytecodes+6784, IF_386|IF_SB},
322 {I_BTR, 2, {RM_GPR|BITS64,IMMEDIATE,0,0,0}, nasm_bytecodes+6791, IF_X64|IF_SB},
323 ITEMPLATE_END
326 static const struct itemplate instrux_BTS[] = {
327 {I_BTS, 2, {MEMORY,REG16,0,0,0}, nasm_bytecodes+14190, IF_386|IF_SM},
328 {I_BTS, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+14190, IF_386},
329 {I_BTS, 2, {MEMORY,REG32,0,0,0}, nasm_bytecodes+14196, IF_386|IF_SM},
330 {I_BTS, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+14196, IF_386},
331 {I_BTS, 2, {MEMORY,REG64,0,0,0}, nasm_bytecodes+14202, IF_X64|IF_SM},
332 {I_BTS, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+14202, IF_X64},
333 {I_BTS, 2, {RM_GPR|BITS16,IMMEDIATE,0,0,0}, nasm_bytecodes+6798, IF_386|IF_SB},
334 {I_BTS, 2, {RM_GPR|BITS32,IMMEDIATE,0,0,0}, nasm_bytecodes+6805, IF_386|IF_SB},
335 {I_BTS, 2, {RM_GPR|BITS64,IMMEDIATE,0,0,0}, nasm_bytecodes+6812, IF_X64|IF_SB},
336 ITEMPLATE_END
339 static const struct itemplate instrux_CALL[] = {
340 {I_CALL, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+17650, IF_8086},
341 {I_CALL, 1, {IMMEDIATE|NEAR,0,0,0,0}, nasm_bytecodes+17650, IF_8086},
342 {I_CALL, 1, {IMMEDIATE|FAR,0,0,0,0}, nasm_bytecodes+14208, IF_8086|IF_NOLONG},
343 {I_CALL, 1, {IMMEDIATE|BITS16,0,0,0,0}, nasm_bytecodes+17655, IF_8086},
344 {I_CALL, 1, {IMMEDIATE|BITS16|NEAR,0,0,0,0}, nasm_bytecodes+17655, IF_8086},
345 {I_CALL, 1, {IMMEDIATE|BITS16|FAR,0,0,0,0}, nasm_bytecodes+14214, IF_8086|IF_NOLONG},
346 {I_CALL, 1, {IMMEDIATE|BITS32,0,0,0,0}, nasm_bytecodes+17660, IF_386},
347 {I_CALL, 1, {IMMEDIATE|BITS32|NEAR,0,0,0,0}, nasm_bytecodes+17660, IF_386},
348 {I_CALL, 1, {IMMEDIATE|BITS32|FAR,0,0,0,0}, nasm_bytecodes+14220, IF_386|IF_NOLONG},
349 {I_CALL, 2, {IMMEDIATE|COLON,IMMEDIATE,0,0,0}, nasm_bytecodes+14226, IF_8086|IF_NOLONG},
350 {I_CALL, 2, {IMMEDIATE|BITS16|COLON,IMMEDIATE,0,0,0}, nasm_bytecodes+14232, IF_8086|IF_NOLONG},
351 {I_CALL, 2, {IMMEDIATE|COLON,IMMEDIATE|BITS16,0,0,0}, nasm_bytecodes+14232, IF_8086|IF_NOLONG},
352 {I_CALL, 2, {IMMEDIATE|BITS32|COLON,IMMEDIATE,0,0,0}, nasm_bytecodes+14238, IF_386|IF_NOLONG},
353 {I_CALL, 2, {IMMEDIATE|COLON,IMMEDIATE|BITS32,0,0,0}, nasm_bytecodes+14238, IF_386|IF_NOLONG},
354 {I_CALL, 1, {MEMORY|FAR,0,0,0,0}, nasm_bytecodes+17665, IF_8086|IF_NOLONG},
355 {I_CALL, 1, {MEMORY|FAR,0,0,0,0}, nasm_bytecodes+17670, IF_X64},
356 {I_CALL, 1, {MEMORY|BITS16|FAR,0,0,0,0}, nasm_bytecodes+17675, IF_8086},
357 {I_CALL, 1, {MEMORY|BITS32|FAR,0,0,0,0}, nasm_bytecodes+17680, IF_386},
358 {I_CALL, 1, {MEMORY|BITS64|FAR,0,0,0,0}, nasm_bytecodes+17670, IF_X64},
359 {I_CALL, 1, {MEMORY|NEAR,0,0,0,0}, nasm_bytecodes+17685, IF_8086},
360 {I_CALL, 1, {MEMORY|BITS16|NEAR,0,0,0,0}, nasm_bytecodes+17690, IF_8086},
361 {I_CALL, 1, {MEMORY|BITS32|NEAR,0,0,0,0}, nasm_bytecodes+17695, IF_386|IF_NOLONG},
362 {I_CALL, 1, {MEMORY|BITS64|NEAR,0,0,0,0}, nasm_bytecodes+17700, IF_X64},
363 {I_CALL, 1, {REG16,0,0,0,0}, nasm_bytecodes+17690, IF_8086},
364 {I_CALL, 1, {REG32,0,0,0,0}, nasm_bytecodes+17695, IF_386|IF_NOLONG},
365 {I_CALL, 1, {REG64,0,0,0,0}, nasm_bytecodes+17705, IF_X64},
366 {I_CALL, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+17685, IF_8086},
367 {I_CALL, 1, {MEMORY|BITS16,0,0,0,0}, nasm_bytecodes+17690, IF_8086},
368 {I_CALL, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+17695, IF_386|IF_NOLONG},
369 {I_CALL, 1, {MEMORY|BITS64,0,0,0,0}, nasm_bytecodes+17705, IF_X64},
370 ITEMPLATE_END
373 static const struct itemplate instrux_CBW[] = {
374 {I_CBW, 0, {0,0,0,0,0}, nasm_bytecodes+19417, IF_8086},
375 ITEMPLATE_END
378 static const struct itemplate instrux_CDQ[] = {
379 {I_CDQ, 0, {0,0,0,0,0}, nasm_bytecodes+19421, IF_386},
380 ITEMPLATE_END
383 static const struct itemplate instrux_CDQE[] = {
384 {I_CDQE, 0, {0,0,0,0,0}, nasm_bytecodes+19425, IF_X64},
385 ITEMPLATE_END
388 static const struct itemplate instrux_CLC[] = {
389 {I_CLC, 0, {0,0,0,0,0}, nasm_bytecodes+19137, IF_8086},
390 ITEMPLATE_END
393 static const struct itemplate instrux_CLD[] = {
394 {I_CLD, 0, {0,0,0,0,0}, nasm_bytecodes+20419, IF_8086},
395 ITEMPLATE_END
398 static const struct itemplate instrux_CLFLUSH[] = {
399 {I_CLFLUSH, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+19310, IF_WILLAMETTE|IF_SSE2},
400 ITEMPLATE_END
403 static const struct itemplate instrux_CLGI[] = {
404 {I_CLGI, 0, {0,0,0,0,0}, nasm_bytecodes+17710, IF_X64|IF_AMD},
405 ITEMPLATE_END
408 static const struct itemplate instrux_CLI[] = {
409 {I_CLI, 0, {0,0,0,0,0}, nasm_bytecodes+20422, IF_8086},
410 ITEMPLATE_END
413 static const struct itemplate instrux_CLTS[] = {
414 {I_CLTS, 0, {0,0,0,0,0}, nasm_bytecodes+19429, IF_286|IF_PRIV},
415 ITEMPLATE_END
418 static const struct itemplate instrux_CMC[] = {
419 {I_CMC, 0, {0,0,0,0,0}, nasm_bytecodes+20425, IF_8086},
420 ITEMPLATE_END
423 static const struct itemplate instrux_CMP[] = {
424 {I_CMP, 2, {MEMORY,REG8,0,0,0}, nasm_bytecodes+19433, IF_8086|IF_SM},
425 {I_CMP, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+19433, IF_8086},
426 {I_CMP, 2, {MEMORY,REG16,0,0,0}, nasm_bytecodes+17715, IF_8086|IF_SM},
427 {I_CMP, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+17715, IF_8086},
428 {I_CMP, 2, {MEMORY,REG32,0,0,0}, nasm_bytecodes+17720, IF_386|IF_SM},
429 {I_CMP, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+17720, IF_386},
430 {I_CMP, 2, {MEMORY,REG64,0,0,0}, nasm_bytecodes+17725, IF_X64|IF_SM},
431 {I_CMP, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+17725, IF_X64},
432 {I_CMP, 2, {REG8,MEMORY,0,0,0}, nasm_bytecodes+11568, IF_8086|IF_SM},
433 {I_CMP, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+11568, IF_8086},
434 {I_CMP, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+17730, IF_8086|IF_SM},
435 {I_CMP, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+17730, IF_8086},
436 {I_CMP, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+17735, IF_386|IF_SM},
437 {I_CMP, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+17735, IF_386},
438 {I_CMP, 2, {REG64,MEMORY,0,0,0}, nasm_bytecodes+17740, IF_X64|IF_SM},
439 {I_CMP, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+17740, IF_X64},
440 {I_CMP, 2, {RM_GPR|BITS16,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+14244, IF_8086},
441 {I_CMP, 2, {RM_GPR|BITS32,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+14250, IF_386},
442 {I_CMP, 2, {RM_GPR|BITS64,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+14256, IF_X64},
443 {I_CMP, 2, {REG_AL,IMMEDIATE,0,0,0}, nasm_bytecodes+19437, IF_8086|IF_SM},
444 {I_CMP, 2, {REG_AX,SBYTE16,0,0,0}, nasm_bytecodes+14244, IF_8086|IF_SM},
445 {I_CMP, 2, {REG_AX,IMMEDIATE,0,0,0}, nasm_bytecodes+17745, IF_8086|IF_SM},
446 {I_CMP, 2, {REG_EAX,SBYTE32,0,0,0}, nasm_bytecodes+14250, IF_386|IF_SM},
447 {I_CMP, 2, {REG_EAX,IMMEDIATE,0,0,0}, nasm_bytecodes+17750, IF_386|IF_SM},
448 {I_CMP, 2, {REG_RAX,SBYTE64,0,0,0}, nasm_bytecodes+14256, IF_X64|IF_SM},
449 {I_CMP, 2, {REG_RAX,IMMEDIATE,0,0,0}, nasm_bytecodes+17755, IF_X64|IF_SM},
450 {I_CMP, 2, {RM_GPR|BITS8,IMMEDIATE,0,0,0}, nasm_bytecodes+17760, IF_8086|IF_SM},
451 {I_CMP, 2, {RM_GPR|BITS16,IMMEDIATE,0,0,0}, nasm_bytecodes+14262, IF_8086|IF_SM},
452 {I_CMP, 2, {RM_GPR|BITS32,IMMEDIATE,0,0,0}, nasm_bytecodes+14268, IF_386|IF_SM},
453 {I_CMP, 2, {RM_GPR|BITS64,IMMEDIATE,0,0,0}, nasm_bytecodes+14274, IF_X64|IF_SM},
454 {I_CMP, 2, {MEMORY,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+17760, IF_8086|IF_SM},
455 {I_CMP, 2, {MEMORY,IMMEDIATE|BITS16,0,0,0}, nasm_bytecodes+14262, IF_8086|IF_SM},
456 {I_CMP, 2, {MEMORY,IMMEDIATE|BITS32,0,0,0}, nasm_bytecodes+14268, IF_386|IF_SM},
457 ITEMPLATE_END
460 static const struct itemplate instrux_CMPEQPD[] = {
461 {I_CMPEQPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5431, IF_WILLAMETTE|IF_SSE2|IF_SO},
462 ITEMPLATE_END
465 static const struct itemplate instrux_CMPEQPS[] = {
466 {I_CMPEQPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5255, IF_KATMAI|IF_SSE},
467 ITEMPLATE_END
470 static const struct itemplate instrux_CMPEQSD[] = {
471 {I_CMPEQSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5439, IF_WILLAMETTE|IF_SSE2},
472 ITEMPLATE_END
475 static const struct itemplate instrux_CMPEQSS[] = {
476 {I_CMPEQSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5263, IF_KATMAI|IF_SSE},
477 ITEMPLATE_END
480 static const struct itemplate instrux_CMPLEPD[] = {
481 {I_CMPLEPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5447, IF_WILLAMETTE|IF_SSE2|IF_SO},
482 ITEMPLATE_END
485 static const struct itemplate instrux_CMPLEPS[] = {
486 {I_CMPLEPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5271, IF_KATMAI|IF_SSE},
487 ITEMPLATE_END
490 static const struct itemplate instrux_CMPLESD[] = {
491 {I_CMPLESD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5455, IF_WILLAMETTE|IF_SSE2},
492 ITEMPLATE_END
495 static const struct itemplate instrux_CMPLESS[] = {
496 {I_CMPLESS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5279, IF_KATMAI|IF_SSE},
497 ITEMPLATE_END
500 static const struct itemplate instrux_CMPLTPD[] = {
501 {I_CMPLTPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5463, IF_WILLAMETTE|IF_SSE2|IF_SO},
502 ITEMPLATE_END
505 static const struct itemplate instrux_CMPLTPS[] = {
506 {I_CMPLTPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5287, IF_KATMAI|IF_SSE},
507 ITEMPLATE_END
510 static const struct itemplate instrux_CMPLTSD[] = {
511 {I_CMPLTSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5471, IF_WILLAMETTE|IF_SSE2},
512 ITEMPLATE_END
515 static const struct itemplate instrux_CMPLTSS[] = {
516 {I_CMPLTSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5295, IF_KATMAI|IF_SSE},
517 ITEMPLATE_END
520 static const struct itemplate instrux_CMPNEQPD[] = {
521 {I_CMPNEQPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5479, IF_WILLAMETTE|IF_SSE2|IF_SO},
522 ITEMPLATE_END
525 static const struct itemplate instrux_CMPNEQPS[] = {
526 {I_CMPNEQPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5303, IF_KATMAI|IF_SSE},
527 ITEMPLATE_END
530 static const struct itemplate instrux_CMPNEQSD[] = {
531 {I_CMPNEQSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5487, IF_WILLAMETTE|IF_SSE2},
532 ITEMPLATE_END
535 static const struct itemplate instrux_CMPNEQSS[] = {
536 {I_CMPNEQSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5311, IF_KATMAI|IF_SSE},
537 ITEMPLATE_END
540 static const struct itemplate instrux_CMPNLEPD[] = {
541 {I_CMPNLEPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5495, IF_WILLAMETTE|IF_SSE2|IF_SO},
542 ITEMPLATE_END
545 static const struct itemplate instrux_CMPNLEPS[] = {
546 {I_CMPNLEPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5319, IF_KATMAI|IF_SSE},
547 ITEMPLATE_END
550 static const struct itemplate instrux_CMPNLESD[] = {
551 {I_CMPNLESD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5503, IF_WILLAMETTE|IF_SSE2},
552 ITEMPLATE_END
555 static const struct itemplate instrux_CMPNLESS[] = {
556 {I_CMPNLESS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5327, IF_KATMAI|IF_SSE},
557 ITEMPLATE_END
560 static const struct itemplate instrux_CMPNLTPD[] = {
561 {I_CMPNLTPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5511, IF_WILLAMETTE|IF_SSE2|IF_SO},
562 ITEMPLATE_END
565 static const struct itemplate instrux_CMPNLTPS[] = {
566 {I_CMPNLTPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5335, IF_KATMAI|IF_SSE},
567 ITEMPLATE_END
570 static const struct itemplate instrux_CMPNLTSD[] = {
571 {I_CMPNLTSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5519, IF_WILLAMETTE|IF_SSE2},
572 ITEMPLATE_END
575 static const struct itemplate instrux_CMPNLTSS[] = {
576 {I_CMPNLTSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5343, IF_KATMAI|IF_SSE},
577 ITEMPLATE_END
580 static const struct itemplate instrux_CMPORDPD[] = {
581 {I_CMPORDPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5527, IF_WILLAMETTE|IF_SSE2|IF_SO},
582 ITEMPLATE_END
585 static const struct itemplate instrux_CMPORDPS[] = {
586 {I_CMPORDPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5351, IF_KATMAI|IF_SSE},
587 ITEMPLATE_END
590 static const struct itemplate instrux_CMPORDSD[] = {
591 {I_CMPORDSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5535, IF_WILLAMETTE|IF_SSE2},
592 ITEMPLATE_END
595 static const struct itemplate instrux_CMPORDSS[] = {
596 {I_CMPORDSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5359, IF_KATMAI|IF_SSE},
597 ITEMPLATE_END
600 static const struct itemplate instrux_CMPPD[] = {
601 {I_CMPPD, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+7624, IF_WILLAMETTE|IF_SSE2|IF_SM2|IF_SB|IF_AR2},
602 ITEMPLATE_END
605 static const struct itemplate instrux_CMPPS[] = {
606 {I_CMPPS, 3, {XMMREG,MEMORY,IMMEDIATE,0,0}, nasm_bytecodes+7365, IF_KATMAI|IF_SSE|IF_SB|IF_AR2},
607 {I_CMPPS, 3, {XMMREG,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+7365, IF_KATMAI|IF_SSE|IF_SB|IF_AR2},
608 ITEMPLATE_END
611 static const struct itemplate instrux_CMPSB[] = {
612 {I_CMPSB, 0, {0,0,0,0,0}, nasm_bytecodes+19441, IF_8086},
613 ITEMPLATE_END
616 static const struct itemplate instrux_CMPSD[] = {
617 {I_CMPSD, 0, {0,0,0,0,0}, nasm_bytecodes+17765, IF_386},
618 {I_CMPSD, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+7631, IF_WILLAMETTE|IF_SSE2|IF_SB|IF_AR2},
619 ITEMPLATE_END
622 static const struct itemplate instrux_CMPSQ[] = {
623 {I_CMPSQ, 0, {0,0,0,0,0}, nasm_bytecodes+17770, IF_X64},
624 ITEMPLATE_END
627 static const struct itemplate instrux_CMPSS[] = {
628 {I_CMPSS, 3, {XMMREG,MEMORY,IMMEDIATE,0,0}, nasm_bytecodes+7372, IF_KATMAI|IF_SSE|IF_SB|IF_AR2},
629 {I_CMPSS, 3, {XMMREG,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+7372, IF_KATMAI|IF_SSE|IF_SB|IF_AR2},
630 ITEMPLATE_END
633 static const struct itemplate instrux_CMPSW[] = {
634 {I_CMPSW, 0, {0,0,0,0,0}, nasm_bytecodes+17775, IF_8086},
635 ITEMPLATE_END
638 static const struct itemplate instrux_CMPUNORDPD[] = {
639 {I_CMPUNORDPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5543, IF_WILLAMETTE|IF_SSE2|IF_SO},
640 ITEMPLATE_END
643 static const struct itemplate instrux_CMPUNORDPS[] = {
644 {I_CMPUNORDPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5367, IF_KATMAI|IF_SSE},
645 ITEMPLATE_END
648 static const struct itemplate instrux_CMPUNORDSD[] = {
649 {I_CMPUNORDSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5551, IF_WILLAMETTE|IF_SSE2},
650 ITEMPLATE_END
653 static const struct itemplate instrux_CMPUNORDSS[] = {
654 {I_CMPUNORDSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5375, IF_KATMAI|IF_SSE},
655 ITEMPLATE_END
658 static const struct itemplate instrux_CMPXCHG[] = {
659 {I_CMPXCHG, 2, {MEMORY,REG8,0,0,0}, nasm_bytecodes+17780, IF_PENT|IF_SM},
660 {I_CMPXCHG, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+17780, IF_PENT},
661 {I_CMPXCHG, 2, {MEMORY,REG16,0,0,0}, nasm_bytecodes+14280, IF_PENT|IF_SM},
662 {I_CMPXCHG, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+14280, IF_PENT},
663 {I_CMPXCHG, 2, {MEMORY,REG32,0,0,0}, nasm_bytecodes+14286, IF_PENT|IF_SM},
664 {I_CMPXCHG, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+14286, IF_PENT},
665 {I_CMPXCHG, 2, {MEMORY,REG64,0,0,0}, nasm_bytecodes+14292, IF_X64|IF_SM},
666 {I_CMPXCHG, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+14292, IF_X64},
667 ITEMPLATE_END
670 static const struct itemplate instrux_CMPXCHG16B[] = {
671 {I_CMPXCHG16B, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+14310, IF_X64},
672 ITEMPLATE_END
675 static const struct itemplate instrux_CMPXCHG486[] = {
676 {I_CMPXCHG486, 2, {MEMORY,REG8,0,0,0}, nasm_bytecodes+17785, IF_486|IF_SM|IF_UNDOC},
677 {I_CMPXCHG486, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+17785, IF_486|IF_UNDOC},
678 {I_CMPXCHG486, 2, {MEMORY,REG16,0,0,0}, nasm_bytecodes+14298, IF_486|IF_SM|IF_UNDOC},
679 {I_CMPXCHG486, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+14298, IF_486|IF_UNDOC},
680 {I_CMPXCHG486, 2, {MEMORY,REG32,0,0,0}, nasm_bytecodes+14304, IF_486|IF_SM|IF_UNDOC},
681 {I_CMPXCHG486, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+14304, IF_486|IF_UNDOC},
682 ITEMPLATE_END
685 static const struct itemplate instrux_CMPXCHG8B[] = {
686 {I_CMPXCHG8B, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+14311, IF_PENT},
687 ITEMPLATE_END
690 static const struct itemplate instrux_COMEQPD[] = {
691 {I_COMEQPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+189, IF_SSE5|IF_AMD|IF_SO},
692 ITEMPLATE_END
695 static const struct itemplate instrux_COMEQPS[] = {
696 {I_COMEQPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+45, IF_SSE5|IF_AMD|IF_SO},
697 ITEMPLATE_END
700 static const struct itemplate instrux_COMEQSD[] = {
701 {I_COMEQSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+477, IF_SSE5|IF_AMD|IF_SQ},
702 ITEMPLATE_END
705 static const struct itemplate instrux_COMEQSS[] = {
706 {I_COMEQSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+333, IF_SSE5|IF_AMD|IF_SD},
707 ITEMPLATE_END
710 static const struct itemplate instrux_COMFALSEPD[] = {
711 {I_COMFALSEPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+288, IF_SSE5|IF_AMD|IF_SO},
712 ITEMPLATE_END
715 static const struct itemplate instrux_COMFALSEPS[] = {
716 {I_COMFALSEPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+144, IF_SSE5|IF_AMD|IF_SO},
717 ITEMPLATE_END
720 static const struct itemplate instrux_COMFALSESD[] = {
721 {I_COMFALSESD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+576, IF_SSE5|IF_AMD|IF_SQ},
722 ITEMPLATE_END
725 static const struct itemplate instrux_COMFALSESS[] = {
726 {I_COMFALSESS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+432, IF_SSE5|IF_AMD|IF_SD},
727 ITEMPLATE_END
730 static const struct itemplate instrux_COMISD[] = {
731 {I_COMISD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15948, IF_WILLAMETTE|IF_SSE2},
732 ITEMPLATE_END
735 static const struct itemplate instrux_COMISS[] = {
736 {I_COMISS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15234, IF_KATMAI|IF_SSE},
737 ITEMPLATE_END
740 static const struct itemplate instrux_COMLEPD[] = {
741 {I_COMLEPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+207, IF_SSE5|IF_AMD|IF_SO},
742 ITEMPLATE_END
745 static const struct itemplate instrux_COMLEPS[] = {
746 {I_COMLEPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+63, IF_SSE5|IF_AMD|IF_SO},
747 ITEMPLATE_END
750 static const struct itemplate instrux_COMLESD[] = {
751 {I_COMLESD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+495, IF_SSE5|IF_AMD|IF_SQ},
752 ITEMPLATE_END
755 static const struct itemplate instrux_COMLESS[] = {
756 {I_COMLESS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+351, IF_SSE5|IF_AMD|IF_SD},
757 ITEMPLATE_END
760 static const struct itemplate instrux_COMLTPD[] = {
761 {I_COMLTPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+198, IF_SSE5|IF_AMD|IF_SO},
762 ITEMPLATE_END
765 static const struct itemplate instrux_COMLTPS[] = {
766 {I_COMLTPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+54, IF_SSE5|IF_AMD|IF_SO},
767 ITEMPLATE_END
770 static const struct itemplate instrux_COMLTSD[] = {
771 {I_COMLTSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+486, IF_SSE5|IF_AMD|IF_SQ},
772 ITEMPLATE_END
775 static const struct itemplate instrux_COMLTSS[] = {
776 {I_COMLTSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+342, IF_SSE5|IF_AMD|IF_SD},
777 ITEMPLATE_END
780 static const struct itemplate instrux_COMNEQPD[] = {
781 {I_COMNEQPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+297, IF_SSE5|IF_AMD|IF_SO},
782 ITEMPLATE_END
785 static const struct itemplate instrux_COMNEQPS[] = {
786 {I_COMNEQPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+153, IF_SSE5|IF_AMD|IF_SO},
787 ITEMPLATE_END
790 static const struct itemplate instrux_COMNEQSD[] = {
791 {I_COMNEQSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+585, IF_SSE5|IF_AMD|IF_SQ},
792 ITEMPLATE_END
795 static const struct itemplate instrux_COMNEQSS[] = {
796 {I_COMNEQSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+441, IF_SSE5|IF_AMD|IF_SD},
797 ITEMPLATE_END
800 static const struct itemplate instrux_COMNLEPD[] = {
801 {I_COMNLEPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+315, IF_SSE5|IF_AMD|IF_SO},
802 ITEMPLATE_END
805 static const struct itemplate instrux_COMNLEPS[] = {
806 {I_COMNLEPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+171, IF_SSE5|IF_AMD|IF_SO},
807 ITEMPLATE_END
810 static const struct itemplate instrux_COMNLESD[] = {
811 {I_COMNLESD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+603, IF_SSE5|IF_AMD|IF_SQ},
812 ITEMPLATE_END
815 static const struct itemplate instrux_COMNLESS[] = {
816 {I_COMNLESS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+459, IF_SSE5|IF_AMD|IF_SD},
817 ITEMPLATE_END
820 static const struct itemplate instrux_COMNLTPD[] = {
821 {I_COMNLTPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+306, IF_SSE5|IF_AMD|IF_SO},
822 ITEMPLATE_END
825 static const struct itemplate instrux_COMNLTPS[] = {
826 {I_COMNLTPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+162, IF_SSE5|IF_AMD|IF_SO},
827 ITEMPLATE_END
830 static const struct itemplate instrux_COMNLTSD[] = {
831 {I_COMNLTSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+594, IF_SSE5|IF_AMD|IF_SQ},
832 ITEMPLATE_END
835 static const struct itemplate instrux_COMNLTSS[] = {
836 {I_COMNLTSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+450, IF_SSE5|IF_AMD|IF_SD},
837 ITEMPLATE_END
840 static const struct itemplate instrux_COMORDPD[] = {
841 {I_COMORDPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+252, IF_SSE5|IF_AMD|IF_SO},
842 ITEMPLATE_END
845 static const struct itemplate instrux_COMORDPS[] = {
846 {I_COMORDPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+108, IF_SSE5|IF_AMD|IF_SO},
847 ITEMPLATE_END
850 static const struct itemplate instrux_COMORDSD[] = {
851 {I_COMORDSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+540, IF_SSE5|IF_AMD|IF_SQ},
852 ITEMPLATE_END
855 static const struct itemplate instrux_COMORDSS[] = {
856 {I_COMORDSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+396, IF_SSE5|IF_AMD|IF_SD},
857 ITEMPLATE_END
860 static const struct itemplate instrux_COMPD[] = {
861 {I_COMPD, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+5775, IF_SSE5|IF_AMD|IF_SO},
862 ITEMPLATE_END
865 static const struct itemplate instrux_COMPS[] = {
866 {I_COMPS, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+5767, IF_SSE5|IF_AMD|IF_SO},
867 ITEMPLATE_END
870 static const struct itemplate instrux_COMSD[] = {
871 {I_COMSD, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+5791, IF_SSE5|IF_AMD|IF_SQ},
872 ITEMPLATE_END
875 static const struct itemplate instrux_COMSS[] = {
876 {I_COMSS, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+5783, IF_SSE5|IF_AMD|IF_SD},
877 ITEMPLATE_END
880 static const struct itemplate instrux_COMTRUEPD[] = {
881 {I_COMTRUEPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+324, IF_SSE5|IF_AMD|IF_SO},
882 ITEMPLATE_END
885 static const struct itemplate instrux_COMTRUEPS[] = {
886 {I_COMTRUEPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+180, IF_SSE5|IF_AMD|IF_SO},
887 ITEMPLATE_END
890 static const struct itemplate instrux_COMTRUESD[] = {
891 {I_COMTRUESD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+612, IF_SSE5|IF_AMD|IF_SQ},
892 ITEMPLATE_END
895 static const struct itemplate instrux_COMTRUESS[] = {
896 {I_COMTRUESS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+468, IF_SSE5|IF_AMD|IF_SD},
897 ITEMPLATE_END
900 static const struct itemplate instrux_COMUEQPD[] = {
901 {I_COMUEQPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+261, IF_SSE5|IF_AMD|IF_SO},
902 ITEMPLATE_END
905 static const struct itemplate instrux_COMUEQPS[] = {
906 {I_COMUEQPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+117, IF_SSE5|IF_AMD|IF_SO},
907 ITEMPLATE_END
910 static const struct itemplate instrux_COMUEQSD[] = {
911 {I_COMUEQSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+549, IF_SSE5|IF_AMD|IF_SQ},
912 ITEMPLATE_END
915 static const struct itemplate instrux_COMUEQSS[] = {
916 {I_COMUEQSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+405, IF_SSE5|IF_AMD|IF_SD},
917 ITEMPLATE_END
920 static const struct itemplate instrux_COMULEPD[] = {
921 {I_COMULEPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+279, IF_SSE5|IF_AMD|IF_SO},
922 ITEMPLATE_END
925 static const struct itemplate instrux_COMULEPS[] = {
926 {I_COMULEPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+135, IF_SSE5|IF_AMD|IF_SO},
927 ITEMPLATE_END
930 static const struct itemplate instrux_COMULESD[] = {
931 {I_COMULESD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+567, IF_SSE5|IF_AMD|IF_SQ},
932 ITEMPLATE_END
935 static const struct itemplate instrux_COMULESS[] = {
936 {I_COMULESS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+423, IF_SSE5|IF_AMD|IF_SD},
937 ITEMPLATE_END
940 static const struct itemplate instrux_COMULTPD[] = {
941 {I_COMULTPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+270, IF_SSE5|IF_AMD|IF_SO},
942 ITEMPLATE_END
945 static const struct itemplate instrux_COMULTPS[] = {
946 {I_COMULTPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+126, IF_SSE5|IF_AMD|IF_SO},
947 ITEMPLATE_END
950 static const struct itemplate instrux_COMULTSD[] = {
951 {I_COMULTSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+558, IF_SSE5|IF_AMD|IF_SQ},
952 ITEMPLATE_END
955 static const struct itemplate instrux_COMULTSS[] = {
956 {I_COMULTSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+414, IF_SSE5|IF_AMD|IF_SD},
957 ITEMPLATE_END
960 static const struct itemplate instrux_COMUNEQPD[] = {
961 {I_COMUNEQPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+225, IF_SSE5|IF_AMD|IF_SO},
962 ITEMPLATE_END
965 static const struct itemplate instrux_COMUNEQPS[] = {
966 {I_COMUNEQPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+81, IF_SSE5|IF_AMD|IF_SO},
967 ITEMPLATE_END
970 static const struct itemplate instrux_COMUNEQSD[] = {
971 {I_COMUNEQSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+513, IF_SSE5|IF_AMD|IF_SQ},
972 ITEMPLATE_END
975 static const struct itemplate instrux_COMUNEQSS[] = {
976 {I_COMUNEQSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+369, IF_SSE5|IF_AMD|IF_SD},
977 ITEMPLATE_END
980 static const struct itemplate instrux_COMUNLEPD[] = {
981 {I_COMUNLEPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+243, IF_SSE5|IF_AMD|IF_SO},
982 ITEMPLATE_END
985 static const struct itemplate instrux_COMUNLEPS[] = {
986 {I_COMUNLEPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+99, IF_SSE5|IF_AMD|IF_SO},
987 ITEMPLATE_END
990 static const struct itemplate instrux_COMUNLESD[] = {
991 {I_COMUNLESD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+531, IF_SSE5|IF_AMD|IF_SQ},
992 ITEMPLATE_END
995 static const struct itemplate instrux_COMUNLESS[] = {
996 {I_COMUNLESS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+387, IF_SSE5|IF_AMD|IF_SD},
997 ITEMPLATE_END
1000 static const struct itemplate instrux_COMUNLTPD[] = {
1001 {I_COMUNLTPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+234, IF_SSE5|IF_AMD|IF_SO},
1002 ITEMPLATE_END
1005 static const struct itemplate instrux_COMUNLTPS[] = {
1006 {I_COMUNLTPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+90, IF_SSE5|IF_AMD|IF_SO},
1007 ITEMPLATE_END
1010 static const struct itemplate instrux_COMUNLTSD[] = {
1011 {I_COMUNLTSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+522, IF_SSE5|IF_AMD|IF_SQ},
1012 ITEMPLATE_END
1015 static const struct itemplate instrux_COMUNLTSS[] = {
1016 {I_COMUNLTSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+378, IF_SSE5|IF_AMD|IF_SD},
1017 ITEMPLATE_END
1020 static const struct itemplate instrux_COMUNORDPD[] = {
1021 {I_COMUNORDPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+216, IF_SSE5|IF_AMD|IF_SO},
1022 ITEMPLATE_END
1025 static const struct itemplate instrux_COMUNORDPS[] = {
1026 {I_COMUNORDPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+72, IF_SSE5|IF_AMD|IF_SO},
1027 ITEMPLATE_END
1030 static const struct itemplate instrux_COMUNORDSD[] = {
1031 {I_COMUNORDSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+504, IF_SSE5|IF_AMD|IF_SQ},
1032 ITEMPLATE_END
1035 static const struct itemplate instrux_COMUNORDSS[] = {
1036 {I_COMUNORDSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+360, IF_SSE5|IF_AMD|IF_SD},
1037 ITEMPLATE_END
1040 static const struct itemplate instrux_CPUID[] = {
1041 {I_CPUID, 0, {0,0,0,0,0}, nasm_bytecodes+19445, IF_PENT},
1042 ITEMPLATE_END
1045 static const struct itemplate instrux_CPU_READ[] = {
1046 {I_CPU_READ, 0, {0,0,0,0,0}, nasm_bytecodes+19449, IF_PENT|IF_CYRIX},
1047 ITEMPLATE_END
1050 static const struct itemplate instrux_CPU_WRITE[] = {
1051 {I_CPU_WRITE, 0, {0,0,0,0,0}, nasm_bytecodes+19453, IF_PENT|IF_CYRIX},
1052 ITEMPLATE_END
1055 static const struct itemplate instrux_CQO[] = {
1056 {I_CQO, 0, {0,0,0,0,0}, nasm_bytecodes+19457, IF_X64},
1057 ITEMPLATE_END
1060 static const struct itemplate instrux_CRC32[] = {
1061 {I_CRC32, 2, {REG32,RM_GPR|BITS8,0,0,0}, nasm_bytecodes+5720, IF_SSE42},
1062 {I_CRC32, 2, {REG32,RM_GPR|BITS16,0,0,0}, nasm_bytecodes+5703, IF_SSE42},
1063 {I_CRC32, 2, {REG32,RM_GPR|BITS32,0,0,0}, nasm_bytecodes+5711, IF_SSE42},
1064 {I_CRC32, 2, {REG64,RM_GPR|BITS8,0,0,0}, nasm_bytecodes+5719, IF_SSE42|IF_X64},
1065 {I_CRC32, 2, {REG64,RM_GPR|BITS64,0,0,0}, nasm_bytecodes+5727, IF_SSE42|IF_X64},
1066 ITEMPLATE_END
1069 static const struct itemplate instrux_CVTDQ2PD[] = {
1070 {I_CVTDQ2PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15954, IF_WILLAMETTE|IF_SSE2|IF_SQ},
1071 ITEMPLATE_END
1074 static const struct itemplate instrux_CVTDQ2PS[] = {
1075 {I_CVTDQ2PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15960, IF_WILLAMETTE|IF_SSE2|IF_SO},
1076 ITEMPLATE_END
1079 static const struct itemplate instrux_CVTPD2DQ[] = {
1080 {I_CVTPD2DQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15966, IF_WILLAMETTE|IF_SSE2|IF_SO},
1081 ITEMPLATE_END
1084 static const struct itemplate instrux_CVTPD2PI[] = {
1085 {I_CVTPD2PI, 2, {MMXREG,RM_XMM,0,0,0}, nasm_bytecodes+15972, IF_WILLAMETTE|IF_SSE2|IF_SO},
1086 ITEMPLATE_END
1089 static const struct itemplate instrux_CVTPD2PS[] = {
1090 {I_CVTPD2PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15978, IF_WILLAMETTE|IF_SSE2|IF_SO},
1091 ITEMPLATE_END
1094 static const struct itemplate instrux_CVTPH2PS[] = {
1095 {I_CVTPH2PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8996, IF_SSE5|IF_AMD|IF_SQ},
1096 ITEMPLATE_END
1099 static const struct itemplate instrux_CVTPI2PD[] = {
1100 {I_CVTPI2PD, 2, {XMMREG,RM_MMX,0,0,0}, nasm_bytecodes+15984, IF_WILLAMETTE|IF_SSE2|IF_SQ},
1101 ITEMPLATE_END
1104 static const struct itemplate instrux_CVTPI2PS[] = {
1105 {I_CVTPI2PS, 2, {XMMREG,RM_MMX,0,0,0}, nasm_bytecodes+15240, IF_KATMAI|IF_SSE|IF_MMX|IF_SQ},
1106 ITEMPLATE_END
1109 static const struct itemplate instrux_CVTPS2DQ[] = {
1110 {I_CVTPS2DQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15990, IF_WILLAMETTE|IF_SSE2|IF_SO},
1111 ITEMPLATE_END
1114 static const struct itemplate instrux_CVTPS2PD[] = {
1115 {I_CVTPS2PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15996, IF_WILLAMETTE|IF_SSE2|IF_SQ},
1116 ITEMPLATE_END
1119 static const struct itemplate instrux_CVTPS2PH[] = {
1120 {I_CVTPS2PH, 2, {RM_XMM,XMMREG,0,0,0}, nasm_bytecodes+9003, IF_SSE5|IF_AMD|IF_SQ},
1121 ITEMPLATE_END
1124 static const struct itemplate instrux_CVTPS2PI[] = {
1125 {I_CVTPS2PI, 2, {MMXREG,RM_XMM,0,0,0}, nasm_bytecodes+15246, IF_KATMAI|IF_SSE|IF_MMX|IF_SQ},
1126 ITEMPLATE_END
1129 static const struct itemplate instrux_CVTSD2SI[] = {
1130 {I_CVTSD2SI, 2, {REG32,XMMREG,0,0,0}, nasm_bytecodes+7639, IF_WILLAMETTE|IF_SSE2|IF_SQ|IF_AR1},
1131 {I_CVTSD2SI, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+7639, IF_WILLAMETTE|IF_SSE2|IF_SQ|IF_AR1},
1132 {I_CVTSD2SI, 2, {REG64,XMMREG,0,0,0}, nasm_bytecodes+7638, IF_X64|IF_SSE2|IF_SQ|IF_AR1},
1133 {I_CVTSD2SI, 2, {REG64,MEMORY,0,0,0}, nasm_bytecodes+7638, IF_X64|IF_SSE2|IF_SQ|IF_AR1},
1134 ITEMPLATE_END
1137 static const struct itemplate instrux_CVTSD2SS[] = {
1138 {I_CVTSD2SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16002, IF_WILLAMETTE|IF_SSE2|IF_SQ},
1139 ITEMPLATE_END
1142 static const struct itemplate instrux_CVTSI2SD[] = {
1143 {I_CVTSI2SD, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+7646, IF_WILLAMETTE|IF_SSE2|IF_SD|IF_AR1},
1144 {I_CVTSI2SD, 2, {XMMREG,RM_GPR|BITS32,0,0,0}, nasm_bytecodes+7646, IF_WILLAMETTE|IF_SSE2|IF_SD|IF_AR1},
1145 {I_CVTSI2SD, 2, {XMMREG,RM_GPR|BITS64,0,0,0}, nasm_bytecodes+7645, IF_X64|IF_SSE2|IF_SQ|IF_AR1},
1146 ITEMPLATE_END
1149 static const struct itemplate instrux_CVTSI2SS[] = {
1150 {I_CVTSI2SS, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+7380, IF_KATMAI|IF_SSE|IF_SD|IF_AR1},
1151 {I_CVTSI2SS, 2, {XMMREG,RM_GPR|BITS32,0,0,0}, nasm_bytecodes+7380, IF_KATMAI|IF_SSE|IF_SD|IF_AR1},
1152 {I_CVTSI2SS, 2, {XMMREG,RM_GPR|BITS64,0,0,0}, nasm_bytecodes+7379, IF_X64|IF_SSE|IF_SQ|IF_AR1},
1153 ITEMPLATE_END
1156 static const struct itemplate instrux_CVTSS2SD[] = {
1157 {I_CVTSS2SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16008, IF_WILLAMETTE|IF_SSE2|IF_SD},
1158 ITEMPLATE_END
1161 static const struct itemplate instrux_CVTSS2SI[] = {
1162 {I_CVTSS2SI, 2, {REG32,XMMREG,0,0,0}, nasm_bytecodes+7387, IF_KATMAI|IF_SSE|IF_SD|IF_AR1},
1163 {I_CVTSS2SI, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+7387, IF_KATMAI|IF_SSE|IF_SD|IF_AR1},
1164 {I_CVTSS2SI, 2, {REG64,XMMREG,0,0,0}, nasm_bytecodes+7386, IF_X64|IF_SSE|IF_SD|IF_AR1},
1165 {I_CVTSS2SI, 2, {REG64,MEMORY,0,0,0}, nasm_bytecodes+7386, IF_X64|IF_SSE|IF_SD|IF_AR1},
1166 ITEMPLATE_END
1169 static const struct itemplate instrux_CVTTPD2DQ[] = {
1170 {I_CVTTPD2DQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16020, IF_WILLAMETTE|IF_SSE2|IF_SO},
1171 ITEMPLATE_END
1174 static const struct itemplate instrux_CVTTPD2PI[] = {
1175 {I_CVTTPD2PI, 2, {MMXREG,RM_XMM,0,0,0}, nasm_bytecodes+16014, IF_WILLAMETTE|IF_SSE2|IF_SO},
1176 ITEMPLATE_END
1179 static const struct itemplate instrux_CVTTPS2DQ[] = {
1180 {I_CVTTPS2DQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16026, IF_WILLAMETTE|IF_SSE2|IF_SO},
1181 ITEMPLATE_END
1184 static const struct itemplate instrux_CVTTPS2PI[] = {
1185 {I_CVTTPS2PI, 2, {MMXREG,RM_XMM,0,0,0}, nasm_bytecodes+15252, IF_KATMAI|IF_SSE|IF_MMX|IF_SQ},
1186 ITEMPLATE_END
1189 static const struct itemplate instrux_CVTTSD2SI[] = {
1190 {I_CVTTSD2SI, 2, {REG32,XMMREG,0,0,0}, nasm_bytecodes+7653, IF_WILLAMETTE|IF_SSE2|IF_SQ|IF_AR1},
1191 {I_CVTTSD2SI, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+7653, IF_WILLAMETTE|IF_SSE2|IF_SQ|IF_AR1},
1192 {I_CVTTSD2SI, 2, {REG64,XMMREG,0,0,0}, nasm_bytecodes+7652, IF_X64|IF_SSE2|IF_SQ|IF_AR1},
1193 {I_CVTTSD2SI, 2, {REG64,MEMORY,0,0,0}, nasm_bytecodes+7652, IF_X64|IF_SSE2|IF_SQ|IF_AR1},
1194 ITEMPLATE_END
1197 static const struct itemplate instrux_CVTTSS2SI[] = {
1198 {I_CVTTSS2SI, 2, {REG32,RM_XMM,0,0,0}, nasm_bytecodes+7394, IF_KATMAI|IF_SSE|IF_SD|IF_AR1},
1199 {I_CVTTSS2SI, 2, {REG64,RM_XMM,0,0,0}, nasm_bytecodes+7393, IF_X64|IF_SSE|IF_SD|IF_AR1},
1200 ITEMPLATE_END
1203 static const struct itemplate instrux_CWD[] = {
1204 {I_CWD, 0, {0,0,0,0,0}, nasm_bytecodes+19461, IF_8086},
1205 ITEMPLATE_END
1208 static const struct itemplate instrux_CWDE[] = {
1209 {I_CWDE, 0, {0,0,0,0,0}, nasm_bytecodes+19465, IF_386},
1210 ITEMPLATE_END
1213 static const struct itemplate instrux_DAA[] = {
1214 {I_DAA, 0, {0,0,0,0,0}, nasm_bytecodes+20428, IF_8086|IF_NOLONG},
1215 ITEMPLATE_END
1218 static const struct itemplate instrux_DAS[] = {
1219 {I_DAS, 0, {0,0,0,0,0}, nasm_bytecodes+20431, IF_8086|IF_NOLONG},
1220 ITEMPLATE_END
1223 static const struct itemplate instrux_DB[] = {
1224 ITEMPLATE_END
1227 static const struct itemplate instrux_DD[] = {
1228 ITEMPLATE_END
1231 static const struct itemplate instrux_DEC[] = {
1232 {I_DEC, 1, {REG16,0,0,0,0}, nasm_bytecodes+19469, IF_8086|IF_NOLONG},
1233 {I_DEC, 1, {REG32,0,0,0,0}, nasm_bytecodes+19473, IF_386|IF_NOLONG},
1234 {I_DEC, 1, {RM_GPR|BITS8,0,0,0,0}, nasm_bytecodes+19477, IF_8086},
1235 {I_DEC, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17790, IF_8086},
1236 {I_DEC, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17795, IF_386},
1237 {I_DEC, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17800, IF_X64},
1238 ITEMPLATE_END
1241 static const struct itemplate instrux_DIV[] = {
1242 {I_DIV, 1, {RM_GPR|BITS8,0,0,0,0}, nasm_bytecodes+19481, IF_8086},
1243 {I_DIV, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17805, IF_8086},
1244 {I_DIV, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17810, IF_386},
1245 {I_DIV, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17815, IF_X64},
1246 ITEMPLATE_END
1249 static const struct itemplate instrux_DIVPD[] = {
1250 {I_DIVPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16032, IF_WILLAMETTE|IF_SSE2|IF_SO},
1251 ITEMPLATE_END
1254 static const struct itemplate instrux_DIVPS[] = {
1255 {I_DIVPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15258, IF_KATMAI|IF_SSE},
1256 ITEMPLATE_END
1259 static const struct itemplate instrux_DIVSD[] = {
1260 {I_DIVSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16038, IF_WILLAMETTE|IF_SSE2},
1261 ITEMPLATE_END
1264 static const struct itemplate instrux_DIVSS[] = {
1265 {I_DIVSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15264, IF_KATMAI|IF_SSE},
1266 ITEMPLATE_END
1269 static const struct itemplate instrux_DMINT[] = {
1270 {I_DMINT, 0, {0,0,0,0,0}, nasm_bytecodes+19485, IF_P6|IF_CYRIX},
1271 ITEMPLATE_END
1274 static const struct itemplate instrux_DO[] = {
1275 ITEMPLATE_END
1278 static const struct itemplate instrux_DPPD[] = {
1279 {I_DPPD, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5623, IF_SSE41},
1280 ITEMPLATE_END
1283 static const struct itemplate instrux_DPPS[] = {
1284 {I_DPPS, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5631, IF_SSE41},
1285 ITEMPLATE_END
1288 static const struct itemplate instrux_DQ[] = {
1289 ITEMPLATE_END
1292 static const struct itemplate instrux_DT[] = {
1293 ITEMPLATE_END
1296 static const struct itemplate instrux_DW[] = {
1297 ITEMPLATE_END
1300 static const struct itemplate instrux_DY[] = {
1301 ITEMPLATE_END
1304 static const struct itemplate instrux_EMMS[] = {
1305 {I_EMMS, 0, {0,0,0,0,0}, nasm_bytecodes+19489, IF_PENT|IF_MMX},
1306 ITEMPLATE_END
1309 static const struct itemplate instrux_ENTER[] = {
1310 {I_ENTER, 2, {IMMEDIATE,IMMEDIATE,0,0,0}, nasm_bytecodes+17820, IF_186},
1311 ITEMPLATE_END
1314 static const struct itemplate instrux_EQU[] = {
1315 {I_EQU, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+5445, IF_8086},
1316 {I_EQU, 2, {IMMEDIATE|COLON,IMMEDIATE,0,0,0}, nasm_bytecodes+5445, IF_8086},
1317 ITEMPLATE_END
1320 static const struct itemplate instrux_EXTRACTPS[] = {
1321 {I_EXTRACTPS, 3, {RM_GPR|BITS32,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+1, IF_SSE41},
1322 {I_EXTRACTPS, 3, {REG64,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+0, IF_SSE41|IF_X64},
1323 ITEMPLATE_END
1326 static const struct itemplate instrux_EXTRQ[] = {
1327 {I_EXTRQ, 3, {XMMREG,IMMEDIATE,IMMEDIATE,0,0}, nasm_bytecodes+5591, IF_SSE4A|IF_AMD},
1328 {I_EXTRQ, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+16272, IF_SSE4A|IF_AMD},
1329 ITEMPLATE_END
1332 static const struct itemplate instrux_F2XM1[] = {
1333 {I_F2XM1, 0, {0,0,0,0,0}, nasm_bytecodes+19493, IF_8086|IF_FPU},
1334 ITEMPLATE_END
1337 static const struct itemplate instrux_FABS[] = {
1338 {I_FABS, 0, {0,0,0,0,0}, nasm_bytecodes+19497, IF_8086|IF_FPU},
1339 ITEMPLATE_END
1342 static const struct itemplate instrux_FADD[] = {
1343 {I_FADD, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+19501, IF_8086|IF_FPU},
1344 {I_FADD, 1, {MEMORY|BITS64,0,0,0,0}, nasm_bytecodes+19505, IF_8086|IF_FPU},
1345 {I_FADD, 1, {FPUREG|TO,0,0,0,0}, nasm_bytecodes+17825, IF_8086|IF_FPU},
1346 {I_FADD, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+17830, IF_8086|IF_FPU},
1347 {I_FADD, 2, {FPUREG,FPU0,0,0,0}, nasm_bytecodes+17825, IF_8086|IF_FPU},
1348 {I_FADD, 2, {FPU0,FPUREG,0,0,0}, nasm_bytecodes+17835, IF_8086|IF_FPU},
1349 {I_FADD, 0, {0,0,0,0,0}, nasm_bytecodes+19509, IF_8086|IF_FPU},
1350 ITEMPLATE_END
1353 static const struct itemplate instrux_FADDP[] = {
1354 {I_FADDP, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+17840, IF_8086|IF_FPU},
1355 {I_FADDP, 2, {FPUREG,FPU0,0,0,0}, nasm_bytecodes+17840, IF_8086|IF_FPU},
1356 {I_FADDP, 0, {0,0,0,0,0}, nasm_bytecodes+19509, IF_8086|IF_FPU},
1357 ITEMPLATE_END
1360 static const struct itemplate instrux_FBLD[] = {
1361 {I_FBLD, 1, {MEMORY|BITS80,0,0,0,0}, nasm_bytecodes+19513, IF_8086|IF_FPU},
1362 {I_FBLD, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+19513, IF_8086|IF_FPU},
1363 ITEMPLATE_END
1366 static const struct itemplate instrux_FBSTP[] = {
1367 {I_FBSTP, 1, {MEMORY|BITS80,0,0,0,0}, nasm_bytecodes+19517, IF_8086|IF_FPU},
1368 {I_FBSTP, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+19517, IF_8086|IF_FPU},
1369 ITEMPLATE_END
1372 static const struct itemplate instrux_FCHS[] = {
1373 {I_FCHS, 0, {0,0,0,0,0}, nasm_bytecodes+19521, IF_8086|IF_FPU},
1374 ITEMPLATE_END
1377 static const struct itemplate instrux_FCLEX[] = {
1378 {I_FCLEX, 0, {0,0,0,0,0}, nasm_bytecodes+17845, IF_8086|IF_FPU},
1379 ITEMPLATE_END
1382 static const struct itemplate instrux_FCMOVB[] = {
1383 {I_FCMOVB, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+17850, IF_P6|IF_FPU},
1384 {I_FCMOVB, 2, {FPU0,FPUREG,0,0,0}, nasm_bytecodes+17855, IF_P6|IF_FPU},
1385 {I_FCMOVB, 0, {0,0,0,0,0}, nasm_bytecodes+19525, IF_P6|IF_FPU},
1386 ITEMPLATE_END
1389 static const struct itemplate instrux_FCMOVBE[] = {
1390 {I_FCMOVBE, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+17860, IF_P6|IF_FPU},
1391 {I_FCMOVBE, 2, {FPU0,FPUREG,0,0,0}, nasm_bytecodes+17865, IF_P6|IF_FPU},
1392 {I_FCMOVBE, 0, {0,0,0,0,0}, nasm_bytecodes+19529, IF_P6|IF_FPU},
1393 ITEMPLATE_END
1396 static const struct itemplate instrux_FCMOVE[] = {
1397 {I_FCMOVE, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+17870, IF_P6|IF_FPU},
1398 {I_FCMOVE, 2, {FPU0,FPUREG,0,0,0}, nasm_bytecodes+17875, IF_P6|IF_FPU},
1399 {I_FCMOVE, 0, {0,0,0,0,0}, nasm_bytecodes+19533, IF_P6|IF_FPU},
1400 ITEMPLATE_END
1403 static const struct itemplate instrux_FCMOVNB[] = {
1404 {I_FCMOVNB, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+17880, IF_P6|IF_FPU},
1405 {I_FCMOVNB, 2, {FPU0,FPUREG,0,0,0}, nasm_bytecodes+17885, IF_P6|IF_FPU},
1406 {I_FCMOVNB, 0, {0,0,0,0,0}, nasm_bytecodes+19537, IF_P6|IF_FPU},
1407 ITEMPLATE_END
1410 static const struct itemplate instrux_FCMOVNBE[] = {
1411 {I_FCMOVNBE, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+17890, IF_P6|IF_FPU},
1412 {I_FCMOVNBE, 2, {FPU0,FPUREG,0,0,0}, nasm_bytecodes+17895, IF_P6|IF_FPU},
1413 {I_FCMOVNBE, 0, {0,0,0,0,0}, nasm_bytecodes+19541, IF_P6|IF_FPU},
1414 ITEMPLATE_END
1417 static const struct itemplate instrux_FCMOVNE[] = {
1418 {I_FCMOVNE, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+17900, IF_P6|IF_FPU},
1419 {I_FCMOVNE, 2, {FPU0,FPUREG,0,0,0}, nasm_bytecodes+17905, IF_P6|IF_FPU},
1420 {I_FCMOVNE, 0, {0,0,0,0,0}, nasm_bytecodes+19545, IF_P6|IF_FPU},
1421 ITEMPLATE_END
1424 static const struct itemplate instrux_FCMOVNU[] = {
1425 {I_FCMOVNU, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+17910, IF_P6|IF_FPU},
1426 {I_FCMOVNU, 2, {FPU0,FPUREG,0,0,0}, nasm_bytecodes+17915, IF_P6|IF_FPU},
1427 {I_FCMOVNU, 0, {0,0,0,0,0}, nasm_bytecodes+19549, IF_P6|IF_FPU},
1428 ITEMPLATE_END
1431 static const struct itemplate instrux_FCMOVU[] = {
1432 {I_FCMOVU, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+17920, IF_P6|IF_FPU},
1433 {I_FCMOVU, 2, {FPU0,FPUREG,0,0,0}, nasm_bytecodes+17925, IF_P6|IF_FPU},
1434 {I_FCMOVU, 0, {0,0,0,0,0}, nasm_bytecodes+19553, IF_P6|IF_FPU},
1435 ITEMPLATE_END
1438 static const struct itemplate instrux_FCOM[] = {
1439 {I_FCOM, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+19557, IF_8086|IF_FPU},
1440 {I_FCOM, 1, {MEMORY|BITS64,0,0,0,0}, nasm_bytecodes+19561, IF_8086|IF_FPU},
1441 {I_FCOM, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+17930, IF_8086|IF_FPU},
1442 {I_FCOM, 2, {FPU0,FPUREG,0,0,0}, nasm_bytecodes+17935, IF_8086|IF_FPU},
1443 {I_FCOM, 0, {0,0,0,0,0}, nasm_bytecodes+19565, IF_8086|IF_FPU},
1444 ITEMPLATE_END
1447 static const struct itemplate instrux_FCOMI[] = {
1448 {I_FCOMI, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+17940, IF_P6|IF_FPU},
1449 {I_FCOMI, 2, {FPU0,FPUREG,0,0,0}, nasm_bytecodes+17945, IF_P6|IF_FPU},
1450 {I_FCOMI, 0, {0,0,0,0,0}, nasm_bytecodes+19569, IF_P6|IF_FPU},
1451 ITEMPLATE_END
1454 static const struct itemplate instrux_FCOMIP[] = {
1455 {I_FCOMIP, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+17950, IF_P6|IF_FPU},
1456 {I_FCOMIP, 2, {FPU0,FPUREG,0,0,0}, nasm_bytecodes+17955, IF_P6|IF_FPU},
1457 {I_FCOMIP, 0, {0,0,0,0,0}, nasm_bytecodes+19573, IF_P6|IF_FPU},
1458 ITEMPLATE_END
1461 static const struct itemplate instrux_FCOMP[] = {
1462 {I_FCOMP, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+19577, IF_8086|IF_FPU},
1463 {I_FCOMP, 1, {MEMORY|BITS64,0,0,0,0}, nasm_bytecodes+19581, IF_8086|IF_FPU},
1464 {I_FCOMP, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+17960, IF_8086|IF_FPU},
1465 {I_FCOMP, 2, {FPU0,FPUREG,0,0,0}, nasm_bytecodes+17965, IF_8086|IF_FPU},
1466 {I_FCOMP, 0, {0,0,0,0,0}, nasm_bytecodes+19585, IF_8086|IF_FPU},
1467 ITEMPLATE_END
1470 static const struct itemplate instrux_FCOMPP[] = {
1471 {I_FCOMPP, 0, {0,0,0,0,0}, nasm_bytecodes+19589, IF_8086|IF_FPU},
1472 ITEMPLATE_END
1475 static const struct itemplate instrux_FCOS[] = {
1476 {I_FCOS, 0, {0,0,0,0,0}, nasm_bytecodes+19593, IF_386|IF_FPU},
1477 ITEMPLATE_END
1480 static const struct itemplate instrux_FDECSTP[] = {
1481 {I_FDECSTP, 0, {0,0,0,0,0}, nasm_bytecodes+19597, IF_8086|IF_FPU},
1482 ITEMPLATE_END
1485 static const struct itemplate instrux_FDISI[] = {
1486 {I_FDISI, 0, {0,0,0,0,0}, nasm_bytecodes+17970, IF_8086|IF_FPU},
1487 ITEMPLATE_END
1490 static const struct itemplate instrux_FDIV[] = {
1491 {I_FDIV, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+19601, IF_8086|IF_FPU},
1492 {I_FDIV, 1, {MEMORY|BITS64,0,0,0,0}, nasm_bytecodes+19605, IF_8086|IF_FPU},
1493 {I_FDIV, 1, {FPUREG|TO,0,0,0,0}, nasm_bytecodes+17975, IF_8086|IF_FPU},
1494 {I_FDIV, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+17980, IF_8086|IF_FPU},
1495 {I_FDIV, 2, {FPUREG,FPU0,0,0,0}, nasm_bytecodes+17975, IF_8086|IF_FPU},
1496 {I_FDIV, 2, {FPU0,FPUREG,0,0,0}, nasm_bytecodes+17985, IF_8086|IF_FPU},
1497 {I_FDIV, 0, {0,0,0,0,0}, nasm_bytecodes+19609, IF_8086|IF_FPU},
1498 ITEMPLATE_END
1501 static const struct itemplate instrux_FDIVP[] = {
1502 {I_FDIVP, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+17990, IF_8086|IF_FPU},
1503 {I_FDIVP, 2, {FPUREG,FPU0,0,0,0}, nasm_bytecodes+17990, IF_8086|IF_FPU},
1504 {I_FDIVP, 0, {0,0,0,0,0}, nasm_bytecodes+19609, IF_8086|IF_FPU},
1505 ITEMPLATE_END
1508 static const struct itemplate instrux_FDIVR[] = {
1509 {I_FDIVR, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+19613, IF_8086|IF_FPU},
1510 {I_FDIVR, 1, {MEMORY|BITS64,0,0,0,0}, nasm_bytecodes+19617, IF_8086|IF_FPU},
1511 {I_FDIVR, 1, {FPUREG|TO,0,0,0,0}, nasm_bytecodes+17995, IF_8086|IF_FPU},
1512 {I_FDIVR, 2, {FPUREG,FPU0,0,0,0}, nasm_bytecodes+17995, IF_8086|IF_FPU},
1513 {I_FDIVR, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+18000, IF_8086|IF_FPU},
1514 {I_FDIVR, 2, {FPU0,FPUREG,0,0,0}, nasm_bytecodes+18005, IF_8086|IF_FPU},
1515 {I_FDIVR, 0, {0,0,0,0,0}, nasm_bytecodes+19621, IF_8086|IF_FPU},
1516 ITEMPLATE_END
1519 static const struct itemplate instrux_FDIVRP[] = {
1520 {I_FDIVRP, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+18010, IF_8086|IF_FPU},
1521 {I_FDIVRP, 2, {FPUREG,FPU0,0,0,0}, nasm_bytecodes+18010, IF_8086|IF_FPU},
1522 {I_FDIVRP, 0, {0,0,0,0,0}, nasm_bytecodes+19621, IF_8086|IF_FPU},
1523 ITEMPLATE_END
1526 static const struct itemplate instrux_FEMMS[] = {
1527 {I_FEMMS, 0, {0,0,0,0,0}, nasm_bytecodes+19625, IF_PENT|IF_3DNOW},
1528 ITEMPLATE_END
1531 static const struct itemplate instrux_FENI[] = {
1532 {I_FENI, 0, {0,0,0,0,0}, nasm_bytecodes+18015, IF_8086|IF_FPU},
1533 ITEMPLATE_END
1536 static const struct itemplate instrux_FFREE[] = {
1537 {I_FFREE, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+18020, IF_8086|IF_FPU},
1538 {I_FFREE, 0, {0,0,0,0,0}, nasm_bytecodes+19629, IF_8086|IF_FPU},
1539 ITEMPLATE_END
1542 static const struct itemplate instrux_FFREEP[] = {
1543 {I_FFREEP, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+18025, IF_286|IF_FPU|IF_UNDOC},
1544 {I_FFREEP, 0, {0,0,0,0,0}, nasm_bytecodes+19633, IF_286|IF_FPU|IF_UNDOC},
1545 ITEMPLATE_END
1548 static const struct itemplate instrux_FIADD[] = {
1549 {I_FIADD, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+19637, IF_8086|IF_FPU},
1550 {I_FIADD, 1, {MEMORY|BITS16,0,0,0,0}, nasm_bytecodes+19641, IF_8086|IF_FPU},
1551 ITEMPLATE_END
1554 static const struct itemplate instrux_FICOM[] = {
1555 {I_FICOM, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+19645, IF_8086|IF_FPU},
1556 {I_FICOM, 1, {MEMORY|BITS16,0,0,0,0}, nasm_bytecodes+19649, IF_8086|IF_FPU},
1557 ITEMPLATE_END
1560 static const struct itemplate instrux_FICOMP[] = {
1561 {I_FICOMP, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+19653, IF_8086|IF_FPU},
1562 {I_FICOMP, 1, {MEMORY|BITS16,0,0,0,0}, nasm_bytecodes+19657, IF_8086|IF_FPU},
1563 ITEMPLATE_END
1566 static const struct itemplate instrux_FIDIV[] = {
1567 {I_FIDIV, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+19661, IF_8086|IF_FPU},
1568 {I_FIDIV, 1, {MEMORY|BITS16,0,0,0,0}, nasm_bytecodes+19665, IF_8086|IF_FPU},
1569 ITEMPLATE_END
1572 static const struct itemplate instrux_FIDIVR[] = {
1573 {I_FIDIVR, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+19669, IF_8086|IF_FPU},
1574 {I_FIDIVR, 1, {MEMORY|BITS16,0,0,0,0}, nasm_bytecodes+19673, IF_8086|IF_FPU},
1575 ITEMPLATE_END
1578 static const struct itemplate instrux_FILD[] = {
1579 {I_FILD, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+19677, IF_8086|IF_FPU},
1580 {I_FILD, 1, {MEMORY|BITS16,0,0,0,0}, nasm_bytecodes+19681, IF_8086|IF_FPU},
1581 {I_FILD, 1, {MEMORY|BITS64,0,0,0,0}, nasm_bytecodes+19685, IF_8086|IF_FPU},
1582 ITEMPLATE_END
1585 static const struct itemplate instrux_FIMUL[] = {
1586 {I_FIMUL, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+19689, IF_8086|IF_FPU},
1587 {I_FIMUL, 1, {MEMORY|BITS16,0,0,0,0}, nasm_bytecodes+19693, IF_8086|IF_FPU},
1588 ITEMPLATE_END
1591 static const struct itemplate instrux_FINCSTP[] = {
1592 {I_FINCSTP, 0, {0,0,0,0,0}, nasm_bytecodes+19697, IF_8086|IF_FPU},
1593 ITEMPLATE_END
1596 static const struct itemplate instrux_FINIT[] = {
1597 {I_FINIT, 0, {0,0,0,0,0}, nasm_bytecodes+18030, IF_8086|IF_FPU},
1598 ITEMPLATE_END
1601 static const struct itemplate instrux_FIST[] = {
1602 {I_FIST, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+19701, IF_8086|IF_FPU},
1603 {I_FIST, 1, {MEMORY|BITS16,0,0,0,0}, nasm_bytecodes+19705, IF_8086|IF_FPU},
1604 ITEMPLATE_END
1607 static const struct itemplate instrux_FISTP[] = {
1608 {I_FISTP, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+19709, IF_8086|IF_FPU},
1609 {I_FISTP, 1, {MEMORY|BITS16,0,0,0,0}, nasm_bytecodes+19713, IF_8086|IF_FPU},
1610 {I_FISTP, 1, {MEMORY|BITS64,0,0,0,0}, nasm_bytecodes+19717, IF_8086|IF_FPU},
1611 ITEMPLATE_END
1614 static const struct itemplate instrux_FISTTP[] = {
1615 {I_FISTTP, 1, {MEMORY|BITS16,0,0,0,0}, nasm_bytecodes+19721, IF_PRESCOTT|IF_FPU},
1616 {I_FISTTP, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+19725, IF_PRESCOTT|IF_FPU},
1617 {I_FISTTP, 1, {MEMORY|BITS64,0,0,0,0}, nasm_bytecodes+19729, IF_PRESCOTT|IF_FPU},
1618 ITEMPLATE_END
1621 static const struct itemplate instrux_FISUB[] = {
1622 {I_FISUB, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+19733, IF_8086|IF_FPU},
1623 {I_FISUB, 1, {MEMORY|BITS16,0,0,0,0}, nasm_bytecodes+19737, IF_8086|IF_FPU},
1624 ITEMPLATE_END
1627 static const struct itemplate instrux_FISUBR[] = {
1628 {I_FISUBR, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+19741, IF_8086|IF_FPU},
1629 {I_FISUBR, 1, {MEMORY|BITS16,0,0,0,0}, nasm_bytecodes+19745, IF_8086|IF_FPU},
1630 ITEMPLATE_END
1633 static const struct itemplate instrux_FLD[] = {
1634 {I_FLD, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+19749, IF_8086|IF_FPU},
1635 {I_FLD, 1, {MEMORY|BITS64,0,0,0,0}, nasm_bytecodes+19753, IF_8086|IF_FPU},
1636 {I_FLD, 1, {MEMORY|BITS80,0,0,0,0}, nasm_bytecodes+19757, IF_8086|IF_FPU},
1637 {I_FLD, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+18035, IF_8086|IF_FPU},
1638 {I_FLD, 0, {0,0,0,0,0}, nasm_bytecodes+19761, IF_8086|IF_FPU},
1639 ITEMPLATE_END
1642 static const struct itemplate instrux_FLD1[] = {
1643 {I_FLD1, 0, {0,0,0,0,0}, nasm_bytecodes+19765, IF_8086|IF_FPU},
1644 ITEMPLATE_END
1647 static const struct itemplate instrux_FLDCW[] = {
1648 {I_FLDCW, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+19769, IF_8086|IF_FPU|IF_SW},
1649 ITEMPLATE_END
1652 static const struct itemplate instrux_FLDENV[] = {
1653 {I_FLDENV, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+19773, IF_8086|IF_FPU},
1654 ITEMPLATE_END
1657 static const struct itemplate instrux_FLDL2E[] = {
1658 {I_FLDL2E, 0, {0,0,0,0,0}, nasm_bytecodes+19777, IF_8086|IF_FPU},
1659 ITEMPLATE_END
1662 static const struct itemplate instrux_FLDL2T[] = {
1663 {I_FLDL2T, 0, {0,0,0,0,0}, nasm_bytecodes+19781, IF_8086|IF_FPU},
1664 ITEMPLATE_END
1667 static const struct itemplate instrux_FLDLG2[] = {
1668 {I_FLDLG2, 0, {0,0,0,0,0}, nasm_bytecodes+19785, IF_8086|IF_FPU},
1669 ITEMPLATE_END
1672 static const struct itemplate instrux_FLDLN2[] = {
1673 {I_FLDLN2, 0, {0,0,0,0,0}, nasm_bytecodes+19789, IF_8086|IF_FPU},
1674 ITEMPLATE_END
1677 static const struct itemplate instrux_FLDPI[] = {
1678 {I_FLDPI, 0, {0,0,0,0,0}, nasm_bytecodes+19793, IF_8086|IF_FPU},
1679 ITEMPLATE_END
1682 static const struct itemplate instrux_FLDZ[] = {
1683 {I_FLDZ, 0, {0,0,0,0,0}, nasm_bytecodes+19797, IF_8086|IF_FPU},
1684 ITEMPLATE_END
1687 static const struct itemplate instrux_FMADDPD[] = {
1688 {I_FMADDPD, 4, {XMMREG,SAME_AS|0,XMMREG,RM_XMM,0}, nasm_bytecodes+8184, IF_SSE5|IF_AMD},
1689 {I_FMADDPD, 4, {XMMREG,SAME_AS|0,RM_XMM,XMMREG,0}, nasm_bytecodes+8191, IF_SSE5|IF_AMD},
1690 {I_FMADDPD, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8198, IF_SSE5|IF_AMD},
1691 {I_FMADDPD, 4, {XMMREG,RM_XMM,XMMREG,SAME_AS|0,0}, nasm_bytecodes+8205, IF_SSE5|IF_AMD},
1692 ITEMPLATE_END
1695 static const struct itemplate instrux_FMADDPS[] = {
1696 {I_FMADDPS, 4, {XMMREG,SAME_AS|0,XMMREG,RM_XMM,0}, nasm_bytecodes+8156, IF_SSE5|IF_AMD},
1697 {I_FMADDPS, 4, {XMMREG,SAME_AS|0,RM_XMM,XMMREG,0}, nasm_bytecodes+8163, IF_SSE5|IF_AMD},
1698 {I_FMADDPS, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8170, IF_SSE5|IF_AMD},
1699 {I_FMADDPS, 4, {XMMREG,RM_XMM,XMMREG,SAME_AS|0,0}, nasm_bytecodes+8177, IF_SSE5|IF_AMD},
1700 ITEMPLATE_END
1703 static const struct itemplate instrux_FMADDSD[] = {
1704 {I_FMADDSD, 4, {XMMREG,SAME_AS|0,XMMREG,RM_XMM,0}, nasm_bytecodes+8240, IF_SSE5|IF_AMD},
1705 {I_FMADDSD, 4, {XMMREG,SAME_AS|0,RM_XMM,XMMREG,0}, nasm_bytecodes+8247, IF_SSE5|IF_AMD},
1706 {I_FMADDSD, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8254, IF_SSE5|IF_AMD},
1707 {I_FMADDSD, 4, {XMMREG,RM_XMM,XMMREG,SAME_AS|0,0}, nasm_bytecodes+8261, IF_SSE5|IF_AMD},
1708 ITEMPLATE_END
1711 static const struct itemplate instrux_FMADDSS[] = {
1712 {I_FMADDSS, 4, {XMMREG,SAME_AS|0,XMMREG,RM_XMM,0}, nasm_bytecodes+8212, IF_SSE5|IF_AMD},
1713 {I_FMADDSS, 4, {XMMREG,SAME_AS|0,RM_XMM,XMMREG,0}, nasm_bytecodes+8219, IF_SSE5|IF_AMD},
1714 {I_FMADDSS, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8226, IF_SSE5|IF_AMD},
1715 {I_FMADDSS, 4, {XMMREG,RM_XMM,XMMREG,SAME_AS|0,0}, nasm_bytecodes+8233, IF_SSE5|IF_AMD},
1716 ITEMPLATE_END
1719 static const struct itemplate instrux_FMSUBPD[] = {
1720 {I_FMSUBPD, 4, {XMMREG,SAME_AS|0,XMMREG,RM_XMM,0}, nasm_bytecodes+8296, IF_SSE5|IF_AMD},
1721 {I_FMSUBPD, 4, {XMMREG,SAME_AS|0,RM_XMM,XMMREG,0}, nasm_bytecodes+8303, IF_SSE5|IF_AMD},
1722 {I_FMSUBPD, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8310, IF_SSE5|IF_AMD},
1723 {I_FMSUBPD, 4, {XMMREG,RM_XMM,XMMREG,SAME_AS|0,0}, nasm_bytecodes+8317, IF_SSE5|IF_AMD},
1724 ITEMPLATE_END
1727 static const struct itemplate instrux_FMSUBPS[] = {
1728 {I_FMSUBPS, 4, {XMMREG,SAME_AS|0,XMMREG,RM_XMM,0}, nasm_bytecodes+8268, IF_SSE5|IF_AMD},
1729 {I_FMSUBPS, 4, {XMMREG,SAME_AS|0,RM_XMM,XMMREG,0}, nasm_bytecodes+8275, IF_SSE5|IF_AMD},
1730 {I_FMSUBPS, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8282, IF_SSE5|IF_AMD},
1731 {I_FMSUBPS, 4, {XMMREG,RM_XMM,XMMREG,SAME_AS|0,0}, nasm_bytecodes+8289, IF_SSE5|IF_AMD},
1732 ITEMPLATE_END
1735 static const struct itemplate instrux_FMSUBSD[] = {
1736 {I_FMSUBSD, 4, {XMMREG,SAME_AS|0,XMMREG,RM_XMM,0}, nasm_bytecodes+8352, IF_SSE5|IF_AMD},
1737 {I_FMSUBSD, 4, {XMMREG,SAME_AS|0,RM_XMM,XMMREG,0}, nasm_bytecodes+8359, IF_SSE5|IF_AMD},
1738 {I_FMSUBSD, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8366, IF_SSE5|IF_AMD},
1739 {I_FMSUBSD, 4, {XMMREG,RM_XMM,XMMREG,SAME_AS|0,0}, nasm_bytecodes+8373, IF_SSE5|IF_AMD},
1740 ITEMPLATE_END
1743 static const struct itemplate instrux_FMSUBSS[] = {
1744 {I_FMSUBSS, 4, {XMMREG,SAME_AS|0,XMMREG,RM_XMM,0}, nasm_bytecodes+8324, IF_SSE5|IF_AMD},
1745 {I_FMSUBSS, 4, {XMMREG,SAME_AS|0,RM_XMM,XMMREG,0}, nasm_bytecodes+8331, IF_SSE5|IF_AMD},
1746 {I_FMSUBSS, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8338, IF_SSE5|IF_AMD},
1747 {I_FMSUBSS, 4, {XMMREG,RM_XMM,XMMREG,SAME_AS|0,0}, nasm_bytecodes+8345, IF_SSE5|IF_AMD},
1748 ITEMPLATE_END
1751 static const struct itemplate instrux_FMUL[] = {
1752 {I_FMUL, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+19801, IF_8086|IF_FPU},
1753 {I_FMUL, 1, {MEMORY|BITS64,0,0,0,0}, nasm_bytecodes+19805, IF_8086|IF_FPU},
1754 {I_FMUL, 1, {FPUREG|TO,0,0,0,0}, nasm_bytecodes+18040, IF_8086|IF_FPU},
1755 {I_FMUL, 2, {FPUREG,FPU0,0,0,0}, nasm_bytecodes+18040, IF_8086|IF_FPU},
1756 {I_FMUL, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+18045, IF_8086|IF_FPU},
1757 {I_FMUL, 2, {FPU0,FPUREG,0,0,0}, nasm_bytecodes+18050, IF_8086|IF_FPU},
1758 {I_FMUL, 0, {0,0,0,0,0}, nasm_bytecodes+19809, IF_8086|IF_FPU},
1759 ITEMPLATE_END
1762 static const struct itemplate instrux_FMULP[] = {
1763 {I_FMULP, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+18055, IF_8086|IF_FPU},
1764 {I_FMULP, 2, {FPUREG,FPU0,0,0,0}, nasm_bytecodes+18055, IF_8086|IF_FPU},
1765 {I_FMULP, 0, {0,0,0,0,0}, nasm_bytecodes+19809, IF_8086|IF_FPU},
1766 ITEMPLATE_END
1769 static const struct itemplate instrux_FNCLEX[] = {
1770 {I_FNCLEX, 0, {0,0,0,0,0}, nasm_bytecodes+17846, IF_8086|IF_FPU},
1771 ITEMPLATE_END
1774 static const struct itemplate instrux_FNDISI[] = {
1775 {I_FNDISI, 0, {0,0,0,0,0}, nasm_bytecodes+17971, IF_8086|IF_FPU},
1776 ITEMPLATE_END
1779 static const struct itemplate instrux_FNENI[] = {
1780 {I_FNENI, 0, {0,0,0,0,0}, nasm_bytecodes+18016, IF_8086|IF_FPU},
1781 ITEMPLATE_END
1784 static const struct itemplate instrux_FNINIT[] = {
1785 {I_FNINIT, 0, {0,0,0,0,0}, nasm_bytecodes+18031, IF_8086|IF_FPU},
1786 ITEMPLATE_END
1789 static const struct itemplate instrux_FNMADDPD[] = {
1790 {I_FNMADDPD, 4, {XMMREG,SAME_AS|0,XMMREG,RM_XMM,0}, nasm_bytecodes+8408, IF_SSE5|IF_AMD},
1791 {I_FNMADDPD, 4, {XMMREG,SAME_AS|0,RM_XMM,XMMREG,0}, nasm_bytecodes+8415, IF_SSE5|IF_AMD},
1792 {I_FNMADDPD, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8422, IF_SSE5|IF_AMD},
1793 {I_FNMADDPD, 4, {XMMREG,RM_XMM,XMMREG,SAME_AS|0,0}, nasm_bytecodes+8429, IF_SSE5|IF_AMD},
1794 ITEMPLATE_END
1797 static const struct itemplate instrux_FNMADDPS[] = {
1798 {I_FNMADDPS, 4, {XMMREG,SAME_AS|0,XMMREG,RM_XMM,0}, nasm_bytecodes+8380, IF_SSE5|IF_AMD},
1799 {I_FNMADDPS, 4, {XMMREG,SAME_AS|0,RM_XMM,XMMREG,0}, nasm_bytecodes+8387, IF_SSE5|IF_AMD},
1800 {I_FNMADDPS, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8394, IF_SSE5|IF_AMD},
1801 {I_FNMADDPS, 4, {XMMREG,RM_XMM,XMMREG,SAME_AS|0,0}, nasm_bytecodes+8401, IF_SSE5|IF_AMD},
1802 ITEMPLATE_END
1805 static const struct itemplate instrux_FNMADDSD[] = {
1806 {I_FNMADDSD, 4, {XMMREG,SAME_AS|0,XMMREG,RM_XMM,0}, nasm_bytecodes+8464, IF_SSE5|IF_AMD},
1807 {I_FNMADDSD, 4, {XMMREG,SAME_AS|0,RM_XMM,XMMREG,0}, nasm_bytecodes+8471, IF_SSE5|IF_AMD},
1808 {I_FNMADDSD, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8478, IF_SSE5|IF_AMD},
1809 {I_FNMADDSD, 4, {XMMREG,RM_XMM,XMMREG,SAME_AS|0,0}, nasm_bytecodes+8485, IF_SSE5|IF_AMD},
1810 ITEMPLATE_END
1813 static const struct itemplate instrux_FNMADDSS[] = {
1814 {I_FNMADDSS, 4, {XMMREG,SAME_AS|0,XMMREG,RM_XMM,0}, nasm_bytecodes+8436, IF_SSE5|IF_AMD},
1815 {I_FNMADDSS, 4, {XMMREG,SAME_AS|0,RM_XMM,XMMREG,0}, nasm_bytecodes+8443, IF_SSE5|IF_AMD},
1816 {I_FNMADDSS, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8450, IF_SSE5|IF_AMD},
1817 {I_FNMADDSS, 4, {XMMREG,RM_XMM,XMMREG,SAME_AS|0,0}, nasm_bytecodes+8457, IF_SSE5|IF_AMD},
1818 ITEMPLATE_END
1821 static const struct itemplate instrux_FNMSUBPD[] = {
1822 {I_FNMSUBPD, 4, {XMMREG,SAME_AS|0,XMMREG,RM_XMM,0}, nasm_bytecodes+8520, IF_SSE5|IF_AMD},
1823 {I_FNMSUBPD, 4, {XMMREG,SAME_AS|0,RM_XMM,XMMREG,0}, nasm_bytecodes+8527, IF_SSE5|IF_AMD},
1824 {I_FNMSUBPD, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8534, IF_SSE5|IF_AMD},
1825 {I_FNMSUBPD, 4, {XMMREG,RM_XMM,XMMREG,SAME_AS|0,0}, nasm_bytecodes+8541, IF_SSE5|IF_AMD},
1826 ITEMPLATE_END
1829 static const struct itemplate instrux_FNMSUBPS[] = {
1830 {I_FNMSUBPS, 4, {XMMREG,SAME_AS|0,XMMREG,RM_XMM,0}, nasm_bytecodes+8492, IF_SSE5|IF_AMD},
1831 {I_FNMSUBPS, 4, {XMMREG,SAME_AS|0,RM_XMM,XMMREG,0}, nasm_bytecodes+8499, IF_SSE5|IF_AMD},
1832 {I_FNMSUBPS, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8506, IF_SSE5|IF_AMD},
1833 {I_FNMSUBPS, 4, {XMMREG,RM_XMM,XMMREG,SAME_AS|0,0}, nasm_bytecodes+8513, IF_SSE5|IF_AMD},
1834 ITEMPLATE_END
1837 static const struct itemplate instrux_FNMSUBSD[] = {
1838 {I_FNMSUBSD, 4, {XMMREG,SAME_AS|0,XMMREG,RM_XMM,0}, nasm_bytecodes+8576, IF_SSE5|IF_AMD},
1839 {I_FNMSUBSD, 4, {XMMREG,SAME_AS|0,RM_XMM,XMMREG,0}, nasm_bytecodes+8583, IF_SSE5|IF_AMD},
1840 {I_FNMSUBSD, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8590, IF_SSE5|IF_AMD},
1841 {I_FNMSUBSD, 4, {XMMREG,RM_XMM,XMMREG,SAME_AS|0,0}, nasm_bytecodes+8597, IF_SSE5|IF_AMD},
1842 ITEMPLATE_END
1845 static const struct itemplate instrux_FNMSUBSS[] = {
1846 {I_FNMSUBSS, 4, {XMMREG,SAME_AS|0,XMMREG,RM_XMM,0}, nasm_bytecodes+8548, IF_SSE5|IF_AMD},
1847 {I_FNMSUBSS, 4, {XMMREG,SAME_AS|0,RM_XMM,XMMREG,0}, nasm_bytecodes+8555, IF_SSE5|IF_AMD},
1848 {I_FNMSUBSS, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8562, IF_SSE5|IF_AMD},
1849 {I_FNMSUBSS, 4, {XMMREG,RM_XMM,XMMREG,SAME_AS|0,0}, nasm_bytecodes+8569, IF_SSE5|IF_AMD},
1850 ITEMPLATE_END
1853 static const struct itemplate instrux_FNOP[] = {
1854 {I_FNOP, 0, {0,0,0,0,0}, nasm_bytecodes+19813, IF_8086|IF_FPU},
1855 ITEMPLATE_END
1858 static const struct itemplate instrux_FNSAVE[] = {
1859 {I_FNSAVE, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+18061, IF_8086|IF_FPU},
1860 ITEMPLATE_END
1863 static const struct itemplate instrux_FNSTCW[] = {
1864 {I_FNSTCW, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+18071, IF_8086|IF_FPU|IF_SW},
1865 ITEMPLATE_END
1868 static const struct itemplate instrux_FNSTENV[] = {
1869 {I_FNSTENV, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+18076, IF_8086|IF_FPU},
1870 ITEMPLATE_END
1873 static const struct itemplate instrux_FNSTSW[] = {
1874 {I_FNSTSW, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+18086, IF_8086|IF_FPU|IF_SW},
1875 {I_FNSTSW, 1, {REG_AX,0,0,0,0}, nasm_bytecodes+18091, IF_286|IF_FPU},
1876 ITEMPLATE_END
1879 static const struct itemplate instrux_FPATAN[] = {
1880 {I_FPATAN, 0, {0,0,0,0,0}, nasm_bytecodes+19817, IF_8086|IF_FPU},
1881 ITEMPLATE_END
1884 static const struct itemplate instrux_FPREM[] = {
1885 {I_FPREM, 0, {0,0,0,0,0}, nasm_bytecodes+19821, IF_8086|IF_FPU},
1886 ITEMPLATE_END
1889 static const struct itemplate instrux_FPREM1[] = {
1890 {I_FPREM1, 0, {0,0,0,0,0}, nasm_bytecodes+19825, IF_386|IF_FPU},
1891 ITEMPLATE_END
1894 static const struct itemplate instrux_FPTAN[] = {
1895 {I_FPTAN, 0, {0,0,0,0,0}, nasm_bytecodes+19829, IF_8086|IF_FPU},
1896 ITEMPLATE_END
1899 static const struct itemplate instrux_FRCZPD[] = {
1900 {I_FRCZPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8975, IF_SSE5|IF_AMD},
1901 ITEMPLATE_END
1904 static const struct itemplate instrux_FRCZPS[] = {
1905 {I_FRCZPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8968, IF_SSE5|IF_AMD},
1906 ITEMPLATE_END
1909 static const struct itemplate instrux_FRCZSD[] = {
1910 {I_FRCZSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8989, IF_SSE5|IF_AMD},
1911 ITEMPLATE_END
1914 static const struct itemplate instrux_FRCZSS[] = {
1915 {I_FRCZSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8982, IF_SSE5|IF_AMD},
1916 ITEMPLATE_END
1919 static const struct itemplate instrux_FRNDINT[] = {
1920 {I_FRNDINT, 0, {0,0,0,0,0}, nasm_bytecodes+19833, IF_8086|IF_FPU},
1921 ITEMPLATE_END
1924 static const struct itemplate instrux_FRSTOR[] = {
1925 {I_FRSTOR, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+19837, IF_8086|IF_FPU},
1926 ITEMPLATE_END
1929 static const struct itemplate instrux_FSAVE[] = {
1930 {I_FSAVE, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+18060, IF_8086|IF_FPU},
1931 ITEMPLATE_END
1934 static const struct itemplate instrux_FSCALE[] = {
1935 {I_FSCALE, 0, {0,0,0,0,0}, nasm_bytecodes+19841, IF_8086|IF_FPU},
1936 ITEMPLATE_END
1939 static const struct itemplate instrux_FSETPM[] = {
1940 {I_FSETPM, 0, {0,0,0,0,0}, nasm_bytecodes+19845, IF_286|IF_FPU},
1941 ITEMPLATE_END
1944 static const struct itemplate instrux_FSIN[] = {
1945 {I_FSIN, 0, {0,0,0,0,0}, nasm_bytecodes+19849, IF_386|IF_FPU},
1946 ITEMPLATE_END
1949 static const struct itemplate instrux_FSINCOS[] = {
1950 {I_FSINCOS, 0, {0,0,0,0,0}, nasm_bytecodes+19853, IF_386|IF_FPU},
1951 ITEMPLATE_END
1954 static const struct itemplate instrux_FSQRT[] = {
1955 {I_FSQRT, 0, {0,0,0,0,0}, nasm_bytecodes+19857, IF_8086|IF_FPU},
1956 ITEMPLATE_END
1959 static const struct itemplate instrux_FST[] = {
1960 {I_FST, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+19861, IF_8086|IF_FPU},
1961 {I_FST, 1, {MEMORY|BITS64,0,0,0,0}, nasm_bytecodes+19865, IF_8086|IF_FPU},
1962 {I_FST, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+18065, IF_8086|IF_FPU},
1963 {I_FST, 0, {0,0,0,0,0}, nasm_bytecodes+19869, IF_8086|IF_FPU},
1964 ITEMPLATE_END
1967 static const struct itemplate instrux_FSTCW[] = {
1968 {I_FSTCW, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+18070, IF_8086|IF_FPU|IF_SW},
1969 ITEMPLATE_END
1972 static const struct itemplate instrux_FSTENV[] = {
1973 {I_FSTENV, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+18075, IF_8086|IF_FPU},
1974 ITEMPLATE_END
1977 static const struct itemplate instrux_FSTP[] = {
1978 {I_FSTP, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+19873, IF_8086|IF_FPU},
1979 {I_FSTP, 1, {MEMORY|BITS64,0,0,0,0}, nasm_bytecodes+19877, IF_8086|IF_FPU},
1980 {I_FSTP, 1, {MEMORY|BITS80,0,0,0,0}, nasm_bytecodes+19881, IF_8086|IF_FPU},
1981 {I_FSTP, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+18080, IF_8086|IF_FPU},
1982 {I_FSTP, 0, {0,0,0,0,0}, nasm_bytecodes+19885, IF_8086|IF_FPU},
1983 ITEMPLATE_END
1986 static const struct itemplate instrux_FSTSW[] = {
1987 {I_FSTSW, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+18085, IF_8086|IF_FPU|IF_SW},
1988 {I_FSTSW, 1, {REG_AX,0,0,0,0}, nasm_bytecodes+18090, IF_286|IF_FPU},
1989 ITEMPLATE_END
1992 static const struct itemplate instrux_FSUB[] = {
1993 {I_FSUB, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+19889, IF_8086|IF_FPU},
1994 {I_FSUB, 1, {MEMORY|BITS64,0,0,0,0}, nasm_bytecodes+19893, IF_8086|IF_FPU},
1995 {I_FSUB, 1, {FPUREG|TO,0,0,0,0}, nasm_bytecodes+18095, IF_8086|IF_FPU},
1996 {I_FSUB, 2, {FPUREG,FPU0,0,0,0}, nasm_bytecodes+18095, IF_8086|IF_FPU},
1997 {I_FSUB, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+18100, IF_8086|IF_FPU},
1998 {I_FSUB, 2, {FPU0,FPUREG,0,0,0}, nasm_bytecodes+18105, IF_8086|IF_FPU},
1999 {I_FSUB, 0, {0,0,0,0,0}, nasm_bytecodes+19897, IF_8086|IF_FPU},
2000 ITEMPLATE_END
2003 static const struct itemplate instrux_FSUBP[] = {
2004 {I_FSUBP, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+18110, IF_8086|IF_FPU},
2005 {I_FSUBP, 2, {FPUREG,FPU0,0,0,0}, nasm_bytecodes+18110, IF_8086|IF_FPU},
2006 {I_FSUBP, 0, {0,0,0,0,0}, nasm_bytecodes+19897, IF_8086|IF_FPU},
2007 ITEMPLATE_END
2010 static const struct itemplate instrux_FSUBR[] = {
2011 {I_FSUBR, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+19901, IF_8086|IF_FPU},
2012 {I_FSUBR, 1, {MEMORY|BITS64,0,0,0,0}, nasm_bytecodes+19905, IF_8086|IF_FPU},
2013 {I_FSUBR, 1, {FPUREG|TO,0,0,0,0}, nasm_bytecodes+18115, IF_8086|IF_FPU},
2014 {I_FSUBR, 2, {FPUREG,FPU0,0,0,0}, nasm_bytecodes+18115, IF_8086|IF_FPU},
2015 {I_FSUBR, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+18120, IF_8086|IF_FPU},
2016 {I_FSUBR, 2, {FPU0,FPUREG,0,0,0}, nasm_bytecodes+18125, IF_8086|IF_FPU},
2017 {I_FSUBR, 0, {0,0,0,0,0}, nasm_bytecodes+19909, IF_8086|IF_FPU},
2018 ITEMPLATE_END
2021 static const struct itemplate instrux_FSUBRP[] = {
2022 {I_FSUBRP, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+18130, IF_8086|IF_FPU},
2023 {I_FSUBRP, 2, {FPUREG,FPU0,0,0,0}, nasm_bytecodes+18130, IF_8086|IF_FPU},
2024 {I_FSUBRP, 0, {0,0,0,0,0}, nasm_bytecodes+19909, IF_8086|IF_FPU},
2025 ITEMPLATE_END
2028 static const struct itemplate instrux_FTST[] = {
2029 {I_FTST, 0, {0,0,0,0,0}, nasm_bytecodes+19913, IF_8086|IF_FPU},
2030 ITEMPLATE_END
2033 static const struct itemplate instrux_FUCOM[] = {
2034 {I_FUCOM, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+18135, IF_386|IF_FPU},
2035 {I_FUCOM, 2, {FPU0,FPUREG,0,0,0}, nasm_bytecodes+18140, IF_386|IF_FPU},
2036 {I_FUCOM, 0, {0,0,0,0,0}, nasm_bytecodes+19917, IF_386|IF_FPU},
2037 ITEMPLATE_END
2040 static const struct itemplate instrux_FUCOMI[] = {
2041 {I_FUCOMI, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+18145, IF_P6|IF_FPU},
2042 {I_FUCOMI, 2, {FPU0,FPUREG,0,0,0}, nasm_bytecodes+18150, IF_P6|IF_FPU},
2043 {I_FUCOMI, 0, {0,0,0,0,0}, nasm_bytecodes+19921, IF_P6|IF_FPU},
2044 ITEMPLATE_END
2047 static const struct itemplate instrux_FUCOMIP[] = {
2048 {I_FUCOMIP, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+18155, IF_P6|IF_FPU},
2049 {I_FUCOMIP, 2, {FPU0,FPUREG,0,0,0}, nasm_bytecodes+18160, IF_P6|IF_FPU},
2050 {I_FUCOMIP, 0, {0,0,0,0,0}, nasm_bytecodes+19925, IF_P6|IF_FPU},
2051 ITEMPLATE_END
2054 static const struct itemplate instrux_FUCOMP[] = {
2055 {I_FUCOMP, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+18165, IF_386|IF_FPU},
2056 {I_FUCOMP, 2, {FPU0,FPUREG,0,0,0}, nasm_bytecodes+18170, IF_386|IF_FPU},
2057 {I_FUCOMP, 0, {0,0,0,0,0}, nasm_bytecodes+19929, IF_386|IF_FPU},
2058 ITEMPLATE_END
2061 static const struct itemplate instrux_FUCOMPP[] = {
2062 {I_FUCOMPP, 0, {0,0,0,0,0}, nasm_bytecodes+19933, IF_386|IF_FPU},
2063 ITEMPLATE_END
2066 static const struct itemplate instrux_FWAIT[] = {
2067 {I_FWAIT, 0, {0,0,0,0,0}, nasm_bytecodes+19919, IF_8086},
2068 ITEMPLATE_END
2071 static const struct itemplate instrux_FXAM[] = {
2072 {I_FXAM, 0, {0,0,0,0,0}, nasm_bytecodes+19937, IF_8086|IF_FPU},
2073 ITEMPLATE_END
2076 static const struct itemplate instrux_FXCH[] = {
2077 {I_FXCH, 1, {FPUREG,0,0,0,0}, nasm_bytecodes+18175, IF_8086|IF_FPU},
2078 {I_FXCH, 2, {FPUREG,FPU0,0,0,0}, nasm_bytecodes+18175, IF_8086|IF_FPU},
2079 {I_FXCH, 2, {FPU0,FPUREG,0,0,0}, nasm_bytecodes+18180, IF_8086|IF_FPU},
2080 {I_FXCH, 0, {0,0,0,0,0}, nasm_bytecodes+19941, IF_8086|IF_FPU},
2081 ITEMPLATE_END
2084 static const struct itemplate instrux_FXRSTOR[] = {
2085 {I_FXRSTOR, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+19300, IF_P6|IF_SSE|IF_FPU},
2086 ITEMPLATE_END
2089 static const struct itemplate instrux_FXSAVE[] = {
2090 {I_FXSAVE, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+19305, IF_P6|IF_SSE|IF_FPU},
2091 ITEMPLATE_END
2094 static const struct itemplate instrux_FXTRACT[] = {
2095 {I_FXTRACT, 0, {0,0,0,0,0}, nasm_bytecodes+19945, IF_8086|IF_FPU},
2096 ITEMPLATE_END
2099 static const struct itemplate instrux_FYL2X[] = {
2100 {I_FYL2X, 0, {0,0,0,0,0}, nasm_bytecodes+19949, IF_8086|IF_FPU},
2101 ITEMPLATE_END
2104 static const struct itemplate instrux_FYL2XP1[] = {
2105 {I_FYL2XP1, 0, {0,0,0,0,0}, nasm_bytecodes+19953, IF_8086|IF_FPU},
2106 ITEMPLATE_END
2109 static const struct itemplate instrux_GETSEC[] = {
2110 {I_GETSEC, 0, {0,0,0,0,0}, nasm_bytecodes+20409, IF_KATMAI},
2111 ITEMPLATE_END
2114 static const struct itemplate instrux_HADDPD[] = {
2115 {I_HADDPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16212, IF_PRESCOTT|IF_SSE3|IF_SO},
2116 ITEMPLATE_END
2119 static const struct itemplate instrux_HADDPS[] = {
2120 {I_HADDPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16218, IF_PRESCOTT|IF_SSE3|IF_SO},
2121 ITEMPLATE_END
2124 static const struct itemplate instrux_HINT_NOP0[] = {
2125 {I_HINT_NOP0, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16356, IF_P6|IF_UNDOC},
2126 {I_HINT_NOP0, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16362, IF_P6|IF_UNDOC},
2127 {I_HINT_NOP0, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16368, IF_X64|IF_UNDOC},
2128 ITEMPLATE_END
2131 static const struct itemplate instrux_HINT_NOP1[] = {
2132 {I_HINT_NOP1, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16374, IF_P6|IF_UNDOC},
2133 {I_HINT_NOP1, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16380, IF_P6|IF_UNDOC},
2134 {I_HINT_NOP1, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16386, IF_X64|IF_UNDOC},
2135 ITEMPLATE_END
2138 static const struct itemplate instrux_HINT_NOP10[] = {
2139 {I_HINT_NOP10, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16536, IF_P6|IF_UNDOC},
2140 {I_HINT_NOP10, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16542, IF_P6|IF_UNDOC},
2141 {I_HINT_NOP10, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16548, IF_X64|IF_UNDOC},
2142 ITEMPLATE_END
2145 static const struct itemplate instrux_HINT_NOP11[] = {
2146 {I_HINT_NOP11, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16554, IF_P6|IF_UNDOC},
2147 {I_HINT_NOP11, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16560, IF_P6|IF_UNDOC},
2148 {I_HINT_NOP11, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16566, IF_X64|IF_UNDOC},
2149 ITEMPLATE_END
2152 static const struct itemplate instrux_HINT_NOP12[] = {
2153 {I_HINT_NOP12, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16572, IF_P6|IF_UNDOC},
2154 {I_HINT_NOP12, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16578, IF_P6|IF_UNDOC},
2155 {I_HINT_NOP12, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16584, IF_X64|IF_UNDOC},
2156 ITEMPLATE_END
2159 static const struct itemplate instrux_HINT_NOP13[] = {
2160 {I_HINT_NOP13, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16590, IF_P6|IF_UNDOC},
2161 {I_HINT_NOP13, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16596, IF_P6|IF_UNDOC},
2162 {I_HINT_NOP13, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16602, IF_X64|IF_UNDOC},
2163 ITEMPLATE_END
2166 static const struct itemplate instrux_HINT_NOP14[] = {
2167 {I_HINT_NOP14, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16608, IF_P6|IF_UNDOC},
2168 {I_HINT_NOP14, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16614, IF_P6|IF_UNDOC},
2169 {I_HINT_NOP14, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16620, IF_X64|IF_UNDOC},
2170 ITEMPLATE_END
2173 static const struct itemplate instrux_HINT_NOP15[] = {
2174 {I_HINT_NOP15, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16626, IF_P6|IF_UNDOC},
2175 {I_HINT_NOP15, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16632, IF_P6|IF_UNDOC},
2176 {I_HINT_NOP15, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16638, IF_X64|IF_UNDOC},
2177 ITEMPLATE_END
2180 static const struct itemplate instrux_HINT_NOP16[] = {
2181 {I_HINT_NOP16, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16644, IF_P6|IF_UNDOC},
2182 {I_HINT_NOP16, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16650, IF_P6|IF_UNDOC},
2183 {I_HINT_NOP16, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16656, IF_X64|IF_UNDOC},
2184 ITEMPLATE_END
2187 static const struct itemplate instrux_HINT_NOP17[] = {
2188 {I_HINT_NOP17, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16662, IF_P6|IF_UNDOC},
2189 {I_HINT_NOP17, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16668, IF_P6|IF_UNDOC},
2190 {I_HINT_NOP17, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16674, IF_X64|IF_UNDOC},
2191 ITEMPLATE_END
2194 static const struct itemplate instrux_HINT_NOP18[] = {
2195 {I_HINT_NOP18, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16680, IF_P6|IF_UNDOC},
2196 {I_HINT_NOP18, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16686, IF_P6|IF_UNDOC},
2197 {I_HINT_NOP18, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16692, IF_X64|IF_UNDOC},
2198 ITEMPLATE_END
2201 static const struct itemplate instrux_HINT_NOP19[] = {
2202 {I_HINT_NOP19, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16698, IF_P6|IF_UNDOC},
2203 {I_HINT_NOP19, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16704, IF_P6|IF_UNDOC},
2204 {I_HINT_NOP19, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16710, IF_X64|IF_UNDOC},
2205 ITEMPLATE_END
2208 static const struct itemplate instrux_HINT_NOP2[] = {
2209 {I_HINT_NOP2, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16392, IF_P6|IF_UNDOC},
2210 {I_HINT_NOP2, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16398, IF_P6|IF_UNDOC},
2211 {I_HINT_NOP2, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16404, IF_X64|IF_UNDOC},
2212 ITEMPLATE_END
2215 static const struct itemplate instrux_HINT_NOP20[] = {
2216 {I_HINT_NOP20, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16716, IF_P6|IF_UNDOC},
2217 {I_HINT_NOP20, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16722, IF_P6|IF_UNDOC},
2218 {I_HINT_NOP20, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16728, IF_X64|IF_UNDOC},
2219 ITEMPLATE_END
2222 static const struct itemplate instrux_HINT_NOP21[] = {
2223 {I_HINT_NOP21, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16734, IF_P6|IF_UNDOC},
2224 {I_HINT_NOP21, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16740, IF_P6|IF_UNDOC},
2225 {I_HINT_NOP21, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16746, IF_X64|IF_UNDOC},
2226 ITEMPLATE_END
2229 static const struct itemplate instrux_HINT_NOP22[] = {
2230 {I_HINT_NOP22, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16752, IF_P6|IF_UNDOC},
2231 {I_HINT_NOP22, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16758, IF_P6|IF_UNDOC},
2232 {I_HINT_NOP22, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16764, IF_X64|IF_UNDOC},
2233 ITEMPLATE_END
2236 static const struct itemplate instrux_HINT_NOP23[] = {
2237 {I_HINT_NOP23, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16770, IF_P6|IF_UNDOC},
2238 {I_HINT_NOP23, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16776, IF_P6|IF_UNDOC},
2239 {I_HINT_NOP23, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16782, IF_X64|IF_UNDOC},
2240 ITEMPLATE_END
2243 static const struct itemplate instrux_HINT_NOP24[] = {
2244 {I_HINT_NOP24, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16788, IF_P6|IF_UNDOC},
2245 {I_HINT_NOP24, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16794, IF_P6|IF_UNDOC},
2246 {I_HINT_NOP24, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16800, IF_X64|IF_UNDOC},
2247 ITEMPLATE_END
2250 static const struct itemplate instrux_HINT_NOP25[] = {
2251 {I_HINT_NOP25, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16806, IF_P6|IF_UNDOC},
2252 {I_HINT_NOP25, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16812, IF_P6|IF_UNDOC},
2253 {I_HINT_NOP25, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16818, IF_X64|IF_UNDOC},
2254 ITEMPLATE_END
2257 static const struct itemplate instrux_HINT_NOP26[] = {
2258 {I_HINT_NOP26, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16824, IF_P6|IF_UNDOC},
2259 {I_HINT_NOP26, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16830, IF_P6|IF_UNDOC},
2260 {I_HINT_NOP26, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16836, IF_X64|IF_UNDOC},
2261 ITEMPLATE_END
2264 static const struct itemplate instrux_HINT_NOP27[] = {
2265 {I_HINT_NOP27, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16842, IF_P6|IF_UNDOC},
2266 {I_HINT_NOP27, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16848, IF_P6|IF_UNDOC},
2267 {I_HINT_NOP27, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16854, IF_X64|IF_UNDOC},
2268 ITEMPLATE_END
2271 static const struct itemplate instrux_HINT_NOP28[] = {
2272 {I_HINT_NOP28, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16860, IF_P6|IF_UNDOC},
2273 {I_HINT_NOP28, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16866, IF_P6|IF_UNDOC},
2274 {I_HINT_NOP28, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16872, IF_X64|IF_UNDOC},
2275 ITEMPLATE_END
2278 static const struct itemplate instrux_HINT_NOP29[] = {
2279 {I_HINT_NOP29, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16878, IF_P6|IF_UNDOC},
2280 {I_HINT_NOP29, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16884, IF_P6|IF_UNDOC},
2281 {I_HINT_NOP29, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16890, IF_X64|IF_UNDOC},
2282 ITEMPLATE_END
2285 static const struct itemplate instrux_HINT_NOP3[] = {
2286 {I_HINT_NOP3, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16410, IF_P6|IF_UNDOC},
2287 {I_HINT_NOP3, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16416, IF_P6|IF_UNDOC},
2288 {I_HINT_NOP3, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16422, IF_X64|IF_UNDOC},
2289 ITEMPLATE_END
2292 static const struct itemplate instrux_HINT_NOP30[] = {
2293 {I_HINT_NOP30, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16896, IF_P6|IF_UNDOC},
2294 {I_HINT_NOP30, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16902, IF_P6|IF_UNDOC},
2295 {I_HINT_NOP30, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16908, IF_X64|IF_UNDOC},
2296 ITEMPLATE_END
2299 static const struct itemplate instrux_HINT_NOP31[] = {
2300 {I_HINT_NOP31, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16914, IF_P6|IF_UNDOC},
2301 {I_HINT_NOP31, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16920, IF_P6|IF_UNDOC},
2302 {I_HINT_NOP31, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16926, IF_X64|IF_UNDOC},
2303 ITEMPLATE_END
2306 static const struct itemplate instrux_HINT_NOP32[] = {
2307 {I_HINT_NOP32, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16932, IF_P6|IF_UNDOC},
2308 {I_HINT_NOP32, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16938, IF_P6|IF_UNDOC},
2309 {I_HINT_NOP32, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16944, IF_X64|IF_UNDOC},
2310 ITEMPLATE_END
2313 static const struct itemplate instrux_HINT_NOP33[] = {
2314 {I_HINT_NOP33, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16950, IF_P6|IF_UNDOC},
2315 {I_HINT_NOP33, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16956, IF_P6|IF_UNDOC},
2316 {I_HINT_NOP33, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16962, IF_X64|IF_UNDOC},
2317 ITEMPLATE_END
2320 static const struct itemplate instrux_HINT_NOP34[] = {
2321 {I_HINT_NOP34, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16968, IF_P6|IF_UNDOC},
2322 {I_HINT_NOP34, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16974, IF_P6|IF_UNDOC},
2323 {I_HINT_NOP34, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16980, IF_X64|IF_UNDOC},
2324 ITEMPLATE_END
2327 static const struct itemplate instrux_HINT_NOP35[] = {
2328 {I_HINT_NOP35, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16986, IF_P6|IF_UNDOC},
2329 {I_HINT_NOP35, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16992, IF_P6|IF_UNDOC},
2330 {I_HINT_NOP35, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16998, IF_X64|IF_UNDOC},
2331 ITEMPLATE_END
2334 static const struct itemplate instrux_HINT_NOP36[] = {
2335 {I_HINT_NOP36, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17004, IF_P6|IF_UNDOC},
2336 {I_HINT_NOP36, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17010, IF_P6|IF_UNDOC},
2337 {I_HINT_NOP36, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17016, IF_X64|IF_UNDOC},
2338 ITEMPLATE_END
2341 static const struct itemplate instrux_HINT_NOP37[] = {
2342 {I_HINT_NOP37, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17022, IF_P6|IF_UNDOC},
2343 {I_HINT_NOP37, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17028, IF_P6|IF_UNDOC},
2344 {I_HINT_NOP37, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17034, IF_X64|IF_UNDOC},
2345 ITEMPLATE_END
2348 static const struct itemplate instrux_HINT_NOP38[] = {
2349 {I_HINT_NOP38, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17040, IF_P6|IF_UNDOC},
2350 {I_HINT_NOP38, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17046, IF_P6|IF_UNDOC},
2351 {I_HINT_NOP38, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17052, IF_X64|IF_UNDOC},
2352 ITEMPLATE_END
2355 static const struct itemplate instrux_HINT_NOP39[] = {
2356 {I_HINT_NOP39, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17058, IF_P6|IF_UNDOC},
2357 {I_HINT_NOP39, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17064, IF_P6|IF_UNDOC},
2358 {I_HINT_NOP39, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17070, IF_X64|IF_UNDOC},
2359 ITEMPLATE_END
2362 static const struct itemplate instrux_HINT_NOP4[] = {
2363 {I_HINT_NOP4, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16428, IF_P6|IF_UNDOC},
2364 {I_HINT_NOP4, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16434, IF_P6|IF_UNDOC},
2365 {I_HINT_NOP4, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16440, IF_X64|IF_UNDOC},
2366 ITEMPLATE_END
2369 static const struct itemplate instrux_HINT_NOP40[] = {
2370 {I_HINT_NOP40, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17076, IF_P6|IF_UNDOC},
2371 {I_HINT_NOP40, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17082, IF_P6|IF_UNDOC},
2372 {I_HINT_NOP40, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17088, IF_X64|IF_UNDOC},
2373 ITEMPLATE_END
2376 static const struct itemplate instrux_HINT_NOP41[] = {
2377 {I_HINT_NOP41, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17094, IF_P6|IF_UNDOC},
2378 {I_HINT_NOP41, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17100, IF_P6|IF_UNDOC},
2379 {I_HINT_NOP41, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17106, IF_X64|IF_UNDOC},
2380 ITEMPLATE_END
2383 static const struct itemplate instrux_HINT_NOP42[] = {
2384 {I_HINT_NOP42, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17112, IF_P6|IF_UNDOC},
2385 {I_HINT_NOP42, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17118, IF_P6|IF_UNDOC},
2386 {I_HINT_NOP42, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17124, IF_X64|IF_UNDOC},
2387 ITEMPLATE_END
2390 static const struct itemplate instrux_HINT_NOP43[] = {
2391 {I_HINT_NOP43, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17130, IF_P6|IF_UNDOC},
2392 {I_HINT_NOP43, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17136, IF_P6|IF_UNDOC},
2393 {I_HINT_NOP43, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17142, IF_X64|IF_UNDOC},
2394 ITEMPLATE_END
2397 static const struct itemplate instrux_HINT_NOP44[] = {
2398 {I_HINT_NOP44, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17148, IF_P6|IF_UNDOC},
2399 {I_HINT_NOP44, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17154, IF_P6|IF_UNDOC},
2400 {I_HINT_NOP44, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17160, IF_X64|IF_UNDOC},
2401 ITEMPLATE_END
2404 static const struct itemplate instrux_HINT_NOP45[] = {
2405 {I_HINT_NOP45, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17166, IF_P6|IF_UNDOC},
2406 {I_HINT_NOP45, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17172, IF_P6|IF_UNDOC},
2407 {I_HINT_NOP45, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17178, IF_X64|IF_UNDOC},
2408 ITEMPLATE_END
2411 static const struct itemplate instrux_HINT_NOP46[] = {
2412 {I_HINT_NOP46, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17184, IF_P6|IF_UNDOC},
2413 {I_HINT_NOP46, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17190, IF_P6|IF_UNDOC},
2414 {I_HINT_NOP46, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17196, IF_X64|IF_UNDOC},
2415 ITEMPLATE_END
2418 static const struct itemplate instrux_HINT_NOP47[] = {
2419 {I_HINT_NOP47, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17202, IF_P6|IF_UNDOC},
2420 {I_HINT_NOP47, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17208, IF_P6|IF_UNDOC},
2421 {I_HINT_NOP47, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17214, IF_X64|IF_UNDOC},
2422 ITEMPLATE_END
2425 static const struct itemplate instrux_HINT_NOP48[] = {
2426 {I_HINT_NOP48, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17220, IF_P6|IF_UNDOC},
2427 {I_HINT_NOP48, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17226, IF_P6|IF_UNDOC},
2428 {I_HINT_NOP48, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17232, IF_X64|IF_UNDOC},
2429 ITEMPLATE_END
2432 static const struct itemplate instrux_HINT_NOP49[] = {
2433 {I_HINT_NOP49, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17238, IF_P6|IF_UNDOC},
2434 {I_HINT_NOP49, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17244, IF_P6|IF_UNDOC},
2435 {I_HINT_NOP49, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17250, IF_X64|IF_UNDOC},
2436 ITEMPLATE_END
2439 static const struct itemplate instrux_HINT_NOP5[] = {
2440 {I_HINT_NOP5, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16446, IF_P6|IF_UNDOC},
2441 {I_HINT_NOP5, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16452, IF_P6|IF_UNDOC},
2442 {I_HINT_NOP5, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16458, IF_X64|IF_UNDOC},
2443 ITEMPLATE_END
2446 static const struct itemplate instrux_HINT_NOP50[] = {
2447 {I_HINT_NOP50, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17256, IF_P6|IF_UNDOC},
2448 {I_HINT_NOP50, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17262, IF_P6|IF_UNDOC},
2449 {I_HINT_NOP50, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17268, IF_X64|IF_UNDOC},
2450 ITEMPLATE_END
2453 static const struct itemplate instrux_HINT_NOP51[] = {
2454 {I_HINT_NOP51, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17274, IF_P6|IF_UNDOC},
2455 {I_HINT_NOP51, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17280, IF_P6|IF_UNDOC},
2456 {I_HINT_NOP51, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17286, IF_X64|IF_UNDOC},
2457 ITEMPLATE_END
2460 static const struct itemplate instrux_HINT_NOP52[] = {
2461 {I_HINT_NOP52, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17292, IF_P6|IF_UNDOC},
2462 {I_HINT_NOP52, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17298, IF_P6|IF_UNDOC},
2463 {I_HINT_NOP52, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17304, IF_X64|IF_UNDOC},
2464 ITEMPLATE_END
2467 static const struct itemplate instrux_HINT_NOP53[] = {
2468 {I_HINT_NOP53, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17310, IF_P6|IF_UNDOC},
2469 {I_HINT_NOP53, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17316, IF_P6|IF_UNDOC},
2470 {I_HINT_NOP53, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17322, IF_X64|IF_UNDOC},
2471 ITEMPLATE_END
2474 static const struct itemplate instrux_HINT_NOP54[] = {
2475 {I_HINT_NOP54, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17328, IF_P6|IF_UNDOC},
2476 {I_HINT_NOP54, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17334, IF_P6|IF_UNDOC},
2477 {I_HINT_NOP54, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17340, IF_X64|IF_UNDOC},
2478 ITEMPLATE_END
2481 static const struct itemplate instrux_HINT_NOP55[] = {
2482 {I_HINT_NOP55, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17346, IF_P6|IF_UNDOC},
2483 {I_HINT_NOP55, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17352, IF_P6|IF_UNDOC},
2484 {I_HINT_NOP55, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17358, IF_X64|IF_UNDOC},
2485 ITEMPLATE_END
2488 static const struct itemplate instrux_HINT_NOP56[] = {
2489 {I_HINT_NOP56, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+14718, IF_P6|IF_UNDOC},
2490 {I_HINT_NOP56, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+14724, IF_P6|IF_UNDOC},
2491 {I_HINT_NOP56, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+14730, IF_X64|IF_UNDOC},
2492 ITEMPLATE_END
2495 static const struct itemplate instrux_HINT_NOP57[] = {
2496 {I_HINT_NOP57, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17364, IF_P6|IF_UNDOC},
2497 {I_HINT_NOP57, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17370, IF_P6|IF_UNDOC},
2498 {I_HINT_NOP57, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17376, IF_X64|IF_UNDOC},
2499 ITEMPLATE_END
2502 static const struct itemplate instrux_HINT_NOP58[] = {
2503 {I_HINT_NOP58, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17382, IF_P6|IF_UNDOC},
2504 {I_HINT_NOP58, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17388, IF_P6|IF_UNDOC},
2505 {I_HINT_NOP58, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17394, IF_X64|IF_UNDOC},
2506 ITEMPLATE_END
2509 static const struct itemplate instrux_HINT_NOP59[] = {
2510 {I_HINT_NOP59, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17400, IF_P6|IF_UNDOC},
2511 {I_HINT_NOP59, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17406, IF_P6|IF_UNDOC},
2512 {I_HINT_NOP59, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17412, IF_X64|IF_UNDOC},
2513 ITEMPLATE_END
2516 static const struct itemplate instrux_HINT_NOP6[] = {
2517 {I_HINT_NOP6, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16464, IF_P6|IF_UNDOC},
2518 {I_HINT_NOP6, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16470, IF_P6|IF_UNDOC},
2519 {I_HINT_NOP6, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16476, IF_X64|IF_UNDOC},
2520 ITEMPLATE_END
2523 static const struct itemplate instrux_HINT_NOP60[] = {
2524 {I_HINT_NOP60, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17418, IF_P6|IF_UNDOC},
2525 {I_HINT_NOP60, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17424, IF_P6|IF_UNDOC},
2526 {I_HINT_NOP60, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17430, IF_X64|IF_UNDOC},
2527 ITEMPLATE_END
2530 static const struct itemplate instrux_HINT_NOP61[] = {
2531 {I_HINT_NOP61, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17436, IF_P6|IF_UNDOC},
2532 {I_HINT_NOP61, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17442, IF_P6|IF_UNDOC},
2533 {I_HINT_NOP61, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17448, IF_X64|IF_UNDOC},
2534 ITEMPLATE_END
2537 static const struct itemplate instrux_HINT_NOP62[] = {
2538 {I_HINT_NOP62, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17454, IF_P6|IF_UNDOC},
2539 {I_HINT_NOP62, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17460, IF_P6|IF_UNDOC},
2540 {I_HINT_NOP62, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17466, IF_X64|IF_UNDOC},
2541 ITEMPLATE_END
2544 static const struct itemplate instrux_HINT_NOP63[] = {
2545 {I_HINT_NOP63, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+17472, IF_P6|IF_UNDOC},
2546 {I_HINT_NOP63, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+17478, IF_P6|IF_UNDOC},
2547 {I_HINT_NOP63, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+17484, IF_X64|IF_UNDOC},
2548 ITEMPLATE_END
2551 static const struct itemplate instrux_HINT_NOP7[] = {
2552 {I_HINT_NOP7, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16482, IF_P6|IF_UNDOC},
2553 {I_HINT_NOP7, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16488, IF_P6|IF_UNDOC},
2554 {I_HINT_NOP7, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16494, IF_X64|IF_UNDOC},
2555 ITEMPLATE_END
2558 static const struct itemplate instrux_HINT_NOP8[] = {
2559 {I_HINT_NOP8, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16500, IF_P6|IF_UNDOC},
2560 {I_HINT_NOP8, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16506, IF_P6|IF_UNDOC},
2561 {I_HINT_NOP8, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16512, IF_X64|IF_UNDOC},
2562 ITEMPLATE_END
2565 static const struct itemplate instrux_HINT_NOP9[] = {
2566 {I_HINT_NOP9, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+16518, IF_P6|IF_UNDOC},
2567 {I_HINT_NOP9, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+16524, IF_P6|IF_UNDOC},
2568 {I_HINT_NOP9, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+16530, IF_X64|IF_UNDOC},
2569 ITEMPLATE_END
2572 static const struct itemplate instrux_HLT[] = {
2573 {I_HLT, 0, {0,0,0,0,0}, nasm_bytecodes+20434, IF_8086|IF_PRIV},
2574 ITEMPLATE_END
2577 static const struct itemplate instrux_HSUBPD[] = {
2578 {I_HSUBPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16224, IF_PRESCOTT|IF_SSE3|IF_SO},
2579 ITEMPLATE_END
2582 static const struct itemplate instrux_HSUBPS[] = {
2583 {I_HSUBPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16230, IF_PRESCOTT|IF_SSE3|IF_SO},
2584 ITEMPLATE_END
2587 static const struct itemplate instrux_IBTS[] = {
2588 {I_IBTS, 2, {MEMORY,REG16,0,0,0}, nasm_bytecodes+14298, IF_386|IF_SW|IF_UNDOC},
2589 {I_IBTS, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+14298, IF_386|IF_UNDOC},
2590 {I_IBTS, 2, {MEMORY,REG32,0,0,0}, nasm_bytecodes+14304, IF_386|IF_SD|IF_UNDOC},
2591 {I_IBTS, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+14304, IF_386|IF_UNDOC},
2592 ITEMPLATE_END
2595 static const struct itemplate instrux_ICEBP[] = {
2596 {I_ICEBP, 0, {0,0,0,0,0}, nasm_bytecodes+20437, IF_386},
2597 ITEMPLATE_END
2600 static const struct itemplate instrux_IDIV[] = {
2601 {I_IDIV, 1, {RM_GPR|BITS8,0,0,0,0}, nasm_bytecodes+19957, IF_8086},
2602 {I_IDIV, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+18185, IF_8086},
2603 {I_IDIV, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+18190, IF_386},
2604 {I_IDIV, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+18195, IF_X64},
2605 ITEMPLATE_END
2608 static const struct itemplate instrux_IMUL[] = {
2609 {I_IMUL, 1, {RM_GPR|BITS8,0,0,0,0}, nasm_bytecodes+19961, IF_8086},
2610 {I_IMUL, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+18200, IF_8086},
2611 {I_IMUL, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+18205, IF_386},
2612 {I_IMUL, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+18210, IF_X64},
2613 {I_IMUL, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+14316, IF_386|IF_SM},
2614 {I_IMUL, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+14316, IF_386},
2615 {I_IMUL, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+14322, IF_386|IF_SM},
2616 {I_IMUL, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+14322, IF_386},
2617 {I_IMUL, 2, {REG64,MEMORY,0,0,0}, nasm_bytecodes+14328, IF_X64|IF_SM},
2618 {I_IMUL, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+14328, IF_X64},
2619 {I_IMUL, 3, {REG16,MEMORY,IMMEDIATE|BITS8,0,0}, nasm_bytecodes+14334, IF_186|IF_SM},
2620 {I_IMUL, 3, {REG16,MEMORY,SBYTE16,0,0}, nasm_bytecodes+14334, IF_186|IF_SM},
2621 {I_IMUL, 3, {REG16,MEMORY,IMMEDIATE|BITS16,0,0}, nasm_bytecodes+14340, IF_186|IF_SM},
2622 {I_IMUL, 3, {REG16,MEMORY,IMMEDIATE,0,0}, nasm_bytecodes+14346, IF_186|IF_SM},
2623 {I_IMUL, 3, {REG16,REG16,IMMEDIATE|BITS8,0,0}, nasm_bytecodes+14334, IF_186},
2624 {I_IMUL, 3, {REG16,REG16,SBYTE32,0,0}, nasm_bytecodes+14334, IF_186|IF_SM},
2625 {I_IMUL, 3, {REG16,REG16,IMMEDIATE|BITS16,0,0}, nasm_bytecodes+14340, IF_186},
2626 {I_IMUL, 3, {REG16,REG16,IMMEDIATE,0,0}, nasm_bytecodes+14346, IF_186|IF_SM},
2627 {I_IMUL, 3, {REG32,MEMORY,IMMEDIATE|BITS8,0,0}, nasm_bytecodes+14352, IF_386|IF_SM},
2628 {I_IMUL, 3, {REG32,MEMORY,SBYTE64,0,0}, nasm_bytecodes+14352, IF_386|IF_SM},
2629 {I_IMUL, 3, {REG32,MEMORY,IMMEDIATE|BITS32,0,0}, nasm_bytecodes+14358, IF_386|IF_SM},
2630 {I_IMUL, 3, {REG32,MEMORY,IMMEDIATE,0,0}, nasm_bytecodes+14364, IF_386|IF_SM},
2631 {I_IMUL, 3, {REG32,REG32,IMMEDIATE|BITS8,0,0}, nasm_bytecodes+14352, IF_386},
2632 {I_IMUL, 3, {REG32,REG32,SBYTE16,0,0}, nasm_bytecodes+14352, IF_386|IF_SM},
2633 {I_IMUL, 3, {REG32,REG32,IMMEDIATE|BITS32,0,0}, nasm_bytecodes+14358, IF_386},
2634 {I_IMUL, 3, {REG32,REG32,IMMEDIATE,0,0}, nasm_bytecodes+14364, IF_386|IF_SM},
2635 {I_IMUL, 3, {REG64,MEMORY,IMMEDIATE|BITS8,0,0}, nasm_bytecodes+14370, IF_X64|IF_SM},
2636 {I_IMUL, 3, {REG64,MEMORY,SBYTE32,0,0}, nasm_bytecodes+14370, IF_X64|IF_SM},
2637 {I_IMUL, 3, {REG64,MEMORY,IMMEDIATE|BITS32,0,0}, nasm_bytecodes+14376, IF_X64|IF_SM},
2638 {I_IMUL, 3, {REG64,MEMORY,IMMEDIATE,0,0}, nasm_bytecodes+14382, IF_X64|IF_SM},
2639 {I_IMUL, 3, {REG64,REG64,IMMEDIATE|BITS8,0,0}, nasm_bytecodes+14370, IF_X64},
2640 {I_IMUL, 3, {REG64,REG64,SBYTE64,0,0}, nasm_bytecodes+14370, IF_X64|IF_SM},
2641 {I_IMUL, 3, {REG64,REG64,IMMEDIATE|BITS32,0,0}, nasm_bytecodes+14376, IF_X64},
2642 {I_IMUL, 3, {REG64,REG64,IMMEDIATE,0,0}, nasm_bytecodes+14382, IF_X64|IF_SM},
2643 {I_IMUL, 2, {REG16,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+14388, IF_186},
2644 {I_IMUL, 2, {REG16,SBYTE16,0,0,0}, nasm_bytecodes+14388, IF_186|IF_SM},
2645 {I_IMUL, 2, {REG16,IMMEDIATE|BITS16,0,0,0}, nasm_bytecodes+14394, IF_186},
2646 {I_IMUL, 2, {REG16,IMMEDIATE,0,0,0}, nasm_bytecodes+14400, IF_186|IF_SM},
2647 {I_IMUL, 2, {REG32,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+14406, IF_386},
2648 {I_IMUL, 2, {REG32,SBYTE32,0,0,0}, nasm_bytecodes+14406, IF_386|IF_SM},
2649 {I_IMUL, 2, {REG32,IMMEDIATE|BITS32,0,0,0}, nasm_bytecodes+14412, IF_386},
2650 {I_IMUL, 2, {REG32,IMMEDIATE,0,0,0}, nasm_bytecodes+14418, IF_386|IF_SM},
2651 {I_IMUL, 2, {REG64,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+14424, IF_X64},
2652 {I_IMUL, 2, {REG64,SBYTE64,0,0,0}, nasm_bytecodes+14424, IF_X64|IF_SM},
2653 {I_IMUL, 2, {REG64,IMMEDIATE|BITS32,0,0,0}, nasm_bytecodes+14430, IF_X64},
2654 {I_IMUL, 2, {REG64,IMMEDIATE,0,0,0}, nasm_bytecodes+14436, IF_X64|IF_SM},
2655 ITEMPLATE_END
2658 static const struct itemplate instrux_IN[] = {
2659 {I_IN, 2, {REG_AL,IMMEDIATE,0,0,0}, nasm_bytecodes+19965, IF_8086|IF_SB},
2660 {I_IN, 2, {REG_AX,IMMEDIATE,0,0,0}, nasm_bytecodes+18215, IF_8086|IF_SB},
2661 {I_IN, 2, {REG_EAX,IMMEDIATE,0,0,0}, nasm_bytecodes+18220, IF_386|IF_SB},
2662 {I_IN, 2, {REG_AL,REG_DX,0,0,0}, nasm_bytecodes+20440, IF_8086},
2663 {I_IN, 2, {REG_AX,REG_DX,0,0,0}, nasm_bytecodes+19969, IF_8086},
2664 {I_IN, 2, {REG_EAX,REG_DX,0,0,0}, nasm_bytecodes+19973, IF_386},
2665 ITEMPLATE_END
2668 static const struct itemplate instrux_INC[] = {
2669 {I_INC, 1, {REG16,0,0,0,0}, nasm_bytecodes+19977, IF_8086|IF_NOLONG},
2670 {I_INC, 1, {REG32,0,0,0,0}, nasm_bytecodes+19981, IF_386|IF_NOLONG},
2671 {I_INC, 1, {RM_GPR|BITS8,0,0,0,0}, nasm_bytecodes+19985, IF_8086},
2672 {I_INC, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+18225, IF_8086},
2673 {I_INC, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+18230, IF_386},
2674 {I_INC, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+18235, IF_X64},
2675 ITEMPLATE_END
2678 static const struct itemplate instrux_INCBIN[] = {
2679 ITEMPLATE_END
2682 static const struct itemplate instrux_INSB[] = {
2683 {I_INSB, 0, {0,0,0,0,0}, nasm_bytecodes+20443, IF_186},
2684 ITEMPLATE_END
2687 static const struct itemplate instrux_INSD[] = {
2688 {I_INSD, 0, {0,0,0,0,0}, nasm_bytecodes+19989, IF_386},
2689 ITEMPLATE_END
2692 static const struct itemplate instrux_INSERTPS[] = {
2693 {I_INSERTPS, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5639, IF_SSE41|IF_SD},
2694 ITEMPLATE_END
2697 static const struct itemplate instrux_INSERTQ[] = {
2698 {I_INSERTQ, 4, {XMMREG,XMMREG,IMMEDIATE,IMMEDIATE,0}, nasm_bytecodes+5599, IF_SSE4A|IF_AMD},
2699 {I_INSERTQ, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+16278, IF_SSE4A|IF_AMD},
2700 ITEMPLATE_END
2703 static const struct itemplate instrux_INSW[] = {
2704 {I_INSW, 0, {0,0,0,0,0}, nasm_bytecodes+19993, IF_186},
2705 ITEMPLATE_END
2708 static const struct itemplate instrux_INT[] = {
2709 {I_INT, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+19997, IF_8086|IF_SB},
2710 ITEMPLATE_END
2713 static const struct itemplate instrux_INT01[] = {
2714 {I_INT01, 0, {0,0,0,0,0}, nasm_bytecodes+20437, IF_386},
2715 ITEMPLATE_END
2718 static const struct itemplate instrux_INT03[] = {
2719 {I_INT03, 0, {0,0,0,0,0}, nasm_bytecodes+20446, IF_8086},
2720 ITEMPLATE_END
2723 static const struct itemplate instrux_INT1[] = {
2724 {I_INT1, 0, {0,0,0,0,0}, nasm_bytecodes+20437, IF_386},
2725 ITEMPLATE_END
2728 static const struct itemplate instrux_INT3[] = {
2729 {I_INT3, 0, {0,0,0,0,0}, nasm_bytecodes+20446, IF_8086},
2730 ITEMPLATE_END
2733 static const struct itemplate instrux_INTO[] = {
2734 {I_INTO, 0, {0,0,0,0,0}, nasm_bytecodes+20449, IF_8086|IF_NOLONG},
2735 ITEMPLATE_END
2738 static const struct itemplate instrux_INVD[] = {
2739 {I_INVD, 0, {0,0,0,0,0}, nasm_bytecodes+20001, IF_486|IF_PRIV},
2740 ITEMPLATE_END
2743 static const struct itemplate instrux_INVEPT[] = {
2744 {I_INVEPT, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+5560, IF_VMX|IF_SO|IF_NOLONG},
2745 {I_INVEPT, 2, {REG64,MEMORY,0,0,0}, nasm_bytecodes+5559, IF_VMX|IF_SO|IF_LONG},
2746 ITEMPLATE_END
2749 static const struct itemplate instrux_INVLPG[] = {
2750 {I_INVLPG, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+18240, IF_486|IF_PRIV},
2751 ITEMPLATE_END
2754 static const struct itemplate instrux_INVLPGA[] = {
2755 {I_INVLPGA, 2, {REG_AX,REG_ECX,0,0,0}, nasm_bytecodes+14442, IF_X86_64|IF_AMD|IF_NOLONG},
2756 {I_INVLPGA, 2, {REG_EAX,REG_ECX,0,0,0}, nasm_bytecodes+14448, IF_X86_64|IF_AMD},
2757 {I_INVLPGA, 2, {REG_RAX,REG_ECX,0,0,0}, nasm_bytecodes+6819, IF_X64|IF_AMD},
2758 {I_INVLPGA, 0, {0,0,0,0,0}, nasm_bytecodes+14449, IF_X86_64|IF_AMD},
2759 ITEMPLATE_END
2762 static const struct itemplate instrux_INVVPID[] = {
2763 {I_INVVPID, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+5568, IF_VMX|IF_SO|IF_NOLONG},
2764 {I_INVVPID, 2, {REG64,MEMORY,0,0,0}, nasm_bytecodes+5567, IF_VMX|IF_SO|IF_LONG},
2765 ITEMPLATE_END
2768 static const struct itemplate instrux_IRET[] = {
2769 {I_IRET, 0, {0,0,0,0,0}, nasm_bytecodes+20005, IF_8086},
2770 ITEMPLATE_END
2773 static const struct itemplate instrux_IRETD[] = {
2774 {I_IRETD, 0, {0,0,0,0,0}, nasm_bytecodes+20009, IF_386},
2775 ITEMPLATE_END
2778 static const struct itemplate instrux_IRETQ[] = {
2779 {I_IRETQ, 0, {0,0,0,0,0}, nasm_bytecodes+20013, IF_X64},
2780 ITEMPLATE_END
2783 static const struct itemplate instrux_IRETW[] = {
2784 {I_IRETW, 0, {0,0,0,0,0}, nasm_bytecodes+20017, IF_8086},
2785 ITEMPLATE_END
2788 static const struct itemplate instrux_JCXZ[] = {
2789 {I_JCXZ, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+18245, IF_8086|IF_NOLONG},
2790 ITEMPLATE_END
2793 static const struct itemplate instrux_JECXZ[] = {
2794 {I_JECXZ, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+18250, IF_386},
2795 ITEMPLATE_END
2798 static const struct itemplate instrux_JMP[] = {
2799 {I_JMP, 1, {IMMEDIATE|SHORT,0,0,0,0}, nasm_bytecodes+18256, IF_8086},
2800 {I_JMP, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+18255, IF_8086},
2801 {I_JMP, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+18260, IF_8086},
2802 {I_JMP, 1, {IMMEDIATE|NEAR,0,0,0,0}, nasm_bytecodes+18260, IF_8086},
2803 {I_JMP, 1, {IMMEDIATE|FAR,0,0,0,0}, nasm_bytecodes+14454, IF_8086|IF_NOLONG},
2804 {I_JMP, 1, {IMMEDIATE|BITS16,0,0,0,0}, nasm_bytecodes+18265, IF_8086},
2805 {I_JMP, 1, {IMMEDIATE|BITS16|NEAR,0,0,0,0}, nasm_bytecodes+18265, IF_8086},
2806 {I_JMP, 1, {IMMEDIATE|BITS16|FAR,0,0,0,0}, nasm_bytecodes+14460, IF_8086|IF_NOLONG},
2807 {I_JMP, 1, {IMMEDIATE|BITS32,0,0,0,0}, nasm_bytecodes+18270, IF_386},
2808 {I_JMP, 1, {IMMEDIATE|BITS32|NEAR,0,0,0,0}, nasm_bytecodes+18270, IF_386},
2809 {I_JMP, 1, {IMMEDIATE|BITS32|FAR,0,0,0,0}, nasm_bytecodes+14466, IF_386|IF_NOLONG},
2810 {I_JMP, 2, {IMMEDIATE|COLON,IMMEDIATE,0,0,0}, nasm_bytecodes+14472, IF_8086|IF_NOLONG},
2811 {I_JMP, 2, {IMMEDIATE|BITS16|COLON,IMMEDIATE,0,0,0}, nasm_bytecodes+14478, IF_8086|IF_NOLONG},
2812 {I_JMP, 2, {IMMEDIATE|COLON,IMMEDIATE|BITS16,0,0,0}, nasm_bytecodes+14478, IF_8086|IF_NOLONG},
2813 {I_JMP, 2, {IMMEDIATE|BITS32|COLON,IMMEDIATE,0,0,0}, nasm_bytecodes+14484, IF_386|IF_NOLONG},
2814 {I_JMP, 2, {IMMEDIATE|COLON,IMMEDIATE|BITS32,0,0,0}, nasm_bytecodes+14484, IF_386|IF_NOLONG},
2815 {I_JMP, 1, {MEMORY|FAR,0,0,0,0}, nasm_bytecodes+18275, IF_8086|IF_NOLONG},
2816 {I_JMP, 1, {MEMORY|FAR,0,0,0,0}, nasm_bytecodes+18280, IF_X64},
2817 {I_JMP, 1, {MEMORY|BITS16|FAR,0,0,0,0}, nasm_bytecodes+18285, IF_8086},
2818 {I_JMP, 1, {MEMORY|BITS32|FAR,0,0,0,0}, nasm_bytecodes+18290, IF_386},
2819 {I_JMP, 1, {MEMORY|BITS64|FAR,0,0,0,0}, nasm_bytecodes+18280, IF_X64},
2820 {I_JMP, 1, {MEMORY|NEAR,0,0,0,0}, nasm_bytecodes+18295, IF_8086},
2821 {I_JMP, 1, {MEMORY|BITS16|NEAR,0,0,0,0}, nasm_bytecodes+18300, IF_8086},
2822 {I_JMP, 1, {MEMORY|BITS32|NEAR,0,0,0,0}, nasm_bytecodes+18305, IF_386|IF_NOLONG},
2823 {I_JMP, 1, {MEMORY|BITS64|NEAR,0,0,0,0}, nasm_bytecodes+18310, IF_X64},
2824 {I_JMP, 1, {REG16,0,0,0,0}, nasm_bytecodes+18300, IF_8086},
2825 {I_JMP, 1, {REG32,0,0,0,0}, nasm_bytecodes+18305, IF_386|IF_NOLONG},
2826 {I_JMP, 1, {REG64,0,0,0,0}, nasm_bytecodes+18310, IF_X64},
2827 {I_JMP, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+18295, IF_8086},
2828 {I_JMP, 1, {MEMORY|BITS16,0,0,0,0}, nasm_bytecodes+18300, IF_8086},
2829 {I_JMP, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+18305, IF_386|IF_NOLONG},
2830 {I_JMP, 1, {MEMORY|BITS64,0,0,0,0}, nasm_bytecodes+18310, IF_X64},
2831 ITEMPLATE_END
2834 static const struct itemplate instrux_JMPE[] = {
2835 {I_JMPE, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+14490, IF_IA64},
2836 {I_JMPE, 1, {IMMEDIATE|BITS16,0,0,0,0}, nasm_bytecodes+14496, IF_IA64},
2837 {I_JMPE, 1, {IMMEDIATE|BITS32,0,0,0,0}, nasm_bytecodes+14502, IF_IA64},
2838 {I_JMPE, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+14508, IF_IA64},
2839 {I_JMPE, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+14514, IF_IA64},
2840 ITEMPLATE_END
2843 static const struct itemplate instrux_JRCXZ[] = {
2844 {I_JRCXZ, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+18251, IF_X64},
2845 ITEMPLATE_END
2848 static const struct itemplate instrux_LAHF[] = {
2849 {I_LAHF, 0, {0,0,0,0,0}, nasm_bytecodes+20452, IF_8086},
2850 ITEMPLATE_END
2853 static const struct itemplate instrux_LAR[] = {
2854 {I_LAR, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+14520, IF_286|IF_PROT|IF_SW},
2855 {I_LAR, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+14520, IF_286|IF_PROT},
2856 {I_LAR, 2, {REG16,REG32,0,0,0}, nasm_bytecodes+14520, IF_386|IF_PROT},
2857 {I_LAR, 2, {REG16,REG64,0,0,0}, nasm_bytecodes+6826, IF_X64|IF_PROT},
2858 {I_LAR, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+14526, IF_386|IF_PROT|IF_SW},
2859 {I_LAR, 2, {REG32,REG16,0,0,0}, nasm_bytecodes+14526, IF_386|IF_PROT},
2860 {I_LAR, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+14526, IF_386|IF_PROT},
2861 {I_LAR, 2, {REG32,REG64,0,0,0}, nasm_bytecodes+6833, IF_X64|IF_PROT},
2862 {I_LAR, 2, {REG64,MEMORY,0,0,0}, nasm_bytecodes+14532, IF_X64|IF_PROT|IF_SW},
2863 {I_LAR, 2, {REG64,REG16,0,0,0}, nasm_bytecodes+14532, IF_X64|IF_PROT},
2864 {I_LAR, 2, {REG64,REG32,0,0,0}, nasm_bytecodes+14532, IF_X64|IF_PROT},
2865 {I_LAR, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+14532, IF_X64|IF_PROT},
2866 ITEMPLATE_END
2869 static const struct itemplate instrux_LDDQU[] = {
2870 {I_LDDQU, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+16236, IF_PRESCOTT|IF_SSE3|IF_SO},
2871 ITEMPLATE_END
2874 static const struct itemplate instrux_LDMXCSR[] = {
2875 {I_LDMXCSR, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+19290, IF_KATMAI|IF_SSE|IF_SD},
2876 ITEMPLATE_END
2879 static const struct itemplate instrux_LDS[] = {
2880 {I_LDS, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+18315, IF_8086|IF_NOLONG},
2881 {I_LDS, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+18320, IF_386|IF_NOLONG},
2882 ITEMPLATE_END
2885 static const struct itemplate instrux_LEA[] = {
2886 {I_LEA, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+18325, IF_8086},
2887 {I_LEA, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+18330, IF_386},
2888 {I_LEA, 2, {REG64,MEMORY,0,0,0}, nasm_bytecodes+18335, IF_X64},
2889 ITEMPLATE_END
2892 static const struct itemplate instrux_LEAVE[] = {
2893 {I_LEAVE, 0, {0,0,0,0,0}, nasm_bytecodes+18572, IF_186},
2894 ITEMPLATE_END
2897 static const struct itemplate instrux_LES[] = {
2898 {I_LES, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+18340, IF_8086|IF_NOLONG},
2899 {I_LES, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+18345, IF_386|IF_NOLONG},
2900 ITEMPLATE_END
2903 static const struct itemplate instrux_LFENCE[] = {
2904 {I_LFENCE, 0, {0,0,0,0,0}, nasm_bytecodes+18350, IF_X64|IF_AMD},
2905 {I_LFENCE, 0, {0,0,0,0,0}, nasm_bytecodes+18350, IF_WILLAMETTE|IF_SSE2},
2906 ITEMPLATE_END
2909 static const struct itemplate instrux_LFS[] = {
2910 {I_LFS, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+14538, IF_386},
2911 {I_LFS, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+14544, IF_386},
2912 ITEMPLATE_END
2915 static const struct itemplate instrux_LGDT[] = {
2916 {I_LGDT, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+18355, IF_286|IF_PRIV},
2917 ITEMPLATE_END
2920 static const struct itemplate instrux_LGS[] = {
2921 {I_LGS, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+14550, IF_386},
2922 {I_LGS, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+14556, IF_386},
2923 ITEMPLATE_END
2926 static const struct itemplate instrux_LIDT[] = {
2927 {I_LIDT, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+18360, IF_286|IF_PRIV},
2928 ITEMPLATE_END
2931 static const struct itemplate instrux_LLDT[] = {
2932 {I_LLDT, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+18365, IF_286|IF_PROT|IF_PRIV},
2933 {I_LLDT, 1, {MEMORY|BITS16,0,0,0,0}, nasm_bytecodes+18365, IF_286|IF_PROT|IF_PRIV},
2934 {I_LLDT, 1, {REG16,0,0,0,0}, nasm_bytecodes+18365, IF_286|IF_PROT|IF_PRIV},
2935 ITEMPLATE_END
2938 static const struct itemplate instrux_LMSW[] = {
2939 {I_LMSW, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+18370, IF_286|IF_PRIV},
2940 {I_LMSW, 1, {MEMORY|BITS16,0,0,0,0}, nasm_bytecodes+18370, IF_286|IF_PRIV},
2941 {I_LMSW, 1, {REG16,0,0,0,0}, nasm_bytecodes+18370, IF_286|IF_PRIV},
2942 ITEMPLATE_END
2945 static const struct itemplate instrux_LOADALL[] = {
2946 {I_LOADALL, 0, {0,0,0,0,0}, nasm_bytecodes+20021, IF_386|IF_UNDOC},
2947 ITEMPLATE_END
2950 static const struct itemplate instrux_LOADALL286[] = {
2951 {I_LOADALL286, 0, {0,0,0,0,0}, nasm_bytecodes+20025, IF_286|IF_UNDOC},
2952 ITEMPLATE_END
2955 static const struct itemplate instrux_LODSB[] = {
2956 {I_LODSB, 0, {0,0,0,0,0}, nasm_bytecodes+20455, IF_8086},
2957 ITEMPLATE_END
2960 static const struct itemplate instrux_LODSD[] = {
2961 {I_LODSD, 0, {0,0,0,0,0}, nasm_bytecodes+20029, IF_386},
2962 ITEMPLATE_END
2965 static const struct itemplate instrux_LODSQ[] = {
2966 {I_LODSQ, 0, {0,0,0,0,0}, nasm_bytecodes+20033, IF_X64},
2967 ITEMPLATE_END
2970 static const struct itemplate instrux_LODSW[] = {
2971 {I_LODSW, 0, {0,0,0,0,0}, nasm_bytecodes+20037, IF_8086},
2972 ITEMPLATE_END
2975 static const struct itemplate instrux_LOOP[] = {
2976 {I_LOOP, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+18375, IF_8086},
2977 {I_LOOP, 2, {IMMEDIATE,REG_CX,0,0,0}, nasm_bytecodes+18380, IF_8086|IF_NOLONG},
2978 {I_LOOP, 2, {IMMEDIATE,REG_ECX,0,0,0}, nasm_bytecodes+18385, IF_386},
2979 {I_LOOP, 2, {IMMEDIATE,REG_RCX,0,0,0}, nasm_bytecodes+18390, IF_X64},
2980 ITEMPLATE_END
2983 static const struct itemplate instrux_LOOPE[] = {
2984 {I_LOOPE, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+18395, IF_8086},
2985 {I_LOOPE, 2, {IMMEDIATE,REG_CX,0,0,0}, nasm_bytecodes+18400, IF_8086|IF_NOLONG},
2986 {I_LOOPE, 2, {IMMEDIATE,REG_ECX,0,0,0}, nasm_bytecodes+18405, IF_386},
2987 {I_LOOPE, 2, {IMMEDIATE,REG_RCX,0,0,0}, nasm_bytecodes+18410, IF_X64},
2988 ITEMPLATE_END
2991 static const struct itemplate instrux_LOOPNE[] = {
2992 {I_LOOPNE, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+18415, IF_8086},
2993 {I_LOOPNE, 2, {IMMEDIATE,REG_CX,0,0,0}, nasm_bytecodes+18420, IF_8086|IF_NOLONG},
2994 {I_LOOPNE, 2, {IMMEDIATE,REG_ECX,0,0,0}, nasm_bytecodes+18425, IF_386},
2995 {I_LOOPNE, 2, {IMMEDIATE,REG_RCX,0,0,0}, nasm_bytecodes+18430, IF_X64},
2996 ITEMPLATE_END
2999 static const struct itemplate instrux_LOOPNZ[] = {
3000 {I_LOOPNZ, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+18415, IF_8086},
3001 {I_LOOPNZ, 2, {IMMEDIATE,REG_CX,0,0,0}, nasm_bytecodes+18420, IF_8086|IF_NOLONG},
3002 {I_LOOPNZ, 2, {IMMEDIATE,REG_ECX,0,0,0}, nasm_bytecodes+18425, IF_386},
3003 {I_LOOPNZ, 2, {IMMEDIATE,REG_RCX,0,0,0}, nasm_bytecodes+18430, IF_X64},
3004 ITEMPLATE_END
3007 static const struct itemplate instrux_LOOPZ[] = {
3008 {I_LOOPZ, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+18395, IF_8086},
3009 {I_LOOPZ, 2, {IMMEDIATE,REG_CX,0,0,0}, nasm_bytecodes+18400, IF_8086|IF_NOLONG},
3010 {I_LOOPZ, 2, {IMMEDIATE,REG_ECX,0,0,0}, nasm_bytecodes+18405, IF_386},
3011 {I_LOOPZ, 2, {IMMEDIATE,REG_RCX,0,0,0}, nasm_bytecodes+18410, IF_X64},
3012 ITEMPLATE_END
3015 static const struct itemplate instrux_LSL[] = {
3016 {I_LSL, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+14562, IF_286|IF_PROT|IF_SW},
3017 {I_LSL, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+14562, IF_286|IF_PROT},
3018 {I_LSL, 2, {REG16,REG32,0,0,0}, nasm_bytecodes+14562, IF_386|IF_PROT},
3019 {I_LSL, 2, {REG16,REG64,0,0,0}, nasm_bytecodes+6840, IF_X64|IF_PROT},
3020 {I_LSL, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+14568, IF_386|IF_PROT|IF_SW},
3021 {I_LSL, 2, {REG32,REG16,0,0,0}, nasm_bytecodes+14568, IF_386|IF_PROT},
3022 {I_LSL, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+14568, IF_386|IF_PROT},
3023 {I_LSL, 2, {REG32,REG64,0,0,0}, nasm_bytecodes+6847, IF_X64|IF_PROT},
3024 {I_LSL, 2, {REG64,MEMORY,0,0,0}, nasm_bytecodes+14574, IF_X64|IF_PROT|IF_SW},
3025 {I_LSL, 2, {REG64,REG16,0,0,0}, nasm_bytecodes+14574, IF_X64|IF_PROT},
3026 {I_LSL, 2, {REG64,REG32,0,0,0}, nasm_bytecodes+14574, IF_X64|IF_PROT},
3027 {I_LSL, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+14574, IF_X64|IF_PROT},
3028 ITEMPLATE_END
3031 static const struct itemplate instrux_LSS[] = {
3032 {I_LSS, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+14580, IF_386},
3033 {I_LSS, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+14586, IF_386},
3034 ITEMPLATE_END
3037 static const struct itemplate instrux_LTR[] = {
3038 {I_LTR, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+18435, IF_286|IF_PROT|IF_PRIV},
3039 {I_LTR, 1, {MEMORY|BITS16,0,0,0,0}, nasm_bytecodes+18435, IF_286|IF_PROT|IF_PRIV},
3040 {I_LTR, 1, {REG16,0,0,0,0}, nasm_bytecodes+18435, IF_286|IF_PROT|IF_PRIV},
3041 ITEMPLATE_END
3044 static const struct itemplate instrux_LZCNT[] = {
3045 {I_LZCNT, 2, {REG16,RM_GPR|BITS16,0,0,0}, nasm_bytecodes+7897, IF_P6|IF_AMD},
3046 {I_LZCNT, 2, {REG32,RM_GPR|BITS32,0,0,0}, nasm_bytecodes+7904, IF_P6|IF_AMD},
3047 {I_LZCNT, 2, {REG64,RM_GPR|BITS64,0,0,0}, nasm_bytecodes+7911, IF_X64|IF_AMD},
3048 ITEMPLATE_END
3051 static const struct itemplate instrux_MASKMOVDQU[] = {
3052 {I_MASKMOVDQU, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+15492, IF_WILLAMETTE|IF_SSE2},
3053 ITEMPLATE_END
3056 static const struct itemplate instrux_MASKMOVQ[] = {
3057 {I_MASKMOVQ, 2, {MMXREG,MMXREG,0,0,0}, nasm_bytecodes+15474, IF_KATMAI|IF_MMX},
3058 ITEMPLATE_END
3061 static const struct itemplate instrux_MAXPD[] = {
3062 {I_MAXPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16044, IF_WILLAMETTE|IF_SSE2|IF_SO},
3063 ITEMPLATE_END
3066 static const struct itemplate instrux_MAXPS[] = {
3067 {I_MAXPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15270, IF_KATMAI|IF_SSE},
3068 ITEMPLATE_END
3071 static const struct itemplate instrux_MAXSD[] = {
3072 {I_MAXSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16050, IF_WILLAMETTE|IF_SSE2},
3073 ITEMPLATE_END
3076 static const struct itemplate instrux_MAXSS[] = {
3077 {I_MAXSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15276, IF_KATMAI|IF_SSE},
3078 ITEMPLATE_END
3081 static const struct itemplate instrux_MFENCE[] = {
3082 {I_MFENCE, 0, {0,0,0,0,0}, nasm_bytecodes+18440, IF_X64|IF_AMD},
3083 {I_MFENCE, 0, {0,0,0,0,0}, nasm_bytecodes+18440, IF_WILLAMETTE|IF_SSE2},
3084 ITEMPLATE_END
3087 static const struct itemplate instrux_MINPD[] = {
3088 {I_MINPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16056, IF_WILLAMETTE|IF_SSE2|IF_SO},
3089 ITEMPLATE_END
3092 static const struct itemplate instrux_MINPS[] = {
3093 {I_MINPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15282, IF_KATMAI|IF_SSE},
3094 ITEMPLATE_END
3097 static const struct itemplate instrux_MINSD[] = {
3098 {I_MINSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16062, IF_WILLAMETTE|IF_SSE2},
3099 ITEMPLATE_END
3102 static const struct itemplate instrux_MINSS[] = {
3103 {I_MINSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15288, IF_KATMAI|IF_SSE},
3104 ITEMPLATE_END
3107 static const struct itemplate instrux_MONITOR[] = {
3108 {I_MONITOR, 0, {0,0,0,0,0}, nasm_bytecodes+18445, IF_PRESCOTT},
3109 {I_MONITOR, 3, {REG_EAX,REG_ECX,REG_EDX,0,0}, nasm_bytecodes+18445, IF_PRESCOTT},
3110 ITEMPLATE_END
3113 static const struct itemplate instrux_MONTMUL[] = {
3114 {I_MONTMUL, 0, {0,0,0,0,0}, nasm_bytecodes+16338, IF_PENT|IF_CYRIX},
3115 ITEMPLATE_END
3118 static const struct itemplate instrux_MOV[] = {
3119 {I_MOV, 2, {MEMORY,REG_SREG,0,0,0}, nasm_bytecodes+18456, IF_8086|IF_SM},
3120 {I_MOV, 2, {REG16,REG_SREG,0,0,0}, nasm_bytecodes+18450, IF_8086},
3121 {I_MOV, 2, {REG32,REG_SREG,0,0,0}, nasm_bytecodes+18455, IF_386},
3122 {I_MOV, 2, {REG_SREG,MEMORY,0,0,0}, nasm_bytecodes+20041, IF_8086|IF_SM},
3123 {I_MOV, 2, {REG_SREG,REG16,0,0,0}, nasm_bytecodes+20041, IF_8086},
3124 {I_MOV, 2, {REG_SREG,REG32,0,0,0}, nasm_bytecodes+20041, IF_386},
3125 {I_MOV, 2, {REG_AL,MEM_OFFS,0,0,0}, nasm_bytecodes+20045, IF_8086|IF_SM},
3126 {I_MOV, 2, {REG_AX,MEM_OFFS,0,0,0}, nasm_bytecodes+18460, IF_8086|IF_SM},
3127 {I_MOV, 2, {REG_EAX,MEM_OFFS,0,0,0}, nasm_bytecodes+18465, IF_386|IF_SM},
3128 {I_MOV, 2, {REG_RAX,MEM_OFFS,0,0,0}, nasm_bytecodes+18470, IF_X64|IF_SM},
3129 {I_MOV, 2, {MEM_OFFS,REG_AL,0,0,0}, nasm_bytecodes+20049, IF_8086|IF_SM},
3130 {I_MOV, 2, {MEM_OFFS,REG_AX,0,0,0}, nasm_bytecodes+18475, IF_8086|IF_SM},
3131 {I_MOV, 2, {MEM_OFFS,REG_EAX,0,0,0}, nasm_bytecodes+18480, IF_386|IF_SM},
3132 {I_MOV, 2, {MEM_OFFS,REG_RAX,0,0,0}, nasm_bytecodes+18485, IF_X64|IF_SM},
3133 {I_MOV, 2, {REG32,REG_CREG,0,0,0}, nasm_bytecodes+14592, IF_386|IF_PRIV|IF_NOLONG},
3134 {I_MOV, 2, {REG64,REG_CREG,0,0,0}, nasm_bytecodes+14598, IF_X64|IF_PRIV},
3135 {I_MOV, 2, {REG_CREG,REG32,0,0,0}, nasm_bytecodes+14604, IF_386|IF_PRIV|IF_NOLONG},
3136 {I_MOV, 2, {REG_CREG,REG64,0,0,0}, nasm_bytecodes+14610, IF_X64|IF_PRIV},
3137 {I_MOV, 2, {REG32,REG_DREG,0,0,0}, nasm_bytecodes+14617, IF_386|IF_PRIV|IF_NOLONG},
3138 {I_MOV, 2, {REG64,REG_DREG,0,0,0}, nasm_bytecodes+14616, IF_X64|IF_PRIV},
3139 {I_MOV, 2, {REG_DREG,REG32,0,0,0}, nasm_bytecodes+14623, IF_386|IF_PRIV|IF_NOLONG},
3140 {I_MOV, 2, {REG_DREG,REG64,0,0,0}, nasm_bytecodes+14622, IF_X64|IF_PRIV},
3141 {I_MOV, 2, {REG32,REG_TREG,0,0,0}, nasm_bytecodes+18490, IF_386|IF_NOLONG},
3142 {I_MOV, 2, {REG_TREG,REG32,0,0,0}, nasm_bytecodes+18495, IF_386|IF_NOLONG},
3143 {I_MOV, 2, {MEMORY,REG8,0,0,0}, nasm_bytecodes+20053, IF_8086|IF_SM},
3144 {I_MOV, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+20053, IF_8086},
3145 {I_MOV, 2, {MEMORY,REG16,0,0,0}, nasm_bytecodes+18500, IF_8086|IF_SM},
3146 {I_MOV, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+18500, IF_8086},
3147 {I_MOV, 2, {MEMORY,REG32,0,0,0}, nasm_bytecodes+18505, IF_386|IF_SM},
3148 {I_MOV, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+18505, IF_386},
3149 {I_MOV, 2, {MEMORY,REG64,0,0,0}, nasm_bytecodes+18510, IF_X64|IF_SM},
3150 {I_MOV, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+18510, IF_X64},
3151 {I_MOV, 2, {REG8,MEMORY,0,0,0}, nasm_bytecodes+20057, IF_8086|IF_SM},
3152 {I_MOV, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+20057, IF_8086},
3153 {I_MOV, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+18515, IF_8086|IF_SM},
3154 {I_MOV, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+18515, IF_8086},
3155 {I_MOV, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+18520, IF_386|IF_SM},
3156 {I_MOV, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+18520, IF_386},
3157 {I_MOV, 2, {REG64,MEMORY,0,0,0}, nasm_bytecodes+18525, IF_X64|IF_SM},
3158 {I_MOV, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+18525, IF_X64},
3159 {I_MOV, 2, {REG8,IMMEDIATE,0,0,0}, nasm_bytecodes+20061, IF_8086|IF_SM},
3160 {I_MOV, 2, {REG16,IMMEDIATE,0,0,0}, nasm_bytecodes+18530, IF_8086|IF_SM},
3161 {I_MOV, 2, {REG32,IMMEDIATE,0,0,0}, nasm_bytecodes+18535, IF_386|IF_SM},
3162 {I_MOV, 2, {REG64,IMMEDIATE,0,0,0}, nasm_bytecodes+18540, IF_X64|IF_SM},
3163 {I_MOV, 2, {REG64,IMMEDIATE|BITS32,0,0,0}, nasm_bytecodes+14628, IF_X64},
3164 {I_MOV, 2, {RM_GPR|BITS8,IMMEDIATE,0,0,0}, nasm_bytecodes+18545, IF_8086|IF_SM},
3165 {I_MOV, 2, {RM_GPR|BITS16,IMMEDIATE,0,0,0}, nasm_bytecodes+14634, IF_8086|IF_SM},
3166 {I_MOV, 2, {RM_GPR|BITS32,IMMEDIATE,0,0,0}, nasm_bytecodes+14640, IF_386|IF_SM},
3167 {I_MOV, 2, {RM_GPR|BITS64,IMMEDIATE,0,0,0}, nasm_bytecodes+14628, IF_X64|IF_SM},
3168 {I_MOV, 2, {MEMORY,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+18545, IF_8086|IF_SM},
3169 {I_MOV, 2, {MEMORY,IMMEDIATE|BITS16,0,0,0}, nasm_bytecodes+14634, IF_8086|IF_SM},
3170 {I_MOV, 2, {MEMORY,IMMEDIATE|BITS32,0,0,0}, nasm_bytecodes+14640, IF_386|IF_SM},
3171 ITEMPLATE_END
3174 static const struct itemplate instrux_MOVAPD[] = {
3175 {I_MOVAPD, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+16068, IF_WILLAMETTE|IF_SSE2},
3176 {I_MOVAPD, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+16074, IF_WILLAMETTE|IF_SSE2},
3177 {I_MOVAPD, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+16074, IF_WILLAMETTE|IF_SSE2|IF_SO},
3178 {I_MOVAPD, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+16068, IF_WILLAMETTE|IF_SSE2|IF_SO},
3179 ITEMPLATE_END
3182 static const struct itemplate instrux_MOVAPS[] = {
3183 {I_MOVAPS, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+15294, IF_KATMAI|IF_SSE},
3184 {I_MOVAPS, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+15300, IF_KATMAI|IF_SSE},
3185 {I_MOVAPS, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+15294, IF_KATMAI|IF_SSE},
3186 {I_MOVAPS, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+15300, IF_KATMAI|IF_SSE},
3187 ITEMPLATE_END
3190 static const struct itemplate instrux_MOVBE[] = {
3191 {I_MOVBE, 2, {REG16,MEMORY|BITS16,0,0,0}, nasm_bytecodes+9115, IF_NEHALEM|IF_SM},
3192 {I_MOVBE, 2, {REG32,MEMORY|BITS32,0,0,0}, nasm_bytecodes+9122, IF_NEHALEM|IF_SM},
3193 {I_MOVBE, 2, {REG64,MEMORY|BITS64,0,0,0}, nasm_bytecodes+9129, IF_NEHALEM|IF_SM},
3194 {I_MOVBE, 2, {MEMORY|BITS16,REG16,0,0,0}, nasm_bytecodes+9136, IF_NEHALEM|IF_SM},
3195 {I_MOVBE, 2, {MEMORY|BITS32,REG32,0,0,0}, nasm_bytecodes+9143, IF_NEHALEM|IF_SM},
3196 {I_MOVBE, 2, {MEMORY|BITS64,REG64,0,0,0}, nasm_bytecodes+9150, IF_NEHALEM|IF_SM},
3197 ITEMPLATE_END
3200 static const struct itemplate instrux_MOVD[] = {
3201 {I_MOVD, 2, {MMXREG,MEMORY,0,0,0}, nasm_bytecodes+14646, IF_PENT|IF_MMX|IF_SD},
3202 {I_MOVD, 2, {MMXREG,REG32,0,0,0}, nasm_bytecodes+14646, IF_PENT|IF_MMX},
3203 {I_MOVD, 2, {MEMORY,MMXREG,0,0,0}, nasm_bytecodes+14652, IF_PENT|IF_MMX|IF_SD},
3204 {I_MOVD, 2, {REG32,MMXREG,0,0,0}, nasm_bytecodes+14652, IF_PENT|IF_MMX},
3205 {I_MOVD, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+6854, IF_X64|IF_SD},
3206 {I_MOVD, 2, {XMMREG,REG32,0,0,0}, nasm_bytecodes+6854, IF_X64},
3207 {I_MOVD, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+6861, IF_X64|IF_SD},
3208 {I_MOVD, 2, {REG32,XMMREG,0,0,0}, nasm_bytecodes+6861, IF_X64|IF_SSE},
3209 {I_MOVD, 2, {XMMREG,REG32,0,0,0}, nasm_bytecodes+15510, IF_WILLAMETTE|IF_SSE2},
3210 {I_MOVD, 2, {REG32,XMMREG,0,0,0}, nasm_bytecodes+15516, IF_WILLAMETTE|IF_SSE2},
3211 {I_MOVD, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+15516, IF_WILLAMETTE|IF_SSE2|IF_SD},
3212 {I_MOVD, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+15510, IF_WILLAMETTE|IF_SSE2|IF_SD},
3213 ITEMPLATE_END
3216 static const struct itemplate instrux_MOVDDUP[] = {
3217 {I_MOVDDUP, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16242, IF_PRESCOTT|IF_SSE3},
3218 ITEMPLATE_END
3221 static const struct itemplate instrux_MOVDQ2Q[] = {
3222 {I_MOVDQ2Q, 2, {MMXREG,XMMREG,0,0,0}, nasm_bytecodes+15546, IF_WILLAMETTE|IF_SSE2},
3223 ITEMPLATE_END
3226 static const struct itemplate instrux_MOVDQA[] = {
3227 {I_MOVDQA, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+15522, IF_WILLAMETTE|IF_SSE2},
3228 {I_MOVDQA, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+15528, IF_WILLAMETTE|IF_SSE2|IF_SO},
3229 {I_MOVDQA, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+15522, IF_WILLAMETTE|IF_SSE2|IF_SO},
3230 {I_MOVDQA, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+15528, IF_WILLAMETTE|IF_SSE2},
3231 ITEMPLATE_END
3234 static const struct itemplate instrux_MOVDQU[] = {
3235 {I_MOVDQU, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+15534, IF_WILLAMETTE|IF_SSE2},
3236 {I_MOVDQU, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+15540, IF_WILLAMETTE|IF_SSE2|IF_SO},
3237 {I_MOVDQU, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+15534, IF_WILLAMETTE|IF_SSE2|IF_SO},
3238 {I_MOVDQU, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+15540, IF_WILLAMETTE|IF_SSE2},
3239 ITEMPLATE_END
3242 static const struct itemplate instrux_MOVHLPS[] = {
3243 {I_MOVHLPS, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+15126, IF_KATMAI|IF_SSE},
3244 ITEMPLATE_END
3247 static const struct itemplate instrux_MOVHPD[] = {
3248 {I_MOVHPD, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+16080, IF_WILLAMETTE|IF_SSE2},
3249 {I_MOVHPD, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+16086, IF_WILLAMETTE|IF_SSE2},
3250 ITEMPLATE_END
3253 static const struct itemplate instrux_MOVHPS[] = {
3254 {I_MOVHPS, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+15306, IF_KATMAI|IF_SSE},
3255 {I_MOVHPS, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+15312, IF_KATMAI|IF_SSE},
3256 ITEMPLATE_END
3259 static const struct itemplate instrux_MOVLHPS[] = {
3260 {I_MOVLHPS, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+15306, IF_KATMAI|IF_SSE},
3261 ITEMPLATE_END
3264 static const struct itemplate instrux_MOVLPD[] = {
3265 {I_MOVLPD, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+16092, IF_WILLAMETTE|IF_SSE2},
3266 {I_MOVLPD, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+16098, IF_WILLAMETTE|IF_SSE2},
3267 ITEMPLATE_END
3270 static const struct itemplate instrux_MOVLPS[] = {
3271 {I_MOVLPS, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+15126, IF_KATMAI|IF_SSE},
3272 {I_MOVLPS, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+15318, IF_KATMAI|IF_SSE},
3273 ITEMPLATE_END
3276 static const struct itemplate instrux_MOVMSKPD[] = {
3277 {I_MOVMSKPD, 2, {REG32,XMMREG,0,0,0}, nasm_bytecodes+16104, IF_WILLAMETTE|IF_SSE2},
3278 {I_MOVMSKPD, 2, {REG64,XMMREG,0,0,0}, nasm_bytecodes+7659, IF_X64|IF_SSE2},
3279 ITEMPLATE_END
3282 static const struct itemplate instrux_MOVMSKPS[] = {
3283 {I_MOVMSKPS, 2, {REG32,XMMREG,0,0,0}, nasm_bytecodes+15324, IF_KATMAI|IF_SSE},
3284 {I_MOVMSKPS, 2, {REG64,XMMREG,0,0,0}, nasm_bytecodes+7400, IF_X64|IF_SSE},
3285 ITEMPLATE_END
3288 static const struct itemplate instrux_MOVNTDQ[] = {
3289 {I_MOVNTDQ, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+15498, IF_WILLAMETTE|IF_SSE2|IF_SO},
3290 ITEMPLATE_END
3293 static const struct itemplate instrux_MOVNTDQA[] = {
3294 {I_MOVNTDQA, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+7932, IF_SSE41},
3295 ITEMPLATE_END
3298 static const struct itemplate instrux_MOVNTI[] = {
3299 {I_MOVNTI, 2, {MEMORY,REG32,0,0,0}, nasm_bytecodes+7485, IF_WILLAMETTE|IF_SD},
3300 {I_MOVNTI, 2, {MEMORY,REG64,0,0,0}, nasm_bytecodes+7484, IF_X64|IF_SQ},
3301 ITEMPLATE_END
3304 static const struct itemplate instrux_MOVNTPD[] = {
3305 {I_MOVNTPD, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+15504, IF_WILLAMETTE|IF_SSE2|IF_SO},
3306 ITEMPLATE_END
3309 static const struct itemplate instrux_MOVNTPS[] = {
3310 {I_MOVNTPS, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+15330, IF_KATMAI|IF_SSE},
3311 ITEMPLATE_END
3314 static const struct itemplate instrux_MOVNTQ[] = {
3315 {I_MOVNTQ, 2, {MEMORY,MMXREG,0,0,0}, nasm_bytecodes+15480, IF_KATMAI|IF_MMX|IF_SQ},
3316 ITEMPLATE_END
3319 static const struct itemplate instrux_MOVNTSD[] = {
3320 {I_MOVNTSD, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+16284, IF_SSE4A|IF_AMD|IF_SQ},
3321 ITEMPLATE_END
3324 static const struct itemplate instrux_MOVNTSS[] = {
3325 {I_MOVNTSS, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+16290, IF_SSE4A|IF_AMD|IF_SD},
3326 ITEMPLATE_END
3329 static const struct itemplate instrux_MOVQ[] = {
3330 {I_MOVQ, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+6868, IF_PENT|IF_MMX|IF_SQ},
3331 {I_MOVQ, 2, {RM_MMX,MMXREG,0,0,0}, nasm_bytecodes+6875, IF_PENT|IF_MMX|IF_SQ},
3332 {I_MOVQ, 2, {MMXREG,RM_GPR|BITS64,0,0,0}, nasm_bytecodes+14646, IF_X64|IF_MMX},
3333 {I_MOVQ, 2, {RM_GPR|BITS64,MMXREG,0,0,0}, nasm_bytecodes+14652, IF_X64|IF_MMX},
3334 {I_MOVQ, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+15552, IF_WILLAMETTE|IF_SSE2},
3335 {I_MOVQ, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+15558, IF_WILLAMETTE|IF_SSE2},
3336 {I_MOVQ, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+15558, IF_WILLAMETTE|IF_SSE2|IF_SQ},
3337 {I_MOVQ, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+15552, IF_WILLAMETTE|IF_SSE2|IF_SQ},
3338 {I_MOVQ, 2, {XMMREG,RM_GPR|BITS64,0,0,0}, nasm_bytecodes+7491, IF_X64|IF_SSE2},
3339 {I_MOVQ, 2, {RM_GPR|BITS64,XMMREG,0,0,0}, nasm_bytecodes+7498, IF_X64|IF_SSE2},
3340 ITEMPLATE_END
3343 static const struct itemplate instrux_MOVQ2DQ[] = {
3344 {I_MOVQ2DQ, 2, {XMMREG,MMXREG,0,0,0}, nasm_bytecodes+15564, IF_WILLAMETTE|IF_SSE2},
3345 ITEMPLATE_END
3348 static const struct itemplate instrux_MOVSB[] = {
3349 {I_MOVSB, 0, {0,0,0,0,0}, nasm_bytecodes+5164, IF_8086},
3350 ITEMPLATE_END
3353 static const struct itemplate instrux_MOVSD[] = {
3354 {I_MOVSD, 0, {0,0,0,0,0}, nasm_bytecodes+20065, IF_386},
3355 {I_MOVSD, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+16110, IF_WILLAMETTE|IF_SSE2},
3356 {I_MOVSD, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+16116, IF_WILLAMETTE|IF_SSE2},
3357 {I_MOVSD, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+16116, IF_WILLAMETTE|IF_SSE2},
3358 {I_MOVSD, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+16110, IF_WILLAMETTE|IF_SSE2},
3359 ITEMPLATE_END
3362 static const struct itemplate instrux_MOVSHDUP[] = {
3363 {I_MOVSHDUP, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16248, IF_PRESCOTT|IF_SSE3},
3364 ITEMPLATE_END
3367 static const struct itemplate instrux_MOVSLDUP[] = {
3368 {I_MOVSLDUP, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16254, IF_PRESCOTT|IF_SSE3},
3369 ITEMPLATE_END
3372 static const struct itemplate instrux_MOVSQ[] = {
3373 {I_MOVSQ, 0, {0,0,0,0,0}, nasm_bytecodes+20069, IF_X64},
3374 ITEMPLATE_END
3377 static const struct itemplate instrux_MOVSS[] = {
3378 {I_MOVSS, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+15336, IF_KATMAI|IF_SSE},
3379 {I_MOVSS, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+15342, IF_KATMAI|IF_SSE},
3380 {I_MOVSS, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+15336, IF_KATMAI|IF_SSE},
3381 {I_MOVSS, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+15342, IF_KATMAI|IF_SSE},
3382 ITEMPLATE_END
3385 static const struct itemplate instrux_MOVSW[] = {
3386 {I_MOVSW, 0, {0,0,0,0,0}, nasm_bytecodes+20073, IF_8086},
3387 ITEMPLATE_END
3390 static const struct itemplate instrux_MOVSX[] = {
3391 {I_MOVSX, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+14658, IF_386|IF_SB},
3392 {I_MOVSX, 2, {REG16,REG8,0,0,0}, nasm_bytecodes+14658, IF_386},
3393 {I_MOVSX, 2, {REG32,RM_GPR|BITS8,0,0,0}, nasm_bytecodes+14664, IF_386},
3394 {I_MOVSX, 2, {REG32,RM_GPR|BITS16,0,0,0}, nasm_bytecodes+14670, IF_386},
3395 {I_MOVSX, 2, {REG64,RM_GPR|BITS8,0,0,0}, nasm_bytecodes+14676, IF_X64},
3396 {I_MOVSX, 2, {REG64,RM_GPR|BITS16,0,0,0}, nasm_bytecodes+14682, IF_X64},
3397 {I_MOVSX, 2, {REG64,RM_GPR|BITS32,0,0,0}, nasm_bytecodes+18550, IF_X64},
3398 ITEMPLATE_END
3401 static const struct itemplate instrux_MOVSXD[] = {
3402 {I_MOVSXD, 2, {REG64,RM_GPR|BITS32,0,0,0}, nasm_bytecodes+18550, IF_X64},
3403 ITEMPLATE_END
3406 static const struct itemplate instrux_MOVUPD[] = {
3407 {I_MOVUPD, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+16122, IF_WILLAMETTE|IF_SSE2},
3408 {I_MOVUPD, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+16128, IF_WILLAMETTE|IF_SSE2},
3409 {I_MOVUPD, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+16128, IF_WILLAMETTE|IF_SSE2|IF_SO},
3410 {I_MOVUPD, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+16122, IF_WILLAMETTE|IF_SSE2|IF_SO},
3411 ITEMPLATE_END
3414 static const struct itemplate instrux_MOVUPS[] = {
3415 {I_MOVUPS, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+15348, IF_KATMAI|IF_SSE},
3416 {I_MOVUPS, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+15354, IF_KATMAI|IF_SSE},
3417 {I_MOVUPS, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+15348, IF_KATMAI|IF_SSE},
3418 {I_MOVUPS, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+15354, IF_KATMAI|IF_SSE},
3419 ITEMPLATE_END
3422 static const struct itemplate instrux_MOVZX[] = {
3423 {I_MOVZX, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+14688, IF_386|IF_SB},
3424 {I_MOVZX, 2, {REG16,REG8,0,0,0}, nasm_bytecodes+14688, IF_386},
3425 {I_MOVZX, 2, {REG32,RM_GPR|BITS8,0,0,0}, nasm_bytecodes+14694, IF_386},
3426 {I_MOVZX, 2, {REG32,RM_GPR|BITS16,0,0,0}, nasm_bytecodes+14700, IF_386},
3427 {I_MOVZX, 2, {REG64,RM_GPR|BITS8,0,0,0}, nasm_bytecodes+14706, IF_X64},
3428 {I_MOVZX, 2, {REG64,RM_GPR|BITS16,0,0,0}, nasm_bytecodes+14712, IF_X64},
3429 ITEMPLATE_END
3432 static const struct itemplate instrux_MPSADBW[] = {
3433 {I_MPSADBW, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5647, IF_SSE41},
3434 ITEMPLATE_END
3437 static const struct itemplate instrux_MUL[] = {
3438 {I_MUL, 1, {RM_GPR|BITS8,0,0,0,0}, nasm_bytecodes+20077, IF_8086},
3439 {I_MUL, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+18555, IF_8086},
3440 {I_MUL, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+18560, IF_386},
3441 {I_MUL, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+18565, IF_X64},
3442 ITEMPLATE_END
3445 static const struct itemplate instrux_MULPD[] = {
3446 {I_MULPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16134, IF_WILLAMETTE|IF_SSE2|IF_SO},
3447 ITEMPLATE_END
3450 static const struct itemplate instrux_MULPS[] = {
3451 {I_MULPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15360, IF_KATMAI|IF_SSE},
3452 ITEMPLATE_END
3455 static const struct itemplate instrux_MULSD[] = {
3456 {I_MULSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16140, IF_WILLAMETTE|IF_SSE2},
3457 ITEMPLATE_END
3460 static const struct itemplate instrux_MULSS[] = {
3461 {I_MULSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15366, IF_KATMAI|IF_SSE},
3462 ITEMPLATE_END
3465 static const struct itemplate instrux_MWAIT[] = {
3466 {I_MWAIT, 0, {0,0,0,0,0}, nasm_bytecodes+18570, IF_PRESCOTT},
3467 {I_MWAIT, 2, {REG_EAX,REG_ECX,0,0,0}, nasm_bytecodes+18570, IF_PRESCOTT},
3468 ITEMPLATE_END
3471 static const struct itemplate instrux_NEG[] = {
3472 {I_NEG, 1, {RM_GPR|BITS8,0,0,0,0}, nasm_bytecodes+20081, IF_8086},
3473 {I_NEG, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+18575, IF_8086},
3474 {I_NEG, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+18580, IF_386},
3475 {I_NEG, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+18585, IF_X64},
3476 ITEMPLATE_END
3479 static const struct itemplate instrux_NOP[] = {
3480 {I_NOP, 0, {0,0,0,0,0}, nasm_bytecodes+20085, IF_8086},
3481 {I_NOP, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+14718, IF_P6},
3482 {I_NOP, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+14724, IF_P6},
3483 {I_NOP, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+14730, IF_X64},
3484 ITEMPLATE_END
3487 static const struct itemplate instrux_NOT[] = {
3488 {I_NOT, 1, {RM_GPR|BITS8,0,0,0,0}, nasm_bytecodes+20089, IF_8086},
3489 {I_NOT, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+18590, IF_8086},
3490 {I_NOT, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+18595, IF_386},
3491 {I_NOT, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+18600, IF_X64},
3492 ITEMPLATE_END
3495 static const struct itemplate instrux_OR[] = {
3496 {I_OR, 2, {MEMORY,REG8,0,0,0}, nasm_bytecodes+20093, IF_8086|IF_SM},
3497 {I_OR, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+20093, IF_8086},
3498 {I_OR, 2, {MEMORY,REG16,0,0,0}, nasm_bytecodes+18605, IF_8086|IF_SM},
3499 {I_OR, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+18605, IF_8086},
3500 {I_OR, 2, {MEMORY,REG32,0,0,0}, nasm_bytecodes+18610, IF_386|IF_SM},
3501 {I_OR, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+18610, IF_386},
3502 {I_OR, 2, {MEMORY,REG64,0,0,0}, nasm_bytecodes+18615, IF_X64|IF_SM},
3503 {I_OR, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+18615, IF_X64},
3504 {I_OR, 2, {REG8,MEMORY,0,0,0}, nasm_bytecodes+11855, IF_8086|IF_SM},
3505 {I_OR, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+11855, IF_8086},
3506 {I_OR, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+18620, IF_8086|IF_SM},
3507 {I_OR, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+18620, IF_8086},
3508 {I_OR, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+18625, IF_386|IF_SM},
3509 {I_OR, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+18625, IF_386},
3510 {I_OR, 2, {REG64,MEMORY,0,0,0}, nasm_bytecodes+18630, IF_X64|IF_SM},
3511 {I_OR, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+18630, IF_X64},
3512 {I_OR, 2, {RM_GPR|BITS16,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+14736, IF_8086},
3513 {I_OR, 2, {RM_GPR|BITS32,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+14742, IF_386},
3514 {I_OR, 2, {RM_GPR|BITS64,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+14748, IF_X64},
3515 {I_OR, 2, {REG_AL,IMMEDIATE,0,0,0}, nasm_bytecodes+20097, IF_8086|IF_SM},
3516 {I_OR, 2, {REG_AX,SBYTE16,0,0,0}, nasm_bytecodes+14736, IF_8086|IF_SM},
3517 {I_OR, 2, {REG_AX,IMMEDIATE,0,0,0}, nasm_bytecodes+18635, IF_8086|IF_SM},
3518 {I_OR, 2, {REG_EAX,SBYTE32,0,0,0}, nasm_bytecodes+14742, IF_386|IF_SM},
3519 {I_OR, 2, {REG_EAX,IMMEDIATE,0,0,0}, nasm_bytecodes+18640, IF_386|IF_SM},
3520 {I_OR, 2, {REG_RAX,SBYTE64,0,0,0}, nasm_bytecodes+14748, IF_X64|IF_SM},
3521 {I_OR, 2, {REG_RAX,IMMEDIATE,0,0,0}, nasm_bytecodes+18645, IF_X64|IF_SM},
3522 {I_OR, 2, {RM_GPR|BITS8,IMMEDIATE,0,0,0}, nasm_bytecodes+18650, IF_8086|IF_SM},
3523 {I_OR, 2, {RM_GPR|BITS16,IMMEDIATE,0,0,0}, nasm_bytecodes+14754, IF_8086|IF_SM},
3524 {I_OR, 2, {RM_GPR|BITS32,IMMEDIATE,0,0,0}, nasm_bytecodes+14760, IF_386|IF_SM},
3525 {I_OR, 2, {RM_GPR|BITS64,IMMEDIATE,0,0,0}, nasm_bytecodes+14766, IF_X64|IF_SM},
3526 {I_OR, 2, {MEMORY,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+18650, IF_8086|IF_SM},
3527 {I_OR, 2, {MEMORY,IMMEDIATE|BITS16,0,0,0}, nasm_bytecodes+14754, IF_8086|IF_SM},
3528 {I_OR, 2, {MEMORY,IMMEDIATE|BITS32,0,0,0}, nasm_bytecodes+14760, IF_386|IF_SM},
3529 ITEMPLATE_END
3532 static const struct itemplate instrux_ORPD[] = {
3533 {I_ORPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16146, IF_WILLAMETTE|IF_SSE2|IF_SO},
3534 ITEMPLATE_END
3537 static const struct itemplate instrux_ORPS[] = {
3538 {I_ORPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15372, IF_KATMAI|IF_SSE},
3539 ITEMPLATE_END
3542 static const struct itemplate instrux_OUT[] = {
3543 {I_OUT, 2, {IMMEDIATE,REG_AL,0,0,0}, nasm_bytecodes+20101, IF_8086|IF_SB},
3544 {I_OUT, 2, {IMMEDIATE,REG_AX,0,0,0}, nasm_bytecodes+18655, IF_8086|IF_SB},
3545 {I_OUT, 2, {IMMEDIATE,REG_EAX,0,0,0}, nasm_bytecodes+18660, IF_386|IF_SB},
3546 {I_OUT, 2, {REG_DX,REG_AL,0,0,0}, nasm_bytecodes+20458, IF_8086},
3547 {I_OUT, 2, {REG_DX,REG_AX,0,0,0}, nasm_bytecodes+20105, IF_8086},
3548 {I_OUT, 2, {REG_DX,REG_EAX,0,0,0}, nasm_bytecodes+20109, IF_386},
3549 ITEMPLATE_END
3552 static const struct itemplate instrux_OUTSB[] = {
3553 {I_OUTSB, 0, {0,0,0,0,0}, nasm_bytecodes+20461, IF_186},
3554 ITEMPLATE_END
3557 static const struct itemplate instrux_OUTSD[] = {
3558 {I_OUTSD, 0, {0,0,0,0,0}, nasm_bytecodes+20113, IF_386},
3559 ITEMPLATE_END
3562 static const struct itemplate instrux_OUTSW[] = {
3563 {I_OUTSW, 0, {0,0,0,0,0}, nasm_bytecodes+20117, IF_186},
3564 ITEMPLATE_END
3567 static const struct itemplate instrux_PABSB[] = {
3568 {I_PABSB, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7687, IF_SSSE3|IF_MMX|IF_SQ},
3569 {I_PABSB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+7694, IF_SSSE3},
3570 ITEMPLATE_END
3573 static const struct itemplate instrux_PABSD[] = {
3574 {I_PABSD, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7715, IF_SSSE3|IF_MMX|IF_SQ},
3575 {I_PABSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+7722, IF_SSSE3},
3576 ITEMPLATE_END
3579 static const struct itemplate instrux_PABSW[] = {
3580 {I_PABSW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7701, IF_SSSE3|IF_MMX|IF_SQ},
3581 {I_PABSW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+7708, IF_SSSE3},
3582 ITEMPLATE_END
3585 static const struct itemplate instrux_PACKSSDW[] = {
3586 {I_PACKSSDW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+6882, IF_PENT|IF_MMX|IF_SQ},
3587 {I_PACKSSDW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15576, IF_WILLAMETTE|IF_SSE2|IF_SO},
3588 ITEMPLATE_END
3591 static const struct itemplate instrux_PACKSSWB[] = {
3592 {I_PACKSSWB, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+6889, IF_PENT|IF_MMX|IF_SQ},
3593 {I_PACKSSWB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15570, IF_WILLAMETTE|IF_SSE2|IF_SO},
3594 ITEMPLATE_END
3597 static const struct itemplate instrux_PACKUSDW[] = {
3598 {I_PACKUSDW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+7939, IF_SSE41},
3599 ITEMPLATE_END
3602 static const struct itemplate instrux_PACKUSWB[] = {
3603 {I_PACKUSWB, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+6896, IF_PENT|IF_MMX|IF_SQ},
3604 {I_PACKUSWB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15582, IF_WILLAMETTE|IF_SSE2|IF_SO},
3605 ITEMPLATE_END
3608 static const struct itemplate instrux_PADDB[] = {
3609 {I_PADDB, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+6903, IF_PENT|IF_MMX|IF_SQ},
3610 {I_PADDB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15588, IF_WILLAMETTE|IF_SSE2|IF_SO},
3611 ITEMPLATE_END
3614 static const struct itemplate instrux_PADDD[] = {
3615 {I_PADDD, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+6910, IF_PENT|IF_MMX|IF_SQ},
3616 {I_PADDD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15600, IF_WILLAMETTE|IF_SSE2|IF_SO},
3617 ITEMPLATE_END
3620 static const struct itemplate instrux_PADDQ[] = {
3621 {I_PADDQ, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+15606, IF_WILLAMETTE|IF_MMX|IF_SQ},
3622 {I_PADDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15612, IF_WILLAMETTE|IF_SSE2|IF_SO},
3623 ITEMPLATE_END
3626 static const struct itemplate instrux_PADDSB[] = {
3627 {I_PADDSB, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+6917, IF_PENT|IF_MMX|IF_SQ},
3628 {I_PADDSB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15618, IF_WILLAMETTE|IF_SSE2|IF_SO},
3629 ITEMPLATE_END
3632 static const struct itemplate instrux_PADDSIW[] = {
3633 {I_PADDSIW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+14772, IF_PENT|IF_MMX|IF_SQ|IF_CYRIX},
3634 ITEMPLATE_END
3637 static const struct itemplate instrux_PADDSW[] = {
3638 {I_PADDSW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+6924, IF_PENT|IF_MMX|IF_SQ},
3639 {I_PADDSW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15624, IF_WILLAMETTE|IF_SSE2|IF_SO},
3640 ITEMPLATE_END
3643 static const struct itemplate instrux_PADDUSB[] = {
3644 {I_PADDUSB, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+6931, IF_PENT|IF_MMX|IF_SQ},
3645 {I_PADDUSB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15630, IF_WILLAMETTE|IF_SSE2|IF_SO},
3646 ITEMPLATE_END
3649 static const struct itemplate instrux_PADDUSW[] = {
3650 {I_PADDUSW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+6938, IF_PENT|IF_MMX|IF_SQ},
3651 {I_PADDUSW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15636, IF_WILLAMETTE|IF_SSE2|IF_SO},
3652 ITEMPLATE_END
3655 static const struct itemplate instrux_PADDW[] = {
3656 {I_PADDW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+6945, IF_PENT|IF_MMX|IF_SQ},
3657 {I_PADDW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15594, IF_WILLAMETTE|IF_SSE2|IF_SO},
3658 ITEMPLATE_END
3661 static const struct itemplate instrux_PALIGNR[] = {
3662 {I_PALIGNR, 3, {MMXREG,RM_MMX,IMMEDIATE,0,0}, nasm_bytecodes+5575, IF_SSSE3|IF_MMX|IF_SQ},
3663 {I_PALIGNR, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5583, IF_SSSE3},
3664 ITEMPLATE_END
3667 static const struct itemplate instrux_PAND[] = {
3668 {I_PAND, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+6952, IF_PENT|IF_MMX|IF_SQ},
3669 {I_PAND, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15642, IF_WILLAMETTE|IF_SSE2|IF_SO},
3670 ITEMPLATE_END
3673 static const struct itemplate instrux_PANDN[] = {
3674 {I_PANDN, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+6959, IF_PENT|IF_MMX|IF_SQ},
3675 {I_PANDN, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15648, IF_WILLAMETTE|IF_SSE2|IF_SO},
3676 ITEMPLATE_END
3679 static const struct itemplate instrux_PAUSE[] = {
3680 {I_PAUSE, 0, {0,0,0,0,0}, nasm_bytecodes+18665, IF_8086},
3681 ITEMPLATE_END
3684 static const struct itemplate instrux_PAVEB[] = {
3685 {I_PAVEB, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+14778, IF_PENT|IF_MMX|IF_SQ|IF_CYRIX},
3686 ITEMPLATE_END
3689 static const struct itemplate instrux_PAVGB[] = {
3690 {I_PAVGB, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7414, IF_KATMAI|IF_MMX|IF_SQ},
3691 {I_PAVGB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15654, IF_WILLAMETTE|IF_SSE2|IF_SO},
3692 ITEMPLATE_END
3695 static const struct itemplate instrux_PAVGUSB[] = {
3696 {I_PAVGUSB, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5103, IF_PENT|IF_3DNOW|IF_SQ},
3697 ITEMPLATE_END
3700 static const struct itemplate instrux_PAVGW[] = {
3701 {I_PAVGW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7421, IF_KATMAI|IF_MMX|IF_SQ},
3702 {I_PAVGW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15660, IF_WILLAMETTE|IF_SSE2|IF_SO},
3703 ITEMPLATE_END
3706 static const struct itemplate instrux_PBLENDVB[] = {
3707 {I_PBLENDVB, 3, {XMMREG,RM_XMM,XMM0,0,0}, nasm_bytecodes+7946, IF_SSE41},
3708 ITEMPLATE_END
3711 static const struct itemplate instrux_PBLENDW[] = {
3712 {I_PBLENDW, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5655, IF_SSE41},
3713 ITEMPLATE_END
3716 static const struct itemplate instrux_PCLMULHQHQDQ[] = {
3717 {I_PCLMULHQHQDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5022, IF_SSE|IF_WESTMERE|IF_SO},
3718 ITEMPLATE_END
3721 static const struct itemplate instrux_PCLMULHQLQDQ[] = {
3722 {I_PCLMULHQLQDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5004, IF_SSE|IF_WESTMERE|IF_SO},
3723 ITEMPLATE_END
3726 static const struct itemplate instrux_PCLMULLQHQDQ[] = {
3727 {I_PCLMULLQHQDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5013, IF_SSE|IF_WESTMERE|IF_SO},
3728 ITEMPLATE_END
3731 static const struct itemplate instrux_PCLMULLQLQDQ[] = {
3732 {I_PCLMULLQLQDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4995, IF_SSE|IF_WESTMERE|IF_SO},
3733 ITEMPLATE_END
3736 static const struct itemplate instrux_PCLMULQDQ[] = {
3737 {I_PCLMULQDQ, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6711, IF_SSE|IF_WESTMERE|IF_SO},
3738 ITEMPLATE_END
3741 static const struct itemplate instrux_PCMOV[] = {
3742 {I_PCMOV, 4, {XMMREG,SAME_AS|0,XMMREG,RM_XMM,0}, nasm_bytecodes+8660, IF_SSE5|IF_AMD},
3743 {I_PCMOV, 4, {XMMREG,SAME_AS|0,RM_XMM,XMMREG,0}, nasm_bytecodes+8667, IF_SSE5|IF_AMD},
3744 {I_PCMOV, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8674, IF_SSE5|IF_AMD},
3745 {I_PCMOV, 4, {XMMREG,RM_XMM,XMMREG,SAME_AS|0,0}, nasm_bytecodes+8681, IF_SSE5|IF_AMD},
3746 ITEMPLATE_END
3749 static const struct itemplate instrux_PCMPEQB[] = {
3750 {I_PCMPEQB, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+6966, IF_PENT|IF_MMX|IF_SQ},
3751 {I_PCMPEQB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15666, IF_WILLAMETTE|IF_SSE2|IF_SO},
3752 ITEMPLATE_END
3755 static const struct itemplate instrux_PCMPEQD[] = {
3756 {I_PCMPEQD, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+6973, IF_PENT|IF_MMX|IF_SQ},
3757 {I_PCMPEQD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15678, IF_WILLAMETTE|IF_SSE2|IF_SO},
3758 ITEMPLATE_END
3761 static const struct itemplate instrux_PCMPEQQ[] = {
3762 {I_PCMPEQQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+7953, IF_SSE41},
3763 ITEMPLATE_END
3766 static const struct itemplate instrux_PCMPEQW[] = {
3767 {I_PCMPEQW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+6980, IF_PENT|IF_MMX|IF_SQ},
3768 {I_PCMPEQW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15672, IF_WILLAMETTE|IF_SSE2|IF_SO},
3769 ITEMPLATE_END
3772 static const struct itemplate instrux_PCMPESTRI[] = {
3773 {I_PCMPESTRI, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5735, IF_SSE42},
3774 ITEMPLATE_END
3777 static const struct itemplate instrux_PCMPESTRM[] = {
3778 {I_PCMPESTRM, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5743, IF_SSE42},
3779 ITEMPLATE_END
3782 static const struct itemplate instrux_PCMPGTB[] = {
3783 {I_PCMPGTB, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+6987, IF_PENT|IF_MMX|IF_SQ},
3784 {I_PCMPGTB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15684, IF_WILLAMETTE|IF_SSE2|IF_SO},
3785 ITEMPLATE_END
3788 static const struct itemplate instrux_PCMPGTD[] = {
3789 {I_PCMPGTD, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+6994, IF_PENT|IF_MMX|IF_SQ},
3790 {I_PCMPGTD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15696, IF_WILLAMETTE|IF_SSE2|IF_SO},
3791 ITEMPLATE_END
3794 static const struct itemplate instrux_PCMPGTQ[] = {
3795 {I_PCMPGTQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8128, IF_SSE42},
3796 ITEMPLATE_END
3799 static const struct itemplate instrux_PCMPGTW[] = {
3800 {I_PCMPGTW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7001, IF_PENT|IF_MMX|IF_SQ},
3801 {I_PCMPGTW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15690, IF_WILLAMETTE|IF_SSE2|IF_SO},
3802 ITEMPLATE_END
3805 static const struct itemplate instrux_PCMPISTRI[] = {
3806 {I_PCMPISTRI, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5751, IF_SSE42},
3807 ITEMPLATE_END
3810 static const struct itemplate instrux_PCMPISTRM[] = {
3811 {I_PCMPISTRM, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5759, IF_SSE42},
3812 ITEMPLATE_END
3815 static const struct itemplate instrux_PCOMB[] = {
3816 {I_PCOMB, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+5799, IF_SSE5|IF_AMD|IF_SO},
3817 ITEMPLATE_END
3820 static const struct itemplate instrux_PCOMD[] = {
3821 {I_PCOMD, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+5815, IF_SSE5|IF_AMD|IF_SO},
3822 ITEMPLATE_END
3825 static const struct itemplate instrux_PCOMEQB[] = {
3826 {I_PCOMEQB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+657, IF_SSE5|IF_AMD|IF_SO},
3827 ITEMPLATE_END
3830 static const struct itemplate instrux_PCOMEQD[] = {
3831 {I_PCOMEQD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+801, IF_SSE5|IF_AMD|IF_SO},
3832 ITEMPLATE_END
3835 static const struct itemplate instrux_PCOMEQQ[] = {
3836 {I_PCOMEQQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+873, IF_SSE5|IF_AMD|IF_SO},
3837 ITEMPLATE_END
3840 static const struct itemplate instrux_PCOMEQUB[] = {
3841 {I_PCOMEQUB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+945, IF_SSE5|IF_AMD|IF_SO},
3842 ITEMPLATE_END
3845 static const struct itemplate instrux_PCOMEQUD[] = {
3846 {I_PCOMEQUD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1089, IF_SSE5|IF_AMD|IF_SO},
3847 ITEMPLATE_END
3850 static const struct itemplate instrux_PCOMEQUQ[] = {
3851 {I_PCOMEQUQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1161, IF_SSE5|IF_AMD|IF_SO},
3852 ITEMPLATE_END
3855 static const struct itemplate instrux_PCOMEQUW[] = {
3856 {I_PCOMEQUW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1017, IF_SSE5|IF_AMD|IF_SO},
3857 ITEMPLATE_END
3860 static const struct itemplate instrux_PCOMEQW[] = {
3861 {I_PCOMEQW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+729, IF_SSE5|IF_AMD|IF_SO},
3862 ITEMPLATE_END
3865 static const struct itemplate instrux_PCOMFALSEB[] = {
3866 {I_PCOMFALSEB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+675, IF_SSE5|IF_AMD|IF_SO},
3867 ITEMPLATE_END
3870 static const struct itemplate instrux_PCOMFALSED[] = {
3871 {I_PCOMFALSED, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+819, IF_SSE5|IF_AMD|IF_SO},
3872 ITEMPLATE_END
3875 static const struct itemplate instrux_PCOMFALSEQ[] = {
3876 {I_PCOMFALSEQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+891, IF_SSE5|IF_AMD|IF_SO},
3877 ITEMPLATE_END
3880 static const struct itemplate instrux_PCOMFALSEUB[] = {
3881 {I_PCOMFALSEUB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+963, IF_SSE5|IF_AMD|IF_SO},
3882 ITEMPLATE_END
3885 static const struct itemplate instrux_PCOMFALSEUD[] = {
3886 {I_PCOMFALSEUD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1107, IF_SSE5|IF_AMD|IF_SO},
3887 ITEMPLATE_END
3890 static const struct itemplate instrux_PCOMFALSEUQ[] = {
3891 {I_PCOMFALSEUQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1179, IF_SSE5|IF_AMD|IF_SO},
3892 ITEMPLATE_END
3895 static const struct itemplate instrux_PCOMFALSEUW[] = {
3896 {I_PCOMFALSEUW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1035, IF_SSE5|IF_AMD|IF_SO},
3897 ITEMPLATE_END
3900 static const struct itemplate instrux_PCOMFALSEW[] = {
3901 {I_PCOMFALSEW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+747, IF_SSE5|IF_AMD|IF_SO},
3902 ITEMPLATE_END
3905 static const struct itemplate instrux_PCOMGEB[] = {
3906 {I_PCOMGEB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+648, IF_SSE5|IF_AMD|IF_SO},
3907 ITEMPLATE_END
3910 static const struct itemplate instrux_PCOMGED[] = {
3911 {I_PCOMGED, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+792, IF_SSE5|IF_AMD|IF_SO},
3912 ITEMPLATE_END
3915 static const struct itemplate instrux_PCOMGEQ[] = {
3916 {I_PCOMGEQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+864, IF_SSE5|IF_AMD|IF_SO},
3917 ITEMPLATE_END
3920 static const struct itemplate instrux_PCOMGEUB[] = {
3921 {I_PCOMGEUB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+936, IF_SSE5|IF_AMD|IF_SO},
3922 ITEMPLATE_END
3925 static const struct itemplate instrux_PCOMGEUD[] = {
3926 {I_PCOMGEUD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1080, IF_SSE5|IF_AMD|IF_SO},
3927 ITEMPLATE_END
3930 static const struct itemplate instrux_PCOMGEUQ[] = {
3931 {I_PCOMGEUQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1152, IF_SSE5|IF_AMD|IF_SO},
3932 ITEMPLATE_END
3935 static const struct itemplate instrux_PCOMGEUW[] = {
3936 {I_PCOMGEUW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1008, IF_SSE5|IF_AMD|IF_SO},
3937 ITEMPLATE_END
3940 static const struct itemplate instrux_PCOMGEW[] = {
3941 {I_PCOMGEW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+720, IF_SSE5|IF_AMD|IF_SO},
3942 ITEMPLATE_END
3945 static const struct itemplate instrux_PCOMGTB[] = {
3946 {I_PCOMGTB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+639, IF_SSE5|IF_AMD|IF_SO},
3947 ITEMPLATE_END
3950 static const struct itemplate instrux_PCOMGTD[] = {
3951 {I_PCOMGTD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+783, IF_SSE5|IF_AMD|IF_SO},
3952 ITEMPLATE_END
3955 static const struct itemplate instrux_PCOMGTQ[] = {
3956 {I_PCOMGTQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+855, IF_SSE5|IF_AMD|IF_SO},
3957 ITEMPLATE_END
3960 static const struct itemplate instrux_PCOMGTUB[] = {
3961 {I_PCOMGTUB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+927, IF_SSE5|IF_AMD|IF_SO},
3962 ITEMPLATE_END
3965 static const struct itemplate instrux_PCOMGTUD[] = {
3966 {I_PCOMGTUD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1071, IF_SSE5|IF_AMD|IF_SO},
3967 ITEMPLATE_END
3970 static const struct itemplate instrux_PCOMGTUQ[] = {
3971 {I_PCOMGTUQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1143, IF_SSE5|IF_AMD|IF_SO},
3972 ITEMPLATE_END
3975 static const struct itemplate instrux_PCOMGTUW[] = {
3976 {I_PCOMGTUW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+999, IF_SSE5|IF_AMD|IF_SO},
3977 ITEMPLATE_END
3980 static const struct itemplate instrux_PCOMGTW[] = {
3981 {I_PCOMGTW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+711, IF_SSE5|IF_AMD|IF_SO},
3982 ITEMPLATE_END
3985 static const struct itemplate instrux_PCOMLEB[] = {
3986 {I_PCOMLEB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+630, IF_SSE5|IF_AMD|IF_SO},
3987 ITEMPLATE_END
3990 static const struct itemplate instrux_PCOMLED[] = {
3991 {I_PCOMLED, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+774, IF_SSE5|IF_AMD|IF_SO},
3992 ITEMPLATE_END
3995 static const struct itemplate instrux_PCOMLEQ[] = {
3996 {I_PCOMLEQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+846, IF_SSE5|IF_AMD|IF_SO},
3997 ITEMPLATE_END
4000 static const struct itemplate instrux_PCOMLEUB[] = {
4001 {I_PCOMLEUB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+918, IF_SSE5|IF_AMD|IF_SO},
4002 ITEMPLATE_END
4005 static const struct itemplate instrux_PCOMLEUD[] = {
4006 {I_PCOMLEUD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1062, IF_SSE5|IF_AMD|IF_SO},
4007 ITEMPLATE_END
4010 static const struct itemplate instrux_PCOMLEUQ[] = {
4011 {I_PCOMLEUQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1134, IF_SSE5|IF_AMD|IF_SO},
4012 ITEMPLATE_END
4015 static const struct itemplate instrux_PCOMLEUW[] = {
4016 {I_PCOMLEUW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+990, IF_SSE5|IF_AMD|IF_SO},
4017 ITEMPLATE_END
4020 static const struct itemplate instrux_PCOMLEW[] = {
4021 {I_PCOMLEW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+702, IF_SSE5|IF_AMD|IF_SO},
4022 ITEMPLATE_END
4025 static const struct itemplate instrux_PCOMLTB[] = {
4026 {I_PCOMLTB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+621, IF_SSE5|IF_AMD|IF_SO},
4027 ITEMPLATE_END
4030 static const struct itemplate instrux_PCOMLTD[] = {
4031 {I_PCOMLTD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+765, IF_SSE5|IF_AMD|IF_SO},
4032 ITEMPLATE_END
4035 static const struct itemplate instrux_PCOMLTQ[] = {
4036 {I_PCOMLTQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+837, IF_SSE5|IF_AMD|IF_SO},
4037 ITEMPLATE_END
4040 static const struct itemplate instrux_PCOMLTUB[] = {
4041 {I_PCOMLTUB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+909, IF_SSE5|IF_AMD|IF_SO},
4042 ITEMPLATE_END
4045 static const struct itemplate instrux_PCOMLTUD[] = {
4046 {I_PCOMLTUD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1053, IF_SSE5|IF_AMD|IF_SO},
4047 ITEMPLATE_END
4050 static const struct itemplate instrux_PCOMLTUQ[] = {
4051 {I_PCOMLTUQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1125, IF_SSE5|IF_AMD|IF_SO},
4052 ITEMPLATE_END
4055 static const struct itemplate instrux_PCOMLTUW[] = {
4056 {I_PCOMLTUW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+981, IF_SSE5|IF_AMD|IF_SO},
4057 ITEMPLATE_END
4060 static const struct itemplate instrux_PCOMLTW[] = {
4061 {I_PCOMLTW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+693, IF_SSE5|IF_AMD|IF_SO},
4062 ITEMPLATE_END
4065 static const struct itemplate instrux_PCOMNEQB[] = {
4066 {I_PCOMNEQB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+666, IF_SSE5|IF_AMD|IF_SO},
4067 ITEMPLATE_END
4070 static const struct itemplate instrux_PCOMNEQD[] = {
4071 {I_PCOMNEQD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+810, IF_SSE5|IF_AMD|IF_SO},
4072 ITEMPLATE_END
4075 static const struct itemplate instrux_PCOMNEQQ[] = {
4076 {I_PCOMNEQQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+882, IF_SSE5|IF_AMD|IF_SO},
4077 ITEMPLATE_END
4080 static const struct itemplate instrux_PCOMNEQUB[] = {
4081 {I_PCOMNEQUB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+954, IF_SSE5|IF_AMD|IF_SO},
4082 ITEMPLATE_END
4085 static const struct itemplate instrux_PCOMNEQUD[] = {
4086 {I_PCOMNEQUD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1098, IF_SSE5|IF_AMD|IF_SO},
4087 ITEMPLATE_END
4090 static const struct itemplate instrux_PCOMNEQUQ[] = {
4091 {I_PCOMNEQUQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1170, IF_SSE5|IF_AMD|IF_SO},
4092 ITEMPLATE_END
4095 static const struct itemplate instrux_PCOMNEQUW[] = {
4096 {I_PCOMNEQUW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1026, IF_SSE5|IF_AMD|IF_SO},
4097 ITEMPLATE_END
4100 static const struct itemplate instrux_PCOMNEQW[] = {
4101 {I_PCOMNEQW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+738, IF_SSE5|IF_AMD|IF_SO},
4102 ITEMPLATE_END
4105 static const struct itemplate instrux_PCOMQ[] = {
4106 {I_PCOMQ, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+5823, IF_SSE5|IF_AMD|IF_SO},
4107 ITEMPLATE_END
4110 static const struct itemplate instrux_PCOMTRUEB[] = {
4111 {I_PCOMTRUEB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+684, IF_SSE5|IF_AMD|IF_SO},
4112 ITEMPLATE_END
4115 static const struct itemplate instrux_PCOMTRUED[] = {
4116 {I_PCOMTRUED, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+828, IF_SSE5|IF_AMD|IF_SO},
4117 ITEMPLATE_END
4120 static const struct itemplate instrux_PCOMTRUEQ[] = {
4121 {I_PCOMTRUEQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+900, IF_SSE5|IF_AMD|IF_SO},
4122 ITEMPLATE_END
4125 static const struct itemplate instrux_PCOMTRUEUB[] = {
4126 {I_PCOMTRUEUB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+972, IF_SSE5|IF_AMD|IF_SO},
4127 ITEMPLATE_END
4130 static const struct itemplate instrux_PCOMTRUEUD[] = {
4131 {I_PCOMTRUEUD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1116, IF_SSE5|IF_AMD|IF_SO},
4132 ITEMPLATE_END
4135 static const struct itemplate instrux_PCOMTRUEUQ[] = {
4136 {I_PCOMTRUEUQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1188, IF_SSE5|IF_AMD|IF_SO},
4137 ITEMPLATE_END
4140 static const struct itemplate instrux_PCOMTRUEUW[] = {
4141 {I_PCOMTRUEUW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1044, IF_SSE5|IF_AMD|IF_SO},
4142 ITEMPLATE_END
4145 static const struct itemplate instrux_PCOMTRUEW[] = {
4146 {I_PCOMTRUEW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+756, IF_SSE5|IF_AMD|IF_SO},
4147 ITEMPLATE_END
4150 static const struct itemplate instrux_PCOMUB[] = {
4151 {I_PCOMUB, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+5831, IF_SSE5|IF_AMD|IF_SO},
4152 ITEMPLATE_END
4155 static const struct itemplate instrux_PCOMUD[] = {
4156 {I_PCOMUD, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+5847, IF_SSE5|IF_AMD|IF_SO},
4157 ITEMPLATE_END
4160 static const struct itemplate instrux_PCOMUQ[] = {
4161 {I_PCOMUQ, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+5855, IF_SSE5|IF_AMD|IF_SO},
4162 ITEMPLATE_END
4165 static const struct itemplate instrux_PCOMUW[] = {
4166 {I_PCOMUW, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+5839, IF_SSE5|IF_AMD|IF_SO},
4167 ITEMPLATE_END
4170 static const struct itemplate instrux_PCOMW[] = {
4171 {I_PCOMW, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+5807, IF_SSE5|IF_AMD|IF_SO},
4172 ITEMPLATE_END
4175 static const struct itemplate instrux_PDISTIB[] = {
4176 {I_PDISTIB, 2, {MMXREG,MEMORY,0,0,0}, nasm_bytecodes+15943, IF_PENT|IF_MMX|IF_SM|IF_CYRIX},
4177 ITEMPLATE_END
4180 static const struct itemplate instrux_PERMPD[] = {
4181 {I_PERMPD, 4, {XMMREG,SAME_AS|0,XMMREG,RM_XMM,0}, nasm_bytecodes+8632, IF_SSE5|IF_AMD},
4182 {I_PERMPD, 4, {XMMREG,SAME_AS|0,RM_XMM,XMMREG,0}, nasm_bytecodes+8639, IF_SSE5|IF_AMD},
4183 {I_PERMPD, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8646, IF_SSE5|IF_AMD},
4184 {I_PERMPD, 4, {XMMREG,RM_XMM,XMMREG,SAME_AS|0,0}, nasm_bytecodes+8653, IF_SSE5|IF_AMD},
4185 ITEMPLATE_END
4188 static const struct itemplate instrux_PERMPS[] = {
4189 {I_PERMPS, 4, {XMMREG,SAME_AS|0,XMMREG,RM_XMM,0}, nasm_bytecodes+8604, IF_SSE5|IF_AMD},
4190 {I_PERMPS, 4, {XMMREG,SAME_AS|0,RM_XMM,XMMREG,0}, nasm_bytecodes+8611, IF_SSE5|IF_AMD},
4191 {I_PERMPS, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8618, IF_SSE5|IF_AMD},
4192 {I_PERMPS, 4, {XMMREG,RM_XMM,XMMREG,SAME_AS|0,0}, nasm_bytecodes+8625, IF_SSE5|IF_AMD},
4193 ITEMPLATE_END
4196 static const struct itemplate instrux_PEXTRB[] = {
4197 {I_PEXTRB, 3, {REG32,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+10, IF_SSE41},
4198 {I_PEXTRB, 3, {MEMORY|BITS8,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+10, IF_SSE41},
4199 {I_PEXTRB, 3, {REG64,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+9, IF_SSE41|IF_X64},
4200 ITEMPLATE_END
4203 static const struct itemplate instrux_PEXTRD[] = {
4204 {I_PEXTRD, 3, {RM_GPR|BITS32,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+19, IF_SSE41},
4205 ITEMPLATE_END
4208 static const struct itemplate instrux_PEXTRQ[] = {
4209 {I_PEXTRQ, 3, {RM_GPR|BITS64,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+18, IF_SSE41|IF_X64},
4210 ITEMPLATE_END
4213 static const struct itemplate instrux_PEXTRW[] = {
4214 {I_PEXTRW, 3, {REG32,MMXREG,IMMEDIATE,0,0}, nasm_bytecodes+7428, IF_KATMAI|IF_MMX|IF_SB|IF_AR2},
4215 {I_PEXTRW, 3, {REG32,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+7505, IF_WILLAMETTE|IF_SSE2|IF_SB|IF_AR2},
4216 {I_PEXTRW, 3, {REG32,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+28, IF_SSE41},
4217 {I_PEXTRW, 3, {MEMORY|BITS16,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+28, IF_SSE41},
4218 {I_PEXTRW, 3, {REG64,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+27, IF_SSE41|IF_X64},
4219 ITEMPLATE_END
4222 static const struct itemplate instrux_PF2ID[] = {
4223 {I_PF2ID, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5111, IF_PENT|IF_3DNOW|IF_SQ},
4224 ITEMPLATE_END
4227 static const struct itemplate instrux_PF2IW[] = {
4228 {I_PF2IW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5391, IF_PENT|IF_3DNOW|IF_SQ},
4229 ITEMPLATE_END
4232 static const struct itemplate instrux_PFACC[] = {
4233 {I_PFACC, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5119, IF_PENT|IF_3DNOW|IF_SQ},
4234 ITEMPLATE_END
4237 static const struct itemplate instrux_PFADD[] = {
4238 {I_PFADD, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5127, IF_PENT|IF_3DNOW|IF_SQ},
4239 ITEMPLATE_END
4242 static const struct itemplate instrux_PFCMPEQ[] = {
4243 {I_PFCMPEQ, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5135, IF_PENT|IF_3DNOW|IF_SQ},
4244 ITEMPLATE_END
4247 static const struct itemplate instrux_PFCMPGE[] = {
4248 {I_PFCMPGE, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5143, IF_PENT|IF_3DNOW|IF_SQ},
4249 ITEMPLATE_END
4252 static const struct itemplate instrux_PFCMPGT[] = {
4253 {I_PFCMPGT, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5151, IF_PENT|IF_3DNOW|IF_SQ},
4254 ITEMPLATE_END
4257 static const struct itemplate instrux_PFMAX[] = {
4258 {I_PFMAX, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5159, IF_PENT|IF_3DNOW|IF_SQ},
4259 ITEMPLATE_END
4262 static const struct itemplate instrux_PFMIN[] = {
4263 {I_PFMIN, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5167, IF_PENT|IF_3DNOW|IF_SQ},
4264 ITEMPLATE_END
4267 static const struct itemplate instrux_PFMUL[] = {
4268 {I_PFMUL, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5175, IF_PENT|IF_3DNOW|IF_SQ},
4269 ITEMPLATE_END
4272 static const struct itemplate instrux_PFNACC[] = {
4273 {I_PFNACC, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5399, IF_PENT|IF_3DNOW|IF_SQ},
4274 ITEMPLATE_END
4277 static const struct itemplate instrux_PFPNACC[] = {
4278 {I_PFPNACC, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5407, IF_PENT|IF_3DNOW|IF_SQ},
4279 ITEMPLATE_END
4282 static const struct itemplate instrux_PFRCP[] = {
4283 {I_PFRCP, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5183, IF_PENT|IF_3DNOW|IF_SQ},
4284 ITEMPLATE_END
4287 static const struct itemplate instrux_PFRCPIT1[] = {
4288 {I_PFRCPIT1, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5191, IF_PENT|IF_3DNOW|IF_SQ},
4289 ITEMPLATE_END
4292 static const struct itemplate instrux_PFRCPIT2[] = {
4293 {I_PFRCPIT2, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5199, IF_PENT|IF_3DNOW|IF_SQ},
4294 ITEMPLATE_END
4297 static const struct itemplate instrux_PFRCPV[] = {
4298 {I_PFRCPV, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5895, IF_PENT|IF_3DNOW|IF_SQ|IF_CYRIX},
4299 ITEMPLATE_END
4302 static const struct itemplate instrux_PFRSQIT1[] = {
4303 {I_PFRSQIT1, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5207, IF_PENT|IF_3DNOW|IF_SQ},
4304 ITEMPLATE_END
4307 static const struct itemplate instrux_PFRSQRT[] = {
4308 {I_PFRSQRT, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5215, IF_PENT|IF_3DNOW|IF_SQ},
4309 ITEMPLATE_END
4312 static const struct itemplate instrux_PFRSQRTV[] = {
4313 {I_PFRSQRTV, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5903, IF_PENT|IF_3DNOW|IF_SQ|IF_CYRIX},
4314 ITEMPLATE_END
4317 static const struct itemplate instrux_PFSUB[] = {
4318 {I_PFSUB, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5223, IF_PENT|IF_3DNOW|IF_SQ},
4319 ITEMPLATE_END
4322 static const struct itemplate instrux_PFSUBR[] = {
4323 {I_PFSUBR, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5231, IF_PENT|IF_3DNOW|IF_SQ},
4324 ITEMPLATE_END
4327 static const struct itemplate instrux_PHADDBD[] = {
4328 {I_PHADDBD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9017, IF_SSE5|IF_AMD},
4329 ITEMPLATE_END
4332 static const struct itemplate instrux_PHADDBQ[] = {
4333 {I_PHADDBQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9024, IF_SSE5|IF_AMD},
4334 ITEMPLATE_END
4337 static const struct itemplate instrux_PHADDBW[] = {
4338 {I_PHADDBW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9010, IF_SSE5|IF_AMD},
4339 ITEMPLATE_END
4342 static const struct itemplate instrux_PHADDD[] = {
4343 {I_PHADDD, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7743, IF_SSSE3|IF_MMX|IF_SQ},
4344 {I_PHADDD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+7750, IF_SSSE3},
4345 ITEMPLATE_END
4348 static const struct itemplate instrux_PHADDDQ[] = {
4349 {I_PHADDDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9045, IF_SSE5|IF_AMD},
4350 ITEMPLATE_END
4353 static const struct itemplate instrux_PHADDSW[] = {
4354 {I_PHADDSW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7757, IF_SSSE3|IF_MMX|IF_SQ},
4355 {I_PHADDSW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+7764, IF_SSSE3},
4356 ITEMPLATE_END
4359 static const struct itemplate instrux_PHADDUBD[] = {
4360 {I_PHADDUBD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9059, IF_SSE5|IF_AMD},
4361 ITEMPLATE_END
4364 static const struct itemplate instrux_PHADDUBQ[] = {
4365 {I_PHADDUBQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9066, IF_SSE5|IF_AMD},
4366 ITEMPLATE_END
4369 static const struct itemplate instrux_PHADDUBW[] = {
4370 {I_PHADDUBW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9052, IF_SSE5|IF_AMD},
4371 ITEMPLATE_END
4374 static const struct itemplate instrux_PHADDUDQ[] = {
4375 {I_PHADDUDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9087, IF_SSE5|IF_AMD},
4376 ITEMPLATE_END
4379 static const struct itemplate instrux_PHADDUWD[] = {
4380 {I_PHADDUWD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9073, IF_SSE5|IF_AMD},
4381 ITEMPLATE_END
4384 static const struct itemplate instrux_PHADDUWQ[] = {
4385 {I_PHADDUWQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9080, IF_SSE5|IF_AMD},
4386 ITEMPLATE_END
4389 static const struct itemplate instrux_PHADDW[] = {
4390 {I_PHADDW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7729, IF_SSSE3|IF_MMX|IF_SQ},
4391 {I_PHADDW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+7736, IF_SSSE3},
4392 ITEMPLATE_END
4395 static const struct itemplate instrux_PHADDWD[] = {
4396 {I_PHADDWD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9031, IF_SSE5|IF_AMD},
4397 ITEMPLATE_END
4400 static const struct itemplate instrux_PHADDWQ[] = {
4401 {I_PHADDWQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9038, IF_SSE5|IF_AMD},
4402 ITEMPLATE_END
4405 static const struct itemplate instrux_PHMINPOSUW[] = {
4406 {I_PHMINPOSUW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+7960, IF_SSE41},
4407 ITEMPLATE_END
4410 static const struct itemplate instrux_PHSUBBW[] = {
4411 {I_PHSUBBW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9094, IF_SSE5|IF_AMD},
4412 ITEMPLATE_END
4415 static const struct itemplate instrux_PHSUBD[] = {
4416 {I_PHSUBD, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7785, IF_SSSE3|IF_MMX|IF_SQ},
4417 {I_PHSUBD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+7792, IF_SSSE3},
4418 ITEMPLATE_END
4421 static const struct itemplate instrux_PHSUBDQ[] = {
4422 {I_PHSUBDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9108, IF_SSE5|IF_AMD},
4423 ITEMPLATE_END
4426 static const struct itemplate instrux_PHSUBSW[] = {
4427 {I_PHSUBSW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7799, IF_SSSE3|IF_MMX|IF_SQ},
4428 {I_PHSUBSW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+7806, IF_SSSE3},
4429 ITEMPLATE_END
4432 static const struct itemplate instrux_PHSUBW[] = {
4433 {I_PHSUBW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7771, IF_SSSE3|IF_MMX|IF_SQ},
4434 {I_PHSUBW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+7778, IF_SSSE3},
4435 ITEMPLATE_END
4438 static const struct itemplate instrux_PHSUBWD[] = {
4439 {I_PHSUBWD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9101, IF_SSE5|IF_AMD},
4440 ITEMPLATE_END
4443 static const struct itemplate instrux_PI2FD[] = {
4444 {I_PI2FD, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5239, IF_PENT|IF_3DNOW|IF_SQ},
4445 ITEMPLATE_END
4448 static const struct itemplate instrux_PI2FW[] = {
4449 {I_PI2FW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5415, IF_PENT|IF_3DNOW|IF_SQ},
4450 ITEMPLATE_END
4453 static const struct itemplate instrux_PINSRB[] = {
4454 {I_PINSRB, 3, {XMMREG,REG32,IMMEDIATE,0,0}, nasm_bytecodes+5663, IF_SSE41},
4455 {I_PINSRB, 3, {XMMREG,MEMORY|BITS8,IMMEDIATE,0,0}, nasm_bytecodes+5663, IF_SSE41},
4456 ITEMPLATE_END
4459 static const struct itemplate instrux_PINSRD[] = {
4460 {I_PINSRD, 3, {XMMREG,RM_GPR|BITS32,IMMEDIATE,0,0}, nasm_bytecodes+37, IF_SSE41},
4461 ITEMPLATE_END
4464 static const struct itemplate instrux_PINSRQ[] = {
4465 {I_PINSRQ, 3, {XMMREG,RM_GPR|BITS64,IMMEDIATE,0,0}, nasm_bytecodes+36, IF_SSE41|IF_X64},
4466 ITEMPLATE_END
4469 static const struct itemplate instrux_PINSRW[] = {
4470 {I_PINSRW, 3, {MMXREG,REG16,IMMEDIATE,0,0}, nasm_bytecodes+7435, IF_KATMAI|IF_MMX|IF_SB|IF_AR2},
4471 {I_PINSRW, 3, {MMXREG,REG32,IMMEDIATE,0,0}, nasm_bytecodes+7435, IF_KATMAI|IF_MMX|IF_SB|IF_AR2},
4472 {I_PINSRW, 3, {MMXREG,MEMORY,IMMEDIATE,0,0}, nasm_bytecodes+7435, IF_KATMAI|IF_MMX|IF_SB|IF_AR2},
4473 {I_PINSRW, 3, {MMXREG,MEMORY|BITS16,IMMEDIATE,0,0}, nasm_bytecodes+7435, IF_KATMAI|IF_MMX|IF_SB|IF_AR2},
4474 {I_PINSRW, 3, {XMMREG,REG16,IMMEDIATE,0,0}, nasm_bytecodes+7512, IF_WILLAMETTE|IF_SSE2|IF_SB|IF_AR2},
4475 {I_PINSRW, 3, {XMMREG,REG32,IMMEDIATE,0,0}, nasm_bytecodes+7512, IF_WILLAMETTE|IF_SSE2|IF_SB|IF_AR2},
4476 {I_PINSRW, 3, {XMMREG,MEMORY,IMMEDIATE,0,0}, nasm_bytecodes+7512, IF_WILLAMETTE|IF_SSE2|IF_SB|IF_AR2},
4477 {I_PINSRW, 3, {XMMREG,MEMORY|BITS16,IMMEDIATE,0,0}, nasm_bytecodes+7512, IF_WILLAMETTE|IF_SSE2|IF_SB|IF_AR2},
4478 ITEMPLATE_END
4481 static const struct itemplate instrux_PMACHRIW[] = {
4482 {I_PMACHRIW, 2, {MMXREG,MEMORY,0,0,0}, nasm_bytecodes+16039, IF_PENT|IF_MMX|IF_SM|IF_CYRIX},
4483 ITEMPLATE_END
4486 static const struct itemplate instrux_PMACSDD[] = {
4487 {I_PMACSDD, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8751, IF_SSE5|IF_AMD},
4488 ITEMPLATE_END
4491 static const struct itemplate instrux_PMACSDQH[] = {
4492 {I_PMACSDQH, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8779, IF_SSE5|IF_AMD},
4493 ITEMPLATE_END
4496 static const struct itemplate instrux_PMACSDQL[] = {
4497 {I_PMACSDQL, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8765, IF_SSE5|IF_AMD},
4498 ITEMPLATE_END
4501 static const struct itemplate instrux_PMACSSDD[] = {
4502 {I_PMACSSDD, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8744, IF_SSE5|IF_AMD},
4503 ITEMPLATE_END
4506 static const struct itemplate instrux_PMACSSDQH[] = {
4507 {I_PMACSSDQH, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8772, IF_SSE5|IF_AMD},
4508 ITEMPLATE_END
4511 static const struct itemplate instrux_PMACSSDQL[] = {
4512 {I_PMACSSDQL, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8758, IF_SSE5|IF_AMD},
4513 ITEMPLATE_END
4516 static const struct itemplate instrux_PMACSSWD[] = {
4517 {I_PMACSSWD, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8730, IF_SSE5|IF_AMD},
4518 ITEMPLATE_END
4521 static const struct itemplate instrux_PMACSSWW[] = {
4522 {I_PMACSSWW, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8716, IF_SSE5|IF_AMD},
4523 ITEMPLATE_END
4526 static const struct itemplate instrux_PMACSWD[] = {
4527 {I_PMACSWD, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8737, IF_SSE5|IF_AMD},
4528 ITEMPLATE_END
4531 static const struct itemplate instrux_PMACSWW[] = {
4532 {I_PMACSWW, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8723, IF_SSE5|IF_AMD},
4533 ITEMPLATE_END
4536 static const struct itemplate instrux_PMADCSSWD[] = {
4537 {I_PMADCSSWD, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8786, IF_SSE5|IF_AMD},
4538 ITEMPLATE_END
4541 static const struct itemplate instrux_PMADCSWD[] = {
4542 {I_PMADCSWD, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8793, IF_SSE5|IF_AMD},
4543 ITEMPLATE_END
4546 static const struct itemplate instrux_PMADDUBSW[] = {
4547 {I_PMADDUBSW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7813, IF_SSSE3|IF_MMX|IF_SQ},
4548 {I_PMADDUBSW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+7820, IF_SSSE3},
4549 ITEMPLATE_END
4552 static const struct itemplate instrux_PMADDWD[] = {
4553 {I_PMADDWD, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7008, IF_PENT|IF_MMX|IF_SQ},
4554 {I_PMADDWD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15702, IF_WILLAMETTE|IF_SSE2|IF_SO},
4555 ITEMPLATE_END
4558 static const struct itemplate instrux_PMAGW[] = {
4559 {I_PMAGW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+14784, IF_PENT|IF_MMX|IF_SQ|IF_CYRIX},
4560 ITEMPLATE_END
4563 static const struct itemplate instrux_PMAXSB[] = {
4564 {I_PMAXSB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+7967, IF_SSE41},
4565 ITEMPLATE_END
4568 static const struct itemplate instrux_PMAXSD[] = {
4569 {I_PMAXSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+7974, IF_SSE41},
4570 ITEMPLATE_END
4573 static const struct itemplate instrux_PMAXSW[] = {
4574 {I_PMAXSW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7442, IF_KATMAI|IF_MMX|IF_SQ},
4575 {I_PMAXSW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15708, IF_WILLAMETTE|IF_SSE2|IF_SO},
4576 ITEMPLATE_END
4579 static const struct itemplate instrux_PMAXUB[] = {
4580 {I_PMAXUB, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7449, IF_KATMAI|IF_MMX|IF_SQ},
4581 {I_PMAXUB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15714, IF_WILLAMETTE|IF_SSE2|IF_SO},
4582 ITEMPLATE_END
4585 static const struct itemplate instrux_PMAXUD[] = {
4586 {I_PMAXUD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+7981, IF_SSE41},
4587 ITEMPLATE_END
4590 static const struct itemplate instrux_PMAXUW[] = {
4591 {I_PMAXUW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+7988, IF_SSE41},
4592 ITEMPLATE_END
4595 static const struct itemplate instrux_PMINSB[] = {
4596 {I_PMINSB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+7995, IF_SSE41},
4597 ITEMPLATE_END
4600 static const struct itemplate instrux_PMINSD[] = {
4601 {I_PMINSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8002, IF_SSE41},
4602 ITEMPLATE_END
4605 static const struct itemplate instrux_PMINSW[] = {
4606 {I_PMINSW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7456, IF_KATMAI|IF_MMX|IF_SQ},
4607 {I_PMINSW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15720, IF_WILLAMETTE|IF_SSE2|IF_SO},
4608 ITEMPLATE_END
4611 static const struct itemplate instrux_PMINUB[] = {
4612 {I_PMINUB, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7463, IF_KATMAI|IF_MMX|IF_SQ},
4613 {I_PMINUB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15726, IF_WILLAMETTE|IF_SSE2|IF_SO},
4614 ITEMPLATE_END
4617 static const struct itemplate instrux_PMINUD[] = {
4618 {I_PMINUD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8009, IF_SSE41},
4619 ITEMPLATE_END
4622 static const struct itemplate instrux_PMINUW[] = {
4623 {I_PMINUW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8016, IF_SSE41},
4624 ITEMPLATE_END
4627 static const struct itemplate instrux_PMOVMSKB[] = {
4628 {I_PMOVMSKB, 2, {REG32,MMXREG,0,0,0}, nasm_bytecodes+15486, IF_KATMAI|IF_MMX},
4629 {I_PMOVMSKB, 2, {REG32,XMMREG,0,0,0}, nasm_bytecodes+15732, IF_WILLAMETTE|IF_SSE2},
4630 ITEMPLATE_END
4633 static const struct itemplate instrux_PMOVSXBD[] = {
4634 {I_PMOVSXBD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8030, IF_SSE41|IF_SD},
4635 ITEMPLATE_END
4638 static const struct itemplate instrux_PMOVSXBQ[] = {
4639 {I_PMOVSXBQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8037, IF_SSE41|IF_SW},
4640 ITEMPLATE_END
4643 static const struct itemplate instrux_PMOVSXBW[] = {
4644 {I_PMOVSXBW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8023, IF_SSE41|IF_SQ},
4645 ITEMPLATE_END
4648 static const struct itemplate instrux_PMOVSXDQ[] = {
4649 {I_PMOVSXDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8058, IF_SSE41|IF_SQ},
4650 ITEMPLATE_END
4653 static const struct itemplate instrux_PMOVSXWD[] = {
4654 {I_PMOVSXWD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8044, IF_SSE41|IF_SQ},
4655 ITEMPLATE_END
4658 static const struct itemplate instrux_PMOVSXWQ[] = {
4659 {I_PMOVSXWQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8051, IF_SSE41|IF_SD},
4660 ITEMPLATE_END
4663 static const struct itemplate instrux_PMOVZXBD[] = {
4664 {I_PMOVZXBD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8072, IF_SSE41|IF_SD},
4665 ITEMPLATE_END
4668 static const struct itemplate instrux_PMOVZXBQ[] = {
4669 {I_PMOVZXBQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8079, IF_SSE41|IF_SW},
4670 ITEMPLATE_END
4673 static const struct itemplate instrux_PMOVZXBW[] = {
4674 {I_PMOVZXBW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8065, IF_SSE41|IF_SQ},
4675 ITEMPLATE_END
4678 static const struct itemplate instrux_PMOVZXDQ[] = {
4679 {I_PMOVZXDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8100, IF_SSE41|IF_SQ},
4680 ITEMPLATE_END
4683 static const struct itemplate instrux_PMOVZXWD[] = {
4684 {I_PMOVZXWD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8086, IF_SSE41|IF_SQ},
4685 ITEMPLATE_END
4688 static const struct itemplate instrux_PMOVZXWQ[] = {
4689 {I_PMOVZXWQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8093, IF_SSE41|IF_SD},
4690 ITEMPLATE_END
4693 static const struct itemplate instrux_PMULDQ[] = {
4694 {I_PMULDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8107, IF_SSE41},
4695 ITEMPLATE_END
4698 static const struct itemplate instrux_PMULHRIW[] = {
4699 {I_PMULHRIW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+14790, IF_PENT|IF_MMX|IF_SQ|IF_CYRIX},
4700 ITEMPLATE_END
4703 static const struct itemplate instrux_PMULHRSW[] = {
4704 {I_PMULHRSW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7827, IF_SSSE3|IF_MMX|IF_SQ},
4705 {I_PMULHRSW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+7834, IF_SSSE3},
4706 ITEMPLATE_END
4709 static const struct itemplate instrux_PMULHRWA[] = {
4710 {I_PMULHRWA, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5247, IF_PENT|IF_3DNOW|IF_SQ},
4711 ITEMPLATE_END
4714 static const struct itemplate instrux_PMULHRWC[] = {
4715 {I_PMULHRWC, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+14796, IF_PENT|IF_MMX|IF_SQ|IF_CYRIX},
4716 ITEMPLATE_END
4719 static const struct itemplate instrux_PMULHUW[] = {
4720 {I_PMULHUW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7470, IF_KATMAI|IF_MMX|IF_SQ},
4721 {I_PMULHUW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15738, IF_WILLAMETTE|IF_SSE2|IF_SO},
4722 ITEMPLATE_END
4725 static const struct itemplate instrux_PMULHW[] = {
4726 {I_PMULHW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7015, IF_PENT|IF_MMX|IF_SQ},
4727 {I_PMULHW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15744, IF_WILLAMETTE|IF_SSE2|IF_SO},
4728 ITEMPLATE_END
4731 static const struct itemplate instrux_PMULLD[] = {
4732 {I_PMULLD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8114, IF_SSE41},
4733 ITEMPLATE_END
4736 static const struct itemplate instrux_PMULLW[] = {
4737 {I_PMULLW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7022, IF_PENT|IF_MMX|IF_SQ},
4738 {I_PMULLW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15750, IF_WILLAMETTE|IF_SSE2|IF_SO},
4739 ITEMPLATE_END
4742 static const struct itemplate instrux_PMULUDQ[] = {
4743 {I_PMULUDQ, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7519, IF_WILLAMETTE|IF_SSE2|IF_SO},
4744 {I_PMULUDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15756, IF_WILLAMETTE|IF_SSE2|IF_SO},
4745 ITEMPLATE_END
4748 static const struct itemplate instrux_PMVGEZB[] = {
4749 {I_PMVGEZB, 2, {MMXREG,MEMORY,0,0,0}, nasm_bytecodes+16171, IF_PENT|IF_MMX|IF_SQ|IF_CYRIX},
4750 ITEMPLATE_END
4753 static const struct itemplate instrux_PMVLZB[] = {
4754 {I_PMVLZB, 2, {MMXREG,MEMORY,0,0,0}, nasm_bytecodes+16027, IF_PENT|IF_MMX|IF_SQ|IF_CYRIX},
4755 ITEMPLATE_END
4758 static const struct itemplate instrux_PMVNZB[] = {
4759 {I_PMVNZB, 2, {MMXREG,MEMORY,0,0,0}, nasm_bytecodes+16009, IF_PENT|IF_MMX|IF_SQ|IF_CYRIX},
4760 ITEMPLATE_END
4763 static const struct itemplate instrux_PMVZB[] = {
4764 {I_PMVZB, 2, {MMXREG,MEMORY,0,0,0}, nasm_bytecodes+15931, IF_PENT|IF_MMX|IF_SQ|IF_CYRIX},
4765 ITEMPLATE_END
4768 static const struct itemplate instrux_POP[] = {
4769 {I_POP, 1, {REG16,0,0,0,0}, nasm_bytecodes+20121, IF_8086},
4770 {I_POP, 1, {REG32,0,0,0,0}, nasm_bytecodes+20125, IF_386|IF_NOLONG},
4771 {I_POP, 1, {REG64,0,0,0,0}, nasm_bytecodes+20129, IF_X64},
4772 {I_POP, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+18670, IF_8086},
4773 {I_POP, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+18675, IF_386|IF_NOLONG},
4774 {I_POP, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+18680, IF_X64},
4775 {I_POP, 1, {REG_CS,0,0,0,0}, nasm_bytecodes+4398, IF_8086|IF_UNDOC},
4776 {I_POP, 1, {REG_DESS,0,0,0,0}, nasm_bytecodes+19939, IF_8086|IF_NOLONG},
4777 {I_POP, 1, {REG_FSGS,0,0,0,0}, nasm_bytecodes+20133, IF_386},
4778 ITEMPLATE_END
4781 static const struct itemplate instrux_POPA[] = {
4782 {I_POPA, 0, {0,0,0,0,0}, nasm_bytecodes+20137, IF_186|IF_NOLONG},
4783 ITEMPLATE_END
4786 static const struct itemplate instrux_POPAD[] = {
4787 {I_POPAD, 0, {0,0,0,0,0}, nasm_bytecodes+20141, IF_386|IF_NOLONG},
4788 ITEMPLATE_END
4791 static const struct itemplate instrux_POPAW[] = {
4792 {I_POPAW, 0, {0,0,0,0,0}, nasm_bytecodes+20145, IF_186|IF_NOLONG},
4793 ITEMPLATE_END
4796 static const struct itemplate instrux_POPCNT[] = {
4797 {I_POPCNT, 2, {REG16,RM_GPR|BITS16,0,0,0}, nasm_bytecodes+8135, IF_NEHALEM|IF_SW},
4798 {I_POPCNT, 2, {REG32,RM_GPR|BITS32,0,0,0}, nasm_bytecodes+8142, IF_NEHALEM|IF_SD},
4799 {I_POPCNT, 2, {REG64,RM_GPR|BITS64,0,0,0}, nasm_bytecodes+8149, IF_NEHALEM|IF_SQ|IF_X64},
4800 ITEMPLATE_END
4803 static const struct itemplate instrux_POPF[] = {
4804 {I_POPF, 0, {0,0,0,0,0}, nasm_bytecodes+20149, IF_8086},
4805 ITEMPLATE_END
4808 static const struct itemplate instrux_POPFD[] = {
4809 {I_POPFD, 0, {0,0,0,0,0}, nasm_bytecodes+20153, IF_386|IF_NOLONG},
4810 ITEMPLATE_END
4813 static const struct itemplate instrux_POPFQ[] = {
4814 {I_POPFQ, 0, {0,0,0,0,0}, nasm_bytecodes+20153, IF_X64},
4815 ITEMPLATE_END
4818 static const struct itemplate instrux_POPFW[] = {
4819 {I_POPFW, 0, {0,0,0,0,0}, nasm_bytecodes+20157, IF_8086},
4820 ITEMPLATE_END
4823 static const struct itemplate instrux_POR[] = {
4824 {I_POR, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7029, IF_PENT|IF_MMX|IF_SQ},
4825 {I_POR, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15762, IF_WILLAMETTE|IF_SSE2|IF_SO},
4826 ITEMPLATE_END
4829 static const struct itemplate instrux_PPERM[] = {
4830 {I_PPERM, 4, {XMMREG,SAME_AS|0,XMMREG,RM_XMM,0}, nasm_bytecodes+8688, IF_SSE5|IF_AMD},
4831 {I_PPERM, 4, {XMMREG,SAME_AS|0,RM_XMM,XMMREG,0}, nasm_bytecodes+8695, IF_SSE5|IF_AMD},
4832 {I_PPERM, 4, {XMMREG,XMMREG,RM_XMM,SAME_AS|0,0}, nasm_bytecodes+8702, IF_SSE5|IF_AMD},
4833 {I_PPERM, 4, {XMMREG,RM_XMM,XMMREG,SAME_AS|0,0}, nasm_bytecodes+8709, IF_SSE5|IF_AMD},
4834 ITEMPLATE_END
4837 static const struct itemplate instrux_PREFETCH[] = {
4838 {I_PREFETCH, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+18685, IF_PENT|IF_3DNOW|IF_SQ},
4839 ITEMPLATE_END
4842 static const struct itemplate instrux_PREFETCHNTA[] = {
4843 {I_PREFETCHNTA, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+16369, IF_KATMAI},
4844 ITEMPLATE_END
4847 static const struct itemplate instrux_PREFETCHT0[] = {
4848 {I_PREFETCHT0, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+16387, IF_KATMAI},
4849 ITEMPLATE_END
4852 static const struct itemplate instrux_PREFETCHT1[] = {
4853 {I_PREFETCHT1, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+16405, IF_KATMAI},
4854 ITEMPLATE_END
4857 static const struct itemplate instrux_PREFETCHT2[] = {
4858 {I_PREFETCHT2, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+16423, IF_KATMAI},
4859 ITEMPLATE_END
4862 static const struct itemplate instrux_PREFETCHW[] = {
4863 {I_PREFETCHW, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+18690, IF_PENT|IF_3DNOW|IF_SQ},
4864 ITEMPLATE_END
4867 static const struct itemplate instrux_PROTB[] = {
4868 {I_PROTB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+8800, IF_SSE5|IF_AMD},
4869 {I_PROTB, 3, {XMMREG,RM_XMM,XMMREG,0,0}, nasm_bytecodes+8807, IF_SSE5|IF_AMD},
4870 {I_PROTB, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5863, IF_SSE5|IF_AMD},
4871 ITEMPLATE_END
4874 static const struct itemplate instrux_PROTD[] = {
4875 {I_PROTD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+8828, IF_SSE5|IF_AMD},
4876 {I_PROTD, 3, {XMMREG,RM_XMM,XMMREG,0,0}, nasm_bytecodes+8835, IF_SSE5|IF_AMD},
4877 {I_PROTD, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5879, IF_SSE5|IF_AMD},
4878 ITEMPLATE_END
4881 static const struct itemplate instrux_PROTQ[] = {
4882 {I_PROTQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+8842, IF_SSE5|IF_AMD},
4883 {I_PROTQ, 3, {XMMREG,RM_XMM,XMMREG,0,0}, nasm_bytecodes+8849, IF_SSE5|IF_AMD},
4884 {I_PROTQ, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5887, IF_SSE5|IF_AMD},
4885 ITEMPLATE_END
4888 static const struct itemplate instrux_PROTW[] = {
4889 {I_PROTW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+8814, IF_SSE5|IF_AMD},
4890 {I_PROTW, 3, {XMMREG,RM_XMM,XMMREG,0,0}, nasm_bytecodes+8821, IF_SSE5|IF_AMD},
4891 {I_PROTW, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5871, IF_SSE5|IF_AMD},
4892 ITEMPLATE_END
4895 static const struct itemplate instrux_PSADBW[] = {
4896 {I_PSADBW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7477, IF_KATMAI|IF_MMX|IF_SQ},
4897 {I_PSADBW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15768, IF_WILLAMETTE|IF_SSE2|IF_SO},
4898 ITEMPLATE_END
4901 static const struct itemplate instrux_PSHAB[] = {
4902 {I_PSHAB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+8912, IF_SSE5|IF_AMD},
4903 {I_PSHAB, 3, {XMMREG,RM_XMM,XMMREG,0,0}, nasm_bytecodes+8919, IF_SSE5|IF_AMD},
4904 ITEMPLATE_END
4907 static const struct itemplate instrux_PSHAD[] = {
4908 {I_PSHAD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+8940, IF_SSE5|IF_AMD},
4909 {I_PSHAD, 3, {XMMREG,RM_XMM,XMMREG,0,0}, nasm_bytecodes+8947, IF_SSE5|IF_AMD},
4910 ITEMPLATE_END
4913 static const struct itemplate instrux_PSHAQ[] = {
4914 {I_PSHAQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+8954, IF_SSE5|IF_AMD},
4915 {I_PSHAQ, 3, {XMMREG,RM_XMM,XMMREG,0,0}, nasm_bytecodes+8961, IF_SSE5|IF_AMD},
4916 ITEMPLATE_END
4919 static const struct itemplate instrux_PSHAW[] = {
4920 {I_PSHAW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+8926, IF_SSE5|IF_AMD},
4921 {I_PSHAW, 3, {XMMREG,RM_XMM,XMMREG,0,0}, nasm_bytecodes+8933, IF_SSE5|IF_AMD},
4922 ITEMPLATE_END
4925 static const struct itemplate instrux_PSHLB[] = {
4926 {I_PSHLB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+8856, IF_SSE5|IF_AMD},
4927 {I_PSHLB, 3, {XMMREG,RM_XMM,XMMREG,0,0}, nasm_bytecodes+8863, IF_SSE5|IF_AMD},
4928 ITEMPLATE_END
4931 static const struct itemplate instrux_PSHLD[] = {
4932 {I_PSHLD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+8884, IF_SSE5|IF_AMD},
4933 {I_PSHLD, 3, {XMMREG,RM_XMM,XMMREG,0,0}, nasm_bytecodes+8891, IF_SSE5|IF_AMD},
4934 ITEMPLATE_END
4937 static const struct itemplate instrux_PSHLQ[] = {
4938 {I_PSHLQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+8898, IF_SSE5|IF_AMD},
4939 {I_PSHLQ, 3, {XMMREG,RM_XMM,XMMREG,0,0}, nasm_bytecodes+8905, IF_SSE5|IF_AMD},
4940 ITEMPLATE_END
4943 static const struct itemplate instrux_PSHLW[] = {
4944 {I_PSHLW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+8870, IF_SSE5|IF_AMD},
4945 {I_PSHLW, 3, {XMMREG,RM_XMM,XMMREG,0,0}, nasm_bytecodes+8877, IF_SSE5|IF_AMD},
4946 ITEMPLATE_END
4949 static const struct itemplate instrux_PSHUFB[] = {
4950 {I_PSHUFB, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7841, IF_SSSE3|IF_MMX|IF_SQ},
4951 {I_PSHUFB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+7848, IF_SSSE3},
4952 ITEMPLATE_END
4955 static const struct itemplate instrux_PSHUFD[] = {
4956 {I_PSHUFD, 3, {XMMREG,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+7526, IF_WILLAMETTE|IF_SSE2|IF_SB|IF_AR2},
4957 {I_PSHUFD, 3, {XMMREG,MEMORY,IMMEDIATE,0,0}, nasm_bytecodes+7526, IF_WILLAMETTE|IF_SSE2|IF_SM2|IF_SB|IF_AR2},
4958 ITEMPLATE_END
4961 static const struct itemplate instrux_PSHUFHW[] = {
4962 {I_PSHUFHW, 3, {XMMREG,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+7533, IF_WILLAMETTE|IF_SSE2|IF_SB|IF_AR2},
4963 {I_PSHUFHW, 3, {XMMREG,MEMORY,IMMEDIATE,0,0}, nasm_bytecodes+7533, IF_WILLAMETTE|IF_SSE2|IF_SM2|IF_SB|IF_AR2},
4964 ITEMPLATE_END
4967 static const struct itemplate instrux_PSHUFLW[] = {
4968 {I_PSHUFLW, 3, {XMMREG,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+7540, IF_WILLAMETTE|IF_SSE2|IF_SB|IF_AR2},
4969 {I_PSHUFLW, 3, {XMMREG,MEMORY,IMMEDIATE,0,0}, nasm_bytecodes+7540, IF_WILLAMETTE|IF_SSE2|IF_SM2|IF_SB|IF_AR2},
4970 ITEMPLATE_END
4973 static const struct itemplate instrux_PSHUFW[] = {
4974 {I_PSHUFW, 3, {MMXREG,RM_MMX,IMMEDIATE,0,0}, nasm_bytecodes+5383, IF_KATMAI|IF_MMX|IF_SM2|IF_SB|IF_AR2},
4975 ITEMPLATE_END
4978 static const struct itemplate instrux_PSIGNB[] = {
4979 {I_PSIGNB, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7855, IF_SSSE3|IF_MMX|IF_SQ},
4980 {I_PSIGNB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+7862, IF_SSSE3},
4981 ITEMPLATE_END
4984 static const struct itemplate instrux_PSIGND[] = {
4985 {I_PSIGND, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7883, IF_SSSE3|IF_MMX|IF_SQ},
4986 {I_PSIGND, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+7890, IF_SSSE3},
4987 ITEMPLATE_END
4990 static const struct itemplate instrux_PSIGNW[] = {
4991 {I_PSIGNW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7869, IF_SSSE3|IF_MMX|IF_SQ},
4992 {I_PSIGNW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+7876, IF_SSSE3},
4993 ITEMPLATE_END
4996 static const struct itemplate instrux_PSLLD[] = {
4997 {I_PSLLD, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7036, IF_PENT|IF_MMX|IF_SQ},
4998 {I_PSLLD, 2, {MMXREG,IMMEDIATE,0,0,0}, nasm_bytecodes+7043, IF_PENT|IF_MMX},
4999 {I_PSLLD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15780, IF_WILLAMETTE|IF_SSE2|IF_SO},
5000 {I_PSLLD, 2, {XMMREG,IMMEDIATE,0,0,0}, nasm_bytecodes+7561, IF_WILLAMETTE|IF_SSE2|IF_SB|IF_AR1},
5001 ITEMPLATE_END
5004 static const struct itemplate instrux_PSLLDQ[] = {
5005 {I_PSLLDQ, 2, {XMMREG,IMMEDIATE,0,0,0}, nasm_bytecodes+7547, IF_WILLAMETTE|IF_SSE2|IF_SB|IF_AR1},
5006 ITEMPLATE_END
5009 static const struct itemplate instrux_PSLLQ[] = {
5010 {I_PSLLQ, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7050, IF_PENT|IF_MMX|IF_SQ},
5011 {I_PSLLQ, 2, {MMXREG,IMMEDIATE,0,0,0}, nasm_bytecodes+7057, IF_PENT|IF_MMX},
5012 {I_PSLLQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15786, IF_WILLAMETTE|IF_SSE2|IF_SO},
5013 {I_PSLLQ, 2, {XMMREG,IMMEDIATE,0,0,0}, nasm_bytecodes+7568, IF_WILLAMETTE|IF_SSE2|IF_SB|IF_AR1},
5014 ITEMPLATE_END
5017 static const struct itemplate instrux_PSLLW[] = {
5018 {I_PSLLW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7064, IF_PENT|IF_MMX|IF_SQ},
5019 {I_PSLLW, 2, {MMXREG,IMMEDIATE,0,0,0}, nasm_bytecodes+7071, IF_PENT|IF_MMX},
5020 {I_PSLLW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15774, IF_WILLAMETTE|IF_SSE2|IF_SO},
5021 {I_PSLLW, 2, {XMMREG,IMMEDIATE,0,0,0}, nasm_bytecodes+7554, IF_WILLAMETTE|IF_SSE2|IF_SB|IF_AR1},
5022 ITEMPLATE_END
5025 static const struct itemplate instrux_PSRAD[] = {
5026 {I_PSRAD, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7078, IF_PENT|IF_MMX|IF_SQ},
5027 {I_PSRAD, 2, {MMXREG,IMMEDIATE,0,0,0}, nasm_bytecodes+7085, IF_PENT|IF_MMX},
5028 {I_PSRAD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15798, IF_WILLAMETTE|IF_SSE2|IF_SO},
5029 {I_PSRAD, 2, {XMMREG,IMMEDIATE,0,0,0}, nasm_bytecodes+7582, IF_WILLAMETTE|IF_SSE2|IF_SB|IF_AR1},
5030 ITEMPLATE_END
5033 static const struct itemplate instrux_PSRAW[] = {
5034 {I_PSRAW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7092, IF_PENT|IF_MMX|IF_SQ},
5035 {I_PSRAW, 2, {MMXREG,IMMEDIATE,0,0,0}, nasm_bytecodes+7099, IF_PENT|IF_MMX},
5036 {I_PSRAW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15792, IF_WILLAMETTE|IF_SSE2|IF_SO},
5037 {I_PSRAW, 2, {XMMREG,IMMEDIATE,0,0,0}, nasm_bytecodes+7575, IF_WILLAMETTE|IF_SSE2|IF_SB|IF_AR1},
5038 ITEMPLATE_END
5041 static const struct itemplate instrux_PSRLD[] = {
5042 {I_PSRLD, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7106, IF_PENT|IF_MMX|IF_SQ},
5043 {I_PSRLD, 2, {MMXREG,IMMEDIATE,0,0,0}, nasm_bytecodes+7113, IF_PENT|IF_MMX},
5044 {I_PSRLD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15810, IF_WILLAMETTE|IF_SSE2|IF_SO},
5045 {I_PSRLD, 2, {XMMREG,IMMEDIATE,0,0,0}, nasm_bytecodes+7603, IF_WILLAMETTE|IF_SSE2|IF_SB|IF_AR1},
5046 ITEMPLATE_END
5049 static const struct itemplate instrux_PSRLDQ[] = {
5050 {I_PSRLDQ, 2, {XMMREG,IMMEDIATE,0,0,0}, nasm_bytecodes+7589, IF_WILLAMETTE|IF_SSE2|IF_SB|IF_AR1},
5051 ITEMPLATE_END
5054 static const struct itemplate instrux_PSRLQ[] = {
5055 {I_PSRLQ, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7120, IF_PENT|IF_MMX|IF_SQ},
5056 {I_PSRLQ, 2, {MMXREG,IMMEDIATE,0,0,0}, nasm_bytecodes+7127, IF_PENT|IF_MMX},
5057 {I_PSRLQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15816, IF_WILLAMETTE|IF_SSE2|IF_SO},
5058 {I_PSRLQ, 2, {XMMREG,IMMEDIATE,0,0,0}, nasm_bytecodes+7610, IF_WILLAMETTE|IF_SSE2|IF_SB|IF_AR1},
5059 ITEMPLATE_END
5062 static const struct itemplate instrux_PSRLW[] = {
5063 {I_PSRLW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7134, IF_PENT|IF_MMX|IF_SQ},
5064 {I_PSRLW, 2, {MMXREG,IMMEDIATE,0,0,0}, nasm_bytecodes+7141, IF_PENT|IF_MMX},
5065 {I_PSRLW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15804, IF_WILLAMETTE|IF_SSE2|IF_SO},
5066 {I_PSRLW, 2, {XMMREG,IMMEDIATE,0,0,0}, nasm_bytecodes+7596, IF_WILLAMETTE|IF_SSE2|IF_SB|IF_AR1},
5067 ITEMPLATE_END
5070 static const struct itemplate instrux_PSUBB[] = {
5071 {I_PSUBB, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7148, IF_PENT|IF_MMX|IF_SQ},
5072 {I_PSUBB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15822, IF_WILLAMETTE|IF_SSE2|IF_SO},
5073 ITEMPLATE_END
5076 static const struct itemplate instrux_PSUBD[] = {
5077 {I_PSUBD, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7155, IF_PENT|IF_MMX|IF_SQ},
5078 {I_PSUBD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15834, IF_WILLAMETTE|IF_SSE2|IF_SO},
5079 ITEMPLATE_END
5082 static const struct itemplate instrux_PSUBQ[] = {
5083 {I_PSUBQ, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7617, IF_WILLAMETTE|IF_SSE2|IF_SO},
5084 {I_PSUBQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15840, IF_WILLAMETTE|IF_SSE2|IF_SO},
5085 ITEMPLATE_END
5088 static const struct itemplate instrux_PSUBSB[] = {
5089 {I_PSUBSB, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7162, IF_PENT|IF_MMX|IF_SQ},
5090 {I_PSUBSB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15846, IF_WILLAMETTE|IF_SSE2|IF_SO},
5091 ITEMPLATE_END
5094 static const struct itemplate instrux_PSUBSIW[] = {
5095 {I_PSUBSIW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+14802, IF_PENT|IF_MMX|IF_SQ|IF_CYRIX},
5096 ITEMPLATE_END
5099 static const struct itemplate instrux_PSUBSW[] = {
5100 {I_PSUBSW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7169, IF_PENT|IF_MMX|IF_SQ},
5101 {I_PSUBSW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15852, IF_WILLAMETTE|IF_SSE2|IF_SO},
5102 ITEMPLATE_END
5105 static const struct itemplate instrux_PSUBUSB[] = {
5106 {I_PSUBUSB, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7176, IF_PENT|IF_MMX|IF_SQ},
5107 {I_PSUBUSB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15858, IF_WILLAMETTE|IF_SSE2|IF_SO},
5108 ITEMPLATE_END
5111 static const struct itemplate instrux_PSUBUSW[] = {
5112 {I_PSUBUSW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7183, IF_PENT|IF_MMX|IF_SQ},
5113 {I_PSUBUSW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15864, IF_WILLAMETTE|IF_SSE2|IF_SO},
5114 ITEMPLATE_END
5117 static const struct itemplate instrux_PSUBW[] = {
5118 {I_PSUBW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7190, IF_PENT|IF_MMX|IF_SQ},
5119 {I_PSUBW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15828, IF_WILLAMETTE|IF_SSE2|IF_SO},
5120 ITEMPLATE_END
5123 static const struct itemplate instrux_PSWAPD[] = {
5124 {I_PSWAPD, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+5423, IF_PENT|IF_3DNOW|IF_SQ},
5125 ITEMPLATE_END
5128 static const struct itemplate instrux_PTEST[] = {
5129 {I_PTEST, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+8121, IF_SSE41},
5130 ITEMPLATE_END
5133 static const struct itemplate instrux_PUNPCKHBW[] = {
5134 {I_PUNPCKHBW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7197, IF_PENT|IF_MMX|IF_SQ},
5135 {I_PUNPCKHBW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15870, IF_WILLAMETTE|IF_SSE2|IF_SO},
5136 ITEMPLATE_END
5139 static const struct itemplate instrux_PUNPCKHDQ[] = {
5140 {I_PUNPCKHDQ, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7204, IF_PENT|IF_MMX|IF_SQ},
5141 {I_PUNPCKHDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15882, IF_WILLAMETTE|IF_SSE2|IF_SO},
5142 ITEMPLATE_END
5145 static const struct itemplate instrux_PUNPCKHQDQ[] = {
5146 {I_PUNPCKHQDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15888, IF_WILLAMETTE|IF_SSE2|IF_SO},
5147 ITEMPLATE_END
5150 static const struct itemplate instrux_PUNPCKHWD[] = {
5151 {I_PUNPCKHWD, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7211, IF_PENT|IF_MMX|IF_SQ},
5152 {I_PUNPCKHWD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15876, IF_WILLAMETTE|IF_SSE2|IF_SO},
5153 ITEMPLATE_END
5156 static const struct itemplate instrux_PUNPCKLBW[] = {
5157 {I_PUNPCKLBW, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7218, IF_PENT|IF_MMX|IF_SQ},
5158 {I_PUNPCKLBW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15894, IF_WILLAMETTE|IF_SSE2|IF_SO},
5159 ITEMPLATE_END
5162 static const struct itemplate instrux_PUNPCKLDQ[] = {
5163 {I_PUNPCKLDQ, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7225, IF_PENT|IF_MMX|IF_SQ},
5164 {I_PUNPCKLDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15906, IF_WILLAMETTE|IF_SSE2|IF_SO},
5165 ITEMPLATE_END
5168 static const struct itemplate instrux_PUNPCKLQDQ[] = {
5169 {I_PUNPCKLQDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15912, IF_WILLAMETTE|IF_SSE2|IF_SO},
5170 ITEMPLATE_END
5173 static const struct itemplate instrux_PUNPCKLWD[] = {
5174 {I_PUNPCKLWD, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7232, IF_PENT|IF_MMX|IF_SQ},
5175 {I_PUNPCKLWD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15900, IF_WILLAMETTE|IF_SSE2|IF_SO},
5176 ITEMPLATE_END
5179 static const struct itemplate instrux_PUSH[] = {
5180 {I_PUSH, 1, {REG16,0,0,0,0}, nasm_bytecodes+20161, IF_8086},
5181 {I_PUSH, 1, {REG32,0,0,0,0}, nasm_bytecodes+20165, IF_386|IF_NOLONG},
5182 {I_PUSH, 1, {REG64,0,0,0,0}, nasm_bytecodes+20169, IF_X64},
5183 {I_PUSH, 1, {RM_GPR|BITS16,0,0,0,0}, nasm_bytecodes+18695, IF_8086},
5184 {I_PUSH, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+18700, IF_386|IF_NOLONG},
5185 {I_PUSH, 1, {RM_GPR|BITS64,0,0,0,0}, nasm_bytecodes+18705, IF_X64},
5186 {I_PUSH, 1, {REG_CS,0,0,0,0}, nasm_bytecodes+19915, IF_8086|IF_NOLONG},
5187 {I_PUSH, 1, {REG_DESS,0,0,0,0}, nasm_bytecodes+19915, IF_8086|IF_NOLONG},
5188 {I_PUSH, 1, {REG_FSGS,0,0,0,0}, nasm_bytecodes+20173, IF_386},
5189 {I_PUSH, 1, {IMMEDIATE|BITS8,0,0,0,0}, nasm_bytecodes+20177, IF_186},
5190 {I_PUSH, 1, {IMMEDIATE|BITS16,0,0,0,0}, nasm_bytecodes+18710, IF_186|IF_AR0|IF_SZ},
5191 {I_PUSH, 1, {IMMEDIATE|BITS32,0,0,0,0}, nasm_bytecodes+18715, IF_386|IF_NOLONG|IF_AR0|IF_SZ},
5192 {I_PUSH, 1, {IMMEDIATE|BITS32,0,0,0,0}, nasm_bytecodes+18715, IF_386|IF_NOLONG|IF_SD},
5193 {I_PUSH, 1, {IMMEDIATE|BITS64,0,0,0,0}, nasm_bytecodes+18720, IF_X64|IF_AR0|IF_SZ},
5194 ITEMPLATE_END
5197 static const struct itemplate instrux_PUSHA[] = {
5198 {I_PUSHA, 0, {0,0,0,0,0}, nasm_bytecodes+20181, IF_186|IF_NOLONG},
5199 ITEMPLATE_END
5202 static const struct itemplate instrux_PUSHAD[] = {
5203 {I_PUSHAD, 0, {0,0,0,0,0}, nasm_bytecodes+20185, IF_386|IF_NOLONG},
5204 ITEMPLATE_END
5207 static const struct itemplate instrux_PUSHAW[] = {
5208 {I_PUSHAW, 0, {0,0,0,0,0}, nasm_bytecodes+20189, IF_186|IF_NOLONG},
5209 ITEMPLATE_END
5212 static const struct itemplate instrux_PUSHF[] = {
5213 {I_PUSHF, 0, {0,0,0,0,0}, nasm_bytecodes+20193, IF_8086},
5214 ITEMPLATE_END
5217 static const struct itemplate instrux_PUSHFD[] = {
5218 {I_PUSHFD, 0, {0,0,0,0,0}, nasm_bytecodes+20197, IF_386|IF_NOLONG},
5219 ITEMPLATE_END
5222 static const struct itemplate instrux_PUSHFQ[] = {
5223 {I_PUSHFQ, 0, {0,0,0,0,0}, nasm_bytecodes+20197, IF_X64},
5224 ITEMPLATE_END
5227 static const struct itemplate instrux_PUSHFW[] = {
5228 {I_PUSHFW, 0, {0,0,0,0,0}, nasm_bytecodes+20201, IF_8086},
5229 ITEMPLATE_END
5232 static const struct itemplate instrux_PXOR[] = {
5233 {I_PXOR, 2, {MMXREG,RM_MMX,0,0,0}, nasm_bytecodes+7239, IF_PENT|IF_MMX|IF_SQ},
5234 {I_PXOR, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15918, IF_WILLAMETTE|IF_SSE2|IF_SO},
5235 ITEMPLATE_END
5238 static const struct itemplate instrux_RCL[] = {
5239 {I_RCL, 2, {RM_GPR|BITS8,UNITY,0,0,0}, nasm_bytecodes+20205, IF_8086},
5240 {I_RCL, 2, {RM_GPR|BITS8,REG_CL,0,0,0}, nasm_bytecodes+20209, IF_8086},
5241 {I_RCL, 2, {RM_GPR|BITS8,IMMEDIATE,0,0,0}, nasm_bytecodes+18725, IF_186|IF_SB},
5242 {I_RCL, 2, {RM_GPR|BITS16,UNITY,0,0,0}, nasm_bytecodes+18730, IF_8086},
5243 {I_RCL, 2, {RM_GPR|BITS16,REG_CL,0,0,0}, nasm_bytecodes+18735, IF_8086},
5244 {I_RCL, 2, {RM_GPR|BITS16,IMMEDIATE,0,0,0}, nasm_bytecodes+14808, IF_186|IF_SB},
5245 {I_RCL, 2, {RM_GPR|BITS32,UNITY,0,0,0}, nasm_bytecodes+18740, IF_386},
5246 {I_RCL, 2, {RM_GPR|BITS32,REG_CL,0,0,0}, nasm_bytecodes+18745, IF_386},
5247 {I_RCL, 2, {RM_GPR|BITS32,IMMEDIATE,0,0,0}, nasm_bytecodes+14814, IF_386|IF_SB},
5248 {I_RCL, 2, {RM_GPR|BITS64,UNITY,0,0,0}, nasm_bytecodes+18750, IF_X64},
5249 {I_RCL, 2, {RM_GPR|BITS64,REG_CL,0,0,0}, nasm_bytecodes+18755, IF_X64},
5250 {I_RCL, 2, {RM_GPR|BITS64,IMMEDIATE,0,0,0}, nasm_bytecodes+14820, IF_X64|IF_SB},
5251 ITEMPLATE_END
5254 static const struct itemplate instrux_RCPPS[] = {
5255 {I_RCPPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15378, IF_KATMAI|IF_SSE},
5256 ITEMPLATE_END
5259 static const struct itemplate instrux_RCPSS[] = {
5260 {I_RCPSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15384, IF_KATMAI|IF_SSE},
5261 ITEMPLATE_END
5264 static const struct itemplate instrux_RCR[] = {
5265 {I_RCR, 2, {RM_GPR|BITS8,UNITY,0,0,0}, nasm_bytecodes+20213, IF_8086},
5266 {I_RCR, 2, {RM_GPR|BITS8,REG_CL,0,0,0}, nasm_bytecodes+20217, IF_8086},
5267 {I_RCR, 2, {RM_GPR|BITS8,IMMEDIATE,0,0,0}, nasm_bytecodes+18760, IF_186|IF_SB},
5268 {I_RCR, 2, {RM_GPR|BITS16,UNITY,0,0,0}, nasm_bytecodes+18765, IF_8086},
5269 {I_RCR, 2, {RM_GPR|BITS16,REG_CL,0,0,0}, nasm_bytecodes+18770, IF_8086},
5270 {I_RCR, 2, {RM_GPR|BITS16,IMMEDIATE,0,0,0}, nasm_bytecodes+14826, IF_186|IF_SB},
5271 {I_RCR, 2, {RM_GPR|BITS32,UNITY,0,0,0}, nasm_bytecodes+18775, IF_386},
5272 {I_RCR, 2, {RM_GPR|BITS32,REG_CL,0,0,0}, nasm_bytecodes+18780, IF_386},
5273 {I_RCR, 2, {RM_GPR|BITS32,IMMEDIATE,0,0,0}, nasm_bytecodes+14832, IF_386|IF_SB},
5274 {I_RCR, 2, {RM_GPR|BITS64,UNITY,0,0,0}, nasm_bytecodes+18785, IF_X64},
5275 {I_RCR, 2, {RM_GPR|BITS64,REG_CL,0,0,0}, nasm_bytecodes+18790, IF_X64},
5276 {I_RCR, 2, {RM_GPR|BITS64,IMMEDIATE,0,0,0}, nasm_bytecodes+14838, IF_X64|IF_SB},
5277 ITEMPLATE_END
5280 static const struct itemplate instrux_RDM[] = {
5281 {I_RDM, 0, {0,0,0,0,0}, nasm_bytecodes+19409, IF_P6|IF_CYRIX},
5282 ITEMPLATE_END
5285 static const struct itemplate instrux_RDMSR[] = {
5286 {I_RDMSR, 0, {0,0,0,0,0}, nasm_bytecodes+20221, IF_PENT|IF_PRIV},
5287 ITEMPLATE_END
5290 static const struct itemplate instrux_RDPMC[] = {
5291 {I_RDPMC, 0, {0,0,0,0,0}, nasm_bytecodes+20225, IF_P6},
5292 ITEMPLATE_END
5295 static const struct itemplate instrux_RDSHR[] = {
5296 {I_RDSHR, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+14844, IF_P6|IF_CYRIX|IF_SMM},
5297 ITEMPLATE_END
5300 static const struct itemplate instrux_RDTSC[] = {
5301 {I_RDTSC, 0, {0,0,0,0,0}, nasm_bytecodes+20229, IF_PENT},
5302 ITEMPLATE_END
5305 static const struct itemplate instrux_RDTSCP[] = {
5306 {I_RDTSCP, 0, {0,0,0,0,0}, nasm_bytecodes+18795, IF_X86_64},
5307 ITEMPLATE_END
5310 static const struct itemplate instrux_RESB[] = {
5311 {I_RESB, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+19523, IF_8086},
5312 ITEMPLATE_END
5315 static const struct itemplate instrux_RESD[] = {
5316 ITEMPLATE_END
5319 static const struct itemplate instrux_RESO[] = {
5320 ITEMPLATE_END
5323 static const struct itemplate instrux_RESQ[] = {
5324 ITEMPLATE_END
5327 static const struct itemplate instrux_REST[] = {
5328 ITEMPLATE_END
5331 static const struct itemplate instrux_RESW[] = {
5332 ITEMPLATE_END
5335 static const struct itemplate instrux_RESY[] = {
5336 ITEMPLATE_END
5339 static const struct itemplate instrux_RET[] = {
5340 {I_RET, 0, {0,0,0,0,0}, nasm_bytecodes+19342, IF_8086},
5341 {I_RET, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+20233, IF_8086|IF_SW},
5342 ITEMPLATE_END
5345 static const struct itemplate instrux_RETF[] = {
5346 {I_RETF, 0, {0,0,0,0,0}, nasm_bytecodes+20464, IF_8086},
5347 {I_RETF, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+20237, IF_8086|IF_SW},
5348 ITEMPLATE_END
5351 static const struct itemplate instrux_RETN[] = {
5352 {I_RETN, 0, {0,0,0,0,0}, nasm_bytecodes+19342, IF_8086},
5353 {I_RETN, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+20233, IF_8086|IF_SW},
5354 ITEMPLATE_END
5357 static const struct itemplate instrux_ROL[] = {
5358 {I_ROL, 2, {RM_GPR|BITS8,UNITY,0,0,0}, nasm_bytecodes+20241, IF_8086},
5359 {I_ROL, 2, {RM_GPR|BITS8,REG_CL,0,0,0}, nasm_bytecodes+20245, IF_8086},
5360 {I_ROL, 2, {RM_GPR|BITS8,IMMEDIATE,0,0,0}, nasm_bytecodes+18800, IF_186|IF_SB},
5361 {I_ROL, 2, {RM_GPR|BITS16,UNITY,0,0,0}, nasm_bytecodes+18805, IF_8086},
5362 {I_ROL, 2, {RM_GPR|BITS16,REG_CL,0,0,0}, nasm_bytecodes+18810, IF_8086},
5363 {I_ROL, 2, {RM_GPR|BITS16,IMMEDIATE,0,0,0}, nasm_bytecodes+14850, IF_186|IF_SB},
5364 {I_ROL, 2, {RM_GPR|BITS32,UNITY,0,0,0}, nasm_bytecodes+18815, IF_386},
5365 {I_ROL, 2, {RM_GPR|BITS32,REG_CL,0,0,0}, nasm_bytecodes+18820, IF_386},
5366 {I_ROL, 2, {RM_GPR|BITS32,IMMEDIATE,0,0,0}, nasm_bytecodes+14856, IF_386|IF_SB},
5367 {I_ROL, 2, {RM_GPR|BITS64,UNITY,0,0,0}, nasm_bytecodes+18825, IF_X64},
5368 {I_ROL, 2, {RM_GPR|BITS64,REG_CL,0,0,0}, nasm_bytecodes+18830, IF_X64},
5369 {I_ROL, 2, {RM_GPR|BITS64,IMMEDIATE,0,0,0}, nasm_bytecodes+14862, IF_X64|IF_SB},
5370 ITEMPLATE_END
5373 static const struct itemplate instrux_ROR[] = {
5374 {I_ROR, 2, {RM_GPR|BITS8,UNITY,0,0,0}, nasm_bytecodes+20249, IF_8086},
5375 {I_ROR, 2, {RM_GPR|BITS8,REG_CL,0,0,0}, nasm_bytecodes+20253, IF_8086},
5376 {I_ROR, 2, {RM_GPR|BITS8,IMMEDIATE,0,0,0}, nasm_bytecodes+18835, IF_186|IF_SB},
5377 {I_ROR, 2, {RM_GPR|BITS16,UNITY,0,0,0}, nasm_bytecodes+18840, IF_8086},
5378 {I_ROR, 2, {RM_GPR|BITS16,REG_CL,0,0,0}, nasm_bytecodes+18845, IF_8086},
5379 {I_ROR, 2, {RM_GPR|BITS16,IMMEDIATE,0,0,0}, nasm_bytecodes+14868, IF_186|IF_SB},
5380 {I_ROR, 2, {RM_GPR|BITS32,UNITY,0,0,0}, nasm_bytecodes+18850, IF_386},
5381 {I_ROR, 2, {RM_GPR|BITS32,REG_CL,0,0,0}, nasm_bytecodes+18855, IF_386},
5382 {I_ROR, 2, {RM_GPR|BITS32,IMMEDIATE,0,0,0}, nasm_bytecodes+14874, IF_386|IF_SB},
5383 {I_ROR, 2, {RM_GPR|BITS64,UNITY,0,0,0}, nasm_bytecodes+18860, IF_X64},
5384 {I_ROR, 2, {RM_GPR|BITS64,REG_CL,0,0,0}, nasm_bytecodes+18865, IF_X64},
5385 {I_ROR, 2, {RM_GPR|BITS64,IMMEDIATE,0,0,0}, nasm_bytecodes+14880, IF_X64|IF_SB},
5386 ITEMPLATE_END
5389 static const struct itemplate instrux_ROUNDPD[] = {
5390 {I_ROUNDPD, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5671, IF_SSE41},
5391 {I_ROUNDPD, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5679, IF_SSE5|IF_AMD},
5392 ITEMPLATE_END
5395 static const struct itemplate instrux_ROUNDPS[] = {
5396 {I_ROUNDPS, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5679, IF_SSE41},
5397 {I_ROUNDPS, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5679, IF_SSE5|IF_AMD},
5398 ITEMPLATE_END
5401 static const struct itemplate instrux_ROUNDSD[] = {
5402 {I_ROUNDSD, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5687, IF_SSE41},
5403 {I_ROUNDSD, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5679, IF_SSE5|IF_AMD},
5404 ITEMPLATE_END
5407 static const struct itemplate instrux_ROUNDSS[] = {
5408 {I_ROUNDSS, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5695, IF_SSE41},
5409 {I_ROUNDSS, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5679, IF_SSE5|IF_AMD},
5410 ITEMPLATE_END
5413 static const struct itemplate instrux_RSDC[] = {
5414 {I_RSDC, 2, {REG_SREG,MEMORY|BITS80,0,0,0}, nasm_bytecodes+16279, IF_486|IF_CYRIX|IF_SMM},
5415 ITEMPLATE_END
5418 static const struct itemplate instrux_RSLDT[] = {
5419 {I_RSLDT, 1, {MEMORY|BITS80,0,0,0,0}, nasm_bytecodes+18870, IF_486|IF_CYRIX|IF_SMM},
5420 ITEMPLATE_END
5423 static const struct itemplate instrux_RSM[] = {
5424 {I_RSM, 0, {0,0,0,0,0}, nasm_bytecodes+20257, IF_PENT|IF_SMM},
5425 ITEMPLATE_END
5428 static const struct itemplate instrux_RSQRTPS[] = {
5429 {I_RSQRTPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15390, IF_KATMAI|IF_SSE},
5430 ITEMPLATE_END
5433 static const struct itemplate instrux_RSQRTSS[] = {
5434 {I_RSQRTSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15396, IF_KATMAI|IF_SSE},
5435 ITEMPLATE_END
5438 static const struct itemplate instrux_RSTS[] = {
5439 {I_RSTS, 1, {MEMORY|BITS80,0,0,0,0}, nasm_bytecodes+18875, IF_486|IF_CYRIX|IF_SMM},
5440 ITEMPLATE_END
5443 static const struct itemplate instrux_SAHF[] = {
5444 {I_SAHF, 0, {0,0,0,0,0}, nasm_bytecodes+5132, IF_8086},
5445 ITEMPLATE_END
5448 static const struct itemplate instrux_SAL[] = {
5449 {I_SAL, 2, {RM_GPR|BITS8,UNITY,0,0,0}, nasm_bytecodes+20261, IF_8086},
5450 {I_SAL, 2, {RM_GPR|BITS8,REG_CL,0,0,0}, nasm_bytecodes+20265, IF_8086},
5451 {I_SAL, 2, {RM_GPR|BITS8,IMMEDIATE,0,0,0}, nasm_bytecodes+18880, IF_186|IF_SB},
5452 {I_SAL, 2, {RM_GPR|BITS16,UNITY,0,0,0}, nasm_bytecodes+18885, IF_8086},
5453 {I_SAL, 2, {RM_GPR|BITS16,REG_CL,0,0,0}, nasm_bytecodes+18890, IF_8086},
5454 {I_SAL, 2, {RM_GPR|BITS16,IMMEDIATE,0,0,0}, nasm_bytecodes+14886, IF_186|IF_SB},
5455 {I_SAL, 2, {RM_GPR|BITS32,UNITY,0,0,0}, nasm_bytecodes+18895, IF_386},
5456 {I_SAL, 2, {RM_GPR|BITS32,REG_CL,0,0,0}, nasm_bytecodes+18900, IF_386},
5457 {I_SAL, 2, {RM_GPR|BITS32,IMMEDIATE,0,0,0}, nasm_bytecodes+14892, IF_386|IF_SB},
5458 {I_SAL, 2, {RM_GPR|BITS64,UNITY,0,0,0}, nasm_bytecodes+18905, IF_X64},
5459 {I_SAL, 2, {RM_GPR|BITS64,REG_CL,0,0,0}, nasm_bytecodes+18910, IF_X64},
5460 {I_SAL, 2, {RM_GPR|BITS64,IMMEDIATE,0,0,0}, nasm_bytecodes+14898, IF_X64|IF_SB},
5461 ITEMPLATE_END
5464 static const struct itemplate instrux_SALC[] = {
5465 {I_SALC, 0, {0,0,0,0,0}, nasm_bytecodes+20467, IF_8086|IF_UNDOC},
5466 ITEMPLATE_END
5469 static const struct itemplate instrux_SAR[] = {
5470 {I_SAR, 2, {RM_GPR|BITS8,UNITY,0,0,0}, nasm_bytecodes+20269, IF_8086},
5471 {I_SAR, 2, {RM_GPR|BITS8,REG_CL,0,0,0}, nasm_bytecodes+20273, IF_8086},
5472 {I_SAR, 2, {RM_GPR|BITS8,IMMEDIATE,0,0,0}, nasm_bytecodes+18915, IF_186|IF_SB},
5473 {I_SAR, 2, {RM_GPR|BITS16,UNITY,0,0,0}, nasm_bytecodes+18920, IF_8086},
5474 {I_SAR, 2, {RM_GPR|BITS16,REG_CL,0,0,0}, nasm_bytecodes+18925, IF_8086},
5475 {I_SAR, 2, {RM_GPR|BITS16,IMMEDIATE,0,0,0}, nasm_bytecodes+14904, IF_186|IF_SB},
5476 {I_SAR, 2, {RM_GPR|BITS32,UNITY,0,0,0}, nasm_bytecodes+18930, IF_386},
5477 {I_SAR, 2, {RM_GPR|BITS32,REG_CL,0,0,0}, nasm_bytecodes+18935, IF_386},
5478 {I_SAR, 2, {RM_GPR|BITS32,IMMEDIATE,0,0,0}, nasm_bytecodes+14910, IF_386|IF_SB},
5479 {I_SAR, 2, {RM_GPR|BITS64,UNITY,0,0,0}, nasm_bytecodes+18940, IF_X64},
5480 {I_SAR, 2, {RM_GPR|BITS64,REG_CL,0,0,0}, nasm_bytecodes+18945, IF_X64},
5481 {I_SAR, 2, {RM_GPR|BITS64,IMMEDIATE,0,0,0}, nasm_bytecodes+14916, IF_X64|IF_SB},
5482 ITEMPLATE_END
5485 static const struct itemplate instrux_SBB[] = {
5486 {I_SBB, 2, {MEMORY,REG8,0,0,0}, nasm_bytecodes+20277, IF_8086|IF_SM},
5487 {I_SBB, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+20277, IF_8086},
5488 {I_SBB, 2, {MEMORY,REG16,0,0,0}, nasm_bytecodes+18950, IF_8086|IF_SM},
5489 {I_SBB, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+18950, IF_8086},
5490 {I_SBB, 2, {MEMORY,REG32,0,0,0}, nasm_bytecodes+18955, IF_386|IF_SM},
5491 {I_SBB, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+18955, IF_386},
5492 {I_SBB, 2, {MEMORY,REG64,0,0,0}, nasm_bytecodes+18960, IF_X64|IF_SM},
5493 {I_SBB, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+18960, IF_X64},
5494 {I_SBB, 2, {REG8,MEMORY,0,0,0}, nasm_bytecodes+9559, IF_8086|IF_SM},
5495 {I_SBB, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+9559, IF_8086},
5496 {I_SBB, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+18965, IF_8086|IF_SM},
5497 {I_SBB, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+18965, IF_8086},
5498 {I_SBB, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+18970, IF_386|IF_SM},
5499 {I_SBB, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+18970, IF_386},
5500 {I_SBB, 2, {REG64,MEMORY,0,0,0}, nasm_bytecodes+18975, IF_X64|IF_SM},
5501 {I_SBB, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+18975, IF_X64},
5502 {I_SBB, 2, {RM_GPR|BITS16,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+14922, IF_8086},
5503 {I_SBB, 2, {RM_GPR|BITS32,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+14928, IF_386},
5504 {I_SBB, 2, {RM_GPR|BITS64,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+14934, IF_X64},
5505 {I_SBB, 2, {REG_AL,IMMEDIATE,0,0,0}, nasm_bytecodes+20281, IF_8086|IF_SM},
5506 {I_SBB, 2, {REG_AX,SBYTE16,0,0,0}, nasm_bytecodes+14922, IF_8086|IF_SM},
5507 {I_SBB, 2, {REG_AX,IMMEDIATE,0,0,0}, nasm_bytecodes+18980, IF_8086|IF_SM},
5508 {I_SBB, 2, {REG_EAX,SBYTE32,0,0,0}, nasm_bytecodes+14928, IF_386|IF_SM},
5509 {I_SBB, 2, {REG_EAX,IMMEDIATE,0,0,0}, nasm_bytecodes+18985, IF_386|IF_SM},
5510 {I_SBB, 2, {REG_RAX,SBYTE64,0,0,0}, nasm_bytecodes+14934, IF_X64|IF_SM},
5511 {I_SBB, 2, {REG_RAX,IMMEDIATE,0,0,0}, nasm_bytecodes+18990, IF_X64|IF_SM},
5512 {I_SBB, 2, {RM_GPR|BITS8,IMMEDIATE,0,0,0}, nasm_bytecodes+18995, IF_8086|IF_SM},
5513 {I_SBB, 2, {RM_GPR|BITS16,IMMEDIATE,0,0,0}, nasm_bytecodes+14940, IF_8086|IF_SM},
5514 {I_SBB, 2, {RM_GPR|BITS32,IMMEDIATE,0,0,0}, nasm_bytecodes+14946, IF_386|IF_SM},
5515 {I_SBB, 2, {RM_GPR|BITS64,IMMEDIATE,0,0,0}, nasm_bytecodes+14952, IF_X64|IF_SM},
5516 {I_SBB, 2, {MEMORY,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+18995, IF_8086|IF_SM},
5517 {I_SBB, 2, {MEMORY,IMMEDIATE|BITS16,0,0,0}, nasm_bytecodes+14940, IF_8086|IF_SM},
5518 {I_SBB, 2, {MEMORY,IMMEDIATE|BITS32,0,0,0}, nasm_bytecodes+14946, IF_386|IF_SM},
5519 ITEMPLATE_END
5522 static const struct itemplate instrux_SCASB[] = {
5523 {I_SCASB, 0, {0,0,0,0,0}, nasm_bytecodes+20285, IF_8086},
5524 ITEMPLATE_END
5527 static const struct itemplate instrux_SCASD[] = {
5528 {I_SCASD, 0, {0,0,0,0,0}, nasm_bytecodes+19000, IF_386},
5529 ITEMPLATE_END
5532 static const struct itemplate instrux_SCASQ[] = {
5533 {I_SCASQ, 0, {0,0,0,0,0}, nasm_bytecodes+19005, IF_X64},
5534 ITEMPLATE_END
5537 static const struct itemplate instrux_SCASW[] = {
5538 {I_SCASW, 0, {0,0,0,0,0}, nasm_bytecodes+19010, IF_8086},
5539 ITEMPLATE_END
5542 static const struct itemplate instrux_SFENCE[] = {
5543 {I_SFENCE, 0, {0,0,0,0,0}, nasm_bytecodes+19015, IF_X64|IF_AMD},
5544 {I_SFENCE, 0, {0,0,0,0,0}, nasm_bytecodes+19015, IF_KATMAI},
5545 ITEMPLATE_END
5548 static const struct itemplate instrux_SGDT[] = {
5549 {I_SGDT, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+19020, IF_286},
5550 ITEMPLATE_END
5553 static const struct itemplate instrux_SHL[] = {
5554 {I_SHL, 2, {RM_GPR|BITS8,UNITY,0,0,0}, nasm_bytecodes+20261, IF_8086},
5555 {I_SHL, 2, {RM_GPR|BITS8,REG_CL,0,0,0}, nasm_bytecodes+20265, IF_8086},
5556 {I_SHL, 2, {RM_GPR|BITS8,IMMEDIATE,0,0,0}, nasm_bytecodes+18880, IF_186|IF_SB},
5557 {I_SHL, 2, {RM_GPR|BITS16,UNITY,0,0,0}, nasm_bytecodes+18885, IF_8086},
5558 {I_SHL, 2, {RM_GPR|BITS16,REG_CL,0,0,0}, nasm_bytecodes+18890, IF_8086},
5559 {I_SHL, 2, {RM_GPR|BITS16,IMMEDIATE,0,0,0}, nasm_bytecodes+14886, IF_186|IF_SB},
5560 {I_SHL, 2, {RM_GPR|BITS32,UNITY,0,0,0}, nasm_bytecodes+18895, IF_386},
5561 {I_SHL, 2, {RM_GPR|BITS32,REG_CL,0,0,0}, nasm_bytecodes+18900, IF_386},
5562 {I_SHL, 2, {RM_GPR|BITS32,IMMEDIATE,0,0,0}, nasm_bytecodes+14892, IF_386|IF_SB},
5563 {I_SHL, 2, {RM_GPR|BITS64,UNITY,0,0,0}, nasm_bytecodes+18905, IF_X64},
5564 {I_SHL, 2, {RM_GPR|BITS64,REG_CL,0,0,0}, nasm_bytecodes+18910, IF_X64},
5565 {I_SHL, 2, {RM_GPR|BITS64,IMMEDIATE,0,0,0}, nasm_bytecodes+14898, IF_X64|IF_SB},
5566 ITEMPLATE_END
5569 static const struct itemplate instrux_SHLD[] = {
5570 {I_SHLD, 3, {MEMORY,REG16,IMMEDIATE,0,0}, nasm_bytecodes+7246, IF_386|IF_SM2|IF_SB|IF_AR2},
5571 {I_SHLD, 3, {REG16,REG16,IMMEDIATE,0,0}, nasm_bytecodes+7246, IF_386|IF_SM2|IF_SB|IF_AR2},
5572 {I_SHLD, 3, {MEMORY,REG32,IMMEDIATE,0,0}, nasm_bytecodes+7253, IF_386|IF_SM2|IF_SB|IF_AR2},
5573 {I_SHLD, 3, {REG32,REG32,IMMEDIATE,0,0}, nasm_bytecodes+7253, IF_386|IF_SM2|IF_SB|IF_AR2},
5574 {I_SHLD, 3, {MEMORY,REG64,IMMEDIATE,0,0}, nasm_bytecodes+7260, IF_X64|IF_SM2|IF_SB|IF_AR2},
5575 {I_SHLD, 3, {REG64,REG64,IMMEDIATE,0,0}, nasm_bytecodes+7260, IF_X64|IF_SM2|IF_SB|IF_AR2},
5576 {I_SHLD, 3, {MEMORY,REG16,REG_CL,0,0}, nasm_bytecodes+14958, IF_386|IF_SM},
5577 {I_SHLD, 3, {REG16,REG16,REG_CL,0,0}, nasm_bytecodes+14958, IF_386},
5578 {I_SHLD, 3, {MEMORY,REG32,REG_CL,0,0}, nasm_bytecodes+14964, IF_386|IF_SM},
5579 {I_SHLD, 3, {REG32,REG32,REG_CL,0,0}, nasm_bytecodes+14964, IF_386},
5580 {I_SHLD, 3, {MEMORY,REG64,REG_CL,0,0}, nasm_bytecodes+14970, IF_X64|IF_SM},
5581 {I_SHLD, 3, {REG64,REG64,REG_CL,0,0}, nasm_bytecodes+14970, IF_X64},
5582 ITEMPLATE_END
5585 static const struct itemplate instrux_SHR[] = {
5586 {I_SHR, 2, {RM_GPR|BITS8,UNITY,0,0,0}, nasm_bytecodes+20289, IF_8086},
5587 {I_SHR, 2, {RM_GPR|BITS8,REG_CL,0,0,0}, nasm_bytecodes+20293, IF_8086},
5588 {I_SHR, 2, {RM_GPR|BITS8,IMMEDIATE,0,0,0}, nasm_bytecodes+19025, IF_186|IF_SB},
5589 {I_SHR, 2, {RM_GPR|BITS16,UNITY,0,0,0}, nasm_bytecodes+19030, IF_8086},
5590 {I_SHR, 2, {RM_GPR|BITS16,REG_CL,0,0,0}, nasm_bytecodes+19035, IF_8086},
5591 {I_SHR, 2, {RM_GPR|BITS16,IMMEDIATE,0,0,0}, nasm_bytecodes+14976, IF_186|IF_SB},
5592 {I_SHR, 2, {RM_GPR|BITS32,UNITY,0,0,0}, nasm_bytecodes+19040, IF_386},
5593 {I_SHR, 2, {RM_GPR|BITS32,REG_CL,0,0,0}, nasm_bytecodes+19045, IF_386},
5594 {I_SHR, 2, {RM_GPR|BITS32,IMMEDIATE,0,0,0}, nasm_bytecodes+14982, IF_386|IF_SB},
5595 {I_SHR, 2, {RM_GPR|BITS64,UNITY,0,0,0}, nasm_bytecodes+19050, IF_X64},
5596 {I_SHR, 2, {RM_GPR|BITS64,REG_CL,0,0,0}, nasm_bytecodes+19055, IF_X64},
5597 {I_SHR, 2, {RM_GPR|BITS64,IMMEDIATE,0,0,0}, nasm_bytecodes+14988, IF_X64|IF_SB},
5598 ITEMPLATE_END
5601 static const struct itemplate instrux_SHRD[] = {
5602 {I_SHRD, 3, {MEMORY,REG16,IMMEDIATE,0,0}, nasm_bytecodes+7267, IF_386|IF_SM2|IF_SB|IF_AR2},
5603 {I_SHRD, 3, {REG16,REG16,IMMEDIATE,0,0}, nasm_bytecodes+7267, IF_386|IF_SM2|IF_SB|IF_AR2},
5604 {I_SHRD, 3, {MEMORY,REG32,IMMEDIATE,0,0}, nasm_bytecodes+7274, IF_386|IF_SM2|IF_SB|IF_AR2},
5605 {I_SHRD, 3, {REG32,REG32,IMMEDIATE,0,0}, nasm_bytecodes+7274, IF_386|IF_SM2|IF_SB|IF_AR2},
5606 {I_SHRD, 3, {MEMORY,REG64,IMMEDIATE,0,0}, nasm_bytecodes+7281, IF_X64|IF_SM2|IF_SB|IF_AR2},
5607 {I_SHRD, 3, {REG64,REG64,IMMEDIATE,0,0}, nasm_bytecodes+7281, IF_X64|IF_SM2|IF_SB|IF_AR2},
5608 {I_SHRD, 3, {MEMORY,REG16,REG_CL,0,0}, nasm_bytecodes+14994, IF_386|IF_SM},
5609 {I_SHRD, 3, {REG16,REG16,REG_CL,0,0}, nasm_bytecodes+14994, IF_386},
5610 {I_SHRD, 3, {MEMORY,REG32,REG_CL,0,0}, nasm_bytecodes+15000, IF_386|IF_SM},
5611 {I_SHRD, 3, {REG32,REG32,REG_CL,0,0}, nasm_bytecodes+15000, IF_386},
5612 {I_SHRD, 3, {MEMORY,REG64,REG_CL,0,0}, nasm_bytecodes+15006, IF_X64|IF_SM},
5613 {I_SHRD, 3, {REG64,REG64,REG_CL,0,0}, nasm_bytecodes+15006, IF_X64},
5614 ITEMPLATE_END
5617 static const struct itemplate instrux_SHUFPD[] = {
5618 {I_SHUFPD, 3, {XMMREG,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+7666, IF_WILLAMETTE|IF_SSE2|IF_SB|IF_AR2},
5619 {I_SHUFPD, 3, {XMMREG,MEMORY,IMMEDIATE,0,0}, nasm_bytecodes+7666, IF_WILLAMETTE|IF_SSE2|IF_SM|IF_SB|IF_AR2},
5620 ITEMPLATE_END
5623 static const struct itemplate instrux_SHUFPS[] = {
5624 {I_SHUFPS, 3, {XMMREG,MEMORY,IMMEDIATE,0,0}, nasm_bytecodes+7407, IF_KATMAI|IF_SSE|IF_SB|IF_AR2},
5625 {I_SHUFPS, 3, {XMMREG,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+7407, IF_KATMAI|IF_SSE|IF_SB|IF_AR2},
5626 ITEMPLATE_END
5629 static const struct itemplate instrux_SIDT[] = {
5630 {I_SIDT, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+19060, IF_286},
5631 ITEMPLATE_END
5634 static const struct itemplate instrux_SKINIT[] = {
5635 {I_SKINIT, 0, {0,0,0,0,0}, nasm_bytecodes+19065, IF_X64},
5636 ITEMPLATE_END
5639 static const struct itemplate instrux_SLDT[] = {
5640 {I_SLDT, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+15031, IF_286},
5641 {I_SLDT, 1, {MEMORY|BITS16,0,0,0,0}, nasm_bytecodes+15031, IF_286},
5642 {I_SLDT, 1, {REG16,0,0,0,0}, nasm_bytecodes+15012, IF_286},
5643 {I_SLDT, 1, {REG32,0,0,0,0}, nasm_bytecodes+15018, IF_386},
5644 {I_SLDT, 1, {REG64,0,0,0,0}, nasm_bytecodes+15024, IF_X64},
5645 {I_SLDT, 1, {REG64,0,0,0,0}, nasm_bytecodes+15030, IF_X64},
5646 ITEMPLATE_END
5649 static const struct itemplate instrux_SMI[] = {
5650 {I_SMI, 0, {0,0,0,0,0}, nasm_bytecodes+20437, IF_386|IF_UNDOC},
5651 ITEMPLATE_END
5654 static const struct itemplate instrux_SMINT[] = {
5655 {I_SMINT, 0, {0,0,0,0,0}, nasm_bytecodes+20297, IF_P6|IF_CYRIX},
5656 ITEMPLATE_END
5659 static const struct itemplate instrux_SMINTOLD[] = {
5660 {I_SMINTOLD, 0, {0,0,0,0,0}, nasm_bytecodes+20301, IF_486|IF_CYRIX},
5661 ITEMPLATE_END
5664 static const struct itemplate instrux_SMSW[] = {
5665 {I_SMSW, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+15043, IF_286},
5666 {I_SMSW, 1, {MEMORY|BITS16,0,0,0,0}, nasm_bytecodes+15043, IF_286},
5667 {I_SMSW, 1, {REG16,0,0,0,0}, nasm_bytecodes+15036, IF_286},
5668 {I_SMSW, 1, {REG32,0,0,0,0}, nasm_bytecodes+15042, IF_386},
5669 ITEMPLATE_END
5672 static const struct itemplate instrux_SQRTPD[] = {
5673 {I_SQRTPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16152, IF_WILLAMETTE|IF_SSE2|IF_SO},
5674 ITEMPLATE_END
5677 static const struct itemplate instrux_SQRTPS[] = {
5678 {I_SQRTPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15402, IF_KATMAI|IF_SSE},
5679 ITEMPLATE_END
5682 static const struct itemplate instrux_SQRTSD[] = {
5683 {I_SQRTSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16158, IF_WILLAMETTE|IF_SSE2},
5684 ITEMPLATE_END
5687 static const struct itemplate instrux_SQRTSS[] = {
5688 {I_SQRTSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15408, IF_KATMAI|IF_SSE},
5689 ITEMPLATE_END
5692 static const struct itemplate instrux_STC[] = {
5693 {I_STC, 0, {0,0,0,0,0}, nasm_bytecodes+18797, IF_8086},
5694 ITEMPLATE_END
5697 static const struct itemplate instrux_STD[] = {
5698 {I_STD, 0, {0,0,0,0,0}, nasm_bytecodes+20470, IF_8086},
5699 ITEMPLATE_END
5702 static const struct itemplate instrux_STGI[] = {
5703 {I_STGI, 0, {0,0,0,0,0}, nasm_bytecodes+19070, IF_X64},
5704 ITEMPLATE_END
5707 static const struct itemplate instrux_STI[] = {
5708 {I_STI, 0, {0,0,0,0,0}, nasm_bytecodes+20473, IF_8086},
5709 ITEMPLATE_END
5712 static const struct itemplate instrux_STMXCSR[] = {
5713 {I_STMXCSR, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+19295, IF_KATMAI|IF_SSE|IF_SD},
5714 ITEMPLATE_END
5717 static const struct itemplate instrux_STOSB[] = {
5718 {I_STOSB, 0, {0,0,0,0,0}, nasm_bytecodes+5236, IF_8086},
5719 ITEMPLATE_END
5722 static const struct itemplate instrux_STOSD[] = {
5723 {I_STOSD, 0, {0,0,0,0,0}, nasm_bytecodes+20305, IF_386},
5724 ITEMPLATE_END
5727 static const struct itemplate instrux_STOSQ[] = {
5728 {I_STOSQ, 0, {0,0,0,0,0}, nasm_bytecodes+20309, IF_X64},
5729 ITEMPLATE_END
5732 static const struct itemplate instrux_STOSW[] = {
5733 {I_STOSW, 0, {0,0,0,0,0}, nasm_bytecodes+20313, IF_8086},
5734 ITEMPLATE_END
5737 static const struct itemplate instrux_STR[] = {
5738 {I_STR, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+15061, IF_286|IF_PROT},
5739 {I_STR, 1, {MEMORY|BITS16,0,0,0,0}, nasm_bytecodes+15061, IF_286|IF_PROT},
5740 {I_STR, 1, {REG16,0,0,0,0}, nasm_bytecodes+15048, IF_286|IF_PROT},
5741 {I_STR, 1, {REG32,0,0,0,0}, nasm_bytecodes+15054, IF_386|IF_PROT},
5742 {I_STR, 1, {REG64,0,0,0,0}, nasm_bytecodes+15060, IF_X64},
5743 ITEMPLATE_END
5746 static const struct itemplate instrux_SUB[] = {
5747 {I_SUB, 2, {MEMORY,REG8,0,0,0}, nasm_bytecodes+20317, IF_8086|IF_SM},
5748 {I_SUB, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+20317, IF_8086},
5749 {I_SUB, 2, {MEMORY,REG16,0,0,0}, nasm_bytecodes+19075, IF_8086|IF_SM},
5750 {I_SUB, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+19075, IF_8086},
5751 {I_SUB, 2, {MEMORY,REG32,0,0,0}, nasm_bytecodes+19080, IF_386|IF_SM},
5752 {I_SUB, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+19080, IF_386},
5753 {I_SUB, 2, {MEMORY,REG64,0,0,0}, nasm_bytecodes+19085, IF_X64|IF_SM},
5754 {I_SUB, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+19085, IF_X64},
5755 {I_SUB, 2, {REG8,MEMORY,0,0,0}, nasm_bytecodes+10574, IF_8086|IF_SM},
5756 {I_SUB, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+10574, IF_8086},
5757 {I_SUB, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+19090, IF_8086|IF_SM},
5758 {I_SUB, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+19090, IF_8086},
5759 {I_SUB, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+19095, IF_386|IF_SM},
5760 {I_SUB, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+19095, IF_386},
5761 {I_SUB, 2, {REG64,MEMORY,0,0,0}, nasm_bytecodes+19100, IF_X64|IF_SM},
5762 {I_SUB, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+19100, IF_X64},
5763 {I_SUB, 2, {RM_GPR|BITS16,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+15066, IF_8086},
5764 {I_SUB, 2, {RM_GPR|BITS32,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+15072, IF_386},
5765 {I_SUB, 2, {RM_GPR|BITS64,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+15078, IF_X64},
5766 {I_SUB, 2, {REG_AL,IMMEDIATE,0,0,0}, nasm_bytecodes+20321, IF_8086|IF_SM},
5767 {I_SUB, 2, {REG_AX,SBYTE16,0,0,0}, nasm_bytecodes+15066, IF_8086|IF_SM},
5768 {I_SUB, 2, {REG_AX,IMMEDIATE,0,0,0}, nasm_bytecodes+19105, IF_8086|IF_SM},
5769 {I_SUB, 2, {REG_EAX,SBYTE32,0,0,0}, nasm_bytecodes+15072, IF_386|IF_SM},
5770 {I_SUB, 2, {REG_EAX,IMMEDIATE,0,0,0}, nasm_bytecodes+19110, IF_386|IF_SM},
5771 {I_SUB, 2, {REG_RAX,SBYTE64,0,0,0}, nasm_bytecodes+15078, IF_X64|IF_SM},
5772 {I_SUB, 2, {REG_RAX,IMMEDIATE,0,0,0}, nasm_bytecodes+19115, IF_X64|IF_SM},
5773 {I_SUB, 2, {RM_GPR|BITS8,IMMEDIATE,0,0,0}, nasm_bytecodes+19120, IF_8086|IF_SM},
5774 {I_SUB, 2, {RM_GPR|BITS16,IMMEDIATE,0,0,0}, nasm_bytecodes+15084, IF_8086|IF_SM},
5775 {I_SUB, 2, {RM_GPR|BITS32,IMMEDIATE,0,0,0}, nasm_bytecodes+15090, IF_386|IF_SM},
5776 {I_SUB, 2, {RM_GPR|BITS64,IMMEDIATE,0,0,0}, nasm_bytecodes+15096, IF_X64|IF_SM},
5777 {I_SUB, 2, {MEMORY,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+19120, IF_8086|IF_SM},
5778 {I_SUB, 2, {MEMORY,IMMEDIATE|BITS16,0,0,0}, nasm_bytecodes+15084, IF_8086|IF_SM},
5779 {I_SUB, 2, {MEMORY,IMMEDIATE|BITS32,0,0,0}, nasm_bytecodes+15090, IF_386|IF_SM},
5780 ITEMPLATE_END
5783 static const struct itemplate instrux_SUBPD[] = {
5784 {I_SUBPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16164, IF_WILLAMETTE|IF_SSE2|IF_SO},
5785 ITEMPLATE_END
5788 static const struct itemplate instrux_SUBPS[] = {
5789 {I_SUBPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15414, IF_KATMAI|IF_SSE},
5790 ITEMPLATE_END
5793 static const struct itemplate instrux_SUBSD[] = {
5794 {I_SUBSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16170, IF_WILLAMETTE|IF_SSE2},
5795 ITEMPLATE_END
5798 static const struct itemplate instrux_SUBSS[] = {
5799 {I_SUBSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15420, IF_KATMAI|IF_SSE},
5800 ITEMPLATE_END
5803 static const struct itemplate instrux_SVDC[] = {
5804 {I_SVDC, 2, {MEMORY|BITS80,REG_SREG,0,0,0}, nasm_bytecodes+7675, IF_486|IF_CYRIX|IF_SMM},
5805 ITEMPLATE_END
5808 static const struct itemplate instrux_SVLDT[] = {
5809 {I_SVLDT, 1, {MEMORY|BITS80,0,0,0,0}, nasm_bytecodes+19125, IF_486|IF_CYRIX|IF_SMM},
5810 ITEMPLATE_END
5813 static const struct itemplate instrux_SVTS[] = {
5814 {I_SVTS, 1, {MEMORY|BITS80,0,0,0,0}, nasm_bytecodes+19130, IF_486|IF_CYRIX|IF_SMM},
5815 ITEMPLATE_END
5818 static const struct itemplate instrux_SWAPGS[] = {
5819 {I_SWAPGS, 0, {0,0,0,0,0}, nasm_bytecodes+19135, IF_X64},
5820 ITEMPLATE_END
5823 static const struct itemplate instrux_SYSCALL[] = {
5824 {I_SYSCALL, 0, {0,0,0,0,0}, nasm_bytecodes+20025, IF_P6|IF_AMD},
5825 ITEMPLATE_END
5828 static const struct itemplate instrux_SYSENTER[] = {
5829 {I_SYSENTER, 0, {0,0,0,0,0}, nasm_bytecodes+20325, IF_P6},
5830 ITEMPLATE_END
5833 static const struct itemplate instrux_SYSEXIT[] = {
5834 {I_SYSEXIT, 0, {0,0,0,0,0}, nasm_bytecodes+20329, IF_P6|IF_PRIV},
5835 ITEMPLATE_END
5838 static const struct itemplate instrux_SYSRET[] = {
5839 {I_SYSRET, 0, {0,0,0,0,0}, nasm_bytecodes+20021, IF_P6|IF_PRIV|IF_AMD},
5840 ITEMPLATE_END
5843 static const struct itemplate instrux_TEST[] = {
5844 {I_TEST, 2, {MEMORY,REG8,0,0,0}, nasm_bytecodes+20333, IF_8086|IF_SM},
5845 {I_TEST, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+20333, IF_8086},
5846 {I_TEST, 2, {MEMORY,REG16,0,0,0}, nasm_bytecodes+19140, IF_8086|IF_SM},
5847 {I_TEST, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+19140, IF_8086},
5848 {I_TEST, 2, {MEMORY,REG32,0,0,0}, nasm_bytecodes+19145, IF_386|IF_SM},
5849 {I_TEST, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+19145, IF_386},
5850 {I_TEST, 2, {MEMORY,REG64,0,0,0}, nasm_bytecodes+19150, IF_X64|IF_SM},
5851 {I_TEST, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+19150, IF_X64},
5852 {I_TEST, 2, {REG8,MEMORY,0,0,0}, nasm_bytecodes+20337, IF_8086|IF_SM},
5853 {I_TEST, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+19155, IF_8086|IF_SM},
5854 {I_TEST, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+19160, IF_386|IF_SM},
5855 {I_TEST, 2, {REG64,MEMORY,0,0,0}, nasm_bytecodes+19165, IF_X64|IF_SM},
5856 {I_TEST, 2, {REG_AL,IMMEDIATE,0,0,0}, nasm_bytecodes+20341, IF_8086|IF_SM},
5857 {I_TEST, 2, {REG_AX,IMMEDIATE,0,0,0}, nasm_bytecodes+19170, IF_8086|IF_SM},
5858 {I_TEST, 2, {REG_EAX,IMMEDIATE,0,0,0}, nasm_bytecodes+19175, IF_386|IF_SM},
5859 {I_TEST, 2, {REG_RAX,IMMEDIATE,0,0,0}, nasm_bytecodes+19180, IF_X64|IF_SM},
5860 {I_TEST, 2, {RM_GPR|BITS8,IMMEDIATE,0,0,0}, nasm_bytecodes+19185, IF_8086|IF_SM},
5861 {I_TEST, 2, {RM_GPR|BITS16,IMMEDIATE,0,0,0}, nasm_bytecodes+15102, IF_8086|IF_SM},
5862 {I_TEST, 2, {RM_GPR|BITS32,IMMEDIATE,0,0,0}, nasm_bytecodes+15108, IF_386|IF_SM},
5863 {I_TEST, 2, {RM_GPR|BITS64,IMMEDIATE,0,0,0}, nasm_bytecodes+15114, IF_X64|IF_SM},
5864 {I_TEST, 2, {MEMORY,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+19185, IF_8086|IF_SM},
5865 {I_TEST, 2, {MEMORY,IMMEDIATE|BITS16,0,0,0}, nasm_bytecodes+15102, IF_8086|IF_SM},
5866 {I_TEST, 2, {MEMORY,IMMEDIATE|BITS32,0,0,0}, nasm_bytecodes+15108, IF_386|IF_SM},
5867 ITEMPLATE_END
5870 static const struct itemplate instrux_UCOMISD[] = {
5871 {I_UCOMISD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16176, IF_WILLAMETTE|IF_SSE2},
5872 ITEMPLATE_END
5875 static const struct itemplate instrux_UCOMISS[] = {
5876 {I_UCOMISS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15426, IF_KATMAI|IF_SSE},
5877 ITEMPLATE_END
5880 static const struct itemplate instrux_UD0[] = {
5881 {I_UD0, 0, {0,0,0,0,0}, nasm_bytecodes+20345, IF_186|IF_UNDOC},
5882 ITEMPLATE_END
5885 static const struct itemplate instrux_UD1[] = {
5886 {I_UD1, 0, {0,0,0,0,0}, nasm_bytecodes+20349, IF_186|IF_UNDOC},
5887 ITEMPLATE_END
5890 static const struct itemplate instrux_UD2[] = {
5891 {I_UD2, 0, {0,0,0,0,0}, nasm_bytecodes+20353, IF_186},
5892 ITEMPLATE_END
5895 static const struct itemplate instrux_UD2A[] = {
5896 {I_UD2A, 0, {0,0,0,0,0}, nasm_bytecodes+20353, IF_186},
5897 ITEMPLATE_END
5900 static const struct itemplate instrux_UD2B[] = {
5901 {I_UD2B, 0, {0,0,0,0,0}, nasm_bytecodes+20349, IF_186|IF_UNDOC},
5902 ITEMPLATE_END
5905 static const struct itemplate instrux_UMOV[] = {
5906 {I_UMOV, 2, {MEMORY,REG8,0,0,0}, nasm_bytecodes+15120, IF_386|IF_UNDOC|IF_SM},
5907 {I_UMOV, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+15120, IF_386|IF_UNDOC},
5908 {I_UMOV, 2, {MEMORY,REG16,0,0,0}, nasm_bytecodes+7288, IF_386|IF_UNDOC|IF_SM},
5909 {I_UMOV, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+7288, IF_386|IF_UNDOC},
5910 {I_UMOV, 2, {MEMORY,REG32,0,0,0}, nasm_bytecodes+7295, IF_386|IF_UNDOC|IF_SM},
5911 {I_UMOV, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+7295, IF_386|IF_UNDOC},
5912 {I_UMOV, 2, {REG8,MEMORY,0,0,0}, nasm_bytecodes+15126, IF_386|IF_UNDOC|IF_SM},
5913 {I_UMOV, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+15126, IF_386|IF_UNDOC},
5914 {I_UMOV, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+7302, IF_386|IF_UNDOC|IF_SM},
5915 {I_UMOV, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+7302, IF_386|IF_UNDOC},
5916 {I_UMOV, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+7309, IF_386|IF_UNDOC|IF_SM},
5917 {I_UMOV, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+7309, IF_386|IF_UNDOC},
5918 ITEMPLATE_END
5921 static const struct itemplate instrux_UNPCKHPD[] = {
5922 {I_UNPCKHPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16182, IF_WILLAMETTE|IF_SSE2|IF_SO},
5923 ITEMPLATE_END
5926 static const struct itemplate instrux_UNPCKHPS[] = {
5927 {I_UNPCKHPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15432, IF_KATMAI|IF_SSE},
5928 ITEMPLATE_END
5931 static const struct itemplate instrux_UNPCKLPD[] = {
5932 {I_UNPCKLPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16188, IF_WILLAMETTE|IF_SSE2|IF_SO},
5933 ITEMPLATE_END
5936 static const struct itemplate instrux_UNPCKLPS[] = {
5937 {I_UNPCKLPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15438, IF_KATMAI|IF_SSE},
5938 ITEMPLATE_END
5941 static const struct itemplate instrux_VADDPD[] = {
5942 {I_VADDPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9255, IF_AVX|IF_SANDYBRIDGE|IF_SO},
5943 {I_VADDPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9262, IF_AVX|IF_SANDYBRIDGE|IF_SO},
5944 {I_VADDPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+9269, IF_AVX|IF_SANDYBRIDGE|IF_SY},
5945 {I_VADDPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+9276, IF_AVX|IF_SANDYBRIDGE|IF_SY},
5946 ITEMPLATE_END
5949 static const struct itemplate instrux_VADDPS[] = {
5950 {I_VADDPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9283, IF_AVX|IF_SANDYBRIDGE|IF_SO},
5951 {I_VADDPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9290, IF_AVX|IF_SANDYBRIDGE|IF_SO},
5952 {I_VADDPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+9297, IF_AVX|IF_SANDYBRIDGE|IF_SY},
5953 {I_VADDPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+9304, IF_AVX|IF_SANDYBRIDGE|IF_SY},
5954 ITEMPLATE_END
5957 static const struct itemplate instrux_VADDSD[] = {
5958 {I_VADDSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9311, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
5959 {I_VADDSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9318, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
5960 ITEMPLATE_END
5963 static const struct itemplate instrux_VADDSS[] = {
5964 {I_VADDSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9325, IF_AVX|IF_SANDYBRIDGE|IF_SD},
5965 {I_VADDSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9332, IF_AVX|IF_SANDYBRIDGE|IF_SD},
5966 ITEMPLATE_END
5969 static const struct itemplate instrux_VADDSUBPD[] = {
5970 {I_VADDSUBPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9339, IF_AVX|IF_SANDYBRIDGE|IF_SO},
5971 {I_VADDSUBPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9346, IF_AVX|IF_SANDYBRIDGE|IF_SO},
5972 {I_VADDSUBPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+9353, IF_AVX|IF_SANDYBRIDGE|IF_SY},
5973 {I_VADDSUBPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+9360, IF_AVX|IF_SANDYBRIDGE|IF_SY},
5974 ITEMPLATE_END
5977 static const struct itemplate instrux_VADDSUBPS[] = {
5978 {I_VADDSUBPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9367, IF_AVX|IF_SANDYBRIDGE|IF_SO},
5979 {I_VADDSUBPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9374, IF_AVX|IF_SANDYBRIDGE|IF_SO},
5980 {I_VADDSUBPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+9381, IF_AVX|IF_SANDYBRIDGE|IF_SY},
5981 {I_VADDSUBPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+9388, IF_AVX|IF_SANDYBRIDGE|IF_SY},
5982 ITEMPLATE_END
5985 static const struct itemplate instrux_VAESDEC[] = {
5986 {I_VAESDEC, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9220, IF_AVX|IF_SANDYBRIDGE|IF_SO},
5987 {I_VAESDEC, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9227, IF_AVX|IF_SANDYBRIDGE|IF_SO},
5988 ITEMPLATE_END
5991 static const struct itemplate instrux_VAESDECLAST[] = {
5992 {I_VAESDECLAST, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9234, IF_AVX|IF_SANDYBRIDGE|IF_SO},
5993 {I_VAESDECLAST, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9241, IF_AVX|IF_SANDYBRIDGE|IF_SO},
5994 ITEMPLATE_END
5997 static const struct itemplate instrux_VAESENC[] = {
5998 {I_VAESENC, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9192, IF_AVX|IF_SANDYBRIDGE|IF_SO},
5999 {I_VAESENC, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9199, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6000 ITEMPLATE_END
6003 static const struct itemplate instrux_VAESENCLAST[] = {
6004 {I_VAESENCLAST, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9206, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6005 {I_VAESENCLAST, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9213, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6006 ITEMPLATE_END
6009 static const struct itemplate instrux_VAESIMC[] = {
6010 {I_VAESIMC, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9248, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6011 ITEMPLATE_END
6014 static const struct itemplate instrux_VAESKEYGENASSIST[] = {
6015 {I_VAESKEYGENASSIST, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5919, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6016 ITEMPLATE_END
6019 static const struct itemplate instrux_VANDNPD[] = {
6020 {I_VANDNPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9451, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6021 {I_VANDNPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9458, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6022 {I_VANDNPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+9465, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6023 {I_VANDNPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+9472, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6024 ITEMPLATE_END
6027 static const struct itemplate instrux_VANDNPS[] = {
6028 {I_VANDNPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9479, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6029 {I_VANDNPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9486, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6030 {I_VANDNPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+9493, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6031 {I_VANDNPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+9500, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6032 ITEMPLATE_END
6035 static const struct itemplate instrux_VANDPD[] = {
6036 {I_VANDPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9395, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6037 {I_VANDPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9402, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6038 {I_VANDPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+9409, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6039 {I_VANDPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+9416, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6040 ITEMPLATE_END
6043 static const struct itemplate instrux_VANDPS[] = {
6044 {I_VANDPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9423, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6045 {I_VANDPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9430, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6046 {I_VANDPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+9437, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6047 {I_VANDPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+9444, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6048 ITEMPLATE_END
6051 static const struct itemplate instrux_VBLENDPD[] = {
6052 {I_VBLENDPD, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+5927, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6053 {I_VBLENDPD, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5935, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6054 {I_VBLENDPD, 4, {YMMREG,YMMREG,RM_YMM,IMMEDIATE,0}, nasm_bytecodes+5943, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6055 {I_VBLENDPD, 3, {YMMREG,RM_YMM,IMMEDIATE,0,0}, nasm_bytecodes+5951, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6056 ITEMPLATE_END
6059 static const struct itemplate instrux_VBLENDPS[] = {
6060 {I_VBLENDPS, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+5959, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6061 {I_VBLENDPS, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5967, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6062 {I_VBLENDPS, 4, {YMMREG,YMMREG,RM_YMM,IMMEDIATE,0}, nasm_bytecodes+5975, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6063 {I_VBLENDPS, 3, {YMMREG,RM_YMM,IMMEDIATE,0,0}, nasm_bytecodes+5983, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6064 ITEMPLATE_END
6067 static const struct itemplate instrux_VBLENDVPD[] = {
6068 {I_VBLENDVPD, 4, {XMMREG,XMMREG,RM_XMM,XMMREG,0}, nasm_bytecodes+1197, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6069 {I_VBLENDVPD, 3, {XMMREG,RM_XMM,XMM0,0,0}, nasm_bytecodes+9507, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6070 {I_VBLENDVPD, 4, {YMMREG,YMMREG,RM_YMM,YMMREG,0}, nasm_bytecodes+1206, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6071 {I_VBLENDVPD, 3, {YMMREG,RM_YMM,YMM0,0,0}, nasm_bytecodes+9514, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6072 {I_VBLENDVPD, 3, {YMMREG,RM_YMM,YMM0,0,0}, nasm_bytecodes+9528, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6073 ITEMPLATE_END
6076 static const struct itemplate instrux_VBLENDVPS[] = {
6077 {I_VBLENDVPS, 4, {XMMREG,XMMREG,RM_XMM,XMMREG,0}, nasm_bytecodes+1215, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6078 {I_VBLENDVPS, 3, {XMMREG,RM_XMM,XMM0,0,0}, nasm_bytecodes+9521, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6079 {I_VBLENDVPS, 4, {YMMREG,YMMREG,RM_YMM,YMMREG,0}, nasm_bytecodes+1224, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6080 ITEMPLATE_END
6083 static const struct itemplate instrux_VBROADCASTF128[] = {
6084 {I_VBROADCASTF128, 2, {YMMREG,MEMORY,0,0,0}, nasm_bytecodes+9556, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6085 ITEMPLATE_END
6088 static const struct itemplate instrux_VBROADCASTSD[] = {
6089 {I_VBROADCASTSD, 2, {YMMREG,MEMORY,0,0,0}, nasm_bytecodes+9549, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6090 ITEMPLATE_END
6093 static const struct itemplate instrux_VBROADCASTSS[] = {
6094 {I_VBROADCASTSS, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+9535, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6095 {I_VBROADCASTSS, 2, {YMMREG,MEMORY,0,0,0}, nasm_bytecodes+9542, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6096 ITEMPLATE_END
6099 static const struct itemplate instrux_VCMPEQPD[] = {
6100 {I_VCMPEQPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1233, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6101 {I_VCMPEQPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+1242, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6102 {I_VCMPEQPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+1251, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6103 {I_VCMPEQPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+1260, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6104 ITEMPLATE_END
6107 static const struct itemplate instrux_VCMPEQPS[] = {
6108 {I_VCMPEQPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2385, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6109 {I_VCMPEQPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2394, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6110 {I_VCMPEQPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2403, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6111 {I_VCMPEQPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2412, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6112 ITEMPLATE_END
6115 static const struct itemplate instrux_VCMPEQSD[] = {
6116 {I_VCMPEQSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3537, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6117 {I_VCMPEQSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3546, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6118 ITEMPLATE_END
6121 static const struct itemplate instrux_VCMPEQSS[] = {
6122 {I_VCMPEQSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4113, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6123 {I_VCMPEQSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4122, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6124 ITEMPLATE_END
6127 static const struct itemplate instrux_VCMPEQ_OSPD[] = {
6128 {I_VCMPEQ_OSPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1809, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6129 {I_VCMPEQ_OSPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+1818, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6130 {I_VCMPEQ_OSPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+1827, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6131 {I_VCMPEQ_OSPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+1836, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6132 ITEMPLATE_END
6135 static const struct itemplate instrux_VCMPEQ_OSPS[] = {
6136 {I_VCMPEQ_OSPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2961, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6137 {I_VCMPEQ_OSPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2970, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6138 {I_VCMPEQ_OSPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2979, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6139 {I_VCMPEQ_OSPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2988, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6140 ITEMPLATE_END
6143 static const struct itemplate instrux_VCMPEQ_OSSD[] = {
6144 {I_VCMPEQ_OSSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3825, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6145 {I_VCMPEQ_OSSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3834, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6146 ITEMPLATE_END
6149 static const struct itemplate instrux_VCMPEQ_OSSS[] = {
6150 {I_VCMPEQ_OSSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4401, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6151 {I_VCMPEQ_OSSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4410, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6152 ITEMPLATE_END
6155 static const struct itemplate instrux_VCMPEQ_UQPD[] = {
6156 {I_VCMPEQ_UQPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1521, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6157 {I_VCMPEQ_UQPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+1530, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6158 {I_VCMPEQ_UQPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+1539, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6159 {I_VCMPEQ_UQPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+1548, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6160 ITEMPLATE_END
6163 static const struct itemplate instrux_VCMPEQ_UQPS[] = {
6164 {I_VCMPEQ_UQPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2673, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6165 {I_VCMPEQ_UQPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2682, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6166 {I_VCMPEQ_UQPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2691, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6167 {I_VCMPEQ_UQPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2700, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6168 ITEMPLATE_END
6171 static const struct itemplate instrux_VCMPEQ_UQSD[] = {
6172 {I_VCMPEQ_UQSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3681, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6173 {I_VCMPEQ_UQSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3690, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6174 ITEMPLATE_END
6177 static const struct itemplate instrux_VCMPEQ_UQSS[] = {
6178 {I_VCMPEQ_UQSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4257, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6179 {I_VCMPEQ_UQSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4266, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6180 ITEMPLATE_END
6183 static const struct itemplate instrux_VCMPEQ_USPD[] = {
6184 {I_VCMPEQ_USPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2097, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6185 {I_VCMPEQ_USPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2106, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6186 {I_VCMPEQ_USPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2115, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6187 {I_VCMPEQ_USPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2124, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6188 ITEMPLATE_END
6191 static const struct itemplate instrux_VCMPEQ_USPS[] = {
6192 {I_VCMPEQ_USPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3249, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6193 {I_VCMPEQ_USPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3258, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6194 {I_VCMPEQ_USPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+3267, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6195 {I_VCMPEQ_USPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+3276, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6196 ITEMPLATE_END
6199 static const struct itemplate instrux_VCMPEQ_USSD[] = {
6200 {I_VCMPEQ_USSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3969, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6201 {I_VCMPEQ_USSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3978, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6202 ITEMPLATE_END
6205 static const struct itemplate instrux_VCMPEQ_USSS[] = {
6206 {I_VCMPEQ_USSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4545, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6207 {I_VCMPEQ_USSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4554, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6208 ITEMPLATE_END
6211 static const struct itemplate instrux_VCMPFALSEPD[] = {
6212 {I_VCMPFALSEPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1629, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6213 {I_VCMPFALSEPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+1638, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6214 {I_VCMPFALSEPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+1647, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6215 {I_VCMPFALSEPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+1656, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6216 ITEMPLATE_END
6219 static const struct itemplate instrux_VCMPFALSEPS[] = {
6220 {I_VCMPFALSEPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2781, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6221 {I_VCMPFALSEPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2790, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6222 {I_VCMPFALSEPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2799, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6223 {I_VCMPFALSEPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2808, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6224 ITEMPLATE_END
6227 static const struct itemplate instrux_VCMPFALSESD[] = {
6228 {I_VCMPFALSESD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3735, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6229 {I_VCMPFALSESD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3744, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6230 ITEMPLATE_END
6233 static const struct itemplate instrux_VCMPFALSESS[] = {
6234 {I_VCMPFALSESS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4311, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6235 {I_VCMPFALSESS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4320, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6236 ITEMPLATE_END
6239 static const struct itemplate instrux_VCMPFALSE_OSPD[] = {
6240 {I_VCMPFALSE_OSPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2205, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6241 {I_VCMPFALSE_OSPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2214, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6242 {I_VCMPFALSE_OSPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2223, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6243 {I_VCMPFALSE_OSPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2232, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6244 ITEMPLATE_END
6247 static const struct itemplate instrux_VCMPFALSE_OSPS[] = {
6248 {I_VCMPFALSE_OSPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3357, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6249 {I_VCMPFALSE_OSPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3366, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6250 {I_VCMPFALSE_OSPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+3375, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6251 {I_VCMPFALSE_OSPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+3384, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6252 ITEMPLATE_END
6255 static const struct itemplate instrux_VCMPFALSE_OSSD[] = {
6256 {I_VCMPFALSE_OSSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4023, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6257 {I_VCMPFALSE_OSSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4032, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6258 ITEMPLATE_END
6261 static const struct itemplate instrux_VCMPFALSE_OSSS[] = {
6262 {I_VCMPFALSE_OSSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4599, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6263 {I_VCMPFALSE_OSSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4608, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6264 ITEMPLATE_END
6267 static const struct itemplate instrux_VCMPGEPD[] = {
6268 {I_VCMPGEPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1701, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6269 {I_VCMPGEPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+1710, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6270 {I_VCMPGEPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+1719, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6271 {I_VCMPGEPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+1728, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6272 ITEMPLATE_END
6275 static const struct itemplate instrux_VCMPGEPS[] = {
6276 {I_VCMPGEPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2853, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6277 {I_VCMPGEPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2862, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6278 {I_VCMPGEPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2871, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6279 {I_VCMPGEPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2880, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6280 ITEMPLATE_END
6283 static const struct itemplate instrux_VCMPGESD[] = {
6284 {I_VCMPGESD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3771, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6285 {I_VCMPGESD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3780, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6286 ITEMPLATE_END
6289 static const struct itemplate instrux_VCMPGESS[] = {
6290 {I_VCMPGESS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4347, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6291 {I_VCMPGESS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4356, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6292 ITEMPLATE_END
6295 static const struct itemplate instrux_VCMPGE_OQPD[] = {
6296 {I_VCMPGE_OQPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2277, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6297 {I_VCMPGE_OQPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2286, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6298 {I_VCMPGE_OQPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2295, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6299 {I_VCMPGE_OQPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2304, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6300 ITEMPLATE_END
6303 static const struct itemplate instrux_VCMPGE_OQPS[] = {
6304 {I_VCMPGE_OQPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3429, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6305 {I_VCMPGE_OQPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3438, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6306 {I_VCMPGE_OQPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+3447, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6307 {I_VCMPGE_OQPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+3456, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6308 ITEMPLATE_END
6311 static const struct itemplate instrux_VCMPGE_OQSD[] = {
6312 {I_VCMPGE_OQSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4059, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6313 {I_VCMPGE_OQSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4068, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6314 ITEMPLATE_END
6317 static const struct itemplate instrux_VCMPGE_OQSS[] = {
6318 {I_VCMPGE_OQSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4635, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6319 {I_VCMPGE_OQSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4644, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6320 ITEMPLATE_END
6323 static const struct itemplate instrux_VCMPGTPD[] = {
6324 {I_VCMPGTPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1737, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6325 {I_VCMPGTPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+1746, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6326 {I_VCMPGTPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+1755, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6327 {I_VCMPGTPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+1764, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6328 ITEMPLATE_END
6331 static const struct itemplate instrux_VCMPGTPS[] = {
6332 {I_VCMPGTPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2889, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6333 {I_VCMPGTPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2898, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6334 {I_VCMPGTPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2907, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6335 {I_VCMPGTPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2916, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6336 ITEMPLATE_END
6339 static const struct itemplate instrux_VCMPGTSD[] = {
6340 {I_VCMPGTSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3789, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6341 {I_VCMPGTSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3798, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6342 ITEMPLATE_END
6345 static const struct itemplate instrux_VCMPGTSS[] = {
6346 {I_VCMPGTSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4365, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6347 {I_VCMPGTSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4374, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6348 ITEMPLATE_END
6351 static const struct itemplate instrux_VCMPGT_OQPD[] = {
6352 {I_VCMPGT_OQPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2313, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6353 {I_VCMPGT_OQPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2322, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6354 {I_VCMPGT_OQPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2331, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6355 {I_VCMPGT_OQPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2340, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6356 ITEMPLATE_END
6359 static const struct itemplate instrux_VCMPGT_OQPS[] = {
6360 {I_VCMPGT_OQPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3465, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6361 {I_VCMPGT_OQPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3474, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6362 {I_VCMPGT_OQPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+3483, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6363 {I_VCMPGT_OQPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+3492, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6364 ITEMPLATE_END
6367 static const struct itemplate instrux_VCMPGT_OQSD[] = {
6368 {I_VCMPGT_OQSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4077, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6369 {I_VCMPGT_OQSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4086, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6370 ITEMPLATE_END
6373 static const struct itemplate instrux_VCMPGT_OQSS[] = {
6374 {I_VCMPGT_OQSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4653, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6375 {I_VCMPGT_OQSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4662, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6376 ITEMPLATE_END
6379 static const struct itemplate instrux_VCMPLEPD[] = {
6380 {I_VCMPLEPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1305, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6381 {I_VCMPLEPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+1314, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6382 {I_VCMPLEPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+1323, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6383 {I_VCMPLEPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+1332, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6384 ITEMPLATE_END
6387 static const struct itemplate instrux_VCMPLEPS[] = {
6388 {I_VCMPLEPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2457, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6389 {I_VCMPLEPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2466, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6390 {I_VCMPLEPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2475, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6391 {I_VCMPLEPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2484, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6392 ITEMPLATE_END
6395 static const struct itemplate instrux_VCMPLESD[] = {
6396 {I_VCMPLESD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3573, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6397 {I_VCMPLESD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3582, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6398 ITEMPLATE_END
6401 static const struct itemplate instrux_VCMPLESS[] = {
6402 {I_VCMPLESS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4149, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6403 {I_VCMPLESS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4158, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6404 ITEMPLATE_END
6407 static const struct itemplate instrux_VCMPLE_OQPD[] = {
6408 {I_VCMPLE_OQPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1881, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6409 {I_VCMPLE_OQPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+1890, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6410 {I_VCMPLE_OQPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+1899, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6411 {I_VCMPLE_OQPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+1908, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6412 ITEMPLATE_END
6415 static const struct itemplate instrux_VCMPLE_OQPS[] = {
6416 {I_VCMPLE_OQPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3033, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6417 {I_VCMPLE_OQPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3042, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6418 {I_VCMPLE_OQPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+3051, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6419 {I_VCMPLE_OQPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+3060, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6420 ITEMPLATE_END
6423 static const struct itemplate instrux_VCMPLE_OQSD[] = {
6424 {I_VCMPLE_OQSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3861, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6425 {I_VCMPLE_OQSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3870, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6426 ITEMPLATE_END
6429 static const struct itemplate instrux_VCMPLE_OQSS[] = {
6430 {I_VCMPLE_OQSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4437, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6431 {I_VCMPLE_OQSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4446, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6432 ITEMPLATE_END
6435 static const struct itemplate instrux_VCMPLTPD[] = {
6436 {I_VCMPLTPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1269, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6437 {I_VCMPLTPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+1278, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6438 {I_VCMPLTPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+1287, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6439 {I_VCMPLTPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+1296, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6440 ITEMPLATE_END
6443 static const struct itemplate instrux_VCMPLTPS[] = {
6444 {I_VCMPLTPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2421, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6445 {I_VCMPLTPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2430, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6446 {I_VCMPLTPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2439, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6447 {I_VCMPLTPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2448, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6448 ITEMPLATE_END
6451 static const struct itemplate instrux_VCMPLTSD[] = {
6452 {I_VCMPLTSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3555, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6453 {I_VCMPLTSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3564, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6454 ITEMPLATE_END
6457 static const struct itemplate instrux_VCMPLTSS[] = {
6458 {I_VCMPLTSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4131, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6459 {I_VCMPLTSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4140, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6460 ITEMPLATE_END
6463 static const struct itemplate instrux_VCMPLT_OQPD[] = {
6464 {I_VCMPLT_OQPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1845, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6465 {I_VCMPLT_OQPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+1854, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6466 {I_VCMPLT_OQPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+1863, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6467 {I_VCMPLT_OQPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+1872, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6468 ITEMPLATE_END
6471 static const struct itemplate instrux_VCMPLT_OQPS[] = {
6472 {I_VCMPLT_OQPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2997, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6473 {I_VCMPLT_OQPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3006, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6474 {I_VCMPLT_OQPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+3015, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6475 {I_VCMPLT_OQPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+3024, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6476 ITEMPLATE_END
6479 static const struct itemplate instrux_VCMPLT_OQSD[] = {
6480 {I_VCMPLT_OQSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3843, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6481 {I_VCMPLT_OQSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3852, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6482 ITEMPLATE_END
6485 static const struct itemplate instrux_VCMPLT_OQSS[] = {
6486 {I_VCMPLT_OQSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4419, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6487 {I_VCMPLT_OQSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4428, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6488 ITEMPLATE_END
6491 static const struct itemplate instrux_VCMPNEQPD[] = {
6492 {I_VCMPNEQPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1377, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6493 {I_VCMPNEQPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+1386, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6494 {I_VCMPNEQPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+1395, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6495 {I_VCMPNEQPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+1404, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6496 ITEMPLATE_END
6499 static const struct itemplate instrux_VCMPNEQPS[] = {
6500 {I_VCMPNEQPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2529, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6501 {I_VCMPNEQPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2538, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6502 {I_VCMPNEQPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2547, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6503 {I_VCMPNEQPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2556, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6504 ITEMPLATE_END
6507 static const struct itemplate instrux_VCMPNEQSD[] = {
6508 {I_VCMPNEQSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3609, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6509 {I_VCMPNEQSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3618, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6510 ITEMPLATE_END
6513 static const struct itemplate instrux_VCMPNEQSS[] = {
6514 {I_VCMPNEQSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4185, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6515 {I_VCMPNEQSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4194, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6516 ITEMPLATE_END
6519 static const struct itemplate instrux_VCMPNEQ_OQPD[] = {
6520 {I_VCMPNEQ_OQPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1665, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6521 {I_VCMPNEQ_OQPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+1674, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6522 {I_VCMPNEQ_OQPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+1683, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6523 {I_VCMPNEQ_OQPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+1692, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6524 ITEMPLATE_END
6527 static const struct itemplate instrux_VCMPNEQ_OQPS[] = {
6528 {I_VCMPNEQ_OQPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2817, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6529 {I_VCMPNEQ_OQPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2826, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6530 {I_VCMPNEQ_OQPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2835, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6531 {I_VCMPNEQ_OQPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2844, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6532 ITEMPLATE_END
6535 static const struct itemplate instrux_VCMPNEQ_OQSD[] = {
6536 {I_VCMPNEQ_OQSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3753, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6537 {I_VCMPNEQ_OQSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3762, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6538 ITEMPLATE_END
6541 static const struct itemplate instrux_VCMPNEQ_OQSS[] = {
6542 {I_VCMPNEQ_OQSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4329, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6543 {I_VCMPNEQ_OQSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4338, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6544 ITEMPLATE_END
6547 static const struct itemplate instrux_VCMPNEQ_OSPD[] = {
6548 {I_VCMPNEQ_OSPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2241, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6549 {I_VCMPNEQ_OSPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2250, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6550 {I_VCMPNEQ_OSPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2259, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6551 {I_VCMPNEQ_OSPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2268, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6552 ITEMPLATE_END
6555 static const struct itemplate instrux_VCMPNEQ_OSPS[] = {
6556 {I_VCMPNEQ_OSPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3393, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6557 {I_VCMPNEQ_OSPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3402, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6558 {I_VCMPNEQ_OSPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+3411, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6559 {I_VCMPNEQ_OSPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+3420, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6560 ITEMPLATE_END
6563 static const struct itemplate instrux_VCMPNEQ_OSSD[] = {
6564 {I_VCMPNEQ_OSSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4041, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6565 {I_VCMPNEQ_OSSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4050, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6566 ITEMPLATE_END
6569 static const struct itemplate instrux_VCMPNEQ_OSSS[] = {
6570 {I_VCMPNEQ_OSSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4617, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6571 {I_VCMPNEQ_OSSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4626, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6572 ITEMPLATE_END
6575 static const struct itemplate instrux_VCMPNEQ_USPD[] = {
6576 {I_VCMPNEQ_USPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1953, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6577 {I_VCMPNEQ_USPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+1962, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6578 {I_VCMPNEQ_USPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+1971, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6579 {I_VCMPNEQ_USPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+1980, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6580 ITEMPLATE_END
6583 static const struct itemplate instrux_VCMPNEQ_USPS[] = {
6584 {I_VCMPNEQ_USPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3105, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6585 {I_VCMPNEQ_USPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3114, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6586 {I_VCMPNEQ_USPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+3123, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6587 {I_VCMPNEQ_USPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+3132, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6588 ITEMPLATE_END
6591 static const struct itemplate instrux_VCMPNEQ_USSD[] = {
6592 {I_VCMPNEQ_USSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3897, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6593 {I_VCMPNEQ_USSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3906, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6594 ITEMPLATE_END
6597 static const struct itemplate instrux_VCMPNEQ_USSS[] = {
6598 {I_VCMPNEQ_USSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4473, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6599 {I_VCMPNEQ_USSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4482, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6600 ITEMPLATE_END
6603 static const struct itemplate instrux_VCMPNGEPD[] = {
6604 {I_VCMPNGEPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1557, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6605 {I_VCMPNGEPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+1566, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6606 {I_VCMPNGEPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+1575, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6607 {I_VCMPNGEPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+1584, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6608 ITEMPLATE_END
6611 static const struct itemplate instrux_VCMPNGEPS[] = {
6612 {I_VCMPNGEPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2709, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6613 {I_VCMPNGEPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2718, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6614 {I_VCMPNGEPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2727, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6615 {I_VCMPNGEPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2736, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6616 ITEMPLATE_END
6619 static const struct itemplate instrux_VCMPNGESD[] = {
6620 {I_VCMPNGESD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3699, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6621 {I_VCMPNGESD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3708, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6622 ITEMPLATE_END
6625 static const struct itemplate instrux_VCMPNGESS[] = {
6626 {I_VCMPNGESS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4275, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6627 {I_VCMPNGESS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4284, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6628 ITEMPLATE_END
6631 static const struct itemplate instrux_VCMPNGE_UQPD[] = {
6632 {I_VCMPNGE_UQPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2133, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6633 {I_VCMPNGE_UQPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2142, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6634 {I_VCMPNGE_UQPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2151, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6635 {I_VCMPNGE_UQPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2160, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6636 ITEMPLATE_END
6639 static const struct itemplate instrux_VCMPNGE_UQPS[] = {
6640 {I_VCMPNGE_UQPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3285, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6641 {I_VCMPNGE_UQPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3294, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6642 {I_VCMPNGE_UQPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+3303, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6643 {I_VCMPNGE_UQPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+3312, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6644 ITEMPLATE_END
6647 static const struct itemplate instrux_VCMPNGE_UQSD[] = {
6648 {I_VCMPNGE_UQSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3987, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6649 {I_VCMPNGE_UQSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3996, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6650 ITEMPLATE_END
6653 static const struct itemplate instrux_VCMPNGE_UQSS[] = {
6654 {I_VCMPNGE_UQSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4563, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6655 {I_VCMPNGE_UQSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4572, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6656 ITEMPLATE_END
6659 static const struct itemplate instrux_VCMPNGTPD[] = {
6660 {I_VCMPNGTPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1593, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6661 {I_VCMPNGTPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+1602, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6662 {I_VCMPNGTPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+1611, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6663 {I_VCMPNGTPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+1620, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6664 ITEMPLATE_END
6667 static const struct itemplate instrux_VCMPNGTPS[] = {
6668 {I_VCMPNGTPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2745, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6669 {I_VCMPNGTPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2754, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6670 {I_VCMPNGTPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2763, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6671 {I_VCMPNGTPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2772, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6672 ITEMPLATE_END
6675 static const struct itemplate instrux_VCMPNGTSD[] = {
6676 {I_VCMPNGTSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3717, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6677 {I_VCMPNGTSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3726, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6678 ITEMPLATE_END
6681 static const struct itemplate instrux_VCMPNGTSS[] = {
6682 {I_VCMPNGTSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4293, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6683 {I_VCMPNGTSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4302, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6684 ITEMPLATE_END
6687 static const struct itemplate instrux_VCMPNGT_UQPD[] = {
6688 {I_VCMPNGT_UQPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2169, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6689 {I_VCMPNGT_UQPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2178, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6690 {I_VCMPNGT_UQPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2187, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6691 {I_VCMPNGT_UQPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2196, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6692 ITEMPLATE_END
6695 static const struct itemplate instrux_VCMPNGT_UQPS[] = {
6696 {I_VCMPNGT_UQPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3321, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6697 {I_VCMPNGT_UQPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3330, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6698 {I_VCMPNGT_UQPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+3339, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6699 {I_VCMPNGT_UQPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+3348, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6700 ITEMPLATE_END
6703 static const struct itemplate instrux_VCMPNGT_UQSD[] = {
6704 {I_VCMPNGT_UQSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4005, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6705 {I_VCMPNGT_UQSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4014, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6706 ITEMPLATE_END
6709 static const struct itemplate instrux_VCMPNGT_UQSS[] = {
6710 {I_VCMPNGT_UQSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4581, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6711 {I_VCMPNGT_UQSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4590, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6712 ITEMPLATE_END
6715 static const struct itemplate instrux_VCMPNLEPD[] = {
6716 {I_VCMPNLEPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1449, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6717 {I_VCMPNLEPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+1458, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6718 {I_VCMPNLEPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+1467, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6719 {I_VCMPNLEPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+1476, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6720 ITEMPLATE_END
6723 static const struct itemplate instrux_VCMPNLEPS[] = {
6724 {I_VCMPNLEPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2601, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6725 {I_VCMPNLEPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2610, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6726 {I_VCMPNLEPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2619, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6727 {I_VCMPNLEPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2628, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6728 ITEMPLATE_END
6731 static const struct itemplate instrux_VCMPNLESD[] = {
6732 {I_VCMPNLESD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3645, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6733 {I_VCMPNLESD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3654, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6734 ITEMPLATE_END
6737 static const struct itemplate instrux_VCMPNLESS[] = {
6738 {I_VCMPNLESS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4221, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6739 {I_VCMPNLESS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4230, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6740 ITEMPLATE_END
6743 static const struct itemplate instrux_VCMPNLE_UQPD[] = {
6744 {I_VCMPNLE_UQPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2025, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6745 {I_VCMPNLE_UQPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2034, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6746 {I_VCMPNLE_UQPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2043, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6747 {I_VCMPNLE_UQPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2052, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6748 ITEMPLATE_END
6751 static const struct itemplate instrux_VCMPNLE_UQPS[] = {
6752 {I_VCMPNLE_UQPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3177, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6753 {I_VCMPNLE_UQPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3186, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6754 {I_VCMPNLE_UQPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+3195, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6755 {I_VCMPNLE_UQPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+3204, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6756 ITEMPLATE_END
6759 static const struct itemplate instrux_VCMPNLE_UQSD[] = {
6760 {I_VCMPNLE_UQSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3933, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6761 {I_VCMPNLE_UQSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3942, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6762 ITEMPLATE_END
6765 static const struct itemplate instrux_VCMPNLE_UQSS[] = {
6766 {I_VCMPNLE_UQSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4509, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6767 {I_VCMPNLE_UQSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4518, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6768 ITEMPLATE_END
6771 static const struct itemplate instrux_VCMPNLTPD[] = {
6772 {I_VCMPNLTPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1413, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6773 {I_VCMPNLTPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+1422, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6774 {I_VCMPNLTPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+1431, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6775 {I_VCMPNLTPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+1440, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6776 ITEMPLATE_END
6779 static const struct itemplate instrux_VCMPNLTPS[] = {
6780 {I_VCMPNLTPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2565, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6781 {I_VCMPNLTPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2574, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6782 {I_VCMPNLTPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2583, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6783 {I_VCMPNLTPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2592, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6784 ITEMPLATE_END
6787 static const struct itemplate instrux_VCMPNLTSD[] = {
6788 {I_VCMPNLTSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3627, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6789 {I_VCMPNLTSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3636, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6790 ITEMPLATE_END
6793 static const struct itemplate instrux_VCMPNLTSS[] = {
6794 {I_VCMPNLTSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4203, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6795 {I_VCMPNLTSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4212, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6796 ITEMPLATE_END
6799 static const struct itemplate instrux_VCMPNLT_UQPD[] = {
6800 {I_VCMPNLT_UQPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1989, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6801 {I_VCMPNLT_UQPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+1998, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6802 {I_VCMPNLT_UQPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2007, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6803 {I_VCMPNLT_UQPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2016, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6804 ITEMPLATE_END
6807 static const struct itemplate instrux_VCMPNLT_UQPS[] = {
6808 {I_VCMPNLT_UQPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3141, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6809 {I_VCMPNLT_UQPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3150, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6810 {I_VCMPNLT_UQPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+3159, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6811 {I_VCMPNLT_UQPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+3168, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6812 ITEMPLATE_END
6815 static const struct itemplate instrux_VCMPNLT_UQSD[] = {
6816 {I_VCMPNLT_UQSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3915, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6817 {I_VCMPNLT_UQSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3924, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6818 ITEMPLATE_END
6821 static const struct itemplate instrux_VCMPNLT_UQSS[] = {
6822 {I_VCMPNLT_UQSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4491, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6823 {I_VCMPNLT_UQSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4500, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6824 ITEMPLATE_END
6827 static const struct itemplate instrux_VCMPORDPD[] = {
6828 {I_VCMPORDPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1485, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6829 {I_VCMPORDPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+1494, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6830 {I_VCMPORDPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+1503, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6831 {I_VCMPORDPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+1512, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6832 ITEMPLATE_END
6835 static const struct itemplate instrux_VCMPORDPS[] = {
6836 {I_VCMPORDPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2637, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6837 {I_VCMPORDPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2646, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6838 {I_VCMPORDPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2655, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6839 {I_VCMPORDPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2664, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6840 ITEMPLATE_END
6843 static const struct itemplate instrux_VCMPORDSD[] = {
6844 {I_VCMPORDSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3663, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6845 {I_VCMPORDSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3672, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6846 ITEMPLATE_END
6849 static const struct itemplate instrux_VCMPORDSS[] = {
6850 {I_VCMPORDSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4239, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6851 {I_VCMPORDSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4248, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6852 ITEMPLATE_END
6855 static const struct itemplate instrux_VCMPORD_SPD[] = {
6856 {I_VCMPORD_SPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2061, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6857 {I_VCMPORD_SPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2070, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6858 {I_VCMPORD_SPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2079, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6859 ITEMPLATE_END
6862 static const struct itemplate instrux_VCMPORD_SPS[] = {
6863 {I_VCMPORD_SPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3213, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6864 {I_VCMPORD_SPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3222, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6865 {I_VCMPORD_SPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+3231, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6866 ITEMPLATE_END
6869 static const struct itemplate instrux_VCMPORD_SSD[] = {
6870 {I_VCMPORD_SSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3951, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6871 {I_VCMPORD_SSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3960, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6872 ITEMPLATE_END
6875 static const struct itemplate instrux_VCMPORD_SSS[] = {
6876 {I_VCMPORD_SSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4527, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6877 {I_VCMPORD_SSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4536, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6878 ITEMPLATE_END
6881 static const struct itemplate instrux_VCMPORS_SPD[] = {
6882 {I_VCMPORS_SPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2088, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6883 ITEMPLATE_END
6886 static const struct itemplate instrux_VCMPORS_SPS[] = {
6887 {I_VCMPORS_SPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+3240, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6888 ITEMPLATE_END
6891 static const struct itemplate instrux_VCMPPD[] = {
6892 {I_VCMPPD, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+5991, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6893 {I_VCMPPD, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+5999, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6894 {I_VCMPPD, 4, {YMMREG,YMMREG,RM_YMM,IMMEDIATE,0}, nasm_bytecodes+6007, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6895 {I_VCMPPD, 3, {YMMREG,RM_YMM,IMMEDIATE,0,0}, nasm_bytecodes+6015, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6896 ITEMPLATE_END
6899 static const struct itemplate instrux_VCMPPS[] = {
6900 {I_VCMPPS, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+6023, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6901 {I_VCMPPS, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6031, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6902 {I_VCMPPS, 4, {YMMREG,YMMREG,RM_YMM,IMMEDIATE,0}, nasm_bytecodes+6039, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6903 {I_VCMPPS, 3, {YMMREG,RM_YMM,IMMEDIATE,0,0}, nasm_bytecodes+6047, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6904 ITEMPLATE_END
6907 static const struct itemplate instrux_VCMPSD[] = {
6908 {I_VCMPSD, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+6055, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6909 {I_VCMPSD, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6063, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6910 ITEMPLATE_END
6913 static const struct itemplate instrux_VCMPSS[] = {
6914 {I_VCMPSS, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+6071, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6915 {I_VCMPSS, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6079, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6916 ITEMPLATE_END
6919 static const struct itemplate instrux_VCMPTRUEPD[] = {
6920 {I_VCMPTRUEPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1773, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6921 {I_VCMPTRUEPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+1782, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6922 {I_VCMPTRUEPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+1791, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6923 {I_VCMPTRUEPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+1800, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6924 ITEMPLATE_END
6927 static const struct itemplate instrux_VCMPTRUEPS[] = {
6928 {I_VCMPTRUEPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2925, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6929 {I_VCMPTRUEPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2934, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6930 {I_VCMPTRUEPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2943, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6931 {I_VCMPTRUEPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2952, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6932 ITEMPLATE_END
6935 static const struct itemplate instrux_VCMPTRUESD[] = {
6936 {I_VCMPTRUESD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3807, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6937 {I_VCMPTRUESD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3816, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6938 ITEMPLATE_END
6941 static const struct itemplate instrux_VCMPTRUESS[] = {
6942 {I_VCMPTRUESS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4383, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6943 {I_VCMPTRUESS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4392, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6944 ITEMPLATE_END
6947 static const struct itemplate instrux_VCMPTRUE_USPD[] = {
6948 {I_VCMPTRUE_USPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2349, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6949 {I_VCMPTRUE_USPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2358, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6950 {I_VCMPTRUE_USPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2367, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6951 {I_VCMPTRUE_USPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2376, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6952 ITEMPLATE_END
6955 static const struct itemplate instrux_VCMPTRUE_USPS[] = {
6956 {I_VCMPTRUE_USPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3501, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6957 {I_VCMPTRUE_USPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3510, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6958 {I_VCMPTRUE_USPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+3519, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6959 {I_VCMPTRUE_USPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+3528, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6960 ITEMPLATE_END
6963 static const struct itemplate instrux_VCMPTRUE_USSD[] = {
6964 {I_VCMPTRUE_USSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4095, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6965 {I_VCMPTRUE_USSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4104, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6966 ITEMPLATE_END
6969 static const struct itemplate instrux_VCMPTRUE_USSS[] = {
6970 {I_VCMPTRUE_USSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4671, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6971 {I_VCMPTRUE_USSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4680, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6972 ITEMPLATE_END
6975 static const struct itemplate instrux_VCMPUNORDPD[] = {
6976 {I_VCMPUNORDPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1341, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6977 {I_VCMPUNORDPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+1350, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6978 {I_VCMPUNORDPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+1359, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6979 {I_VCMPUNORDPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+1368, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6980 ITEMPLATE_END
6983 static const struct itemplate instrux_VCMPUNORDPS[] = {
6984 {I_VCMPUNORDPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+2493, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6985 {I_VCMPUNORDPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+2502, IF_AVX|IF_SANDYBRIDGE|IF_SO},
6986 {I_VCMPUNORDPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+2511, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6987 {I_VCMPUNORDPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+2520, IF_AVX|IF_SANDYBRIDGE|IF_SY},
6988 ITEMPLATE_END
6991 static const struct itemplate instrux_VCMPUNORDSD[] = {
6992 {I_VCMPUNORDSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3591, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6993 {I_VCMPUNORDSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3600, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
6994 ITEMPLATE_END
6997 static const struct itemplate instrux_VCMPUNORDSS[] = {
6998 {I_VCMPUNORDSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4167, IF_AVX|IF_SANDYBRIDGE|IF_SD},
6999 {I_VCMPUNORDSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4176, IF_AVX|IF_SANDYBRIDGE|IF_SD},
7000 ITEMPLATE_END
7003 static const struct itemplate instrux_VCMPUNORD_SPD[] = {
7004 {I_VCMPUNORD_SPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+1917, IF_AVX|IF_SANDYBRIDGE|IF_SO},
7005 {I_VCMPUNORD_SPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+1926, IF_AVX|IF_SANDYBRIDGE|IF_SO},
7006 {I_VCMPUNORD_SPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+1935, IF_AVX|IF_SANDYBRIDGE|IF_SY},
7007 {I_VCMPUNORD_SPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+1944, IF_AVX|IF_SANDYBRIDGE|IF_SY},
7008 ITEMPLATE_END
7011 static const struct itemplate instrux_VCMPUNORD_SPS[] = {
7012 {I_VCMPUNORD_SPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3069, IF_AVX|IF_SANDYBRIDGE|IF_SO},
7013 {I_VCMPUNORD_SPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3078, IF_AVX|IF_SANDYBRIDGE|IF_SO},
7014 {I_VCMPUNORD_SPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+3087, IF_AVX|IF_SANDYBRIDGE|IF_SY},
7015 {I_VCMPUNORD_SPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+3096, IF_AVX|IF_SANDYBRIDGE|IF_SY},
7016 ITEMPLATE_END
7019 static const struct itemplate instrux_VCMPUNORD_SSD[] = {
7020 {I_VCMPUNORD_SSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+3879, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
7021 {I_VCMPUNORD_SSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+3888, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
7022 ITEMPLATE_END
7025 static const struct itemplate instrux_VCMPUNORD_SSS[] = {
7026 {I_VCMPUNORD_SSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+4455, IF_AVX|IF_SANDYBRIDGE|IF_SD},
7027 {I_VCMPUNORD_SSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+4464, IF_AVX|IF_SANDYBRIDGE|IF_SD},
7028 ITEMPLATE_END
7031 static const struct itemplate instrux_VCOMISD[] = {
7032 {I_VCOMISD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9563, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
7033 ITEMPLATE_END
7036 static const struct itemplate instrux_VCOMISS[] = {
7037 {I_VCOMISS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9570, IF_AVX|IF_SANDYBRIDGE|IF_SD},
7038 ITEMPLATE_END
7041 static const struct itemplate instrux_VCVTDQ2PD[] = {
7042 {I_VCVTDQ2PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9577, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
7043 {I_VCVTDQ2PD, 2, {YMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9584, IF_AVX|IF_SANDYBRIDGE|IF_SO},
7044 ITEMPLATE_END
7047 static const struct itemplate instrux_VCVTDQ2PS[] = {
7048 {I_VCVTDQ2PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9591, IF_AVX|IF_SANDYBRIDGE|IF_SO},
7049 {I_VCVTDQ2PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+9598, IF_AVX|IF_SANDYBRIDGE|IF_SY},
7050 ITEMPLATE_END
7053 static const struct itemplate instrux_VCVTPD2DQ[] = {
7054 {I_VCVTPD2DQ, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+9605, IF_AVX|IF_SANDYBRIDGE},
7055 {I_VCVTPD2DQ, 2, {XMMREG,MEMORY|BITS128,0,0,0}, nasm_bytecodes+9605, IF_AVX|IF_SANDYBRIDGE},
7056 {I_VCVTPD2DQ, 2, {XMMREG,YMMREG,0,0,0}, nasm_bytecodes+9612, IF_AVX|IF_SANDYBRIDGE},
7057 {I_VCVTPD2DQ, 2, {XMMREG,MEMORY|BITS256,0,0,0}, nasm_bytecodes+9612, IF_AVX|IF_SANDYBRIDGE},
7058 ITEMPLATE_END
7061 static const struct itemplate instrux_VCVTPD2PS[] = {
7062 {I_VCVTPD2PS, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+9619, IF_AVX|IF_SANDYBRIDGE},
7063 {I_VCVTPD2PS, 2, {XMMREG,MEMORY|BITS128,0,0,0}, nasm_bytecodes+9619, IF_AVX|IF_SANDYBRIDGE},
7064 {I_VCVTPD2PS, 2, {XMMREG,YMMREG,0,0,0}, nasm_bytecodes+9626, IF_AVX|IF_SANDYBRIDGE},
7065 {I_VCVTPD2PS, 2, {XMMREG,MEMORY|BITS256,0,0,0}, nasm_bytecodes+9626, IF_AVX|IF_SANDYBRIDGE},
7066 ITEMPLATE_END
7069 static const struct itemplate instrux_VCVTPS2DQ[] = {
7070 {I_VCVTPS2DQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9633, IF_AVX|IF_SANDYBRIDGE|IF_SO},
7071 {I_VCVTPS2DQ, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+9640, IF_AVX|IF_SANDYBRIDGE|IF_SY},
7072 ITEMPLATE_END
7075 static const struct itemplate instrux_VCVTPS2PD[] = {
7076 {I_VCVTPS2PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9647, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
7077 {I_VCVTPS2PD, 2, {YMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9654, IF_AVX|IF_SANDYBRIDGE|IF_SO},
7078 ITEMPLATE_END
7081 static const struct itemplate instrux_VCVTSD2SI[] = {
7082 {I_VCVTSD2SI, 2, {REG32,RM_XMM,0,0,0}, nasm_bytecodes+9661, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
7083 {I_VCVTSD2SI, 2, {REG64,RM_XMM,0,0,0}, nasm_bytecodes+9668, IF_AVX|IF_SANDYBRIDGE|IF_SQ|IF_LONG},
7084 ITEMPLATE_END
7087 static const struct itemplate instrux_VCVTSD2SS[] = {
7088 {I_VCVTSD2SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9675, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
7089 {I_VCVTSD2SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9682, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
7090 ITEMPLATE_END
7093 static const struct itemplate instrux_VCVTSI2SD[] = {
7094 {I_VCVTSI2SD, 3, {XMMREG,XMMREG,RM_GPR|BITS32,0,0}, nasm_bytecodes+9689, IF_AVX|IF_SANDYBRIDGE},
7095 {I_VCVTSI2SD, 2, {XMMREG,RM_GPR|BITS32,0,0,0}, nasm_bytecodes+9696, IF_AVX|IF_SANDYBRIDGE},
7096 {I_VCVTSI2SD, 3, {XMMREG,XMMREG,MEMORY,0,0}, nasm_bytecodes+9689, IF_AVX|IF_SANDYBRIDGE|IF_SD|IF_AR2},
7097 {I_VCVTSI2SD, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+9696, IF_AVX|IF_SANDYBRIDGE|IF_SD|IF_AR2},
7098 {I_VCVTSI2SD, 3, {XMMREG,XMMREG,RM_GPR|BITS64,0,0}, nasm_bytecodes+9703, IF_AVX|IF_SANDYBRIDGE|IF_LONG},
7099 {I_VCVTSI2SD, 2, {XMMREG,RM_GPR|BITS64,0,0,0}, nasm_bytecodes+9710, IF_AVX|IF_SANDYBRIDGE|IF_LONG},
7100 ITEMPLATE_END
7103 static const struct itemplate instrux_VCVTSI2SS[] = {
7104 {I_VCVTSI2SS, 3, {XMMREG,XMMREG,RM_GPR|BITS32,0,0}, nasm_bytecodes+9717, IF_AVX|IF_SANDYBRIDGE},
7105 {I_VCVTSI2SS, 2, {XMMREG,RM_GPR|BITS32,0,0,0}, nasm_bytecodes+9724, IF_AVX|IF_SANDYBRIDGE},
7106 {I_VCVTSI2SS, 3, {XMMREG,XMMREG,MEMORY,0,0}, nasm_bytecodes+9717, IF_AVX|IF_SANDYBRIDGE|IF_SD|IF_AR2},
7107 {I_VCVTSI2SS, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+9724, IF_AVX|IF_SANDYBRIDGE|IF_SD|IF_AR2},
7108 {I_VCVTSI2SS, 3, {XMMREG,XMMREG,RM_GPR|BITS64,0,0}, nasm_bytecodes+9731, IF_AVX|IF_SANDYBRIDGE|IF_LONG},
7109 {I_VCVTSI2SS, 2, {XMMREG,RM_GPR|BITS64,0,0,0}, nasm_bytecodes+9738, IF_AVX|IF_SANDYBRIDGE|IF_LONG},
7110 ITEMPLATE_END
7113 static const struct itemplate instrux_VCVTSS2SD[] = {
7114 {I_VCVTSS2SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9745, IF_AVX|IF_SANDYBRIDGE|IF_SD},
7115 {I_VCVTSS2SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9752, IF_AVX|IF_SANDYBRIDGE|IF_SD},
7116 ITEMPLATE_END
7119 static const struct itemplate instrux_VCVTSS2SI[] = {
7120 {I_VCVTSS2SI, 2, {REG32,RM_XMM,0,0,0}, nasm_bytecodes+9759, IF_AVX|IF_SANDYBRIDGE|IF_SD},
7121 {I_VCVTSS2SI, 2, {REG64,RM_XMM,0,0,0}, nasm_bytecodes+9766, IF_AVX|IF_SANDYBRIDGE|IF_SD|IF_LONG},
7122 ITEMPLATE_END
7125 static const struct itemplate instrux_VCVTTPD2DQ[] = {
7126 {I_VCVTTPD2DQ, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+9773, IF_AVX|IF_SANDYBRIDGE},
7127 {I_VCVTTPD2DQ, 2, {XMMREG,MEMORY|BITS128,0,0,0}, nasm_bytecodes+9773, IF_AVX|IF_SANDYBRIDGE},
7128 {I_VCVTTPD2DQ, 2, {XMMREG,YMMREG,0,0,0}, nasm_bytecodes+9780, IF_AVX|IF_SANDYBRIDGE},
7129 {I_VCVTTPD2DQ, 2, {XMMREG,MEMORY|BITS256,0,0,0}, nasm_bytecodes+9780, IF_AVX|IF_SANDYBRIDGE},
7130 ITEMPLATE_END
7133 static const struct itemplate instrux_VCVTTPS2DQ[] = {
7134 {I_VCVTTPS2DQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9787, IF_AVX|IF_SANDYBRIDGE|IF_SO},
7135 {I_VCVTTPS2DQ, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+9794, IF_AVX|IF_SANDYBRIDGE|IF_SY},
7136 ITEMPLATE_END
7139 static const struct itemplate instrux_VCVTTSD2SI[] = {
7140 {I_VCVTTSD2SI, 2, {REG32,RM_XMM,0,0,0}, nasm_bytecodes+9801, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
7141 {I_VCVTTSD2SI, 2, {REG64,RM_XMM,0,0,0}, nasm_bytecodes+9808, IF_AVX|IF_SANDYBRIDGE|IF_SQ|IF_LONG},
7142 ITEMPLATE_END
7145 static const struct itemplate instrux_VCVTTSS2SI[] = {
7146 {I_VCVTTSS2SI, 2, {REG32,RM_XMM,0,0,0}, nasm_bytecodes+9815, IF_AVX|IF_SANDYBRIDGE|IF_SD},
7147 {I_VCVTTSS2SI, 2, {REG64,RM_XMM,0,0,0}, nasm_bytecodes+9822, IF_AVX|IF_SANDYBRIDGE|IF_SD|IF_LONG},
7148 ITEMPLATE_END
7151 static const struct itemplate instrux_VDIVPD[] = {
7152 {I_VDIVPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9829, IF_AVX|IF_SANDYBRIDGE|IF_SO},
7153 {I_VDIVPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9836, IF_AVX|IF_SANDYBRIDGE|IF_SO},
7154 {I_VDIVPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+9843, IF_AVX|IF_SANDYBRIDGE|IF_SY},
7155 {I_VDIVPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+9850, IF_AVX|IF_SANDYBRIDGE|IF_SY},
7156 ITEMPLATE_END
7159 static const struct itemplate instrux_VDIVPS[] = {
7160 {I_VDIVPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9857, IF_AVX|IF_SANDYBRIDGE|IF_SO},
7161 {I_VDIVPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9864, IF_AVX|IF_SANDYBRIDGE|IF_SO},
7162 {I_VDIVPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+9871, IF_AVX|IF_SANDYBRIDGE|IF_SY},
7163 {I_VDIVPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+9878, IF_AVX|IF_SANDYBRIDGE|IF_SY},
7164 ITEMPLATE_END
7167 static const struct itemplate instrux_VDIVSD[] = {
7168 {I_VDIVSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9885, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
7169 {I_VDIVSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9892, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
7170 ITEMPLATE_END
7173 static const struct itemplate instrux_VDIVSS[] = {
7174 {I_VDIVSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9899, IF_AVX|IF_SANDYBRIDGE|IF_SD},
7175 {I_VDIVSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9906, IF_AVX|IF_SANDYBRIDGE|IF_SD},
7176 ITEMPLATE_END
7179 static const struct itemplate instrux_VDPPD[] = {
7180 {I_VDPPD, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+6087, IF_AVX|IF_SANDYBRIDGE|IF_SO},
7181 {I_VDPPD, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6095, IF_AVX|IF_SANDYBRIDGE|IF_SO},
7182 ITEMPLATE_END
7185 static const struct itemplate instrux_VDPPS[] = {
7186 {I_VDPPS, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+6103, IF_AVX|IF_SANDYBRIDGE|IF_SO},
7187 {I_VDPPS, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6111, IF_AVX|IF_SANDYBRIDGE|IF_SO},
7188 {I_VDPPS, 4, {YMMREG,YMMREG,RM_YMM,IMMEDIATE,0}, nasm_bytecodes+6119, IF_AVX|IF_SANDYBRIDGE|IF_SY},
7189 {I_VDPPS, 3, {YMMREG,RM_YMM,IMMEDIATE,0,0}, nasm_bytecodes+6127, IF_AVX|IF_SANDYBRIDGE|IF_SY},
7190 ITEMPLATE_END
7193 static const struct itemplate instrux_VERR[] = {
7194 {I_VERR, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+19190, IF_286|IF_PROT},
7195 {I_VERR, 1, {MEMORY|BITS16,0,0,0,0}, nasm_bytecodes+19190, IF_286|IF_PROT},
7196 {I_VERR, 1, {REG16,0,0,0,0}, nasm_bytecodes+19190, IF_286|IF_PROT},
7197 ITEMPLATE_END
7200 static const struct itemplate instrux_VERW[] = {
7201 {I_VERW, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+19195, IF_286|IF_PROT},
7202 {I_VERW, 1, {MEMORY|BITS16,0,0,0,0}, nasm_bytecodes+19195, IF_286|IF_PROT},
7203 {I_VERW, 1, {REG16,0,0,0,0}, nasm_bytecodes+19195, IF_286|IF_PROT},
7204 ITEMPLATE_END
7207 static const struct itemplate instrux_VEXTRACTF128[] = {
7208 {I_VEXTRACTF128, 3, {RM_XMM,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6135, IF_AVX|IF_SANDYBRIDGE|IF_SO},
7209 ITEMPLATE_END
7212 static const struct itemplate instrux_VEXTRACTPS[] = {
7213 {I_VEXTRACTPS, 3, {RM_GPR|BITS32,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6143, IF_AVX|IF_SANDYBRIDGE|IF_SD},
7214 ITEMPLATE_END
7217 static const struct itemplate instrux_VFMADD123PD[] = {
7218 {I_VFMADD123PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12720, IF_FMA|IF_FUTURE|IF_SO},
7219 {I_VFMADD123PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12727, IF_FMA|IF_FUTURE|IF_SO},
7220 {I_VFMADD123PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12734, IF_FMA|IF_FUTURE|IF_SY},
7221 {I_VFMADD123PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12741, IF_FMA|IF_FUTURE|IF_SY},
7222 ITEMPLATE_END
7225 static const struct itemplate instrux_VFMADD123PS[] = {
7226 {I_VFMADD123PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12692, IF_FMA|IF_FUTURE|IF_SO},
7227 {I_VFMADD123PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12699, IF_FMA|IF_FUTURE|IF_SO},
7228 {I_VFMADD123PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12706, IF_FMA|IF_FUTURE|IF_SY},
7229 {I_VFMADD123PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12713, IF_FMA|IF_FUTURE|IF_SY},
7230 ITEMPLATE_END
7233 static const struct itemplate instrux_VFMADD123SD[] = {
7234 {I_VFMADD123SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13686, IF_FMA|IF_FUTURE|IF_SQ},
7235 {I_VFMADD123SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13693, IF_FMA|IF_FUTURE|IF_SQ},
7236 ITEMPLATE_END
7239 static const struct itemplate instrux_VFMADD123SS[] = {
7240 {I_VFMADD123SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13672, IF_FMA|IF_FUTURE|IF_SD},
7241 {I_VFMADD123SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13679, IF_FMA|IF_FUTURE|IF_SD},
7242 ITEMPLATE_END
7245 static const struct itemplate instrux_VFMADD132PD[] = {
7246 {I_VFMADD132PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12664, IF_FMA|IF_FUTURE|IF_SO},
7247 {I_VFMADD132PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12671, IF_FMA|IF_FUTURE|IF_SO},
7248 {I_VFMADD132PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12678, IF_FMA|IF_FUTURE|IF_SY},
7249 {I_VFMADD132PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12685, IF_FMA|IF_FUTURE|IF_SY},
7250 ITEMPLATE_END
7253 static const struct itemplate instrux_VFMADD132PS[] = {
7254 {I_VFMADD132PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12636, IF_FMA|IF_FUTURE|IF_SO},
7255 {I_VFMADD132PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12643, IF_FMA|IF_FUTURE|IF_SO},
7256 {I_VFMADD132PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12650, IF_FMA|IF_FUTURE|IF_SY},
7257 {I_VFMADD132PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12657, IF_FMA|IF_FUTURE|IF_SY},
7258 ITEMPLATE_END
7261 static const struct itemplate instrux_VFMADD132SD[] = {
7262 {I_VFMADD132SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13658, IF_FMA|IF_FUTURE|IF_SQ},
7263 {I_VFMADD132SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13665, IF_FMA|IF_FUTURE|IF_SQ},
7264 ITEMPLATE_END
7267 static const struct itemplate instrux_VFMADD132SS[] = {
7268 {I_VFMADD132SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13644, IF_FMA|IF_FUTURE|IF_SD},
7269 {I_VFMADD132SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13651, IF_FMA|IF_FUTURE|IF_SD},
7270 ITEMPLATE_END
7273 static const struct itemplate instrux_VFMADD213PD[] = {
7274 {I_VFMADD213PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12720, IF_FMA|IF_FUTURE|IF_SO},
7275 {I_VFMADD213PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12727, IF_FMA|IF_FUTURE|IF_SO},
7276 {I_VFMADD213PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12734, IF_FMA|IF_FUTURE|IF_SY},
7277 {I_VFMADD213PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12741, IF_FMA|IF_FUTURE|IF_SY},
7278 ITEMPLATE_END
7281 static const struct itemplate instrux_VFMADD213PS[] = {
7282 {I_VFMADD213PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12692, IF_FMA|IF_FUTURE|IF_SO},
7283 {I_VFMADD213PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12699, IF_FMA|IF_FUTURE|IF_SO},
7284 {I_VFMADD213PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12706, IF_FMA|IF_FUTURE|IF_SY},
7285 {I_VFMADD213PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12713, IF_FMA|IF_FUTURE|IF_SY},
7286 ITEMPLATE_END
7289 static const struct itemplate instrux_VFMADD213SD[] = {
7290 {I_VFMADD213SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13686, IF_FMA|IF_FUTURE|IF_SQ},
7291 {I_VFMADD213SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13693, IF_FMA|IF_FUTURE|IF_SQ},
7292 ITEMPLATE_END
7295 static const struct itemplate instrux_VFMADD213SS[] = {
7296 {I_VFMADD213SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13672, IF_FMA|IF_FUTURE|IF_SD},
7297 {I_VFMADD213SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13679, IF_FMA|IF_FUTURE|IF_SD},
7298 ITEMPLATE_END
7301 static const struct itemplate instrux_VFMADD231PD[] = {
7302 {I_VFMADD231PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12776, IF_FMA|IF_FUTURE|IF_SO},
7303 {I_VFMADD231PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12783, IF_FMA|IF_FUTURE|IF_SO},
7304 {I_VFMADD231PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12790, IF_FMA|IF_FUTURE|IF_SY},
7305 {I_VFMADD231PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12797, IF_FMA|IF_FUTURE|IF_SY},
7306 ITEMPLATE_END
7309 static const struct itemplate instrux_VFMADD231PS[] = {
7310 {I_VFMADD231PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12748, IF_FMA|IF_FUTURE|IF_SO},
7311 {I_VFMADD231PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12755, IF_FMA|IF_FUTURE|IF_SO},
7312 {I_VFMADD231PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12762, IF_FMA|IF_FUTURE|IF_SY},
7313 {I_VFMADD231PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12769, IF_FMA|IF_FUTURE|IF_SY},
7314 ITEMPLATE_END
7317 static const struct itemplate instrux_VFMADD231SD[] = {
7318 {I_VFMADD231SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13714, IF_FMA|IF_FUTURE|IF_SQ},
7319 {I_VFMADD231SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13721, IF_FMA|IF_FUTURE|IF_SQ},
7320 ITEMPLATE_END
7323 static const struct itemplate instrux_VFMADD231SS[] = {
7324 {I_VFMADD231SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13700, IF_FMA|IF_FUTURE|IF_SD},
7325 {I_VFMADD231SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13707, IF_FMA|IF_FUTURE|IF_SD},
7326 ITEMPLATE_END
7329 static const struct itemplate instrux_VFMADD312PD[] = {
7330 {I_VFMADD312PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12664, IF_FMA|IF_FUTURE|IF_SO},
7331 {I_VFMADD312PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12671, IF_FMA|IF_FUTURE|IF_SO},
7332 {I_VFMADD312PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12678, IF_FMA|IF_FUTURE|IF_SY},
7333 {I_VFMADD312PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12685, IF_FMA|IF_FUTURE|IF_SY},
7334 ITEMPLATE_END
7337 static const struct itemplate instrux_VFMADD312PS[] = {
7338 {I_VFMADD312PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12636, IF_FMA|IF_FUTURE|IF_SO},
7339 {I_VFMADD312PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12643, IF_FMA|IF_FUTURE|IF_SO},
7340 {I_VFMADD312PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12650, IF_FMA|IF_FUTURE|IF_SY},
7341 {I_VFMADD312PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12657, IF_FMA|IF_FUTURE|IF_SY},
7342 ITEMPLATE_END
7345 static const struct itemplate instrux_VFMADD312SD[] = {
7346 {I_VFMADD312SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13658, IF_FMA|IF_FUTURE|IF_SQ},
7347 {I_VFMADD312SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13665, IF_FMA|IF_FUTURE|IF_SQ},
7348 ITEMPLATE_END
7351 static const struct itemplate instrux_VFMADD312SS[] = {
7352 {I_VFMADD312SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13644, IF_FMA|IF_FUTURE|IF_SD},
7353 {I_VFMADD312SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13651, IF_FMA|IF_FUTURE|IF_SD},
7354 ITEMPLATE_END
7357 static const struct itemplate instrux_VFMADD321PD[] = {
7358 {I_VFMADD321PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12776, IF_FMA|IF_FUTURE|IF_SO},
7359 {I_VFMADD321PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12783, IF_FMA|IF_FUTURE|IF_SO},
7360 {I_VFMADD321PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12790, IF_FMA|IF_FUTURE|IF_SY},
7361 {I_VFMADD321PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12797, IF_FMA|IF_FUTURE|IF_SY},
7362 ITEMPLATE_END
7365 static const struct itemplate instrux_VFMADD321PS[] = {
7366 {I_VFMADD321PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12748, IF_FMA|IF_FUTURE|IF_SO},
7367 {I_VFMADD321PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12755, IF_FMA|IF_FUTURE|IF_SO},
7368 {I_VFMADD321PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12762, IF_FMA|IF_FUTURE|IF_SY},
7369 {I_VFMADD321PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12769, IF_FMA|IF_FUTURE|IF_SY},
7370 ITEMPLATE_END
7373 static const struct itemplate instrux_VFMADD321SD[] = {
7374 {I_VFMADD321SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13714, IF_FMA|IF_FUTURE|IF_SQ},
7375 {I_VFMADD321SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13721, IF_FMA|IF_FUTURE|IF_SQ},
7376 ITEMPLATE_END
7379 static const struct itemplate instrux_VFMADD321SS[] = {
7380 {I_VFMADD321SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13700, IF_FMA|IF_FUTURE|IF_SD},
7381 {I_VFMADD321SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13707, IF_FMA|IF_FUTURE|IF_SD},
7382 ITEMPLATE_END
7385 static const struct itemplate instrux_VFMADDSUB123PD[] = {
7386 {I_VFMADDSUB123PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12888, IF_FMA|IF_FUTURE|IF_SO},
7387 {I_VFMADDSUB123PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12895, IF_FMA|IF_FUTURE|IF_SO},
7388 {I_VFMADDSUB123PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12902, IF_FMA|IF_FUTURE|IF_SY},
7389 {I_VFMADDSUB123PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12909, IF_FMA|IF_FUTURE|IF_SY},
7390 ITEMPLATE_END
7393 static const struct itemplate instrux_VFMADDSUB123PS[] = {
7394 {I_VFMADDSUB123PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12860, IF_FMA|IF_FUTURE|IF_SO},
7395 {I_VFMADDSUB123PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12867, IF_FMA|IF_FUTURE|IF_SO},
7396 {I_VFMADDSUB123PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12874, IF_FMA|IF_FUTURE|IF_SY},
7397 {I_VFMADDSUB123PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12881, IF_FMA|IF_FUTURE|IF_SY},
7398 ITEMPLATE_END
7401 static const struct itemplate instrux_VFMADDSUB132PD[] = {
7402 {I_VFMADDSUB132PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12832, IF_FMA|IF_FUTURE|IF_SO},
7403 {I_VFMADDSUB132PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12839, IF_FMA|IF_FUTURE|IF_SO},
7404 {I_VFMADDSUB132PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12846, IF_FMA|IF_FUTURE|IF_SY},
7405 {I_VFMADDSUB132PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12853, IF_FMA|IF_FUTURE|IF_SY},
7406 ITEMPLATE_END
7409 static const struct itemplate instrux_VFMADDSUB132PS[] = {
7410 {I_VFMADDSUB132PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12804, IF_FMA|IF_FUTURE|IF_SO},
7411 {I_VFMADDSUB132PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12811, IF_FMA|IF_FUTURE|IF_SO},
7412 {I_VFMADDSUB132PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12818, IF_FMA|IF_FUTURE|IF_SY},
7413 {I_VFMADDSUB132PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12825, IF_FMA|IF_FUTURE|IF_SY},
7414 ITEMPLATE_END
7417 static const struct itemplate instrux_VFMADDSUB213PD[] = {
7418 {I_VFMADDSUB213PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12888, IF_FMA|IF_FUTURE|IF_SO},
7419 {I_VFMADDSUB213PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12895, IF_FMA|IF_FUTURE|IF_SO},
7420 {I_VFMADDSUB213PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12902, IF_FMA|IF_FUTURE|IF_SY},
7421 {I_VFMADDSUB213PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12909, IF_FMA|IF_FUTURE|IF_SY},
7422 ITEMPLATE_END
7425 static const struct itemplate instrux_VFMADDSUB213PS[] = {
7426 {I_VFMADDSUB213PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12860, IF_FMA|IF_FUTURE|IF_SO},
7427 {I_VFMADDSUB213PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12867, IF_FMA|IF_FUTURE|IF_SO},
7428 {I_VFMADDSUB213PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12874, IF_FMA|IF_FUTURE|IF_SY},
7429 {I_VFMADDSUB213PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12881, IF_FMA|IF_FUTURE|IF_SY},
7430 ITEMPLATE_END
7433 static const struct itemplate instrux_VFMADDSUB231PD[] = {
7434 {I_VFMADDSUB231PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12944, IF_FMA|IF_FUTURE|IF_SO},
7435 {I_VFMADDSUB231PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12951, IF_FMA|IF_FUTURE|IF_SO},
7436 {I_VFMADDSUB231PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12958, IF_FMA|IF_FUTURE|IF_SY},
7437 {I_VFMADDSUB231PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12965, IF_FMA|IF_FUTURE|IF_SY},
7438 ITEMPLATE_END
7441 static const struct itemplate instrux_VFMADDSUB231PS[] = {
7442 {I_VFMADDSUB231PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12916, IF_FMA|IF_FUTURE|IF_SO},
7443 {I_VFMADDSUB231PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12923, IF_FMA|IF_FUTURE|IF_SO},
7444 {I_VFMADDSUB231PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12930, IF_FMA|IF_FUTURE|IF_SY},
7445 {I_VFMADDSUB231PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12937, IF_FMA|IF_FUTURE|IF_SY},
7446 ITEMPLATE_END
7449 static const struct itemplate instrux_VFMADDSUB312PD[] = {
7450 {I_VFMADDSUB312PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12832, IF_FMA|IF_FUTURE|IF_SO},
7451 {I_VFMADDSUB312PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12839, IF_FMA|IF_FUTURE|IF_SO},
7452 {I_VFMADDSUB312PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12846, IF_FMA|IF_FUTURE|IF_SY},
7453 {I_VFMADDSUB312PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12853, IF_FMA|IF_FUTURE|IF_SY},
7454 ITEMPLATE_END
7457 static const struct itemplate instrux_VFMADDSUB312PS[] = {
7458 {I_VFMADDSUB312PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12804, IF_FMA|IF_FUTURE|IF_SO},
7459 {I_VFMADDSUB312PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12811, IF_FMA|IF_FUTURE|IF_SO},
7460 {I_VFMADDSUB312PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12818, IF_FMA|IF_FUTURE|IF_SY},
7461 {I_VFMADDSUB312PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12825, IF_FMA|IF_FUTURE|IF_SY},
7462 ITEMPLATE_END
7465 static const struct itemplate instrux_VFMADDSUB321PD[] = {
7466 {I_VFMADDSUB321PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12944, IF_FMA|IF_FUTURE|IF_SO},
7467 {I_VFMADDSUB321PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12951, IF_FMA|IF_FUTURE|IF_SO},
7468 {I_VFMADDSUB321PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12958, IF_FMA|IF_FUTURE|IF_SY},
7469 {I_VFMADDSUB321PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12965, IF_FMA|IF_FUTURE|IF_SY},
7470 ITEMPLATE_END
7473 static const struct itemplate instrux_VFMADDSUB321PS[] = {
7474 {I_VFMADDSUB321PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12916, IF_FMA|IF_FUTURE|IF_SO},
7475 {I_VFMADDSUB321PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12923, IF_FMA|IF_FUTURE|IF_SO},
7476 {I_VFMADDSUB321PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12930, IF_FMA|IF_FUTURE|IF_SY},
7477 {I_VFMADDSUB321PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12937, IF_FMA|IF_FUTURE|IF_SY},
7478 ITEMPLATE_END
7481 static const struct itemplate instrux_VFMSUB123PD[] = {
7482 {I_VFMSUB123PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13056, IF_FMA|IF_FUTURE|IF_SO},
7483 {I_VFMSUB123PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13063, IF_FMA|IF_FUTURE|IF_SO},
7484 {I_VFMSUB123PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13070, IF_FMA|IF_FUTURE|IF_SY},
7485 {I_VFMSUB123PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13077, IF_FMA|IF_FUTURE|IF_SY},
7486 ITEMPLATE_END
7489 static const struct itemplate instrux_VFMSUB123PS[] = {
7490 {I_VFMSUB123PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13028, IF_FMA|IF_FUTURE|IF_SO},
7491 {I_VFMSUB123PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13035, IF_FMA|IF_FUTURE|IF_SO},
7492 {I_VFMSUB123PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13042, IF_FMA|IF_FUTURE|IF_SY},
7493 {I_VFMSUB123PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13049, IF_FMA|IF_FUTURE|IF_SY},
7494 ITEMPLATE_END
7497 static const struct itemplate instrux_VFMSUB123SD[] = {
7498 {I_VFMSUB123SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13770, IF_FMA|IF_FUTURE|IF_SQ},
7499 {I_VFMSUB123SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13777, IF_FMA|IF_FUTURE|IF_SQ},
7500 ITEMPLATE_END
7503 static const struct itemplate instrux_VFMSUB123SS[] = {
7504 {I_VFMSUB123SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13756, IF_FMA|IF_FUTURE|IF_SD},
7505 {I_VFMSUB123SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13763, IF_FMA|IF_FUTURE|IF_SD},
7506 ITEMPLATE_END
7509 static const struct itemplate instrux_VFMSUB132PD[] = {
7510 {I_VFMSUB132PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13000, IF_FMA|IF_FUTURE|IF_SO},
7511 {I_VFMSUB132PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13007, IF_FMA|IF_FUTURE|IF_SO},
7512 {I_VFMSUB132PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13014, IF_FMA|IF_FUTURE|IF_SY},
7513 {I_VFMSUB132PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13021, IF_FMA|IF_FUTURE|IF_SY},
7514 ITEMPLATE_END
7517 static const struct itemplate instrux_VFMSUB132PS[] = {
7518 {I_VFMSUB132PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12972, IF_FMA|IF_FUTURE|IF_SO},
7519 {I_VFMSUB132PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12979, IF_FMA|IF_FUTURE|IF_SO},
7520 {I_VFMSUB132PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12986, IF_FMA|IF_FUTURE|IF_SY},
7521 {I_VFMSUB132PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12993, IF_FMA|IF_FUTURE|IF_SY},
7522 ITEMPLATE_END
7525 static const struct itemplate instrux_VFMSUB132SD[] = {
7526 {I_VFMSUB132SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13742, IF_FMA|IF_FUTURE|IF_SQ},
7527 {I_VFMSUB132SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13749, IF_FMA|IF_FUTURE|IF_SQ},
7528 ITEMPLATE_END
7531 static const struct itemplate instrux_VFMSUB132SS[] = {
7532 {I_VFMSUB132SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13728, IF_FMA|IF_FUTURE|IF_SD},
7533 {I_VFMSUB132SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13735, IF_FMA|IF_FUTURE|IF_SD},
7534 ITEMPLATE_END
7537 static const struct itemplate instrux_VFMSUB213PD[] = {
7538 {I_VFMSUB213PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13056, IF_FMA|IF_FUTURE|IF_SO},
7539 {I_VFMSUB213PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13063, IF_FMA|IF_FUTURE|IF_SO},
7540 {I_VFMSUB213PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13070, IF_FMA|IF_FUTURE|IF_SY},
7541 {I_VFMSUB213PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13077, IF_FMA|IF_FUTURE|IF_SY},
7542 ITEMPLATE_END
7545 static const struct itemplate instrux_VFMSUB213PS[] = {
7546 {I_VFMSUB213PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13028, IF_FMA|IF_FUTURE|IF_SO},
7547 {I_VFMSUB213PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13035, IF_FMA|IF_FUTURE|IF_SO},
7548 {I_VFMSUB213PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13042, IF_FMA|IF_FUTURE|IF_SY},
7549 {I_VFMSUB213PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13049, IF_FMA|IF_FUTURE|IF_SY},
7550 ITEMPLATE_END
7553 static const struct itemplate instrux_VFMSUB213SD[] = {
7554 {I_VFMSUB213SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13770, IF_FMA|IF_FUTURE|IF_SQ},
7555 {I_VFMSUB213SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13777, IF_FMA|IF_FUTURE|IF_SQ},
7556 ITEMPLATE_END
7559 static const struct itemplate instrux_VFMSUB213SS[] = {
7560 {I_VFMSUB213SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13756, IF_FMA|IF_FUTURE|IF_SD},
7561 {I_VFMSUB213SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13763, IF_FMA|IF_FUTURE|IF_SD},
7562 ITEMPLATE_END
7565 static const struct itemplate instrux_VFMSUB231PD[] = {
7566 {I_VFMSUB231PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13112, IF_FMA|IF_FUTURE|IF_SO},
7567 {I_VFMSUB231PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13119, IF_FMA|IF_FUTURE|IF_SO},
7568 {I_VFMSUB231PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13126, IF_FMA|IF_FUTURE|IF_SY},
7569 {I_VFMSUB231PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13133, IF_FMA|IF_FUTURE|IF_SY},
7570 ITEMPLATE_END
7573 static const struct itemplate instrux_VFMSUB231PS[] = {
7574 {I_VFMSUB231PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13084, IF_FMA|IF_FUTURE|IF_SO},
7575 {I_VFMSUB231PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13091, IF_FMA|IF_FUTURE|IF_SO},
7576 {I_VFMSUB231PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13098, IF_FMA|IF_FUTURE|IF_SY},
7577 {I_VFMSUB231PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13105, IF_FMA|IF_FUTURE|IF_SY},
7578 ITEMPLATE_END
7581 static const struct itemplate instrux_VFMSUB231SD[] = {
7582 {I_VFMSUB231SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13798, IF_FMA|IF_FUTURE|IF_SQ},
7583 {I_VFMSUB231SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13805, IF_FMA|IF_FUTURE|IF_SQ},
7584 ITEMPLATE_END
7587 static const struct itemplate instrux_VFMSUB231SS[] = {
7588 {I_VFMSUB231SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13784, IF_FMA|IF_FUTURE|IF_SD},
7589 {I_VFMSUB231SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13791, IF_FMA|IF_FUTURE|IF_SD},
7590 ITEMPLATE_END
7593 static const struct itemplate instrux_VFMSUB312PD[] = {
7594 {I_VFMSUB312PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13000, IF_FMA|IF_FUTURE|IF_SO},
7595 {I_VFMSUB312PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13007, IF_FMA|IF_FUTURE|IF_SO},
7596 {I_VFMSUB312PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13014, IF_FMA|IF_FUTURE|IF_SY},
7597 {I_VFMSUB312PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13021, IF_FMA|IF_FUTURE|IF_SY},
7598 ITEMPLATE_END
7601 static const struct itemplate instrux_VFMSUB312PS[] = {
7602 {I_VFMSUB312PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12972, IF_FMA|IF_FUTURE|IF_SO},
7603 {I_VFMSUB312PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12979, IF_FMA|IF_FUTURE|IF_SO},
7604 {I_VFMSUB312PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12986, IF_FMA|IF_FUTURE|IF_SY},
7605 {I_VFMSUB312PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12993, IF_FMA|IF_FUTURE|IF_SY},
7606 ITEMPLATE_END
7609 static const struct itemplate instrux_VFMSUB312SD[] = {
7610 {I_VFMSUB312SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13742, IF_FMA|IF_FUTURE|IF_SQ},
7611 {I_VFMSUB312SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13749, IF_FMA|IF_FUTURE|IF_SQ},
7612 ITEMPLATE_END
7615 static const struct itemplate instrux_VFMSUB312SS[] = {
7616 {I_VFMSUB312SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13728, IF_FMA|IF_FUTURE|IF_SD},
7617 {I_VFMSUB312SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13735, IF_FMA|IF_FUTURE|IF_SD},
7618 ITEMPLATE_END
7621 static const struct itemplate instrux_VFMSUB321PD[] = {
7622 {I_VFMSUB321PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13112, IF_FMA|IF_FUTURE|IF_SO},
7623 {I_VFMSUB321PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13119, IF_FMA|IF_FUTURE|IF_SO},
7624 {I_VFMSUB321PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13126, IF_FMA|IF_FUTURE|IF_SY},
7625 {I_VFMSUB321PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13133, IF_FMA|IF_FUTURE|IF_SY},
7626 ITEMPLATE_END
7629 static const struct itemplate instrux_VFMSUB321PS[] = {
7630 {I_VFMSUB321PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13084, IF_FMA|IF_FUTURE|IF_SO},
7631 {I_VFMSUB321PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13091, IF_FMA|IF_FUTURE|IF_SO},
7632 {I_VFMSUB321PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13098, IF_FMA|IF_FUTURE|IF_SY},
7633 {I_VFMSUB321PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13105, IF_FMA|IF_FUTURE|IF_SY},
7634 ITEMPLATE_END
7637 static const struct itemplate instrux_VFMSUB321SD[] = {
7638 {I_VFMSUB321SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13798, IF_FMA|IF_FUTURE|IF_SQ},
7639 {I_VFMSUB321SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13805, IF_FMA|IF_FUTURE|IF_SQ},
7640 ITEMPLATE_END
7643 static const struct itemplate instrux_VFMSUB321SS[] = {
7644 {I_VFMSUB321SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13784, IF_FMA|IF_FUTURE|IF_SD},
7645 {I_VFMSUB321SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13791, IF_FMA|IF_FUTURE|IF_SD},
7646 ITEMPLATE_END
7649 static const struct itemplate instrux_VFMSUBADD123PD[] = {
7650 {I_VFMSUBADD123PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13224, IF_FMA|IF_FUTURE|IF_SO},
7651 {I_VFMSUBADD123PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13231, IF_FMA|IF_FUTURE|IF_SO},
7652 {I_VFMSUBADD123PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13238, IF_FMA|IF_FUTURE|IF_SY},
7653 {I_VFMSUBADD123PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13245, IF_FMA|IF_FUTURE|IF_SY},
7654 ITEMPLATE_END
7657 static const struct itemplate instrux_VFMSUBADD123PS[] = {
7658 {I_VFMSUBADD123PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13196, IF_FMA|IF_FUTURE|IF_SO},
7659 {I_VFMSUBADD123PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13203, IF_FMA|IF_FUTURE|IF_SO},
7660 {I_VFMSUBADD123PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13210, IF_FMA|IF_FUTURE|IF_SY},
7661 {I_VFMSUBADD123PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13217, IF_FMA|IF_FUTURE|IF_SY},
7662 ITEMPLATE_END
7665 static const struct itemplate instrux_VFMSUBADD132PD[] = {
7666 {I_VFMSUBADD132PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13168, IF_FMA|IF_FUTURE|IF_SO},
7667 {I_VFMSUBADD132PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13175, IF_FMA|IF_FUTURE|IF_SO},
7668 {I_VFMSUBADD132PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13182, IF_FMA|IF_FUTURE|IF_SY},
7669 {I_VFMSUBADD132PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13189, IF_FMA|IF_FUTURE|IF_SY},
7670 ITEMPLATE_END
7673 static const struct itemplate instrux_VFMSUBADD132PS[] = {
7674 {I_VFMSUBADD132PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13140, IF_FMA|IF_FUTURE|IF_SO},
7675 {I_VFMSUBADD132PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13147, IF_FMA|IF_FUTURE|IF_SO},
7676 {I_VFMSUBADD132PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13154, IF_FMA|IF_FUTURE|IF_SY},
7677 {I_VFMSUBADD132PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13161, IF_FMA|IF_FUTURE|IF_SY},
7678 ITEMPLATE_END
7681 static const struct itemplate instrux_VFMSUBADD213PD[] = {
7682 {I_VFMSUBADD213PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13224, IF_FMA|IF_FUTURE|IF_SO},
7683 {I_VFMSUBADD213PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13231, IF_FMA|IF_FUTURE|IF_SO},
7684 {I_VFMSUBADD213PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13238, IF_FMA|IF_FUTURE|IF_SY},
7685 {I_VFMSUBADD213PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13245, IF_FMA|IF_FUTURE|IF_SY},
7686 ITEMPLATE_END
7689 static const struct itemplate instrux_VFMSUBADD213PS[] = {
7690 {I_VFMSUBADD213PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13196, IF_FMA|IF_FUTURE|IF_SO},
7691 {I_VFMSUBADD213PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13203, IF_FMA|IF_FUTURE|IF_SO},
7692 {I_VFMSUBADD213PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13210, IF_FMA|IF_FUTURE|IF_SY},
7693 {I_VFMSUBADD213PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13217, IF_FMA|IF_FUTURE|IF_SY},
7694 ITEMPLATE_END
7697 static const struct itemplate instrux_VFMSUBADD231PD[] = {
7698 {I_VFMSUBADD231PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13280, IF_FMA|IF_FUTURE|IF_SO},
7699 {I_VFMSUBADD231PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13287, IF_FMA|IF_FUTURE|IF_SO},
7700 {I_VFMSUBADD231PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13294, IF_FMA|IF_FUTURE|IF_SY},
7701 {I_VFMSUBADD231PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13301, IF_FMA|IF_FUTURE|IF_SY},
7702 ITEMPLATE_END
7705 static const struct itemplate instrux_VFMSUBADD231PS[] = {
7706 {I_VFMSUBADD231PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13252, IF_FMA|IF_FUTURE|IF_SO},
7707 {I_VFMSUBADD231PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13259, IF_FMA|IF_FUTURE|IF_SO},
7708 {I_VFMSUBADD231PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13266, IF_FMA|IF_FUTURE|IF_SY},
7709 {I_VFMSUBADD231PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13273, IF_FMA|IF_FUTURE|IF_SY},
7710 ITEMPLATE_END
7713 static const struct itemplate instrux_VFMSUBADD312PD[] = {
7714 {I_VFMSUBADD312PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13168, IF_FMA|IF_FUTURE|IF_SO},
7715 {I_VFMSUBADD312PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13175, IF_FMA|IF_FUTURE|IF_SO},
7716 {I_VFMSUBADD312PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13182, IF_FMA|IF_FUTURE|IF_SY},
7717 {I_VFMSUBADD312PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13189, IF_FMA|IF_FUTURE|IF_SY},
7718 ITEMPLATE_END
7721 static const struct itemplate instrux_VFMSUBADD312PS[] = {
7722 {I_VFMSUBADD312PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13140, IF_FMA|IF_FUTURE|IF_SO},
7723 {I_VFMSUBADD312PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13147, IF_FMA|IF_FUTURE|IF_SO},
7724 {I_VFMSUBADD312PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13154, IF_FMA|IF_FUTURE|IF_SY},
7725 {I_VFMSUBADD312PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13161, IF_FMA|IF_FUTURE|IF_SY},
7726 ITEMPLATE_END
7729 static const struct itemplate instrux_VFMSUBADD321PD[] = {
7730 {I_VFMSUBADD321PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13280, IF_FMA|IF_FUTURE|IF_SO},
7731 {I_VFMSUBADD321PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13287, IF_FMA|IF_FUTURE|IF_SO},
7732 {I_VFMSUBADD321PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13294, IF_FMA|IF_FUTURE|IF_SY},
7733 {I_VFMSUBADD321PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13301, IF_FMA|IF_FUTURE|IF_SY},
7734 ITEMPLATE_END
7737 static const struct itemplate instrux_VFMSUBADD321PS[] = {
7738 {I_VFMSUBADD321PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13252, IF_FMA|IF_FUTURE|IF_SO},
7739 {I_VFMSUBADD321PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13259, IF_FMA|IF_FUTURE|IF_SO},
7740 {I_VFMSUBADD321PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13266, IF_FMA|IF_FUTURE|IF_SY},
7741 {I_VFMSUBADD321PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13273, IF_FMA|IF_FUTURE|IF_SY},
7742 ITEMPLATE_END
7745 static const struct itemplate instrux_VFNMADD123PD[] = {
7746 {I_VFNMADD123PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13392, IF_FMA|IF_FUTURE|IF_SO},
7747 {I_VFNMADD123PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13399, IF_FMA|IF_FUTURE|IF_SO},
7748 {I_VFNMADD123PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13406, IF_FMA|IF_FUTURE|IF_SY},
7749 {I_VFNMADD123PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13413, IF_FMA|IF_FUTURE|IF_SY},
7750 ITEMPLATE_END
7753 static const struct itemplate instrux_VFNMADD123PS[] = {
7754 {I_VFNMADD123PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13364, IF_FMA|IF_FUTURE|IF_SO},
7755 {I_VFNMADD123PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13371, IF_FMA|IF_FUTURE|IF_SO},
7756 {I_VFNMADD123PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13378, IF_FMA|IF_FUTURE|IF_SY},
7757 {I_VFNMADD123PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13385, IF_FMA|IF_FUTURE|IF_SY},
7758 ITEMPLATE_END
7761 static const struct itemplate instrux_VFNMADD123SD[] = {
7762 {I_VFNMADD123SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13854, IF_FMA|IF_FUTURE|IF_SQ},
7763 {I_VFNMADD123SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13861, IF_FMA|IF_FUTURE|IF_SQ},
7764 ITEMPLATE_END
7767 static const struct itemplate instrux_VFNMADD123SS[] = {
7768 {I_VFNMADD123SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13840, IF_FMA|IF_FUTURE|IF_SD},
7769 {I_VFNMADD123SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13847, IF_FMA|IF_FUTURE|IF_SD},
7770 ITEMPLATE_END
7773 static const struct itemplate instrux_VFNMADD132PD[] = {
7774 {I_VFNMADD132PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13336, IF_FMA|IF_FUTURE|IF_SO},
7775 {I_VFNMADD132PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13343, IF_FMA|IF_FUTURE|IF_SO},
7776 {I_VFNMADD132PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13350, IF_FMA|IF_FUTURE|IF_SY},
7777 {I_VFNMADD132PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13357, IF_FMA|IF_FUTURE|IF_SY},
7778 ITEMPLATE_END
7781 static const struct itemplate instrux_VFNMADD132PS[] = {
7782 {I_VFNMADD132PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13308, IF_FMA|IF_FUTURE|IF_SO},
7783 {I_VFNMADD132PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13315, IF_FMA|IF_FUTURE|IF_SO},
7784 {I_VFNMADD132PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13322, IF_FMA|IF_FUTURE|IF_SY},
7785 {I_VFNMADD132PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13329, IF_FMA|IF_FUTURE|IF_SY},
7786 ITEMPLATE_END
7789 static const struct itemplate instrux_VFNMADD132SD[] = {
7790 {I_VFNMADD132SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13826, IF_FMA|IF_FUTURE|IF_SQ},
7791 {I_VFNMADD132SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13833, IF_FMA|IF_FUTURE|IF_SQ},
7792 ITEMPLATE_END
7795 static const struct itemplate instrux_VFNMADD132SS[] = {
7796 {I_VFNMADD132SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13812, IF_FMA|IF_FUTURE|IF_SD},
7797 {I_VFNMADD132SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13819, IF_FMA|IF_FUTURE|IF_SD},
7798 ITEMPLATE_END
7801 static const struct itemplate instrux_VFNMADD213PD[] = {
7802 {I_VFNMADD213PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13392, IF_FMA|IF_FUTURE|IF_SO},
7803 {I_VFNMADD213PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13399, IF_FMA|IF_FUTURE|IF_SO},
7804 {I_VFNMADD213PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13406, IF_FMA|IF_FUTURE|IF_SY},
7805 {I_VFNMADD213PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13413, IF_FMA|IF_FUTURE|IF_SY},
7806 ITEMPLATE_END
7809 static const struct itemplate instrux_VFNMADD213PS[] = {
7810 {I_VFNMADD213PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13364, IF_FMA|IF_FUTURE|IF_SO},
7811 {I_VFNMADD213PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13371, IF_FMA|IF_FUTURE|IF_SO},
7812 {I_VFNMADD213PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13378, IF_FMA|IF_FUTURE|IF_SY},
7813 {I_VFNMADD213PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13385, IF_FMA|IF_FUTURE|IF_SY},
7814 ITEMPLATE_END
7817 static const struct itemplate instrux_VFNMADD213SD[] = {
7818 {I_VFNMADD213SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13854, IF_FMA|IF_FUTURE|IF_SQ},
7819 {I_VFNMADD213SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13861, IF_FMA|IF_FUTURE|IF_SQ},
7820 ITEMPLATE_END
7823 static const struct itemplate instrux_VFNMADD213SS[] = {
7824 {I_VFNMADD213SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13840, IF_FMA|IF_FUTURE|IF_SD},
7825 {I_VFNMADD213SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13847, IF_FMA|IF_FUTURE|IF_SD},
7826 ITEMPLATE_END
7829 static const struct itemplate instrux_VFNMADD231PD[] = {
7830 {I_VFNMADD231PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13448, IF_FMA|IF_FUTURE|IF_SO},
7831 {I_VFNMADD231PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13455, IF_FMA|IF_FUTURE|IF_SO},
7832 {I_VFNMADD231PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13462, IF_FMA|IF_FUTURE|IF_SY},
7833 {I_VFNMADD231PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13469, IF_FMA|IF_FUTURE|IF_SY},
7834 ITEMPLATE_END
7837 static const struct itemplate instrux_VFNMADD231PS[] = {
7838 {I_VFNMADD231PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13420, IF_FMA|IF_FUTURE|IF_SO},
7839 {I_VFNMADD231PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13427, IF_FMA|IF_FUTURE|IF_SO},
7840 {I_VFNMADD231PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13434, IF_FMA|IF_FUTURE|IF_SY},
7841 {I_VFNMADD231PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13441, IF_FMA|IF_FUTURE|IF_SY},
7842 ITEMPLATE_END
7845 static const struct itemplate instrux_VFNMADD231SD[] = {
7846 {I_VFNMADD231SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13882, IF_FMA|IF_FUTURE|IF_SQ},
7847 {I_VFNMADD231SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13889, IF_FMA|IF_FUTURE|IF_SQ},
7848 ITEMPLATE_END
7851 static const struct itemplate instrux_VFNMADD231SS[] = {
7852 {I_VFNMADD231SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13868, IF_FMA|IF_FUTURE|IF_SD},
7853 {I_VFNMADD231SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13875, IF_FMA|IF_FUTURE|IF_SD},
7854 ITEMPLATE_END
7857 static const struct itemplate instrux_VFNMADD312PD[] = {
7858 {I_VFNMADD312PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13336, IF_FMA|IF_FUTURE|IF_SO},
7859 {I_VFNMADD312PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13343, IF_FMA|IF_FUTURE|IF_SO},
7860 {I_VFNMADD312PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13350, IF_FMA|IF_FUTURE|IF_SY},
7861 {I_VFNMADD312PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13357, IF_FMA|IF_FUTURE|IF_SY},
7862 ITEMPLATE_END
7865 static const struct itemplate instrux_VFNMADD312PS[] = {
7866 {I_VFNMADD312PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13308, IF_FMA|IF_FUTURE|IF_SO},
7867 {I_VFNMADD312PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13315, IF_FMA|IF_FUTURE|IF_SO},
7868 {I_VFNMADD312PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13322, IF_FMA|IF_FUTURE|IF_SY},
7869 {I_VFNMADD312PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13329, IF_FMA|IF_FUTURE|IF_SY},
7870 ITEMPLATE_END
7873 static const struct itemplate instrux_VFNMADD312SD[] = {
7874 {I_VFNMADD312SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13826, IF_FMA|IF_FUTURE|IF_SQ},
7875 {I_VFNMADD312SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13833, IF_FMA|IF_FUTURE|IF_SQ},
7876 ITEMPLATE_END
7879 static const struct itemplate instrux_VFNMADD312SS[] = {
7880 {I_VFNMADD312SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13812, IF_FMA|IF_FUTURE|IF_SD},
7881 {I_VFNMADD312SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13819, IF_FMA|IF_FUTURE|IF_SD},
7882 ITEMPLATE_END
7885 static const struct itemplate instrux_VFNMADD321PD[] = {
7886 {I_VFNMADD321PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13448, IF_FMA|IF_FUTURE|IF_SO},
7887 {I_VFNMADD321PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13455, IF_FMA|IF_FUTURE|IF_SO},
7888 {I_VFNMADD321PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13462, IF_FMA|IF_FUTURE|IF_SY},
7889 {I_VFNMADD321PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13469, IF_FMA|IF_FUTURE|IF_SY},
7890 ITEMPLATE_END
7893 static const struct itemplate instrux_VFNMADD321PS[] = {
7894 {I_VFNMADD321PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13420, IF_FMA|IF_FUTURE|IF_SO},
7895 {I_VFNMADD321PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13427, IF_FMA|IF_FUTURE|IF_SO},
7896 {I_VFNMADD321PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13434, IF_FMA|IF_FUTURE|IF_SY},
7897 {I_VFNMADD321PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13441, IF_FMA|IF_FUTURE|IF_SY},
7898 ITEMPLATE_END
7901 static const struct itemplate instrux_VFNMADD321SD[] = {
7902 {I_VFNMADD321SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13882, IF_FMA|IF_FUTURE|IF_SQ},
7903 {I_VFNMADD321SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13889, IF_FMA|IF_FUTURE|IF_SQ},
7904 ITEMPLATE_END
7907 static const struct itemplate instrux_VFNMADD321SS[] = {
7908 {I_VFNMADD321SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13868, IF_FMA|IF_FUTURE|IF_SD},
7909 {I_VFNMADD321SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13875, IF_FMA|IF_FUTURE|IF_SD},
7910 ITEMPLATE_END
7913 static const struct itemplate instrux_VFNMSUB123PD[] = {
7914 {I_VFNMSUB123PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13560, IF_FMA|IF_FUTURE|IF_SO},
7915 {I_VFNMSUB123PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13567, IF_FMA|IF_FUTURE|IF_SO},
7916 {I_VFNMSUB123PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13574, IF_FMA|IF_FUTURE|IF_SY},
7917 {I_VFNMSUB123PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13581, IF_FMA|IF_FUTURE|IF_SY},
7918 ITEMPLATE_END
7921 static const struct itemplate instrux_VFNMSUB123PS[] = {
7922 {I_VFNMSUB123PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13532, IF_FMA|IF_FUTURE|IF_SO},
7923 {I_VFNMSUB123PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13539, IF_FMA|IF_FUTURE|IF_SO},
7924 {I_VFNMSUB123PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13546, IF_FMA|IF_FUTURE|IF_SY},
7925 {I_VFNMSUB123PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13553, IF_FMA|IF_FUTURE|IF_SY},
7926 ITEMPLATE_END
7929 static const struct itemplate instrux_VFNMSUB123SD[] = {
7930 {I_VFNMSUB123SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13938, IF_FMA|IF_FUTURE|IF_SQ},
7931 {I_VFNMSUB123SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13945, IF_FMA|IF_FUTURE|IF_SQ},
7932 ITEMPLATE_END
7935 static const struct itemplate instrux_VFNMSUB123SS[] = {
7936 {I_VFNMSUB123SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13924, IF_FMA|IF_FUTURE|IF_SD},
7937 {I_VFNMSUB123SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13931, IF_FMA|IF_FUTURE|IF_SD},
7938 ITEMPLATE_END
7941 static const struct itemplate instrux_VFNMSUB132PD[] = {
7942 {I_VFNMSUB132PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13504, IF_FMA|IF_FUTURE|IF_SO},
7943 {I_VFNMSUB132PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13511, IF_FMA|IF_FUTURE|IF_SO},
7944 {I_VFNMSUB132PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13518, IF_FMA|IF_FUTURE|IF_SY},
7945 {I_VFNMSUB132PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13525, IF_FMA|IF_FUTURE|IF_SY},
7946 ITEMPLATE_END
7949 static const struct itemplate instrux_VFNMSUB132PS[] = {
7950 {I_VFNMSUB132PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13476, IF_FMA|IF_FUTURE|IF_SO},
7951 {I_VFNMSUB132PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13483, IF_FMA|IF_FUTURE|IF_SO},
7952 {I_VFNMSUB132PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13490, IF_FMA|IF_FUTURE|IF_SY},
7953 {I_VFNMSUB132PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13497, IF_FMA|IF_FUTURE|IF_SY},
7954 ITEMPLATE_END
7957 static const struct itemplate instrux_VFNMSUB132SD[] = {
7958 {I_VFNMSUB132SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13910, IF_FMA|IF_FUTURE|IF_SQ},
7959 {I_VFNMSUB132SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13917, IF_FMA|IF_FUTURE|IF_SQ},
7960 ITEMPLATE_END
7963 static const struct itemplate instrux_VFNMSUB132SS[] = {
7964 {I_VFNMSUB132SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13896, IF_FMA|IF_FUTURE|IF_SD},
7965 {I_VFNMSUB132SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13903, IF_FMA|IF_FUTURE|IF_SD},
7966 ITEMPLATE_END
7969 static const struct itemplate instrux_VFNMSUB213PD[] = {
7970 {I_VFNMSUB213PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13560, IF_FMA|IF_FUTURE|IF_SO},
7971 {I_VFNMSUB213PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13567, IF_FMA|IF_FUTURE|IF_SO},
7972 {I_VFNMSUB213PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13574, IF_FMA|IF_FUTURE|IF_SY},
7973 {I_VFNMSUB213PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13581, IF_FMA|IF_FUTURE|IF_SY},
7974 ITEMPLATE_END
7977 static const struct itemplate instrux_VFNMSUB213PS[] = {
7978 {I_VFNMSUB213PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13532, IF_FMA|IF_FUTURE|IF_SO},
7979 {I_VFNMSUB213PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13539, IF_FMA|IF_FUTURE|IF_SO},
7980 {I_VFNMSUB213PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13546, IF_FMA|IF_FUTURE|IF_SY},
7981 {I_VFNMSUB213PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13553, IF_FMA|IF_FUTURE|IF_SY},
7982 ITEMPLATE_END
7985 static const struct itemplate instrux_VFNMSUB213SD[] = {
7986 {I_VFNMSUB213SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13938, IF_FMA|IF_FUTURE|IF_SQ},
7987 {I_VFNMSUB213SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13945, IF_FMA|IF_FUTURE|IF_SQ},
7988 ITEMPLATE_END
7991 static const struct itemplate instrux_VFNMSUB213SS[] = {
7992 {I_VFNMSUB213SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13924, IF_FMA|IF_FUTURE|IF_SD},
7993 {I_VFNMSUB213SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13931, IF_FMA|IF_FUTURE|IF_SD},
7994 ITEMPLATE_END
7997 static const struct itemplate instrux_VFNMSUB231PD[] = {
7998 {I_VFNMSUB231PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13616, IF_FMA|IF_FUTURE|IF_SO},
7999 {I_VFNMSUB231PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13623, IF_FMA|IF_FUTURE|IF_SO},
8000 {I_VFNMSUB231PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13630, IF_FMA|IF_FUTURE|IF_SY},
8001 {I_VFNMSUB231PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13637, IF_FMA|IF_FUTURE|IF_SY},
8002 ITEMPLATE_END
8005 static const struct itemplate instrux_VFNMSUB231PS[] = {
8006 {I_VFNMSUB231PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13588, IF_FMA|IF_FUTURE|IF_SO},
8007 {I_VFNMSUB231PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13595, IF_FMA|IF_FUTURE|IF_SO},
8008 {I_VFNMSUB231PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13602, IF_FMA|IF_FUTURE|IF_SY},
8009 {I_VFNMSUB231PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13609, IF_FMA|IF_FUTURE|IF_SY},
8010 ITEMPLATE_END
8013 static const struct itemplate instrux_VFNMSUB231SD[] = {
8014 {I_VFNMSUB231SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13966, IF_FMA|IF_FUTURE|IF_SQ},
8015 {I_VFNMSUB231SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13973, IF_FMA|IF_FUTURE|IF_SQ},
8016 ITEMPLATE_END
8019 static const struct itemplate instrux_VFNMSUB231SS[] = {
8020 {I_VFNMSUB231SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13952, IF_FMA|IF_FUTURE|IF_SD},
8021 {I_VFNMSUB231SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13959, IF_FMA|IF_FUTURE|IF_SD},
8022 ITEMPLATE_END
8025 static const struct itemplate instrux_VFNMSUB312PD[] = {
8026 {I_VFNMSUB312PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13504, IF_FMA|IF_FUTURE|IF_SO},
8027 {I_VFNMSUB312PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13511, IF_FMA|IF_FUTURE|IF_SO},
8028 {I_VFNMSUB312PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13518, IF_FMA|IF_FUTURE|IF_SY},
8029 {I_VFNMSUB312PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13525, IF_FMA|IF_FUTURE|IF_SY},
8030 ITEMPLATE_END
8033 static const struct itemplate instrux_VFNMSUB312PS[] = {
8034 {I_VFNMSUB312PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13476, IF_FMA|IF_FUTURE|IF_SO},
8035 {I_VFNMSUB312PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13483, IF_FMA|IF_FUTURE|IF_SO},
8036 {I_VFNMSUB312PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13490, IF_FMA|IF_FUTURE|IF_SY},
8037 {I_VFNMSUB312PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13497, IF_FMA|IF_FUTURE|IF_SY},
8038 ITEMPLATE_END
8041 static const struct itemplate instrux_VFNMSUB312SD[] = {
8042 {I_VFNMSUB312SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13910, IF_FMA|IF_FUTURE|IF_SQ},
8043 {I_VFNMSUB312SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13917, IF_FMA|IF_FUTURE|IF_SQ},
8044 ITEMPLATE_END
8047 static const struct itemplate instrux_VFNMSUB312SS[] = {
8048 {I_VFNMSUB312SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13896, IF_FMA|IF_FUTURE|IF_SD},
8049 {I_VFNMSUB312SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13903, IF_FMA|IF_FUTURE|IF_SD},
8050 ITEMPLATE_END
8053 static const struct itemplate instrux_VFNMSUB321PD[] = {
8054 {I_VFNMSUB321PD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13616, IF_FMA|IF_FUTURE|IF_SO},
8055 {I_VFNMSUB321PD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13623, IF_FMA|IF_FUTURE|IF_SO},
8056 {I_VFNMSUB321PD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13630, IF_FMA|IF_FUTURE|IF_SY},
8057 {I_VFNMSUB321PD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13637, IF_FMA|IF_FUTURE|IF_SY},
8058 ITEMPLATE_END
8061 static const struct itemplate instrux_VFNMSUB321PS[] = {
8062 {I_VFNMSUB321PS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13588, IF_FMA|IF_FUTURE|IF_SO},
8063 {I_VFNMSUB321PS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13595, IF_FMA|IF_FUTURE|IF_SO},
8064 {I_VFNMSUB321PS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+13602, IF_FMA|IF_FUTURE|IF_SY},
8065 {I_VFNMSUB321PS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+13609, IF_FMA|IF_FUTURE|IF_SY},
8066 ITEMPLATE_END
8069 static const struct itemplate instrux_VFNMSUB321SD[] = {
8070 {I_VFNMSUB321SD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13966, IF_FMA|IF_FUTURE|IF_SQ},
8071 {I_VFNMSUB321SD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13973, IF_FMA|IF_FUTURE|IF_SQ},
8072 ITEMPLATE_END
8075 static const struct itemplate instrux_VFNMSUB321SS[] = {
8076 {I_VFNMSUB321SS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+13952, IF_FMA|IF_FUTURE|IF_SD},
8077 {I_VFNMSUB321SS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+13959, IF_FMA|IF_FUTURE|IF_SD},
8078 ITEMPLATE_END
8081 static const struct itemplate instrux_VHADDPD[] = {
8082 {I_VHADDPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9913, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8083 {I_VHADDPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9920, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8084 {I_VHADDPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+9927, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8085 {I_VHADDPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+9934, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8086 ITEMPLATE_END
8089 static const struct itemplate instrux_VHADDPS[] = {
8090 {I_VHADDPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9941, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8091 {I_VHADDPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9948, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8092 {I_VHADDPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+9955, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8093 {I_VHADDPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+9962, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8094 ITEMPLATE_END
8097 static const struct itemplate instrux_VHSUBPD[] = {
8098 {I_VHSUBPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9969, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8099 {I_VHSUBPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+9976, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8100 {I_VHSUBPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+9983, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8101 {I_VHSUBPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+9990, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8102 ITEMPLATE_END
8105 static const struct itemplate instrux_VHSUBPS[] = {
8106 {I_VHSUBPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+9997, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8107 {I_VHSUBPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10004, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8108 {I_VHSUBPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+10011, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8109 {I_VHSUBPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+10018, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8110 ITEMPLATE_END
8113 static const struct itemplate instrux_VINSERTF128[] = {
8114 {I_VINSERTF128, 4, {YMMREG,YMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+6151, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8115 ITEMPLATE_END
8118 static const struct itemplate instrux_VINSERTPS[] = {
8119 {I_VINSERTPS, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+6159, IF_AVX|IF_SANDYBRIDGE|IF_SD},
8120 {I_VINSERTPS, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6167, IF_AVX|IF_SANDYBRIDGE|IF_SD},
8121 ITEMPLATE_END
8124 static const struct itemplate instrux_VLDDQU[] = {
8125 {I_VLDDQU, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+10025, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8126 {I_VLDDQU, 2, {YMMREG,MEMORY,0,0,0}, nasm_bytecodes+10032, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8127 ITEMPLATE_END
8130 static const struct itemplate instrux_VLDMXCSR[] = {
8131 {I_VLDMXCSR, 1, {MEMORY|BITS32,0,0,0,0}, nasm_bytecodes+10039, IF_AVX|IF_SANDYBRIDGE|IF_SD},
8132 ITEMPLATE_END
8135 static const struct itemplate instrux_VLDQQU[] = {
8136 {I_VLDQQU, 2, {YMMREG,MEMORY,0,0,0}, nasm_bytecodes+10032, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8137 ITEMPLATE_END
8140 static const struct itemplate instrux_VMASKMOVDQU[] = {
8141 {I_VMASKMOVDQU, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+10046, IF_AVX|IF_SANDYBRIDGE},
8142 ITEMPLATE_END
8145 static const struct itemplate instrux_VMASKMOVPD[] = {
8146 {I_VMASKMOVPD, 3, {XMMREG,XMMREG,MEMORY,0,0}, nasm_bytecodes+10081, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8147 {I_VMASKMOVPD, 3, {YMMREG,YMMREG,MEMORY,0,0}, nasm_bytecodes+10088, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8148 {I_VMASKMOVPD, 3, {MEMORY,XMMREG,XMMREG,0,0}, nasm_bytecodes+10095, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8149 {I_VMASKMOVPD, 3, {MEMORY,YMMREG,YMMREG,0,0}, nasm_bytecodes+10102, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8150 ITEMPLATE_END
8153 static const struct itemplate instrux_VMASKMOVPS[] = {
8154 {I_VMASKMOVPS, 3, {XMMREG,XMMREG,MEMORY,0,0}, nasm_bytecodes+10053, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8155 {I_VMASKMOVPS, 3, {YMMREG,YMMREG,MEMORY,0,0}, nasm_bytecodes+10060, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8156 {I_VMASKMOVPS, 3, {MEMORY,XMMREG,XMMREG,0,0}, nasm_bytecodes+10067, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8157 {I_VMASKMOVPS, 3, {MEMORY,XMMREG,XMMREG,0,0}, nasm_bytecodes+10074, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8158 ITEMPLATE_END
8161 static const struct itemplate instrux_VMAXPD[] = {
8162 {I_VMAXPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+10109, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8163 {I_VMAXPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10116, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8164 {I_VMAXPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+10123, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8165 {I_VMAXPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+10130, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8166 ITEMPLATE_END
8169 static const struct itemplate instrux_VMAXPS[] = {
8170 {I_VMAXPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+10137, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8171 {I_VMAXPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10144, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8172 {I_VMAXPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+10151, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8173 {I_VMAXPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+10158, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8174 ITEMPLATE_END
8177 static const struct itemplate instrux_VMAXSD[] = {
8178 {I_VMAXSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+10165, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8179 {I_VMAXSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10172, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8180 ITEMPLATE_END
8183 static const struct itemplate instrux_VMAXSS[] = {
8184 {I_VMAXSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+10179, IF_AVX|IF_SANDYBRIDGE|IF_SD},
8185 {I_VMAXSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10186, IF_AVX|IF_SANDYBRIDGE|IF_SD},
8186 ITEMPLATE_END
8189 static const struct itemplate instrux_VMCALL[] = {
8190 {I_VMCALL, 0, {0,0,0,0,0}, nasm_bytecodes+19315, IF_VMX},
8191 ITEMPLATE_END
8194 static const struct itemplate instrux_VMCLEAR[] = {
8195 {I_VMCLEAR, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+16260, IF_VMX},
8196 ITEMPLATE_END
8199 static const struct itemplate instrux_VMINPD[] = {
8200 {I_VMINPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+10193, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8201 {I_VMINPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10200, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8202 {I_VMINPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+10207, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8203 {I_VMINPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+10214, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8204 ITEMPLATE_END
8207 static const struct itemplate instrux_VMINPS[] = {
8208 {I_VMINPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+10221, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8209 {I_VMINPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10228, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8210 {I_VMINPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+10235, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8211 {I_VMINPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+10242, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8212 ITEMPLATE_END
8215 static const struct itemplate instrux_VMINSD[] = {
8216 {I_VMINSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+10249, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8217 {I_VMINSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10256, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8218 ITEMPLATE_END
8221 static const struct itemplate instrux_VMINSS[] = {
8222 {I_VMINSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+10263, IF_AVX|IF_SANDYBRIDGE|IF_SD},
8223 {I_VMINSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10270, IF_AVX|IF_SANDYBRIDGE|IF_SD},
8224 ITEMPLATE_END
8227 static const struct itemplate instrux_VMLAUNCH[] = {
8228 {I_VMLAUNCH, 0, {0,0,0,0,0}, nasm_bytecodes+19320, IF_VMX},
8229 ITEMPLATE_END
8232 static const struct itemplate instrux_VMLOAD[] = {
8233 {I_VMLOAD, 0, {0,0,0,0,0}, nasm_bytecodes+19325, IF_X64|IF_VMX},
8234 ITEMPLATE_END
8237 static const struct itemplate instrux_VMMCALL[] = {
8238 {I_VMMCALL, 0, {0,0,0,0,0}, nasm_bytecodes+19330, IF_X64|IF_VMX},
8239 ITEMPLATE_END
8242 static const struct itemplate instrux_VMOVAPD[] = {
8243 {I_VMOVAPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10277, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8244 {I_VMOVAPD, 2, {RM_XMM,XMMREG,0,0,0}, nasm_bytecodes+10284, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8245 {I_VMOVAPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+10291, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8246 {I_VMOVAPD, 2, {RM_YMM,YMMREG,0,0,0}, nasm_bytecodes+10298, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8247 ITEMPLATE_END
8250 static const struct itemplate instrux_VMOVAPS[] = {
8251 {I_VMOVAPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10305, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8252 {I_VMOVAPS, 2, {RM_XMM,XMMREG,0,0,0}, nasm_bytecodes+10312, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8253 {I_VMOVAPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+10319, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8254 {I_VMOVAPS, 2, {RM_YMM,YMMREG,0,0,0}, nasm_bytecodes+10326, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8255 ITEMPLATE_END
8258 static const struct itemplate instrux_VMOVD[] = {
8259 {I_VMOVD, 2, {XMMREG,RM_GPR|BITS32,0,0,0}, nasm_bytecodes+10347, IF_AVX|IF_SANDYBRIDGE|IF_SD},
8260 {I_VMOVD, 2, {RM_GPR|BITS32,XMMREG,0,0,0}, nasm_bytecodes+10361, IF_AVX|IF_SANDYBRIDGE|IF_SD},
8261 ITEMPLATE_END
8264 static const struct itemplate instrux_VMOVDDUP[] = {
8265 {I_VMOVDDUP, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10375, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8266 {I_VMOVDDUP, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+10382, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8267 ITEMPLATE_END
8270 static const struct itemplate instrux_VMOVDQA[] = {
8271 {I_VMOVDQA, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10389, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8272 {I_VMOVDQA, 2, {RM_XMM,XMMREG,0,0,0}, nasm_bytecodes+10396, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8273 {I_VMOVDQA, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+10403, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8274 {I_VMOVDQA, 2, {RM_YMM,YMMREG,0,0,0}, nasm_bytecodes+10410, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8275 ITEMPLATE_END
8278 static const struct itemplate instrux_VMOVDQU[] = {
8279 {I_VMOVDQU, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10417, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8280 {I_VMOVDQU, 2, {RM_XMM,XMMREG,0,0,0}, nasm_bytecodes+10424, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8281 {I_VMOVDQU, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+10431, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8282 {I_VMOVDQU, 2, {RM_YMM,YMMREG,0,0,0}, nasm_bytecodes+10438, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8283 ITEMPLATE_END
8286 static const struct itemplate instrux_VMOVHLPS[] = {
8287 {I_VMOVHLPS, 3, {XMMREG,XMMREG,XMMREG,0,0}, nasm_bytecodes+10445, IF_AVX|IF_SANDYBRIDGE},
8288 {I_VMOVHLPS, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+10452, IF_AVX|IF_SANDYBRIDGE},
8289 ITEMPLATE_END
8292 static const struct itemplate instrux_VMOVHPD[] = {
8293 {I_VMOVHPD, 3, {XMMREG,XMMREG,MEMORY,0,0}, nasm_bytecodes+10459, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8294 {I_VMOVHPD, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+10466, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8295 {I_VMOVHPD, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+10473, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8296 ITEMPLATE_END
8299 static const struct itemplate instrux_VMOVHPS[] = {
8300 {I_VMOVHPS, 3, {XMMREG,XMMREG,MEMORY,0,0}, nasm_bytecodes+10480, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8301 {I_VMOVHPS, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+10487, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8302 {I_VMOVHPS, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+10494, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8303 ITEMPLATE_END
8306 static const struct itemplate instrux_VMOVLHPS[] = {
8307 {I_VMOVLHPS, 3, {XMMREG,XMMREG,XMMREG,0,0}, nasm_bytecodes+10480, IF_AVX|IF_SANDYBRIDGE},
8308 {I_VMOVLHPS, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+10487, IF_AVX|IF_SANDYBRIDGE},
8309 ITEMPLATE_END
8312 static const struct itemplate instrux_VMOVLPD[] = {
8313 {I_VMOVLPD, 3, {XMMREG,XMMREG,MEMORY,0,0}, nasm_bytecodes+10501, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8314 {I_VMOVLPD, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+10508, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8315 {I_VMOVLPD, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+10515, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8316 ITEMPLATE_END
8319 static const struct itemplate instrux_VMOVLPS[] = {
8320 {I_VMOVLPS, 3, {XMMREG,XMMREG,MEMORY,0,0}, nasm_bytecodes+10445, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8321 {I_VMOVLPS, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+10452, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8322 {I_VMOVLPS, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+10522, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8323 ITEMPLATE_END
8326 static const struct itemplate instrux_VMOVMSKPD[] = {
8327 {I_VMOVMSKPD, 2, {REG64,XMMREG,0,0,0}, nasm_bytecodes+10529, IF_AVX|IF_SANDYBRIDGE|IF_LONG},
8328 {I_VMOVMSKPD, 2, {REG32,XMMREG,0,0,0}, nasm_bytecodes+10529, IF_AVX|IF_SANDYBRIDGE},
8329 {I_VMOVMSKPD, 2, {REG64,YMMREG,0,0,0}, nasm_bytecodes+10536, IF_AVX|IF_SANDYBRIDGE|IF_LONG},
8330 {I_VMOVMSKPD, 2, {REG32,YMMREG,0,0,0}, nasm_bytecodes+10536, IF_AVX|IF_SANDYBRIDGE},
8331 ITEMPLATE_END
8334 static const struct itemplate instrux_VMOVMSKPS[] = {
8335 {I_VMOVMSKPS, 2, {REG64,XMMREG,0,0,0}, nasm_bytecodes+10543, IF_AVX|IF_SANDYBRIDGE|IF_LONG},
8336 {I_VMOVMSKPS, 2, {REG32,XMMREG,0,0,0}, nasm_bytecodes+10543, IF_AVX|IF_SANDYBRIDGE},
8337 {I_VMOVMSKPS, 2, {REG64,YMMREG,0,0,0}, nasm_bytecodes+10550, IF_AVX|IF_SANDYBRIDGE|IF_LONG},
8338 {I_VMOVMSKPS, 2, {REG32,YMMREG,0,0,0}, nasm_bytecodes+10550, IF_AVX|IF_SANDYBRIDGE},
8339 ITEMPLATE_END
8342 static const struct itemplate instrux_VMOVNTDQ[] = {
8343 {I_VMOVNTDQ, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+10557, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8344 {I_VMOVNTDQ, 2, {MEMORY,YMMREG,0,0,0}, nasm_bytecodes+10564, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8345 ITEMPLATE_END
8348 static const struct itemplate instrux_VMOVNTDQA[] = {
8349 {I_VMOVNTDQA, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+10571, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8350 ITEMPLATE_END
8353 static const struct itemplate instrux_VMOVNTPD[] = {
8354 {I_VMOVNTPD, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+10578, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8355 {I_VMOVNTPD, 2, {MEMORY,YMMREG,0,0,0}, nasm_bytecodes+10585, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8356 ITEMPLATE_END
8359 static const struct itemplate instrux_VMOVNTPS[] = {
8360 {I_VMOVNTPS, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+10592, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8361 {I_VMOVNTPS, 2, {MEMORY,YMMREG,0,0,0}, nasm_bytecodes+10599, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8362 ITEMPLATE_END
8365 static const struct itemplate instrux_VMOVNTQQ[] = {
8366 {I_VMOVNTQQ, 2, {MEMORY,YMMREG,0,0,0}, nasm_bytecodes+10564, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8367 ITEMPLATE_END
8370 static const struct itemplate instrux_VMOVQ[] = {
8371 {I_VMOVQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10333, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8372 {I_VMOVQ, 2, {RM_XMM,XMMREG,0,0,0}, nasm_bytecodes+10340, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8373 {I_VMOVQ, 2, {XMMREG,RM_GPR|BITS64,0,0,0}, nasm_bytecodes+10354, IF_AVX|IF_SANDYBRIDGE|IF_SQ|IF_LONG},
8374 {I_VMOVQ, 2, {RM_GPR|BITS64,XMMREG,0,0,0}, nasm_bytecodes+10368, IF_AVX|IF_SANDYBRIDGE|IF_SQ|IF_LONG},
8375 ITEMPLATE_END
8378 static const struct itemplate instrux_VMOVQQA[] = {
8379 {I_VMOVQQA, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+10403, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8380 {I_VMOVQQA, 2, {RM_YMM,YMMREG,0,0,0}, nasm_bytecodes+10410, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8381 ITEMPLATE_END
8384 static const struct itemplate instrux_VMOVQQU[] = {
8385 {I_VMOVQQU, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+10431, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8386 {I_VMOVQQU, 2, {RM_YMM,YMMREG,0,0,0}, nasm_bytecodes+10438, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8387 ITEMPLATE_END
8390 static const struct itemplate instrux_VMOVSD[] = {
8391 {I_VMOVSD, 3, {XMMREG,XMMREG,XMMREG,0,0}, nasm_bytecodes+10606, IF_AVX|IF_SANDYBRIDGE},
8392 {I_VMOVSD, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+10613, IF_AVX|IF_SANDYBRIDGE},
8393 {I_VMOVSD, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+10620, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8394 {I_VMOVSD, 3, {XMMREG,XMMREG,XMMREG,0,0}, nasm_bytecodes+10627, IF_AVX|IF_SANDYBRIDGE},
8395 {I_VMOVSD, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+10634, IF_AVX|IF_SANDYBRIDGE},
8396 {I_VMOVSD, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+10641, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8397 ITEMPLATE_END
8400 static const struct itemplate instrux_VMOVSHDUP[] = {
8401 {I_VMOVSHDUP, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10648, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8402 {I_VMOVSHDUP, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+10655, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8403 ITEMPLATE_END
8406 static const struct itemplate instrux_VMOVSLDUP[] = {
8407 {I_VMOVSLDUP, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10662, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8408 {I_VMOVSLDUP, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+10669, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8409 ITEMPLATE_END
8412 static const struct itemplate instrux_VMOVSS[] = {
8413 {I_VMOVSS, 3, {XMMREG,XMMREG,XMMREG,0,0}, nasm_bytecodes+10676, IF_AVX|IF_SANDYBRIDGE},
8414 {I_VMOVSS, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+10683, IF_AVX|IF_SANDYBRIDGE},
8415 {I_VMOVSS, 2, {XMMREG,MEMORY,0,0,0}, nasm_bytecodes+10690, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8416 {I_VMOVSS, 3, {XMMREG,XMMREG,XMMREG,0,0}, nasm_bytecodes+10697, IF_AVX|IF_SANDYBRIDGE},
8417 {I_VMOVSS, 2, {XMMREG,XMMREG,0,0,0}, nasm_bytecodes+10704, IF_AVX|IF_SANDYBRIDGE},
8418 {I_VMOVSS, 2, {MEMORY,XMMREG,0,0,0}, nasm_bytecodes+10711, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8419 ITEMPLATE_END
8422 static const struct itemplate instrux_VMOVUPD[] = {
8423 {I_VMOVUPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10718, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8424 {I_VMOVUPD, 2, {RM_XMM,XMMREG,0,0,0}, nasm_bytecodes+10725, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8425 {I_VMOVUPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+10732, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8426 {I_VMOVUPD, 2, {RM_YMM,YMMREG,0,0,0}, nasm_bytecodes+10739, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8427 ITEMPLATE_END
8430 static const struct itemplate instrux_VMOVUPS[] = {
8431 {I_VMOVUPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10746, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8432 {I_VMOVUPS, 2, {RM_XMM,XMMREG,0,0,0}, nasm_bytecodes+10753, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8433 {I_VMOVUPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+10760, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8434 {I_VMOVUPS, 2, {RM_YMM,YMMREG,0,0,0}, nasm_bytecodes+10767, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8435 ITEMPLATE_END
8438 static const struct itemplate instrux_VMPSADBW[] = {
8439 {I_VMPSADBW, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+6175, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8440 {I_VMPSADBW, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6183, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8441 ITEMPLATE_END
8444 static const struct itemplate instrux_VMPTRLD[] = {
8445 {I_VMPTRLD, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+16267, IF_VMX},
8446 ITEMPLATE_END
8449 static const struct itemplate instrux_VMPTRST[] = {
8450 {I_VMPTRST, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+19335, IF_VMX},
8451 ITEMPLATE_END
8454 static const struct itemplate instrux_VMREAD[] = {
8455 {I_VMREAD, 2, {RM_GPR|BITS32,REG32,0,0,0}, nasm_bytecodes+7674, IF_VMX|IF_NOLONG|IF_SD},
8456 {I_VMREAD, 2, {RM_GPR|BITS64,REG64,0,0,0}, nasm_bytecodes+7673, IF_X64|IF_VMX|IF_SQ},
8457 ITEMPLATE_END
8460 static const struct itemplate instrux_VMRESUME[] = {
8461 {I_VMRESUME, 0, {0,0,0,0,0}, nasm_bytecodes+19340, IF_VMX},
8462 ITEMPLATE_END
8465 static const struct itemplate instrux_VMRUN[] = {
8466 {I_VMRUN, 0, {0,0,0,0,0}, nasm_bytecodes+19345, IF_X64|IF_VMX},
8467 ITEMPLATE_END
8470 static const struct itemplate instrux_VMSAVE[] = {
8471 {I_VMSAVE, 0, {0,0,0,0,0}, nasm_bytecodes+19350, IF_X64|IF_VMX},
8472 ITEMPLATE_END
8475 static const struct itemplate instrux_VMULPD[] = {
8476 {I_VMULPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+10774, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8477 {I_VMULPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10781, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8478 {I_VMULPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+10788, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8479 {I_VMULPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+10795, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8480 ITEMPLATE_END
8483 static const struct itemplate instrux_VMULPS[] = {
8484 {I_VMULPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+10802, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8485 {I_VMULPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10809, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8486 {I_VMULPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+10816, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8487 {I_VMULPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+10823, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8488 ITEMPLATE_END
8491 static const struct itemplate instrux_VMULSD[] = {
8492 {I_VMULSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+10830, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8493 {I_VMULSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10837, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
8494 ITEMPLATE_END
8497 static const struct itemplate instrux_VMULSS[] = {
8498 {I_VMULSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+10844, IF_AVX|IF_SANDYBRIDGE|IF_SD},
8499 {I_VMULSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10851, IF_AVX|IF_SANDYBRIDGE|IF_SD},
8500 ITEMPLATE_END
8503 static const struct itemplate instrux_VMWRITE[] = {
8504 {I_VMWRITE, 2, {REG32,RM_GPR|BITS32,0,0,0}, nasm_bytecodes+7681, IF_VMX|IF_NOLONG|IF_SD},
8505 {I_VMWRITE, 2, {REG64,RM_GPR|BITS64,0,0,0}, nasm_bytecodes+7680, IF_X64|IF_VMX|IF_SQ},
8506 ITEMPLATE_END
8509 static const struct itemplate instrux_VMXOFF[] = {
8510 {I_VMXOFF, 0, {0,0,0,0,0}, nasm_bytecodes+19355, IF_VMX},
8511 ITEMPLATE_END
8514 static const struct itemplate instrux_VMXON[] = {
8515 {I_VMXON, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+16266, IF_VMX},
8516 ITEMPLATE_END
8519 static const struct itemplate instrux_VORPD[] = {
8520 {I_VORPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+10858, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8521 {I_VORPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10865, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8522 {I_VORPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+10872, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8523 {I_VORPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+10879, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8524 ITEMPLATE_END
8527 static const struct itemplate instrux_VORPS[] = {
8528 {I_VORPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+10886, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8529 {I_VORPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10893, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8530 {I_VORPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+10900, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8531 {I_VORPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+10907, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8532 ITEMPLATE_END
8535 static const struct itemplate instrux_VPABSB[] = {
8536 {I_VPABSB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10914, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8537 ITEMPLATE_END
8540 static const struct itemplate instrux_VPABSD[] = {
8541 {I_VPABSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10928, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8542 ITEMPLATE_END
8545 static const struct itemplate instrux_VPABSW[] = {
8546 {I_VPABSW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10921, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8547 ITEMPLATE_END
8550 static const struct itemplate instrux_VPACKSSDW[] = {
8551 {I_VPACKSSDW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+10949, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8552 {I_VPACKSSDW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10956, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8553 ITEMPLATE_END
8556 static const struct itemplate instrux_VPACKSSWB[] = {
8557 {I_VPACKSSWB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+10935, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8558 {I_VPACKSSWB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10942, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8559 ITEMPLATE_END
8562 static const struct itemplate instrux_VPACKUSDW[] = {
8563 {I_VPACKUSDW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+10977, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8564 {I_VPACKUSDW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10984, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8565 ITEMPLATE_END
8568 static const struct itemplate instrux_VPACKUSWB[] = {
8569 {I_VPACKUSWB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+10963, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8570 {I_VPACKUSWB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10970, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8571 ITEMPLATE_END
8574 static const struct itemplate instrux_VPADDB[] = {
8575 {I_VPADDB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+10991, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8576 {I_VPADDB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+10998, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8577 ITEMPLATE_END
8580 static const struct itemplate instrux_VPADDD[] = {
8581 {I_VPADDD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11019, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8582 {I_VPADDD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11026, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8583 ITEMPLATE_END
8586 static const struct itemplate instrux_VPADDQ[] = {
8587 {I_VPADDQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11033, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8588 {I_VPADDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11040, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8589 ITEMPLATE_END
8592 static const struct itemplate instrux_VPADDSB[] = {
8593 {I_VPADDSB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11047, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8594 {I_VPADDSB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11054, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8595 ITEMPLATE_END
8598 static const struct itemplate instrux_VPADDSW[] = {
8599 {I_VPADDSW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11061, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8600 {I_VPADDSW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11068, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8601 ITEMPLATE_END
8604 static const struct itemplate instrux_VPADDUSB[] = {
8605 {I_VPADDUSB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11075, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8606 {I_VPADDUSB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11082, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8607 ITEMPLATE_END
8610 static const struct itemplate instrux_VPADDUSW[] = {
8611 {I_VPADDUSW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11089, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8612 {I_VPADDUSW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11096, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8613 ITEMPLATE_END
8616 static const struct itemplate instrux_VPADDW[] = {
8617 {I_VPADDW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11005, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8618 {I_VPADDW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11012, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8619 ITEMPLATE_END
8622 static const struct itemplate instrux_VPALIGNR[] = {
8623 {I_VPALIGNR, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+6191, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8624 {I_VPALIGNR, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6199, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8625 ITEMPLATE_END
8628 static const struct itemplate instrux_VPAND[] = {
8629 {I_VPAND, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11103, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8630 {I_VPAND, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11110, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8631 ITEMPLATE_END
8634 static const struct itemplate instrux_VPANDN[] = {
8635 {I_VPANDN, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11117, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8636 {I_VPANDN, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11124, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8637 ITEMPLATE_END
8640 static const struct itemplate instrux_VPAVGB[] = {
8641 {I_VPAVGB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11131, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8642 {I_VPAVGB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11138, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8643 ITEMPLATE_END
8646 static const struct itemplate instrux_VPAVGW[] = {
8647 {I_VPAVGW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11145, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8648 {I_VPAVGW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11152, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8649 ITEMPLATE_END
8652 static const struct itemplate instrux_VPBLENDVB[] = {
8653 {I_VPBLENDVB, 4, {XMMREG,XMMREG,RM_XMM,XMMREG,0}, nasm_bytecodes+4689, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8654 {I_VPBLENDVB, 3, {XMMREG,RM_XMM,XMMREG,0,0}, nasm_bytecodes+4698, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8655 ITEMPLATE_END
8658 static const struct itemplate instrux_VPBLENDW[] = {
8659 {I_VPBLENDW, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+6207, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8660 {I_VPBLENDW, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6215, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8661 ITEMPLATE_END
8664 static const struct itemplate instrux_VPCLMULHQHQDQ[] = {
8665 {I_VPCLMULHQHQDQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+5085, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8666 {I_VPCLMULHQHQDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5094, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8667 ITEMPLATE_END
8670 static const struct itemplate instrux_VPCLMULHQLQDQ[] = {
8671 {I_VPCLMULHQLQDQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+5049, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8672 {I_VPCLMULHQLQDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5058, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8673 ITEMPLATE_END
8676 static const struct itemplate instrux_VPCLMULLQHQDQ[] = {
8677 {I_VPCLMULLQHQDQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+5067, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8678 {I_VPCLMULLQHQDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5076, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8679 ITEMPLATE_END
8682 static const struct itemplate instrux_VPCLMULLQLQDQ[] = {
8683 {I_VPCLMULLQLQDQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+5031, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8684 {I_VPCLMULLQLQDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+5040, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8685 ITEMPLATE_END
8688 static const struct itemplate instrux_VPCLMULQDQ[] = {
8689 {I_VPCLMULQDQ, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+6719, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8690 {I_VPCLMULQDQ, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6727, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8691 ITEMPLATE_END
8694 static const struct itemplate instrux_VPCMPEQB[] = {
8695 {I_VPCMPEQB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11159, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8696 {I_VPCMPEQB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11166, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8697 ITEMPLATE_END
8700 static const struct itemplate instrux_VPCMPEQD[] = {
8701 {I_VPCMPEQD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11187, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8702 {I_VPCMPEQD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11194, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8703 ITEMPLATE_END
8706 static const struct itemplate instrux_VPCMPEQQ[] = {
8707 {I_VPCMPEQQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11201, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8708 {I_VPCMPEQQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11208, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8709 ITEMPLATE_END
8712 static const struct itemplate instrux_VPCMPEQW[] = {
8713 {I_VPCMPEQW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11173, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8714 {I_VPCMPEQW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11180, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8715 ITEMPLATE_END
8718 static const struct itemplate instrux_VPCMPESTRI[] = {
8719 {I_VPCMPESTRI, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6223, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8720 ITEMPLATE_END
8723 static const struct itemplate instrux_VPCMPESTRM[] = {
8724 {I_VPCMPESTRM, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6231, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8725 ITEMPLATE_END
8728 static const struct itemplate instrux_VPCMPGTB[] = {
8729 {I_VPCMPGTB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11215, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8730 {I_VPCMPGTB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11222, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8731 ITEMPLATE_END
8734 static const struct itemplate instrux_VPCMPGTD[] = {
8735 {I_VPCMPGTD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11243, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8736 {I_VPCMPGTD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11250, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8737 ITEMPLATE_END
8740 static const struct itemplate instrux_VPCMPGTQ[] = {
8741 {I_VPCMPGTQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11257, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8742 {I_VPCMPGTQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11264, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8743 ITEMPLATE_END
8746 static const struct itemplate instrux_VPCMPGTW[] = {
8747 {I_VPCMPGTW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11229, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8748 {I_VPCMPGTW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11236, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8749 ITEMPLATE_END
8752 static const struct itemplate instrux_VPCMPISTRI[] = {
8753 {I_VPCMPISTRI, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6239, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8754 ITEMPLATE_END
8757 static const struct itemplate instrux_VPCMPISTRM[] = {
8758 {I_VPCMPISTRM, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6247, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8759 ITEMPLATE_END
8762 static const struct itemplate instrux_VPERM2F128[] = {
8763 {I_VPERM2F128, 4, {YMMREG,YMMREG,RM_YMM,IMMEDIATE,0}, nasm_bytecodes+6287, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8764 ITEMPLATE_END
8767 static const struct itemplate instrux_VPERMIL2PD[] = {
8768 {I_VPERMIL2PD, 5, {XMMREG,XMMREG,RM_XMM,XMMREG,IMMEDIATE}, nasm_bytecodes+4815, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8769 {I_VPERMIL2PD, 5, {XMMREG,XMMREG,XMMREG,RM_XMM,IMMEDIATE}, nasm_bytecodes+4824, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8770 {I_VPERMIL2PD, 5, {YMMREG,YMMREG,RM_YMM,YMMREG,IMMEDIATE}, nasm_bytecodes+4833, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8771 {I_VPERMIL2PD, 5, {YMMREG,YMMREG,YMMREG,RM_YMM,IMMEDIATE}, nasm_bytecodes+4842, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8772 ITEMPLATE_END
8775 static const struct itemplate instrux_VPERMIL2PS[] = {
8776 {I_VPERMIL2PS, 5, {XMMREG,XMMREG,RM_XMM,XMMREG,IMMEDIATE}, nasm_bytecodes+4959, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8777 {I_VPERMIL2PS, 5, {XMMREG,XMMREG,XMMREG,RM_XMM,IMMEDIATE}, nasm_bytecodes+4968, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8778 {I_VPERMIL2PS, 5, {YMMREG,YMMREG,RM_YMM,YMMREG,IMMEDIATE}, nasm_bytecodes+4977, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8779 {I_VPERMIL2PS, 5, {YMMREG,YMMREG,YMMREG,RM_YMM,IMMEDIATE}, nasm_bytecodes+4986, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8780 ITEMPLATE_END
8783 static const struct itemplate instrux_VPERMILMO2PD[] = {
8784 {I_VPERMILMO2PD, 4, {XMMREG,XMMREG,RM_XMM,XMMREG,0}, nasm_bytecodes+4743, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8785 {I_VPERMILMO2PD, 4, {XMMREG,XMMREG,XMMREG,RM_XMM,0}, nasm_bytecodes+4752, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8786 {I_VPERMILMO2PD, 4, {YMMREG,YMMREG,RM_YMM,YMMREG,0}, nasm_bytecodes+4761, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8787 {I_VPERMILMO2PD, 4, {YMMREG,YMMREG,YMMREG,RM_YMM,0}, nasm_bytecodes+4770, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8788 ITEMPLATE_END
8791 static const struct itemplate instrux_VPERMILMO2PS[] = {
8792 {I_VPERMILMO2PS, 4, {XMMREG,XMMREG,RM_XMM,XMMREG,0}, nasm_bytecodes+4887, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8793 {I_VPERMILMO2PS, 4, {XMMREG,XMMREG,XMMREG,RM_XMM,0}, nasm_bytecodes+4896, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8794 {I_VPERMILMO2PS, 4, {YMMREG,YMMREG,RM_YMM,YMMREG,0}, nasm_bytecodes+4905, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8795 {I_VPERMILMO2PS, 4, {YMMREG,YMMREG,YMMREG,RM_YMM,0}, nasm_bytecodes+4914, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8796 ITEMPLATE_END
8799 static const struct itemplate instrux_VPERMILMZ2PD[] = {
8800 {I_VPERMILMZ2PD, 4, {XMMREG,XMMREG,RM_XMM,XMMREG,0}, nasm_bytecodes+4779, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8801 {I_VPERMILMZ2PD, 4, {XMMREG,XMMREG,XMMREG,RM_XMM,0}, nasm_bytecodes+4788, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8802 {I_VPERMILMZ2PD, 4, {YMMREG,YMMREG,RM_YMM,YMMREG,0}, nasm_bytecodes+4797, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8803 {I_VPERMILMZ2PD, 4, {YMMREG,YMMREG,YMMREG,RM_YMM,0}, nasm_bytecodes+4806, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8804 ITEMPLATE_END
8807 static const struct itemplate instrux_VPERMILMZ2PS[] = {
8808 {I_VPERMILMZ2PS, 4, {XMMREG,XMMREG,RM_XMM,XMMREG,0}, nasm_bytecodes+4923, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8809 {I_VPERMILMZ2PS, 4, {XMMREG,XMMREG,XMMREG,RM_XMM,0}, nasm_bytecodes+4932, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8810 {I_VPERMILMZ2PS, 4, {YMMREG,YMMREG,RM_YMM,YMMREG,0}, nasm_bytecodes+4941, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8811 {I_VPERMILMZ2PS, 4, {YMMREG,YMMREG,YMMREG,RM_YMM,0}, nasm_bytecodes+4950, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8812 ITEMPLATE_END
8815 static const struct itemplate instrux_VPERMILPD[] = {
8816 {I_VPERMILPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11271, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8817 {I_VPERMILPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+11278, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8818 {I_VPERMILPD, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6255, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8819 {I_VPERMILPD, 3, {YMMREG,RM_YMM,IMMEDIATE,0,0}, nasm_bytecodes+6263, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8820 ITEMPLATE_END
8823 static const struct itemplate instrux_VPERMILPS[] = {
8824 {I_VPERMILPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11285, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8825 {I_VPERMILPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+11292, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8826 {I_VPERMILPS, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6271, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8827 {I_VPERMILPS, 3, {YMMREG,RM_YMM,IMMEDIATE,0,0}, nasm_bytecodes+6279, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8828 ITEMPLATE_END
8831 static const struct itemplate instrux_VPERMILTD2PD[] = {
8832 {I_VPERMILTD2PD, 4, {XMMREG,XMMREG,RM_XMM,XMMREG,0}, nasm_bytecodes+4707, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8833 {I_VPERMILTD2PD, 4, {XMMREG,XMMREG,XMMREG,RM_XMM,0}, nasm_bytecodes+4716, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8834 {I_VPERMILTD2PD, 4, {YMMREG,YMMREG,RM_YMM,YMMREG,0}, nasm_bytecodes+4725, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8835 {I_VPERMILTD2PD, 4, {YMMREG,YMMREG,YMMREG,RM_YMM,0}, nasm_bytecodes+4734, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8836 ITEMPLATE_END
8839 static const struct itemplate instrux_VPERMILTD2PS[] = {
8840 {I_VPERMILTD2PS, 4, {XMMREG,XMMREG,RM_XMM,XMMREG,0}, nasm_bytecodes+4851, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8841 {I_VPERMILTD2PS, 4, {XMMREG,XMMREG,XMMREG,RM_XMM,0}, nasm_bytecodes+4860, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8842 {I_VPERMILTD2PS, 4, {YMMREG,YMMREG,RM_YMM,YMMREG,0}, nasm_bytecodes+4869, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8843 {I_VPERMILTD2PS, 4, {YMMREG,YMMREG,YMMREG,RM_YMM,0}, nasm_bytecodes+4878, IF_AVX|IF_SANDYBRIDGE|IF_SY},
8844 ITEMPLATE_END
8847 static const struct itemplate instrux_VPEXTRB[] = {
8848 {I_VPEXTRB, 3, {REG64,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6295, IF_AVX|IF_SANDYBRIDGE|IF_LONG},
8849 {I_VPEXTRB, 3, {REG32,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6295, IF_AVX|IF_SANDYBRIDGE},
8850 {I_VPEXTRB, 3, {MEMORY,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6295, IF_AVX|IF_SANDYBRIDGE|IF_SB},
8851 ITEMPLATE_END
8854 static const struct itemplate instrux_VPEXTRD[] = {
8855 {I_VPEXTRD, 3, {REG64,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6319, IF_AVX|IF_SANDYBRIDGE|IF_LONG},
8856 {I_VPEXTRD, 3, {RM_GPR|BITS32,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6319, IF_AVX|IF_SANDYBRIDGE|IF_SD},
8857 ITEMPLATE_END
8860 static const struct itemplate instrux_VPEXTRQ[] = {
8861 {I_VPEXTRQ, 3, {RM_GPR|BITS64,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6327, IF_AVX|IF_SANDYBRIDGE|IF_SQ|IF_LONG},
8862 ITEMPLATE_END
8865 static const struct itemplate instrux_VPEXTRW[] = {
8866 {I_VPEXTRW, 3, {REG64,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6303, IF_AVX|IF_SANDYBRIDGE|IF_LONG},
8867 {I_VPEXTRW, 3, {REG32,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6303, IF_AVX|IF_SANDYBRIDGE},
8868 {I_VPEXTRW, 3, {MEMORY,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6303, IF_AVX|IF_SANDYBRIDGE|IF_SW},
8869 {I_VPEXTRW, 3, {REG64,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6311, IF_AVX|IF_SANDYBRIDGE|IF_LONG},
8870 {I_VPEXTRW, 3, {REG32,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6311, IF_AVX|IF_SANDYBRIDGE},
8871 {I_VPEXTRW, 3, {MEMORY,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6311, IF_AVX|IF_SANDYBRIDGE|IF_SW},
8872 ITEMPLATE_END
8875 static const struct itemplate instrux_VPHADDD[] = {
8876 {I_VPHADDD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11313, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8877 {I_VPHADDD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11320, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8878 ITEMPLATE_END
8881 static const struct itemplate instrux_VPHADDSW[] = {
8882 {I_VPHADDSW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11327, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8883 {I_VPHADDSW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11334, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8884 ITEMPLATE_END
8887 static const struct itemplate instrux_VPHADDW[] = {
8888 {I_VPHADDW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11299, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8889 {I_VPHADDW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11306, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8890 ITEMPLATE_END
8893 static const struct itemplate instrux_VPHMINPOSUW[] = {
8894 {I_VPHMINPOSUW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11341, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8895 ITEMPLATE_END
8898 static const struct itemplate instrux_VPHSUBD[] = {
8899 {I_VPHSUBD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11362, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8900 {I_VPHSUBD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11369, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8901 ITEMPLATE_END
8904 static const struct itemplate instrux_VPHSUBSW[] = {
8905 {I_VPHSUBSW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11376, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8906 {I_VPHSUBSW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11383, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8907 ITEMPLATE_END
8910 static const struct itemplate instrux_VPHSUBW[] = {
8911 {I_VPHSUBW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11348, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8912 {I_VPHSUBW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11355, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8913 ITEMPLATE_END
8916 static const struct itemplate instrux_VPINSRB[] = {
8917 {I_VPINSRB, 4, {XMMREG,XMMREG,REG32,IMMEDIATE,0}, nasm_bytecodes+6335, IF_AVX|IF_SANDYBRIDGE},
8918 {I_VPINSRB, 3, {XMMREG,REG32,IMMEDIATE,0,0}, nasm_bytecodes+6343, IF_AVX|IF_SANDYBRIDGE},
8919 {I_VPINSRB, 4, {XMMREG,XMMREG,MEMORY,IMMEDIATE,0}, nasm_bytecodes+6335, IF_AVX|IF_SANDYBRIDGE|IF_SB},
8920 {I_VPINSRB, 4, {XMMREG,REG32,MEMORY,IMMEDIATE,0}, nasm_bytecodes+6343, IF_AVX|IF_SANDYBRIDGE|IF_SB},
8921 ITEMPLATE_END
8924 static const struct itemplate instrux_VPINSRD[] = {
8925 {I_VPINSRD, 4, {XMMREG,XMMREG,RM_GPR|BITS32,IMMEDIATE,0}, nasm_bytecodes+6367, IF_AVX|IF_SANDYBRIDGE|IF_SD},
8926 {I_VPINSRD, 3, {XMMREG,RM_GPR|BITS32,IMMEDIATE,0,0}, nasm_bytecodes+6375, IF_AVX|IF_SANDYBRIDGE|IF_SD},
8927 ITEMPLATE_END
8930 static const struct itemplate instrux_VPINSRQ[] = {
8931 {I_VPINSRQ, 4, {XMMREG,XMMREG,RM_GPR|BITS64,IMMEDIATE,0}, nasm_bytecodes+6383, IF_AVX|IF_SANDYBRIDGE|IF_SQ|IF_LONG},
8932 {I_VPINSRQ, 3, {XMMREG,RM_GPR|BITS64,IMMEDIATE,0,0}, nasm_bytecodes+6391, IF_AVX|IF_SANDYBRIDGE|IF_SD|IF_LONG},
8933 ITEMPLATE_END
8936 static const struct itemplate instrux_VPINSRW[] = {
8937 {I_VPINSRW, 4, {XMMREG,XMMREG,REG32,IMMEDIATE,0}, nasm_bytecodes+6351, IF_AVX|IF_SANDYBRIDGE},
8938 {I_VPINSRW, 3, {XMMREG,REG32,IMMEDIATE,0,0}, nasm_bytecodes+6359, IF_AVX|IF_SANDYBRIDGE},
8939 {I_VPINSRW, 4, {XMMREG,XMMREG,MEMORY,IMMEDIATE,0}, nasm_bytecodes+6351, IF_AVX|IF_SANDYBRIDGE|IF_SW},
8940 {I_VPINSRW, 4, {XMMREG,REG32,MEMORY,IMMEDIATE,0}, nasm_bytecodes+6359, IF_AVX|IF_SANDYBRIDGE|IF_SW},
8941 ITEMPLATE_END
8944 static const struct itemplate instrux_VPMADDUBSW[] = {
8945 {I_VPMADDUBSW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11404, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8946 {I_VPMADDUBSW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11411, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8947 ITEMPLATE_END
8950 static const struct itemplate instrux_VPMADDWD[] = {
8951 {I_VPMADDWD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11390, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8952 {I_VPMADDWD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11397, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8953 ITEMPLATE_END
8956 static const struct itemplate instrux_VPMAXSB[] = {
8957 {I_VPMAXSB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11418, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8958 {I_VPMAXSB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11425, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8959 ITEMPLATE_END
8962 static const struct itemplate instrux_VPMAXSD[] = {
8963 {I_VPMAXSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11446, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8964 {I_VPMAXSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11453, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8965 ITEMPLATE_END
8968 static const struct itemplate instrux_VPMAXSW[] = {
8969 {I_VPMAXSW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11432, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8970 {I_VPMAXSW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11439, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8971 ITEMPLATE_END
8974 static const struct itemplate instrux_VPMAXUB[] = {
8975 {I_VPMAXUB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11460, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8976 {I_VPMAXUB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11467, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8977 ITEMPLATE_END
8980 static const struct itemplate instrux_VPMAXUD[] = {
8981 {I_VPMAXUD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11488, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8982 {I_VPMAXUD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11495, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8983 ITEMPLATE_END
8986 static const struct itemplate instrux_VPMAXUW[] = {
8987 {I_VPMAXUW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11474, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8988 {I_VPMAXUW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11481, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8989 ITEMPLATE_END
8992 static const struct itemplate instrux_VPMINSB[] = {
8993 {I_VPMINSB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11502, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8994 {I_VPMINSB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11509, IF_AVX|IF_SANDYBRIDGE|IF_SO},
8995 ITEMPLATE_END
8998 static const struct itemplate instrux_VPMINSD[] = {
8999 {I_VPMINSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11530, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9000 {I_VPMINSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11537, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9001 ITEMPLATE_END
9004 static const struct itemplate instrux_VPMINSW[] = {
9005 {I_VPMINSW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11516, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9006 {I_VPMINSW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11523, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9007 ITEMPLATE_END
9010 static const struct itemplate instrux_VPMINUB[] = {
9011 {I_VPMINUB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11544, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9012 {I_VPMINUB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11551, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9013 ITEMPLATE_END
9016 static const struct itemplate instrux_VPMINUD[] = {
9017 {I_VPMINUD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11572, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9018 {I_VPMINUD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11579, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9019 ITEMPLATE_END
9022 static const struct itemplate instrux_VPMINUW[] = {
9023 {I_VPMINUW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11558, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9024 {I_VPMINUW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11565, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9025 ITEMPLATE_END
9028 static const struct itemplate instrux_VPMOVMSKB[] = {
9029 {I_VPMOVMSKB, 2, {REG64,XMMREG,0,0,0}, nasm_bytecodes+11586, IF_AVX|IF_SANDYBRIDGE|IF_LONG},
9030 {I_VPMOVMSKB, 2, {REG32,XMMREG,0,0,0}, nasm_bytecodes+11586, IF_AVX|IF_SANDYBRIDGE},
9031 ITEMPLATE_END
9034 static const struct itemplate instrux_VPMOVSXBD[] = {
9035 {I_VPMOVSXBD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11600, IF_AVX|IF_SANDYBRIDGE|IF_SD},
9036 ITEMPLATE_END
9039 static const struct itemplate instrux_VPMOVSXBQ[] = {
9040 {I_VPMOVSXBQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11607, IF_AVX|IF_SANDYBRIDGE|IF_SW},
9041 ITEMPLATE_END
9044 static const struct itemplate instrux_VPMOVSXBW[] = {
9045 {I_VPMOVSXBW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11593, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
9046 ITEMPLATE_END
9049 static const struct itemplate instrux_VPMOVSXDQ[] = {
9050 {I_VPMOVSXDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11628, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
9051 ITEMPLATE_END
9054 static const struct itemplate instrux_VPMOVSXWD[] = {
9055 {I_VPMOVSXWD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11614, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
9056 ITEMPLATE_END
9059 static const struct itemplate instrux_VPMOVSXWQ[] = {
9060 {I_VPMOVSXWQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11621, IF_AVX|IF_SANDYBRIDGE|IF_SD},
9061 ITEMPLATE_END
9064 static const struct itemplate instrux_VPMOVZXBD[] = {
9065 {I_VPMOVZXBD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11642, IF_AVX|IF_SANDYBRIDGE|IF_SD},
9066 ITEMPLATE_END
9069 static const struct itemplate instrux_VPMOVZXBQ[] = {
9070 {I_VPMOVZXBQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11649, IF_AVX|IF_SANDYBRIDGE|IF_SW},
9071 ITEMPLATE_END
9074 static const struct itemplate instrux_VPMOVZXBW[] = {
9075 {I_VPMOVZXBW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11635, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
9076 ITEMPLATE_END
9079 static const struct itemplate instrux_VPMOVZXDQ[] = {
9080 {I_VPMOVZXDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11670, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
9081 ITEMPLATE_END
9084 static const struct itemplate instrux_VPMOVZXWD[] = {
9085 {I_VPMOVZXWD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11656, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
9086 ITEMPLATE_END
9089 static const struct itemplate instrux_VPMOVZXWQ[] = {
9090 {I_VPMOVZXWQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11663, IF_AVX|IF_SANDYBRIDGE|IF_SD},
9091 ITEMPLATE_END
9094 static const struct itemplate instrux_VPMULDQ[] = {
9095 {I_VPMULDQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11761, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9096 {I_VPMULDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11768, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9097 ITEMPLATE_END
9100 static const struct itemplate instrux_VPMULHRSW[] = {
9101 {I_VPMULHRSW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11691, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9102 {I_VPMULHRSW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11698, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9103 ITEMPLATE_END
9106 static const struct itemplate instrux_VPMULHUW[] = {
9107 {I_VPMULHUW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11677, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9108 {I_VPMULHUW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11684, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9109 ITEMPLATE_END
9112 static const struct itemplate instrux_VPMULHW[] = {
9113 {I_VPMULHW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11705, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9114 {I_VPMULHW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11712, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9115 ITEMPLATE_END
9118 static const struct itemplate instrux_VPMULLD[] = {
9119 {I_VPMULLD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11733, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9120 {I_VPMULLD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11740, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9121 ITEMPLATE_END
9124 static const struct itemplate instrux_VPMULLW[] = {
9125 {I_VPMULLW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11719, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9126 {I_VPMULLW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11726, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9127 ITEMPLATE_END
9130 static const struct itemplate instrux_VPMULUDQ[] = {
9131 {I_VPMULUDQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11747, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9132 {I_VPMULUDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11754, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9133 ITEMPLATE_END
9136 static const struct itemplate instrux_VPOR[] = {
9137 {I_VPOR, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11775, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9138 {I_VPOR, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11782, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9139 ITEMPLATE_END
9142 static const struct itemplate instrux_VPSADBW[] = {
9143 {I_VPSADBW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11789, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9144 {I_VPSADBW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11796, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9145 ITEMPLATE_END
9148 static const struct itemplate instrux_VPSHUFB[] = {
9149 {I_VPSHUFB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11803, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9150 {I_VPSHUFB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11810, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9151 ITEMPLATE_END
9154 static const struct itemplate instrux_VPSHUFD[] = {
9155 {I_VPSHUFD, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6399, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9156 ITEMPLATE_END
9159 static const struct itemplate instrux_VPSHUFHW[] = {
9160 {I_VPSHUFHW, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6407, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9161 ITEMPLATE_END
9164 static const struct itemplate instrux_VPSHUFLW[] = {
9165 {I_VPSHUFLW, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6415, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9166 ITEMPLATE_END
9169 static const struct itemplate instrux_VPSIGNB[] = {
9170 {I_VPSIGNB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11817, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9171 {I_VPSIGNB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11824, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9172 ITEMPLATE_END
9175 static const struct itemplate instrux_VPSIGND[] = {
9176 {I_VPSIGND, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11845, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9177 {I_VPSIGND, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11852, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9178 ITEMPLATE_END
9181 static const struct itemplate instrux_VPSIGNW[] = {
9182 {I_VPSIGNW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11831, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9183 {I_VPSIGNW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11838, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9184 ITEMPLATE_END
9187 static const struct itemplate instrux_VPSLLD[] = {
9188 {I_VPSLLD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11873, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9189 {I_VPSLLD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11880, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9190 {I_VPSLLD, 3, {XMMREG,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6471, IF_AVX|IF_SANDYBRIDGE},
9191 {I_VPSLLD, 2, {XMMREG,IMMEDIATE,0,0,0}, nasm_bytecodes+6479, IF_AVX|IF_SANDYBRIDGE},
9192 ITEMPLATE_END
9195 static const struct itemplate instrux_VPSLLDQ[] = {
9196 {I_VPSLLDQ, 3, {XMMREG,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6423, IF_AVX|IF_SANDYBRIDGE},
9197 {I_VPSLLDQ, 2, {XMMREG,IMMEDIATE,0,0,0}, nasm_bytecodes+6431, IF_AVX|IF_SANDYBRIDGE},
9198 ITEMPLATE_END
9201 static const struct itemplate instrux_VPSLLQ[] = {
9202 {I_VPSLLQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11887, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9203 {I_VPSLLQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11894, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9204 {I_VPSLLQ, 3, {XMMREG,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6487, IF_AVX|IF_SANDYBRIDGE},
9205 {I_VPSLLQ, 2, {XMMREG,IMMEDIATE,0,0,0}, nasm_bytecodes+6495, IF_AVX|IF_SANDYBRIDGE},
9206 ITEMPLATE_END
9209 static const struct itemplate instrux_VPSLLW[] = {
9210 {I_VPSLLW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11859, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9211 {I_VPSLLW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11866, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9212 {I_VPSLLW, 3, {XMMREG,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6455, IF_AVX|IF_SANDYBRIDGE},
9213 {I_VPSLLW, 2, {XMMREG,IMMEDIATE,0,0,0}, nasm_bytecodes+6463, IF_AVX|IF_SANDYBRIDGE},
9214 ITEMPLATE_END
9217 static const struct itemplate instrux_VPSRAD[] = {
9218 {I_VPSRAD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11915, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9219 {I_VPSRAD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11922, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9220 {I_VPSRAD, 3, {XMMREG,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6519, IF_AVX|IF_SANDYBRIDGE},
9221 {I_VPSRAD, 2, {XMMREG,IMMEDIATE,0,0,0}, nasm_bytecodes+6527, IF_AVX|IF_SANDYBRIDGE},
9222 ITEMPLATE_END
9225 static const struct itemplate instrux_VPSRAW[] = {
9226 {I_VPSRAW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11901, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9227 {I_VPSRAW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11908, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9228 {I_VPSRAW, 3, {XMMREG,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6503, IF_AVX|IF_SANDYBRIDGE},
9229 {I_VPSRAW, 2, {XMMREG,IMMEDIATE,0,0,0}, nasm_bytecodes+6511, IF_AVX|IF_SANDYBRIDGE},
9230 ITEMPLATE_END
9233 static const struct itemplate instrux_VPSRLD[] = {
9234 {I_VPSRLD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11943, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9235 {I_VPSRLD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11950, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9236 {I_VPSRLD, 3, {XMMREG,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6551, IF_AVX|IF_SANDYBRIDGE},
9237 {I_VPSRLD, 2, {XMMREG,IMMEDIATE,0,0,0}, nasm_bytecodes+6559, IF_AVX|IF_SANDYBRIDGE},
9238 ITEMPLATE_END
9241 static const struct itemplate instrux_VPSRLDQ[] = {
9242 {I_VPSRLDQ, 3, {XMMREG,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6439, IF_AVX|IF_SANDYBRIDGE},
9243 {I_VPSRLDQ, 2, {XMMREG,IMMEDIATE,0,0,0}, nasm_bytecodes+6447, IF_AVX|IF_SANDYBRIDGE},
9244 ITEMPLATE_END
9247 static const struct itemplate instrux_VPSRLQ[] = {
9248 {I_VPSRLQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11957, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9249 {I_VPSRLQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11964, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9250 {I_VPSRLQ, 3, {XMMREG,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6567, IF_AVX|IF_SANDYBRIDGE},
9251 {I_VPSRLQ, 2, {XMMREG,IMMEDIATE,0,0,0}, nasm_bytecodes+6575, IF_AVX|IF_SANDYBRIDGE},
9252 ITEMPLATE_END
9255 static const struct itemplate instrux_VPSRLW[] = {
9256 {I_VPSRLW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11929, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9257 {I_VPSRLW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11936, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9258 {I_VPSRLW, 3, {XMMREG,XMMREG,IMMEDIATE,0,0}, nasm_bytecodes+6535, IF_AVX|IF_SANDYBRIDGE},
9259 {I_VPSRLW, 2, {XMMREG,IMMEDIATE,0,0,0}, nasm_bytecodes+6543, IF_AVX|IF_SANDYBRIDGE},
9260 ITEMPLATE_END
9263 static const struct itemplate instrux_VPSUBB[] = {
9264 {I_VPSUBB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11985, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9265 {I_VPSUBB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11992, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9266 ITEMPLATE_END
9269 static const struct itemplate instrux_VPSUBD[] = {
9270 {I_VPSUBD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12013, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9271 {I_VPSUBD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12020, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9272 ITEMPLATE_END
9275 static const struct itemplate instrux_VPSUBQ[] = {
9276 {I_VPSUBQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12027, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9277 {I_VPSUBQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12034, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9278 ITEMPLATE_END
9281 static const struct itemplate instrux_VPSUBSB[] = {
9282 {I_VPSUBSB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12041, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9283 {I_VPSUBSB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12048, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9284 ITEMPLATE_END
9287 static const struct itemplate instrux_VPSUBSW[] = {
9288 {I_VPSUBSW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12055, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9289 {I_VPSUBSW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12062, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9290 ITEMPLATE_END
9293 static const struct itemplate instrux_VPSUBUSB[] = {
9294 {I_VPSUBUSB, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12069, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9295 {I_VPSUBUSB, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12076, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9296 ITEMPLATE_END
9299 static const struct itemplate instrux_VPSUBUSW[] = {
9300 {I_VPSUBUSW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12083, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9301 {I_VPSUBUSW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12090, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9302 ITEMPLATE_END
9305 static const struct itemplate instrux_VPSUBW[] = {
9306 {I_VPSUBW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+11999, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9307 {I_VPSUBW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12006, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9308 ITEMPLATE_END
9311 static const struct itemplate instrux_VPTEST[] = {
9312 {I_VPTEST, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+11971, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9313 {I_VPTEST, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+11978, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9314 ITEMPLATE_END
9317 static const struct itemplate instrux_VPUNPCKHBW[] = {
9318 {I_VPUNPCKHBW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12097, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9319 {I_VPUNPCKHBW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12104, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9320 ITEMPLATE_END
9323 static const struct itemplate instrux_VPUNPCKHDQ[] = {
9324 {I_VPUNPCKHDQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12125, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9325 {I_VPUNPCKHDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12132, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9326 ITEMPLATE_END
9329 static const struct itemplate instrux_VPUNPCKHQDQ[] = {
9330 {I_VPUNPCKHQDQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12139, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9331 {I_VPUNPCKHQDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12146, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9332 ITEMPLATE_END
9335 static const struct itemplate instrux_VPUNPCKHWD[] = {
9336 {I_VPUNPCKHWD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12111, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9337 {I_VPUNPCKHWD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12118, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9338 ITEMPLATE_END
9341 static const struct itemplate instrux_VPUNPCKLBW[] = {
9342 {I_VPUNPCKLBW, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12153, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9343 {I_VPUNPCKLBW, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12160, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9344 ITEMPLATE_END
9347 static const struct itemplate instrux_VPUNPCKLDQ[] = {
9348 {I_VPUNPCKLDQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12181, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9349 {I_VPUNPCKLDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12188, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9350 ITEMPLATE_END
9353 static const struct itemplate instrux_VPUNPCKLQDQ[] = {
9354 {I_VPUNPCKLQDQ, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12195, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9355 {I_VPUNPCKLQDQ, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12202, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9356 ITEMPLATE_END
9359 static const struct itemplate instrux_VPUNPCKLWD[] = {
9360 {I_VPUNPCKLWD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12167, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9361 {I_VPUNPCKLWD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12174, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9362 ITEMPLATE_END
9365 static const struct itemplate instrux_VPXOR[] = {
9366 {I_VPXOR, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12209, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9367 {I_VPXOR, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12216, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9368 ITEMPLATE_END
9371 static const struct itemplate instrux_VRCPPS[] = {
9372 {I_VRCPPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12223, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9373 {I_VRCPPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12230, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9374 ITEMPLATE_END
9377 static const struct itemplate instrux_VRCPSS[] = {
9378 {I_VRCPSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12237, IF_AVX|IF_SANDYBRIDGE|IF_SD},
9379 {I_VRCPSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12244, IF_AVX|IF_SANDYBRIDGE|IF_SD},
9380 ITEMPLATE_END
9383 static const struct itemplate instrux_VROUNDPD[] = {
9384 {I_VROUNDPD, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6583, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9385 {I_VROUNDPD, 3, {YMMREG,RM_YMM,IMMEDIATE,0,0}, nasm_bytecodes+6591, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9386 ITEMPLATE_END
9389 static const struct itemplate instrux_VROUNDPS[] = {
9390 {I_VROUNDPS, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6599, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9391 {I_VROUNDPS, 3, {YMMREG,RM_YMM,IMMEDIATE,0,0}, nasm_bytecodes+6607, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9392 ITEMPLATE_END
9395 static const struct itemplate instrux_VROUNDSD[] = {
9396 {I_VROUNDSD, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+6615, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
9397 {I_VROUNDSD, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6623, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
9398 ITEMPLATE_END
9401 static const struct itemplate instrux_VROUNDSS[] = {
9402 {I_VROUNDSS, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+6631, IF_AVX|IF_SANDYBRIDGE|IF_SD},
9403 {I_VROUNDSS, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6639, IF_AVX|IF_SANDYBRIDGE|IF_SD},
9404 ITEMPLATE_END
9407 static const struct itemplate instrux_VRSQRTPS[] = {
9408 {I_VRSQRTPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12251, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9409 {I_VRSQRTPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12258, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9410 ITEMPLATE_END
9413 static const struct itemplate instrux_VRSQRTSS[] = {
9414 {I_VRSQRTSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12265, IF_AVX|IF_SANDYBRIDGE|IF_SD},
9415 {I_VRSQRTSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12272, IF_AVX|IF_SANDYBRIDGE|IF_SD},
9416 ITEMPLATE_END
9419 static const struct itemplate instrux_VSHUFPD[] = {
9420 {I_VSHUFPD, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+6647, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9421 {I_VSHUFPD, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6655, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9422 {I_VSHUFPD, 4, {YMMREG,YMMREG,RM_YMM,IMMEDIATE,0}, nasm_bytecodes+6663, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9423 {I_VSHUFPD, 3, {YMMREG,RM_YMM,IMMEDIATE,0,0}, nasm_bytecodes+6671, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9424 ITEMPLATE_END
9427 static const struct itemplate instrux_VSHUFPS[] = {
9428 {I_VSHUFPS, 4, {XMMREG,XMMREG,RM_XMM,IMMEDIATE,0}, nasm_bytecodes+6679, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9429 {I_VSHUFPS, 3, {XMMREG,RM_XMM,IMMEDIATE,0,0}, nasm_bytecodes+6687, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9430 {I_VSHUFPS, 4, {YMMREG,YMMREG,RM_YMM,IMMEDIATE,0}, nasm_bytecodes+6695, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9431 {I_VSHUFPS, 3, {YMMREG,RM_YMM,IMMEDIATE,0,0}, nasm_bytecodes+6703, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9432 ITEMPLATE_END
9435 static const struct itemplate instrux_VSQRTPD[] = {
9436 {I_VSQRTPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12279, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9437 {I_VSQRTPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12286, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9438 ITEMPLATE_END
9441 static const struct itemplate instrux_VSQRTPS[] = {
9442 {I_VSQRTPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12293, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9443 {I_VSQRTPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12300, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9444 ITEMPLATE_END
9447 static const struct itemplate instrux_VSQRTSD[] = {
9448 {I_VSQRTSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12307, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
9449 {I_VSQRTSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12314, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
9450 ITEMPLATE_END
9453 static const struct itemplate instrux_VSQRTSS[] = {
9454 {I_VSQRTSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12321, IF_AVX|IF_SANDYBRIDGE|IF_SD},
9455 {I_VSQRTSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12328, IF_AVX|IF_SANDYBRIDGE|IF_SD},
9456 ITEMPLATE_END
9459 static const struct itemplate instrux_VSTMXCSR[] = {
9460 {I_VSTMXCSR, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+12335, IF_AVX|IF_SANDYBRIDGE|IF_SD},
9461 ITEMPLATE_END
9464 static const struct itemplate instrux_VSUBPD[] = {
9465 {I_VSUBPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12342, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9466 {I_VSUBPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12349, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9467 {I_VSUBPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12356, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9468 {I_VSUBPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12363, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9469 ITEMPLATE_END
9472 static const struct itemplate instrux_VSUBPS[] = {
9473 {I_VSUBPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12370, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9474 {I_VSUBPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12377, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9475 {I_VSUBPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12384, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9476 {I_VSUBPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12391, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9477 ITEMPLATE_END
9480 static const struct itemplate instrux_VSUBSD[] = {
9481 {I_VSUBSD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12398, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
9482 {I_VSUBSD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12405, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
9483 ITEMPLATE_END
9486 static const struct itemplate instrux_VSUBSS[] = {
9487 {I_VSUBSS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12412, IF_AVX|IF_SANDYBRIDGE|IF_SD},
9488 {I_VSUBSS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12419, IF_AVX|IF_SANDYBRIDGE|IF_SD},
9489 ITEMPLATE_END
9492 static const struct itemplate instrux_VTESTPD[] = {
9493 {I_VTESTPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12440, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9494 {I_VTESTPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12447, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9495 ITEMPLATE_END
9498 static const struct itemplate instrux_VTESTPS[] = {
9499 {I_VTESTPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12426, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9500 {I_VTESTPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12433, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9501 ITEMPLATE_END
9504 static const struct itemplate instrux_VUCOMISD[] = {
9505 {I_VUCOMISD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12454, IF_AVX|IF_SANDYBRIDGE|IF_SQ},
9506 ITEMPLATE_END
9509 static const struct itemplate instrux_VUCOMISS[] = {
9510 {I_VUCOMISS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12461, IF_AVX|IF_SANDYBRIDGE|IF_SD},
9511 ITEMPLATE_END
9514 static const struct itemplate instrux_VUNPCKHPD[] = {
9515 {I_VUNPCKHPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12468, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9516 {I_VUNPCKHPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12475, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9517 {I_VUNPCKHPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12482, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9518 {I_VUNPCKHPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12489, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9519 ITEMPLATE_END
9522 static const struct itemplate instrux_VUNPCKHPS[] = {
9523 {I_VUNPCKHPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12496, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9524 {I_VUNPCKHPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12503, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9525 {I_VUNPCKHPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12510, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9526 {I_VUNPCKHPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12517, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9527 ITEMPLATE_END
9530 static const struct itemplate instrux_VUNPCKLPD[] = {
9531 {I_VUNPCKLPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12524, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9532 {I_VUNPCKLPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12531, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9533 {I_VUNPCKLPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12538, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9534 {I_VUNPCKLPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12545, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9535 ITEMPLATE_END
9538 static const struct itemplate instrux_VUNPCKLPS[] = {
9539 {I_VUNPCKLPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12552, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9540 {I_VUNPCKLPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12559, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9541 {I_VUNPCKLPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12566, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9542 {I_VUNPCKLPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12573, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9543 ITEMPLATE_END
9546 static const struct itemplate instrux_VXORPD[] = {
9547 {I_VXORPD, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12580, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9548 {I_VXORPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12587, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9549 {I_VXORPD, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12594, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9550 {I_VXORPD, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12601, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9551 ITEMPLATE_END
9554 static const struct itemplate instrux_VXORPS[] = {
9555 {I_VXORPS, 3, {XMMREG,XMMREG,RM_XMM,0,0}, nasm_bytecodes+12608, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9556 {I_VXORPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+12615, IF_AVX|IF_SANDYBRIDGE|IF_SO},
9557 {I_VXORPS, 3, {YMMREG,YMMREG,RM_YMM,0,0}, nasm_bytecodes+12622, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9558 {I_VXORPS, 2, {YMMREG,RM_YMM,0,0,0}, nasm_bytecodes+12629, IF_AVX|IF_SANDYBRIDGE|IF_SY},
9559 ITEMPLATE_END
9562 static const struct itemplate instrux_VZEROALL[] = {
9563 {I_VZEROALL, 0, {0,0,0,0,0}, nasm_bytecodes+16296, IF_AVX|IF_SANDYBRIDGE},
9564 ITEMPLATE_END
9567 static const struct itemplate instrux_VZEROUPPER[] = {
9568 {I_VZEROUPPER, 0, {0,0,0,0,0}, nasm_bytecodes+16302, IF_AVX|IF_SANDYBRIDGE},
9569 ITEMPLATE_END
9572 static const struct itemplate instrux_WBINVD[] = {
9573 {I_WBINVD, 0, {0,0,0,0,0}, nasm_bytecodes+20357, IF_486|IF_PRIV},
9574 ITEMPLATE_END
9577 static const struct itemplate instrux_WRMSR[] = {
9578 {I_WRMSR, 0, {0,0,0,0,0}, nasm_bytecodes+20361, IF_PENT|IF_PRIV},
9579 ITEMPLATE_END
9582 static const struct itemplate instrux_WRSHR[] = {
9583 {I_WRSHR, 1, {RM_GPR|BITS32,0,0,0,0}, nasm_bytecodes+15132, IF_P6|IF_CYRIX|IF_SMM},
9584 ITEMPLATE_END
9587 static const struct itemplate instrux_XADD[] = {
9588 {I_XADD, 2, {MEMORY,REG8,0,0,0}, nasm_bytecodes+19200, IF_486|IF_SM},
9589 {I_XADD, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+19200, IF_486},
9590 {I_XADD, 2, {MEMORY,REG16,0,0,0}, nasm_bytecodes+15138, IF_486|IF_SM},
9591 {I_XADD, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+15138, IF_486},
9592 {I_XADD, 2, {MEMORY,REG32,0,0,0}, nasm_bytecodes+15144, IF_486|IF_SM},
9593 {I_XADD, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+15144, IF_486},
9594 {I_XADD, 2, {MEMORY,REG64,0,0,0}, nasm_bytecodes+15150, IF_X64|IF_SM},
9595 {I_XADD, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+15150, IF_X64},
9596 ITEMPLATE_END
9599 static const struct itemplate instrux_XBTS[] = {
9600 {I_XBTS, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+15156, IF_386|IF_SW|IF_UNDOC},
9601 {I_XBTS, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+15156, IF_386|IF_UNDOC},
9602 {I_XBTS, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+15162, IF_386|IF_SD|IF_UNDOC},
9603 {I_XBTS, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+15162, IF_386|IF_UNDOC},
9604 ITEMPLATE_END
9607 static const struct itemplate instrux_XCHG[] = {
9608 {I_XCHG, 2, {REG_AX,REG16,0,0,0}, nasm_bytecodes+20365, IF_8086},
9609 {I_XCHG, 2, {REG_EAX,REG32NA,0,0,0}, nasm_bytecodes+20369, IF_386},
9610 {I_XCHG, 2, {REG_RAX,REG64,0,0,0}, nasm_bytecodes+20373, IF_X64},
9611 {I_XCHG, 2, {REG16,REG_AX,0,0,0}, nasm_bytecodes+20377, IF_8086},
9612 {I_XCHG, 2, {REG32NA,REG_EAX,0,0,0}, nasm_bytecodes+20381, IF_386},
9613 {I_XCHG, 2, {REG64,REG_RAX,0,0,0}, nasm_bytecodes+20385, IF_X64},
9614 {I_XCHG, 2, {REG_EAX,REG_EAX,0,0,0}, nasm_bytecodes+20389, IF_386|IF_NOLONG},
9615 {I_XCHG, 2, {REG8,MEMORY,0,0,0}, nasm_bytecodes+20393, IF_8086|IF_SM},
9616 {I_XCHG, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+20393, IF_8086},
9617 {I_XCHG, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+19205, IF_8086|IF_SM},
9618 {I_XCHG, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+19205, IF_8086},
9619 {I_XCHG, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+19210, IF_386|IF_SM},
9620 {I_XCHG, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+19210, IF_386},
9621 {I_XCHG, 2, {REG64,MEMORY,0,0,0}, nasm_bytecodes+19215, IF_X64|IF_SM},
9622 {I_XCHG, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+19215, IF_X64},
9623 {I_XCHG, 2, {MEMORY,REG8,0,0,0}, nasm_bytecodes+20397, IF_8086|IF_SM},
9624 {I_XCHG, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+20397, IF_8086},
9625 {I_XCHG, 2, {MEMORY,REG16,0,0,0}, nasm_bytecodes+19220, IF_8086|IF_SM},
9626 {I_XCHG, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+19220, IF_8086},
9627 {I_XCHG, 2, {MEMORY,REG32,0,0,0}, nasm_bytecodes+19225, IF_386|IF_SM},
9628 {I_XCHG, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+19225, IF_386},
9629 {I_XCHG, 2, {MEMORY,REG64,0,0,0}, nasm_bytecodes+19230, IF_X64|IF_SM},
9630 {I_XCHG, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+19230, IF_X64},
9631 ITEMPLATE_END
9634 static const struct itemplate instrux_XCRYPTCBC[] = {
9635 {I_XCRYPTCBC, 0, {0,0,0,0,0}, nasm_bytecodes+16314, IF_PENT|IF_CYRIX},
9636 ITEMPLATE_END
9639 static const struct itemplate instrux_XCRYPTCFB[] = {
9640 {I_XCRYPTCFB, 0, {0,0,0,0,0}, nasm_bytecodes+16326, IF_PENT|IF_CYRIX},
9641 ITEMPLATE_END
9644 static const struct itemplate instrux_XCRYPTCTR[] = {
9645 {I_XCRYPTCTR, 0, {0,0,0,0,0}, nasm_bytecodes+16320, IF_PENT|IF_CYRIX},
9646 ITEMPLATE_END
9649 static const struct itemplate instrux_XCRYPTECB[] = {
9650 {I_XCRYPTECB, 0, {0,0,0,0,0}, nasm_bytecodes+16308, IF_PENT|IF_CYRIX},
9651 ITEMPLATE_END
9654 static const struct itemplate instrux_XCRYPTOFB[] = {
9655 {I_XCRYPTOFB, 0, {0,0,0,0,0}, nasm_bytecodes+16332, IF_PENT|IF_CYRIX},
9656 ITEMPLATE_END
9659 static const struct itemplate instrux_XGETBV[] = {
9660 {I_XGETBV, 0, {0,0,0,0,0}, nasm_bytecodes+15450, IF_NEHALEM},
9661 ITEMPLATE_END
9664 static const struct itemplate instrux_XLAT[] = {
9665 {I_XLAT, 0, {0,0,0,0,0}, nasm_bytecodes+20476, IF_8086},
9666 ITEMPLATE_END
9669 static const struct itemplate instrux_XLATB[] = {
9670 {I_XLATB, 0, {0,0,0,0,0}, nasm_bytecodes+20476, IF_8086},
9671 ITEMPLATE_END
9674 static const struct itemplate instrux_XOR[] = {
9675 {I_XOR, 2, {MEMORY,REG8,0,0,0}, nasm_bytecodes+20401, IF_8086|IF_SM},
9676 {I_XOR, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+20401, IF_8086},
9677 {I_XOR, 2, {MEMORY,REG16,0,0,0}, nasm_bytecodes+19235, IF_8086|IF_SM},
9678 {I_XOR, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+19235, IF_8086},
9679 {I_XOR, 2, {MEMORY,REG32,0,0,0}, nasm_bytecodes+19240, IF_386|IF_SM},
9680 {I_XOR, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+19240, IF_386},
9681 {I_XOR, 2, {MEMORY,REG64,0,0,0}, nasm_bytecodes+19245, IF_X64|IF_SM},
9682 {I_XOR, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+19245, IF_X64},
9683 {I_XOR, 2, {REG8,MEMORY,0,0,0}, nasm_bytecodes+11652, IF_8086|IF_SM},
9684 {I_XOR, 2, {REG8,REG8,0,0,0}, nasm_bytecodes+11652, IF_8086},
9685 {I_XOR, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+19250, IF_8086|IF_SM},
9686 {I_XOR, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+19250, IF_8086},
9687 {I_XOR, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+19255, IF_386|IF_SM},
9688 {I_XOR, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+19255, IF_386},
9689 {I_XOR, 2, {REG64,MEMORY,0,0,0}, nasm_bytecodes+19260, IF_X64|IF_SM},
9690 {I_XOR, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+19260, IF_X64},
9691 {I_XOR, 2, {RM_GPR|BITS16,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+15168, IF_8086},
9692 {I_XOR, 2, {RM_GPR|BITS32,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+15174, IF_386},
9693 {I_XOR, 2, {RM_GPR|BITS64,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+15180, IF_X64},
9694 {I_XOR, 2, {REG_AL,IMMEDIATE,0,0,0}, nasm_bytecodes+20405, IF_8086|IF_SM},
9695 {I_XOR, 2, {REG_AX,SBYTE16,0,0,0}, nasm_bytecodes+15168, IF_8086|IF_SM},
9696 {I_XOR, 2, {REG_AX,IMMEDIATE,0,0,0}, nasm_bytecodes+19265, IF_8086|IF_SM},
9697 {I_XOR, 2, {REG_EAX,SBYTE32,0,0,0}, nasm_bytecodes+15174, IF_386|IF_SM},
9698 {I_XOR, 2, {REG_EAX,IMMEDIATE,0,0,0}, nasm_bytecodes+19270, IF_386|IF_SM},
9699 {I_XOR, 2, {REG_RAX,SBYTE64,0,0,0}, nasm_bytecodes+15180, IF_X64|IF_SM},
9700 {I_XOR, 2, {REG_RAX,IMMEDIATE,0,0,0}, nasm_bytecodes+19275, IF_X64|IF_SM},
9701 {I_XOR, 2, {RM_GPR|BITS8,IMMEDIATE,0,0,0}, nasm_bytecodes+19280, IF_8086|IF_SM},
9702 {I_XOR, 2, {RM_GPR|BITS16,IMMEDIATE,0,0,0}, nasm_bytecodes+15186, IF_8086|IF_SM},
9703 {I_XOR, 2, {RM_GPR|BITS32,IMMEDIATE,0,0,0}, nasm_bytecodes+15192, IF_386|IF_SM},
9704 {I_XOR, 2, {RM_GPR|BITS64,IMMEDIATE,0,0,0}, nasm_bytecodes+15198, IF_X64|IF_SM},
9705 {I_XOR, 2, {MEMORY,IMMEDIATE|BITS8,0,0,0}, nasm_bytecodes+19280, IF_8086|IF_SM},
9706 {I_XOR, 2, {MEMORY,IMMEDIATE|BITS16,0,0,0}, nasm_bytecodes+15186, IF_8086|IF_SM},
9707 {I_XOR, 2, {MEMORY,IMMEDIATE|BITS32,0,0,0}, nasm_bytecodes+15192, IF_386|IF_SM},
9708 ITEMPLATE_END
9711 static const struct itemplate instrux_XORPD[] = {
9712 {I_XORPD, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+16194, IF_WILLAMETTE|IF_SSE2|IF_SO},
9713 ITEMPLATE_END
9716 static const struct itemplate instrux_XORPS[] = {
9717 {I_XORPS, 2, {XMMREG,RM_XMM,0,0,0}, nasm_bytecodes+15444, IF_KATMAI|IF_SSE},
9718 ITEMPLATE_END
9721 static const struct itemplate instrux_XRSTOR[] = {
9722 {I_XRSTOR, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+15468, IF_NEHALEM},
9723 ITEMPLATE_END
9726 static const struct itemplate instrux_XSAVE[] = {
9727 {I_XSAVE, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+15462, IF_NEHALEM},
9728 ITEMPLATE_END
9731 static const struct itemplate instrux_XSETBV[] = {
9732 {I_XSETBV, 0, {0,0,0,0,0}, nasm_bytecodes+15456, IF_NEHALEM|IF_PRIV},
9733 ITEMPLATE_END
9736 static const struct itemplate instrux_XSHA1[] = {
9737 {I_XSHA1, 0, {0,0,0,0,0}, nasm_bytecodes+16344, IF_PENT|IF_CYRIX},
9738 ITEMPLATE_END
9741 static const struct itemplate instrux_XSHA256[] = {
9742 {I_XSHA256, 0, {0,0,0,0,0}, nasm_bytecodes+16350, IF_PENT|IF_CYRIX},
9743 ITEMPLATE_END
9746 static const struct itemplate instrux_XSTORE[] = {
9747 {I_XSTORE, 0, {0,0,0,0,0}, nasm_bytecodes+19360, IF_PENT|IF_CYRIX},
9748 ITEMPLATE_END
9751 static const struct itemplate instrux_CMOVcc[] = {
9752 {I_CMOVcc, 2, {REG16,MEMORY,0,0,0}, nasm_bytecodes+7316, IF_P6|IF_SM},
9753 {I_CMOVcc, 2, {REG16,REG16,0,0,0}, nasm_bytecodes+7316, IF_P6},
9754 {I_CMOVcc, 2, {REG32,MEMORY,0,0,0}, nasm_bytecodes+7323, IF_P6|IF_SM},
9755 {I_CMOVcc, 2, {REG32,REG32,0,0,0}, nasm_bytecodes+7323, IF_P6},
9756 {I_CMOVcc, 2, {REG64,MEMORY,0,0,0}, nasm_bytecodes+7330, IF_X64|IF_SM},
9757 {I_CMOVcc, 2, {REG64,REG64,0,0,0}, nasm_bytecodes+7330, IF_X64},
9758 ITEMPLATE_END
9761 static const struct itemplate instrux_Jcc[] = {
9762 {I_Jcc, 1, {IMMEDIATE|NEAR,0,0,0,0}, nasm_bytecodes+7337, IF_386},
9763 {I_Jcc, 1, {IMMEDIATE|BITS16|NEAR,0,0,0,0}, nasm_bytecodes+7344, IF_386},
9764 {I_Jcc, 1, {IMMEDIATE|BITS32|NEAR,0,0,0,0}, nasm_bytecodes+7351, IF_386},
9765 {I_Jcc, 1, {IMMEDIATE|SHORT,0,0,0,0}, nasm_bytecodes+19286, IF_8086},
9766 {I_Jcc, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+19285, IF_8086},
9767 {I_Jcc, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+7352, IF_386},
9768 {I_Jcc, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+7358, IF_8086},
9769 {I_Jcc, 1, {IMMEDIATE,0,0,0,0}, nasm_bytecodes+19286, IF_8086},
9770 ITEMPLATE_END
9773 static const struct itemplate instrux_SETcc[] = {
9774 {I_SETcc, 1, {MEMORY,0,0,0,0}, nasm_bytecodes+15204, IF_386|IF_SB},
9775 {I_SETcc, 1, {REG8,0,0,0,0}, nasm_bytecodes+15204, IF_386},
9776 ITEMPLATE_END
9779 const struct itemplate * const nasm_instructions[] = {
9780 instrux_AAA,
9781 instrux_AAD,
9782 instrux_AAM,
9783 instrux_AAS,
9784 instrux_ADC,
9785 instrux_ADD,
9786 instrux_ADDPD,
9787 instrux_ADDPS,
9788 instrux_ADDSD,
9789 instrux_ADDSS,
9790 instrux_ADDSUBPD,
9791 instrux_ADDSUBPS,
9792 instrux_AESDEC,
9793 instrux_AESDECLAST,
9794 instrux_AESENC,
9795 instrux_AESENCLAST,
9796 instrux_AESIMC,
9797 instrux_AESKEYGENASSIST,
9798 instrux_AND,
9799 instrux_ANDNPD,
9800 instrux_ANDNPS,
9801 instrux_ANDPD,
9802 instrux_ANDPS,
9803 instrux_ARPL,
9804 instrux_BB0_RESET,
9805 instrux_BB1_RESET,
9806 instrux_BLENDPD,
9807 instrux_BLENDPS,
9808 instrux_BLENDVPD,
9809 instrux_BLENDVPS,
9810 instrux_BOUND,
9811 instrux_BSF,
9812 instrux_BSR,
9813 instrux_BSWAP,
9814 instrux_BT,
9815 instrux_BTC,
9816 instrux_BTR,
9817 instrux_BTS,
9818 instrux_CALL,
9819 instrux_CBW,
9820 instrux_CDQ,
9821 instrux_CDQE,
9822 instrux_CLC,
9823 instrux_CLD,
9824 instrux_CLFLUSH,
9825 instrux_CLGI,
9826 instrux_CLI,
9827 instrux_CLTS,
9828 instrux_CMC,
9829 instrux_CMP,
9830 instrux_CMPEQPD,
9831 instrux_CMPEQPS,
9832 instrux_CMPEQSD,
9833 instrux_CMPEQSS,
9834 instrux_CMPLEPD,
9835 instrux_CMPLEPS,
9836 instrux_CMPLESD,
9837 instrux_CMPLESS,
9838 instrux_CMPLTPD,
9839 instrux_CMPLTPS,
9840 instrux_CMPLTSD,
9841 instrux_CMPLTSS,
9842 instrux_CMPNEQPD,
9843 instrux_CMPNEQPS,
9844 instrux_CMPNEQSD,
9845 instrux_CMPNEQSS,
9846 instrux_CMPNLEPD,
9847 instrux_CMPNLEPS,
9848 instrux_CMPNLESD,
9849 instrux_CMPNLESS,
9850 instrux_CMPNLTPD,
9851 instrux_CMPNLTPS,
9852 instrux_CMPNLTSD,
9853 instrux_CMPNLTSS,
9854 instrux_CMPORDPD,
9855 instrux_CMPORDPS,
9856 instrux_CMPORDSD,
9857 instrux_CMPORDSS,
9858 instrux_CMPPD,
9859 instrux_CMPPS,
9860 instrux_CMPSB,
9861 instrux_CMPSD,
9862 instrux_CMPSQ,
9863 instrux_CMPSS,
9864 instrux_CMPSW,
9865 instrux_CMPUNORDPD,
9866 instrux_CMPUNORDPS,
9867 instrux_CMPUNORDSD,
9868 instrux_CMPUNORDSS,
9869 instrux_CMPXCHG,
9870 instrux_CMPXCHG16B,
9871 instrux_CMPXCHG486,
9872 instrux_CMPXCHG8B,
9873 instrux_COMEQPD,
9874 instrux_COMEQPS,
9875 instrux_COMEQSD,
9876 instrux_COMEQSS,
9877 instrux_COMFALSEPD,
9878 instrux_COMFALSEPS,
9879 instrux_COMFALSESD,
9880 instrux_COMFALSESS,
9881 instrux_COMISD,
9882 instrux_COMISS,
9883 instrux_COMLEPD,
9884 instrux_COMLEPS,
9885 instrux_COMLESD,
9886 instrux_COMLESS,
9887 instrux_COMLTPD,
9888 instrux_COMLTPS,
9889 instrux_COMLTSD,
9890 instrux_COMLTSS,
9891 instrux_COMNEQPD,
9892 instrux_COMNEQPS,
9893 instrux_COMNEQSD,
9894 instrux_COMNEQSS,
9895 instrux_COMNLEPD,
9896 instrux_COMNLEPS,
9897 instrux_COMNLESD,
9898 instrux_COMNLESS,
9899 instrux_COMNLTPD,
9900 instrux_COMNLTPS,
9901 instrux_COMNLTSD,
9902 instrux_COMNLTSS,
9903 instrux_COMORDPD,
9904 instrux_COMORDPS,
9905 instrux_COMORDSD,
9906 instrux_COMORDSS,
9907 instrux_COMPD,
9908 instrux_COMPS,
9909 instrux_COMSD,
9910 instrux_COMSS,
9911 instrux_COMTRUEPD,
9912 instrux_COMTRUEPS,
9913 instrux_COMTRUESD,
9914 instrux_COMTRUESS,
9915 instrux_COMUEQPD,
9916 instrux_COMUEQPS,
9917 instrux_COMUEQSD,
9918 instrux_COMUEQSS,
9919 instrux_COMULEPD,
9920 instrux_COMULEPS,
9921 instrux_COMULESD,
9922 instrux_COMULESS,
9923 instrux_COMULTPD,
9924 instrux_COMULTPS,
9925 instrux_COMULTSD,
9926 instrux_COMULTSS,
9927 instrux_COMUNEQPD,
9928 instrux_COMUNEQPS,
9929 instrux_COMUNEQSD,
9930 instrux_COMUNEQSS,
9931 instrux_COMUNLEPD,
9932 instrux_COMUNLEPS,
9933 instrux_COMUNLESD,
9934 instrux_COMUNLESS,
9935 instrux_COMUNLTPD,
9936 instrux_COMUNLTPS,
9937 instrux_COMUNLTSD,
9938 instrux_COMUNLTSS,
9939 instrux_COMUNORDPD,
9940 instrux_COMUNORDPS,
9941 instrux_COMUNORDSD,
9942 instrux_COMUNORDSS,
9943 instrux_CPUID,
9944 instrux_CPU_READ,
9945 instrux_CPU_WRITE,
9946 instrux_CQO,
9947 instrux_CRC32,
9948 instrux_CVTDQ2PD,
9949 instrux_CVTDQ2PS,
9950 instrux_CVTPD2DQ,
9951 instrux_CVTPD2PI,
9952 instrux_CVTPD2PS,
9953 instrux_CVTPH2PS,
9954 instrux_CVTPI2PD,
9955 instrux_CVTPI2PS,
9956 instrux_CVTPS2DQ,
9957 instrux_CVTPS2PD,
9958 instrux_CVTPS2PH,
9959 instrux_CVTPS2PI,
9960 instrux_CVTSD2SI,
9961 instrux_CVTSD2SS,
9962 instrux_CVTSI2SD,
9963 instrux_CVTSI2SS,
9964 instrux_CVTSS2SD,
9965 instrux_CVTSS2SI,
9966 instrux_CVTTPD2DQ,
9967 instrux_CVTTPD2PI,
9968 instrux_CVTTPS2DQ,
9969 instrux_CVTTPS2PI,
9970 instrux_CVTTSD2SI,
9971 instrux_CVTTSS2SI,
9972 instrux_CWD,
9973 instrux_CWDE,
9974 instrux_DAA,
9975 instrux_DAS,
9976 instrux_DB,
9977 instrux_DD,
9978 instrux_DEC,
9979 instrux_DIV,
9980 instrux_DIVPD,
9981 instrux_DIVPS,
9982 instrux_DIVSD,
9983 instrux_DIVSS,
9984 instrux_DMINT,
9985 instrux_DO,
9986 instrux_DPPD,
9987 instrux_DPPS,
9988 instrux_DQ,
9989 instrux_DT,
9990 instrux_DW,
9991 instrux_DY,
9992 instrux_EMMS,
9993 instrux_ENTER,
9994 instrux_EQU,
9995 instrux_EXTRACTPS,
9996 instrux_EXTRQ,
9997 instrux_F2XM1,
9998 instrux_FABS,
9999 instrux_FADD,
10000 instrux_FADDP,
10001 instrux_FBLD,
10002 instrux_FBSTP,
10003 instrux_FCHS,
10004 instrux_FCLEX,
10005 instrux_FCMOVB,
10006 instrux_FCMOVBE,
10007 instrux_FCMOVE,
10008 instrux_FCMOVNB,
10009 instrux_FCMOVNBE,
10010 instrux_FCMOVNE,
10011 instrux_FCMOVNU,
10012 instrux_FCMOVU,
10013 instrux_FCOM,
10014 instrux_FCOMI,
10015 instrux_FCOMIP,
10016 instrux_FCOMP,
10017 instrux_FCOMPP,
10018 instrux_FCOS,
10019 instrux_FDECSTP,
10020 instrux_FDISI,
10021 instrux_FDIV,
10022 instrux_FDIVP,
10023 instrux_FDIVR,
10024 instrux_FDIVRP,
10025 instrux_FEMMS,
10026 instrux_FENI,
10027 instrux_FFREE,
10028 instrux_FFREEP,
10029 instrux_FIADD,
10030 instrux_FICOM,
10031 instrux_FICOMP,
10032 instrux_FIDIV,
10033 instrux_FIDIVR,
10034 instrux_FILD,
10035 instrux_FIMUL,
10036 instrux_FINCSTP,
10037 instrux_FINIT,
10038 instrux_FIST,
10039 instrux_FISTP,
10040 instrux_FISTTP,
10041 instrux_FISUB,
10042 instrux_FISUBR,
10043 instrux_FLD,
10044 instrux_FLD1,
10045 instrux_FLDCW,
10046 instrux_FLDENV,
10047 instrux_FLDL2E,
10048 instrux_FLDL2T,
10049 instrux_FLDLG2,
10050 instrux_FLDLN2,
10051 instrux_FLDPI,
10052 instrux_FLDZ,
10053 instrux_FMADDPD,
10054 instrux_FMADDPS,
10055 instrux_FMADDSD,
10056 instrux_FMADDSS,
10057 instrux_FMSUBPD,
10058 instrux_FMSUBPS,
10059 instrux_FMSUBSD,
10060 instrux_FMSUBSS,
10061 instrux_FMUL,
10062 instrux_FMULP,
10063 instrux_FNCLEX,
10064 instrux_FNDISI,
10065 instrux_FNENI,
10066 instrux_FNINIT,
10067 instrux_FNMADDPD,
10068 instrux_FNMADDPS,
10069 instrux_FNMADDSD,
10070 instrux_FNMADDSS,
10071 instrux_FNMSUBPD,
10072 instrux_FNMSUBPS,
10073 instrux_FNMSUBSD,
10074 instrux_FNMSUBSS,
10075 instrux_FNOP,
10076 instrux_FNSAVE,
10077 instrux_FNSTCW,
10078 instrux_FNSTENV,
10079 instrux_FNSTSW,
10080 instrux_FPATAN,
10081 instrux_FPREM,
10082 instrux_FPREM1,
10083 instrux_FPTAN,
10084 instrux_FRCZPD,
10085 instrux_FRCZPS,
10086 instrux_FRCZSD,
10087 instrux_FRCZSS,
10088 instrux_FRNDINT,
10089 instrux_FRSTOR,
10090 instrux_FSAVE,
10091 instrux_FSCALE,
10092 instrux_FSETPM,
10093 instrux_FSIN,
10094 instrux_FSINCOS,
10095 instrux_FSQRT,
10096 instrux_FST,
10097 instrux_FSTCW,
10098 instrux_FSTENV,
10099 instrux_FSTP,
10100 instrux_FSTSW,
10101 instrux_FSUB,
10102 instrux_FSUBP,
10103 instrux_FSUBR,
10104 instrux_FSUBRP,
10105 instrux_FTST,
10106 instrux_FUCOM,
10107 instrux_FUCOMI,
10108 instrux_FUCOMIP,
10109 instrux_FUCOMP,
10110 instrux_FUCOMPP,
10111 instrux_FWAIT,
10112 instrux_FXAM,
10113 instrux_FXCH,
10114 instrux_FXRSTOR,
10115 instrux_FXSAVE,
10116 instrux_FXTRACT,
10117 instrux_FYL2X,
10118 instrux_FYL2XP1,
10119 instrux_GETSEC,
10120 instrux_HADDPD,
10121 instrux_HADDPS,
10122 instrux_HINT_NOP0,
10123 instrux_HINT_NOP1,
10124 instrux_HINT_NOP10,
10125 instrux_HINT_NOP11,
10126 instrux_HINT_NOP12,
10127 instrux_HINT_NOP13,
10128 instrux_HINT_NOP14,
10129 instrux_HINT_NOP15,
10130 instrux_HINT_NOP16,
10131 instrux_HINT_NOP17,
10132 instrux_HINT_NOP18,
10133 instrux_HINT_NOP19,
10134 instrux_HINT_NOP2,
10135 instrux_HINT_NOP20,
10136 instrux_HINT_NOP21,
10137 instrux_HINT_NOP22,
10138 instrux_HINT_NOP23,
10139 instrux_HINT_NOP24,
10140 instrux_HINT_NOP25,
10141 instrux_HINT_NOP26,
10142 instrux_HINT_NOP27,
10143 instrux_HINT_NOP28,
10144 instrux_HINT_NOP29,
10145 instrux_HINT_NOP3,
10146 instrux_HINT_NOP30,
10147 instrux_HINT_NOP31,
10148 instrux_HINT_NOP32,
10149 instrux_HINT_NOP33,
10150 instrux_HINT_NOP34,
10151 instrux_HINT_NOP35,
10152 instrux_HINT_NOP36,
10153 instrux_HINT_NOP37,
10154 instrux_HINT_NOP38,
10155 instrux_HINT_NOP39,
10156 instrux_HINT_NOP4,
10157 instrux_HINT_NOP40,
10158 instrux_HINT_NOP41,
10159 instrux_HINT_NOP42,
10160 instrux_HINT_NOP43,
10161 instrux_HINT_NOP44,
10162 instrux_HINT_NOP45,
10163 instrux_HINT_NOP46,
10164 instrux_HINT_NOP47,
10165 instrux_HINT_NOP48,
10166 instrux_HINT_NOP49,
10167 instrux_HINT_NOP5,
10168 instrux_HINT_NOP50,
10169 instrux_HINT_NOP51,
10170 instrux_HINT_NOP52,
10171 instrux_HINT_NOP53,
10172 instrux_HINT_NOP54,
10173 instrux_HINT_NOP55,
10174 instrux_HINT_NOP56,
10175 instrux_HINT_NOP57,
10176 instrux_HINT_NOP58,
10177 instrux_HINT_NOP59,
10178 instrux_HINT_NOP6,
10179 instrux_HINT_NOP60,
10180 instrux_HINT_NOP61,
10181 instrux_HINT_NOP62,
10182 instrux_HINT_NOP63,
10183 instrux_HINT_NOP7,
10184 instrux_HINT_NOP8,
10185 instrux_HINT_NOP9,
10186 instrux_HLT,
10187 instrux_HSUBPD,
10188 instrux_HSUBPS,
10189 instrux_IBTS,
10190 instrux_ICEBP,
10191 instrux_IDIV,
10192 instrux_IMUL,
10193 instrux_IN,
10194 instrux_INC,
10195 instrux_INCBIN,
10196 instrux_INSB,
10197 instrux_INSD,
10198 instrux_INSERTPS,
10199 instrux_INSERTQ,
10200 instrux_INSW,
10201 instrux_INT,
10202 instrux_INT01,
10203 instrux_INT03,
10204 instrux_INT1,
10205 instrux_INT3,
10206 instrux_INTO,
10207 instrux_INVD,
10208 instrux_INVEPT,
10209 instrux_INVLPG,
10210 instrux_INVLPGA,
10211 instrux_INVVPID,
10212 instrux_IRET,
10213 instrux_IRETD,
10214 instrux_IRETQ,
10215 instrux_IRETW,
10216 instrux_JCXZ,
10217 instrux_JECXZ,
10218 instrux_JMP,
10219 instrux_JMPE,
10220 instrux_JRCXZ,
10221 instrux_LAHF,
10222 instrux_LAR,
10223 instrux_LDDQU,
10224 instrux_LDMXCSR,
10225 instrux_LDS,
10226 instrux_LEA,
10227 instrux_LEAVE,
10228 instrux_LES,
10229 instrux_LFENCE,
10230 instrux_LFS,
10231 instrux_LGDT,
10232 instrux_LGS,
10233 instrux_LIDT,
10234 instrux_LLDT,
10235 instrux_LMSW,
10236 instrux_LOADALL,
10237 instrux_LOADALL286,
10238 instrux_LODSB,
10239 instrux_LODSD,
10240 instrux_LODSQ,
10241 instrux_LODSW,
10242 instrux_LOOP,
10243 instrux_LOOPE,
10244 instrux_LOOPNE,
10245 instrux_LOOPNZ,
10246 instrux_LOOPZ,
10247 instrux_LSL,
10248 instrux_LSS,
10249 instrux_LTR,
10250 instrux_LZCNT,
10251 instrux_MASKMOVDQU,
10252 instrux_MASKMOVQ,
10253 instrux_MAXPD,
10254 instrux_MAXPS,
10255 instrux_MAXSD,
10256 instrux_MAXSS,
10257 instrux_MFENCE,
10258 instrux_MINPD,
10259 instrux_MINPS,
10260 instrux_MINSD,
10261 instrux_MINSS,
10262 instrux_MONITOR,
10263 instrux_MONTMUL,
10264 instrux_MOV,
10265 instrux_MOVAPD,
10266 instrux_MOVAPS,
10267 instrux_MOVBE,
10268 instrux_MOVD,
10269 instrux_MOVDDUP,
10270 instrux_MOVDQ2Q,
10271 instrux_MOVDQA,
10272 instrux_MOVDQU,
10273 instrux_MOVHLPS,
10274 instrux_MOVHPD,
10275 instrux_MOVHPS,
10276 instrux_MOVLHPS,
10277 instrux_MOVLPD,
10278 instrux_MOVLPS,
10279 instrux_MOVMSKPD,
10280 instrux_MOVMSKPS,
10281 instrux_MOVNTDQ,
10282 instrux_MOVNTDQA,
10283 instrux_MOVNTI,
10284 instrux_MOVNTPD,
10285 instrux_MOVNTPS,
10286 instrux_MOVNTQ,
10287 instrux_MOVNTSD,
10288 instrux_MOVNTSS,
10289 instrux_MOVQ,
10290 instrux_MOVQ2DQ,
10291 instrux_MOVSB,
10292 instrux_MOVSD,
10293 instrux_MOVSHDUP,
10294 instrux_MOVSLDUP,
10295 instrux_MOVSQ,
10296 instrux_MOVSS,
10297 instrux_MOVSW,
10298 instrux_MOVSX,
10299 instrux_MOVSXD,
10300 instrux_MOVUPD,
10301 instrux_MOVUPS,
10302 instrux_MOVZX,
10303 instrux_MPSADBW,
10304 instrux_MUL,
10305 instrux_MULPD,
10306 instrux_MULPS,
10307 instrux_MULSD,
10308 instrux_MULSS,
10309 instrux_MWAIT,
10310 instrux_NEG,
10311 instrux_NOP,
10312 instrux_NOT,
10313 instrux_OR,
10314 instrux_ORPD,
10315 instrux_ORPS,
10316 instrux_OUT,
10317 instrux_OUTSB,
10318 instrux_OUTSD,
10319 instrux_OUTSW,
10320 instrux_PABSB,
10321 instrux_PABSD,
10322 instrux_PABSW,
10323 instrux_PACKSSDW,
10324 instrux_PACKSSWB,
10325 instrux_PACKUSDW,
10326 instrux_PACKUSWB,
10327 instrux_PADDB,
10328 instrux_PADDD,
10329 instrux_PADDQ,
10330 instrux_PADDSB,
10331 instrux_PADDSIW,
10332 instrux_PADDSW,
10333 instrux_PADDUSB,
10334 instrux_PADDUSW,
10335 instrux_PADDW,
10336 instrux_PALIGNR,
10337 instrux_PAND,
10338 instrux_PANDN,
10339 instrux_PAUSE,
10340 instrux_PAVEB,
10341 instrux_PAVGB,
10342 instrux_PAVGUSB,
10343 instrux_PAVGW,
10344 instrux_PBLENDVB,
10345 instrux_PBLENDW,
10346 instrux_PCLMULHQHQDQ,
10347 instrux_PCLMULHQLQDQ,
10348 instrux_PCLMULLQHQDQ,
10349 instrux_PCLMULLQLQDQ,
10350 instrux_PCLMULQDQ,
10351 instrux_PCMOV,
10352 instrux_PCMPEQB,
10353 instrux_PCMPEQD,
10354 instrux_PCMPEQQ,
10355 instrux_PCMPEQW,
10356 instrux_PCMPESTRI,
10357 instrux_PCMPESTRM,
10358 instrux_PCMPGTB,
10359 instrux_PCMPGTD,
10360 instrux_PCMPGTQ,
10361 instrux_PCMPGTW,
10362 instrux_PCMPISTRI,
10363 instrux_PCMPISTRM,
10364 instrux_PCOMB,
10365 instrux_PCOMD,
10366 instrux_PCOMEQB,
10367 instrux_PCOMEQD,
10368 instrux_PCOMEQQ,
10369 instrux_PCOMEQUB,
10370 instrux_PCOMEQUD,
10371 instrux_PCOMEQUQ,
10372 instrux_PCOMEQUW,
10373 instrux_PCOMEQW,
10374 instrux_PCOMFALSEB,
10375 instrux_PCOMFALSED,
10376 instrux_PCOMFALSEQ,
10377 instrux_PCOMFALSEUB,
10378 instrux_PCOMFALSEUD,
10379 instrux_PCOMFALSEUQ,
10380 instrux_PCOMFALSEUW,
10381 instrux_PCOMFALSEW,
10382 instrux_PCOMGEB,
10383 instrux_PCOMGED,
10384 instrux_PCOMGEQ,
10385 instrux_PCOMGEUB,
10386 instrux_PCOMGEUD,
10387 instrux_PCOMGEUQ,
10388 instrux_PCOMGEUW,
10389 instrux_PCOMGEW,
10390 instrux_PCOMGTB,
10391 instrux_PCOMGTD,
10392 instrux_PCOMGTQ,
10393 instrux_PCOMGTUB,
10394 instrux_PCOMGTUD,
10395 instrux_PCOMGTUQ,
10396 instrux_PCOMGTUW,
10397 instrux_PCOMGTW,
10398 instrux_PCOMLEB,
10399 instrux_PCOMLED,
10400 instrux_PCOMLEQ,
10401 instrux_PCOMLEUB,
10402 instrux_PCOMLEUD,
10403 instrux_PCOMLEUQ,
10404 instrux_PCOMLEUW,
10405 instrux_PCOMLEW,
10406 instrux_PCOMLTB,
10407 instrux_PCOMLTD,
10408 instrux_PCOMLTQ,
10409 instrux_PCOMLTUB,
10410 instrux_PCOMLTUD,
10411 instrux_PCOMLTUQ,
10412 instrux_PCOMLTUW,
10413 instrux_PCOMLTW,
10414 instrux_PCOMNEQB,
10415 instrux_PCOMNEQD,
10416 instrux_PCOMNEQQ,
10417 instrux_PCOMNEQUB,
10418 instrux_PCOMNEQUD,
10419 instrux_PCOMNEQUQ,
10420 instrux_PCOMNEQUW,
10421 instrux_PCOMNEQW,
10422 instrux_PCOMQ,
10423 instrux_PCOMTRUEB,
10424 instrux_PCOMTRUED,
10425 instrux_PCOMTRUEQ,
10426 instrux_PCOMTRUEUB,
10427 instrux_PCOMTRUEUD,
10428 instrux_PCOMTRUEUQ,
10429 instrux_PCOMTRUEUW,
10430 instrux_PCOMTRUEW,
10431 instrux_PCOMUB,
10432 instrux_PCOMUD,
10433 instrux_PCOMUQ,
10434 instrux_PCOMUW,
10435 instrux_PCOMW,
10436 instrux_PDISTIB,
10437 instrux_PERMPD,
10438 instrux_PERMPS,
10439 instrux_PEXTRB,
10440 instrux_PEXTRD,
10441 instrux_PEXTRQ,
10442 instrux_PEXTRW,
10443 instrux_PF2ID,
10444 instrux_PF2IW,
10445 instrux_PFACC,
10446 instrux_PFADD,
10447 instrux_PFCMPEQ,
10448 instrux_PFCMPGE,
10449 instrux_PFCMPGT,
10450 instrux_PFMAX,
10451 instrux_PFMIN,
10452 instrux_PFMUL,
10453 instrux_PFNACC,
10454 instrux_PFPNACC,
10455 instrux_PFRCP,
10456 instrux_PFRCPIT1,
10457 instrux_PFRCPIT2,
10458 instrux_PFRCPV,
10459 instrux_PFRSQIT1,
10460 instrux_PFRSQRT,
10461 instrux_PFRSQRTV,
10462 instrux_PFSUB,
10463 instrux_PFSUBR,
10464 instrux_PHADDBD,
10465 instrux_PHADDBQ,
10466 instrux_PHADDBW,
10467 instrux_PHADDD,
10468 instrux_PHADDDQ,
10469 instrux_PHADDSW,
10470 instrux_PHADDUBD,
10471 instrux_PHADDUBQ,
10472 instrux_PHADDUBW,
10473 instrux_PHADDUDQ,
10474 instrux_PHADDUWD,
10475 instrux_PHADDUWQ,
10476 instrux_PHADDW,
10477 instrux_PHADDWD,
10478 instrux_PHADDWQ,
10479 instrux_PHMINPOSUW,
10480 instrux_PHSUBBW,
10481 instrux_PHSUBD,
10482 instrux_PHSUBDQ,
10483 instrux_PHSUBSW,
10484 instrux_PHSUBW,
10485 instrux_PHSUBWD,
10486 instrux_PI2FD,
10487 instrux_PI2FW,
10488 instrux_PINSRB,
10489 instrux_PINSRD,
10490 instrux_PINSRQ,
10491 instrux_PINSRW,
10492 instrux_PMACHRIW,
10493 instrux_PMACSDD,
10494 instrux_PMACSDQH,
10495 instrux_PMACSDQL,
10496 instrux_PMACSSDD,
10497 instrux_PMACSSDQH,
10498 instrux_PMACSSDQL,
10499 instrux_PMACSSWD,
10500 instrux_PMACSSWW,
10501 instrux_PMACSWD,
10502 instrux_PMACSWW,
10503 instrux_PMADCSSWD,
10504 instrux_PMADCSWD,
10505 instrux_PMADDUBSW,
10506 instrux_PMADDWD,
10507 instrux_PMAGW,
10508 instrux_PMAXSB,
10509 instrux_PMAXSD,
10510 instrux_PMAXSW,
10511 instrux_PMAXUB,
10512 instrux_PMAXUD,
10513 instrux_PMAXUW,
10514 instrux_PMINSB,
10515 instrux_PMINSD,
10516 instrux_PMINSW,
10517 instrux_PMINUB,
10518 instrux_PMINUD,
10519 instrux_PMINUW,
10520 instrux_PMOVMSKB,
10521 instrux_PMOVSXBD,
10522 instrux_PMOVSXBQ,
10523 instrux_PMOVSXBW,
10524 instrux_PMOVSXDQ,
10525 instrux_PMOVSXWD,
10526 instrux_PMOVSXWQ,
10527 instrux_PMOVZXBD,
10528 instrux_PMOVZXBQ,
10529 instrux_PMOVZXBW,
10530 instrux_PMOVZXDQ,
10531 instrux_PMOVZXWD,
10532 instrux_PMOVZXWQ,
10533 instrux_PMULDQ,
10534 instrux_PMULHRIW,
10535 instrux_PMULHRSW,
10536 instrux_PMULHRWA,
10537 instrux_PMULHRWC,
10538 instrux_PMULHUW,
10539 instrux_PMULHW,
10540 instrux_PMULLD,
10541 instrux_PMULLW,
10542 instrux_PMULUDQ,
10543 instrux_PMVGEZB,
10544 instrux_PMVLZB,
10545 instrux_PMVNZB,
10546 instrux_PMVZB,
10547 instrux_POP,
10548 instrux_POPA,
10549 instrux_POPAD,
10550 instrux_POPAW,
10551 instrux_POPCNT,
10552 instrux_POPF,
10553 instrux_POPFD,
10554 instrux_POPFQ,
10555 instrux_POPFW,
10556 instrux_POR,
10557 instrux_PPERM,
10558 instrux_PREFETCH,
10559 instrux_PREFETCHNTA,
10560 instrux_PREFETCHT0,
10561 instrux_PREFETCHT1,
10562 instrux_PREFETCHT2,
10563 instrux_PREFETCHW,
10564 instrux_PROTB,
10565 instrux_PROTD,
10566 instrux_PROTQ,
10567 instrux_PROTW,
10568 instrux_PSADBW,
10569 instrux_PSHAB,
10570 instrux_PSHAD,
10571 instrux_PSHAQ,
10572 instrux_PSHAW,
10573 instrux_PSHLB,
10574 instrux_PSHLD,
10575 instrux_PSHLQ,
10576 instrux_PSHLW,
10577 instrux_PSHUFB,
10578 instrux_PSHUFD,
10579 instrux_PSHUFHW,
10580 instrux_PSHUFLW,
10581 instrux_PSHUFW,
10582 instrux_PSIGNB,
10583 instrux_PSIGND,
10584 instrux_PSIGNW,
10585 instrux_PSLLD,
10586 instrux_PSLLDQ,
10587 instrux_PSLLQ,
10588 instrux_PSLLW,
10589 instrux_PSRAD,
10590 instrux_PSRAW,
10591 instrux_PSRLD,
10592 instrux_PSRLDQ,
10593 instrux_PSRLQ,
10594 instrux_PSRLW,
10595 instrux_PSUBB,
10596 instrux_PSUBD,
10597 instrux_PSUBQ,
10598 instrux_PSUBSB,
10599 instrux_PSUBSIW,
10600 instrux_PSUBSW,
10601 instrux_PSUBUSB,
10602 instrux_PSUBUSW,
10603 instrux_PSUBW,
10604 instrux_PSWAPD,
10605 instrux_PTEST,
10606 instrux_PUNPCKHBW,
10607 instrux_PUNPCKHDQ,
10608 instrux_PUNPCKHQDQ,
10609 instrux_PUNPCKHWD,
10610 instrux_PUNPCKLBW,
10611 instrux_PUNPCKLDQ,
10612 instrux_PUNPCKLQDQ,
10613 instrux_PUNPCKLWD,
10614 instrux_PUSH,
10615 instrux_PUSHA,
10616 instrux_PUSHAD,
10617 instrux_PUSHAW,
10618 instrux_PUSHF,
10619 instrux_PUSHFD,
10620 instrux_PUSHFQ,
10621 instrux_PUSHFW,
10622 instrux_PXOR,
10623 instrux_RCL,
10624 instrux_RCPPS,
10625 instrux_RCPSS,
10626 instrux_RCR,
10627 instrux_RDM,
10628 instrux_RDMSR,
10629 instrux_RDPMC,
10630 instrux_RDSHR,
10631 instrux_RDTSC,
10632 instrux_RDTSCP,
10633 instrux_RESB,
10634 instrux_RESD,
10635 instrux_RESO,
10636 instrux_RESQ,
10637 instrux_REST,
10638 instrux_RESW,
10639 instrux_RESY,
10640 instrux_RET,
10641 instrux_RETF,
10642 instrux_RETN,
10643 instrux_ROL,
10644 instrux_ROR,
10645 instrux_ROUNDPD,
10646 instrux_ROUNDPS,
10647 instrux_ROUNDSD,
10648 instrux_ROUNDSS,
10649 instrux_RSDC,
10650 instrux_RSLDT,
10651 instrux_RSM,
10652 instrux_RSQRTPS,
10653 instrux_RSQRTSS,
10654 instrux_RSTS,
10655 instrux_SAHF,
10656 instrux_SAL,
10657 instrux_SALC,
10658 instrux_SAR,
10659 instrux_SBB,
10660 instrux_SCASB,
10661 instrux_SCASD,
10662 instrux_SCASQ,
10663 instrux_SCASW,
10664 instrux_SFENCE,
10665 instrux_SGDT,
10666 instrux_SHL,
10667 instrux_SHLD,
10668 instrux_SHR,
10669 instrux_SHRD,
10670 instrux_SHUFPD,
10671 instrux_SHUFPS,
10672 instrux_SIDT,
10673 instrux_SKINIT,
10674 instrux_SLDT,
10675 instrux_SMI,
10676 instrux_SMINT,
10677 instrux_SMINTOLD,
10678 instrux_SMSW,
10679 instrux_SQRTPD,
10680 instrux_SQRTPS,
10681 instrux_SQRTSD,
10682 instrux_SQRTSS,
10683 instrux_STC,
10684 instrux_STD,
10685 instrux_STGI,
10686 instrux_STI,
10687 instrux_STMXCSR,
10688 instrux_STOSB,
10689 instrux_STOSD,
10690 instrux_STOSQ,
10691 instrux_STOSW,
10692 instrux_STR,
10693 instrux_SUB,
10694 instrux_SUBPD,
10695 instrux_SUBPS,
10696 instrux_SUBSD,
10697 instrux_SUBSS,
10698 instrux_SVDC,
10699 instrux_SVLDT,
10700 instrux_SVTS,
10701 instrux_SWAPGS,
10702 instrux_SYSCALL,
10703 instrux_SYSENTER,
10704 instrux_SYSEXIT,
10705 instrux_SYSRET,
10706 instrux_TEST,
10707 instrux_UCOMISD,
10708 instrux_UCOMISS,
10709 instrux_UD0,
10710 instrux_UD1,
10711 instrux_UD2,
10712 instrux_UD2A,
10713 instrux_UD2B,
10714 instrux_UMOV,
10715 instrux_UNPCKHPD,
10716 instrux_UNPCKHPS,
10717 instrux_UNPCKLPD,
10718 instrux_UNPCKLPS,
10719 instrux_VADDPD,
10720 instrux_VADDPS,
10721 instrux_VADDSD,
10722 instrux_VADDSS,
10723 instrux_VADDSUBPD,
10724 instrux_VADDSUBPS,
10725 instrux_VAESDEC,
10726 instrux_VAESDECLAST,
10727 instrux_VAESENC,
10728 instrux_VAESENCLAST,
10729 instrux_VAESIMC,
10730 instrux_VAESKEYGENASSIST,
10731 instrux_VANDNPD,
10732 instrux_VANDNPS,
10733 instrux_VANDPD,
10734 instrux_VANDPS,
10735 instrux_VBLENDPD,
10736 instrux_VBLENDPS,
10737 instrux_VBLENDVPD,
10738 instrux_VBLENDVPS,
10739 instrux_VBROADCASTF128,
10740 instrux_VBROADCASTSD,
10741 instrux_VBROADCASTSS,
10742 instrux_VCMPEQPD,
10743 instrux_VCMPEQPS,
10744 instrux_VCMPEQSD,
10745 instrux_VCMPEQSS,
10746 instrux_VCMPEQ_OSPD,
10747 instrux_VCMPEQ_OSPS,
10748 instrux_VCMPEQ_OSSD,
10749 instrux_VCMPEQ_OSSS,
10750 instrux_VCMPEQ_UQPD,
10751 instrux_VCMPEQ_UQPS,
10752 instrux_VCMPEQ_UQSD,
10753 instrux_VCMPEQ_UQSS,
10754 instrux_VCMPEQ_USPD,
10755 instrux_VCMPEQ_USPS,
10756 instrux_VCMPEQ_USSD,
10757 instrux_VCMPEQ_USSS,
10758 instrux_VCMPFALSEPD,
10759 instrux_VCMPFALSEPS,
10760 instrux_VCMPFALSESD,
10761 instrux_VCMPFALSESS,
10762 instrux_VCMPFALSE_OSPD,
10763 instrux_VCMPFALSE_OSPS,
10764 instrux_VCMPFALSE_OSSD,
10765 instrux_VCMPFALSE_OSSS,
10766 instrux_VCMPGEPD,
10767 instrux_VCMPGEPS,
10768 instrux_VCMPGESD,
10769 instrux_VCMPGESS,
10770 instrux_VCMPGE_OQPD,
10771 instrux_VCMPGE_OQPS,
10772 instrux_VCMPGE_OQSD,
10773 instrux_VCMPGE_OQSS,
10774 instrux_VCMPGTPD,
10775 instrux_VCMPGTPS,
10776 instrux_VCMPGTSD,
10777 instrux_VCMPGTSS,
10778 instrux_VCMPGT_OQPD,
10779 instrux_VCMPGT_OQPS,
10780 instrux_VCMPGT_OQSD,
10781 instrux_VCMPGT_OQSS,
10782 instrux_VCMPLEPD,
10783 instrux_VCMPLEPS,
10784 instrux_VCMPLESD,
10785 instrux_VCMPLESS,
10786 instrux_VCMPLE_OQPD,
10787 instrux_VCMPLE_OQPS,
10788 instrux_VCMPLE_OQSD,
10789 instrux_VCMPLE_OQSS,
10790 instrux_VCMPLTPD,
10791 instrux_VCMPLTPS,
10792 instrux_VCMPLTSD,
10793 instrux_VCMPLTSS,
10794 instrux_VCMPLT_OQPD,
10795 instrux_VCMPLT_OQPS,
10796 instrux_VCMPLT_OQSD,
10797 instrux_VCMPLT_OQSS,
10798 instrux_VCMPNEQPD,
10799 instrux_VCMPNEQPS,
10800 instrux_VCMPNEQSD,
10801 instrux_VCMPNEQSS,
10802 instrux_VCMPNEQ_OQPD,
10803 instrux_VCMPNEQ_OQPS,
10804 instrux_VCMPNEQ_OQSD,
10805 instrux_VCMPNEQ_OQSS,
10806 instrux_VCMPNEQ_OSPD,
10807 instrux_VCMPNEQ_OSPS,
10808 instrux_VCMPNEQ_OSSD,
10809 instrux_VCMPNEQ_OSSS,
10810 instrux_VCMPNEQ_USPD,
10811 instrux_VCMPNEQ_USPS,
10812 instrux_VCMPNEQ_USSD,
10813 instrux_VCMPNEQ_USSS,
10814 instrux_VCMPNGEPD,
10815 instrux_VCMPNGEPS,
10816 instrux_VCMPNGESD,
10817 instrux_VCMPNGESS,
10818 instrux_VCMPNGE_UQPD,
10819 instrux_VCMPNGE_UQPS,
10820 instrux_VCMPNGE_UQSD,
10821 instrux_VCMPNGE_UQSS,
10822 instrux_VCMPNGTPD,
10823 instrux_VCMPNGTPS,
10824 instrux_VCMPNGTSD,
10825 instrux_VCMPNGTSS,
10826 instrux_VCMPNGT_UQPD,
10827 instrux_VCMPNGT_UQPS,
10828 instrux_VCMPNGT_UQSD,
10829 instrux_VCMPNGT_UQSS,
10830 instrux_VCMPNLEPD,
10831 instrux_VCMPNLEPS,
10832 instrux_VCMPNLESD,
10833 instrux_VCMPNLESS,
10834 instrux_VCMPNLE_UQPD,
10835 instrux_VCMPNLE_UQPS,
10836 instrux_VCMPNLE_UQSD,
10837 instrux_VCMPNLE_UQSS,
10838 instrux_VCMPNLTPD,
10839 instrux_VCMPNLTPS,
10840 instrux_VCMPNLTSD,
10841 instrux_VCMPNLTSS,
10842 instrux_VCMPNLT_UQPD,
10843 instrux_VCMPNLT_UQPS,
10844 instrux_VCMPNLT_UQSD,
10845 instrux_VCMPNLT_UQSS,
10846 instrux_VCMPORDPD,
10847 instrux_VCMPORDPS,
10848 instrux_VCMPORDSD,
10849 instrux_VCMPORDSS,
10850 instrux_VCMPORD_SPD,
10851 instrux_VCMPORD_SPS,
10852 instrux_VCMPORD_SSD,
10853 instrux_VCMPORD_SSS,
10854 instrux_VCMPORS_SPD,
10855 instrux_VCMPORS_SPS,
10856 instrux_VCMPPD,
10857 instrux_VCMPPS,
10858 instrux_VCMPSD,
10859 instrux_VCMPSS,
10860 instrux_VCMPTRUEPD,
10861 instrux_VCMPTRUEPS,
10862 instrux_VCMPTRUESD,
10863 instrux_VCMPTRUESS,
10864 instrux_VCMPTRUE_USPD,
10865 instrux_VCMPTRUE_USPS,
10866 instrux_VCMPTRUE_USSD,
10867 instrux_VCMPTRUE_USSS,
10868 instrux_VCMPUNORDPD,
10869 instrux_VCMPUNORDPS,
10870 instrux_VCMPUNORDSD,
10871 instrux_VCMPUNORDSS,
10872 instrux_VCMPUNORD_SPD,
10873 instrux_VCMPUNORD_SPS,
10874 instrux_VCMPUNORD_SSD,
10875 instrux_VCMPUNORD_SSS,
10876 instrux_VCOMISD,
10877 instrux_VCOMISS,
10878 instrux_VCVTDQ2PD,
10879 instrux_VCVTDQ2PS,
10880 instrux_VCVTPD2DQ,
10881 instrux_VCVTPD2PS,
10882 instrux_VCVTPS2DQ,
10883 instrux_VCVTPS2PD,
10884 instrux_VCVTSD2SI,
10885 instrux_VCVTSD2SS,
10886 instrux_VCVTSI2SD,
10887 instrux_VCVTSI2SS,
10888 instrux_VCVTSS2SD,
10889 instrux_VCVTSS2SI,
10890 instrux_VCVTTPD2DQ,
10891 instrux_VCVTTPS2DQ,
10892 instrux_VCVTTSD2SI,
10893 instrux_VCVTTSS2SI,
10894 instrux_VDIVPD,
10895 instrux_VDIVPS,
10896 instrux_VDIVSD,
10897 instrux_VDIVSS,
10898 instrux_VDPPD,
10899 instrux_VDPPS,
10900 instrux_VERR,
10901 instrux_VERW,
10902 instrux_VEXTRACTF128,
10903 instrux_VEXTRACTPS,
10904 instrux_VFMADD123PD,
10905 instrux_VFMADD123PS,
10906 instrux_VFMADD123SD,
10907 instrux_VFMADD123SS,
10908 instrux_VFMADD132PD,
10909 instrux_VFMADD132PS,
10910 instrux_VFMADD132SD,
10911 instrux_VFMADD132SS,
10912 instrux_VFMADD213PD,
10913 instrux_VFMADD213PS,
10914 instrux_VFMADD213SD,
10915 instrux_VFMADD213SS,
10916 instrux_VFMADD231PD,
10917 instrux_VFMADD231PS,
10918 instrux_VFMADD231SD,
10919 instrux_VFMADD231SS,
10920 instrux_VFMADD312PD,
10921 instrux_VFMADD312PS,
10922 instrux_VFMADD312SD,
10923 instrux_VFMADD312SS,
10924 instrux_VFMADD321PD,
10925 instrux_VFMADD321PS,
10926 instrux_VFMADD321SD,
10927 instrux_VFMADD321SS,
10928 instrux_VFMADDSUB123PD,
10929 instrux_VFMADDSUB123PS,
10930 instrux_VFMADDSUB132PD,
10931 instrux_VFMADDSUB132PS,
10932 instrux_VFMADDSUB213PD,
10933 instrux_VFMADDSUB213PS,
10934 instrux_VFMADDSUB231PD,
10935 instrux_VFMADDSUB231PS,
10936 instrux_VFMADDSUB312PD,
10937 instrux_VFMADDSUB312PS,
10938 instrux_VFMADDSUB321PD,
10939 instrux_VFMADDSUB321PS,
10940 instrux_VFMSUB123PD,
10941 instrux_VFMSUB123PS,
10942 instrux_VFMSUB123SD,
10943 instrux_VFMSUB123SS,
10944 instrux_VFMSUB132PD,
10945 instrux_VFMSUB132PS,
10946 instrux_VFMSUB132SD,
10947 instrux_VFMSUB132SS,
10948 instrux_VFMSUB213PD,
10949 instrux_VFMSUB213PS,
10950 instrux_VFMSUB213SD,
10951 instrux_VFMSUB213SS,
10952 instrux_VFMSUB231PD,
10953 instrux_VFMSUB231PS,
10954 instrux_VFMSUB231SD,
10955 instrux_VFMSUB231SS,
10956 instrux_VFMSUB312PD,
10957 instrux_VFMSUB312PS,
10958 instrux_VFMSUB312SD,
10959 instrux_VFMSUB312SS,
10960 instrux_VFMSUB321PD,
10961 instrux_VFMSUB321PS,
10962 instrux_VFMSUB321SD,
10963 instrux_VFMSUB321SS,
10964 instrux_VFMSUBADD123PD,
10965 instrux_VFMSUBADD123PS,
10966 instrux_VFMSUBADD132PD,
10967 instrux_VFMSUBADD132PS,
10968 instrux_VFMSUBADD213PD,
10969 instrux_VFMSUBADD213PS,
10970 instrux_VFMSUBADD231PD,
10971 instrux_VFMSUBADD231PS,
10972 instrux_VFMSUBADD312PD,
10973 instrux_VFMSUBADD312PS,
10974 instrux_VFMSUBADD321PD,
10975 instrux_VFMSUBADD321PS,
10976 instrux_VFNMADD123PD,
10977 instrux_VFNMADD123PS,
10978 instrux_VFNMADD123SD,
10979 instrux_VFNMADD123SS,
10980 instrux_VFNMADD132PD,
10981 instrux_VFNMADD132PS,
10982 instrux_VFNMADD132SD,
10983 instrux_VFNMADD132SS,
10984 instrux_VFNMADD213PD,
10985 instrux_VFNMADD213PS,
10986 instrux_VFNMADD213SD,
10987 instrux_VFNMADD213SS,
10988 instrux_VFNMADD231PD,
10989 instrux_VFNMADD231PS,
10990 instrux_VFNMADD231SD,
10991 instrux_VFNMADD231SS,
10992 instrux_VFNMADD312PD,
10993 instrux_VFNMADD312PS,
10994 instrux_VFNMADD312SD,
10995 instrux_VFNMADD312SS,
10996 instrux_VFNMADD321PD,
10997 instrux_VFNMADD321PS,
10998 instrux_VFNMADD321SD,
10999 instrux_VFNMADD321SS,
11000 instrux_VFNMSUB123PD,
11001 instrux_VFNMSUB123PS,
11002 instrux_VFNMSUB123SD,
11003 instrux_VFNMSUB123SS,
11004 instrux_VFNMSUB132PD,
11005 instrux_VFNMSUB132PS,
11006 instrux_VFNMSUB132SD,
11007 instrux_VFNMSUB132SS,
11008 instrux_VFNMSUB213PD,
11009 instrux_VFNMSUB213PS,
11010 instrux_VFNMSUB213SD,
11011 instrux_VFNMSUB213SS,
11012 instrux_VFNMSUB231PD,
11013 instrux_VFNMSUB231PS,
11014 instrux_VFNMSUB231SD,
11015 instrux_VFNMSUB231SS,
11016 instrux_VFNMSUB312PD,
11017 instrux_VFNMSUB312PS,
11018 instrux_VFNMSUB312SD,
11019 instrux_VFNMSUB312SS,
11020 instrux_VFNMSUB321PD,
11021 instrux_VFNMSUB321PS,
11022 instrux_VFNMSUB321SD,
11023 instrux_VFNMSUB321SS,
11024 instrux_VHADDPD,
11025 instrux_VHADDPS,
11026 instrux_VHSUBPD,
11027 instrux_VHSUBPS,
11028 instrux_VINSERTF128,
11029 instrux_VINSERTPS,
11030 instrux_VLDDQU,
11031 instrux_VLDMXCSR,
11032 instrux_VLDQQU,
11033 instrux_VMASKMOVDQU,
11034 instrux_VMASKMOVPD,
11035 instrux_VMASKMOVPS,
11036 instrux_VMAXPD,
11037 instrux_VMAXPS,
11038 instrux_VMAXSD,
11039 instrux_VMAXSS,
11040 instrux_VMCALL,
11041 instrux_VMCLEAR,
11042 instrux_VMINPD,
11043 instrux_VMINPS,
11044 instrux_VMINSD,
11045 instrux_VMINSS,
11046 instrux_VMLAUNCH,
11047 instrux_VMLOAD,
11048 instrux_VMMCALL,
11049 instrux_VMOVAPD,
11050 instrux_VMOVAPS,
11051 instrux_VMOVD,
11052 instrux_VMOVDDUP,
11053 instrux_VMOVDQA,
11054 instrux_VMOVDQU,
11055 instrux_VMOVHLPS,
11056 instrux_VMOVHPD,
11057 instrux_VMOVHPS,
11058 instrux_VMOVLHPS,
11059 instrux_VMOVLPD,
11060 instrux_VMOVLPS,
11061 instrux_VMOVMSKPD,
11062 instrux_VMOVMSKPS,
11063 instrux_VMOVNTDQ,
11064 instrux_VMOVNTDQA,
11065 instrux_VMOVNTPD,
11066 instrux_VMOVNTPS,
11067 instrux_VMOVNTQQ,
11068 instrux_VMOVQ,
11069 instrux_VMOVQQA,
11070 instrux_VMOVQQU,
11071 instrux_VMOVSD,
11072 instrux_VMOVSHDUP,
11073 instrux_VMOVSLDUP,
11074 instrux_VMOVSS,
11075 instrux_VMOVUPD,
11076 instrux_VMOVUPS,
11077 instrux_VMPSADBW,
11078 instrux_VMPTRLD,
11079 instrux_VMPTRST,
11080 instrux_VMREAD,
11081 instrux_VMRESUME,
11082 instrux_VMRUN,
11083 instrux_VMSAVE,
11084 instrux_VMULPD,
11085 instrux_VMULPS,
11086 instrux_VMULSD,
11087 instrux_VMULSS,
11088 instrux_VMWRITE,
11089 instrux_VMXOFF,
11090 instrux_VMXON,
11091 instrux_VORPD,
11092 instrux_VORPS,
11093 instrux_VPABSB,
11094 instrux_VPABSD,
11095 instrux_VPABSW,
11096 instrux_VPACKSSDW,
11097 instrux_VPACKSSWB,
11098 instrux_VPACKUSDW,
11099 instrux_VPACKUSWB,
11100 instrux_VPADDB,
11101 instrux_VPADDD,
11102 instrux_VPADDQ,
11103 instrux_VPADDSB,
11104 instrux_VPADDSW,
11105 instrux_VPADDUSB,
11106 instrux_VPADDUSW,
11107 instrux_VPADDW,
11108 instrux_VPALIGNR,
11109 instrux_VPAND,
11110 instrux_VPANDN,
11111 instrux_VPAVGB,
11112 instrux_VPAVGW,
11113 instrux_VPBLENDVB,
11114 instrux_VPBLENDW,
11115 instrux_VPCLMULHQHQDQ,
11116 instrux_VPCLMULHQLQDQ,
11117 instrux_VPCLMULLQHQDQ,
11118 instrux_VPCLMULLQLQDQ,
11119 instrux_VPCLMULQDQ,
11120 instrux_VPCMPEQB,
11121 instrux_VPCMPEQD,
11122 instrux_VPCMPEQQ,
11123 instrux_VPCMPEQW,
11124 instrux_VPCMPESTRI,
11125 instrux_VPCMPESTRM,
11126 instrux_VPCMPGTB,
11127 instrux_VPCMPGTD,
11128 instrux_VPCMPGTQ,
11129 instrux_VPCMPGTW,
11130 instrux_VPCMPISTRI,
11131 instrux_VPCMPISTRM,
11132 instrux_VPERM2F128,
11133 instrux_VPERMIL2PD,
11134 instrux_VPERMIL2PS,
11135 instrux_VPERMILMO2PD,
11136 instrux_VPERMILMO2PS,
11137 instrux_VPERMILMZ2PD,
11138 instrux_VPERMILMZ2PS,
11139 instrux_VPERMILPD,
11140 instrux_VPERMILPS,
11141 instrux_VPERMILTD2PD,
11142 instrux_VPERMILTD2PS,
11143 instrux_VPEXTRB,
11144 instrux_VPEXTRD,
11145 instrux_VPEXTRQ,
11146 instrux_VPEXTRW,
11147 instrux_VPHADDD,
11148 instrux_VPHADDSW,
11149 instrux_VPHADDW,
11150 instrux_VPHMINPOSUW,
11151 instrux_VPHSUBD,
11152 instrux_VPHSUBSW,
11153 instrux_VPHSUBW,
11154 instrux_VPINSRB,
11155 instrux_VPINSRD,
11156 instrux_VPINSRQ,
11157 instrux_VPINSRW,
11158 instrux_VPMADDUBSW,
11159 instrux_VPMADDWD,
11160 instrux_VPMAXSB,
11161 instrux_VPMAXSD,
11162 instrux_VPMAXSW,
11163 instrux_VPMAXUB,
11164 instrux_VPMAXUD,
11165 instrux_VPMAXUW,
11166 instrux_VPMINSB,
11167 instrux_VPMINSD,
11168 instrux_VPMINSW,
11169 instrux_VPMINUB,
11170 instrux_VPMINUD,
11171 instrux_VPMINUW,
11172 instrux_VPMOVMSKB,
11173 instrux_VPMOVSXBD,
11174 instrux_VPMOVSXBQ,
11175 instrux_VPMOVSXBW,
11176 instrux_VPMOVSXDQ,
11177 instrux_VPMOVSXWD,
11178 instrux_VPMOVSXWQ,
11179 instrux_VPMOVZXBD,
11180 instrux_VPMOVZXBQ,
11181 instrux_VPMOVZXBW,
11182 instrux_VPMOVZXDQ,
11183 instrux_VPMOVZXWD,
11184 instrux_VPMOVZXWQ,
11185 instrux_VPMULDQ,
11186 instrux_VPMULHRSW,
11187 instrux_VPMULHUW,
11188 instrux_VPMULHW,
11189 instrux_VPMULLD,
11190 instrux_VPMULLW,
11191 instrux_VPMULUDQ,
11192 instrux_VPOR,
11193 instrux_VPSADBW,
11194 instrux_VPSHUFB,
11195 instrux_VPSHUFD,
11196 instrux_VPSHUFHW,
11197 instrux_VPSHUFLW,
11198 instrux_VPSIGNB,
11199 instrux_VPSIGND,
11200 instrux_VPSIGNW,
11201 instrux_VPSLLD,
11202 instrux_VPSLLDQ,
11203 instrux_VPSLLQ,
11204 instrux_VPSLLW,
11205 instrux_VPSRAD,
11206 instrux_VPSRAW,
11207 instrux_VPSRLD,
11208 instrux_VPSRLDQ,
11209 instrux_VPSRLQ,
11210 instrux_VPSRLW,
11211 instrux_VPSUBB,
11212 instrux_VPSUBD,
11213 instrux_VPSUBQ,
11214 instrux_VPSUBSB,
11215 instrux_VPSUBSW,
11216 instrux_VPSUBUSB,
11217 instrux_VPSUBUSW,
11218 instrux_VPSUBW,
11219 instrux_VPTEST,
11220 instrux_VPUNPCKHBW,
11221 instrux_VPUNPCKHDQ,
11222 instrux_VPUNPCKHQDQ,
11223 instrux_VPUNPCKHWD,
11224 instrux_VPUNPCKLBW,
11225 instrux_VPUNPCKLDQ,
11226 instrux_VPUNPCKLQDQ,
11227 instrux_VPUNPCKLWD,
11228 instrux_VPXOR,
11229 instrux_VRCPPS,
11230 instrux_VRCPSS,
11231 instrux_VROUNDPD,
11232 instrux_VROUNDPS,
11233 instrux_VROUNDSD,
11234 instrux_VROUNDSS,
11235 instrux_VRSQRTPS,
11236 instrux_VRSQRTSS,
11237 instrux_VSHUFPD,
11238 instrux_VSHUFPS,
11239 instrux_VSQRTPD,
11240 instrux_VSQRTPS,
11241 instrux_VSQRTSD,
11242 instrux_VSQRTSS,
11243 instrux_VSTMXCSR,
11244 instrux_VSUBPD,
11245 instrux_VSUBPS,
11246 instrux_VSUBSD,
11247 instrux_VSUBSS,
11248 instrux_VTESTPD,
11249 instrux_VTESTPS,
11250 instrux_VUCOMISD,
11251 instrux_VUCOMISS,
11252 instrux_VUNPCKHPD,
11253 instrux_VUNPCKHPS,
11254 instrux_VUNPCKLPD,
11255 instrux_VUNPCKLPS,
11256 instrux_VXORPD,
11257 instrux_VXORPS,
11258 instrux_VZEROALL,
11259 instrux_VZEROUPPER,
11260 instrux_WBINVD,
11261 instrux_WRMSR,
11262 instrux_WRSHR,
11263 instrux_XADD,
11264 instrux_XBTS,
11265 instrux_XCHG,
11266 instrux_XCRYPTCBC,
11267 instrux_XCRYPTCFB,
11268 instrux_XCRYPTCTR,
11269 instrux_XCRYPTECB,
11270 instrux_XCRYPTOFB,
11271 instrux_XGETBV,
11272 instrux_XLAT,
11273 instrux_XLATB,
11274 instrux_XOR,
11275 instrux_XORPD,
11276 instrux_XORPS,
11277 instrux_XRSTOR,
11278 instrux_XSAVE,
11279 instrux_XSETBV,
11280 instrux_XSHA1,
11281 instrux_XSHA256,
11282 instrux_XSTORE,
11283 instrux_CMOVcc,
11284 instrux_Jcc,
11285 instrux_SETcc,