Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / native_client / src / trusted / validator_ragel / instruction_definitions / xmm_instructions.def
1 # Copyright (c) 2011 The Native Client Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
4 ################################################################################
5 # This file describes instructions from AMD64 Architecture Programmer's Manual
6 #                               Volume 4: 128-Bit and 256-Bit Media Instructions
7 ################################################################################
8 # File format: see def_format.py
9 ######## ADDPD/VADDPD ##########################################################
10 addpd Wpd Vpd, 0x66 0x0f 0x58, CPUFeature_SSE2
11 vaddpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0x58, CPUFeature_AVX
12 ######## ADDPS/VADDPS ##########################################################
13 addps Wps Vps, 0x0f 0x58, CPUFeature_SSE
14 vaddps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0x58,
15     CPUFeature_AVX disabled_untested
16 ######## ADDSD/VADDSD ##########################################################
17 addsd Wsd Vsd, 0xf2 0x0f 0x58, CPUFeature_SSE2
18 vaddsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0x58,
19     CPUFeature_AVX disabled_untested
20 ######## ADDSS/VADDSS ##########################################################
21 addss Wss Vss, 0xf3 0x0f 0x58, CPUFeature_SSE
22 vaddss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0x58,
23     CPUFeature_AVX disabled_untested
24 ######## ADDSUBPD/VADDSUBPD ####################################################
25 addsubpd Wpd Vpd, 0x66 0x0f 0xd0, CPUFeature_SSE2
26 vaddsubpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xd0, CPUFeature_AVX
27 ######## ADDSUBPS/VADDSUBPS ####################################################
28 addsubps Wps Vps, 0xf2 0x0f 0xd0, CPUFeature_SSE
29 vaddsubps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.11 0xd0,
30     CPUFeature_AVX disabled_untested
31 ######## AESDEC/VAESDEC ########################################################
32 aesdec Wo Vo, 0x66 0x0f 0x38 0xde, CPUFeature_AES
33 vaesdec Wo Ho Vo, 0xc4 RXB.00010 x.src.0.01 0xde, CPUFeature_AESAVX
34 ######## AESDECLAST/VAESDECLAST ################################################
35 aesdeclast Wo Vo, 0x66 0x0f 0x38 0xdf, CPUFeature_AES
36 vaesdeclast Wo Ho Vo, 0xc4 RXB.00010 x.src.0.01 0xdf, CPUFeature_AESAVX
37 ######## AESENC/VAESENC ########################################################
38 aesenc Wo Vo, 0x66 0x0f 0x38 0xdc, CPUFeature_AES
39 vaesenc Wo Ho Vo, 0xc4 RXB.00010 x.src.0.01 0xdc, CPUFeature_AESAVX
40 ######## AESENCLAST/VAESENCLAST ################################################
41 aesenclast Wo Vo, 0x66 0x0f 0x38 0xdd, CPUFeature_AES
42 vaesenclast Wo Ho Vo, 0xc4 RXB.00010 x.src.0.01 0xdd, CPUFeature_AESAVX
43 ######## AESIMC/VAESIMC ########################################################
44 aesimc Wo Vo, 0x66 0x0f 0x38 0xdb, CPUFeature_AES
45 vaesimc Wo Vo, 0xc4 RXB.00010 x.src.0.01 0xdb, CPUFeature_AESAVX
46 ######## AESKEYGENASSIST/VAESKEYGENASSIST ######################################
47 aeskeygenassist Ib Wo Vo, 0x66 0x0f 0x3a 0xdf, CPUFeature_AES
48 vaeskeygenassist Ib Wo Vo, 0xc4 RXB.00011 x.src.0.01 0xdf, CPUFeature_AESAVX
49 ######## ANDNPD/VANDNPD ########################################################
50 andnpd Wpd Vpd, 0x66 0x0f 0x55, CPUFeature_SSE2
51 vandnpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0x55, CPUFeature_AVX
52 ######## ANDNPS/VANDNPS ########################################################
53 andnps Wps Vps, 0x0f 0x55, CPUFeature_SSE
54 vandnps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0x55,
55     CPUFeature_AVX disabled_untested
56 ######## ANDPD/VANDPD ##########################################################
57 andpd Wpd Vpd, 0x66 0x0f 0x54, CPUFeature_SSE2
58 vandpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0x54, CPUFeature_AVX
59 ######## ANDPS/VANDPS ##########################################################
60 andps Wps Vps, 0x0f 0x54, CPUFeature_SSE
61 vandps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0x54,
62     CPUFeature_AVX disabled_untested
63 ######## BLENDPD/VBLENDPD ######################################################
64 blendpd Ib Wpd Vpd, 0x66 0x0f 0x3a 0x0d, CPUFeature_SSE41
65 vblendpd Ib Wpdx Hpdx Vpdx, 0xc4 RXB.00011 x.src.L.01 0x0d,
66     CPUFeature_AVX disabled_untested
67 ######## BLENDPS/VBLENDPS ######################################################
68 blendps Ib Wps Vps, 0x66 0x0f 0x3a 0x0c, CPUFeature_SSE41
69 vblendps Ib Wpsx Hpsx Vpsx, 0xc4 RXB.00011 x.src.L.01 0x0c,
70     CPUFeature_AVX disabled_untested
71 ######## BLENDVPD/VBLENDVPD ####################################################
72 blendvpd apd Wpd Vpd, 0x66 0x0f 0x38 0x15, CPUFeature_SSE41
73 vblendvpd Lpdx Wpdx Hpdx Vpdx, 0xc4 RXB.00011 x.src.L.01 0x4b,
74     CPUFeature_AVX disabled_untested
75 ######## BLENDVPS/VBLENDVPS ####################################################
76 blendvps aps Wps Vps, 0x66 0x0f 0x38 0x14, CPUFeature_SSE41
77 vblendvps Lpsx Wpsx Hpsx Vpsx, 0xc4 RXB.00011 x.src.L.01 0x4a,
78     CPUFeature_AVX disabled_untested
79 ######## CMPPD/VCMPPD ##########################################################
80 # "cmppd/vcmppd" actually uses immediate byte as opcode extension.
81 # We don't care about fine differences and only recognize three-operand version
82 # in validator.
83 cmppd Ib Wpd Vpd, 0x66 0x0f 0xc2, CPUFeature_SSE2
84 cmpeqpd Wpd Vpd, 0x66 0x0f 0xc2 / 0x00, CPUFeature_SSE2 nacl-forbidden
85 cmpltpd Wpd Vpd, 0x66 0x0f 0xc2 / 0x01, CPUFeature_SSE2 nacl-forbidden
86 cmplepd Wpd Vpd, 0x66 0x0f 0xc2 / 0x02, CPUFeature_SSE2 nacl-forbidden
87 cmpunordpd Wpd Vpd, 0x66 0x0f 0xc2 / 0x03, CPUFeature_SSE2 nacl-forbidden
88 cmpneqpd Wpd Vpd, 0x66 0x0f 0xc2 / 0x04, CPUFeature_SSE2 nacl-forbidden
89 cmpnltpd Wpd Vpd, 0x66 0x0f 0xc2 / 0x05, CPUFeature_SSE2 nacl-forbidden
90 cmpnlepd Wpd Vpd, 0x66 0x0f 0xc2 / 0x06, CPUFeature_SSE2 nacl-forbidden
91 cmpordpd Wpd Vpd, 0x66 0x0f 0xc2 / 0x07, CPUFeature_SSE2 nacl-forbidden
92 vcmppd Ib Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2,
93     CPUFeature_AVX disabled_untested
94 vcmpeqpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x00,
95     CPUFeature_AVX nacl-forbidden
96 vcmpltpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x01,
97     CPUFeature_AVX nacl-forbidden
98 vcmplepd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x02,
99     CPUFeature_AVX nacl-forbidden
100 vcmpunordpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x03,
101     CPUFeature_AVX nacl-forbidden
102 vcmpneqpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x04,
103     CPUFeature_AVX nacl-forbidden
104 vcmpnltpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x05,
105     CPUFeature_AVX nacl-forbidden
106 vcmpnlepd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x06,
107     CPUFeature_AVX nacl-forbidden
108 vcmpordpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x07,
109     CPUFeature_AVX nacl-forbidden
110 vcmpeq_uqpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x08,
111     CPUFeature_AVX nacl-forbidden
112 vcmpngepd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x09,
113     CPUFeature_AVX nacl-forbidden
114 vcmpngtpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x0a,
115     CPUFeature_AVX nacl-forbidden
116 vcmpfalsepd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x0b,
117     CPUFeature_AVX nacl-forbidden
118 vcmpneq_oqpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x0c,
119     CPUFeature_AVX nacl-forbidden
120 vcmpgepd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x0d,
121     CPUFeature_AVX nacl-forbidden
122 vcmpgtpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x0e,
123     CPUFeature_AVX nacl-forbidden
124 vcmptruepd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x0f,
125     CPUFeature_AVX nacl-forbidden
126 vcmpeq_ospd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x10,
127     CPUFeature_AVX nacl-forbidden
128 vcmplt_oqpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x11,
129     CPUFeature_AVX nacl-forbidden
130 vcmple_oqpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x12,
131     CPUFeature_AVX nacl-forbidden
132 vcmpunord_spd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x13,
133     CPUFeature_AVX nacl-forbidden
134 vcmpneq_uspd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x14,
135     CPUFeature_AVX nacl-forbidden
136 vcmpnlt_uqpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x15,
137     CPUFeature_AVX nacl-forbidden
138 vcmpnle_uqpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x16,
139     CPUFeature_AVX nacl-forbidden
140 vcmpord_spd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x17,
141     CPUFeature_AVX nacl-forbidden
142 vcmpeq_uspd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x18,
143     CPUFeature_AVX nacl-forbidden
144 vcmpnge_uqpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x19,
145     CPUFeature_AVX nacl-forbidden
146 vcmpngt_uqpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x1a,
147     CPUFeature_AVX nacl-forbidden
148 vcmpfalse_ospd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x1b,
149     CPUFeature_AVX nacl-forbidden
150 vcmpneq_ospd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x1c,
151     CPUFeature_AVX nacl-forbidden
152 vcmpge_oqpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x1d,
153     CPUFeature_AVX nacl-forbidden
154 vcmpgt_oqpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x1e,
155     CPUFeature_AVX nacl-forbidden
156 vcmptrue_uspd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc2 / 0x1f,
157     CPUFeature_AVX nacl-forbidden
158 ######## CMPPS/VCMPPS ##########################################################
159 # "cmpps/vcmpps" actually uses immediate byte as opcode extension.
160 # We don't care about fine differences and only recognize three-operand version
161 # in validator.
162 cmpps Ib Wps Vps, 0x0f 0xc2, CPUFeature_SSE
163 cmpeqps Wps Vps, 0x0f 0xc2 / 0x00, CPUFeature_SSE nacl-forbidden
164 cmpltps Wps Vps, 0x0f 0xc2 / 0x01, CPUFeature_SSE nacl-forbidden
165 cmpleps Wps Vps, 0x0f 0xc2 / 0x02, CPUFeature_SSE nacl-forbidden
166 cmpunordps Wps Vps, 0x0f 0xc2 / 0x03, CPUFeature_SSE nacl-forbidden
167 cmpneqps Wps Vps, 0x0f 0xc2 / 0x04, CPUFeature_SSE nacl-forbidden
168 cmpnltps Wps Vps, 0x0f 0xc2 / 0x05, CPUFeature_SSE nacl-forbidden
169 cmpnleps Wps Vps, 0x0f 0xc2 / 0x06, CPUFeature_SSE nacl-forbidden
170 cmpordps Wps Vps, 0x0f 0xc2 / 0x07, CPUFeature_SSE nacl-forbidden
171 vcmpps Ib Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2,
172     CPUFeature_AVX disabled_untested
173 vcmpeqps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x00,
174     CPUFeature_AVX nacl-forbidden
175 vcmpltps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x01,
176     CPUFeature_AVX nacl-forbidden
177 vcmpleps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x02,
178     CPUFeature_AVX nacl-forbidden
179 vcmpunordps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x03,
180     CPUFeature_AVX nacl-forbidden
181 vcmpneqps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x04,
182     CPUFeature_AVX nacl-forbidden
183 vcmpnltps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x05,
184     CPUFeature_AVX nacl-forbidden
185 vcmpnleps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x06,
186     CPUFeature_AVX nacl-forbidden
187 vcmpordps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x07,
188     CPUFeature_AVX nacl-forbidden
189 vcmpeq_uqps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x08,
190     CPUFeature_AVX nacl-forbidden
191 vcmpngeps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x09,
192     CPUFeature_AVX nacl-forbidden
193 vcmpngtps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x0a,
194     CPUFeature_AVX nacl-forbidden
195 vcmpfalseps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x0b,
196     CPUFeature_AVX nacl-forbidden
197 vcmpneq_oqps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x0c,
198     CPUFeature_AVX nacl-forbidden
199 vcmpgeps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x0d,
200     CPUFeature_AVX nacl-forbidden
201 vcmpgtps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x0e,
202     CPUFeature_AVX nacl-forbidden
203 vcmptrueps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x0f,
204     CPUFeature_AVX nacl-forbidden
205 vcmpeq_osps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x10,
206     CPUFeature_AVX nacl-forbidden
207 vcmplt_oqps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x11,
208     CPUFeature_AVX nacl-forbidden
209 vcmple_oqps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x12,
210     CPUFeature_AVX nacl-forbidden
211 vcmpunord_sps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x13,
212     CPUFeature_AVX nacl-forbidden
213 vcmpneq_usps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x14,
214     CPUFeature_AVX nacl-forbidden
215 vcmpnlt_uqps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x15,
216     CPUFeature_AVX nacl-forbidden
217 vcmpnle_uqps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x16,
218     CPUFeature_AVX nacl-forbidden
219 vcmpord_sps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x17,
220     CPUFeature_AVX nacl-forbidden
221 vcmpeq_usps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x18,
222     CPUFeature_AVX nacl-forbidden
223 vcmpnge_uqps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x19,
224     CPUFeature_AVX nacl-forbidden
225 vcmpngt_uqps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x1a,
226     CPUFeature_AVX nacl-forbidden
227 vcmpfalse_osps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x1b,
228     CPUFeature_AVX nacl-forbidden
229 vcmpneq_osps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x1c,
230     CPUFeature_AVX nacl-forbidden
231 vcmpge_oqps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x1d,
232     CPUFeature_AVX nacl-forbidden
233 vcmpgt_oqps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x1e,
234     CPUFeature_AVX nacl-forbidden
235 vcmptrue_usps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc2 / 0x1f,
236     CPUFeature_AVX nacl-forbidden
237 ######## CMPSD/VCMPSD ##########################################################
238 # "cmpsd/vcmpsd" actually uses immediate byte as opcode extension.
239 # We don't care about fine differences and only recognize three-operand version
240 # in validator.
241 cmpsd Ib Wsd Vsd, 0xf2 0x0f 0xc2, CPUFeature_SSE2
242 cmpeqsd Wsd Vsd, 0xf2 0x0f 0xc2 / 0x00, CPUFeature_SSE2 nacl-forbidden
243 cmpltsd Wsd Vsd, 0xf2 0x0f 0xc2 / 0x01, CPUFeature_SSE2 nacl-forbidden
244 cmplesd Wsd Vsd, 0xf2 0x0f 0xc2 / 0x02, CPUFeature_SSE2 nacl-forbidden
245 cmpunordsd Wsd Vsd, 0xf2 0x0f 0xc2 / 0x03, CPUFeature_SSE2 nacl-forbidden
246 cmpneqsd Wsd Vsd, 0xf2 0x0f 0xc2 / 0x04, CPUFeature_SSE2 nacl-forbidden
247 cmpnltsd Wsd Vsd, 0xf2 0x0f 0xc2 / 0x05, CPUFeature_SSE2 nacl-forbidden
248 cmpnlesd Wsd Vsd, 0xf2 0x0f 0xc2 / 0x06, CPUFeature_SSE2 nacl-forbidden
249 cmpordsd Wsd Vsd, 0xf2 0x0f 0xc2 / 0x07, CPUFeature_SSE2 nacl-forbidden
250 vcmpsd Ib Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2,
251     CPUFeature_AVX disabled_untested
252 vcmpeqsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x00,
253     CPUFeature_AVX nacl-forbidden
254 vcmpltsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x01,
255     CPUFeature_AVX nacl-forbidden
256 vcmplesd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x02,
257     CPUFeature_AVX nacl-forbidden
258 vcmpunordsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x03,
259     CPUFeature_AVX nacl-forbidden
260 vcmpneqsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x04,
261     CPUFeature_AVX nacl-forbidden
262 vcmpnltsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x05,
263     CPUFeature_AVX nacl-forbidden
264 vcmpnlesd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x06,
265     CPUFeature_AVX nacl-forbidden
266 vcmpordsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x07,
267     CPUFeature_AVX nacl-forbidden
268 vcmpeq_uqsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x08,
269     CPUFeature_AVX nacl-forbidden
270 vcmpngesd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x09,
271     CPUFeature_AVX nacl-forbidden
272 vcmpngtsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x0a,
273     CPUFeature_AVX nacl-forbidden
274 vcmpfalsesd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x0b,
275     CPUFeature_AVX nacl-forbidden
276 vcmpneq_oqsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x0c,
277     CPUFeature_AVX nacl-forbidden
278 vcmpgesd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x0d,
279     CPUFeature_AVX nacl-forbidden
280 vcmpgtsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x0e,
281     CPUFeature_AVX nacl-forbidden
282 vcmptruesd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x0f,
283     CPUFeature_AVX nacl-forbidden
284 vcmpeq_ossd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x10,
285     CPUFeature_AVX nacl-forbidden
286 vcmplt_oqsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x11,
287     CPUFeature_AVX nacl-forbidden
288 vcmple_oqsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x12,
289     CPUFeature_AVX nacl-forbidden
290 vcmpunord_ssd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x13,
291     CPUFeature_AVX nacl-forbidden
292 vcmpneq_ussd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x14,
293     CPUFeature_AVX nacl-forbidden
294 vcmpnlt_uqsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x15,
295     CPUFeature_AVX nacl-forbidden
296 vcmpnle_uqsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x16,
297     CPUFeature_AVX nacl-forbidden
298 vcmpord_ssd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x17,
299     CPUFeature_AVX nacl-forbidden
300 vcmpeq_ussd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x18,
301     CPUFeature_AVX nacl-forbidden
302 vcmpnge_uqsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x19,
303     CPUFeature_AVX nacl-forbidden
304 vcmpngt_uqsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x1a,
305     CPUFeature_AVX nacl-forbidden
306 vcmpfalse_ossd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x1b,
307     CPUFeature_AVX nacl-forbidden
308 vcmpneq_ossd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x1c,
309     CPUFeature_AVX nacl-forbidden
310 vcmpge_oqsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x1d,
311     CPUFeature_AVX nacl-forbidden
312 vcmpgt_oqsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x1e,
313     CPUFeature_AVX nacl-forbidden
314 vcmptrue_ussd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0xc2 / 0x1f,
315     CPUFeature_AVX nacl-forbidden
316 ######## CMPSS/VCMPSS ##########################################################
317 # "cmpss/vcmpss" actually uses immediate byte as opcode extension.
318 # We don't care about fine differences and only recognize three-operand version
319 # in validator.
320 cmpss Ib Wss Vss, 0xf3 0x0f 0xc2, CPUFeature_SSE
321 cmpeqss Wss Vss, 0xf3 0x0f 0xc2 / 0x00, CPUFeature_SSE nacl-forbidden
322 cmpltss Wss Vss, 0xf3 0x0f 0xc2 / 0x01, CPUFeature_SSE nacl-forbidden
323 cmpless Wss Vss, 0xf3 0x0f 0xc2 / 0x02, CPUFeature_SSE nacl-forbidden
324 cmpunordss Wss Vss, 0xf3 0x0f 0xc2 / 0x03, CPUFeature_SSE nacl-forbidden
325 cmpneqss Wss Vss, 0xf3 0x0f 0xc2 / 0x04, CPUFeature_SSE nacl-forbidden
326 cmpnltss Wss Vss, 0xf3 0x0f 0xc2 / 0x05, CPUFeature_SSE nacl-forbidden
327 cmpnless Wss Vss, 0xf3 0x0f 0xc2 / 0x06, CPUFeature_SSE nacl-forbidden
328 cmpordss Wss Vss, 0xf3 0x0f 0xc2 / 0x07, CPUFeature_SSE nacl-forbidden
329 vcmpss Ib Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2,
330     CPUFeature_AVX disabled_untested
331 vcmpeqss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x00,
332     CPUFeature_AVX nacl-forbidden
333 vcmpltss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x01,
334     CPUFeature_AVX nacl-forbidden
335 vcmpless Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x02,
336     CPUFeature_AVX nacl-forbidden
337 vcmpunordss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x03,
338     CPUFeature_AVX nacl-forbidden
339 vcmpneqss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x04,
340     CPUFeature_AVX nacl-forbidden
341 vcmpnltss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x05,
342     CPUFeature_AVX nacl-forbidden
343 vcmpnless Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x06,
344     CPUFeature_AVX nacl-forbidden
345 vcmpordss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x07,
346     CPUFeature_AVX nacl-forbidden
347 vcmpeq_uqss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x08,
348     CPUFeature_AVX nacl-forbidden
349 vcmpngess Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x09,
350     CPUFeature_AVX nacl-forbidden
351 vcmpngtss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x0a,
352     CPUFeature_AVX nacl-forbidden
353 vcmpfalsess Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x0b,
354     CPUFeature_AVX nacl-forbidden
355 vcmpneq_oqss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x0c,
356     CPUFeature_AVX nacl-forbidden
357 vcmpgess Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x0d,
358     CPUFeature_AVX nacl-forbidden
359 vcmpgtss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x0e,
360     CPUFeature_AVX nacl-forbidden
361 vcmptruess Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x0f,
362     CPUFeature_AVX nacl-forbidden
363 vcmpeq_osss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x10,
364     CPUFeature_AVX nacl-forbidden
365 vcmplt_oqss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x11,
366     CPUFeature_AVX nacl-forbidden
367 vcmple_oqss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x12,
368     CPUFeature_AVX nacl-forbidden
369 vcmpunord_sss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x13,
370     CPUFeature_AVX nacl-forbidden
371 vcmpneq_usss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x14,
372     CPUFeature_AVX nacl-forbidden
373 vcmpnlt_uqss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x15,
374     CPUFeature_AVX nacl-forbidden
375 vcmpnle_uqss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x16,
376     CPUFeature_AVX nacl-forbidden
377 vcmpord_sss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x17,
378     CPUFeature_AVX nacl-forbidden
379 vcmpeq_usss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x18,
380     CPUFeature_AVX nacl-forbidden
381 vcmpnge_uqss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x19,
382     CPUFeature_AVX nacl-forbidden
383 vcmpngt_uqss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x1a,
384     CPUFeature_AVX nacl-forbidden
385 vcmpfalse_osss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x1b,
386     CPUFeature_AVX nacl-forbidden
387 vcmpneq_osss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x1c,
388     CPUFeature_AVX nacl-forbidden
389 vcmpge_oqss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x1d,
390     CPUFeature_AVX nacl-forbidden
391 vcmpgt_oqss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x1e,
392     CPUFeature_AVX nacl-forbidden
393 vcmptrue_usss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0xc2 / 0x1f,
394     CPUFeature_AVX nacl-forbidden
395 ######## COMISD/VCOMISD ########################################################
396 comisd Wsd Vsd, 0x66 0x0f 0x2f, CPUFeature_SSE2
397 vcomisd Wsd Vsd, 0xc4 RXB.00001 x.src.x.01 0x2f,
398     CPUFeature_AVX disabled_untested
399 ######## COMISS/VCOMISS ########################################################
400 comiss Wsd Vsd, 0x0f 0x2f, CPUFeature_SSE
401 vcomiss Wsd Vsd, 0xc4 RXB.00001 x.src.x.00 0x2f,
402     CPUFeature_AVX disabled_untested
403 ######## CVTDQ2PD/VCVTDQ2PD ####################################################
404 cvtdq2pd Wpj Vpd, 0xf3 0x0f 0xe6, CPUFeature_SSE2
405 vcvtdq2pd Wpj Vpdx, 0xc4 RXB.00001 x.1111.L.10 0xe6,
406     CPUFeature_AVX disabled_untested
407 ######## CVTDQ2PS/VCVTDQ2PS ####################################################
408 cvtdq2ps Wpj Vps, 0x0f 0x5b, CPUFeature_SSE2
409 vcvtdq2ps Wpjx Vpsx, 0xc4 RXB.00001 x.1111.L.00 0x5b,
410     CPUFeature_AVX disabled_untested
411 ######## CVTPD2DQ/VCVTPD2DQ ####################################################
412 cvtpd2dq Wpd Vpj, 0xf2 0x0f 0xe6, CPUFeature_SSE2
413 vcvtpd2dq Wpdx Vpj, 0xc4 RXB.00001 x.1111.L.11 0xe6,
414     CPUFeature_AVX disabled_untested
415 ######## CVTPD2PS/VCVTPD2PS ####################################################
416 cvtpd2ps Wpd Vps, 0x66 0x0f 0x5a, CPUFeature_SSE2
417 vcvtpd2ps Wpdx Vps, 0xc4 RXB.00001 x.1111.L.01 0x5a,
418     CPUFeature_AVX disabled_untested
419 ######## CVTPS2DQ/VCVTPS2DQ ####################################################
420 cvtps2dq Wps Vpj, 0x66 0x0f 0x5b, CPUFeature_SSE2
421 vcvtps2dq Wpsx Vpjx, 0xc4 RXB.00001 x.1111.L.01 0x5b,
422     CPUFeature_AVX disabled_untested
423 ######## CVTPS2PD/VCVTPS2PD ####################################################
424 cvtps2pd Wps Vpd, 0x0f 0x5a, CPUFeature_SSE2
425 vcvtps2pd Wps Vpdx, 0xc4 RXB.00001 x.1111.L.00 0x5a,
426     CPUFeature_AVX disabled_untested
427 ######## CVTSD2SI/VCVTSD2SI ####################################################
428 cvtsd2si Wsd Gy, 0xf2 0x0f 0x2d, CPUFeature_SSE2
429 vcvtsd2si Wsd Gy, 0xc4 RXB.00001 W.1111.x.11 0x2d,
430     CPUFeature_AVX disabled_untested
431 ######## CVTSD2SS/VCVTSD2SS ####################################################
432 cvtsd2ss Wsd Vss, 0xf2 0x0f 0x5a, CPUFeature_SSE2
433 vcvtsd2ss Wsd Ho Vo, 0xc4 RXB.00001 x.src.x.11 0x5a,
434     CPUFeature_AVX disabled_untested
435 ######## CVTSI2SD/VCVTSI2SD ####################################################
436 cvtsi2sd Ey Vsd, 0xf2 0x0f 0x2a, CPUFeature_SSE2
437 vcvtsi2sd Ey Ho Vo, 0xc4 RXB.00001 W.src.x.11 0x2a,
438     CPUFeature_AVX disabled_untested
439 ######## CVTSI2SS/VCVTSI2SS ####################################################
440 cvtsi2ss Ey Vss, 0xf3 0x0f 0x2a, CPUFeature_SSE
441 vcvtsi2ss Ey Ho Vo, 0xc4 RXB.00001 W.src.x.10 0x2a,
442     CPUFeature_AVX disabled_untested
443 ######## CVTSS2SD/VCVTSS2SD ####################################################
444 cvtss2sd Wss Vsd, 0xf3 0x0f 0x5a, CPUFeature_SSE2
445 vcvtss2sd Wss Ho Vo, 0xc4 RXB.00001 x.src.x.10 0x5a,
446     CPUFeature_AVX disabled_untested
447 ######## CVTSS2SI/VCVTSS2SI ####################################################
448 cvtss2si Wss Gy, 0xf3 0x0f 0x2d, CPUFeature_SSE
449 vcvtss2si Wss Gy, 0xc4 RXB.00001 W.1111.x.10 0x2d,
450     CPUFeature_AVX disabled_untested
451 ######## CVTTPD2DQ/VCVTTPD2DQ ##################################################
452 cvttpd2dq Wpd Vpj, 0x66 0x0f 0xe6, CPUFeature_SSE2
453 vcvttpd2dq Wpdx Vpj, 0xc4 RXB.00001 x.1111.L.01 0xe6,
454     CPUFeature_AVX disabled_untested
455 ######## CVTTPS2DQ/VCVTTPS2DQ ##################################################
456 cvttps2dq Wps Vpj, 0xf3 0x0f 0x5b, CPUFeature_SSE2
457 vcvttps2dq Wpsx Vpjx, 0xc4 RXB.00001 x.1111.L.10 0x5b,
458     CPUFeature_AVX disabled_untested
459 ######## CVTTSD2SI/VCVTTSD2SI ##################################################
460 cvttsd2si Wsd Gy, 0xf2 0x0f 0x2c, CPUFeature_SSE2
461 vcvttsd2si Wsd Gy, 0xc4 RXB.00001 W.1111.x.11 0x2c,
462     CPUFeature_AVX disabled_untested
463 ######## CVTTSS2SI/VCVTTSS2SI ##################################################
464 cvttss2si Wss Gy, 0xf3 0x0f 0x2c, CPUFeature_SSE
465 vcvttss2si Wss Gy, 0xc4 RXB.00001 W.1111.x.10 0x2c,
466     CPUFeature_AVX disabled_untested
467 ######## DIVPD/VDIVPD ##########################################################
468 divpd Wpd Vpd, 0x66 0x0f 0x5e, CPUFeature_SSE2
469 vdivpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0x5e, CPUFeature_AVX
470 ######## DIVPS/VDIVPS ##########################################################
471 divps Wps Vps, 0x0f 0x5e, CPUFeature_SSE
472 vdivps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0x5e,
473     CPUFeature_AVX disabled_untested
474 ######## DIVSD/VDIVSD ##########################################################
475 divsd Wsd Vsd, 0xf2 0x0f 0x5e, CPUFeature_SSE2
476 vdivsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0x5e,
477     CPUFeature_AVX disabled_untested
478 ######## DIVSS/VDIVSS ##########################################################
479 divss Wss Vss, 0xf3 0x0f 0x5e, CPUFeature_SSE
480 vdivss Wss Hss Vsd, 0xc4 RXB.00001 x.src.x.10 0x5e,
481     CPUFeature_AVX disabled_untested
482 ######## DPPD/DPPD #############################################################
483 dppd Ib Wpd Vpd, 0x66 0x0f 0x3a 0x41, CPUFeature_SSE41
484 vdppd Ib Wpd Hpd Vpd, 0xc4 RXB.00011 x.src.0.01 0x41,
485     CPUFeature_AVX disabled_untested
486 ######## DPPS/DPPS #############################################################
487 dpps Ib Wps Vps, 0x66 0x0f 0x3a 0x40, CPUFeature_SSE41
488 vdpps Ib Wpsx Hpsx Vpsx, 0xc4 RXB.00011 x.src.L.01 0x40,
489     CPUFeature_AVX disabled_untested
490 ######## EXTRACTPS/VEXTRACTPS ##################################################
491 extractps Ib Vps Md, 0x66 0x0f 0x3a 0x17, CPUFeature_SSE41
492 extractps Ib Vps Ry, 0x66 0x0f 0x3a 0x17, CPUFeature_SSE41
493 vextractps Ib Vps Mss, 0xc4 RXB.00011 x.1111.0.01 0x17,
494     CPUFeature_AVX disabled_untested
495 ######## EXTRQ #################################################################
496 # This instruction is perfectly safe but it's disallowed because xed does not
497 # know it
498 extrq ib Ib Uq, 0x66 0x0f 0x78 /0, CPUFeature_SSE4A nacl-forbidden
499 extrq Uq Vq, 0x66 0x0f 0x79, CPUFeature_SSE4A
500 ######## HADDPD/VHADDPD ########################################################
501 haddpd Wpd Vpd, 0x66 0x0f 0x7c, CPUFeature_SSE3
502 vhaddpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0x7c, CPUFeature_AVX
503 ######## HADDPS/VHADDPS ########################################################
504 haddps Wps Vps, 0xf2 0x0f 0x7c, CPUFeature_SSE3
505 vhaddps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.11 0x7c,
506     CPUFeature_AVX disabled_untested
507 ######## HSUBPD/VHSUBPD ########################################################
508 hsubpd Wpd Vpd, 0x66 0x0f 0x7d, CPUFeature_SSE3
509 vhsubpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0x7d, CPUFeature_AVX
510 ######## HSUBPS/VHSUBPS ########################################################
511 hsubps Wps Vps, 0xf2 0x0f 0x7d, CPUFeature_SSE3
512 vhsubps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.11 0x7d,
513     CPUFeature_AVX disabled_untested
514 ######## INSERTPS/VINSERTPS ####################################################
515 insertps Ib Md Vps, 0x66 0x0f 0x3a 0x21, CPUFeature_SSE41
516 insertps Ib Uo Vps, 0x66 0x0f 0x3a 0x21, CPUFeature_SSE41
517 vinsertps Ib Md Ho Vo, 0xc4 RXB.00011 x.src.0.01 0x21,
518     CPUFeature_AVX disabled_untested
519 vinsertps Ib Uo Ho Vo, 0xc4 RXB.00011 x.src.0.01 0x21,
520     CPUFeature_AVX disabled_untested
521 ######## INSERTQ ###############################################################
522 insertq ib Ib Uq Vq, 0xf2 0x0f 0x78, CPUFeature_SSE4A
523 insertq Uq Vq, 0xf2 0x0f 0x79, CPUFeature_SSE4A
524 ######## LDDQU/VLDDQU ##########################################################
525 lddqu Mdq Vpd, 0xf2 0x0f 0xf0, CPUFeature_SSE3
526 vlddqu Mo Vo, 0xc4 RXB.00001 x.1111.0.11 0xf0,
527     CPUFeature_AVX disabled_untested
528 vlddqu Mdo Vdo, 0xc4 RXB.00001 x.1111.1.11 0xf0,
529     CPUFeature_AVX disabled_untested
530 ######## LDMXCSR/VLDMXCSR ######################################################
531 ldmxcsr Md, 0x0f 0xae /2, CPUFeature_SSE
532 vldmxcsr Md, 0xc4 RXB.00001 x.1111.0.00 0xae /2,
533     CPUFeature_AVX disabled_untested
534 ######## MASKMOVDQU/VMASKMOVDQU ################################################
535 maskmovdqu Upb Vpb, 0x66 0x0f 0xf7, CPUFeature_SSE2 nacl-amd64-forbidden
536 vmaskmovdqu Upb Vpb, 0xc4 RXB.00001 x.1111.0.01 0xf7,
537     CPUFeature_AVX disabled_untested nacl-amd64-forbidden
538 ######## MAXPD/VMAXPD ##########################################################
539 maxpd Wpd Vpd, 0x66 0x0f 0x5f, CPUFeature_SSE2
540 vmaxpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0x5f, CPUFeature_AVX
541 ######## MAXPS/VMAXPS ##########################################################
542 maxps Wps Vps, 0x0f 0x5f, CPUFeature_SSE
543 vmaxps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0x5f,
544     CPUFeature_AVX disabled_untested
545 ######## MAXSD/VMAXSD ##########################################################
546 maxsd Wsd Vsd, 0xf2 0x0f 0x5f, CPUFeature_SSE2
547 vmaxsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0x5f,
548     CPUFeature_AVX disabled_untested
549 ######## MAXSS/VMAXSS ##########################################################
550 maxss Wss Vss, 0xf3 0x0f 0x5f, CPUFeature_SSE
551 vmaxss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0x5f,
552     CPUFeature_AVX disabled_untested
553 ######## MINPD/VMINPD ##########################################################
554 minpd Wpd Vpd, 0x66 0x0f 0x5d, CPUFeature_SSE2
555 vminpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0x5d, CPUFeature_AVX
556 ######## MINPS/VMINPS ##########################################################
557 minps Wps Vps, 0x0f 0x5d, CPUFeature_SSE
558 vminps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0x5d,
559     CPUFeature_AVX disabled_untested
560 ######## MINSD/VMINSD ##########################################################
561 minsd Wsd Vsd, 0xf2 0x0f 0x5d, CPUFeature_SSE2
562 vminsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0x5d,
563     CPUFeature_AVX disabled_untested
564 ######## MINSS/VMINSS ##########################################################
565 minss Wss Vss, 0xf3 0x0f 0x5d, CPUFeature_SSE
566 vminss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0x5d,
567     CPUFeature_AVX disabled_untested
568 ######## MOVAPD/VMOVAPD ########################################################
569 movapd Wpd Vpd, 0x66 0x0f 0x28, CPUFeature_SSE2
570 movapd Vpd Wpd, 0x66 0x0f 0x29, CPUFeature_SSE2
571 vmovapd Wpdx Vpdx, 0xc4 RXB.00001 x.1111.L.01 0x28,
572     CPUFeature_AVX disabled_untested
573 vmovapd Vpdx Wpdx, 0xc4 RXB.00001 x.1111.L.01 0x29,
574     CPUFeature_AVX disabled_untested
575 ######## MOVAPS/VMOVAPS ########################################################
576 movaps Wps Vps, 0x0f 0x28, CPUFeature_SSE
577 movaps Vps Wps, 0x0f 0x29, CPUFeature_SSE
578 vmovaps Wpsx Vpsx, 0xc4 RXB.00001 x.1111.L.00 0x28,
579     CPUFeature_AVX disabled_untested
580 vmovaps Vpsx Wpsx, 0xc4 RXB.00001 x.1111.L.00 0x29,
581     CPUFeature_AVX disabled_untested
582 ######## MOVD/VMOVD ############################################################
583 # Textbook definition of "movd/vmovd" as per AMD/Intel manuals looks like this:
584 #  movd Ey Vy, 0x66 0x0f 0x6e, CPUFeature_SSE2
585 #  movd Vy Ey, 0x66 0x0f 0x7e, CPUFeature_SSE2
586 #  vmovd Ey Vo, 0xc4 RXB.00001 W.1111.0.01 0x6e, CPUFeature_AVX
587 #  vmovd Vo Ey, 0xc4 RXB.00001 W.1111.1.01 0x7e, CPUFeature_AVX
588 # Objdump names 64bit version not "movd" but "movq".  We describe 32bit version
589 # and 64bit version separately.
590 movd Ed Vq, 0x66 0x0f 0x6e, norexw CPUFeature_SSE2
591 movd Vq Ed, 0x66 0x0f 0x7e, norexw CPUFeature_SSE2 nacl-amd64-zero-extends
592 movq Eq Vq, 0x66 rexw 0x0f 0x6e, amd64 CPUFeature_SSE2
593 movq Vq Eq, 0x66 rexw 0x0f 0x7e, amd64 CPUFeature_SSE2
594 vmovd Ed Vo, 0xc4 RXB.00001 0.1111.0.01 0x6e,
595     CPUFeature_AVX disabled_untested
596 vmovd Vo Ed, 0xc4 RXB.00001 0.1111.1.01 0x7e,
597     CPUFeature_AVX disabled_untested nacl-amd64-zero-extends
598 vmovq Eq Vo, 0xc4 RXB.00001 1.1111.0.01 0x6e,
599     amd64 CPUFeature_AVX disabled_untested
600 vmovq Vo Eq, 0xc4 RXB.00001 1.1111.1.01 0x7e,
601     amd64 CPUFeature_AVX disabled_untested
602 ######## MOVDDUP/VMOVDDUP ######################################################
603 movddup Wsd Vsd, 0xf2 0x0f 0x12, CPUFeature_SSE3
604 vmovddup Wsd Vo, 0xc4 RXB.00001 x.1111.0.11 0x12,
605     CPUFeature_AVX disabled_untested
606 vmovddup Wdo Vdo, 0xc4 RXB.00001 x.1111.1.11 0x12,
607     CPUFeature_AVX disabled_untested
608 ######## MOVDQA/VMOVDQA ########################################################
609 movdqa Wdq Vdq, 0x66 0x0f 0x6f, CPUFeature_SSE2
610 movdqa Vdq Wdq, 0x66 0x0f 0x7f, CPUFeature_SSE2
611 # TODO(shcherbina): according to manual it
612 # should be defined as Wpqwx, Vpqwx; merge.
613 vmovdqa Wdq Vdq, 0xc4 RXB.00001 x.1111.0.01 0x6f,
614     CPUFeature_AVX disabled_untested
615 vmovdqa Vdq Wdq, 0xc4 RXB.00001 x.1111.0.01 0x7f,
616     CPUFeature_AVX disabled_untested
617 vmovdqa Wfq Vfq, 0xc4 RXB.00001 x.1111.1.01 0x6f,
618     CPUFeature_AVX disabled_untested
619 vmovdqa Vfq Wfq, 0xc4 RXB.00001 x.1111.1.01 0x7f,
620     CPUFeature_AVX disabled_untested
621 ######## MOVDQU/VMOVDQU ########################################################
622 movdqu Wdq Vdq, 0xf3 0x0f 0x6f, CPUFeature_SSE2
623 movdqu Vdq Wdq, 0xf3 0x0f 0x7f, CPUFeature_SSE2
624 # TODO(shcherbina): according to manual it
625 # should be defined as Wpqwx, Vpqwx; merge and get rid of 'fq' in gen_dfa.py.
626 vmovdqu Wdq Vdq, 0xc4 RXB.00001 x.1111.0.10 0x6f,
627     CPUFeature_AVX disabled_untested
628 vmovdqu Vdq Wdq, 0xc4 RXB.00001 x.1111.0.10 0x7f,
629     CPUFeature_AVX disabled_untested
630 vmovdqu Wfq Vfq, 0xc4 RXB.00001 x.1111.1.10 0x6f,
631     CPUFeature_AVX disabled_untested
632 vmovdqu Vfq Wfq, 0xc4 RXB.00001 x.1111.1.10 0x7f,
633     CPUFeature_AVX disabled_untested
634 ######## MOVHLPS/VMOVHLPS ######################################################
635 movhlps Ups Vps, 0x0f 0x12, CPUFeature_SSE
636 vmovhlps Ups Hps Vps, 0xc4 RXB.00001 x.src.0.00 0x12,
637     CPUFeature_AVX disabled_untested
638 ######## MOVHPD/VMOVHPD ########################################################
639 movhpd Mq Vsd, 0x66 0x0f 0x16, CPUFeature_SSE2
640 movhpd Vsd Mq, 0x66 0x0f 0x17, CPUFeature_SSE2
641 vmovhpd Mq Hpd Vpd, 0xc4 RXB.00001 x.src.0.01 0x16,
642     CPUFeature_AVX disabled_untested
643 vmovhpd Vpd Mq, 0xc4 RXB.00001 x.src.0.01 0x17,
644     CPUFeature_AVX disabled_untested
645 ######## MOVHPS/VMOVHPS ########################################################
646 movhps Mq Vps, 0x0f 0x16, CPUFeature_SSE
647 movhps Vps Mq, 0x0f 0x17, CPUFeature_SSE
648 vmovhps Mq Hps Vps, 0xc4 RXB.00001 x.src.0.00 0x16,
649     CPUFeature_AVX disabled_untested
650 vmovhps Vps Mq, 0xc4 RXB.00001 x.src.0.00 0x17,
651     CPUFeature_AVX disabled_untested
652 ######## MOVLHPS/VMOVLHPS ######################################################
653 movlhps Uq Vps, 0x0f 0x16, CPUFeature_SSE
654 vmovlhps Ups Hps Vps, 0xc4 RXB.00001 x.src.0.00 0x16,
655     CPUFeature_AVX disabled_untested
656 ######## MOVLPD/VMOVLPD ########################################################
657 movlpd Mq Vsd, 0x66 0x0f 0x12, CPUFeature_SSE2
658 movlpd Vsd Mq, 0x66 0x0f 0x13, CPUFeature_SSE2
659 vmovlpd Mq Ho Vo, 0xc4 RXB.00001 x.src.0.01 0x12,
660     CPUFeature_AVX disabled_untested
661 vmovlpd Vo Mo, 0xc4 RXB.00001 x.1111.0.01 0x13,
662     CPUFeature_AVX disabled_untested
663 ######## MOVLPS/VMOVLPS ########################################################
664 movlps Mq Vq, 0x0f 0x12, CPUFeature_SSE
665 movlps Vq Mq, 0x0f 0x13, CPUFeature_SSE
666 vmovlps Mq Hps Vps, 0xc4 RXB.00001 x.src.0.00 0x12,
667     CPUFeature_AVX disabled_untested
668 vmovlps Vps Mq, 0xc4 RXB.00001 x.1111.0.00 0x13,
669     CPUFeature_AVX disabled_untested
670 ######## MOVMSKPD/VMOVMSKPD ####################################################
671 # Textbook definition of "movmskpd" as per AMD/Intel manuals looks like this:
672 #  movmskpd Upd Gd, 0x66 0x0f 0x50, CPUFeature_SSE2
673 # GNU as accepts this description, but objdump decodes last operand as "Gy".
674 # Technically it makes no difference: "movmskpd" clears everything except least
675 # significant two bits and this operation produces precisely idential output for
676 # "Gy" and "Gd" operands.  We'll use objdump's description.
677 movmskpd Upd Gy, 0x66 0x0f 0x50, CPUFeature_SSE2
678 vmovmskpd Updx Gd, 0xc4 RXB.00001 x.1111.L.01 0x50,
679     CPUFeature_AVX disabled_untested
680 ######## MOVMSKPS/VMOVMSKPS ####################################################
681 # Textbook definition of "movmskps" as per AMD/Intel manuals looks like this:
682 #  movmskps Upd Gd, 0x0f 0x50, CPUFeature_SSE2
683 # GNU as accepts this description, but objdump decodes last operand as "Gy".
684 # Technically it makes no difference: "movmskps" clears everything except least
685 # significant four bits and this operation produces precisely idential output
686 # for "Gy" and "Gd" operands.  We'll use objdump's description.
687 movmskps Ups Gy, 0x0f 0x50, CPUFeature_SSE
688 vmovmskps Upsx Gd, 0xc4 RXB.00001 x.1111.L.00 0x50,
689     CPUFeature_AVX disabled_untested
690 ######## MOVNTDQ/VMOVNTDQ ######################################################
691 movntdq Vdq Mdq, 0x66 0x0f 0xe7, CPUFeature_SSE2
692 vmovntdq Vo Mo, 0xc4 RXB.00001 x.1111.0.01 0xe7,
693     CPUFeature_AVX disabled_untested
694 vmovntdq Vdo Mdo, 0xc4 RXB.00001 x.1111.1.01 0xe7,
695     CPUFeature_AVX disabled_untested
696 ######## MOVNTDQA/VMOVNTDQA ####################################################
697 movntdqa Mo Vo, 0x66 0x0f 0x38 0x2a, CPUFeature_SSE41
698 vmovntdqa Mo Vo, 0xc4 RXB.00010 x.1111.0.01 0x2a,
699     CPUFeature_AVX disabled_untested
700 ######## MOVNTPD/VMOVNTPD ######################################################
701 movntpd Vpd Mpd, 0x66 0x0f 0x2b, CPUFeature_SSE2
702 vmovntpd Vpdx Mpdx, 0xc4 RXB.00001 x.1111.L.01 0x2b,
703     CPUFeature_AVX disabled_untested
704 ######## MOVNTPS/VMOVNTPS ######################################################
705 movntps Vps Mps, 0x0f 0x2b, CPUFeature_SSE
706 vmovntps Vpsx Mpsx, 0xc4 RXB.00001 x.1111.L.00 0x2b,
707     CPUFeature_AVX disabled_untested
708 ######## MOVNTSD ###############################################################
709 movntsd Vsd Mq, 0xf2 0x0f 0x2b, CPUFeature_SSE4A
710 ######## MOVNTSS ###############################################################
711 movntss Vss Md, 0xf3 0x0f 0x2b, CPUFeature_SSE4A
712 ######## MOVQ/VMOVQ ############################################################
713 movq Wq Vq, 0xf3 0x0f 0x7e, CPUFeature_SSE2
714 movq Vq Wq, 0x66 0x0f 0xd6, CPUFeature_SSE2
715 vmovq Mq Vo, 0xc4 RXB.00001 x.1111.0.10 0x7e,
716     CPUFeature_AVX disabled_untested
717 vmovq Uq Vo, 0xc4 RXB.00001 x.1111.0.10 0x7e,
718     CPUFeature_AVX disabled_untested
719 vmovq Vq Wq, 0xc4 RXB.00001 x.1111.1.01 0xd6,
720     CPUFeature_AVX disabled_untested
721 ######## MOVSD/VMOVSD ##########################################################
722 movsd Wsd Vsd, 0xf2 0x0f 0x10, CPUFeature_SSE2
723 movsd Vsd Wsd, 0xf2 0x0f 0x11, CPUFeature_SSE2
724 vmovsd Mq Vsd, 0xc4 RXB.00001 x.1111.0.11 0x10,
725     CPUFeature_AVX disabled_untested
726 vmovsd Vsd Mq, 0xc4 RXB.00001 x.1111.0.11 0x11,
727     CPUFeature_AVX disabled_untested
728 vmovsd Usd Hsd Vsd, 0xc4 RXB.00001 x.src.1.11 0x10,
729     CPUFeature_AVX disabled_untested
730 vmovsd Vsd Hsd Usd, 0xc4 RXB.00001 x.src.1.11 0x11,
731     CPUFeature_AVX disabled_untested
732 ######## MOVSHDUP/VMOVSSDUP ####################################################
733 movshdup Wps Vps, 0xf3 0x0f 0x16, CPUFeature_SSE3
734 vmovshdup Wpsx Vpsx, 0xc4 RXB.00001 x.1111.L.10 0x16,
735     CPUFeature_AVX disabled_untested
736 ######## MOVSLDUP/VMOVSLDUP ####################################################
737 movsldup Wps Vps, 0xf3 0x0f 0x12, CPUFeature_SSE3
738 vmovsldup Wpsx Vpsx, 0xc4 RXB.00001 x.1111.L.10 0x12,
739     CPUFeature_AVX disabled_untested
740 ######## MOVSS/VMOVSS ##########################################################
741 movss Wss Vss, 0xf3 0x0f 0x10, CPUFeature_SSE
742 movss Vss Wss, 0xf3 0x0f 0x11, CPUFeature_SSE
743 vmovss Md Vss, 0xc4 RXB.00001 x.1111.0.10 0x10,
744     CPUFeature_AVX disabled_untested
745 vmovss Vss Md, 0xc4 RXB.00001 x.1111.0.10 0x11,
746     CPUFeature_AVX disabled_untested
747 vmovss Uss Hss Vsd, 0xc4 RXB.00001 x.src.1.10 0x10,
748     CPUFeature_AVX disabled_untested
749 vmovss Vss Hss Usd, 0xc4 RXB.00001 x.src.1.10 0x11,
750     CPUFeature_AVX disabled_untested
751 ######## MOVUPD/VMOVUPD ########################################################
752 movupd Wpd Vpd, 0x66 0x0f 0x10, CPUFeature_SSE2
753 movupd Vpd Wpd, 0x66 0x0f 0x11, CPUFeature_SSE2
754 vmovupd Wpdx Vpdx, 0xc4 RXB.00001 x.1111.L.01 0x10,
755     CPUFeature_AVX disabled_untested
756 vmovupd Vpdx Wpdx, 0xc4 RXB.00001 x.1111.L.01 0x11,
757     CPUFeature_AVX disabled_untested
758 ######## MOVUPS/VMOVUPS ########################################################
759 movups Wsd Vsd, 0x0f 0x10, CPUFeature_SSE
760 movups Vsd Wsd, 0x0f 0x11, CPUFeature_SSE
761 vmovups Wpsx Vpsx, 0xc4 RXB.00001 x.1111.L.00 0x10,
762     CPUFeature_AVX disabled_untested
763 vmovups Vpsx Wpsx, 0xc4 RXB.00001 x.1111.L.00 0x11,
764     CPUFeature_AVX disabled_untested
765 ######## MPSADBW/VMPSADBW ######################################################
766 mpsadbw Ib Wpk Vpk, 0x66 0x0f 0x3a 0x42, CPUFeature_SSE41
767 vmpsadbw Ib Wpk Hpk Vpi, 0xc4 RXB.00011 x.src.0.01 0x42,
768     CPUFeature_AVX disabled_untested
769 ######## MULPD/VMULPD ##########################################################
770 mulpd Wpd Vpd, 0x66 0x0f 0x59, CPUFeature_SSE2
771 vmulpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0x59, CPUFeature_AVX
772 ######## MULPS/VMULPS ##########################################################
773 mulps Wps Vps, 0x0f 0x59, CPUFeature_SSE
774 vmulps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0x59,
775     CPUFeature_AVX disabled_untested
776 ######## MULSD/VMULSD ##########################################################
777 mulsd Wsd Vsd, 0xf2 0x0f 0x59, CPUFeature_SSE2
778 vmulsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0x59,
779     CPUFeature_AVX disabled_untested
780 ######## MULSS/VMULSS ##########################################################
781 mulss Wps Vss, 0xf3 0x0f 0x59, CPUFeature_SSE
782 vmulss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0x59,
783     CPUFeature_AVX disabled_untested
784 ######## ORPD/VORPD ############################################################
785 orpd Wpd Vpd, 0x66 0x0f 0x56, CPUFeature_SSE2
786 vorpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0x56, CPUFeature_AVX
787 ######## ORPS/VORPS ############################################################
788 orps Wpd Vpd, 0x0f 0x56, CPUFeature_SSE
789 vorps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0x56,
790     CPUFeature_AVX disabled_untested
791 ######## PABSB/VPABSB ##########################################################
792 pabsb Wpk Vpk, 0x66 0x0f 0x38 0x1c, CPUFeature_SSSE3
793 vpabsb Wpk Vpk, 0xc4 RXB.00010 x.1111.0.01 0x1c,
794     CPUFeature_AVX disabled_untested
795 ######## PABSD/VPABSD ##########################################################
796 pabsd Wpj Vpj, 0x66 0x0f 0x38 0x1e, CPUFeature_SSSE3
797 vpabsd Wpj Vpj, 0xc4 RXB.00010 x.1111.0.01 0x1e,
798     CPUFeature_AVX disabled_untested
799 ######## PABSW/VPABSW ##########################################################
800 pabsw Wpi Vpi, 0x66 0x0f 0x38 0x1d, CPUFeature_SSSE3
801 vpabsw Wpi Vpi, 0xc4 RXB.00010 x.1111.0.01 0x1d,
802     CPUFeature_AVX disabled_untested
803 ######## PACKSSDW/VPACKSSDW ####################################################
804 packssdw Wdq Vdq, 0x66 0x0f 0x6b, CPUFeature_SSE2
805 vpackssdw Wpj Hpj Vpi, 0xc4 RXB.00001 0.src1.0.01 0x6b,
806     CPUFeature_AVX disabled_untested
807 ######## PACKSSWB/VPACKSSWB ####################################################
808 packsswb Wdq Vdq, 0x66 0x0f 0x63, CPUFeature_SSE2
809 vpacksswb Wpi Hpi Vpk, 0xc4 RXB.00001 x.src.0.01 0x63,
810     CPUFeature_AVX disabled_untested
811 ######## PACKUSDW/VPACKUSDW ####################################################
812 packusdw Wpj Vpi, 0x66 0x0f 0x38 0x2b, CPUFeature_SSE41
813 vpackusdw Wpj Hpj Vpi, 0xc4 RXB.00010 x.src.0.01 0x2b,
814     CPUFeature_AVX disabled_untested
815 ######## PACKUSWB/VPACKUSWB ####################################################
816 packuswb Wdq Vdq, 0x66 0x0f 0x67, CPUFeature_SSE2
817 vpackuswb Wpi Hpi Vpk, 0xc4 RXB.00001 x.src.0.01 0x67,
818     CPUFeature_AVX disabled_untested
819 ######## PADDB/VPADDB ##########################################################
820 paddb Wpk Vpk, 0x66 0x0f 0xfc, CPUFeature_SSE2
821 vpaddb Wpk Hpk Vpk, 0xc4 RXB.00001 x.src.0.01 0xfc,
822     CPUFeature_AVX disabled_untested
823 ######## PADDD/VPADDD ##########################################################
824 paddd Wpj Vpj, 0x66 0x0f 0xfe, CPUFeature_SSE2
825 vpaddd Wpj Hpj Vpj, 0xc4 RXB.00001 x.src.0.01 0xfe,
826     CPUFeature_AVX disabled_untested
827 ######## PADDQ/VPADDQ ##########################################################
828 paddq Wdq Vdq, 0x66 0x0f 0xd4, CPUFeature_SSE2
829 vpaddq Wpq Hpq Vpq, 0xc4 RXB.00001 x.src.0.01 0xd4,
830     CPUFeature_AVX disabled_untested
831 ######## PADDSB/VPADDSB ########################################################
832 paddsb Wpk Vpk, 0x66 0x0f 0xec, CPUFeature_SSE2
833 vpaddsb Wpk Hpk Vpk, 0xc4 RXB.00001 x.src.0.01 0xec,
834     CPUFeature_AVX disabled_untested
835 ######## PADDSW/VPADDSW ########################################################
836 paddsw Wpi Vpi, 0x66 0x0f 0xed, CPUFeature_SSE2
837 vpaddsw Wpi Hpi Vpi, 0xc4 RXB.00001 x.src.0.01 0xed,
838     CPUFeature_AVX disabled_untested
839 ######## PADDUSB/VPADDUSB ######################################################
840 paddusb Wpk Vpk, 0x66 0x0f 0xdc, CPUFeature_SSE2
841 vpaddusb Wpk Hpk Vpk, 0xc4 RXB.00001 x.src.0.01 0xdc,
842     CPUFeature_AVX disabled_untested
843 ######## PADDUSW/VPADDUSW ######################################################
844 paddusw Wpi Vpi, 0x66 0x0f 0xdd, CPUFeature_SSE2
845 vpaddusw Wpi Hpi Vpi, 0xc4 RXB.00001 x.src.0.01 0xdd,
846     CPUFeature_AVX disabled_untested
847 ######## PADDW/VPADDW ##########################################################
848 paddw Wpi Vpi, 0x66 0x0f 0xfd, CPUFeature_SSE2
849 vpaddw Wpi Hpi Vpi, 0xc4 RXB.00001 x.src.0.01 0xfd,
850     CPUFeature_AVX disabled_untested
851 ######## PALIGNR/VPALIGNR ######################################################
852 palignr Ib Wpb Vpb, 0x66 0x0f 0x3a 0x0f, CPUFeature_SSSE3
853 vpalignr Ib Wpb Hpb Vpb, 0xc4 RXB.00011 x.src.0.01 0x0f,
854     CPUFeature_AVX disabled_untested
855 ######## PAND/VPAND ############################################################
856 pand Wo Vo, 0x66 0x0f 0xdb, CPUFeature_SSE2
857 vpand Wo Ho Vo, 0xc4 RXB.00001 x.src.0.01 0xdb,
858     CPUFeature_AVX disabled_untested
859 ######## PANDN/VPANDN ##########################################################
860 pandn Wo Vo, 0x66 0x0f 0xdf, CPUFeature_SSE2
861 vpandn Wo Ho Vo, 0xc4 RXB.00001 x.src.0.01 0xdf,
862     CPUFeature_AVX disabled_untested
863 ######## PAVGB/VPAVGB ##########################################################
864 pavgb Wpk Vpk, 0x66 0x0f 0xe0, CPUFeature_SSE2
865 vpavgb Wpk Hpk Vpk, 0xc4 RXB.00001 x.src.0.01 0xe0,
866     CPUFeature_AVX disabled_untested
867 ######## PAVGW/VPAVGW ##########################################################
868 pavgw Wpi Vpi, 0x66 0x0f 0xe3, CPUFeature_SSE2
869 vpavgw Wpi Hpi Vpi, 0xc4 RXB.00001 x.src.0.01 0xe3,
870     CPUFeature_AVX disabled_untested
871 ######## PBLENDVB/VPBLENDVB ####################################################
872 pblendvb apb Wpb Vpb, 0x66 0x0f 0x38 0x10, CPUFeature_SSE41
873 vpblendvb Lpb Wpb Hpb Vpb, 0xc4 RXB.00011 0.src.0.01 0x4c,
874     CPUFeature_AVX disabled_untested
875 ######## PBLENDW/VPBLENDW ######################################################
876 pblendw Ib Wpw Vpw, 0x66 0x0f 0x3a 0x0e, CPUFeature_SSE41
877 vpblendw Ib Wpw Hpw Vpw, 0xc4 RXB.00011 x.src.0.01 0x0e,
878     CPUFeature_AVX disabled_untested
879 ######## PCLMULQDQ/VPCLMULQDQ ##################################################
880 # "pclmulqdq/vpclmulqdq" actually uses immediate byte as opcode extension.
881 # We don't care about fine differences and only recognize three-operand version
882 # in validator.
883 pclmulqdq Ib Wpq Vpq, 0x66 0x0f 0x3a 0x44, CPUFeature_CLMUL
884 pclmullqlqdq Wpq Vpq, 0x66 0x0f 0x3a 0x44 / 0x00,
885     CPUFeature_CLMUL nacl-forbidden
886 pclmulhqlqdq Wpq Vpq, 0x66 0x0f 0x3a 0x44 / 0x01,
887     CPUFeature_CLMUL nacl-forbidden
888 pclmullqhqdq Wpq Vpq, 0x66 0x0f 0x3a 0x44 / 0x10,
889     CPUFeature_CLMUL nacl-forbidden
890 pclmulhqhqdq Wpq Vpq, 0x66 0x0f 0x3a 0x44 / 0x11,
891     CPUFeature_CLMUL nacl-forbidden
892 vpclmulqdq Ib Wpq Hpq Vo, 0xc4 RXB.00011 x.src.0.01 0x44, CPUFeature_CLMULAVX
893 vpclmullqlqdq Wpq Hpq Vo, 0xc4 RXB.00011 x.src.0.01 0x44 / 0x00,
894     CPUFeature_CLMULAVX nacl-forbidden
895 vpclmulhqlqdq Wpq Hpq Vo, 0xc4 RXB.00011 x.src.0.01 0x44 / 0x01,
896     CPUFeature_CLMULAVX nacl-forbidden
897 vpclmullqhqdq Wpq Hpq Vo, 0xc4 RXB.00011 x.src.0.01 0x44 / 0x10,
898     CPUFeature_CLMULAVX nacl-forbidden
899 vpclmulhqhqdq Wpq Hpq Vo, 0xc4 RXB.00011 x.src.0.01 0x44 / 0x11,
900     CPUFeature_CLMULAVX nacl-forbidden
901 ######## PCMPEQB/VPCMPEQB ######################################################
902 pcmpeqb Wpk Vpb, 0x66 0x0f 0x74, CPUFeature_SSE2
903 vpcmpeqb Wpk Hpk Vpb, 0xc4 RXB.00001 x.src.0.01 0x74,
904     CPUFeature_AVX disabled_untested
905 ######## PCMPEQD/VPCMPEQD ######################################################
906 pcmpeqd Wpj Vpw, 0x66 0x0f 0x76, CPUFeature_SSE2
907 vpcmpeqd Wpj Hpj Vpw, 0xc4 RXB.00001 x.src.0.01 0x76,
908     CPUFeature_AVX disabled_untested
909 ######## PCMPEQQ/VPCMPEQQ ######################################################
910 pcmpeqq Wpq Vpq, 0x66 0x0f 0x38 0x29, CPUFeature_SSE41
911 vpcmpeqq Wpq Hpq Vpq, 0xc4 RXB.00010 x.src.0.01 0x29,
912     CPUFeature_AVX disabled_untested
913 ######## PCMPEQW/VPCMPEQW ######################################################
914 pcmpeqw Wpi Vpw, 0x66 0x0f 0x75, CPUFeature_SSE2
915 vpcmpeqw Wpi Hpi Vpw, 0xc4 RXB.00001 x.src.0.01 0x75,
916     CPUFeature_AVX disabled_untested
917 ######## PCMPESTRI/VPCMPESTRI ##################################################
918 pcmpestri Ib Wo Vo, 0x66 0x0f 0x3a 0x61, CPUFeature_SSE42
919 vpcmpestri Ib Wo Vo, 0xc4 RXB.00011 x.1111.0.01 0x61,
920     CPUFeature_AVX disabled_untested
921 ######## PCMPESTRM/VPCMPESTRM ##################################################
922 pcmpestrm Ib Wo Vo, 0x66 0x0f 0x3a 0x60, CPUFeature_SSE42
923 vpcmpestrm Ib Wo Vo, 0xc4 RXB.00011 x.1111.0.01 0x60,
924     CPUFeature_AVX disabled_untested
925 ######## PCMPGTB/VPCMPGTB ######################################################
926 pcmpgtb Wdq Vdq, 0x66 0x0f 0x64, CPUFeature_SSE2
927 vpcmpgtb Wpk Hpk Vpb, 0xc4 RXB.00001 x.src.0.01 0x64,
928     CPUFeature_AVX disabled_untested
929 ######## PCMPGTD/VPCMPGTD ######################################################
930 pcmpgtd Wdq Vdq, 0x66 0x0f 0x66, CPUFeature_SSE2
931 vpcmpgtd Wpj Hpj Vpw, 0xc4 RXB.00001 x.src.0.01 0x66,
932     CPUFeature_AVX disabled_untested
933 ######## PCMPGTQ/VPCMPGTQ ######################################################
934 pcmpgtq Wpq Vpq, 0x66 0x0f 0x38 0x37, CPUFeature_SSE42
935 vpcmpgtq Wpq Hpq Vpq, 0xc4 RXB.00010 x.src.0.01 0x37,
936     CPUFeature_AVX disabled_untested
937 ######## PCMPGTW/VPCMPGTW ######################################################
938 pcmpgtw Wdq Vdq, 0x66 0x0f 0x65, CPUFeature_SSE2
939 vpcmpgtw Wpi Hpi Vpw, 0xc4 RXB.00001 x.src.0.01 0x65,
940     CPUFeature_AVX disabled_untested
941 ######## PCMPISTRI/VPCMPISTRI ##################################################
942 pcmpistri Ib Wo Vo, 0x66 0x0f 0x3a 0x63, CPUFeature_SSE42
943 vpcmpistri Ib Wo Vo, 0xc4 RXB.00011 x.1111.0.01 0x63,
944     CPUFeature_AVX disabled_untested
945 ######## PCMPISTRM/VPCMPISTRM ##################################################
946 pcmpistrm Ib Wo Vo, 0x66 0x0f 0x3a 0x62, CPUFeature_SSE42
947 vpcmpistrm Ib Wo Vo, 0xc4 RXB.00011 x.1111.0.01 0x62,
948     CPUFeature_AVX disabled_untested
949 ######## PEXTRB/VPEXTRB ########################################################
950 # Textbook definition of "vpextrb" as per AMD/Intel manuals looks like this:
951 #  vpextrb Ib Vpb Ry, 0xc4 RXB.00011 x.1111.0.01 0x14, CPUFeature_AVX
952 # GNU as accepts this description, but objdump decodes last operand as "Rd".
953 # Technically it makes no difference: "vpextrb" clears everything except least
954 # significant byte and this operation produces precisely idential output for
955 # "Rd" and "Ry" operands.  We'll use objdump's description.
956 #
957 # "pextrb/vpextrb" are not marked as nacl-amd64-zero-extends because you
958 # shouldn't use XMM registers to hold addresses.
959 pextrb Ib Vpk Mb, 0x66 0x0f 0x3a 0x14, CPUFeature_SSE41
960 pextrb Ib Vpk Ry, 0x66 0x0f 0x3a 0x14, CPUFeature_SSE41
961 vpextrb Ib Vpb Mb, 0xc4 RXB.00011 x.1111.0.01 0x14,
962     CPUFeature_AVX disabled_untested
963 vpextrb Ib Vpb Rd, 0xc4 RXB.00011 x.1111.0.01 0x14,
964     CPUFeature_AVX disabled_untested
965 ######## PEXTRD/VPEXTRD ########################################################
966 # "pextrd/vpextrd" are not marked as nacl-amd64-zero-extends because you
967 # shouldn't use XMM registers to hold addresses.
968 pextrd Ib Vpk Ed, 0x66 0x0f 0x3a 0x16, norexw CPUFeature_SSE41
969 vpextrd Ib Vpj Ed, 0xc4 RXB.00011 0.1111.0.01 0x16,
970     CPUFeature_AVX disabled_untested
971 ######## PEXTRQ/VPEXTRQ ########################################################
972 pextrq Ib Vpq Eq, 0x66 rexw 0x0f 0x3a 0x16, amd64 CPUFeature_SSE41
973 vpextrq Ib Vpqw Eq, 0xc4 RXB.00011 1.1111.0.01 0x16,
974     amd64 CPUFeature_AVX disabled_untested
975 ######## PEXTRW/VPEXTRW ########################################################
976 # Textbook definition of "pextrw/vpextrw" as per AMD/Intel manuals looks like
977 # this:
978 #  pextrw Ib Udq Gy, 0x66 0x0f 0xc5, CPUFeature_SSE2
979 #  vpextrw Ib Upw Gy, 0xc4 RXB.00001 x.1111.0.01 0xc5, CPUFeature_AVX
980 #  vpextrw Ib Vpw Ry, 0xc4 RXB.00011 x.1111.0.01 0x15, CPUFeature_AVX
981 # GNU as accepts this description, but objdump decodes last operand as "Rd".
982 # Technically it makes no difference: "pextrw"/"vpextrw" clears everything
983 # except least significant byte and this operation produces precisely idential
984 # output for "Rd" and "Ry" operands.  We'll use objdump's description.
985 #
986 # "pextrw/vpextrw" are not marked as nacl-amd64-zero-extends because you
987 # shouldn't use XMM registers to hold addresses.
988 pextrw Ib Udq Gy, 0x66 0x0f 0xc5, CPUFeature_SSE2
989 pextrw Ib Vpw Mw, 0x66 0x0f 0x3a 0x15, CPUFeature_SSE41
990 pextrw Ib Vpw Ry, 0x66 0x0f 0x3a 0x15, CPUFeature_SSE41
991 vpextrw Ib Upw Gd, 0xc4 RXB.00001 x.1111.0.01 0xc5,
992     CPUFeature_AVX disabled_untested
993 vpextrw Ib Vpw Mw, 0xc4 RXB.00011 x.1111.0.01 0x15,
994     CPUFeature_AVX disabled_untested
995 vpextrw Ib Vpw Rd, 0xc4 RXB.00011 x.1111.0.01 0x15,
996     CPUFeature_AVX disabled_untested
997 ######## PHADDD/VPHADDD ########################################################
998 phaddd Wpj Vpj, 0x66 0x0f 0x38 0x02, CPUFeature_SSSE3
999 vphaddd Wpj Hpj Vpj, 0xc4 RXB.00010 x.src.0.01 0x02,
1000     CPUFeature_AVX disabled_untested
1001 ######## PHADDSW/VPHADDSW ######################################################
1002 phaddsw Wpi Vpi, 0x66 0x0f 0x38 0x03, CPUFeature_SSSE3
1003 vphaddsw Wpi Hpi Vpi, 0xc4 RXB.00010 x.src.0.01 0x03,
1004     CPUFeature_AVX disabled_untested
1005 ######## PHADDW/VPHADDW ########################################################
1006 phaddw Wpi Vpi, 0x66 0x0f 0x38 0x01, CPUFeature_SSSE3
1007 vphaddw Wpi Hpi Vpi, 0xc4 RXB.00010 x.src.0.01 0x01,
1008     CPUFeature_AVX disabled_untested
1009 ######## PHMINPOSUW/VPHMINPOSUW ################################################
1010 phminposuw Wpi Vpi, 0x66 0x0f 0x38 0x41, CPUFeature_SSE41
1011 vphminposuw Wpi Vo, 0xc4 RXB.00010 x.1111.0.01 0x41,
1012     CPUFeature_AVX disabled_untested
1013 ######## PHSUBD/VPHSUBD ########################################################
1014 phsubd Wpj Vpj, 0x66 0x0f 0x38 0x06, CPUFeature_SSSE3
1015 vphsubd Wpj Hpj Vpj, 0xc4 RXB.00010 x.src.0.01 0x06,
1016     CPUFeature_AVX disabled_untested
1017 ######## PHSUBSW/VPHSUBSW ######################################################
1018 phsubsw Wpi Vpi, 0x66 0x0f 0x38 0x07, CPUFeature_SSSE3
1019 vphsubsw Wpi Hpi Vpi, 0xc4 RXB.00010 x.src.0.01 0x07,
1020     CPUFeature_AVX disabled_untested
1021 ######## PHSUBW/VPHSUBW ########################################################
1022 phsubw Wpi Vpi, 0x66 0x0f 0x38 0x05, CPUFeature_SSSE3
1023 vphsubw Wpi Hpi Vpi, 0xc4 RXB.00010 x.src.0.01 0x05,
1024     CPUFeature_AVX disabled_untested
1025 ######## PINSRB/VPINSRB ########################################################
1026 # Textbook definition of "pinsrb" as per AMD/Intel manuals looks like this:
1027 #  pinsrb Ib Mb Vpk, 0x66 0x0f 0x3a 0x20, CPUFeature_SSE41
1028 #  pinsrb Ib Rd Vpk, 0x66 0x0f 0x3a 0x20, CPUFeature_SSE41
1029 # GNU as accepts this description, but objdump decodes last operand as "Ry".
1030 # Technically it makes no difference: "pextrb" clears everything except least
1031 # significant byte and this operation produces precisely idential output for
1032 # "Rd" and "Ry" operands.  We'll use objdump's description.
1033 pinsrb Ib Mb Vpk, 0x66 0x0f 0x3a 0x20, CPUFeature_SSE41
1034 pinsrb Ib Ry Vpk, 0x66 0x0f 0x3a 0x20, CPUFeature_SSE41
1035 vpinsrb Ib Mb Hpb Vpb, 0xc4 RXB.00011 x.1111.0.01 0x20,
1036     CPUFeature_AVX disabled_untested
1037 vpinsrb Ib Rd Hpb Vpb, 0xc4 RXB.00011 x.1111.0.01 0x20,
1038     CPUFeature_AVX disabled_untested
1039 ######## PINSRD/VPINSRD ########################################################
1040 pinsrd Ib Ed Vpj, 0x66 0x0f 0x3a 0x22, norexw CPUFeature_SSE41
1041 vpinsrd Ib Ed Hpdw Vpdw, 0xc4 RXB.00011 0.1111.0.01 0x22,
1042     CPUFeature_AVX disabled_untested
1043 ######## PINSRQ/VPINSRQ ########################################################
1044 pinsrq Ib Eq Vpq, 0x66 rexw 0x0f 0x3a 0x22, amd64 CPUFeature_SSE41
1045 vpinsrq Ib Eq Ho Vo, 0xc4 RXB.00011 1.1111.0.01 0x22,
1046     amd64 CPUFeature_AVX disabled_untested
1047 ######## PINSRW/VPINSRW ########################################################
1048 # Textbook definition of "pinsrw" as per AMD/Intel manuals looks like this:
1049 #  pinsrw Ib Ew Vdq, 0x66 0x0f 0xc4, CPUFeature_SSE
1050 #  pinsrw Ib Rd Vdq, 0x66 0x0f 0xc4, CPUFeature_SSE
1051 # GNU as accepts this description, but objdump decodes last operand as "Rd".
1052 # Technically it makes no difference: "pinsrw"/"vpinsrw" clears everything
1053 # except least significant word and this operation produces precisely idential
1054 # output for "Ry" and "Rd" operands.  We'll use objdump's description.
1055 pinsrw Ib Mw Vdq, 0x66 0x0f 0xc4, CPUFeature_SSE
1056 pinsrw Ib Ry Vdq, 0x66 0x0f 0xc4, CPUFeature_SSE
1057 vpinsrw Ib Mw Hpw Vpw, 0xc4 RXB.00001 x.1111.0.01 0xc4,
1058     CPUFeature_AVX disabled_untested
1059 vpinsrw Ib Rd Hpw Vpw, 0xc4 RXB.00001 x.1111.0.01 0xc4,
1060     CPUFeature_AVX disabled_untested
1061 ######## PMADDUBSW/VPMADDUBSW ##################################################
1062 pmaddubsw Wpk Vpk, 0x66 0x0f 0x38 0x04, CPUFeature_SSSE3
1063 vpmaddubsw Wpk Hpk Vpi, 0xc4 RXB.00010 x.src.0.01 0x04,
1064     CPUFeature_AVX disabled_untested
1065 ######## PMADDWD/VPMADDWD ######################################################
1066 pmaddwd Wdq Vdq, 0x66 0x0f 0xf5, CPUFeature_SSE2
1067 vpmaddwd Wpi Hpi Vpj, 0xc4 RXB.00001 x.src.0.01 0xf5,
1068     CPUFeature_AVX disabled_untested
1069 ######## PMAXSB/VPMAXSB ########################################################
1070 pmaxsb Wpk Vpk, 0x66 0x0f 0x38 0x3c, CPUFeature_SSE41
1071 vpmaxsb Wpk Hpk Vpk, 0xc4 RXB.00010 x.src.0.01 0x3c,
1072     CPUFeature_AVX disabled_untested
1073 ######## PMAXSD/VPMAXSD ########################################################
1074 pmaxsd Wpj Vpj, 0x66 0x0f 0x38 0x3d, CPUFeature_SSE41
1075 vpmaxsd Wpj Hpj Vpj, 0xc4 RXB.00010 x.src.0.01 0x3d,
1076     CPUFeature_AVX disabled_untested
1077 ######## PMAXSW/VPMAXSW ########################################################
1078 pmaxsw Wpi Vpi, 0x66 0x0f 0xee, CPUFeature_SSE2
1079 vpmaxsw Wpi Hpi Vpi, 0xc4 RXB.00001 x.src.0.01 0xee,
1080     CPUFeature_AVX disabled_untested
1081 ######## PMAXUB/VPMAXUB ########################################################
1082 pmaxub Wpk Vpk, 0x66 0x0f 0xde, CPUFeature_SSE2
1083 vpmaxub Wpk Hpk Vpk, 0xc4 RXB.00001 x.src.0.01 0xde,
1084     CPUFeature_AVX disabled_untested
1085 ######## PMAXUD/VPMAXUD ########################################################
1086 pmaxud Wpj Vpj, 0x66 0x0f 0x38 0x3f, CPUFeature_SSE41
1087 vpmaxud Wpj Hpj Vpj, 0xc4 RXB.00010 x.src.0.01 0x3f,
1088     CPUFeature_AVX disabled_untested
1089 ######## PMAXUW/VPMAXUW ########################################################
1090 pmaxuw Wpi Vpi, 0x66 0x0f 0x38 0x3e, CPUFeature_SSE41
1091 vpmaxuw Wpi Hpi Vpi, 0xc4 RXB.00010 x.src.0.01 0x3e,
1092     CPUFeature_AVX disabled_untested
1093 ######## PMINSB/VPMINSB ########################################################
1094 pminsb Wpk Vpk, 0x66 0x0f 0x38 0x38, CPUFeature_SSE41
1095 vpminsb Wpk Hpk Vpk, 0xc4 RXB.00010 x.src.0.01 0x38,
1096     CPUFeature_AVX disabled_untested
1097 ######## PMINSD/VPMINSD ########################################################
1098 pminsd Wpj Vpj, 0x66 0x0f 0x38 0x39, CPUFeature_SSE41
1099 vpminsd Wpj Hpj Vpj, 0xc4 RXB.00010 x.src.0.01 0x39,
1100     CPUFeature_AVX disabled_untested
1101 ######## PMINSW/VPMINSW ########################################################
1102 pminsw Wpi Vpi, 0x66 0x0f 0xea, CPUFeature_SSE2
1103 vpminsw Wpi Hpi Vpi, 0xc4 RXB.00001 x.src.0.01 0xea,
1104     CPUFeature_AVX disabled_untested
1105 ######## PMINUB/VPMINUB ########################################################
1106 pminub Wpk Vpk, 0x66 0x0f 0xda, CPUFeature_SSE2
1107 vpminub Wpk Hpk Vpk, 0xc4 RXB.00001 x.src.0.01 0xda,
1108     CPUFeature_AVX disabled_untested
1109 ######## PMINUD/VPMINUD ########################################################
1110 pminud Wpj Vpj, 0x66 0x0f 0x38 0x3b, CPUFeature_SSE41
1111 vpminud Wpj Hpj Vpj, 0xc4 RXB.00010 x.src.0.01 0x3b,
1112     CPUFeature_AVX disabled_untested
1113 ######## PMINUW/VPMINUW ########################################################
1114 pminuw Wpi Vpi, 0x66 0x0f 0x38 0x3a, CPUFeature_SSE41
1115 vpminuw Wpi Hpi Vpi, 0xc4 RXB.00010 x.src.0.01 0x3a,
1116     CPUFeature_AVX disabled_untested
1117 ######## PMOVMSKB/PMOVMSKB #####################################################
1118 # Textbook definition of "pmovmskb/vpmovmskb" as per AMD/Intel manuals looks
1119 # like this:
1120 #  pmovmskb Udq Gd, 0x66 0x0f 0xd7, CPUFeature_SSE2
1121 #  vpmovmskb Upb Gy, 0xc4 RXB.00001 x.1111.0.01 0xd7, CPUFeature_AVX
1122 # GNU as accepts this description, but objdump decodes last operand as "Gd".
1123 # Technically it makes no difference: "vpmovmskb" clears everything except least
1124 # significant word and this operation produces precisely idential output for "Gy"
1125 # and "Gd" operands.  We'll use objdump's description.
1126 pmovmskb Udq Gy, 0x66 0x0f 0xd7, CPUFeature_SSE2
1127 vpmovmskb Upb Gd, 0xc4 RXB.00001 x.1111.0.01 0xd7,
1128     CPUFeature_AVX disabled_untested
1129 ######## PMOVSXBD/VPMOVSXBD ####################################################
1130 pmovsxbd Wpk Vpj, 0x66 0x0f 0x38 0x21, CPUFeature_SSE41
1131 vpmovsxbd Wpk Vpj, 0xc4 RXB.00010 x.1111.0.01 0x21,
1132     CPUFeature_AVX disabled_untested
1133 ######## PMOVSXBQ/VPMOVSXBQ ####################################################
1134 pmovsxbq Wpk Vpq, 0x66 0x0f 0x38 0x22, CPUFeature_SSE41
1135 vpmovsxbq Wpk Vpq, 0xc4 RXB.00010 x.1111.0.01 0x22,
1136     CPUFeature_AVX disabled_untested
1137 ######## PMOVSXBW/VPMOVSXBW ####################################################
1138 pmovsxbw Wpk Vpi, 0x66 0x0f 0x38 0x20, CPUFeature_SSE41
1139 vpmovsxbw Wpk Vpi, 0xc4 RXB.00010 x.1111.0.01 0x20,
1140     CPUFeature_AVX disabled_untested
1141 ######## PMOVSXDQ/VPMOVSXDQ ####################################################
1142 pmovsxdq Wpj Vpq, 0x66 0x0f 0x38 0x25, CPUFeature_SSE41
1143 vpmovsxdq Wpj Vpq, 0xc4 RXB.00010 x.1111.0.01 0x25,
1144     CPUFeature_AVX disabled_untested
1145 ######## PMOVSXWD/VPMOVSXWD ####################################################
1146 pmovsxwd Wpi Vpj, 0x66 0x0f 0x38 0x23, CPUFeature_SSE41
1147 vpmovsxwd Wpi Vpj, 0xc4 RXB.00010 x.1111.0.01 0x23,
1148     CPUFeature_AVX disabled_untested
1149 ######## PMOVSXWQ/VPMOVSXWQ ####################################################
1150 pmovsxwq Wpi Vpq, 0x66 0x0f 0x38 0x24, CPUFeature_SSE41
1151 vpmovsxwq Wpi Vpq, 0xc4 RXB.00010 x.1111.0.01 0x24,
1152     CPUFeature_AVX disabled_untested
1153 ######## PMOVZXBD/VPMOVZXBD ####################################################
1154 pmovzxbd Wpk Vpj, 0x66 0x0f 0x38 0x31, CPUFeature_SSE41
1155 vpmovzxbd Wpk Vpj, 0xc4 RXB.00010 x.1111.0.01 0x31,
1156     CPUFeature_AVX disabled_untested
1157 ######## PMOVZXBQ/VPMOVZXBQ ####################################################
1158 pmovzxbq Wpk Vpq, 0x66 0x0f 0x38 0x32, CPUFeature_SSE41
1159 vpmovzxbq Wpk Vpq, 0xc4 RXB.00010 x.1111.0.01 0x32,
1160     CPUFeature_AVX disabled_untested
1161 ######## PMOVZXBW/VPMOVZXBW ####################################################
1162 pmovzxbw Wpk Vpi, 0x66 0x0f 0x38 0x30, CPUFeature_SSE41
1163 vpmovzxbw Wpk Vpi, 0xc4 RXB.00010 x.1111.0.01 0x30,
1164     CPUFeature_AVX disabled_untested
1165 ######## PMOVZXDQ/VPMOVZXDQ ####################################################
1166 pmovzxdq Wpj Vpq, 0x66 0x0f 0x38 0x35, CPUFeature_SSE41
1167 vpmovzxdq Wpj Vpq, 0xc4 RXB.00010 x.1111.0.01 0x35,
1168     CPUFeature_AVX disabled_untested
1169 ######## PMOVZXWD/VPMOVZXWD ####################################################
1170 pmovzxwd Wpi Vpj, 0x66 0x0f 0x38 0x33, CPUFeature_SSE41
1171 vpmovzxwd Wpi Vpj, 0xc4 RXB.00010 x.1111.0.01 0x33,
1172     CPUFeature_AVX disabled_untested
1173 ######## PMOVZXWQ/VPMOVZXWQ ####################################################
1174 pmovzxwq Wpi Vpq, 0x66 0x0f 0x38 0x34, CPUFeature_SSE41
1175 vpmovzxwq Wpi Vpq, 0xc4 RXB.00010 x.1111.0.01 0x34,
1176     CPUFeature_AVX disabled_untested
1177 ######## PMULDQ/VPMULDQ ########################################################
1178 pmuldq Wpj Vpq, 0x66 0x0f 0x38 0x28, CPUFeature_SSE41
1179 vpmuldq Wpj Hpj Vpq, 0xc4 RXB.00010 x.src.0.01 0x28,
1180     CPUFeature_AVX disabled_untested
1181 ######## PMULHRSW/VPMULHRSW ####################################################
1182 pmulhrsw Wpi Vpi, 0x66 0x0f 0x38 0x0b, CPUFeature_SSSE3
1183 vpmulhrsw Wpi Hpi Vpi, 0xc4 RXB.00010 x.src.0.01 0x0b,
1184     CPUFeature_AVX disabled_untested
1185 ######## PMULHUW/VPMULHUW ######################################################
1186 pmulhuw Wdq Vdq, 0x66 0x0f 0xe4, CPUFeature_SSE2
1187 vpmulhuw Wpi Hpi Vpi, 0xc4 RXB.00001 x.src.0.01 0xe4,
1188     CPUFeature_AVX disabled_untested
1189 ######## PMULHW/VPMULHW ########################################################
1190 pmulhw Wdq Vdq, 0x66 0x0f 0xe5, CPUFeature_SSE2
1191 vpmulhw Wpi Hpi Vpi, 0xc4 RXB.00001 x.src.0.01 0xe5,
1192     CPUFeature_AVX disabled_untested
1193 ######## PMULLD/VPMULLD ########################################################
1194 pmulld Wpj Vpj, 0x66 0x0f 0x38 0x40, CPUFeature_SSE41
1195 vpmulld Wpj Hpj Vpj, 0xc4 RXB.00010 x.src.0.01 0x40,
1196     CPUFeature_AVX disabled_untested
1197 ######## PMULLW/VPMULLW ########################################################
1198 pmullw Wdq Vdq, 0x66 0x0f 0xd5, CPUFeature_SSE2
1199 vpmullw Wpi Hpi Vpi, 0xc4 RXB.00001 x.src.0.01 0xd5,
1200     CPUFeature_AVX disabled_untested
1201 ######## PMULUDQ/VPMULUDQ ######################################################
1202 pmuludq Wdq Vdq, 0x66 0x0f 0xf4, CPUFeature_SSE2
1203 vpmuludq Wpj Hpj Vpq, 0xc4 RXB.00001 x.src.0.01 0xf4,
1204     CPUFeature_AVX disabled_untested
1205 ######## POR/VPOR ##############################################################
1206 por Wdq Vdq, 0x66 0x0f 0xeb, CPUFeature_SSE2
1207 vpor Wo Ho Vo, 0xc4 RXB.00001 x.src.0.01 0xeb,
1208     CPUFeature_AVX disabled_untested
1209 ######## PSADBW/VPSADBW ########################################################
1210 psadbw Wdq Vdq, 0x66 0x0f 0xf6, CPUFeature_SSE2
1211 vpsadbw Wpk Hpk Vpi, 0xc4 RXB.00001 x.src.0.01 0xf6,
1212     CPUFeature_AVX disabled_untested
1213 ######## PSHUFB/VPSHUFB ########################################################
1214 pshufb Wpb Vpb, 0x66 0x0f 0x38 0x00, CPUFeature_SSSE3
1215 vpshufb Wpb Hpb Vpb, 0xc4 RXB.00010 x.src.0.01 0x00,
1216     CPUFeature_AVX disabled_untested
1217 ######## PSHUFD/VPSHUFD ########################################################
1218 pshufd Ib Wdq Vdq, 0x66 0x0f 0x70, CPUFeature_SSE2
1219 vpshufd Ib Wpdw Vpdw, 0xc4 RXB.00001 x.1111.0.01 0x70,
1220     CPUFeature_AVX disabled_untested
1221 ######## PSHUFHW/VPSHUFHW ######################################################
1222 pshufhw Ib Wq Vq, 0xf3 0x0f 0x70, CPUFeature_SSE2
1223 vpshufhw Ib Wpw Vpw, 0xc4 RXB.00001 x.1111.0.10 0x70,
1224     CPUFeature_AVX disabled_untested
1225 ######## PSHUFLW/VPSHUFLW ######################################################
1226 pshuflw Ib Wq Vq, 0xf2 0x0f 0x70, CPUFeature_SSE2
1227 vpshuflw Ib Wpw Vpw, 0xc4 RXB.00001 x.1111.0.11 0x70,
1228     CPUFeature_AVX disabled_untested
1229 ######## PSIGNB/VPSIGNB ########################################################
1230 psignb Wpk Vpk, 0x66 0x0f 0x38 0x08, CPUFeature_SSSE3
1231 vpsignb Wpk Hpk Vpk, 0xc4 RXB.00010 x.src.0.01 0x08,
1232     CPUFeature_AVX disabled_untested
1233 ######## PSIGND/VPSIGND ########################################################
1234 psignd Wpj Vpj, 0x66 0x0f 0x38 0x0a, CPUFeature_SSSE3
1235 vpsignd Wpj Hpj Vpj, 0xc4 RXB.00010 x.src.0.01 0x0a,
1236     CPUFeature_AVX disabled_untested
1237 ######## PSIGNW/VPSIGNW ########################################################
1238 psignw Wpi Vpi, 0x66 0x0f 0x38 0x09, CPUFeature_SSSE3
1239 vpsignw Wpi Hpi Vpj, 0xc4 RXB.00010 x.src.0.01 0x09,
1240     CPUFeature_AVX disabled_untested
1241 ######## PSLLD/VPSLLD ##########################################################
1242 pslld Wdq Vdq, 0x66 0x0f 0xf2, CPUFeature_SSE2
1243 pslld Ib Udq, 0x66 0x0f 0x72 /6, CPUFeature_SSE2
1244 vpslld Wo Hpdw Vpdw, 0xc4 RXB.00001 x.src.0.01 0xf2,
1245     CPUFeature_AVX disabled_untested
1246 vpslld Ib Updw Hpdw, 0xc4 RXB.00001 x.dest.0.01 0x72 /6,
1247     CPUFeature_AVX disabled_untested
1248 ######## PSLLDQ/VPSLLDQ ########################################################
1249 pslldq Ib Udq, 0x66 0x0f 0x73 /7, CPUFeature_SSE2
1250 vpslldq Ib Udq Hdq, 0xc4 RXB.00001 0.dest.0.01 0x73 /7,
1251     CPUFeature_AVX disabled_untested
1252 ######## PSLLQ/VPSLLQ ##########################################################
1253 psllq Wdq Vdq, 0x66 0x0f 0xf3, CPUFeature_SSE2
1254 psllq Ib Udq, 0x66 0x0f 0x73 /6, CPUFeature_SSE2
1255 vpsllq Wo Hpdw Vpdw, 0xc4 RXB.00001 x.src.0.01 0xf3,
1256     CPUFeature_AVX disabled_untested
1257 vpsllq Ib Updw Hpdw, 0xc4 RXB.00001 x.dest.0.01 0x73 /6,
1258     CPUFeature_AVX disabled_untested
1259 ######## PSLLW/VPSLLW ##########################################################
1260 psllw Wdq Vdq, 0x66 0x0f 0xf1, CPUFeature_SSE2
1261 psllw Ib Udq, 0x66 0x0f 0x71 /6, CPUFeature_SSE2
1262 vpsllw Wo Hpw Vpw, 0xc4 RXB.00001 x.src.0.01 0xf1,
1263     CPUFeature_AVX disabled_untested
1264 vpsllw Ib Upw Hpw, 0xc4 RXB.00001 x.dest.0.01 0x71 /6,
1265     CPUFeature_AVX disabled_untested
1266 ######## PSRAD/VPSRAD ##########################################################
1267 psrad Wdq Vdq, 0x66 0x0f 0xe2, CPUFeature_SSE2
1268 psrad Ib Udq, 0x66 0x0f 0x72 /4, CPUFeature_SSE2
1269 vpsrad Wo Hpdw Vpdw, 0xc4 RXB.00001 x.src.0.01 0xe2,
1270     CPUFeature_AVX disabled_untested
1271 vpsrad Ib Updw Hpdw, 0xc4 RXB.00001 x.dest.0.01 0x72 /4,
1272     CPUFeature_AVX disabled_untested
1273 ######## PSRAW/VPSRAW ##########################################################
1274 psraw Wdq Vdq, 0x66 0x0f 0xe1, CPUFeature_SSE2
1275 psraw Ib Udq, 0x66 0x0f 0x71 /4, CPUFeature_SSE2
1276 vpsraw Wo Hpw Vpw, 0xc4 RXB.00001 x.src.0.01 0xe1,
1277     CPUFeature_AVX disabled_untested
1278 vpsraw Ib Upw Hpw, 0xc4 RXB.00001 x.dest.0.01 0x71 /4,
1279     CPUFeature_AVX disabled_untested
1280 ######## PSRLD/VPSRLD ##########################################################
1281 psrld Wdq Vdq, 0x66 0x0f 0xd2, CPUFeature_SSE2
1282 psrld Ib Udq, 0x66 0x0f 0x72 /2, CPUFeature_SSE2
1283 vpsrld Wo Hpdw Vpdw, 0xc4 RXB.00001 x.src.0.01 0xd2,
1284     CPUFeature_AVX disabled_untested
1285 vpsrld Ib Updw Hpdw, 0xc4 RXB.00001 x.dest.0.01 0x72 /2,
1286     CPUFeature_AVX disabled_untested
1287 ######## PSRLDQ/VPSRLDQ ########################################################
1288 psrldq Ib Udq, 0x66 0x0f 0x73 /3, CPUFeature_SSE2
1289 vpsrldq Ib Udq Hdq, 0xc4 RXB.00001 0.dest.0.01 0x73 /3,
1290     CPUFeature_AVX disabled_untested
1291 ######## PSRLQ/VPSRLQ ##########################################################
1292 psrlq Wdq Vdq, 0x66 0x0f 0xd3, CPUFeature_SSE2
1293 psrlq Ib Udq, 0x66 0x0f 0x73 /2, CPUFeature_SSE2
1294 vpsrlq Wo Hpdw Vpdw, 0xc4 RXB.00001 x.src.0.01 0xd3,
1295     CPUFeature_AVX disabled_untested
1296 vpsrlq Ib Updw Hpdw, 0xc4 RXB.00001 x.dest.0.01 0x73 /2,
1297     CPUFeature_AVX disabled_untested
1298 ######## PSRLW/VPSRLW ##########################################################
1299 psrlw Wdq Vdq, 0x66 0x0f 0xd1, CPUFeature_SSE2
1300 psrlw Ib Udq, 0x66 0x0f 0x71 /2, CPUFeature_SSE2
1301 vpsrlw Wo Hpw Vpw, 0xc4 RXB.00001 x.src.0.01 0xd1,
1302     CPUFeature_AVX disabled_untested
1303 vpsrlw Ib Upw Hpw, 0xc4 RXB.00001 x.dest.0.01 0x71 /2,
1304     CPUFeature_AVX disabled_untested
1305 ######## PSUBB/VPSUBB ##########################################################
1306 psubb Wpk Vpk, 0x66 0x0f 0xf8, CPUFeature_SSE2
1307 vpsubb Wpk Hpk Vpk, 0xc4 RXB.00001 x.src.0.01 0xf8,
1308     CPUFeature_AVX disabled_untested
1309 ######## PSUBD/VPSUBD ##########################################################
1310 psubd Wpj Vpj, 0x66 0x0f 0xfa, CPUFeature_SSE2
1311 vpsubd Wpj Hpj Vpj, 0xc4 RXB.00001 x.src.0.01 0xfa,
1312     CPUFeature_AVX disabled_untested
1313 ######## PSUBQ/VPSUBQ ##########################################################
1314 psubq Wdq Vdq, 0x66 0x0f 0xfb, CPUFeature_SSE2
1315 vpsubq Wpq Hpq Vpq, 0xc4 RXB.00001 x.src.0.01 0xfb,
1316     CPUFeature_AVX disabled_untested
1317 ######## PSUBSB/VPSUBSB ########################################################
1318 psubsb Wpk Vpk, 0x66 0x0f 0xe8, CPUFeature_SSE2
1319 vpsubsb Wpk Hpk Vpk, 0xc4 RXB.00001 x.src.0.01 0xe8,
1320     CPUFeature_AVX disabled_untested
1321 ######## PSUBSW/VPSUBSW ########################################################
1322 psubsw Wpi Vpi, 0x66 0x0f 0xe9, CPUFeature_SSE2
1323 vpsubsw Wpi Hpi Vpi, 0xc4 RXB.00001 x.src.0.01 0xe9,
1324     CPUFeature_AVX disabled_untested
1325 ######## PSUBUSB/VPSUBUSB ######################################################
1326 psubusb Wpk Vpk, 0x66 0x0f 0xd8, CPUFeature_SSE2
1327 vpsubusb Wpk Hpk Vpk, 0xc4 RXB.00001 x.src.0.01 0xd8,
1328     CPUFeature_AVX disabled_untested
1329 ######## PSUBUSW/VPSUBUSW ######################################################
1330 psubusw Wpi Vpi, 0x66 0x0f 0xd9, CPUFeature_SSE2
1331 vpsubusw Wpi Hpi Vpi, 0xc4 RXB.00001 x.src.0.01 0xd9,
1332     CPUFeature_AVX disabled_untested
1333 ######## PSUBW/VPSUBW ##########################################################
1334 psubw Wpi Vpi, 0x66 0x0f 0xf9, CPUFeature_SSE2
1335 vpsubw Wpi Hpi Vpi, 0xc4 RXB.00001 x.src.0.01 0xf9,
1336     CPUFeature_AVX disabled_untested
1337 ######## PTEST/VPTEST ##########################################################
1338 ptest Wo Vo, 0x66 0x0f 0x38 0x17, CPUFeature_SSE41
1339 vptest Wo Vo, 0xc4 RXB.00010 x.1111.0.01 0x17,
1340     CPUFeature_AVX disabled_untested
1341 vptest Wdo Vdo, 0xc4 RXB.00010 x.1111.1.01 0x17,
1342     CPUFeature_AVX disabled_untested
1343 ######## PUNPCKHBW/VPUNPCKHBW ##################################################
1344 punpckhbw Wq Vdq, 0x66 0x0f 0x68, CPUFeature_SSE2
1345 vpunpckhbw Wpb Hpb Vpb, 0xc4 RXB.00001 x.src.0.01 0x68,
1346     CPUFeature_AVX disabled_untested
1347 ######## PUNPCKHDQ/VPUNPCKHDQ ##################################################
1348 punpckhdq Wq Vdq, 0x66 0x0f 0x6a, CPUFeature_SSE2
1349 vpunpckhdq Wpdw Hpdw Vpdw, 0xc4 RXB.00001 x.src.0.01 0x6a,
1350     CPUFeature_AVX disabled_untested
1351 ######## PUNPCKHQDQ/VPUNPCKHQDQ ################################################
1352 punpckhqdq Wq Vdq, 0x66 0x0f 0x6d, CPUFeature_SSE2
1353 vpunpckhqdq Wpqw Hpqw Vpqw, 0xc4 RXB.00001 x.src.0.01 0x6d,
1354     CPUFeature_AVX disabled_untested
1355 ######## PUNPCKHWD/VPUNPCKHWD ##################################################
1356 punpckhwd Wq Vdq, 0x66 0x0f 0x69, CPUFeature_SSE2
1357 vpunpckhwd Wpw Hpw Vpw, 0xc4 RXB.00001 x.src.0.01 0x69,
1358     CPUFeature_AVX disabled_untested
1359 ######## PUNPCKLBW/VPUNPCKLBW ##################################################
1360 punpcklbw Wq Vdq, 0x66 0x0f 0x60, CPUFeature_SSE2
1361 vpunpcklbw Wpb Hpb Vpb, 0xc4 RXB.00001 x.src.0.01 0x60,
1362     CPUFeature_AVX disabled_untested
1363 ######## PUNPCKLDQ/VPUNPCKLDQ ##################################################
1364 punpckldq Wq Vdq, 0x66 0x0f 0x62, CPUFeature_SSE2
1365 vpunpckldq Wpdw Hpdw Vpdw, 0xc4 RXB.00001 x.src.0.01 0x62,
1366     CPUFeature_AVX disabled_untested
1367 ######## PUNPCKLQDQ/VPUNPCKLQDQ ################################################
1368 punpcklqdq Wq Vdq, 0x66 0x0f 0x6c, CPUFeature_SSE2
1369 vpunpcklqdq Wpqw Hpqw Vpqw, 0xc4 RXB.00001 x.src.0.01 0x6c,
1370     CPUFeature_AVX disabled_untested
1371 ######## PUNPCKLWD/VPUNPCKLWD ##################################################
1372 punpcklwd Wq Vdq, 0x66 0x0f 0x61, CPUFeature_SSE2
1373 vpunpcklwd Wpw Hpw Vpw, 0xc4 RXB.00001 x.src.0.01 0x61,
1374     CPUFeature_AVX disabled_untested
1375 ######## PXOR/VPXOR ############################################################
1376 pxor Wdq Vdq, 0x66 0x0f 0xef, CPUFeature_SSE2
1377 vpxor Wo Ho Vo, 0xc4 RXB.00001 x.src.0.01 0xef,
1378     CPUFeature_AVX disabled_untested
1379 ######## RCPPS/VRCPPS ##########################################################
1380 rcpps Wps Vps, 0x0f 0x53, CPUFeature_SSE
1381 vrcpps Wpsx Vpsx, 0xc4 RXB.00001 x.1111.L.00 0x53,
1382     CPUFeature_AVX disabled_untested
1383 ######## RCPSS/VRCPSS ##########################################################
1384 rcpss Wss Vss, 0xf3 0x0f 0x53, CPUFeature_SSE
1385 vrcpss Wss Ho Vo, 0xc4 RXB.00001 x.src.x.10 0x53,
1386     CPUFeature_AVX disabled_untested
1387 ######## ROUNDPD/VROUNDPD ######################################################
1388 roundpd Ib Wpd Vpd, 0x66 0x0f 0x3a 0x09, CPUFeature_SSE41
1389 vroundpd Ib Wpdx Vpdx, 0xc4 RXB.00011 x.src.L.01 0x09,
1390     CPUFeature_AVX disabled_untested
1391 ######## ROUNDPS/VROUNDPS ######################################################
1392 roundps Ib Wps Vps, 0x66 0x0f 0x3a 0x08, CPUFeature_SSE41
1393 vroundps Ib Wpsx Vpsx, 0xc4 RXB.00011 x.src.L.01 0x08,
1394     CPUFeature_AVX disabled_untested
1395 ######## ROUNDSD/VROUNDSD ######################################################
1396 roundsd Ib Wsd Vsd, 0x66 0x0f 0x3a 0x0b, CPUFeature_SSE41
1397 vroundsd Ib Wsd Ho Vo, 0xc4 RXB.00011 x.src.x.01 0x0b,
1398     CPUFeature_AVX disabled_untested
1399 ######## ROUNDSS/VROUNDSS ######################################################
1400 roundss Ib Wss Vss, 0x66 0x0f 0x3a 0x0a, CPUFeature_SSE41
1401 vroundss Ib Wss Ho Vo, 0xc4 RXB.00011 x.src.x.01 0x0a,
1402     CPUFeature_AVX disabled_untested
1403 ######## RSQRTPS/VRSQRTPS ######################################################
1404 rsqrtps Wps Vps, 0x0f 0x52, CPUFeature_SSE
1405 vrsqrtps Wpsx Vpsx, 0xc4 RXB.00001 x.1111.L.00 0x52,
1406     CPUFeature_AVX disabled_untested
1407 ######## RSQRTSS/VRSQRTSS ######################################################
1408 rsqrtss Wss Vss, 0xf3 0x0f 0x52, CPUFeature_SSE
1409 vrsqrtss Wss Ho Vo, 0xc4 RXB.00001 x.1111.0.10 0x52,
1410     CPUFeature_AVX disabled_untested
1411 ######## SHUFPD/VSHUFPD ########################################################
1412 shufpd Ib Wpd Vpd, 0x66 0x0f 0xc6, CPUFeature_SSE2
1413 vshufpd Ib Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0xc6,
1414     CPUFeature_AVX disabled_untested
1415 ######## SHUFPS/VSHUFPS ########################################################
1416 shufps Ib Wps Vps, 0x0f 0xc6, CPUFeature_SSE
1417 vshufps Ib Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0xc6,
1418     CPUFeature_AVX disabled_untested
1419 ######## SQRTPD/VSQRTPD ########################################################
1420 sqrtpd Wpd Vpd, 0x66 0x0f 0x51, CPUFeature_SSE2
1421 vsqrtpd Wpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0x51,
1422     CPUFeature_AVX disabled_untested
1423 ######## SQRTPS/VSQRTPS ########################################################
1424 sqrtps Wps Vps, 0x0f 0x51, CPUFeature_SSE
1425 vsqrtps Wpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0x51,
1426     CPUFeature_AVX disabled_untested
1427 ######## SQRTSD/VSQRTSD ########################################################
1428 sqrtsd Wsd Vsd, 0xf2 0x0f 0x51, CPUFeature_SSE2
1429 vsqrtsd Wsd Ho Vo, 0xc4 RXB.00001 x.src.x.11 0x51,
1430     CPUFeature_AVX disabled_untested
1431 ######## SQRTSS/VSQRTSS ########################################################
1432 sqrtss Wss Vss, 0xf3 0x0f 0x51, CPUFeature_SSE
1433 vsqrtss Wss Ho Vo, 0xc4 RXB.00001 x.src.x.10 0x51,
1434     CPUFeature_AVX disabled_untested
1435 ######## LDMXCSR/VLDMXCSR ######################################################
1436 stmxcsr Md, 0x0f 0xae /3, CPUFeature_SSE
1437 vstmxcsr Md, 0xc4 RXB.00001 x.1111.0.00 0xae /3,
1438     CPUFeature_AVX disabled_untested
1439 ######## SUBPD/VSUBPD ##########################################################
1440 subpd Wpd Vpd, 0x66 0x0f 0x5c, CPUFeature_SSE2
1441 vsubpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0x5c, CPUFeature_AVX
1442 ######## SUBPS/VSUBPS ##########################################################
1443 subps Wps Vps, 0x0f 0x5c, CPUFeature_SSE
1444 vsubps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0x5c,
1445     CPUFeature_AVX disabled_untested
1446 ######## SUBSD/VSUBSD ##########################################################
1447 subsd Wsd Vsd, 0xf2 0x0f 0x5c, CPUFeature_SSE2
1448 vsubsd Wsd Hsd Vsd, 0xc4 RXB.00001 x.src.x.11 0x5c,
1449     CPUFeature_AVX disabled_untested
1450 ######## SUBSS/VSUBSS ##########################################################
1451 subss Wss Vss, 0xf3 0x0f 0x5c, CPUFeature_SSE
1452 vsubss Wss Hss Vss, 0xc4 RXB.00001 x.src.x.10 0x5c,
1453     CPUFeature_AVX disabled_untested
1454 ######## UCOMISD/VUCOMISD ######################################################
1455 ucomisd Wsd Vsd, 0x66 0x0f 0x2e, CPUFeature_SSE2
1456 vucomisd Wsd Vsd, 0xc4 RXB.00001 x.src.x.01 0x2e,
1457     CPUFeature_AVX disabled_untested
1458 ######## UCOMISS/VUCOMISS ######################################################
1459 ucomiss Wsd Vsd, 0x0f 0x2e, CPUFeature_SSE
1460 vucomiss Wsd Vsd, 0xc4 RXB.00001 x.src.x.00 0x2e,
1461     CPUFeature_AVX disabled_untested
1462 ######## UNPCKHPD/VUNPCKHPD ####################################################
1463 unpckhpd Wq Vpd, 0x66 0x0f 0x15, CPUFeature_SSE2
1464 vunpckhpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0x15, CPUFeature_AVX
1465 ######## UNPCKHPS/VUNPCKHPS ####################################################
1466 unpckhps Wps Vps, 0x0f 0x15, CPUFeature_SSE
1467 vunpckhps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0x15,
1468     CPUFeature_AVX disabled_untested
1469 ######## UNPCKLPD/VUNPCKLPD ####################################################
1470 unpcklpd Wq Vpd, 0x66 0x0f 0x14, CPUFeature_SSE2
1471 vunpcklpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0x14, CPUFeature_AVX
1472 ######## UNPCKLPS/VUNPCKLPS ####################################################
1473 unpcklps Wps Vps, 0x0f 0x14, CPUFeature_SSE
1474 vunpcklps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0x14,
1475     CPUFeature_AVX disabled_untested
1476 ######## VBROADCASTF128 ########################################################
1477 vbroadcastf128 Mo Vdo, 0xc4 RXB.00010 0.1111.1.01 0x1a,
1478     CPUFeature_AVX disabled_untested
1479 ######## VBROADCASTSD ##########################################################
1480 vbroadcastsd Msd Vdo, 0xc4 RXB.00010 0.1111.1.01 0x19,
1481     CPUFeature_AVX disabled_untested
1482 ######## VBROADCASTSS ##########################################################
1483 vbroadcastss Mss Vpsx, 0xc4 RXB.00010 0.1111.L.01 0x18,
1484     CPUFeature_AVX disabled_untested
1485 ######## VCVTPH2PS #############################################################
1486 vcvtph2ps Wph Vpsx, 0xc4 RXB.02 0.1111.L.01 0x13, CPUFeature_F16C
1487 ######## VCVTPS2PH #############################################################
1488 vcvtps2ph Ib Vpsx Wph, 0xc4 RXB.03 0.1111.L.01 0x1d, CPUFeature_F16C
1489 ######## VEXTRACTF128 ##########################################################
1490 vextractf128 Ib Vdo Wo, 0xc4 RXB.00011 0.1111.1.01 0x19,
1491     CPUFeature_AVX disabled_untested
1492 ######## VFMADDPD/VFMADD132PD/VFMADD213PD/VFMADD231PD ##########################
1493 vfmaddpd Lpdx Wpdx Hpdx Vpdx, 0xc4 RXB.00011 0.src.L.01 0x69,
1494     CPUFeature_FMA4 disabled_untested
1495 vfmaddpd Wpdx Lpdx Hpdx Vpdx, 0xc4 RXB.00011 1.src.L.01 0x69,
1496     CPUFeature_FMA4 disabled_untested
1497 vfmadd132pd Wpdx Hpdx Vpdx, 0xc4 RXB.00010 1.src.L.01 0x98,
1498     CPUFeature_FMA disabled_untested
1499 vfmadd213pd Wpdx Hpdx Vpdx, 0xc4 RXB.00010 1.src.L.01 0xa8,
1500     CPUFeature_FMA disabled_untested
1501 vfmadd231pd Wpdx Hpdx Vpdx, 0xc4 RXB.00010 1.src.L.01 0xb8,
1502     CPUFeature_FMA disabled_untested
1503 ######## VFMADDPS/VFMADD132PS/VFMADD213PS/VFMADD231PS ##########################
1504 vfmaddps Lpsx Wpsx Hpsx Vpsx, 0xc4 RXB.00011 0.src.L.01 0x68,
1505     CPUFeature_FMA4 disabled_untested
1506 vfmaddps Wpsx Lpsx Hpsx Vpsx, 0xc4 RXB.00011 1.src.L.01 0x68,
1507     CPUFeature_FMA4 disabled_untested
1508 vfmadd132ps Wpsx Hpsx Vpsx, 0xc4 RXB.00010 0.src.L.01 0x98,
1509     CPUFeature_FMA disabled_untested
1510 vfmadd213ps Wpsx Hpsx Vpsx, 0xc4 RXB.00010 0.src.L.01 0xa8,
1511     CPUFeature_FMA disabled_untested
1512 vfmadd231ps Wpsx Hpsx Vpsx, 0xc4 RXB.00010 0.src.L.01 0xb8,
1513     CPUFeature_FMA disabled_untested
1514 ######## VFMADDSD/VFMADD132SD/VFMADD213SD/VFMADD231SD ##########################
1515 vfmaddsd Lsd Wsd Hsd Vsd, 0xc4 RXB.00011 0.src.x.01 0x6b,
1516     CPUFeature_FMA4 disabled_untested
1517 vfmaddsd Wsd Lsd Hsd Vsd, 0xc4 RXB.00011 1.src.x.01 0x6b,
1518     CPUFeature_FMA4 disabled_untested
1519 vfmadd132sd Wsd Hsd Vsd, 0xc4 RXB.00010 1.src.x.01 0x99,
1520     CPUFeature_FMA disabled_untested
1521 vfmadd213sd Wsd Hsd Vsd, 0xc4 RXB.00010 1.src.x.01 0xa9,
1522     CPUFeature_FMA disabled_untested
1523 vfmadd231sd Wsd Hsd Vsd, 0xc4 RXB.00010 1.src.x.01 0xb9,
1524     CPUFeature_FMA disabled_untested
1525 ######## VFMADDSS/VFMADD132SS/VFMADD213SS/VFMADD231SS ##########################
1526 vfmaddss Lss Wss Hss Vss, 0xc4 RXB.00011 0.src.x.01 0x6a,
1527     CPUFeature_FMA4 disabled_untested
1528 vfmaddss Wss Lss Hss Vss, 0xc4 RXB.00011 1.src.x.01 0x6a,
1529     CPUFeature_FMA4 disabled_untested
1530 vfmadd132ss Wss Hss Vss, 0xc4 RXB.00010 0.src.x.01 0x99,
1531     CPUFeature_FMA disabled_untested
1532 vfmadd213ss Wss Hss Vss, 0xc4 RXB.00010 0.src.x.01 0xa9,
1533     CPUFeature_FMA disabled_untested
1534 vfmadd231ss Wss Hss Vss, 0xc4 RXB.00010 0.src.x.01 0xb9,
1535     CPUFeature_FMA disabled_untested
1536 ######## VFMADDSUBPD/VFMADDSUB132PD/VFMADDSUB213PD/VFMADDSUB231PD ##############
1537 vfmaddsubpd Lpdx Wpdx Hpdx Vpdx, 0xc4 RXB.00011 0.src.L.01 0x5d,
1538     CPUFeature_FMA4 disabled_untested
1539 vfmaddsubpd Wpdx Lpdx Hpdx Vpdx, 0xc4 RXB.00011 1.src.L.01 0x5d,
1540     CPUFeature_FMA4 disabled_untested
1541 vfmaddsub132pd Wpdx Hpdx Vpdx, 0xc4 RXB.00010 1.src.L.01 0x96,
1542     CPUFeature_FMA disabled_untested
1543 vfmaddsub213pd Wpdx Hpdx Vpdx, 0xc4 RXB.00010 1.src.L.01 0xa6,
1544     CPUFeature_FMA disabled_untested
1545 vfmaddsub231pd Wpdx Hpdx Vpdx, 0xc4 RXB.00010 1.src.L.01 0xb6,
1546     CPUFeature_FMA disabled_untested
1547 ######## VFMADDSUBPS/VFMADDSUB132PS/VFMADDSUB213PS/VFMADDSUB231PS ##############
1548 vfmaddsubps Lpsx Wpsx Hpsx Vpsx, 0xc4 RXB.00011 0.src.L.01 0x5c,
1549     CPUFeature_FMA4 disabled_untested
1550 vfmaddsubps Wpsx Lpsx Hpsx Vpsx, 0xc4 RXB.00011 1.src.L.01 0x5c,
1551     CPUFeature_FMA4 disabled_untested
1552 vfmaddsub132ps Wpsx Hpsx Vpsx, 0xc4 RXB.00010 0.src.L.01 0x96,
1553     CPUFeature_FMA disabled_untested
1554 vfmaddsub213ps Wpsx Hpsx Vpsx, 0xc4 RXB.00010 0.src.L.01 0xa6,
1555     CPUFeature_FMA disabled_untested
1556 vfmaddsub231ps Wpsx Hpsx Vpsx, 0xc4 RXB.00010 0.src.L.01 0xb6,
1557     CPUFeature_FMA disabled_untested
1558 ######## VFMSUBADDPD/VFMSUBADD132PD/VFMSUBADD213PD/VFMSUBADD231PD ##############
1559 vfmsubaddpd Lpdx Wpdx Hpdx Vpdx, 0xc4 RXB.00011 0.src.L.01 0x5f,
1560     CPUFeature_FMA4 disabled_untested
1561 vfmsubaddpd Wpdx Lpdx Hpdx Vpdx, 0xc4 RXB.00011 1.src.L.01 0x5f,
1562     CPUFeature_FMA4 disabled_untested
1563 vfmsubadd132pd Wpdx Hpdx Vpdx, 0xc4 RXB.00010 1.src.L.01 0x97,
1564     CPUFeature_FMA disabled_untested
1565 vfmsubadd213pd Wpdx Hpdx Vpdx, 0xc4 RXB.00010 1.src.L.01 0xa7,
1566     CPUFeature_FMA disabled_untested
1567 vfmsubadd231pd Wpdx Hpdx Vpdx, 0xc4 RXB.00010 1.src.L.01 0xb7,
1568     CPUFeature_FMA disabled_untested
1569 ######## VFMSUBADDPS/VFMSUBADD132PS/VFMSUBADD213PS/VFMSUBADD231PS ##############
1570 vfmsubaddps Lpsx Wpsx Hpsx Vpsx, 0xc4 RXB.00011 0.src.L.01 0x5e,
1571     CPUFeature_FMA4 disabled_untested
1572 vfmsubaddps Wpsx Lpsx Hpsx Vpsx, 0xc4 RXB.00011 1.src.L.01 0x5e,
1573     CPUFeature_FMA4 disabled_untested
1574 vfmsubadd132ps Wpsx Hpsx Vpsx, 0xc4 RXB.00010 0.src.L.01 0x97,
1575     CPUFeature_FMA disabled_untested
1576 vfmsubadd213ps Wpsx Hpsx Vpsx, 0xc4 RXB.00010 0.src.L.01 0xa7,
1577     CPUFeature_FMA disabled_untested
1578 vfmsubadd231ps Wpsx Hpsx Vpsx, 0xc4 RXB.00010 0.src.L.01 0xb7,
1579     CPUFeature_FMA disabled_untested
1580 ######## VFMSUBPD/VFMSUB132PD/VFMSUB213PD/VFMSUB231PD ##########################
1581 vfmsubpd Lpdx Wpdx Hpdx Vpdx, 0xc4 RXB.00011 0.src.L.01 0x6d,
1582     CPUFeature_FMA4 disabled_untested
1583 vfmsubpd Wpdx Lpdx Hpdx Vpdx, 0xc4 RXB.00011 1.src.L.01 0x6d,
1584     CPUFeature_FMA4 disabled_untested
1585 vfmsub132pd Wpdx Hpdx Vpdx, 0xc4 RXB.00010 1.src.L.01 0x9a,
1586     CPUFeature_FMA disabled_untested
1587 vfmsub213pd Wpdx Hpdx Vpdx, 0xc4 RXB.00010 1.src.L.01 0xaa,
1588     CPUFeature_FMA disabled_untested
1589 vfmsub231pd Wpdx Hpdx Vpdx, 0xc4 RXB.00010 1.src.L.01 0xba,
1590     CPUFeature_FMA disabled_untested
1591 ######## VFMSUBPS/VFMSUB132PS/VFMSUB213PS/VFMSUB231PS ##########################
1592 vfmsubps Lpsx Wpsx Hpsx Vpsx, 0xc4 RXB.00011 0.src.L.01 0x6c,
1593     CPUFeature_FMA4 disabled_untested
1594 vfmsubps Wpsx Lpsx Hpsx Vpsx, 0xc4 RXB.00011 1.src.L.01 0x6c,
1595     CPUFeature_FMA4 disabled_untested
1596 vfmsub132ps Wpsx Hpsx Vpsx, 0xc4 RXB.00010 0.src.L.01 0x9a,
1597     CPUFeature_FMA disabled_untested
1598 vfmsub213ps Wpsx Hpsx Vpsx, 0xc4 RXB.00010 0.src.L.01 0xaa,
1599     CPUFeature_FMA disabled_untested
1600 vfmsub231ps Wpsx Hpsx Vpsx, 0xc4 RXB.00010 0.src.L.01 0xba,
1601     CPUFeature_FMA disabled_untested
1602 ######## VFMSUBSD/VFMSUB132SD/VFMSUB213SD/VFMSUB231SD ##########################
1603 vfmsubsd Lsd Wsd Hsd Vsd, 0xc4 RXB.00011 0.src.x.01 0x6f,
1604     CPUFeature_FMA4 disabled_untested
1605 vfmsubsd Wsd Lsd Hsd Vsd, 0xc4 RXB.00011 1.src.x.01 0x6f,
1606     CPUFeature_FMA4 disabled_untested
1607 vfmsub132sd Wsd Hsd Vsd, 0xc4 RXB.00010 1.src.x.01 0x9b,
1608     CPUFeature_FMA disabled_untested
1609 vfmsub213sd Wsd Hsd Vsd, 0xc4 RXB.00010 1.src.x.01 0xab,
1610     CPUFeature_FMA disabled_untested
1611 vfmsub231sd Wsd Hsd Vsd, 0xc4 RXB.00010 1.src.x.01 0xbb,
1612     CPUFeature_FMA disabled_untested
1613 ######## VFMSUBSS/VFMSUB132SS/VFMSUB213SS/VFMSUB231SS ##########################
1614 vfmsubss Lss Wss Hss Vss, 0xc4 RXB.00011 0.src.x.01 0x6e,
1615     CPUFeature_FMA4 disabled_untested
1616 vfmsubss Wss Lss Hss Vss, 0xc4 RXB.00011 1.src.x.01 0x6e,
1617     CPUFeature_FMA4 disabled_untested
1618 vfmsub132ss Wss Hss Vss, 0xc4 RXB.00010 0.src.x.01 0x9b,
1619     CPUFeature_FMA disabled_untested
1620 vfmsub213ss Wss Hss Vss, 0xc4 RXB.00010 0.src.x.01 0xab,
1621     CPUFeature_FMA disabled_untested
1622 vfmsub231ss Wss Hss Vss, 0xc4 RXB.00010 0.src.x.01 0xbb,
1623     CPUFeature_FMA disabled_untested
1624 ######## VFNMADDPD/VFNMADD132PD/VFNMADD213PD/VFNMADD231PD ######################
1625 vfnmaddpd Lpdx Wpdx Hpdx Vpdx, 0xc4 RXB.00011 0.src.L.01 0x79,
1626     CPUFeature_FMA4 disabled_untested
1627 vfnmaddpd Wpdx Lpdx Hpdx Vpdx, 0xc4 RXB.00011 1.src.L.01 0x79,
1628     CPUFeature_FMA4 disabled_untested
1629 vfnmadd132pd Wpdx Hpdx Vpdx, 0xc4 RXB.00010 1.src.L.01 0x9c,
1630     CPUFeature_FMA disabled_untested
1631 vfnmadd213pd Wpdx Hpdx Vpdx, 0xc4 RXB.00010 1.src.L.01 0xac,
1632     CPUFeature_FMA disabled_untested
1633 vfnmadd231pd Wpdx Hpdx Vpdx, 0xc4 RXB.00010 1.src.L.01 0xbc,
1634     CPUFeature_FMA disabled_untested
1635 ######## VFNMADDPS/VFNMADD132PS/VFNMADD213PS/VFNMADD231PS ######################
1636 vfnmaddps Lpsx Wpsx Hpsx Vpsx, 0xc4 RXB.00011 0.src.L.01 0x78,
1637     CPUFeature_FMA4 disabled_untested
1638 vfnmaddps Wpsx Lpsx Hpsx Vpsx, 0xc4 RXB.00011 1.src.L.01 0x78,
1639     CPUFeature_FMA4 disabled_untested
1640 vfnmadd132ps Wpsx Hpsx Vpsx, 0xc4 RXB.00010 0.src.L.01 0x9c,
1641     CPUFeature_FMA disabled_untested
1642 vfnmadd213ps Wpsx Hpsx Vpsx, 0xc4 RXB.00010 0.src.L.01 0xac,
1643     CPUFeature_FMA disabled_untested
1644 vfnmadd231ps Wpsx Hpsx Vpsx, 0xc4 RXB.00010 0.src.L.01 0xbc,
1645     CPUFeature_FMA disabled_untested
1646 ######## VFNMADDSD/VFNMADD132SD/VFNMADD213SD/VFNMADD231SD ######################
1647 vfnmaddsd Lsd Wsd Hsd Vsd, 0xc4 RXB.00011 0.src.x.01 0x7b,
1648     CPUFeature_FMA4 disabled_untested
1649 vfnmaddsd Wsd Lsd Hsd Vsd, 0xc4 RXB.00011 1.src.x.01 0x7b,
1650     CPUFeature_FMA4 disabled_untested
1651 vfnmadd132sd Wsd Hsd Vsd, 0xc4 RXB.00010 1.src.x.01 0x9d,
1652     CPUFeature_FMA disabled_untested
1653 vfnmadd213sd Wsd Hsd Vsd, 0xc4 RXB.00010 1.src.x.01 0xad,
1654     CPUFeature_FMA disabled_untested
1655 vfnmadd231sd Wsd Hsd Vsd, 0xc4 RXB.00010 1.src.x.01 0xbd,
1656     CPUFeature_FMA disabled_untested
1657 ######## VFMADDSS/VFMADD132SS/VFMADD213SS/VFMADD231SS ##########################
1658 vfnmaddss Lss Wss Hss Vss, 0xc4 RXB.00011 0.src.x.01 0x7a,
1659     CPUFeature_FMA4 disabled_untested
1660 vfnmaddss Wss Lss Hss Vss, 0xc4 RXB.00011 1.src.x.01 0x7a,
1661     CPUFeature_FMA4 disabled_untested
1662 vfnmadd132ss Wss Hss Vss, 0xc4 RXB.00010 0.src.x.01 0x9d,
1663     CPUFeature_FMA disabled_untested
1664 vfnmadd213ss Wss Hss Vss, 0xc4 RXB.00010 0.src.x.01 0xad,
1665     CPUFeature_FMA disabled_untested
1666 vfnmadd231ss Wss Hss Vss, 0xc4 RXB.00010 0.src.x.01 0xbd,
1667     CPUFeature_FMA disabled_untested
1668 ######## VFNMSUBPD/VFNMSUB132PD/VFNMSUB213PD/VFNMSUB231PD ######################
1669 vfnmsubpd Lpdx Wpdx Hpdx Vpdx, 0xc4 RXB.00011 0.src.L.01 0x7d,
1670     CPUFeature_FMA4 disabled_untested
1671 vfnmsubpd Wpdx Lpdx Hpdx Vpdx, 0xc4 RXB.00011 1.src.L.01 0x7d,
1672     CPUFeature_FMA4 disabled_untested
1673 vfnmsub132pd Wpdx Hpdx Vpdx, 0xc4 RXB.00010 1.src.L.01 0x9e,
1674     CPUFeature_FMA disabled_untested
1675 vfnmsub213pd Wpdx Hpdx Vpdx, 0xc4 RXB.00010 1.src.L.01 0xae,
1676     CPUFeature_FMA disabled_untested
1677 vfnmsub231pd Wpdx Hpdx Vpdx, 0xc4 RXB.00010 1.src.L.01 0xbe,
1678     CPUFeature_FMA disabled_untested
1679 ######## VFNMSUBPS/VFNMSUB132PS/VFNMSUB213PS/VFNMSUB231PS ######################
1680 vfnmsubps Lpsx Wpsx Hpsx Vpsx, 0xc4 RXB.00011 0.src.L.01 0x7c,
1681     CPUFeature_FMA4 disabled_untested
1682 vfnmsubps Wpsx Lpsx Hpsx Vpsx, 0xc4 RXB.00011 1.src.L.01 0x7c,
1683     CPUFeature_FMA4 disabled_untested
1684 vfnmsub132ps Wpsx Hpsx Vpsx, 0xc4 RXB.00010 0.src.L.01 0x9e,
1685     CPUFeature_FMA disabled_untested
1686 vfnmsub213ps Wpsx Hpsx Vpsx, 0xc4 RXB.00010 0.src.L.01 0xae,
1687     CPUFeature_FMA disabled_untested
1688 vfnmsub231ps Wpsx Hpsx Vpsx, 0xc4 RXB.00010 0.src.L.01 0xbe,
1689     CPUFeature_FMA disabled_untested
1690 ######## VFNMSUBSD/VFNMSUB132SD/VFNMSUB213SD/VFNMSUB231SD ######################
1691 vfnmsubsd Lsd Wsd Hsd Vsd, 0xc4 RXB.00011 0.src.x.01 0x7f,
1692     CPUFeature_FMA4 disabled_untested
1693 vfnmsubsd Wsd Lsd Hsd Vsd, 0xc4 RXB.00011 1.src.x.01 0x7f,
1694     CPUFeature_FMA4 disabled_untested
1695 vfnmsub132sd Wsd Hsd Vsd, 0xc4 RXB.00010 1.src.x.01 0x9f,
1696     CPUFeature_FMA disabled_untested
1697 vfnmsub213sd Wsd Hsd Vsd, 0xc4 RXB.00010 1.src.x.01 0xaf,
1698     CPUFeature_FMA disabled_untested
1699 vfnmsub231sd Wsd Hsd Vsd, 0xc4 RXB.00010 1.src.x.01 0xbf,
1700     CPUFeature_FMA disabled_untested
1701 ######## VFMSUBSS/VFMSUB132SS/VFMSUB213SS/VFMSUB231SS ##########################
1702 vfnmsubss Lss Wss Hss Vss, 0xc4 RXB.00011 0.src.x.01 0x7e,
1703     CPUFeature_FMA4 disabled_untested
1704 vfnmsubss Wss Lss Hss Vss, 0xc4 RXB.00011 1.src.x.01 0x7e,
1705     CPUFeature_FMA4 disabled_untested
1706 vfnmsub132ss Wss Hss Vss, 0xc4 RXB.00010 0.src.x.01 0x9f,
1707     CPUFeature_FMA disabled_untested
1708 vfnmsub213ss Wss Hss Vss, 0xc4 RXB.00010 0.src.x.01 0xaf,
1709     CPUFeature_FMA disabled_untested
1710 vfnmsub231ss Wss Hss Vss, 0xc4 RXB.00010 0.src.x.01 0xbf,
1711     CPUFeature_FMA disabled_untested
1712 ######## VFRCZPD ###############################################################
1713 vfrczpd Wpdx Vpdx, 0x8f RXB.01001 0.1111.L.00 0x81,
1714     CPUFeature_XOP disabled_untested
1715 ######## VFRCZPS ###############################################################
1716 vfrczps Wpsx Vpsx, 0x8f RXB.01001 0.1111.L.00 0x80,
1717     CPUFeature_XOP disabled_untested
1718 ######## VFRCZSD ###############################################################
1719 vfrczsd Wsd Vsd, 0x8f RXB.01001 0.1111.0.00 0x83,
1720     CPUFeature_XOP disabled_untested
1721 ######## VFRCZSS ###############################################################
1722 vfrczss Wss Vss, 0x8f RXB.01001 0.1111.0.00 0x82,
1723     CPUFeature_XOP disabled_untested
1724 ######## VINSERTF128 ###########################################################
1725 vinsertf128 Ib Wo Hdo Vdo, 0xc4 RXB.00011 0.1111.1.01 0x18,
1726     CPUFeature_AVX disabled_untested
1727 ######## VMASKMOVPD ############################################################
1728 vmaskmovpd Mpdx Hx Vpdx, 0xc4 RXB.00010 0.src.L.01 0x2d,
1729     CPUFeature_AVX disabled_untested
1730 vmaskmovpd Vpdx Hx Mpdx, 0xc4 RXB.00010 0.src.L.01 0x2f,
1731     CPUFeature_AVX disabled_untested
1732 ######## VMASKMOVPS ############################################################
1733 vmaskmovps Mpdx Hx Vpdx, 0xc4 RXB.00010 0.src.L.01 0x2c,
1734     CPUFeature_AVX disabled_untested
1735 vmaskmovps Vpdx Hx Mpdx, 0xc4 RXB.00010 0.src.L.01 0x2e,
1736     CPUFeature_AVX disabled_untested
1737 ######## VPCMOV ################################################################
1738 vpcmov Lx Wx Hx Vx, 0x8f RXB.01000 0.src.L.00 0xa2,
1739     CPUFeature_XOP disabled_untested
1740 vpcmov Wx Lx Hx Vx, 0x8f RXB.01000 1.src.L.00 0xa2,
1741     CPUFeature_XOP disabled_untested
1742 ######## VPCOMB ################################################################
1743 vpcomb Ib Wo Ho Vo, 0x8f RXB.01000 0.src.0.00 0xcc,
1744     CPUFeature_XOP disabled_untested
1745 ######## VPCOMD ################################################################
1746 vpcomd Ib Wo Ho Vo, 0x8f RXB.01000 0.src.0.00 0xce,
1747     CPUFeature_XOP disabled_untested
1748 ######## VPCOMQ ################################################################
1749 vpcomq Ib Wo Ho Vo, 0x8f RXB.01000 0.src.0.00 0xcf,
1750     CPUFeature_XOP disabled_untested
1751 ######## VPCOMUB ###############################################################
1752 vpcomub Ib Wo Ho Vo, 0x8f RXB.01000 0.src.0.00 0xec,
1753     CPUFeature_XOP disabled_untested
1754 ######## VPCOMUD ###############################################################
1755 vpcomud Ib Wo Ho Vo, 0x8f RXB.01000 0.src.0.00 0xee,
1756     CPUFeature_XOP disabled_untested
1757 ######## VPCOMUQ ###############################################################
1758 vpcomuq Ib Wo Ho Vo, 0x8f RXB.01000 0.src.0.00 0xef,
1759     CPUFeature_XOP disabled_untested
1760 ######## VPCOMUW ###############################################################
1761 vpcomuw Ib Wo Ho Vo, 0x8f RXB.01000 0.src.0.00 0xed,
1762     CPUFeature_XOP disabled_untested
1763 ######## VPCOMW ################################################################
1764 vpcomw Ib Wo Ho Vo, 0x8f RXB.01000 0.src.0.00 0xcd,
1765     CPUFeature_XOP disabled_untested
1766 ######## VPERM2F128 ############################################################
1767 vperm2f128 Ib Wdo Hdo Vdo, 0xc4 RXB.00011 0.src.1.01 0x06,
1768     CPUFeature_AVX disabled_untested
1769 ######## VPERMIL2PD ############################################################
1770 vpermil2pd I2 Lpdx Wpdx Hpdx Vpdx, 0xc4 RXB.00011 0.src.L.01 0x49,
1771     CPUFeature_XOP disabled_untested
1772 vpermil2pd I2 Wpdx Lpdx Hpdx Vpdx, 0xc4 RXB.00011 1.src.L.01 0x49,
1773     CPUFeature_XOP disabled_untested
1774 ######## VPERMIL2PS ############################################################
1775 vpermil2ps I2 Lpsx Wpsx Hpsx Vpsx, 0xc4 RXB.00011 0.src.L.01 0x48,
1776     CPUFeature_XOP disabled_untested
1777 vpermil2ps I2 Wpsx Lpsx Hpsx Vpsx, 0xc4 RXB.00011 1.src.L.01 0x48,
1778     CPUFeature_XOP disabled_untested
1779 ######## VPERMILPD #############################################################
1780 vpermilpd Wpqwx Hpdx Vpdx, 0xc4 RXB.00010 0.src.L.01 0x0d,
1781     CPUFeature_AVX disabled_untested
1782 vpermilpd Ib Wpdx Vpdx, 0xc4 RXB.00011 0.1111.L.01 0x05,
1783     CPUFeature_AVX disabled_untested
1784 ######## VPERMILPS #############################################################
1785 vpermilps Wpdwx Hpsx Vpsx, 0xc4 RXB.00010 0.src.L.01 0x0c,
1786     CPUFeature_AVX disabled_untested
1787 vpermilps Ib Wpsx Vpsx, 0xc4 RXB.00011 0.1111.L.01 0x04,
1788     CPUFeature_AVX disabled_untested
1789 ######## VPHADDBD ##############################################################
1790 vphaddbd Wo Vo, 0x8f RXB.01001 0.1111.0.00 0xc2,
1791     CPUFeature_XOP disabled_untested
1792 ######## VPHADDBQ ##############################################################
1793 vphaddbq Wo Vo, 0x8f RXB.01001 0.1111.0.00 0xc3,
1794     CPUFeature_XOP disabled_untested
1795 ######## VPHADDBW ##############################################################
1796 vphaddbw Wo Vo, 0x8f RXB.01001 0.1111.0.00 0xc1,
1797     CPUFeature_XOP disabled_untested
1798 ######## VPHADDDQ ##############################################################
1799 vphadddq Wo Vo, 0x8f RXB.01001 0.1111.0.00 0xcb,
1800     CPUFeature_XOP disabled_untested
1801 ######## VPHADDUBD #############################################################
1802 vphaddubd Wo Vo, 0x8f RXB.01001 0.1111.0.00 0xd2,
1803     CPUFeature_XOP disabled_untested
1804 ######## VPHADDUBQ #############################################################
1805 vphaddubq Wo Vo, 0x8f RXB.01001 0.1111.0.00 0xd3,
1806     CPUFeature_XOP disabled_untested
1807 ######## VPHADDUBW #############################################################
1808 vphaddubw Wo Vo, 0x8f RXB.01001 0.1111.0.00 0xd1,
1809     CPUFeature_XOP disabled_untested
1810 ######## VPHADDUDQ #############################################################
1811 vphaddudq Wo Vo, 0x8f RXB.01001 0.1111.0.00 0xdb,
1812     CPUFeature_XOP disabled_untested
1813 ######## VPHADDUWD #############################################################
1814 vphadduwd Wo Vo, 0x8f RXB.01001 0.1111.0.00 0xd6,
1815     CPUFeature_XOP disabled_untested
1816 ######## VPHADDUWQ #############################################################
1817 vphadduwq Wo Vo, 0x8f RXB.01001 0.1111.0.00 0xd7,
1818     CPUFeature_XOP disabled_untested
1819 ######## VPHADDWD ##############################################################
1820 vphaddwd Wo Vo, 0x8f RXB.01001 0.1111.0.00 0xc6,
1821     CPUFeature_XOP disabled_untested
1822 ######## VPHADDWQ ##############################################################
1823 vphaddwq Wo Vo, 0x8f RXB.01001 0.1111.0.00 0xc7,
1824     CPUFeature_XOP disabled_untested
1825 ######## VPHSUBBW ##############################################################
1826 vphsubbw Wo Vo, 0x8f RXB.01001 0.1111.0.00 0xe1,
1827     CPUFeature_XOP disabled_untested
1828 ######## VPHSUBDQ ##############################################################
1829 vphsubdq Wo Vo, 0x8f RXB.01001 0.1111.0.00 0xe3,
1830     CPUFeature_XOP disabled_untested
1831 ######## VPHSUBWD ##############################################################
1832 vphsubwd Wo Vo, 0x8f RXB.01001 0.1111.0.00 0xe2,
1833     CPUFeature_XOP disabled_untested
1834 ######## VPMACSDD ##############################################################
1835 vpmacsdd Lpj Wpj Hpj Vpj, 0x8f RXB.01000 0.src.0.00 0x9e,
1836     CPUFeature_XOP disabled_untested
1837 ######## VPMACSDQH #############################################################
1838 vpmacsdqh Lo Wo Ho Vo, 0x8f RXB.01000 0.src.0.00 0x9f,
1839     CPUFeature_XOP disabled_untested
1840 ######## VPMACSDQL #############################################################
1841 vpmacsdql Lo Wo Ho Vo, 0x8f RXB.01000 0.src.0.00 0x97,
1842     CPUFeature_XOP disabled_untested
1843 ######## VPMACSSDD #############################################################
1844 vpmacssdd Lpj Wpj Hpj Vpj, 0x8f RXB.01000 0.src.0.00 0x8e,
1845     CPUFeature_XOP disabled_untested
1846 ######## VPMACSSDQH ############################################################
1847 vpmacssdqh Lo Wo Ho Vo, 0x8f RXB.01000 0.src.0.00 0x8f,
1848     CPUFeature_XOP disabled_untested
1849 ######## VPMACSSDQL ############################################################
1850 vpmacssdql Lo Wo Ho Vo, 0x8f RXB.01000 0.src.0.00 0x87,
1851     CPUFeature_XOP disabled_untested
1852 ######## VPMACSSWD #############################################################
1853 vpmacsswd Lo Wo Ho Vo, 0x8f RXB.01000 0.src.0.00 0x86,
1854     CPUFeature_XOP disabled_untested
1855 ######## VPMACSSWW #############################################################
1856 vpmacssww Lpi Wpi Hpi Vpi, 0x8f RXB.01000 0.src.0.00 0x85,
1857     CPUFeature_XOP disabled_untested
1858 ######## VPMACSWD ##############################################################
1859 vpmacswd Lo Wo Ho Vo, 0x8f RXB.01000 0.src.0.00 0x96,
1860     CPUFeature_XOP disabled_untested
1861 ######## VPMACSWW ##############################################################
1862 vpmacsww Lpi Wpi Hpi Vpi, 0x8f RXB.01000 0.src.0.00 0x95,
1863     CPUFeature_XOP disabled_untested
1864 ######## VPMADCSSWD ############################################################
1865 vpmadcsswd Lo Wo Ho Vo, 0x8f RXB.01000 0.src.0.00 0xa6,
1866     CPUFeature_XOP disabled_untested
1867 ######## VPMADCSWD #############################################################
1868 vpmadcswd Lo Wo Ho Vo, 0x8f RXB.01000 0.src.0.00 0xb6,
1869     CPUFeature_XOP disabled_untested
1870 ######## VPPERM ################################################################
1871 vpperm Lpb Wpb Hpb Vpb, 0x8f RXB.01000 0.src.0.00 0xa3,
1872     CPUFeature_XOP disabled_untested
1873 vpperm Wpb Lpb Hpb Vpb, 0x8f RXB.01000 1.src.0.00 0xa3,
1874     CPUFeature_XOP disabled_untested
1875 ######## VPROTB ################################################################
1876 vprotb Ho Wo Vo, 0x8f RXB.01001 0.src.0.00 0x90,
1877     CPUFeature_XOP disabled_untested
1878 vprotb Wo Ho Vo, 0x8f RXB.01001 1.src.0.00 0x90,
1879     CPUFeature_XOP disabled_untested
1880 vprotb Ib Wo Vo, 0x8f RXB.01000 0.1111.0.00 0xc0,
1881     CPUFeature_XOP disabled_untested
1882 ######## VPROTD ################################################################
1883 vprotd Ho Wo Vo, 0x8f RXB.01001 0.src.0.00 0x92,
1884     CPUFeature_XOP disabled_untested
1885 vprotd Wo Ho Vo, 0x8f RXB.01001 1.src.0.00 0x92,
1886     CPUFeature_XOP disabled_untested
1887 vprotd Ib Wo Vo, 0x8f RXB.01000 0.1111.0.00 0xc2,
1888     CPUFeature_XOP disabled_untested
1889 ######## VPROTQ ################################################################
1890 vprotq Ho Wo Vo, 0x8f RXB.01001 0.src.0.00 0x93,
1891     CPUFeature_XOP disabled_untested
1892 vprotq Wo Ho Vo, 0x8f RXB.01001 1.src.0.00 0x93,
1893     CPUFeature_XOP disabled_untested
1894 vprotq Ib Wo Vo, 0x8f RXB.01000 0.1111.0.00 0xc3,
1895     CPUFeature_XOP disabled_untested
1896 ######## VPROTW ################################################################
1897 vprotw Ho Wo Vo, 0x8f RXB.01001 0.src.0.00 0x91,
1898     CPUFeature_XOP disabled_untested
1899 vprotw Wo Ho Vo, 0x8f RXB.01001 1.src.0.00 0x91,
1900     CPUFeature_XOP disabled_untested
1901 vprotw Ib Wo Vo, 0x8f RXB.01000 0.1111.0.00 0xc1,
1902     CPUFeature_XOP disabled_untested
1903 ######## VPSHAB ################################################################
1904 vpshab Ho Wo Vo, 0x8f RXB.01001 0.src.0.00 0x98,
1905     CPUFeature_XOP disabled_untested
1906 vpshab Wo Ho Vo, 0x8f RXB.01001 1.src.0.00 0x98,
1907     CPUFeature_XOP disabled_untested
1908 ######## VPSHAD ################################################################
1909 vpshad Ho Wo Vo, 0x8f RXB.01001 0.src.0.00 0x9a,
1910     CPUFeature_XOP disabled_untested
1911 vpshad Wo Ho Vo, 0x8f RXB.01001 1.src.0.00 0x9a,
1912     CPUFeature_XOP disabled_untested
1913 ######## VPSHAQ ################################################################
1914 vpshaq Ho Wo Vo, 0x8f RXB.01001 0.src.0.00 0x9b,
1915     CPUFeature_XOP disabled_untested
1916 vpshaq Wo Ho Vo, 0x8f RXB.01001 1.src.0.00 0x9b,
1917     CPUFeature_XOP disabled_untested
1918 ######## VPSHAW ################################################################
1919 vpshaw Ho Wo Vo, 0x8f RXB.01001 0.src.0.00 0x99,
1920     CPUFeature_XOP disabled_untested
1921 vpshaw Wo Ho Vo, 0x8f RXB.01001 1.src.0.00 0x99,
1922     CPUFeature_XOP disabled_untested
1923 ######## VPSHLB ################################################################
1924 vpshlb Ho Wo Vo, 0x8f RXB.01001 0.src.0.00 0x94,
1925     CPUFeature_XOP disabled_untested
1926 vpshlb Wo Ho Vo, 0x8f RXB.01001 1.src.0.00 0x94,
1927     CPUFeature_XOP disabled_untested
1928 ######## VPSHLD ################################################################
1929 vpshld Ho Wo Vo, 0x8f RXB.01001 0.src.0.00 0x96,
1930     CPUFeature_XOP disabled_untested
1931 vpshld Wo Ho Vo, 0x8f RXB.01001 1.src.0.00 0x96,
1932     CPUFeature_XOP disabled_untested
1933 ######## VPSHLQ ################################################################
1934 vpshlq Ho Wo Vo, 0x8f RXB.01001 0.src.0.00 0x97,
1935     CPUFeature_XOP disabled_untested
1936 vpshlq Wo Ho Vo, 0x8f RXB.01001 1.src.0.00 0x97,
1937     CPUFeature_XOP disabled_untested
1938 ######## VPSHLW ################################################################
1939 vpshlw Ho Wo Vo, 0x8f RXB.01001 0.src.0.00 0x95,
1940     CPUFeature_XOP disabled_untested
1941 vpshlw Wo Ho Vo, 0x8f RXB.01001 1.src.0.00 0x95,
1942     CPUFeature_XOP disabled_untested
1943 ######## VTESTPD ###############################################################
1944 vtestpd Wpdx Vpdx, 0xc4 RXB.00010 0.1111.L.01 0x0f,
1945     CPUFeature_AVX disabled_untested
1946 ######## VTESTPS ###############################################################
1947 vtestps Wpsx Vpsx, 0xc4 RXB.00010 0.1111.L.01 0x0e,
1948     CPUFeature_AVX disabled_untested
1949 ######## VZEROALL ##############################################################
1950 vzeroall, 0xc4 RXB.00001 x.1111.1.00 0x77, CPUFeature_AVX
1951 ######## VZEROUPPER ############################################################
1952 vzeroupper, 0xc4 RXB.00001 x.1111.0.00 0x77, CPUFeature_AVX
1953 ######## XORPD/VXORPD ##########################################################
1954 xorpd Wpd Vpd, 0x66 0x0f 0x57, CPUFeature_SSE2
1955 vxorpd Wpdx Hpdx Vpdx, 0xc4 RXB.00001 x.src.L.01 0x57, CPUFeature_AVX
1956 ######## XORPS/VXORPS ##########################################################
1957 xorps Wpd Vpd, 0x0f 0x57, CPUFeature_SSE
1958 vxorps Wpsx Hpsx Vpsx, 0xc4 RXB.00001 x.src.L.00 0x57,
1959     CPUFeature_AVX disabled_untested
1960 ######## XGETBV ################################################################
1961 xgetbv, 0x0f 0x01 0xd0, CPUFeature_FXSR
1962 ######## XRSTOR ################################################################
1963 xrstor Msx, 0x0f 0xae /5, norexw CPUFeature_FXSR
1964 xrstor64 Msx, rexw 0x0f 0xae /5, amd64 CPUFeature_FXSR
1965 ######## XSAVE #################################################################
1966 xsave Msx, 0x0f 0xae /4, norexw CPUFeature_FXSR
1967 xsave64 Msx, rexw 0x0f 0xae /4, amd64 CPUFeature_FXSR
1968 ######## XSAVEOPT ##############################################################
1969 xsaveopt Msx, 0x0f 0xae /6, norexw CPUFeature_FXSR
1970 xsaveopt64 Msx, rexw 0x0f 0xae /6, amd64 CPUFeature_FXSR
1971 ######## XSETBV ################################################################
1972 xsetbv, 0x0f 0x01 0xd1, CPUFeature_FXSR nacl-forbidden
1973 ################################################################################