]>
Commit | Line | Data |
---|---|---|
ad692897 L |
1 | /* PREFIX_EVEX_0F5B */ |
2 | { | |
3 | { VEX_W_TABLE (EVEX_W_0F5B_P_0) }, | |
f7cfcddd JB |
4 | { "%XEvcvttp%XS2dq", { XM, EXx, EXxEVexS }, 0 }, |
5 | { "%XEvcvtp%XS2dq", { XM, EXx, EXxEVexR }, 0 }, | |
ad692897 | 6 | }, |
ad692897 L |
7 | /* PREFIX_EVEX_0F6F */ |
8 | { | |
9 | { Bad_Opcode }, | |
10 | { VEX_W_TABLE (EVEX_W_0F6F_P_1) }, | |
11 | { VEX_W_TABLE (EVEX_W_0F6F_P_2) }, | |
12 | { VEX_W_TABLE (EVEX_W_0F6F_P_3) }, | |
13 | }, | |
14 | /* PREFIX_EVEX_0F70 */ | |
15 | { | |
16 | { Bad_Opcode }, | |
f7cfcddd | 17 | { "%XEvpshufhw", { XM, EXx, Ib }, 0 }, |
ad692897 | 18 | { VEX_W_TABLE (EVEX_W_0F70_P_2) }, |
f7cfcddd | 19 | { "%XEvpshuflw", { XM, EXx, Ib }, 0 }, |
ad692897 | 20 | }, |
ad692897 L |
21 | /* PREFIX_EVEX_0F78 */ |
22 | { | |
23 | { VEX_W_TABLE (EVEX_W_0F78_P_0) }, | |
c1d66d5f | 24 | { "vcvttss2usi", { Gdq, EXd, EXxEVexS }, 0 }, |
ad692897 | 25 | { VEX_W_TABLE (EVEX_W_0F78_P_2) }, |
c1d66d5f | 26 | { "vcvttsd2usi", { Gdq, EXq, EXxEVexS }, 0 }, |
ad692897 L |
27 | }, |
28 | /* PREFIX_EVEX_0F79 */ | |
29 | { | |
30 | { VEX_W_TABLE (EVEX_W_0F79_P_0) }, | |
c1d66d5f | 31 | { "vcvtss2usi", { Gdq, EXd, EXxEVexR }, 0 }, |
ad692897 | 32 | { VEX_W_TABLE (EVEX_W_0F79_P_2) }, |
c1d66d5f | 33 | { "vcvtsd2usi", { Gdq, EXq, EXxEVexR }, 0 }, |
ad692897 L |
34 | }, |
35 | /* PREFIX_EVEX_0F7A */ | |
36 | { | |
37 | { Bad_Opcode }, | |
38 | { VEX_W_TABLE (EVEX_W_0F7A_P_1) }, | |
39 | { VEX_W_TABLE (EVEX_W_0F7A_P_2) }, | |
40 | { VEX_W_TABLE (EVEX_W_0F7A_P_3) }, | |
41 | }, | |
42 | /* PREFIX_EVEX_0F7B */ | |
43 | { | |
44 | { Bad_Opcode }, | |
b5c37946 | 45 | { "vcvtusi2ssY{%LQ|}", { XMScalar, VexScalar, EXxEVexR, Edq }, 0 }, |
ad692897 | 46 | { VEX_W_TABLE (EVEX_W_0F7B_P_2) }, |
b5c37946 | 47 | { "vcvtusi2sdY{%LQ|}", { XMScalar, VexScalar, EXxEVexR64, Edq }, 0 }, |
ad692897 L |
48 | }, |
49 | /* PREFIX_EVEX_0F7E */ | |
50 | { | |
51 | { Bad_Opcode }, | |
85ba7507 JB |
52 | { VEX_W_TABLE (EVEX_W_0F7E_P_1) }, |
53 | { VEX_LEN_TABLE (VEX_LEN_0F7E_P_2) }, | |
ad692897 L |
54 | }, |
55 | /* PREFIX_EVEX_0F7F */ | |
56 | { | |
57 | { Bad_Opcode }, | |
58 | { VEX_W_TABLE (EVEX_W_0F7F_P_1) }, | |
59 | { VEX_W_TABLE (EVEX_W_0F7F_P_2) }, | |
60 | { VEX_W_TABLE (EVEX_W_0F7F_P_3) }, | |
61 | }, | |
62 | /* PREFIX_EVEX_0FC2 */ | |
63 | { | |
d0579d4d | 64 | { "vcmppX", { MaskG, Vex, EXx, EXxEVexS, CMP }, PREFIX_OPCODE }, |
740a1e79 | 65 | { "vcmps%XS", { MaskG, VexScalar, EXd, EXxEVexS, CMP }, 0 }, |
d0579d4d | 66 | { "vcmppX", { MaskG, Vex, EXx, EXxEVexS, CMP }, PREFIX_OPCODE }, |
740a1e79 | 67 | { "vcmps%XD", { MaskG, VexScalar, EXq, EXxEVexS, CMP }, 0 }, |
ad692897 | 68 | }, |
ad692897 L |
69 | /* PREFIX_EVEX_0FE6 */ |
70 | { | |
71 | { Bad_Opcode }, | |
72 | { VEX_W_TABLE (EVEX_W_0FE6_P_1) }, | |
f7cfcddd JB |
73 | { "%XEvcvttp%XD2dq%XY", { XMxmmq, EXx, EXxEVexS }, 0 }, |
74 | { "%XEvcvtp%XD2dq%XY", { XMxmmq, EXx, EXxEVexR }, 0 }, | |
ad692897 | 75 | }, |
ad692897 L |
76 | /* PREFIX_EVEX_0F3810 */ |
77 | { | |
78 | { Bad_Opcode }, | |
79 | { VEX_W_TABLE (EVEX_W_0F3810_P_1) }, | |
80 | { VEX_W_TABLE (EVEX_W_0F3810_P_2) }, | |
81 | }, | |
82 | /* PREFIX_EVEX_0F3811 */ | |
83 | { | |
84 | { Bad_Opcode }, | |
85 | { VEX_W_TABLE (EVEX_W_0F3811_P_1) }, | |
86 | { VEX_W_TABLE (EVEX_W_0F3811_P_2) }, | |
87 | }, | |
88 | /* PREFIX_EVEX_0F3812 */ | |
89 | { | |
90 | { Bad_Opcode }, | |
91 | { VEX_W_TABLE (EVEX_W_0F3812_P_1) }, | |
92 | { VEX_W_TABLE (EVEX_W_0F3812_P_2) }, | |
93 | }, | |
94 | /* PREFIX_EVEX_0F3813 */ | |
95 | { | |
96 | { Bad_Opcode }, | |
97 | { VEX_W_TABLE (EVEX_W_0F3813_P_1) }, | |
f7cfcddd | 98 | { "%XEvcvtph2p%XS", { XM, EXxmmq, EXxEVexS }, 0 }, |
ad692897 L |
99 | }, |
100 | /* PREFIX_EVEX_0F3814 */ | |
101 | { | |
102 | { Bad_Opcode }, | |
103 | { VEX_W_TABLE (EVEX_W_0F3814_P_1) }, | |
492a76aa | 104 | { "vprorv%DQ", { XM, Vex, EXx }, 0 }, |
ad692897 L |
105 | }, |
106 | /* PREFIX_EVEX_0F3815 */ | |
107 | { | |
108 | { Bad_Opcode }, | |
109 | { VEX_W_TABLE (EVEX_W_0F3815_P_1) }, | |
492a76aa | 110 | { "vprolv%DQ", { XM, Vex, EXx }, 0 }, |
ad692897 | 111 | }, |
ad692897 L |
112 | /* PREFIX_EVEX_0F3820 */ |
113 | { | |
114 | { Bad_Opcode }, | |
115 | { VEX_W_TABLE (EVEX_W_0F3820_P_1) }, | |
f7cfcddd | 116 | { "%XEvpmovsxbw", { XM, EXxmmq }, 0 }, |
ad692897 L |
117 | }, |
118 | /* PREFIX_EVEX_0F3821 */ | |
119 | { | |
120 | { Bad_Opcode }, | |
121 | { VEX_W_TABLE (EVEX_W_0F3821_P_1) }, | |
f7cfcddd | 122 | { "%XEvpmovsxbd", { XM, EXxmmqd }, 0 }, |
ad692897 L |
123 | }, |
124 | /* PREFIX_EVEX_0F3822 */ | |
125 | { | |
126 | { Bad_Opcode }, | |
127 | { VEX_W_TABLE (EVEX_W_0F3822_P_1) }, | |
f7cfcddd | 128 | { "%XEvpmovsxbq", { XM, EXxmmdw }, 0 }, |
ad692897 L |
129 | }, |
130 | /* PREFIX_EVEX_0F3823 */ | |
131 | { | |
132 | { Bad_Opcode }, | |
133 | { VEX_W_TABLE (EVEX_W_0F3823_P_1) }, | |
f7cfcddd | 134 | { "%XEvpmovsxwd", { XM, EXxmmq }, 0 }, |
ad692897 L |
135 | }, |
136 | /* PREFIX_EVEX_0F3824 */ | |
137 | { | |
138 | { Bad_Opcode }, | |
139 | { VEX_W_TABLE (EVEX_W_0F3824_P_1) }, | |
f7cfcddd | 140 | { "%XEvpmovsxwq", { XM, EXxmmqd }, 0 }, |
ad692897 L |
141 | }, |
142 | /* PREFIX_EVEX_0F3825 */ | |
143 | { | |
144 | { Bad_Opcode }, | |
145 | { VEX_W_TABLE (EVEX_W_0F3825_P_1) }, | |
146 | { VEX_W_TABLE (EVEX_W_0F3825_P_2) }, | |
147 | }, | |
148 | /* PREFIX_EVEX_0F3826 */ | |
149 | { | |
150 | { Bad_Opcode }, | |
d0579d4d JB |
151 | { "vptestnm%BW", { MaskG, Vex, EXx }, 0 }, |
152 | { "vptestm%BW", { MaskG, Vex, EXx }, 0 }, | |
ad692897 L |
153 | }, |
154 | /* PREFIX_EVEX_0F3827 */ | |
155 | { | |
156 | { Bad_Opcode }, | |
d0579d4d JB |
157 | { "vptestnm%DQ", { MaskG, Vex, EXx }, 0 }, |
158 | { "vptestm%DQ", { MaskG, Vex, EXx }, 0 }, | |
ad692897 L |
159 | }, |
160 | /* PREFIX_EVEX_0F3828 */ | |
161 | { | |
162 | { Bad_Opcode }, | |
b5c37946 | 163 | { "vpmovm2Y%BW", { XM, MaskR }, 0 }, |
ad692897 L |
164 | { VEX_W_TABLE (EVEX_W_0F3828_P_2) }, |
165 | }, | |
166 | /* PREFIX_EVEX_0F3829 */ | |
167 | { | |
168 | { Bad_Opcode }, | |
b5c37946 | 169 | { "vpmov%BW2mY", { MaskG, Ux }, 0 }, |
ad692897 L |
170 | { VEX_W_TABLE (EVEX_W_0F3829_P_2) }, |
171 | }, | |
172 | /* PREFIX_EVEX_0F382A */ | |
173 | { | |
174 | { Bad_Opcode }, | |
175 | { VEX_W_TABLE (EVEX_W_0F382A_P_1) }, | |
176 | { VEX_W_TABLE (EVEX_W_0F382A_P_2) }, | |
177 | }, | |
ad692897 L |
178 | /* PREFIX_EVEX_0F3830 */ |
179 | { | |
180 | { Bad_Opcode }, | |
181 | { VEX_W_TABLE (EVEX_W_0F3830_P_1) }, | |
f7cfcddd | 182 | { "%XEvpmovzxbw", { XM, EXxmmq }, 0 }, |
ad692897 L |
183 | }, |
184 | /* PREFIX_EVEX_0F3831 */ | |
185 | { | |
186 | { Bad_Opcode }, | |
187 | { VEX_W_TABLE (EVEX_W_0F3831_P_1) }, | |
f7cfcddd | 188 | { "%XEvpmovzxbd", { XM, EXxmmqd }, 0 }, |
ad692897 L |
189 | }, |
190 | /* PREFIX_EVEX_0F3832 */ | |
191 | { | |
192 | { Bad_Opcode }, | |
193 | { VEX_W_TABLE (EVEX_W_0F3832_P_1) }, | |
f7cfcddd | 194 | { "%XEvpmovzxbq", { XM, EXxmmdw }, 0 }, |
ad692897 L |
195 | }, |
196 | /* PREFIX_EVEX_0F3833 */ | |
197 | { | |
198 | { Bad_Opcode }, | |
199 | { VEX_W_TABLE (EVEX_W_0F3833_P_1) }, | |
f7cfcddd | 200 | { "%XEvpmovzxwd", { XM, EXxmmq }, 0 }, |
ad692897 L |
201 | }, |
202 | /* PREFIX_EVEX_0F3834 */ | |
203 | { | |
204 | { Bad_Opcode }, | |
205 | { VEX_W_TABLE (EVEX_W_0F3834_P_1) }, | |
f7cfcddd | 206 | { "%XEvpmovzxwq", { XM, EXxmmqd }, 0 }, |
ad692897 L |
207 | }, |
208 | /* PREFIX_EVEX_0F3835 */ | |
209 | { | |
210 | { Bad_Opcode }, | |
211 | { VEX_W_TABLE (EVEX_W_0F3835_P_1) }, | |
212 | { VEX_W_TABLE (EVEX_W_0F3835_P_2) }, | |
213 | }, | |
ad692897 L |
214 | /* PREFIX_EVEX_0F3838 */ |
215 | { | |
216 | { Bad_Opcode }, | |
b5c37946 | 217 | { "vpmovm2Y%DQ", { XM, MaskR }, 0 }, |
f7cfcddd | 218 | { "%XEvpminsb", { XM, Vex, EXx }, 0 }, |
ad692897 L |
219 | }, |
220 | /* PREFIX_EVEX_0F3839 */ | |
221 | { | |
222 | { Bad_Opcode }, | |
b5c37946 | 223 | { "vpmov%DQ2mY", { MaskG, Ux }, 0 }, |
f7cfcddd | 224 | { "%XEvpmins%DQ", { XM, Vex, EXx }, 0 }, |
ad692897 L |
225 | }, |
226 | /* PREFIX_EVEX_0F383A */ | |
227 | { | |
228 | { Bad_Opcode }, | |
229 | { VEX_W_TABLE (EVEX_W_0F383A_P_1) }, | |
f7cfcddd | 230 | { "%XEvpminuw", { XM, Vex, EXx }, 0 }, |
ad692897 | 231 | }, |
ad692897 L |
232 | /* PREFIX_EVEX_0F3852 */ |
233 | { | |
234 | { Bad_Opcode }, | |
740a1e79 | 235 | { "vdpbf16p%XS", { XM, Vex, EXx }, 0 }, |
995bca23 | 236 | { VEX_W_TABLE (VEX_W_0F3852) }, |
308aa8e2 | 237 | { "vp4dpws%XSd", { XM, Vex, Mxmm }, 0 }, |
ad692897 L |
238 | }, |
239 | /* PREFIX_EVEX_0F3853 */ | |
240 | { | |
241 | { Bad_Opcode }, | |
242 | { Bad_Opcode }, | |
995bca23 | 243 | { VEX_W_TABLE (VEX_W_0F3853) }, |
308aa8e2 | 244 | { "vp4dpws%XSds", { XM, Vex, Mxmm }, 0 }, |
ad692897 | 245 | }, |
7531c613 | 246 | /* PREFIX_EVEX_0F3868 */ |
ad692897 L |
247 | { |
248 | { Bad_Opcode }, | |
ad692897 L |
249 | { Bad_Opcode }, |
250 | { Bad_Opcode }, | |
b5c37946 | 251 | { "vp2intersectY%DQ", { MaskG, Vex, EXx, EXxEVexS }, 0 }, |
ad692897 | 252 | }, |
7531c613 | 253 | /* PREFIX_EVEX_0F3872 */ |
ad692897 L |
254 | { |
255 | { Bad_Opcode }, | |
740a1e79 | 256 | { "vcvtnep%XS2bf16%XY", { XMxmmq, EXx }, 0 }, |
7531c613 | 257 | { VEX_W_TABLE (EVEX_W_0F3872_P_2) }, |
740a1e79 | 258 | { "vcvtne2p%XS2bf16", { XM, Vex, EXx}, 0 }, |
ad692897 | 259 | }, |
7531c613 | 260 | /* PREFIX_EVEX_0F389A */ |
ad692897 L |
261 | { |
262 | { Bad_Opcode }, | |
263 | { Bad_Opcode }, | |
f7cfcddd | 264 | { "%XEvfmsub132p%XW", { XM, Vex, EXx, EXxEVexR }, 0 }, |
308aa8e2 | 265 | { "v4fmaddp%XS", { XM, Vex, Mxmm }, 0 }, |
ad692897 | 266 | }, |
7531c613 | 267 | /* PREFIX_EVEX_0F389B */ |
ad692897 L |
268 | { |
269 | { Bad_Opcode }, | |
270 | { Bad_Opcode }, | |
f7cfcddd | 271 | { "%XEvfmsub132s%XW", { XMScalar, VexScalar, EXdq, EXxEVexR }, 0 }, |
308aa8e2 | 272 | { "v4fmadds%XS", { XMScalar, VexScalar, Mxmm }, 0 }, |
ad692897 | 273 | }, |
7531c613 | 274 | /* PREFIX_EVEX_0F38AA */ |
ad692897 L |
275 | { |
276 | { Bad_Opcode }, | |
277 | { Bad_Opcode }, | |
f7cfcddd | 278 | { "%XEvfmsub213p%XW", { XM, Vex, EXx, EXxEVexR }, 0 }, |
308aa8e2 | 279 | { "v4fnmaddp%XS", { XM, Vex, Mxmm }, 0 }, |
ad692897 | 280 | }, |
7531c613 | 281 | /* PREFIX_EVEX_0F38AB */ |
ad692897 L |
282 | { |
283 | { Bad_Opcode }, | |
284 | { Bad_Opcode }, | |
f7cfcddd | 285 | { "%XEvfmsub213s%XW", { XMScalar, VexScalar, EXdq, EXxEVexR }, 0 }, |
308aa8e2 | 286 | { "v4fnmadds%XS", { XMScalar, VexScalar, Mxmm }, 0 }, |
ad692897 | 287 | }, |
2235ecb8 | 288 | /* PREFIX_EVEX_0F3A08 */ |
0cc78721 | 289 | { |
2235ecb8 | 290 | { "vrndscalep%XH", { XM, EXxh, EXxEVexS, Ib }, 0 }, |
0cc78721 | 291 | { Bad_Opcode }, |
2235ecb8 | 292 | { "vrndscalep%XS", { XM, EXx, EXxEVexS, Ib }, 0 }, |
0cc78721 | 293 | }, |
2235ecb8 | 294 | /* PREFIX_EVEX_0F3A0A */ |
0cc78721 | 295 | { |
2235ecb8 | 296 | { "vrndscales%XH", { XMScalar, VexScalar, EXw, EXxEVexS, Ib }, 0 }, |
0cc78721 | 297 | { Bad_Opcode }, |
2235ecb8 | 298 | { "vrndscales%XS", { XMScalar, VexScalar, EXd, EXxEVexS, Ib }, 0 }, |
0cc78721 CL |
299 | }, |
300 | /* PREFIX_EVEX_0F3A26 */ | |
301 | { | |
302 | { "vgetmantp%XH", { XM, EXxh, EXxEVexS, Ib }, 0 }, | |
303 | { Bad_Opcode }, | |
304 | { "vgetmantp%XW", { XM, EXx, EXxEVexS, Ib }, 0 }, | |
305 | }, | |
306 | /* PREFIX_EVEX_0F3A27 */ | |
307 | { | |
308 | { "vgetmants%XH", { XMScalar, VexScalar, EXw, EXxEVexS, Ib }, 0 }, | |
309 | { Bad_Opcode }, | |
310 | { "vgetmants%XW", { XMScalar, VexScalar, EXdq, EXxEVexS, Ib }, 0 }, | |
311 | }, | |
312 | /* PREFIX_EVEX_0F3A56 */ | |
313 | { | |
314 | { "vreducep%XH", { XM, EXxh, EXxEVexS, Ib }, 0 }, | |
315 | { Bad_Opcode }, | |
316 | { "vreducep%XW", { XM, EXx, EXxEVexS, Ib }, 0 }, | |
317 | }, | |
318 | /* PREFIX_EVEX_0F3A57 */ | |
319 | { | |
320 | { "vreduces%XH", { XMScalar, VexScalar, EXw, EXxEVexS, Ib }, 0 }, | |
321 | { Bad_Opcode }, | |
322 | { "vreduces%XW", { XMScalar, VexScalar, EXdq, EXxEVexS, Ib }, 0 }, | |
323 | }, | |
324 | /* PREFIX_EVEX_0F3A66 */ | |
325 | { | |
326 | { "vfpclassp%XH%XZ", { MaskG, EXxh, Ib }, 0 }, | |
327 | { Bad_Opcode }, | |
328 | { "vfpclassp%XW%XZ", { MaskG, EXx, Ib }, 0 }, | |
329 | }, | |
330 | /* PREFIX_EVEX_0F3A67 */ | |
331 | { | |
332 | { "vfpclasss%XH", { MaskG, EXw, Ib }, 0 }, | |
333 | { Bad_Opcode }, | |
334 | { "vfpclasss%XW", { MaskG, EXdq, Ib }, 0 }, | |
335 | }, | |
336 | /* PREFIX_EVEX_0F3AC2 */ | |
337 | { | |
338 | { "vcmpp%XH", { MaskG, Vex, EXxh, EXxEVexS, CMP }, 0 }, | |
339 | { "vcmps%XH", { MaskG, VexScalar, EXw, EXxEVexS, CMP }, 0 }, | |
340 | }, | |
6177c84d CL |
341 | /* PREFIX_EVEX_MAP4_D8 */ |
342 | { | |
343 | { "sha1nexte", { XM, EXxmm }, 0 }, | |
344 | { REG_TABLE (REG_0F38D8_PREFIX_1) }, | |
345 | }, | |
346 | /* PREFIX_EVEX_MAP4_DA */ | |
347 | { | |
348 | { "sha1msg2", { XM, EXxmm }, 0 }, | |
349 | { "encodekey128", { Gd, Rd }, 0 }, | |
350 | }, | |
351 | /* PREFIX_EVEX_MAP4_DB */ | |
352 | { | |
353 | { "sha256rnds2", { XM, EXxmm, XMM0 }, 0 }, | |
354 | { "encodekey256", { Gd, Rd }, 0 }, | |
355 | }, | |
356 | /* PREFIX_EVEX_MAP4_DC */ | |
357 | { | |
358 | { "sha256msg1", { XM, EXxmm }, 0 }, | |
359 | { "aesenc128kl", { XM, M }, 0 }, | |
360 | }, | |
361 | /* PREFIX_EVEX_MAP4_DD */ | |
362 | { | |
363 | { "sha256msg2", { XM, EXxmm }, 0 }, | |
364 | { "aesdec128kl", { XM, M }, 0 }, | |
365 | }, | |
366 | /* PREFIX_EVEX_MAP4_DE */ | |
367 | { | |
368 | { Bad_Opcode }, | |
369 | { "aesenc256kl", { XM, M }, 0 }, | |
370 | }, | |
371 | /* PREFIX_EVEX_MAP4_DF */ | |
372 | { | |
373 | { Bad_Opcode }, | |
374 | { "aesdec256kl", { XM, M }, 0 }, | |
375 | }, | |
376 | /* PREFIX_EVEX_MAP4_F0 */ | |
377 | { | |
378 | { "crc32A", { Gdq, Eb }, 0 }, | |
379 | { "invept", { Gm, Mo }, 0 }, | |
380 | }, | |
381 | /* PREFIX_EVEX_MAP4_F1 */ | |
382 | { | |
383 | { "crc32Q", { Gdq, Ev }, 0 }, | |
384 | { "invvpid", { Gm, Mo }, 0 }, | |
385 | { "crc32Q", { Gdq, Ev }, 0 }, | |
386 | }, | |
387 | /* PREFIX_EVEX_MAP4_F2 */ | |
388 | { | |
389 | { Bad_Opcode }, | |
390 | { "invpcid", { Gm, M }, 0 }, | |
391 | }, | |
392 | /* PREFIX_EVEX_MAP4_F8 */ | |
393 | { | |
394 | { Bad_Opcode }, | |
5190fa38 | 395 | { MOD_TABLE (MOD_EVEX_MAP4_F8_P_1) }, |
6177c84d | 396 | { "movdir64b", { Gva, M }, 0 }, |
5190fa38 | 397 | { MOD_TABLE (MOD_EVEX_MAP4_F8_P_3) }, |
6177c84d | 398 | }, |
0cc78721 CL |
399 | /* PREFIX_EVEX_MAP5_10 */ |
400 | { | |
401 | { Bad_Opcode }, | |
402 | { "vmovs%XH", { XMScalar, VexScalarR, EXw }, 0 }, | |
403 | }, | |
404 | /* PREFIX_EVEX_MAP5_11 */ | |
405 | { | |
406 | { Bad_Opcode }, | |
407 | { "vmovs%XH", { EXwS, VexScalarR, XMScalar }, 0 }, | |
408 | }, | |
409 | /* PREFIX_EVEX_MAP5_1D */ | |
410 | { | |
928c8d70 | 411 | { "vcvtss2s%XH", { XMScalar, VexScalar, EXd, EXxEVexR }, 0 }, |
0cc78721 CL |
412 | { Bad_Opcode }, |
413 | { "vcvtps2p%XHx%XY", { XMxmmq, EXx, EXxEVexR }, 0 }, | |
414 | }, | |
415 | /* PREFIX_EVEX_MAP5_2A */ | |
416 | { | |
417 | { Bad_Opcode }, | |
b5c37946 | 418 | { "vcvtsi2shY{%LQ|}", { XMScalar, VexScalar, EXxEVexR, Edq }, 0 }, |
0cc78721 CL |
419 | }, |
420 | /* PREFIX_EVEX_MAP5_2C */ | |
421 | { | |
422 | { Bad_Opcode }, | |
423 | { "vcvttsh2si", { Gdq, EXw, EXxEVexS }, 0 }, | |
424 | }, | |
425 | /* PREFIX_EVEX_MAP5_2D */ | |
426 | { | |
427 | { Bad_Opcode }, | |
428 | { "vcvtsh2si", { Gdq, EXw, EXxEVexR }, 0 }, | |
429 | }, | |
430 | /* PREFIX_EVEX_MAP5_2E */ | |
431 | { | |
b5c37946 | 432 | { "vucomisY%XH", { XMScalar, EXw, EXxEVexS }, 0 }, |
0cc78721 CL |
433 | }, |
434 | /* PREFIX_EVEX_MAP5_2F */ | |
435 | { | |
b5c37946 | 436 | { "vcomisY%XH", { XMScalar, EXw, EXxEVexS }, 0 }, |
0cc78721 CL |
437 | }, |
438 | /* PREFIX_EVEX_MAP5_51 */ | |
439 | { | |
440 | { "vsqrtp%XH", { XM, EXxh, EXxEVexR }, 0 }, | |
928c8d70 | 441 | { "vsqrts%XH", { XMScalar, VexScalar, EXw, EXxEVexR }, 0 }, |
0cc78721 CL |
442 | }, |
443 | /* PREFIX_EVEX_MAP5_58 */ | |
444 | { | |
445 | { "vaddp%XH", { XM, Vex, EXxh, EXxEVexR }, 0 }, | |
928c8d70 | 446 | { "vadds%XH", { XMScalar, VexScalar, EXw, EXxEVexR }, 0 }, |
0cc78721 CL |
447 | }, |
448 | /* PREFIX_EVEX_MAP5_59 */ | |
449 | { | |
450 | { "vmulp%XH", { XM, Vex, EXxh, EXxEVexR }, 0 }, | |
928c8d70 | 451 | { "vmuls%XH", { XMScalar, VexScalar, EXw, EXxEVexR }, 0 }, |
0cc78721 | 452 | }, |
2235ecb8 | 453 | /* PREFIX_EVEX_MAP5_5A */ |
0cc78721 | 454 | { |
2235ecb8 | 455 | { "vcvtp%XH2pd", { XM, EXxmmqdh, EXxEVexS }, 0 }, |
928c8d70 | 456 | { "vcvts%XH2sd", { XMScalar, VexScalar, EXw, EXxEVexS }, 0 }, |
2235ecb8 | 457 | { "vcvtp%XD2ph%XZ", { XMM, EXx, EXxEVexR }, 0 }, |
928c8d70 | 458 | { "vcvts%XD2sh", { XMScalar, VexScalar, EXq, EXxEVexR }, 0 }, |
0cc78721 | 459 | }, |
2235ecb8 | 460 | /* PREFIX_EVEX_MAP5_5B */ |
0cc78721 | 461 | { |
2235ecb8 JB |
462 | { VEX_W_TABLE (EVEX_W_MAP5_5B_P_0) }, |
463 | { "vcvttp%XH2dq", { XM, EXxmmqh, EXxEVexS }, 0 }, | |
464 | { "vcvtp%XH2dq", { XM, EXxmmqh, EXxEVexR }, 0 }, | |
0cc78721 CL |
465 | }, |
466 | /* PREFIX_EVEX_MAP5_5C */ | |
467 | { | |
468 | { "vsubp%XH", { XM, Vex, EXxh, EXxEVexR }, 0 }, | |
928c8d70 | 469 | { "vsubs%XH", { XMScalar, VexScalar, EXw, EXxEVexR }, 0 }, |
0cc78721 CL |
470 | }, |
471 | /* PREFIX_EVEX_MAP5_5D */ | |
472 | { | |
473 | { "vminp%XH", { XM, Vex, EXxh, EXxEVexS }, 0 }, | |
928c8d70 | 474 | { "vmins%XH", { XMScalar, VexScalar, EXw, EXxEVexS }, 0 }, |
0cc78721 CL |
475 | }, |
476 | /* PREFIX_EVEX_MAP5_5E */ | |
477 | { | |
478 | { "vdivp%XH", { XM, Vex, EXxh, EXxEVexR }, 0 }, | |
928c8d70 | 479 | { "vdivs%XH", { XMScalar, VexScalar, EXw, EXxEVexR }, 0 }, |
0cc78721 CL |
480 | }, |
481 | /* PREFIX_EVEX_MAP5_5F */ | |
482 | { | |
483 | { "vmaxp%XH", { XM, Vex, EXxh, EXxEVexS }, 0 }, | |
928c8d70 | 484 | { "vmaxs%XH", { XMScalar, VexScalar, EXw, EXxEVexS }, 0 }, |
0cc78721 CL |
485 | }, |
486 | /* PREFIX_EVEX_MAP5_78 */ | |
487 | { | |
2235ecb8 | 488 | { "vcvttp%XH2udq", { XM, EXxmmqh, EXxEVexS }, 0 }, |
0cc78721 | 489 | { "vcvttsh2usi", { Gdq, EXw, EXxEVexS }, 0 }, |
2235ecb8 | 490 | { "vcvttp%XH2uqq", { XM, EXxmmqdh, EXxEVexS }, 0 }, |
0cc78721 CL |
491 | }, |
492 | /* PREFIX_EVEX_MAP5_79 */ | |
493 | { | |
2235ecb8 | 494 | { "vcvtp%XH2udq", { XM, EXxmmqh, EXxEVexR }, 0 }, |
0cc78721 | 495 | { "vcvtsh2usi", { Gdq, EXw, EXxEVexR }, 0 }, |
2235ecb8 | 496 | { "vcvtp%XH2uqq", { XM, EXxmmqdh, EXxEVexR }, 0 }, |
0cc78721 CL |
497 | }, |
498 | /* PREFIX_EVEX_MAP5_7A */ | |
499 | { | |
500 | { Bad_Opcode }, | |
501 | { Bad_Opcode }, | |
2235ecb8 | 502 | { "vcvttp%XH2qq", { XM, EXxmmqdh, EXxEVexS }, 0 }, |
0cc78721 CL |
503 | { VEX_W_TABLE (EVEX_W_MAP5_7A_P_3) }, |
504 | }, | |
505 | /* PREFIX_EVEX_MAP5_7B */ | |
506 | { | |
507 | { Bad_Opcode }, | |
b5c37946 | 508 | { "vcvtusi2shY{%LQ|}", { XMScalar, VexScalar, EXxEVexR, Edq }, 0 }, |
2235ecb8 | 509 | { "vcvtp%XH2qq", { XM, EXxmmqdh, EXxEVexR }, 0 }, |
0cc78721 CL |
510 | }, |
511 | /* PREFIX_EVEX_MAP5_7C */ | |
512 | { | |
2235ecb8 | 513 | { "vcvttp%XH2uw", { XM, EXxh, EXxEVexS }, 0 }, |
0cc78721 | 514 | { Bad_Opcode }, |
2235ecb8 | 515 | { "vcvttp%XH2w", { XM, EXxh, EXxEVexS }, 0 }, |
0cc78721 | 516 | }, |
2235ecb8 | 517 | /* PREFIX_EVEX_MAP5_7D */ |
0cc78721 | 518 | { |
2235ecb8 JB |
519 | { "vcvtp%XH2uw", { XM, EXxh, EXxEVexR }, 0 }, |
520 | { "vcvtw2p%XH", { XM, EXxh, EXxEVexR }, 0 }, | |
521 | { "vcvtp%XH2w", { XM, EXxh, EXxEVexR }, 0 }, | |
522 | { "vcvtuw2p%XH", { XM, EXxh, EXxEVexR }, 0 }, | |
0cc78721 CL |
523 | }, |
524 | /* PREFIX_EVEX_MAP6_13 */ | |
525 | { | |
928c8d70 | 526 | { "vcvts%XH2ss", { XMScalar, VexScalar, EXw, EXxEVexS }, 0 }, |
0cc78721 | 527 | { Bad_Opcode }, |
2235ecb8 | 528 | { "vcvtp%XH2psx", { XM, EXxmmqh, EXxEVexS }, 0 }, |
0cc78721 CL |
529 | }, |
530 | /* PREFIX_EVEX_MAP6_56 */ | |
531 | { | |
532 | { Bad_Opcode }, | |
533 | { "vfmaddcp%XH", { { DistinctDest_Fixup, 0 }, Vex, EXx, EXxEVexR }, 0 }, | |
534 | { Bad_Opcode }, | |
535 | { "vfcmaddcp%XH", { { DistinctDest_Fixup, 0 }, Vex, EXx, EXxEVexR }, 0 }, | |
536 | }, | |
537 | /* PREFIX_EVEX_MAP6_57 */ | |
538 | { | |
539 | { Bad_Opcode }, | |
928c8d70 | 540 | { "vfmaddcs%XH", { { DistinctDest_Fixup, scalar_mode }, VexScalar, EXd, EXxEVexR }, 0 }, |
0cc78721 | 541 | { Bad_Opcode }, |
928c8d70 | 542 | { "vfcmaddcs%XH", { { DistinctDest_Fixup, scalar_mode }, VexScalar, EXd, EXxEVexR }, 0 }, |
0cc78721 CL |
543 | }, |
544 | /* PREFIX_EVEX_MAP6_D6 */ | |
545 | { | |
546 | { Bad_Opcode }, | |
547 | { "vfmulcp%XH", { { DistinctDest_Fixup, 0 }, Vex, EXx, EXxEVexR }, 0 }, | |
548 | { Bad_Opcode }, | |
549 | { "vfcmulcp%XH", { { DistinctDest_Fixup, 0 }, Vex, EXx, EXxEVexR }, 0 }, | |
550 | }, | |
551 | /* PREFIX_EVEX_MAP6_D7 */ | |
552 | { | |
553 | { Bad_Opcode }, | |
928c8d70 | 554 | { "vfmulcs%XH", { { DistinctDest_Fixup, scalar_mode }, VexScalar, EXd, EXxEVexR }, 0 }, |
0cc78721 | 555 | { Bad_Opcode }, |
928c8d70 | 556 | { "vfcmulcs%XH", { { DistinctDest_Fixup, scalar_mode }, VexScalar, EXd, EXxEVexR }, 0 }, |
0cc78721 | 557 | }, |