1/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2|* *|
3|* X86 instruction mapping *|
4|* *|
5|* Automatically generated file, do not edit! *|
6|* *|
7\*===----------------------------------------------------------------------===*/
8
9struct X86TableEntry {
10 uint16_t OldOpc;
11 uint16_t NewOpc;
12 bool operator<(const X86TableEntry &RHS) const {
13 return OldOpc < RHS.OldOpc;
14 } friend bool operator<(const X86TableEntry &TE, unsigned Opc) {
15 return TE.OldOpc < Opc;
16 }
17};
18
19
20#ifdef GET_X86_COMPRESS_EVEX_TABLE
21static const X86TableEntry X86CompressEVEXTable[] = {
22 { X86::AADD32mr_EVEX, X86::AADD32mr },
23 { X86::AADD64mr_EVEX, X86::AADD64mr },
24 { X86::AAND32mr_EVEX, X86::AAND32mr },
25 { X86::AAND64mr_EVEX, X86::AAND64mr },
26 { X86::ADCX32rm_EVEX, X86::ADCX32rm },
27 { X86::ADCX32rr_EVEX, X86::ADCX32rr },
28 { X86::ADCX64rm_EVEX, X86::ADCX64rm },
29 { X86::ADCX64rr_EVEX, X86::ADCX64rr },
30 { X86::ADOX32rm_EVEX, X86::ADOX32rm },
31 { X86::ADOX32rr_EVEX, X86::ADOX32rr },
32 { X86::ADOX64rm_EVEX, X86::ADOX64rm },
33 { X86::ADOX64rr_EVEX, X86::ADOX64rr },
34 { X86::ANDN32rm_EVEX, X86::ANDN32rm },
35 { X86::ANDN32rm_NF, X86::ANDN32rm },
36 { X86::ANDN32rr_EVEX, X86::ANDN32rr },
37 { X86::ANDN32rr_NF, X86::ANDN32rr },
38 { X86::ANDN64rm_EVEX, X86::ANDN64rm },
39 { X86::ANDN64rm_NF, X86::ANDN64rm },
40 { X86::ANDN64rr_EVEX, X86::ANDN64rr },
41 { X86::ANDN64rr_NF, X86::ANDN64rr },
42 { X86::AOR32mr_EVEX, X86::AOR32mr },
43 { X86::AOR64mr_EVEX, X86::AOR64mr },
44 { X86::AXOR32mr_EVEX, X86::AXOR32mr },
45 { X86::AXOR64mr_EVEX, X86::AXOR64mr },
46 { X86::BEXTR32rm_EVEX, X86::BEXTR32rm },
47 { X86::BEXTR32rm_NF, X86::BEXTR32rm },
48 { X86::BEXTR32rr_EVEX, X86::BEXTR32rr },
49 { X86::BEXTR32rr_NF, X86::BEXTR32rr },
50 { X86::BEXTR64rm_EVEX, X86::BEXTR64rm },
51 { X86::BEXTR64rm_NF, X86::BEXTR64rm },
52 { X86::BEXTR64rr_EVEX, X86::BEXTR64rr },
53 { X86::BEXTR64rr_NF, X86::BEXTR64rr },
54 { X86::BLSI32rm_EVEX, X86::BLSI32rm },
55 { X86::BLSI32rm_NF, X86::BLSI32rm },
56 { X86::BLSI32rr_EVEX, X86::BLSI32rr },
57 { X86::BLSI32rr_NF, X86::BLSI32rr },
58 { X86::BLSI64rm_EVEX, X86::BLSI64rm },
59 { X86::BLSI64rm_NF, X86::BLSI64rm },
60 { X86::BLSI64rr_EVEX, X86::BLSI64rr },
61 { X86::BLSI64rr_NF, X86::BLSI64rr },
62 { X86::BLSMSK32rm_EVEX, X86::BLSMSK32rm },
63 { X86::BLSMSK32rm_NF, X86::BLSMSK32rm },
64 { X86::BLSMSK32rr_EVEX, X86::BLSMSK32rr },
65 { X86::BLSMSK32rr_NF, X86::BLSMSK32rr },
66 { X86::BLSMSK64rm_EVEX, X86::BLSMSK64rm },
67 { X86::BLSMSK64rm_NF, X86::BLSMSK64rm },
68 { X86::BLSMSK64rr_EVEX, X86::BLSMSK64rr },
69 { X86::BLSMSK64rr_NF, X86::BLSMSK64rr },
70 { X86::BLSR32rm_EVEX, X86::BLSR32rm },
71 { X86::BLSR32rm_NF, X86::BLSR32rm },
72 { X86::BLSR32rr_EVEX, X86::BLSR32rr },
73 { X86::BLSR32rr_NF, X86::BLSR32rr },
74 { X86::BLSR64rm_EVEX, X86::BLSR64rm },
75 { X86::BLSR64rm_NF, X86::BLSR64rm },
76 { X86::BLSR64rr_EVEX, X86::BLSR64rr },
77 { X86::BLSR64rr_NF, X86::BLSR64rr },
78 { X86::BZHI32rm_EVEX, X86::BZHI32rm },
79 { X86::BZHI32rm_NF, X86::BZHI32rm },
80 { X86::BZHI32rr_EVEX, X86::BZHI32rr },
81 { X86::BZHI32rr_NF, X86::BZHI32rr },
82 { X86::BZHI64rm_EVEX, X86::BZHI64rm },
83 { X86::BZHI64rm_NF, X86::BZHI64rm },
84 { X86::BZHI64rr_EVEX, X86::BZHI64rr },
85 { X86::BZHI64rr_NF, X86::BZHI64rr },
86 { X86::CMPCCXADDmr32_EVEX, X86::CMPCCXADDmr32 },
87 { X86::CMPCCXADDmr64_EVEX, X86::CMPCCXADDmr64 },
88 { X86::CRC32r32m16_EVEX, X86::CRC32r32m16 },
89 { X86::CRC32r32m32_EVEX, X86::CRC32r32m32 },
90 { X86::CRC32r32m8_EVEX, X86::CRC32r32m8 },
91 { X86::CRC32r32r16_EVEX, X86::CRC32r32r16 },
92 { X86::CRC32r32r32_EVEX, X86::CRC32r32r32 },
93 { X86::CRC32r32r8_EVEX, X86::CRC32r32r8 },
94 { X86::CRC32r64m64_EVEX, X86::CRC32r64m64 },
95 { X86::CRC32r64m8_EVEX, X86::CRC32r64m8 },
96 { X86::CRC32r64r64_EVEX, X86::CRC32r64r64 },
97 { X86::CRC32r64r8_EVEX, X86::CRC32r64r8 },
98 { X86::ENQCMD32_EVEX, X86::ENQCMD32 },
99 { X86::ENQCMD64_EVEX, X86::ENQCMD64 },
100 { X86::ENQCMDS32_EVEX, X86::ENQCMDS32 },
101 { X86::ENQCMDS64_EVEX, X86::ENQCMDS64 },
102 { X86::INVEPT64_EVEX, X86::INVEPT64 },
103 { X86::INVPCID64_EVEX, X86::INVPCID64 },
104 { X86::INVVPID64_EVEX, X86::INVVPID64 },
105 { X86::KMOVBkk_EVEX, X86::KMOVBkk },
106 { X86::KMOVBkm_EVEX, X86::KMOVBkm },
107 { X86::KMOVBkr_EVEX, X86::KMOVBkr },
108 { X86::KMOVBmk_EVEX, X86::KMOVBmk },
109 { X86::KMOVBrk_EVEX, X86::KMOVBrk },
110 { X86::KMOVDkk_EVEX, X86::KMOVDkk },
111 { X86::KMOVDkm_EVEX, X86::KMOVDkm },
112 { X86::KMOVDkr_EVEX, X86::KMOVDkr },
113 { X86::KMOVDmk_EVEX, X86::KMOVDmk },
114 { X86::KMOVDrk_EVEX, X86::KMOVDrk },
115 { X86::KMOVQkk_EVEX, X86::KMOVQkk },
116 { X86::KMOVQkm_EVEX, X86::KMOVQkm },
117 { X86::KMOVQkr_EVEX, X86::KMOVQkr },
118 { X86::KMOVQmk_EVEX, X86::KMOVQmk },
119 { X86::KMOVQrk_EVEX, X86::KMOVQrk },
120 { X86::KMOVWkk_EVEX, X86::KMOVWkk },
121 { X86::KMOVWkm_EVEX, X86::KMOVWkm },
122 { X86::KMOVWkr_EVEX, X86::KMOVWkr },
123 { X86::KMOVWmk_EVEX, X86::KMOVWmk },
124 { X86::KMOVWrk_EVEX, X86::KMOVWrk },
125 { X86::LDTILECFG_EVEX, X86::LDTILECFG },
126 { X86::MOVBE16mr_EVEX, X86::MOVBE16mr },
127 { X86::MOVBE16rm_EVEX, X86::MOVBE16rm },
128 { X86::MOVBE32mr_EVEX, X86::MOVBE32mr },
129 { X86::MOVBE32rm_EVEX, X86::MOVBE32rm },
130 { X86::MOVBE64mr_EVEX, X86::MOVBE64mr },
131 { X86::MOVBE64rm_EVEX, X86::MOVBE64rm },
132 { X86::MOVDIR64B32_EVEX, X86::MOVDIR64B32 },
133 { X86::MOVDIR64B64_EVEX, X86::MOVDIR64B64 },
134 { X86::MOVDIRI32_EVEX, X86::MOVDIRI32 },
135 { X86::MOVDIRI64_EVEX, X86::MOVDIRI64 },
136 { X86::MULX32rm_EVEX, X86::MULX32rm },
137 { X86::MULX32rr_EVEX, X86::MULX32rr },
138 { X86::MULX64rm_EVEX, X86::MULX64rm },
139 { X86::MULX64rr_EVEX, X86::MULX64rr },
140 { X86::PDEP32rm_EVEX, X86::PDEP32rm },
141 { X86::PDEP32rr_EVEX, X86::PDEP32rr },
142 { X86::PDEP64rm_EVEX, X86::PDEP64rm },
143 { X86::PDEP64rr_EVEX, X86::PDEP64rr },
144 { X86::PEXT32rm_EVEX, X86::PEXT32rm },
145 { X86::PEXT32rr_EVEX, X86::PEXT32rr },
146 { X86::PEXT64rm_EVEX, X86::PEXT64rm },
147 { X86::PEXT64rr_EVEX, X86::PEXT64rr },
148 { X86::RORX32mi_EVEX, X86::RORX32mi },
149 { X86::RORX32ri_EVEX, X86::RORX32ri },
150 { X86::RORX64mi_EVEX, X86::RORX64mi },
151 { X86::RORX64ri_EVEX, X86::RORX64ri },
152 { X86::SARX32rm_EVEX, X86::SARX32rm },
153 { X86::SARX32rr_EVEX, X86::SARX32rr },
154 { X86::SARX64rm_EVEX, X86::SARX64rm },
155 { X86::SARX64rr_EVEX, X86::SARX64rr },
156 { X86::SHLX32rm_EVEX, X86::SHLX32rm },
157 { X86::SHLX32rr_EVEX, X86::SHLX32rr },
158 { X86::SHLX64rm_EVEX, X86::SHLX64rm },
159 { X86::SHLX64rr_EVEX, X86::SHLX64rr },
160 { X86::SHRX32rm_EVEX, X86::SHRX32rm },
161 { X86::SHRX32rr_EVEX, X86::SHRX32rr },
162 { X86::SHRX64rm_EVEX, X86::SHRX64rm },
163 { X86::SHRX64rr_EVEX, X86::SHRX64rr },
164 { X86::STTILECFG_EVEX, X86::STTILECFG },
165 { X86::TILELOADDT1_EVEX, X86::TILELOADDT1 },
166 { X86::TILELOADD_EVEX, X86::TILELOADD },
167 { X86::TILESTORED_EVEX, X86::TILESTORED },
168 { X86::URDMSRri_EVEX, X86::URDMSRri },
169 { X86::URDMSRrr_EVEX, X86::URDMSRrr },
170 { X86::UWRMSRir_EVEX, X86::UWRMSRir },
171 { X86::UWRMSRrr_EVEX, X86::UWRMSRrr },
172 { X86::VADDPDZ128rm, X86::VADDPDrm },
173 { X86::VADDPDZ128rr, X86::VADDPDrr },
174 { X86::VADDPDZ256rm, X86::VADDPDYrm },
175 { X86::VADDPDZ256rr, X86::VADDPDYrr },
176 { X86::VADDPSZ128rm, X86::VADDPSrm },
177 { X86::VADDPSZ128rr, X86::VADDPSrr },
178 { X86::VADDPSZ256rm, X86::VADDPSYrm },
179 { X86::VADDPSZ256rr, X86::VADDPSYrr },
180 { X86::VADDSDZrm, X86::VADDSDrm },
181 { X86::VADDSDZrm_Int, X86::VADDSDrm_Int },
182 { X86::VADDSDZrr, X86::VADDSDrr },
183 { X86::VADDSDZrr_Int, X86::VADDSDrr_Int },
184 { X86::VADDSSZrm, X86::VADDSSrm },
185 { X86::VADDSSZrm_Int, X86::VADDSSrm_Int },
186 { X86::VADDSSZrr, X86::VADDSSrr },
187 { X86::VADDSSZrr_Int, X86::VADDSSrr_Int },
188 { X86::VAESDECLASTZ128rm, X86::VAESDECLASTrm },
189 { X86::VAESDECLASTZ128rr, X86::VAESDECLASTrr },
190 { X86::VAESDECLASTZ256rm, X86::VAESDECLASTYrm },
191 { X86::VAESDECLASTZ256rr, X86::VAESDECLASTYrr },
192 { X86::VAESDECZ128rm, X86::VAESDECrm },
193 { X86::VAESDECZ128rr, X86::VAESDECrr },
194 { X86::VAESDECZ256rm, X86::VAESDECYrm },
195 { X86::VAESDECZ256rr, X86::VAESDECYrr },
196 { X86::VAESENCLASTZ128rm, X86::VAESENCLASTrm },
197 { X86::VAESENCLASTZ128rr, X86::VAESENCLASTrr },
198 { X86::VAESENCLASTZ256rm, X86::VAESENCLASTYrm },
199 { X86::VAESENCLASTZ256rr, X86::VAESENCLASTYrr },
200 { X86::VAESENCZ128rm, X86::VAESENCrm },
201 { X86::VAESENCZ128rr, X86::VAESENCrr },
202 { X86::VAESENCZ256rm, X86::VAESENCYrm },
203 { X86::VAESENCZ256rr, X86::VAESENCYrr },
204 { X86::VALIGNDZ128rmi, X86::VPALIGNRrmi },
205 { X86::VALIGNDZ128rri, X86::VPALIGNRrri },
206 { X86::VALIGNQZ128rmi, X86::VPALIGNRrmi },
207 { X86::VALIGNQZ128rri, X86::VPALIGNRrri },
208 { X86::VANDNPDZ128rm, X86::VANDNPDrm },
209 { X86::VANDNPDZ128rr, X86::VANDNPDrr },
210 { X86::VANDNPDZ256rm, X86::VANDNPDYrm },
211 { X86::VANDNPDZ256rr, X86::VANDNPDYrr },
212 { X86::VANDNPSZ128rm, X86::VANDNPSrm },
213 { X86::VANDNPSZ128rr, X86::VANDNPSrr },
214 { X86::VANDNPSZ256rm, X86::VANDNPSYrm },
215 { X86::VANDNPSZ256rr, X86::VANDNPSYrr },
216 { X86::VANDPDZ128rm, X86::VANDPDrm },
217 { X86::VANDPDZ128rr, X86::VANDPDrr },
218 { X86::VANDPDZ256rm, X86::VANDPDYrm },
219 { X86::VANDPDZ256rr, X86::VANDPDYrr },
220 { X86::VANDPSZ128rm, X86::VANDPSrm },
221 { X86::VANDPSZ128rr, X86::VANDPSrr },
222 { X86::VANDPSZ256rm, X86::VANDPSYrm },
223 { X86::VANDPSZ256rr, X86::VANDPSYrr },
224 { X86::VBROADCASTF32X2Z256rm, X86::VBROADCASTSDYrm },
225 { X86::VBROADCASTF32X2Z256rr, X86::VBROADCASTSDYrr },
226 { X86::VBROADCASTF32X4Z256rm, X86::VBROADCASTF128rm },
227 { X86::VBROADCASTF64X2Z128rm, X86::VBROADCASTF128rm },
228 { X86::VBROADCASTI32X2Z128rm, X86::VPBROADCASTQrm },
229 { X86::VBROADCASTI32X2Z128rr, X86::VPBROADCASTQrr },
230 { X86::VBROADCASTI32X2Z256rm, X86::VPBROADCASTQYrm },
231 { X86::VBROADCASTI32X2Z256rr, X86::VPBROADCASTQYrr },
232 { X86::VBROADCASTI32X4Z256rm, X86::VBROADCASTI128rm },
233 { X86::VBROADCASTI64X2Z128rm, X86::VBROADCASTI128rm },
234 { X86::VBROADCASTSDZ256rm, X86::VBROADCASTSDYrm },
235 { X86::VBROADCASTSDZ256rr, X86::VBROADCASTSDYrr },
236 { X86::VBROADCASTSSZ128rm, X86::VBROADCASTSSrm },
237 { X86::VBROADCASTSSZ128rr, X86::VBROADCASTSSrr },
238 { X86::VBROADCASTSSZ256rm, X86::VBROADCASTSSYrm },
239 { X86::VBROADCASTSSZ256rr, X86::VBROADCASTSSYrr },
240 { X86::VCOMISDZrm, X86::VCOMISDrm },
241 { X86::VCOMISDZrm_Int, X86::VCOMISDrm_Int },
242 { X86::VCOMISDZrr, X86::VCOMISDrr },
243 { X86::VCOMISDZrr_Int, X86::VCOMISDrr_Int },
244 { X86::VCOMISSZrm, X86::VCOMISSrm },
245 { X86::VCOMISSZrm_Int, X86::VCOMISSrm_Int },
246 { X86::VCOMISSZrr, X86::VCOMISSrr },
247 { X86::VCOMISSZrr_Int, X86::VCOMISSrr_Int },
248 { X86::VCVTDQ2PDZ128rm, X86::VCVTDQ2PDrm },
249 { X86::VCVTDQ2PDZ128rr, X86::VCVTDQ2PDrr },
250 { X86::VCVTDQ2PDZ256rm, X86::VCVTDQ2PDYrm },
251 { X86::VCVTDQ2PDZ256rr, X86::VCVTDQ2PDYrr },
252 { X86::VCVTDQ2PSZ128rm, X86::VCVTDQ2PSrm },
253 { X86::VCVTDQ2PSZ128rr, X86::VCVTDQ2PSrr },
254 { X86::VCVTDQ2PSZ256rm, X86::VCVTDQ2PSYrm },
255 { X86::VCVTDQ2PSZ256rr, X86::VCVTDQ2PSYrr },
256 { X86::VCVTNEPS2BF16Z128rm, X86::VCVTNEPS2BF16rm },
257 { X86::VCVTNEPS2BF16Z128rr, X86::VCVTNEPS2BF16rr },
258 { X86::VCVTNEPS2BF16Z256rm, X86::VCVTNEPS2BF16Yrm },
259 { X86::VCVTNEPS2BF16Z256rr, X86::VCVTNEPS2BF16Yrr },
260 { X86::VCVTPD2DQZ128rm, X86::VCVTPD2DQrm },
261 { X86::VCVTPD2DQZ128rr, X86::VCVTPD2DQrr },
262 { X86::VCVTPD2DQZ256rm, X86::VCVTPD2DQYrm },
263 { X86::VCVTPD2DQZ256rr, X86::VCVTPD2DQYrr },
264 { X86::VCVTPD2PSZ128rm, X86::VCVTPD2PSrm },
265 { X86::VCVTPD2PSZ128rr, X86::VCVTPD2PSrr },
266 { X86::VCVTPD2PSZ256rm, X86::VCVTPD2PSYrm },
267 { X86::VCVTPD2PSZ256rr, X86::VCVTPD2PSYrr },
268 { X86::VCVTPH2PSZ128rm, X86::VCVTPH2PSrm },
269 { X86::VCVTPH2PSZ128rr, X86::VCVTPH2PSrr },
270 { X86::VCVTPH2PSZ256rm, X86::VCVTPH2PSYrm },
271 { X86::VCVTPH2PSZ256rr, X86::VCVTPH2PSYrr },
272 { X86::VCVTPS2DQZ128rm, X86::VCVTPS2DQrm },
273 { X86::VCVTPS2DQZ128rr, X86::VCVTPS2DQrr },
274 { X86::VCVTPS2DQZ256rm, X86::VCVTPS2DQYrm },
275 { X86::VCVTPS2DQZ256rr, X86::VCVTPS2DQYrr },
276 { X86::VCVTPS2PDZ128rm, X86::VCVTPS2PDrm },
277 { X86::VCVTPS2PDZ128rr, X86::VCVTPS2PDrr },
278 { X86::VCVTPS2PDZ256rm, X86::VCVTPS2PDYrm },
279 { X86::VCVTPS2PDZ256rr, X86::VCVTPS2PDYrr },
280 { X86::VCVTPS2PHZ128mr, X86::VCVTPS2PHmr },
281 { X86::VCVTPS2PHZ128rr, X86::VCVTPS2PHrr },
282 { X86::VCVTPS2PHZ256mr, X86::VCVTPS2PHYmr },
283 { X86::VCVTPS2PHZ256rr, X86::VCVTPS2PHYrr },
284 { X86::VCVTSD2SI64Zrm, X86::VCVTSD2SI64rm },
285 { X86::VCVTSD2SI64Zrm_Int, X86::VCVTSD2SI64rm_Int },
286 { X86::VCVTSD2SI64Zrr, X86::VCVTSD2SI64rr },
287 { X86::VCVTSD2SI64Zrr_Int, X86::VCVTSD2SI64rr_Int },
288 { X86::VCVTSD2SIZrm, X86::VCVTSD2SIrm },
289 { X86::VCVTSD2SIZrm_Int, X86::VCVTSD2SIrm_Int },
290 { X86::VCVTSD2SIZrr, X86::VCVTSD2SIrr },
291 { X86::VCVTSD2SIZrr_Int, X86::VCVTSD2SIrr_Int },
292 { X86::VCVTSD2SSZrm, X86::VCVTSD2SSrm },
293 { X86::VCVTSD2SSZrm_Int, X86::VCVTSD2SSrm_Int },
294 { X86::VCVTSD2SSZrr, X86::VCVTSD2SSrr },
295 { X86::VCVTSD2SSZrr_Int, X86::VCVTSD2SSrr_Int },
296 { X86::VCVTSI2SDZrm, X86::VCVTSI2SDrm },
297 { X86::VCVTSI2SDZrm_Int, X86::VCVTSI2SDrm_Int },
298 { X86::VCVTSI2SDZrr, X86::VCVTSI2SDrr },
299 { X86::VCVTSI2SDZrr_Int, X86::VCVTSI2SDrr_Int },
300 { X86::VCVTSI2SSZrm, X86::VCVTSI2SSrm },
301 { X86::VCVTSI2SSZrm_Int, X86::VCVTSI2SSrm_Int },
302 { X86::VCVTSI2SSZrr, X86::VCVTSI2SSrr },
303 { X86::VCVTSI2SSZrr_Int, X86::VCVTSI2SSrr_Int },
304 { X86::VCVTSI642SDZrm, X86::VCVTSI642SDrm },
305 { X86::VCVTSI642SDZrm_Int, X86::VCVTSI642SDrm_Int },
306 { X86::VCVTSI642SDZrr, X86::VCVTSI642SDrr },
307 { X86::VCVTSI642SDZrr_Int, X86::VCVTSI642SDrr_Int },
308 { X86::VCVTSI642SSZrm, X86::VCVTSI642SSrm },
309 { X86::VCVTSI642SSZrm_Int, X86::VCVTSI642SSrm_Int },
310 { X86::VCVTSI642SSZrr, X86::VCVTSI642SSrr },
311 { X86::VCVTSI642SSZrr_Int, X86::VCVTSI642SSrr_Int },
312 { X86::VCVTSS2SDZrm, X86::VCVTSS2SDrm },
313 { X86::VCVTSS2SDZrm_Int, X86::VCVTSS2SDrm_Int },
314 { X86::VCVTSS2SDZrr, X86::VCVTSS2SDrr },
315 { X86::VCVTSS2SDZrr_Int, X86::VCVTSS2SDrr_Int },
316 { X86::VCVTSS2SI64Zrm, X86::VCVTSS2SI64rm },
317 { X86::VCVTSS2SI64Zrm_Int, X86::VCVTSS2SI64rm_Int },
318 { X86::VCVTSS2SI64Zrr, X86::VCVTSS2SI64rr },
319 { X86::VCVTSS2SI64Zrr_Int, X86::VCVTSS2SI64rr_Int },
320 { X86::VCVTSS2SIZrm, X86::VCVTSS2SIrm },
321 { X86::VCVTSS2SIZrm_Int, X86::VCVTSS2SIrm_Int },
322 { X86::VCVTSS2SIZrr, X86::VCVTSS2SIrr },
323 { X86::VCVTSS2SIZrr_Int, X86::VCVTSS2SIrr_Int },
324 { X86::VCVTTPD2DQZ128rm, X86::VCVTTPD2DQrm },
325 { X86::VCVTTPD2DQZ128rr, X86::VCVTTPD2DQrr },
326 { X86::VCVTTPD2DQZ256rm, X86::VCVTTPD2DQYrm },
327 { X86::VCVTTPD2DQZ256rr, X86::VCVTTPD2DQYrr },
328 { X86::VCVTTPS2DQZ128rm, X86::VCVTTPS2DQrm },
329 { X86::VCVTTPS2DQZ128rr, X86::VCVTTPS2DQrr },
330 { X86::VCVTTPS2DQZ256rm, X86::VCVTTPS2DQYrm },
331 { X86::VCVTTPS2DQZ256rr, X86::VCVTTPS2DQYrr },
332 { X86::VCVTTSD2SI64Zrm, X86::VCVTTSD2SI64rm },
333 { X86::VCVTTSD2SI64Zrm_Int, X86::VCVTTSD2SI64rm_Int },
334 { X86::VCVTTSD2SI64Zrr, X86::VCVTTSD2SI64rr },
335 { X86::VCVTTSD2SI64Zrr_Int, X86::VCVTTSD2SI64rr_Int },
336 { X86::VCVTTSD2SIZrm, X86::VCVTTSD2SIrm },
337 { X86::VCVTTSD2SIZrm_Int, X86::VCVTTSD2SIrm_Int },
338 { X86::VCVTTSD2SIZrr, X86::VCVTTSD2SIrr },
339 { X86::VCVTTSD2SIZrr_Int, X86::VCVTTSD2SIrr_Int },
340 { X86::VCVTTSS2SI64Zrm, X86::VCVTTSS2SI64rm },
341 { X86::VCVTTSS2SI64Zrm_Int, X86::VCVTTSS2SI64rm_Int },
342 { X86::VCVTTSS2SI64Zrr, X86::VCVTTSS2SI64rr },
343 { X86::VCVTTSS2SI64Zrr_Int, X86::VCVTTSS2SI64rr_Int },
344 { X86::VCVTTSS2SIZrm, X86::VCVTTSS2SIrm },
345 { X86::VCVTTSS2SIZrm_Int, X86::VCVTTSS2SIrm_Int },
346 { X86::VCVTTSS2SIZrr, X86::VCVTTSS2SIrr },
347 { X86::VCVTTSS2SIZrr_Int, X86::VCVTTSS2SIrr_Int },
348 { X86::VDIVPDZ128rm, X86::VDIVPDrm },
349 { X86::VDIVPDZ128rr, X86::VDIVPDrr },
350 { X86::VDIVPDZ256rm, X86::VDIVPDYrm },
351 { X86::VDIVPDZ256rr, X86::VDIVPDYrr },
352 { X86::VDIVPSZ128rm, X86::VDIVPSrm },
353 { X86::VDIVPSZ128rr, X86::VDIVPSrr },
354 { X86::VDIVPSZ256rm, X86::VDIVPSYrm },
355 { X86::VDIVPSZ256rr, X86::VDIVPSYrr },
356 { X86::VDIVSDZrm, X86::VDIVSDrm },
357 { X86::VDIVSDZrm_Int, X86::VDIVSDrm_Int },
358 { X86::VDIVSDZrr, X86::VDIVSDrr },
359 { X86::VDIVSDZrr_Int, X86::VDIVSDrr_Int },
360 { X86::VDIVSSZrm, X86::VDIVSSrm },
361 { X86::VDIVSSZrm_Int, X86::VDIVSSrm_Int },
362 { X86::VDIVSSZrr, X86::VDIVSSrr },
363 { X86::VDIVSSZrr_Int, X86::VDIVSSrr_Int },
364 { X86::VEXTRACTF32x4Z256mr, X86::VEXTRACTF128mr },
365 { X86::VEXTRACTF32x4Z256rr, X86::VEXTRACTF128rr },
366 { X86::VEXTRACTF64x2Z256mr, X86::VEXTRACTF128mr },
367 { X86::VEXTRACTF64x2Z256rr, X86::VEXTRACTF128rr },
368 { X86::VEXTRACTI32x4Z256mr, X86::VEXTRACTI128mr },
369 { X86::VEXTRACTI32x4Z256rr, X86::VEXTRACTI128rr },
370 { X86::VEXTRACTI64x2Z256mr, X86::VEXTRACTI128mr },
371 { X86::VEXTRACTI64x2Z256rr, X86::VEXTRACTI128rr },
372 { X86::VEXTRACTPSZmr, X86::VEXTRACTPSmr },
373 { X86::VEXTRACTPSZrr, X86::VEXTRACTPSrr },
374 { X86::VFMADD132PDZ128m, X86::VFMADD132PDm },
375 { X86::VFMADD132PDZ128r, X86::VFMADD132PDr },
376 { X86::VFMADD132PDZ256m, X86::VFMADD132PDYm },
377 { X86::VFMADD132PDZ256r, X86::VFMADD132PDYr },
378 { X86::VFMADD132PSZ128m, X86::VFMADD132PSm },
379 { X86::VFMADD132PSZ128r, X86::VFMADD132PSr },
380 { X86::VFMADD132PSZ256m, X86::VFMADD132PSYm },
381 { X86::VFMADD132PSZ256r, X86::VFMADD132PSYr },
382 { X86::VFMADD132SDZm, X86::VFMADD132SDm },
383 { X86::VFMADD132SDZm_Int, X86::VFMADD132SDm_Int },
384 { X86::VFMADD132SDZr, X86::VFMADD132SDr },
385 { X86::VFMADD132SDZr_Int, X86::VFMADD132SDr_Int },
386 { X86::VFMADD132SSZm, X86::VFMADD132SSm },
387 { X86::VFMADD132SSZm_Int, X86::VFMADD132SSm_Int },
388 { X86::VFMADD132SSZr, X86::VFMADD132SSr },
389 { X86::VFMADD132SSZr_Int, X86::VFMADD132SSr_Int },
390 { X86::VFMADD213PDZ128m, X86::VFMADD213PDm },
391 { X86::VFMADD213PDZ128r, X86::VFMADD213PDr },
392 { X86::VFMADD213PDZ256m, X86::VFMADD213PDYm },
393 { X86::VFMADD213PDZ256r, X86::VFMADD213PDYr },
394 { X86::VFMADD213PSZ128m, X86::VFMADD213PSm },
395 { X86::VFMADD213PSZ128r, X86::VFMADD213PSr },
396 { X86::VFMADD213PSZ256m, X86::VFMADD213PSYm },
397 { X86::VFMADD213PSZ256r, X86::VFMADD213PSYr },
398 { X86::VFMADD213SDZm, X86::VFMADD213SDm },
399 { X86::VFMADD213SDZm_Int, X86::VFMADD213SDm_Int },
400 { X86::VFMADD213SDZr, X86::VFMADD213SDr },
401 { X86::VFMADD213SDZr_Int, X86::VFMADD213SDr_Int },
402 { X86::VFMADD213SSZm, X86::VFMADD213SSm },
403 { X86::VFMADD213SSZm_Int, X86::VFMADD213SSm_Int },
404 { X86::VFMADD213SSZr, X86::VFMADD213SSr },
405 { X86::VFMADD213SSZr_Int, X86::VFMADD213SSr_Int },
406 { X86::VFMADD231PDZ128m, X86::VFMADD231PDm },
407 { X86::VFMADD231PDZ128r, X86::VFMADD231PDr },
408 { X86::VFMADD231PDZ256m, X86::VFMADD231PDYm },
409 { X86::VFMADD231PDZ256r, X86::VFMADD231PDYr },
410 { X86::VFMADD231PSZ128m, X86::VFMADD231PSm },
411 { X86::VFMADD231PSZ128r, X86::VFMADD231PSr },
412 { X86::VFMADD231PSZ256m, X86::VFMADD231PSYm },
413 { X86::VFMADD231PSZ256r, X86::VFMADD231PSYr },
414 { X86::VFMADD231SDZm, X86::VFMADD231SDm },
415 { X86::VFMADD231SDZm_Int, X86::VFMADD231SDm_Int },
416 { X86::VFMADD231SDZr, X86::VFMADD231SDr },
417 { X86::VFMADD231SDZr_Int, X86::VFMADD231SDr_Int },
418 { X86::VFMADD231SSZm, X86::VFMADD231SSm },
419 { X86::VFMADD231SSZm_Int, X86::VFMADD231SSm_Int },
420 { X86::VFMADD231SSZr, X86::VFMADD231SSr },
421 { X86::VFMADD231SSZr_Int, X86::VFMADD231SSr_Int },
422 { X86::VFMADDSUB132PDZ128m, X86::VFMADDSUB132PDm },
423 { X86::VFMADDSUB132PDZ128r, X86::VFMADDSUB132PDr },
424 { X86::VFMADDSUB132PDZ256m, X86::VFMADDSUB132PDYm },
425 { X86::VFMADDSUB132PDZ256r, X86::VFMADDSUB132PDYr },
426 { X86::VFMADDSUB132PSZ128m, X86::VFMADDSUB132PSm },
427 { X86::VFMADDSUB132PSZ128r, X86::VFMADDSUB132PSr },
428 { X86::VFMADDSUB132PSZ256m, X86::VFMADDSUB132PSYm },
429 { X86::VFMADDSUB132PSZ256r, X86::VFMADDSUB132PSYr },
430 { X86::VFMADDSUB213PDZ128m, X86::VFMADDSUB213PDm },
431 { X86::VFMADDSUB213PDZ128r, X86::VFMADDSUB213PDr },
432 { X86::VFMADDSUB213PDZ256m, X86::VFMADDSUB213PDYm },
433 { X86::VFMADDSUB213PDZ256r, X86::VFMADDSUB213PDYr },
434 { X86::VFMADDSUB213PSZ128m, X86::VFMADDSUB213PSm },
435 { X86::VFMADDSUB213PSZ128r, X86::VFMADDSUB213PSr },
436 { X86::VFMADDSUB213PSZ256m, X86::VFMADDSUB213PSYm },
437 { X86::VFMADDSUB213PSZ256r, X86::VFMADDSUB213PSYr },
438 { X86::VFMADDSUB231PDZ128m, X86::VFMADDSUB231PDm },
439 { X86::VFMADDSUB231PDZ128r, X86::VFMADDSUB231PDr },
440 { X86::VFMADDSUB231PDZ256m, X86::VFMADDSUB231PDYm },
441 { X86::VFMADDSUB231PDZ256r, X86::VFMADDSUB231PDYr },
442 { X86::VFMADDSUB231PSZ128m, X86::VFMADDSUB231PSm },
443 { X86::VFMADDSUB231PSZ128r, X86::VFMADDSUB231PSr },
444 { X86::VFMADDSUB231PSZ256m, X86::VFMADDSUB231PSYm },
445 { X86::VFMADDSUB231PSZ256r, X86::VFMADDSUB231PSYr },
446 { X86::VFMSUB132PDZ128m, X86::VFMSUB132PDm },
447 { X86::VFMSUB132PDZ128r, X86::VFMSUB132PDr },
448 { X86::VFMSUB132PDZ256m, X86::VFMSUB132PDYm },
449 { X86::VFMSUB132PDZ256r, X86::VFMSUB132PDYr },
450 { X86::VFMSUB132PSZ128m, X86::VFMSUB132PSm },
451 { X86::VFMSUB132PSZ128r, X86::VFMSUB132PSr },
452 { X86::VFMSUB132PSZ256m, X86::VFMSUB132PSYm },
453 { X86::VFMSUB132PSZ256r, X86::VFMSUB132PSYr },
454 { X86::VFMSUB132SDZm, X86::VFMSUB132SDm },
455 { X86::VFMSUB132SDZm_Int, X86::VFMSUB132SDm_Int },
456 { X86::VFMSUB132SDZr, X86::VFMSUB132SDr },
457 { X86::VFMSUB132SDZr_Int, X86::VFMSUB132SDr_Int },
458 { X86::VFMSUB132SSZm, X86::VFMSUB132SSm },
459 { X86::VFMSUB132SSZm_Int, X86::VFMSUB132SSm_Int },
460 { X86::VFMSUB132SSZr, X86::VFMSUB132SSr },
461 { X86::VFMSUB132SSZr_Int, X86::VFMSUB132SSr_Int },
462 { X86::VFMSUB213PDZ128m, X86::VFMSUB213PDm },
463 { X86::VFMSUB213PDZ128r, X86::VFMSUB213PDr },
464 { X86::VFMSUB213PDZ256m, X86::VFMSUB213PDYm },
465 { X86::VFMSUB213PDZ256r, X86::VFMSUB213PDYr },
466 { X86::VFMSUB213PSZ128m, X86::VFMSUB213PSm },
467 { X86::VFMSUB213PSZ128r, X86::VFMSUB213PSr },
468 { X86::VFMSUB213PSZ256m, X86::VFMSUB213PSYm },
469 { X86::VFMSUB213PSZ256r, X86::VFMSUB213PSYr },
470 { X86::VFMSUB213SDZm, X86::VFMSUB213SDm },
471 { X86::VFMSUB213SDZm_Int, X86::VFMSUB213SDm_Int },
472 { X86::VFMSUB213SDZr, X86::VFMSUB213SDr },
473 { X86::VFMSUB213SDZr_Int, X86::VFMSUB213SDr_Int },
474 { X86::VFMSUB213SSZm, X86::VFMSUB213SSm },
475 { X86::VFMSUB213SSZm_Int, X86::VFMSUB213SSm_Int },
476 { X86::VFMSUB213SSZr, X86::VFMSUB213SSr },
477 { X86::VFMSUB213SSZr_Int, X86::VFMSUB213SSr_Int },
478 { X86::VFMSUB231PDZ128m, X86::VFMSUB231PDm },
479 { X86::VFMSUB231PDZ128r, X86::VFMSUB231PDr },
480 { X86::VFMSUB231PDZ256m, X86::VFMSUB231PDYm },
481 { X86::VFMSUB231PDZ256r, X86::VFMSUB231PDYr },
482 { X86::VFMSUB231PSZ128m, X86::VFMSUB231PSm },
483 { X86::VFMSUB231PSZ128r, X86::VFMSUB231PSr },
484 { X86::VFMSUB231PSZ256m, X86::VFMSUB231PSYm },
485 { X86::VFMSUB231PSZ256r, X86::VFMSUB231PSYr },
486 { X86::VFMSUB231SDZm, X86::VFMSUB231SDm },
487 { X86::VFMSUB231SDZm_Int, X86::VFMSUB231SDm_Int },
488 { X86::VFMSUB231SDZr, X86::VFMSUB231SDr },
489 { X86::VFMSUB231SDZr_Int, X86::VFMSUB231SDr_Int },
490 { X86::VFMSUB231SSZm, X86::VFMSUB231SSm },
491 { X86::VFMSUB231SSZm_Int, X86::VFMSUB231SSm_Int },
492 { X86::VFMSUB231SSZr, X86::VFMSUB231SSr },
493 { X86::VFMSUB231SSZr_Int, X86::VFMSUB231SSr_Int },
494 { X86::VFMSUBADD132PDZ128m, X86::VFMSUBADD132PDm },
495 { X86::VFMSUBADD132PDZ128r, X86::VFMSUBADD132PDr },
496 { X86::VFMSUBADD132PDZ256m, X86::VFMSUBADD132PDYm },
497 { X86::VFMSUBADD132PDZ256r, X86::VFMSUBADD132PDYr },
498 { X86::VFMSUBADD132PSZ128m, X86::VFMSUBADD132PSm },
499 { X86::VFMSUBADD132PSZ128r, X86::VFMSUBADD132PSr },
500 { X86::VFMSUBADD132PSZ256m, X86::VFMSUBADD132PSYm },
501 { X86::VFMSUBADD132PSZ256r, X86::VFMSUBADD132PSYr },
502 { X86::VFMSUBADD213PDZ128m, X86::VFMSUBADD213PDm },
503 { X86::VFMSUBADD213PDZ128r, X86::VFMSUBADD213PDr },
504 { X86::VFMSUBADD213PDZ256m, X86::VFMSUBADD213PDYm },
505 { X86::VFMSUBADD213PDZ256r, X86::VFMSUBADD213PDYr },
506 { X86::VFMSUBADD213PSZ128m, X86::VFMSUBADD213PSm },
507 { X86::VFMSUBADD213PSZ128r, X86::VFMSUBADD213PSr },
508 { X86::VFMSUBADD213PSZ256m, X86::VFMSUBADD213PSYm },
509 { X86::VFMSUBADD213PSZ256r, X86::VFMSUBADD213PSYr },
510 { X86::VFMSUBADD231PDZ128m, X86::VFMSUBADD231PDm },
511 { X86::VFMSUBADD231PDZ128r, X86::VFMSUBADD231PDr },
512 { X86::VFMSUBADD231PDZ256m, X86::VFMSUBADD231PDYm },
513 { X86::VFMSUBADD231PDZ256r, X86::VFMSUBADD231PDYr },
514 { X86::VFMSUBADD231PSZ128m, X86::VFMSUBADD231PSm },
515 { X86::VFMSUBADD231PSZ128r, X86::VFMSUBADD231PSr },
516 { X86::VFMSUBADD231PSZ256m, X86::VFMSUBADD231PSYm },
517 { X86::VFMSUBADD231PSZ256r, X86::VFMSUBADD231PSYr },
518 { X86::VFNMADD132PDZ128m, X86::VFNMADD132PDm },
519 { X86::VFNMADD132PDZ128r, X86::VFNMADD132PDr },
520 { X86::VFNMADD132PDZ256m, X86::VFNMADD132PDYm },
521 { X86::VFNMADD132PDZ256r, X86::VFNMADD132PDYr },
522 { X86::VFNMADD132PSZ128m, X86::VFNMADD132PSm },
523 { X86::VFNMADD132PSZ128r, X86::VFNMADD132PSr },
524 { X86::VFNMADD132PSZ256m, X86::VFNMADD132PSYm },
525 { X86::VFNMADD132PSZ256r, X86::VFNMADD132PSYr },
526 { X86::VFNMADD132SDZm, X86::VFNMADD132SDm },
527 { X86::VFNMADD132SDZm_Int, X86::VFNMADD132SDm_Int },
528 { X86::VFNMADD132SDZr, X86::VFNMADD132SDr },
529 { X86::VFNMADD132SDZr_Int, X86::VFNMADD132SDr_Int },
530 { X86::VFNMADD132SSZm, X86::VFNMADD132SSm },
531 { X86::VFNMADD132SSZm_Int, X86::VFNMADD132SSm_Int },
532 { X86::VFNMADD132SSZr, X86::VFNMADD132SSr },
533 { X86::VFNMADD132SSZr_Int, X86::VFNMADD132SSr_Int },
534 { X86::VFNMADD213PDZ128m, X86::VFNMADD213PDm },
535 { X86::VFNMADD213PDZ128r, X86::VFNMADD213PDr },
536 { X86::VFNMADD213PDZ256m, X86::VFNMADD213PDYm },
537 { X86::VFNMADD213PDZ256r, X86::VFNMADD213PDYr },
538 { X86::VFNMADD213PSZ128m, X86::VFNMADD213PSm },
539 { X86::VFNMADD213PSZ128r, X86::VFNMADD213PSr },
540 { X86::VFNMADD213PSZ256m, X86::VFNMADD213PSYm },
541 { X86::VFNMADD213PSZ256r, X86::VFNMADD213PSYr },
542 { X86::VFNMADD213SDZm, X86::VFNMADD213SDm },
543 { X86::VFNMADD213SDZm_Int, X86::VFNMADD213SDm_Int },
544 { X86::VFNMADD213SDZr, X86::VFNMADD213SDr },
545 { X86::VFNMADD213SDZr_Int, X86::VFNMADD213SDr_Int },
546 { X86::VFNMADD213SSZm, X86::VFNMADD213SSm },
547 { X86::VFNMADD213SSZm_Int, X86::VFNMADD213SSm_Int },
548 { X86::VFNMADD213SSZr, X86::VFNMADD213SSr },
549 { X86::VFNMADD213SSZr_Int, X86::VFNMADD213SSr_Int },
550 { X86::VFNMADD231PDZ128m, X86::VFNMADD231PDm },
551 { X86::VFNMADD231PDZ128r, X86::VFNMADD231PDr },
552 { X86::VFNMADD231PDZ256m, X86::VFNMADD231PDYm },
553 { X86::VFNMADD231PDZ256r, X86::VFNMADD231PDYr },
554 { X86::VFNMADD231PSZ128m, X86::VFNMADD231PSm },
555 { X86::VFNMADD231PSZ128r, X86::VFNMADD231PSr },
556 { X86::VFNMADD231PSZ256m, X86::VFNMADD231PSYm },
557 { X86::VFNMADD231PSZ256r, X86::VFNMADD231PSYr },
558 { X86::VFNMADD231SDZm, X86::VFNMADD231SDm },
559 { X86::VFNMADD231SDZm_Int, X86::VFNMADD231SDm_Int },
560 { X86::VFNMADD231SDZr, X86::VFNMADD231SDr },
561 { X86::VFNMADD231SDZr_Int, X86::VFNMADD231SDr_Int },
562 { X86::VFNMADD231SSZm, X86::VFNMADD231SSm },
563 { X86::VFNMADD231SSZm_Int, X86::VFNMADD231SSm_Int },
564 { X86::VFNMADD231SSZr, X86::VFNMADD231SSr },
565 { X86::VFNMADD231SSZr_Int, X86::VFNMADD231SSr_Int },
566 { X86::VFNMSUB132PDZ128m, X86::VFNMSUB132PDm },
567 { X86::VFNMSUB132PDZ128r, X86::VFNMSUB132PDr },
568 { X86::VFNMSUB132PDZ256m, X86::VFNMSUB132PDYm },
569 { X86::VFNMSUB132PDZ256r, X86::VFNMSUB132PDYr },
570 { X86::VFNMSUB132PSZ128m, X86::VFNMSUB132PSm },
571 { X86::VFNMSUB132PSZ128r, X86::VFNMSUB132PSr },
572 { X86::VFNMSUB132PSZ256m, X86::VFNMSUB132PSYm },
573 { X86::VFNMSUB132PSZ256r, X86::VFNMSUB132PSYr },
574 { X86::VFNMSUB132SDZm, X86::VFNMSUB132SDm },
575 { X86::VFNMSUB132SDZm_Int, X86::VFNMSUB132SDm_Int },
576 { X86::VFNMSUB132SDZr, X86::VFNMSUB132SDr },
577 { X86::VFNMSUB132SDZr_Int, X86::VFNMSUB132SDr_Int },
578 { X86::VFNMSUB132SSZm, X86::VFNMSUB132SSm },
579 { X86::VFNMSUB132SSZm_Int, X86::VFNMSUB132SSm_Int },
580 { X86::VFNMSUB132SSZr, X86::VFNMSUB132SSr },
581 { X86::VFNMSUB132SSZr_Int, X86::VFNMSUB132SSr_Int },
582 { X86::VFNMSUB213PDZ128m, X86::VFNMSUB213PDm },
583 { X86::VFNMSUB213PDZ128r, X86::VFNMSUB213PDr },
584 { X86::VFNMSUB213PDZ256m, X86::VFNMSUB213PDYm },
585 { X86::VFNMSUB213PDZ256r, X86::VFNMSUB213PDYr },
586 { X86::VFNMSUB213PSZ128m, X86::VFNMSUB213PSm },
587 { X86::VFNMSUB213PSZ128r, X86::VFNMSUB213PSr },
588 { X86::VFNMSUB213PSZ256m, X86::VFNMSUB213PSYm },
589 { X86::VFNMSUB213PSZ256r, X86::VFNMSUB213PSYr },
590 { X86::VFNMSUB213SDZm, X86::VFNMSUB213SDm },
591 { X86::VFNMSUB213SDZm_Int, X86::VFNMSUB213SDm_Int },
592 { X86::VFNMSUB213SDZr, X86::VFNMSUB213SDr },
593 { X86::VFNMSUB213SDZr_Int, X86::VFNMSUB213SDr_Int },
594 { X86::VFNMSUB213SSZm, X86::VFNMSUB213SSm },
595 { X86::VFNMSUB213SSZm_Int, X86::VFNMSUB213SSm_Int },
596 { X86::VFNMSUB213SSZr, X86::VFNMSUB213SSr },
597 { X86::VFNMSUB213SSZr_Int, X86::VFNMSUB213SSr_Int },
598 { X86::VFNMSUB231PDZ128m, X86::VFNMSUB231PDm },
599 { X86::VFNMSUB231PDZ128r, X86::VFNMSUB231PDr },
600 { X86::VFNMSUB231PDZ256m, X86::VFNMSUB231PDYm },
601 { X86::VFNMSUB231PDZ256r, X86::VFNMSUB231PDYr },
602 { X86::VFNMSUB231PSZ128m, X86::VFNMSUB231PSm },
603 { X86::VFNMSUB231PSZ128r, X86::VFNMSUB231PSr },
604 { X86::VFNMSUB231PSZ256m, X86::VFNMSUB231PSYm },
605 { X86::VFNMSUB231PSZ256r, X86::VFNMSUB231PSYr },
606 { X86::VFNMSUB231SDZm, X86::VFNMSUB231SDm },
607 { X86::VFNMSUB231SDZm_Int, X86::VFNMSUB231SDm_Int },
608 { X86::VFNMSUB231SDZr, X86::VFNMSUB231SDr },
609 { X86::VFNMSUB231SDZr_Int, X86::VFNMSUB231SDr_Int },
610 { X86::VFNMSUB231SSZm, X86::VFNMSUB231SSm },
611 { X86::VFNMSUB231SSZm_Int, X86::VFNMSUB231SSm_Int },
612 { X86::VFNMSUB231SSZr, X86::VFNMSUB231SSr },
613 { X86::VFNMSUB231SSZr_Int, X86::VFNMSUB231SSr_Int },
614 { X86::VGF2P8AFFINEINVQBZ128rmi, X86::VGF2P8AFFINEINVQBrmi },
615 { X86::VGF2P8AFFINEINVQBZ128rri, X86::VGF2P8AFFINEINVQBrri },
616 { X86::VGF2P8AFFINEINVQBZ256rmi, X86::VGF2P8AFFINEINVQBYrmi },
617 { X86::VGF2P8AFFINEINVQBZ256rri, X86::VGF2P8AFFINEINVQBYrri },
618 { X86::VGF2P8AFFINEQBZ128rmi, X86::VGF2P8AFFINEQBrmi },
619 { X86::VGF2P8AFFINEQBZ128rri, X86::VGF2P8AFFINEQBrri },
620 { X86::VGF2P8AFFINEQBZ256rmi, X86::VGF2P8AFFINEQBYrmi },
621 { X86::VGF2P8AFFINEQBZ256rri, X86::VGF2P8AFFINEQBYrri },
622 { X86::VGF2P8MULBZ128rm, X86::VGF2P8MULBrm },
623 { X86::VGF2P8MULBZ128rr, X86::VGF2P8MULBrr },
624 { X86::VGF2P8MULBZ256rm, X86::VGF2P8MULBYrm },
625 { X86::VGF2P8MULBZ256rr, X86::VGF2P8MULBYrr },
626 { X86::VINSERTF32x4Z256rm, X86::VINSERTF128rm },
627 { X86::VINSERTF32x4Z256rr, X86::VINSERTF128rr },
628 { X86::VINSERTF64x2Z256rm, X86::VINSERTF128rm },
629 { X86::VINSERTF64x2Z256rr, X86::VINSERTF128rr },
630 { X86::VINSERTI32x4Z256rm, X86::VINSERTI128rm },
631 { X86::VINSERTI32x4Z256rr, X86::VINSERTI128rr },
632 { X86::VINSERTI64x2Z256rm, X86::VINSERTI128rm },
633 { X86::VINSERTI64x2Z256rr, X86::VINSERTI128rr },
634 { X86::VINSERTPSZrm, X86::VINSERTPSrm },
635 { X86::VINSERTPSZrr, X86::VINSERTPSrr },
636 { X86::VMAXCPDZ128rm, X86::VMAXCPDrm },
637 { X86::VMAXCPDZ128rr, X86::VMAXCPDrr },
638 { X86::VMAXCPDZ256rm, X86::VMAXCPDYrm },
639 { X86::VMAXCPDZ256rr, X86::VMAXCPDYrr },
640 { X86::VMAXCPSZ128rm, X86::VMAXCPSrm },
641 { X86::VMAXCPSZ128rr, X86::VMAXCPSrr },
642 { X86::VMAXCPSZ256rm, X86::VMAXCPSYrm },
643 { X86::VMAXCPSZ256rr, X86::VMAXCPSYrr },
644 { X86::VMAXCSDZrm, X86::VMAXCSDrm },
645 { X86::VMAXCSDZrr, X86::VMAXCSDrr },
646 { X86::VMAXCSSZrm, X86::VMAXCSSrm },
647 { X86::VMAXCSSZrr, X86::VMAXCSSrr },
648 { X86::VMAXPDZ128rm, X86::VMAXPDrm },
649 { X86::VMAXPDZ128rr, X86::VMAXPDrr },
650 { X86::VMAXPDZ256rm, X86::VMAXPDYrm },
651 { X86::VMAXPDZ256rr, X86::VMAXPDYrr },
652 { X86::VMAXPSZ128rm, X86::VMAXPSrm },
653 { X86::VMAXPSZ128rr, X86::VMAXPSrr },
654 { X86::VMAXPSZ256rm, X86::VMAXPSYrm },
655 { X86::VMAXPSZ256rr, X86::VMAXPSYrr },
656 { X86::VMAXSDZrm, X86::VMAXSDrm },
657 { X86::VMAXSDZrm_Int, X86::VMAXSDrm_Int },
658 { X86::VMAXSDZrr, X86::VMAXSDrr },
659 { X86::VMAXSDZrr_Int, X86::VMAXSDrr_Int },
660 { X86::VMAXSSZrm, X86::VMAXSSrm },
661 { X86::VMAXSSZrm_Int, X86::VMAXSSrm_Int },
662 { X86::VMAXSSZrr, X86::VMAXSSrr },
663 { X86::VMAXSSZrr_Int, X86::VMAXSSrr_Int },
664 { X86::VMINCPDZ128rm, X86::VMINCPDrm },
665 { X86::VMINCPDZ128rr, X86::VMINCPDrr },
666 { X86::VMINCPDZ256rm, X86::VMINCPDYrm },
667 { X86::VMINCPDZ256rr, X86::VMINCPDYrr },
668 { X86::VMINCPSZ128rm, X86::VMINCPSrm },
669 { X86::VMINCPSZ128rr, X86::VMINCPSrr },
670 { X86::VMINCPSZ256rm, X86::VMINCPSYrm },
671 { X86::VMINCPSZ256rr, X86::VMINCPSYrr },
672 { X86::VMINCSDZrm, X86::VMINCSDrm },
673 { X86::VMINCSDZrr, X86::VMINCSDrr },
674 { X86::VMINCSSZrm, X86::VMINCSSrm },
675 { X86::VMINCSSZrr, X86::VMINCSSrr },
676 { X86::VMINPDZ128rm, X86::VMINPDrm },
677 { X86::VMINPDZ128rr, X86::VMINPDrr },
678 { X86::VMINPDZ256rm, X86::VMINPDYrm },
679 { X86::VMINPDZ256rr, X86::VMINPDYrr },
680 { X86::VMINPSZ128rm, X86::VMINPSrm },
681 { X86::VMINPSZ128rr, X86::VMINPSrr },
682 { X86::VMINPSZ256rm, X86::VMINPSYrm },
683 { X86::VMINPSZ256rr, X86::VMINPSYrr },
684 { X86::VMINSDZrm, X86::VMINSDrm },
685 { X86::VMINSDZrm_Int, X86::VMINSDrm_Int },
686 { X86::VMINSDZrr, X86::VMINSDrr },
687 { X86::VMINSDZrr_Int, X86::VMINSDrr_Int },
688 { X86::VMINSSZrm, X86::VMINSSrm },
689 { X86::VMINSSZrm_Int, X86::VMINSSrm_Int },
690 { X86::VMINSSZrr, X86::VMINSSrr },
691 { X86::VMINSSZrr_Int, X86::VMINSSrr_Int },
692 { X86::VMOV64toPQIZrm, X86::VMOV64toPQIrm },
693 { X86::VMOV64toPQIZrr, X86::VMOV64toPQIrr },
694 { X86::VMOV64toSDZrr, X86::VMOV64toSDrr },
695 { X86::VMOVAPDZ128mr, X86::VMOVAPDmr },
696 { X86::VMOVAPDZ128rm, X86::VMOVAPDrm },
697 { X86::VMOVAPDZ128rr, X86::VMOVAPDrr },
698 { X86::VMOVAPDZ256mr, X86::VMOVAPDYmr },
699 { X86::VMOVAPDZ256rm, X86::VMOVAPDYrm },
700 { X86::VMOVAPDZ256rr, X86::VMOVAPDYrr },
701 { X86::VMOVAPSZ128mr, X86::VMOVAPSmr },
702 { X86::VMOVAPSZ128rm, X86::VMOVAPSrm },
703 { X86::VMOVAPSZ128rr, X86::VMOVAPSrr },
704 { X86::VMOVAPSZ256mr, X86::VMOVAPSYmr },
705 { X86::VMOVAPSZ256rm, X86::VMOVAPSYrm },
706 { X86::VMOVAPSZ256rr, X86::VMOVAPSYrr },
707 { X86::VMOVDDUPZ128rm, X86::VMOVDDUPrm },
708 { X86::VMOVDDUPZ128rr, X86::VMOVDDUPrr },
709 { X86::VMOVDDUPZ256rm, X86::VMOVDDUPYrm },
710 { X86::VMOVDDUPZ256rr, X86::VMOVDDUPYrr },
711 { X86::VMOVDI2PDIZrm, X86::VMOVDI2PDIrm },
712 { X86::VMOVDI2PDIZrr, X86::VMOVDI2PDIrr },
713 { X86::VMOVDI2SSZrr, X86::VMOVDI2SSrr },
714 { X86::VMOVDQA32Z128mr, X86::VMOVDQAmr },
715 { X86::VMOVDQA32Z128rm, X86::VMOVDQArm },
716 { X86::VMOVDQA32Z128rr, X86::VMOVDQArr },
717 { X86::VMOVDQA32Z256mr, X86::VMOVDQAYmr },
718 { X86::VMOVDQA32Z256rm, X86::VMOVDQAYrm },
719 { X86::VMOVDQA32Z256rr, X86::VMOVDQAYrr },
720 { X86::VMOVDQA64Z128mr, X86::VMOVDQAmr },
721 { X86::VMOVDQA64Z128rm, X86::VMOVDQArm },
722 { X86::VMOVDQA64Z128rr, X86::VMOVDQArr },
723 { X86::VMOVDQA64Z256mr, X86::VMOVDQAYmr },
724 { X86::VMOVDQA64Z256rm, X86::VMOVDQAYrm },
725 { X86::VMOVDQA64Z256rr, X86::VMOVDQAYrr },
726 { X86::VMOVDQU16Z128mr, X86::VMOVDQUmr },
727 { X86::VMOVDQU16Z128rm, X86::VMOVDQUrm },
728 { X86::VMOVDQU16Z128rr, X86::VMOVDQUrr },
729 { X86::VMOVDQU16Z256mr, X86::VMOVDQUYmr },
730 { X86::VMOVDQU16Z256rm, X86::VMOVDQUYrm },
731 { X86::VMOVDQU16Z256rr, X86::VMOVDQUYrr },
732 { X86::VMOVDQU32Z128mr, X86::VMOVDQUmr },
733 { X86::VMOVDQU32Z128rm, X86::VMOVDQUrm },
734 { X86::VMOVDQU32Z128rr, X86::VMOVDQUrr },
735 { X86::VMOVDQU32Z256mr, X86::VMOVDQUYmr },
736 { X86::VMOVDQU32Z256rm, X86::VMOVDQUYrm },
737 { X86::VMOVDQU32Z256rr, X86::VMOVDQUYrr },
738 { X86::VMOVDQU64Z128mr, X86::VMOVDQUmr },
739 { X86::VMOVDQU64Z128rm, X86::VMOVDQUrm },
740 { X86::VMOVDQU64Z128rr, X86::VMOVDQUrr },
741 { X86::VMOVDQU64Z256mr, X86::VMOVDQUYmr },
742 { X86::VMOVDQU64Z256rm, X86::VMOVDQUYrm },
743 { X86::VMOVDQU64Z256rr, X86::VMOVDQUYrr },
744 { X86::VMOVDQU8Z128mr, X86::VMOVDQUmr },
745 { X86::VMOVDQU8Z128rm, X86::VMOVDQUrm },
746 { X86::VMOVDQU8Z128rr, X86::VMOVDQUrr },
747 { X86::VMOVDQU8Z256mr, X86::VMOVDQUYmr },
748 { X86::VMOVDQU8Z256rm, X86::VMOVDQUYrm },
749 { X86::VMOVDQU8Z256rr, X86::VMOVDQUYrr },
750 { X86::VMOVHLPSZrr, X86::VMOVHLPSrr },
751 { X86::VMOVHPDZ128mr, X86::VMOVHPDmr },
752 { X86::VMOVHPDZ128rm, X86::VMOVHPDrm },
753 { X86::VMOVHPSZ128mr, X86::VMOVHPSmr },
754 { X86::VMOVHPSZ128rm, X86::VMOVHPSrm },
755 { X86::VMOVLHPSZrr, X86::VMOVLHPSrr },
756 { X86::VMOVLPDZ128mr, X86::VMOVLPDmr },
757 { X86::VMOVLPDZ128rm, X86::VMOVLPDrm },
758 { X86::VMOVLPSZ128mr, X86::VMOVLPSmr },
759 { X86::VMOVLPSZ128rm, X86::VMOVLPSrm },
760 { X86::VMOVNTDQAZ128rm, X86::VMOVNTDQArm },
761 { X86::VMOVNTDQAZ256rm, X86::VMOVNTDQAYrm },
762 { X86::VMOVNTDQZ128mr, X86::VMOVNTDQmr },
763 { X86::VMOVNTDQZ256mr, X86::VMOVNTDQYmr },
764 { X86::VMOVNTPDZ128mr, X86::VMOVNTPDmr },
765 { X86::VMOVNTPDZ256mr, X86::VMOVNTPDYmr },
766 { X86::VMOVNTPSZ128mr, X86::VMOVNTPSmr },
767 { X86::VMOVNTPSZ256mr, X86::VMOVNTPSYmr },
768 { X86::VMOVPDI2DIZmr, X86::VMOVPDI2DImr },
769 { X86::VMOVPDI2DIZrr, X86::VMOVPDI2DIrr },
770 { X86::VMOVPQI2QIZmr, X86::VMOVPQI2QImr },
771 { X86::VMOVPQI2QIZrr, X86::VMOVPQI2QIrr },
772 { X86::VMOVPQIto64Zmr, X86::VMOVPQIto64mr },
773 { X86::VMOVPQIto64Zrr, X86::VMOVPQIto64rr },
774 { X86::VMOVQI2PQIZrm, X86::VMOVQI2PQIrm },
775 { X86::VMOVSDZmr, X86::VMOVSDmr },
776 { X86::VMOVSDZrm, X86::VMOVSDrm },
777 { X86::VMOVSDZrm_alt, X86::VMOVSDrm_alt },
778 { X86::VMOVSDZrr, X86::VMOVSDrr },
779 { X86::VMOVSDto64Zrr, X86::VMOVSDto64rr },
780 { X86::VMOVSHDUPZ128rm, X86::VMOVSHDUPrm },
781 { X86::VMOVSHDUPZ128rr, X86::VMOVSHDUPrr },
782 { X86::VMOVSHDUPZ256rm, X86::VMOVSHDUPYrm },
783 { X86::VMOVSHDUPZ256rr, X86::VMOVSHDUPYrr },
784 { X86::VMOVSLDUPZ128rm, X86::VMOVSLDUPrm },
785 { X86::VMOVSLDUPZ128rr, X86::VMOVSLDUPrr },
786 { X86::VMOVSLDUPZ256rm, X86::VMOVSLDUPYrm },
787 { X86::VMOVSLDUPZ256rr, X86::VMOVSLDUPYrr },
788 { X86::VMOVSS2DIZrr, X86::VMOVSS2DIrr },
789 { X86::VMOVSSZmr, X86::VMOVSSmr },
790 { X86::VMOVSSZrm, X86::VMOVSSrm },
791 { X86::VMOVSSZrm_alt, X86::VMOVSSrm_alt },
792 { X86::VMOVSSZrr, X86::VMOVSSrr },
793 { X86::VMOVUPDZ128mr, X86::VMOVUPDmr },
794 { X86::VMOVUPDZ128rm, X86::VMOVUPDrm },
795 { X86::VMOVUPDZ128rr, X86::VMOVUPDrr },
796 { X86::VMOVUPDZ256mr, X86::VMOVUPDYmr },
797 { X86::VMOVUPDZ256rm, X86::VMOVUPDYrm },
798 { X86::VMOVUPDZ256rr, X86::VMOVUPDYrr },
799 { X86::VMOVUPSZ128mr, X86::VMOVUPSmr },
800 { X86::VMOVUPSZ128rm, X86::VMOVUPSrm },
801 { X86::VMOVUPSZ128rr, X86::VMOVUPSrr },
802 { X86::VMOVUPSZ256mr, X86::VMOVUPSYmr },
803 { X86::VMOVUPSZ256rm, X86::VMOVUPSYrm },
804 { X86::VMOVUPSZ256rr, X86::VMOVUPSYrr },
805 { X86::VMOVZPQILo2PQIZrr, X86::VMOVZPQILo2PQIrr },
806 { X86::VMULPDZ128rm, X86::VMULPDrm },
807 { X86::VMULPDZ128rr, X86::VMULPDrr },
808 { X86::VMULPDZ256rm, X86::VMULPDYrm },
809 { X86::VMULPDZ256rr, X86::VMULPDYrr },
810 { X86::VMULPSZ128rm, X86::VMULPSrm },
811 { X86::VMULPSZ128rr, X86::VMULPSrr },
812 { X86::VMULPSZ256rm, X86::VMULPSYrm },
813 { X86::VMULPSZ256rr, X86::VMULPSYrr },
814 { X86::VMULSDZrm, X86::VMULSDrm },
815 { X86::VMULSDZrm_Int, X86::VMULSDrm_Int },
816 { X86::VMULSDZrr, X86::VMULSDrr },
817 { X86::VMULSDZrr_Int, X86::VMULSDrr_Int },
818 { X86::VMULSSZrm, X86::VMULSSrm },
819 { X86::VMULSSZrm_Int, X86::VMULSSrm_Int },
820 { X86::VMULSSZrr, X86::VMULSSrr },
821 { X86::VMULSSZrr_Int, X86::VMULSSrr_Int },
822 { X86::VORPDZ128rm, X86::VORPDrm },
823 { X86::VORPDZ128rr, X86::VORPDrr },
824 { X86::VORPDZ256rm, X86::VORPDYrm },
825 { X86::VORPDZ256rr, X86::VORPDYrr },
826 { X86::VORPSZ128rm, X86::VORPSrm },
827 { X86::VORPSZ128rr, X86::VORPSrr },
828 { X86::VORPSZ256rm, X86::VORPSYrm },
829 { X86::VORPSZ256rr, X86::VORPSYrr },
830 { X86::VPABSBZ128rm, X86::VPABSBrm },
831 { X86::VPABSBZ128rr, X86::VPABSBrr },
832 { X86::VPABSBZ256rm, X86::VPABSBYrm },
833 { X86::VPABSBZ256rr, X86::VPABSBYrr },
834 { X86::VPABSDZ128rm, X86::VPABSDrm },
835 { X86::VPABSDZ128rr, X86::VPABSDrr },
836 { X86::VPABSDZ256rm, X86::VPABSDYrm },
837 { X86::VPABSDZ256rr, X86::VPABSDYrr },
838 { X86::VPABSWZ128rm, X86::VPABSWrm },
839 { X86::VPABSWZ128rr, X86::VPABSWrr },
840 { X86::VPABSWZ256rm, X86::VPABSWYrm },
841 { X86::VPABSWZ256rr, X86::VPABSWYrr },
842 { X86::VPACKSSDWZ128rm, X86::VPACKSSDWrm },
843 { X86::VPACKSSDWZ128rr, X86::VPACKSSDWrr },
844 { X86::VPACKSSDWZ256rm, X86::VPACKSSDWYrm },
845 { X86::VPACKSSDWZ256rr, X86::VPACKSSDWYrr },
846 { X86::VPACKSSWBZ128rm, X86::VPACKSSWBrm },
847 { X86::VPACKSSWBZ128rr, X86::VPACKSSWBrr },
848 { X86::VPACKSSWBZ256rm, X86::VPACKSSWBYrm },
849 { X86::VPACKSSWBZ256rr, X86::VPACKSSWBYrr },
850 { X86::VPACKUSDWZ128rm, X86::VPACKUSDWrm },
851 { X86::VPACKUSDWZ128rr, X86::VPACKUSDWrr },
852 { X86::VPACKUSDWZ256rm, X86::VPACKUSDWYrm },
853 { X86::VPACKUSDWZ256rr, X86::VPACKUSDWYrr },
854 { X86::VPACKUSWBZ128rm, X86::VPACKUSWBrm },
855 { X86::VPACKUSWBZ128rr, X86::VPACKUSWBrr },
856 { X86::VPACKUSWBZ256rm, X86::VPACKUSWBYrm },
857 { X86::VPACKUSWBZ256rr, X86::VPACKUSWBYrr },
858 { X86::VPADDBZ128rm, X86::VPADDBrm },
859 { X86::VPADDBZ128rr, X86::VPADDBrr },
860 { X86::VPADDBZ256rm, X86::VPADDBYrm },
861 { X86::VPADDBZ256rr, X86::VPADDBYrr },
862 { X86::VPADDDZ128rm, X86::VPADDDrm },
863 { X86::VPADDDZ128rr, X86::VPADDDrr },
864 { X86::VPADDDZ256rm, X86::VPADDDYrm },
865 { X86::VPADDDZ256rr, X86::VPADDDYrr },
866 { X86::VPADDQZ128rm, X86::VPADDQrm },
867 { X86::VPADDQZ128rr, X86::VPADDQrr },
868 { X86::VPADDQZ256rm, X86::VPADDQYrm },
869 { X86::VPADDQZ256rr, X86::VPADDQYrr },
870 { X86::VPADDSBZ128rm, X86::VPADDSBrm },
871 { X86::VPADDSBZ128rr, X86::VPADDSBrr },
872 { X86::VPADDSBZ256rm, X86::VPADDSBYrm },
873 { X86::VPADDSBZ256rr, X86::VPADDSBYrr },
874 { X86::VPADDSWZ128rm, X86::VPADDSWrm },
875 { X86::VPADDSWZ128rr, X86::VPADDSWrr },
876 { X86::VPADDSWZ256rm, X86::VPADDSWYrm },
877 { X86::VPADDSWZ256rr, X86::VPADDSWYrr },
878 { X86::VPADDUSBZ128rm, X86::VPADDUSBrm },
879 { X86::VPADDUSBZ128rr, X86::VPADDUSBrr },
880 { X86::VPADDUSBZ256rm, X86::VPADDUSBYrm },
881 { X86::VPADDUSBZ256rr, X86::VPADDUSBYrr },
882 { X86::VPADDUSWZ128rm, X86::VPADDUSWrm },
883 { X86::VPADDUSWZ128rr, X86::VPADDUSWrr },
884 { X86::VPADDUSWZ256rm, X86::VPADDUSWYrm },
885 { X86::VPADDUSWZ256rr, X86::VPADDUSWYrr },
886 { X86::VPADDWZ128rm, X86::VPADDWrm },
887 { X86::VPADDWZ128rr, X86::VPADDWrr },
888 { X86::VPADDWZ256rm, X86::VPADDWYrm },
889 { X86::VPADDWZ256rr, X86::VPADDWYrr },
890 { X86::VPALIGNRZ128rmi, X86::VPALIGNRrmi },
891 { X86::VPALIGNRZ128rri, X86::VPALIGNRrri },
892 { X86::VPALIGNRZ256rmi, X86::VPALIGNRYrmi },
893 { X86::VPALIGNRZ256rri, X86::VPALIGNRYrri },
894 { X86::VPANDDZ128rm, X86::VPANDrm },
895 { X86::VPANDDZ128rr, X86::VPANDrr },
896 { X86::VPANDDZ256rm, X86::VPANDYrm },
897 { X86::VPANDDZ256rr, X86::VPANDYrr },
898 { X86::VPANDNDZ128rm, X86::VPANDNrm },
899 { X86::VPANDNDZ128rr, X86::VPANDNrr },
900 { X86::VPANDNDZ256rm, X86::VPANDNYrm },
901 { X86::VPANDNDZ256rr, X86::VPANDNYrr },
902 { X86::VPANDNQZ128rm, X86::VPANDNrm },
903 { X86::VPANDNQZ128rr, X86::VPANDNrr },
904 { X86::VPANDNQZ256rm, X86::VPANDNYrm },
905 { X86::VPANDNQZ256rr, X86::VPANDNYrr },
906 { X86::VPANDQZ128rm, X86::VPANDrm },
907 { X86::VPANDQZ128rr, X86::VPANDrr },
908 { X86::VPANDQZ256rm, X86::VPANDYrm },
909 { X86::VPANDQZ256rr, X86::VPANDYrr },
910 { X86::VPAVGBZ128rm, X86::VPAVGBrm },
911 { X86::VPAVGBZ128rr, X86::VPAVGBrr },
912 { X86::VPAVGBZ256rm, X86::VPAVGBYrm },
913 { X86::VPAVGBZ256rr, X86::VPAVGBYrr },
914 { X86::VPAVGWZ128rm, X86::VPAVGWrm },
915 { X86::VPAVGWZ128rr, X86::VPAVGWrr },
916 { X86::VPAVGWZ256rm, X86::VPAVGWYrm },
917 { X86::VPAVGWZ256rr, X86::VPAVGWYrr },
918 { X86::VPBROADCASTBZ128rm, X86::VPBROADCASTBrm },
919 { X86::VPBROADCASTBZ128rr, X86::VPBROADCASTBrr },
920 { X86::VPBROADCASTBZ256rm, X86::VPBROADCASTBYrm },
921 { X86::VPBROADCASTBZ256rr, X86::VPBROADCASTBYrr },
922 { X86::VPBROADCASTDZ128rm, X86::VPBROADCASTDrm },
923 { X86::VPBROADCASTDZ128rr, X86::VPBROADCASTDrr },
924 { X86::VPBROADCASTDZ256rm, X86::VPBROADCASTDYrm },
925 { X86::VPBROADCASTDZ256rr, X86::VPBROADCASTDYrr },
926 { X86::VPBROADCASTQZ128rm, X86::VPBROADCASTQrm },
927 { X86::VPBROADCASTQZ128rr, X86::VPBROADCASTQrr },
928 { X86::VPBROADCASTQZ256rm, X86::VPBROADCASTQYrm },
929 { X86::VPBROADCASTQZ256rr, X86::VPBROADCASTQYrr },
930 { X86::VPBROADCASTWZ128rm, X86::VPBROADCASTWrm },
931 { X86::VPBROADCASTWZ128rr, X86::VPBROADCASTWrr },
932 { X86::VPBROADCASTWZ256rm, X86::VPBROADCASTWYrm },
933 { X86::VPBROADCASTWZ256rr, X86::VPBROADCASTWYrr },
934 { X86::VPCLMULQDQZ128rmi, X86::VPCLMULQDQrmi },
935 { X86::VPCLMULQDQZ128rri, X86::VPCLMULQDQrri },
936 { X86::VPCLMULQDQZ256rmi, X86::VPCLMULQDQYrmi },
937 { X86::VPCLMULQDQZ256rri, X86::VPCLMULQDQYrri },
938 { X86::VPDPBUSDSZ128m, X86::VPDPBUSDSrm },
939 { X86::VPDPBUSDSZ128r, X86::VPDPBUSDSrr },
940 { X86::VPDPBUSDSZ256m, X86::VPDPBUSDSYrm },
941 { X86::VPDPBUSDSZ256r, X86::VPDPBUSDSYrr },
942 { X86::VPDPBUSDZ128m, X86::VPDPBUSDrm },
943 { X86::VPDPBUSDZ128r, X86::VPDPBUSDrr },
944 { X86::VPDPBUSDZ256m, X86::VPDPBUSDYrm },
945 { X86::VPDPBUSDZ256r, X86::VPDPBUSDYrr },
946 { X86::VPDPWSSDSZ128m, X86::VPDPWSSDSrm },
947 { X86::VPDPWSSDSZ128r, X86::VPDPWSSDSrr },
948 { X86::VPDPWSSDSZ256m, X86::VPDPWSSDSYrm },
949 { X86::VPDPWSSDSZ256r, X86::VPDPWSSDSYrr },
950 { X86::VPDPWSSDZ128m, X86::VPDPWSSDrm },
951 { X86::VPDPWSSDZ128r, X86::VPDPWSSDrr },
952 { X86::VPDPWSSDZ256m, X86::VPDPWSSDYrm },
953 { X86::VPDPWSSDZ256r, X86::VPDPWSSDYrr },
954 { X86::VPERMDZ256rm, X86::VPERMDYrm },
955 { X86::VPERMDZ256rr, X86::VPERMDYrr },
956 { X86::VPERMILPDZ128mi, X86::VPERMILPDmi },
957 { X86::VPERMILPDZ128ri, X86::VPERMILPDri },
958 { X86::VPERMILPDZ128rm, X86::VPERMILPDrm },
959 { X86::VPERMILPDZ128rr, X86::VPERMILPDrr },
960 { X86::VPERMILPDZ256mi, X86::VPERMILPDYmi },
961 { X86::VPERMILPDZ256ri, X86::VPERMILPDYri },
962 { X86::VPERMILPDZ256rm, X86::VPERMILPDYrm },
963 { X86::VPERMILPDZ256rr, X86::VPERMILPDYrr },
964 { X86::VPERMILPSZ128mi, X86::VPERMILPSmi },
965 { X86::VPERMILPSZ128ri, X86::VPERMILPSri },
966 { X86::VPERMILPSZ128rm, X86::VPERMILPSrm },
967 { X86::VPERMILPSZ128rr, X86::VPERMILPSrr },
968 { X86::VPERMILPSZ256mi, X86::VPERMILPSYmi },
969 { X86::VPERMILPSZ256ri, X86::VPERMILPSYri },
970 { X86::VPERMILPSZ256rm, X86::VPERMILPSYrm },
971 { X86::VPERMILPSZ256rr, X86::VPERMILPSYrr },
972 { X86::VPERMPDZ256mi, X86::VPERMPDYmi },
973 { X86::VPERMPDZ256ri, X86::VPERMPDYri },
974 { X86::VPERMPSZ256rm, X86::VPERMPSYrm },
975 { X86::VPERMPSZ256rr, X86::VPERMPSYrr },
976 { X86::VPERMQZ256mi, X86::VPERMQYmi },
977 { X86::VPERMQZ256ri, X86::VPERMQYri },
978 { X86::VPEXTRBZmr, X86::VPEXTRBmr },
979 { X86::VPEXTRBZrr, X86::VPEXTRBrr },
980 { X86::VPEXTRDZmr, X86::VPEXTRDmr },
981 { X86::VPEXTRDZrr, X86::VPEXTRDrr },
982 { X86::VPEXTRQZmr, X86::VPEXTRQmr },
983 { X86::VPEXTRQZrr, X86::VPEXTRQrr },
984 { X86::VPEXTRWZmr, X86::VPEXTRWmr },
985 { X86::VPEXTRWZrr, X86::VPEXTRWrr },
986 { X86::VPINSRBZrm, X86::VPINSRBrm },
987 { X86::VPINSRBZrr, X86::VPINSRBrr },
988 { X86::VPINSRDZrm, X86::VPINSRDrm },
989 { X86::VPINSRDZrr, X86::VPINSRDrr },
990 { X86::VPINSRQZrm, X86::VPINSRQrm },
991 { X86::VPINSRQZrr, X86::VPINSRQrr },
992 { X86::VPINSRWZrm, X86::VPINSRWrm },
993 { X86::VPINSRWZrr, X86::VPINSRWrr },
994 { X86::VPMADD52HUQZ128m, X86::VPMADD52HUQrm },
995 { X86::VPMADD52HUQZ128r, X86::VPMADD52HUQrr },
996 { X86::VPMADD52HUQZ256m, X86::VPMADD52HUQYrm },
997 { X86::VPMADD52HUQZ256r, X86::VPMADD52HUQYrr },
998 { X86::VPMADD52LUQZ128m, X86::VPMADD52LUQrm },
999 { X86::VPMADD52LUQZ128r, X86::VPMADD52LUQrr },
1000 { X86::VPMADD52LUQZ256m, X86::VPMADD52LUQYrm },
1001 { X86::VPMADD52LUQZ256r, X86::VPMADD52LUQYrr },
1002 { X86::VPMADDUBSWZ128rm, X86::VPMADDUBSWrm },
1003 { X86::VPMADDUBSWZ128rr, X86::VPMADDUBSWrr },
1004 { X86::VPMADDUBSWZ256rm, X86::VPMADDUBSWYrm },
1005 { X86::VPMADDUBSWZ256rr, X86::VPMADDUBSWYrr },
1006 { X86::VPMADDWDZ128rm, X86::VPMADDWDrm },
1007 { X86::VPMADDWDZ128rr, X86::VPMADDWDrr },
1008 { X86::VPMADDWDZ256rm, X86::VPMADDWDYrm },
1009 { X86::VPMADDWDZ256rr, X86::VPMADDWDYrr },
1010 { X86::VPMAXSBZ128rm, X86::VPMAXSBrm },
1011 { X86::VPMAXSBZ128rr, X86::VPMAXSBrr },
1012 { X86::VPMAXSBZ256rm, X86::VPMAXSBYrm },
1013 { X86::VPMAXSBZ256rr, X86::VPMAXSBYrr },
1014 { X86::VPMAXSDZ128rm, X86::VPMAXSDrm },
1015 { X86::VPMAXSDZ128rr, X86::VPMAXSDrr },
1016 { X86::VPMAXSDZ256rm, X86::VPMAXSDYrm },
1017 { X86::VPMAXSDZ256rr, X86::VPMAXSDYrr },
1018 { X86::VPMAXSWZ128rm, X86::VPMAXSWrm },
1019 { X86::VPMAXSWZ128rr, X86::VPMAXSWrr },
1020 { X86::VPMAXSWZ256rm, X86::VPMAXSWYrm },
1021 { X86::VPMAXSWZ256rr, X86::VPMAXSWYrr },
1022 { X86::VPMAXUBZ128rm, X86::VPMAXUBrm },
1023 { X86::VPMAXUBZ128rr, X86::VPMAXUBrr },
1024 { X86::VPMAXUBZ256rm, X86::VPMAXUBYrm },
1025 { X86::VPMAXUBZ256rr, X86::VPMAXUBYrr },
1026 { X86::VPMAXUDZ128rm, X86::VPMAXUDrm },
1027 { X86::VPMAXUDZ128rr, X86::VPMAXUDrr },
1028 { X86::VPMAXUDZ256rm, X86::VPMAXUDYrm },
1029 { X86::VPMAXUDZ256rr, X86::VPMAXUDYrr },
1030 { X86::VPMAXUWZ128rm, X86::VPMAXUWrm },
1031 { X86::VPMAXUWZ128rr, X86::VPMAXUWrr },
1032 { X86::VPMAXUWZ256rm, X86::VPMAXUWYrm },
1033 { X86::VPMAXUWZ256rr, X86::VPMAXUWYrr },
1034 { X86::VPMINSBZ128rm, X86::VPMINSBrm },
1035 { X86::VPMINSBZ128rr, X86::VPMINSBrr },
1036 { X86::VPMINSBZ256rm, X86::VPMINSBYrm },
1037 { X86::VPMINSBZ256rr, X86::VPMINSBYrr },
1038 { X86::VPMINSDZ128rm, X86::VPMINSDrm },
1039 { X86::VPMINSDZ128rr, X86::VPMINSDrr },
1040 { X86::VPMINSDZ256rm, X86::VPMINSDYrm },
1041 { X86::VPMINSDZ256rr, X86::VPMINSDYrr },
1042 { X86::VPMINSWZ128rm, X86::VPMINSWrm },
1043 { X86::VPMINSWZ128rr, X86::VPMINSWrr },
1044 { X86::VPMINSWZ256rm, X86::VPMINSWYrm },
1045 { X86::VPMINSWZ256rr, X86::VPMINSWYrr },
1046 { X86::VPMINUBZ128rm, X86::VPMINUBrm },
1047 { X86::VPMINUBZ128rr, X86::VPMINUBrr },
1048 { X86::VPMINUBZ256rm, X86::VPMINUBYrm },
1049 { X86::VPMINUBZ256rr, X86::VPMINUBYrr },
1050 { X86::VPMINUDZ128rm, X86::VPMINUDrm },
1051 { X86::VPMINUDZ128rr, X86::VPMINUDrr },
1052 { X86::VPMINUDZ256rm, X86::VPMINUDYrm },
1053 { X86::VPMINUDZ256rr, X86::VPMINUDYrr },
1054 { X86::VPMINUWZ128rm, X86::VPMINUWrm },
1055 { X86::VPMINUWZ128rr, X86::VPMINUWrr },
1056 { X86::VPMINUWZ256rm, X86::VPMINUWYrm },
1057 { X86::VPMINUWZ256rr, X86::VPMINUWYrr },
1058 { X86::VPMOVSXBDZ128rm, X86::VPMOVSXBDrm },
1059 { X86::VPMOVSXBDZ128rr, X86::VPMOVSXBDrr },
1060 { X86::VPMOVSXBDZ256rm, X86::VPMOVSXBDYrm },
1061 { X86::VPMOVSXBDZ256rr, X86::VPMOVSXBDYrr },
1062 { X86::VPMOVSXBQZ128rm, X86::VPMOVSXBQrm },
1063 { X86::VPMOVSXBQZ128rr, X86::VPMOVSXBQrr },
1064 { X86::VPMOVSXBQZ256rm, X86::VPMOVSXBQYrm },
1065 { X86::VPMOVSXBQZ256rr, X86::VPMOVSXBQYrr },
1066 { X86::VPMOVSXBWZ128rm, X86::VPMOVSXBWrm },
1067 { X86::VPMOVSXBWZ128rr, X86::VPMOVSXBWrr },
1068 { X86::VPMOVSXBWZ256rm, X86::VPMOVSXBWYrm },
1069 { X86::VPMOVSXBWZ256rr, X86::VPMOVSXBWYrr },
1070 { X86::VPMOVSXDQZ128rm, X86::VPMOVSXDQrm },
1071 { X86::VPMOVSXDQZ128rr, X86::VPMOVSXDQrr },
1072 { X86::VPMOVSXDQZ256rm, X86::VPMOVSXDQYrm },
1073 { X86::VPMOVSXDQZ256rr, X86::VPMOVSXDQYrr },
1074 { X86::VPMOVSXWDZ128rm, X86::VPMOVSXWDrm },
1075 { X86::VPMOVSXWDZ128rr, X86::VPMOVSXWDrr },
1076 { X86::VPMOVSXWDZ256rm, X86::VPMOVSXWDYrm },
1077 { X86::VPMOVSXWDZ256rr, X86::VPMOVSXWDYrr },
1078 { X86::VPMOVSXWQZ128rm, X86::VPMOVSXWQrm },
1079 { X86::VPMOVSXWQZ128rr, X86::VPMOVSXWQrr },
1080 { X86::VPMOVSXWQZ256rm, X86::VPMOVSXWQYrm },
1081 { X86::VPMOVSXWQZ256rr, X86::VPMOVSXWQYrr },
1082 { X86::VPMOVZXBDZ128rm, X86::VPMOVZXBDrm },
1083 { X86::VPMOVZXBDZ128rr, X86::VPMOVZXBDrr },
1084 { X86::VPMOVZXBDZ256rm, X86::VPMOVZXBDYrm },
1085 { X86::VPMOVZXBDZ256rr, X86::VPMOVZXBDYrr },
1086 { X86::VPMOVZXBQZ128rm, X86::VPMOVZXBQrm },
1087 { X86::VPMOVZXBQZ128rr, X86::VPMOVZXBQrr },
1088 { X86::VPMOVZXBQZ256rm, X86::VPMOVZXBQYrm },
1089 { X86::VPMOVZXBQZ256rr, X86::VPMOVZXBQYrr },
1090 { X86::VPMOVZXBWZ128rm, X86::VPMOVZXBWrm },
1091 { X86::VPMOVZXBWZ128rr, X86::VPMOVZXBWrr },
1092 { X86::VPMOVZXBWZ256rm, X86::VPMOVZXBWYrm },
1093 { X86::VPMOVZXBWZ256rr, X86::VPMOVZXBWYrr },
1094 { X86::VPMOVZXDQZ128rm, X86::VPMOVZXDQrm },
1095 { X86::VPMOVZXDQZ128rr, X86::VPMOVZXDQrr },
1096 { X86::VPMOVZXDQZ256rm, X86::VPMOVZXDQYrm },
1097 { X86::VPMOVZXDQZ256rr, X86::VPMOVZXDQYrr },
1098 { X86::VPMOVZXWDZ128rm, X86::VPMOVZXWDrm },
1099 { X86::VPMOVZXWDZ128rr, X86::VPMOVZXWDrr },
1100 { X86::VPMOVZXWDZ256rm, X86::VPMOVZXWDYrm },
1101 { X86::VPMOVZXWDZ256rr, X86::VPMOVZXWDYrr },
1102 { X86::VPMOVZXWQZ128rm, X86::VPMOVZXWQrm },
1103 { X86::VPMOVZXWQZ128rr, X86::VPMOVZXWQrr },
1104 { X86::VPMOVZXWQZ256rm, X86::VPMOVZXWQYrm },
1105 { X86::VPMOVZXWQZ256rr, X86::VPMOVZXWQYrr },
1106 { X86::VPMULDQZ128rm, X86::VPMULDQrm },
1107 { X86::VPMULDQZ128rr, X86::VPMULDQrr },
1108 { X86::VPMULDQZ256rm, X86::VPMULDQYrm },
1109 { X86::VPMULDQZ256rr, X86::VPMULDQYrr },
1110 { X86::VPMULHRSWZ128rm, X86::VPMULHRSWrm },
1111 { X86::VPMULHRSWZ128rr, X86::VPMULHRSWrr },
1112 { X86::VPMULHRSWZ256rm, X86::VPMULHRSWYrm },
1113 { X86::VPMULHRSWZ256rr, X86::VPMULHRSWYrr },
1114 { X86::VPMULHUWZ128rm, X86::VPMULHUWrm },
1115 { X86::VPMULHUWZ128rr, X86::VPMULHUWrr },
1116 { X86::VPMULHUWZ256rm, X86::VPMULHUWYrm },
1117 { X86::VPMULHUWZ256rr, X86::VPMULHUWYrr },
1118 { X86::VPMULHWZ128rm, X86::VPMULHWrm },
1119 { X86::VPMULHWZ128rr, X86::VPMULHWrr },
1120 { X86::VPMULHWZ256rm, X86::VPMULHWYrm },
1121 { X86::VPMULHWZ256rr, X86::VPMULHWYrr },
1122 { X86::VPMULLDZ128rm, X86::VPMULLDrm },
1123 { X86::VPMULLDZ128rr, X86::VPMULLDrr },
1124 { X86::VPMULLDZ256rm, X86::VPMULLDYrm },
1125 { X86::VPMULLDZ256rr, X86::VPMULLDYrr },
1126 { X86::VPMULLWZ128rm, X86::VPMULLWrm },
1127 { X86::VPMULLWZ128rr, X86::VPMULLWrr },
1128 { X86::VPMULLWZ256rm, X86::VPMULLWYrm },
1129 { X86::VPMULLWZ256rr, X86::VPMULLWYrr },
1130 { X86::VPMULUDQZ128rm, X86::VPMULUDQrm },
1131 { X86::VPMULUDQZ128rr, X86::VPMULUDQrr },
1132 { X86::VPMULUDQZ256rm, X86::VPMULUDQYrm },
1133 { X86::VPMULUDQZ256rr, X86::VPMULUDQYrr },
1134 { X86::VPORDZ128rm, X86::VPORrm },
1135 { X86::VPORDZ128rr, X86::VPORrr },
1136 { X86::VPORDZ256rm, X86::VPORYrm },
1137 { X86::VPORDZ256rr, X86::VPORYrr },
1138 { X86::VPORQZ128rm, X86::VPORrm },
1139 { X86::VPORQZ128rr, X86::VPORrr },
1140 { X86::VPORQZ256rm, X86::VPORYrm },
1141 { X86::VPORQZ256rr, X86::VPORYrr },
1142 { X86::VPSADBWZ128rm, X86::VPSADBWrm },
1143 { X86::VPSADBWZ128rr, X86::VPSADBWrr },
1144 { X86::VPSADBWZ256rm, X86::VPSADBWYrm },
1145 { X86::VPSADBWZ256rr, X86::VPSADBWYrr },
1146 { X86::VPSHUFBZ128rm, X86::VPSHUFBrm },
1147 { X86::VPSHUFBZ128rr, X86::VPSHUFBrr },
1148 { X86::VPSHUFBZ256rm, X86::VPSHUFBYrm },
1149 { X86::VPSHUFBZ256rr, X86::VPSHUFBYrr },
1150 { X86::VPSHUFDZ128mi, X86::VPSHUFDmi },
1151 { X86::VPSHUFDZ128ri, X86::VPSHUFDri },
1152 { X86::VPSHUFDZ256mi, X86::VPSHUFDYmi },
1153 { X86::VPSHUFDZ256ri, X86::VPSHUFDYri },
1154 { X86::VPSHUFHWZ128mi, X86::VPSHUFHWmi },
1155 { X86::VPSHUFHWZ128ri, X86::VPSHUFHWri },
1156 { X86::VPSHUFHWZ256mi, X86::VPSHUFHWYmi },
1157 { X86::VPSHUFHWZ256ri, X86::VPSHUFHWYri },
1158 { X86::VPSHUFLWZ128mi, X86::VPSHUFLWmi },
1159 { X86::VPSHUFLWZ128ri, X86::VPSHUFLWri },
1160 { X86::VPSHUFLWZ256mi, X86::VPSHUFLWYmi },
1161 { X86::VPSHUFLWZ256ri, X86::VPSHUFLWYri },
1162 { X86::VPSLLDQZ128ri, X86::VPSLLDQri },
1163 { X86::VPSLLDQZ256ri, X86::VPSLLDQYri },
1164 { X86::VPSLLDZ128ri, X86::VPSLLDri },
1165 { X86::VPSLLDZ128rm, X86::VPSLLDrm },
1166 { X86::VPSLLDZ128rr, X86::VPSLLDrr },
1167 { X86::VPSLLDZ256ri, X86::VPSLLDYri },
1168 { X86::VPSLLDZ256rm, X86::VPSLLDYrm },
1169 { X86::VPSLLDZ256rr, X86::VPSLLDYrr },
1170 { X86::VPSLLQZ128ri, X86::VPSLLQri },
1171 { X86::VPSLLQZ128rm, X86::VPSLLQrm },
1172 { X86::VPSLLQZ128rr, X86::VPSLLQrr },
1173 { X86::VPSLLQZ256ri, X86::VPSLLQYri },
1174 { X86::VPSLLQZ256rm, X86::VPSLLQYrm },
1175 { X86::VPSLLQZ256rr, X86::VPSLLQYrr },
1176 { X86::VPSLLVDZ128rm, X86::VPSLLVDrm },
1177 { X86::VPSLLVDZ128rr, X86::VPSLLVDrr },
1178 { X86::VPSLLVDZ256rm, X86::VPSLLVDYrm },
1179 { X86::VPSLLVDZ256rr, X86::VPSLLVDYrr },
1180 { X86::VPSLLVQZ128rm, X86::VPSLLVQrm },
1181 { X86::VPSLLVQZ128rr, X86::VPSLLVQrr },
1182 { X86::VPSLLVQZ256rm, X86::VPSLLVQYrm },
1183 { X86::VPSLLVQZ256rr, X86::VPSLLVQYrr },
1184 { X86::VPSLLWZ128ri, X86::VPSLLWri },
1185 { X86::VPSLLWZ128rm, X86::VPSLLWrm },
1186 { X86::VPSLLWZ128rr, X86::VPSLLWrr },
1187 { X86::VPSLLWZ256ri, X86::VPSLLWYri },
1188 { X86::VPSLLWZ256rm, X86::VPSLLWYrm },
1189 { X86::VPSLLWZ256rr, X86::VPSLLWYrr },
1190 { X86::VPSRADZ128ri, X86::VPSRADri },
1191 { X86::VPSRADZ128rm, X86::VPSRADrm },
1192 { X86::VPSRADZ128rr, X86::VPSRADrr },
1193 { X86::VPSRADZ256ri, X86::VPSRADYri },
1194 { X86::VPSRADZ256rm, X86::VPSRADYrm },
1195 { X86::VPSRADZ256rr, X86::VPSRADYrr },
1196 { X86::VPSRAVDZ128rm, X86::VPSRAVDrm },
1197 { X86::VPSRAVDZ128rr, X86::VPSRAVDrr },
1198 { X86::VPSRAVDZ256rm, X86::VPSRAVDYrm },
1199 { X86::VPSRAVDZ256rr, X86::VPSRAVDYrr },
1200 { X86::VPSRAWZ128ri, X86::VPSRAWri },
1201 { X86::VPSRAWZ128rm, X86::VPSRAWrm },
1202 { X86::VPSRAWZ128rr, X86::VPSRAWrr },
1203 { X86::VPSRAWZ256ri, X86::VPSRAWYri },
1204 { X86::VPSRAWZ256rm, X86::VPSRAWYrm },
1205 { X86::VPSRAWZ256rr, X86::VPSRAWYrr },
1206 { X86::VPSRLDQZ128ri, X86::VPSRLDQri },
1207 { X86::VPSRLDQZ256ri, X86::VPSRLDQYri },
1208 { X86::VPSRLDZ128ri, X86::VPSRLDri },
1209 { X86::VPSRLDZ128rm, X86::VPSRLDrm },
1210 { X86::VPSRLDZ128rr, X86::VPSRLDrr },
1211 { X86::VPSRLDZ256ri, X86::VPSRLDYri },
1212 { X86::VPSRLDZ256rm, X86::VPSRLDYrm },
1213 { X86::VPSRLDZ256rr, X86::VPSRLDYrr },
1214 { X86::VPSRLQZ128ri, X86::VPSRLQri },
1215 { X86::VPSRLQZ128rm, X86::VPSRLQrm },
1216 { X86::VPSRLQZ128rr, X86::VPSRLQrr },
1217 { X86::VPSRLQZ256ri, X86::VPSRLQYri },
1218 { X86::VPSRLQZ256rm, X86::VPSRLQYrm },
1219 { X86::VPSRLQZ256rr, X86::VPSRLQYrr },
1220 { X86::VPSRLVDZ128rm, X86::VPSRLVDrm },
1221 { X86::VPSRLVDZ128rr, X86::VPSRLVDrr },
1222 { X86::VPSRLVDZ256rm, X86::VPSRLVDYrm },
1223 { X86::VPSRLVDZ256rr, X86::VPSRLVDYrr },
1224 { X86::VPSRLVQZ128rm, X86::VPSRLVQrm },
1225 { X86::VPSRLVQZ128rr, X86::VPSRLVQrr },
1226 { X86::VPSRLVQZ256rm, X86::VPSRLVQYrm },
1227 { X86::VPSRLVQZ256rr, X86::VPSRLVQYrr },
1228 { X86::VPSRLWZ128ri, X86::VPSRLWri },
1229 { X86::VPSRLWZ128rm, X86::VPSRLWrm },
1230 { X86::VPSRLWZ128rr, X86::VPSRLWrr },
1231 { X86::VPSRLWZ256ri, X86::VPSRLWYri },
1232 { X86::VPSRLWZ256rm, X86::VPSRLWYrm },
1233 { X86::VPSRLWZ256rr, X86::VPSRLWYrr },
1234 { X86::VPSUBBZ128rm, X86::VPSUBBrm },
1235 { X86::VPSUBBZ128rr, X86::VPSUBBrr },
1236 { X86::VPSUBBZ256rm, X86::VPSUBBYrm },
1237 { X86::VPSUBBZ256rr, X86::VPSUBBYrr },
1238 { X86::VPSUBDZ128rm, X86::VPSUBDrm },
1239 { X86::VPSUBDZ128rr, X86::VPSUBDrr },
1240 { X86::VPSUBDZ256rm, X86::VPSUBDYrm },
1241 { X86::VPSUBDZ256rr, X86::VPSUBDYrr },
1242 { X86::VPSUBQZ128rm, X86::VPSUBQrm },
1243 { X86::VPSUBQZ128rr, X86::VPSUBQrr },
1244 { X86::VPSUBQZ256rm, X86::VPSUBQYrm },
1245 { X86::VPSUBQZ256rr, X86::VPSUBQYrr },
1246 { X86::VPSUBSBZ128rm, X86::VPSUBSBrm },
1247 { X86::VPSUBSBZ128rr, X86::VPSUBSBrr },
1248 { X86::VPSUBSBZ256rm, X86::VPSUBSBYrm },
1249 { X86::VPSUBSBZ256rr, X86::VPSUBSBYrr },
1250 { X86::VPSUBSWZ128rm, X86::VPSUBSWrm },
1251 { X86::VPSUBSWZ128rr, X86::VPSUBSWrr },
1252 { X86::VPSUBSWZ256rm, X86::VPSUBSWYrm },
1253 { X86::VPSUBSWZ256rr, X86::VPSUBSWYrr },
1254 { X86::VPSUBUSBZ128rm, X86::VPSUBUSBrm },
1255 { X86::VPSUBUSBZ128rr, X86::VPSUBUSBrr },
1256 { X86::VPSUBUSBZ256rm, X86::VPSUBUSBYrm },
1257 { X86::VPSUBUSBZ256rr, X86::VPSUBUSBYrr },
1258 { X86::VPSUBUSWZ128rm, X86::VPSUBUSWrm },
1259 { X86::VPSUBUSWZ128rr, X86::VPSUBUSWrr },
1260 { X86::VPSUBUSWZ256rm, X86::VPSUBUSWYrm },
1261 { X86::VPSUBUSWZ256rr, X86::VPSUBUSWYrr },
1262 { X86::VPSUBWZ128rm, X86::VPSUBWrm },
1263 { X86::VPSUBWZ128rr, X86::VPSUBWrr },
1264 { X86::VPSUBWZ256rm, X86::VPSUBWYrm },
1265 { X86::VPSUBWZ256rr, X86::VPSUBWYrr },
1266 { X86::VPUNPCKHBWZ128rm, X86::VPUNPCKHBWrm },
1267 { X86::VPUNPCKHBWZ128rr, X86::VPUNPCKHBWrr },
1268 { X86::VPUNPCKHBWZ256rm, X86::VPUNPCKHBWYrm },
1269 { X86::VPUNPCKHBWZ256rr, X86::VPUNPCKHBWYrr },
1270 { X86::VPUNPCKHDQZ128rm, X86::VPUNPCKHDQrm },
1271 { X86::VPUNPCKHDQZ128rr, X86::VPUNPCKHDQrr },
1272 { X86::VPUNPCKHDQZ256rm, X86::VPUNPCKHDQYrm },
1273 { X86::VPUNPCKHDQZ256rr, X86::VPUNPCKHDQYrr },
1274 { X86::VPUNPCKHQDQZ128rm, X86::VPUNPCKHQDQrm },
1275 { X86::VPUNPCKHQDQZ128rr, X86::VPUNPCKHQDQrr },
1276 { X86::VPUNPCKHQDQZ256rm, X86::VPUNPCKHQDQYrm },
1277 { X86::VPUNPCKHQDQZ256rr, X86::VPUNPCKHQDQYrr },
1278 { X86::VPUNPCKHWDZ128rm, X86::VPUNPCKHWDrm },
1279 { X86::VPUNPCKHWDZ128rr, X86::VPUNPCKHWDrr },
1280 { X86::VPUNPCKHWDZ256rm, X86::VPUNPCKHWDYrm },
1281 { X86::VPUNPCKHWDZ256rr, X86::VPUNPCKHWDYrr },
1282 { X86::VPUNPCKLBWZ128rm, X86::VPUNPCKLBWrm },
1283 { X86::VPUNPCKLBWZ128rr, X86::VPUNPCKLBWrr },
1284 { X86::VPUNPCKLBWZ256rm, X86::VPUNPCKLBWYrm },
1285 { X86::VPUNPCKLBWZ256rr, X86::VPUNPCKLBWYrr },
1286 { X86::VPUNPCKLDQZ128rm, X86::VPUNPCKLDQrm },
1287 { X86::VPUNPCKLDQZ128rr, X86::VPUNPCKLDQrr },
1288 { X86::VPUNPCKLDQZ256rm, X86::VPUNPCKLDQYrm },
1289 { X86::VPUNPCKLDQZ256rr, X86::VPUNPCKLDQYrr },
1290 { X86::VPUNPCKLQDQZ128rm, X86::VPUNPCKLQDQrm },
1291 { X86::VPUNPCKLQDQZ128rr, X86::VPUNPCKLQDQrr },
1292 { X86::VPUNPCKLQDQZ256rm, X86::VPUNPCKLQDQYrm },
1293 { X86::VPUNPCKLQDQZ256rr, X86::VPUNPCKLQDQYrr },
1294 { X86::VPUNPCKLWDZ128rm, X86::VPUNPCKLWDrm },
1295 { X86::VPUNPCKLWDZ128rr, X86::VPUNPCKLWDrr },
1296 { X86::VPUNPCKLWDZ256rm, X86::VPUNPCKLWDYrm },
1297 { X86::VPUNPCKLWDZ256rr, X86::VPUNPCKLWDYrr },
1298 { X86::VPXORDZ128rm, X86::VPXORrm },
1299 { X86::VPXORDZ128rr, X86::VPXORrr },
1300 { X86::VPXORDZ256rm, X86::VPXORYrm },
1301 { X86::VPXORDZ256rr, X86::VPXORYrr },
1302 { X86::VPXORQZ128rm, X86::VPXORrm },
1303 { X86::VPXORQZ128rr, X86::VPXORrr },
1304 { X86::VPXORQZ256rm, X86::VPXORYrm },
1305 { X86::VPXORQZ256rr, X86::VPXORYrr },
1306 { X86::VRNDSCALEPDZ128rmi, X86::VROUNDPDmi },
1307 { X86::VRNDSCALEPDZ128rri, X86::VROUNDPDri },
1308 { X86::VRNDSCALEPDZ256rmi, X86::VROUNDPDYmi },
1309 { X86::VRNDSCALEPDZ256rri, X86::VROUNDPDYri },
1310 { X86::VRNDSCALEPSZ128rmi, X86::VROUNDPSmi },
1311 { X86::VRNDSCALEPSZ128rri, X86::VROUNDPSri },
1312 { X86::VRNDSCALEPSZ256rmi, X86::VROUNDPSYmi },
1313 { X86::VRNDSCALEPSZ256rri, X86::VROUNDPSYri },
1314 { X86::VRNDSCALESDZm, X86::VROUNDSDmi },
1315 { X86::VRNDSCALESDZm_Int, X86::VROUNDSDmi_Int },
1316 { X86::VRNDSCALESDZr, X86::VROUNDSDri },
1317 { X86::VRNDSCALESDZr_Int, X86::VROUNDSDri_Int },
1318 { X86::VRNDSCALESSZm, X86::VROUNDSSmi },
1319 { X86::VRNDSCALESSZm_Int, X86::VROUNDSSmi_Int },
1320 { X86::VRNDSCALESSZr, X86::VROUNDSSri },
1321 { X86::VRNDSCALESSZr_Int, X86::VROUNDSSri_Int },
1322 { X86::VSHUFF32X4Z256rmi, X86::VPERM2F128rm },
1323 { X86::VSHUFF32X4Z256rri, X86::VPERM2F128rr },
1324 { X86::VSHUFF64X2Z256rmi, X86::VPERM2F128rm },
1325 { X86::VSHUFF64X2Z256rri, X86::VPERM2F128rr },
1326 { X86::VSHUFI32X4Z256rmi, X86::VPERM2I128rm },
1327 { X86::VSHUFI32X4Z256rri, X86::VPERM2I128rr },
1328 { X86::VSHUFI64X2Z256rmi, X86::VPERM2I128rm },
1329 { X86::VSHUFI64X2Z256rri, X86::VPERM2I128rr },
1330 { X86::VSHUFPDZ128rmi, X86::VSHUFPDrmi },
1331 { X86::VSHUFPDZ128rri, X86::VSHUFPDrri },
1332 { X86::VSHUFPDZ256rmi, X86::VSHUFPDYrmi },
1333 { X86::VSHUFPDZ256rri, X86::VSHUFPDYrri },
1334 { X86::VSHUFPSZ128rmi, X86::VSHUFPSrmi },
1335 { X86::VSHUFPSZ128rri, X86::VSHUFPSrri },
1336 { X86::VSHUFPSZ256rmi, X86::VSHUFPSYrmi },
1337 { X86::VSHUFPSZ256rri, X86::VSHUFPSYrri },
1338 { X86::VSQRTPDZ128m, X86::VSQRTPDm },
1339 { X86::VSQRTPDZ128r, X86::VSQRTPDr },
1340 { X86::VSQRTPDZ256m, X86::VSQRTPDYm },
1341 { X86::VSQRTPDZ256r, X86::VSQRTPDYr },
1342 { X86::VSQRTPSZ128m, X86::VSQRTPSm },
1343 { X86::VSQRTPSZ128r, X86::VSQRTPSr },
1344 { X86::VSQRTPSZ256m, X86::VSQRTPSYm },
1345 { X86::VSQRTPSZ256r, X86::VSQRTPSYr },
1346 { X86::VSQRTSDZm, X86::VSQRTSDm },
1347 { X86::VSQRTSDZm_Int, X86::VSQRTSDm_Int },
1348 { X86::VSQRTSDZr, X86::VSQRTSDr },
1349 { X86::VSQRTSDZr_Int, X86::VSQRTSDr_Int },
1350 { X86::VSQRTSSZm, X86::VSQRTSSm },
1351 { X86::VSQRTSSZm_Int, X86::VSQRTSSm_Int },
1352 { X86::VSQRTSSZr, X86::VSQRTSSr },
1353 { X86::VSQRTSSZr_Int, X86::VSQRTSSr_Int },
1354 { X86::VSUBPDZ128rm, X86::VSUBPDrm },
1355 { X86::VSUBPDZ128rr, X86::VSUBPDrr },
1356 { X86::VSUBPDZ256rm, X86::VSUBPDYrm },
1357 { X86::VSUBPDZ256rr, X86::VSUBPDYrr },
1358 { X86::VSUBPSZ128rm, X86::VSUBPSrm },
1359 { X86::VSUBPSZ128rr, X86::VSUBPSrr },
1360 { X86::VSUBPSZ256rm, X86::VSUBPSYrm },
1361 { X86::VSUBPSZ256rr, X86::VSUBPSYrr },
1362 { X86::VSUBSDZrm, X86::VSUBSDrm },
1363 { X86::VSUBSDZrm_Int, X86::VSUBSDrm_Int },
1364 { X86::VSUBSDZrr, X86::VSUBSDrr },
1365 { X86::VSUBSDZrr_Int, X86::VSUBSDrr_Int },
1366 { X86::VSUBSSZrm, X86::VSUBSSrm },
1367 { X86::VSUBSSZrm_Int, X86::VSUBSSrm_Int },
1368 { X86::VSUBSSZrr, X86::VSUBSSrr },
1369 { X86::VSUBSSZrr_Int, X86::VSUBSSrr_Int },
1370 { X86::VUCOMISDZrm, X86::VUCOMISDrm },
1371 { X86::VUCOMISDZrm_Int, X86::VUCOMISDrm_Int },
1372 { X86::VUCOMISDZrr, X86::VUCOMISDrr },
1373 { X86::VUCOMISDZrr_Int, X86::VUCOMISDrr_Int },
1374 { X86::VUCOMISSZrm, X86::VUCOMISSrm },
1375 { X86::VUCOMISSZrm_Int, X86::VUCOMISSrm_Int },
1376 { X86::VUCOMISSZrr, X86::VUCOMISSrr },
1377 { X86::VUCOMISSZrr_Int, X86::VUCOMISSrr_Int },
1378 { X86::VUNPCKHPDZ128rm, X86::VUNPCKHPDrm },
1379 { X86::VUNPCKHPDZ128rr, X86::VUNPCKHPDrr },
1380 { X86::VUNPCKHPDZ256rm, X86::VUNPCKHPDYrm },
1381 { X86::VUNPCKHPDZ256rr, X86::VUNPCKHPDYrr },
1382 { X86::VUNPCKHPSZ128rm, X86::VUNPCKHPSrm },
1383 { X86::VUNPCKHPSZ128rr, X86::VUNPCKHPSrr },
1384 { X86::VUNPCKHPSZ256rm, X86::VUNPCKHPSYrm },
1385 { X86::VUNPCKHPSZ256rr, X86::VUNPCKHPSYrr },
1386 { X86::VUNPCKLPDZ128rm, X86::VUNPCKLPDrm },
1387 { X86::VUNPCKLPDZ128rr, X86::VUNPCKLPDrr },
1388 { X86::VUNPCKLPDZ256rm, X86::VUNPCKLPDYrm },
1389 { X86::VUNPCKLPDZ256rr, X86::VUNPCKLPDYrr },
1390 { X86::VUNPCKLPSZ128rm, X86::VUNPCKLPSrm },
1391 { X86::VUNPCKLPSZ128rr, X86::VUNPCKLPSrr },
1392 { X86::VUNPCKLPSZ256rm, X86::VUNPCKLPSYrm },
1393 { X86::VUNPCKLPSZ256rr, X86::VUNPCKLPSYrr },
1394 { X86::VXORPDZ128rm, X86::VXORPDrm },
1395 { X86::VXORPDZ128rr, X86::VXORPDrr },
1396 { X86::VXORPDZ256rm, X86::VXORPDYrm },
1397 { X86::VXORPDZ256rr, X86::VXORPDYrr },
1398 { X86::VXORPSZ128rm, X86::VXORPSrm },
1399 { X86::VXORPSZ128rr, X86::VXORPSrr },
1400 { X86::VXORPSZ256rm, X86::VXORPSYrm },
1401 { X86::VXORPSZ256rr, X86::VXORPSYrr },
1402 { X86::WRSSD_EVEX, X86::WRSSD },
1403 { X86::WRSSQ_EVEX, X86::WRSSQ },
1404 { X86::WRUSSD_EVEX, X86::WRUSSD },
1405 { X86::WRUSSQ_EVEX, X86::WRUSSQ },
1406};
1407
1408#endif // GET_X86_COMPRESS_EVEX_TABLE
1409
1410
1411#ifdef GET_X86_COMPRESS_EVEX_TABLE
1412static bool checkPredicate(unsigned Opc, const X86Subtarget *Subtarget) {
1413 switch (Opc) {
1414 default: return true;
1415 case X86::VPMADD52HUQrm:
1416 case X86::VPMADD52HUQrr:
1417 case X86::VPMADD52HUQYrm:
1418 case X86::VPMADD52HUQYrr:
1419 case X86::VPMADD52LUQrm:
1420 case X86::VPMADD52LUQrr:
1421 case X86::VPMADD52LUQYrm:
1422 case X86::VPMADD52LUQYrr:
1423 return Subtarget->hasAVXIFMA();
1424 case X86::VCVTNEPS2BF16rm:
1425 case X86::VCVTNEPS2BF16rr:
1426 case X86::VCVTNEPS2BF16Yrm:
1427 case X86::VCVTNEPS2BF16Yrr:
1428 return Subtarget->hasAVXNECONVERT();
1429 case X86::VPDPBUSDSrm:
1430 case X86::VPDPBUSDSrr:
1431 case X86::VPDPBUSDSYrm:
1432 case X86::VPDPBUSDSYrr:
1433 case X86::VPDPBUSDrm:
1434 case X86::VPDPBUSDrr:
1435 case X86::VPDPBUSDYrm:
1436 case X86::VPDPBUSDYrr:
1437 case X86::VPDPWSSDSrm:
1438 case X86::VPDPWSSDSrr:
1439 case X86::VPDPWSSDSYrm:
1440 case X86::VPDPWSSDSYrr:
1441 case X86::VPDPWSSDrm:
1442 case X86::VPDPWSSDrr:
1443 case X86::VPDPWSSDYrm:
1444 case X86::VPDPWSSDYrr:
1445 return Subtarget->hasAVXVNNI();
1446 }
1447}
1448
1449#endif // GET_X86_COMPRESS_EVEX_TABLE
1450
1451
1452#ifdef GET_X86_NF_TRANSFORM_TABLE
1453static const X86TableEntry X86NFTransformTable[] = {
1454 { X86::ADD16mi8, X86::ADD16mi8_NF },
1455 { X86::ADD16mi8_ND, X86::ADD16mi8_NF_ND },
1456 { X86::ADD16mi, X86::ADD16mi_NF },
1457 { X86::ADD16mi_ND, X86::ADD16mi_NF_ND },
1458 { X86::ADD16mr, X86::ADD16mr_NF },
1459 { X86::ADD16mr_ND, X86::ADD16mr_NF_ND },
1460 { X86::ADD16ri8, X86::ADD16ri8_NF },
1461 { X86::ADD16ri8_ND, X86::ADD16ri8_NF_ND },
1462 { X86::ADD16ri, X86::ADD16ri_NF },
1463 { X86::ADD16ri_ND, X86::ADD16ri_NF_ND },
1464 { X86::ADD16rm, X86::ADD16rm_NF },
1465 { X86::ADD16rm_ND, X86::ADD16rm_NF_ND },
1466 { X86::ADD16rr, X86::ADD16rr_NF },
1467 { X86::ADD16rr_ND, X86::ADD16rr_NF_ND },
1468 { X86::ADD32mi8, X86::ADD32mi8_NF },
1469 { X86::ADD32mi8_ND, X86::ADD32mi8_NF_ND },
1470 { X86::ADD32mi, X86::ADD32mi_NF },
1471 { X86::ADD32mi_ND, X86::ADD32mi_NF_ND },
1472 { X86::ADD32mr, X86::ADD32mr_NF },
1473 { X86::ADD32mr_ND, X86::ADD32mr_NF_ND },
1474 { X86::ADD32ri8, X86::ADD32ri8_NF },
1475 { X86::ADD32ri8_ND, X86::ADD32ri8_NF_ND },
1476 { X86::ADD32ri, X86::ADD32ri_NF },
1477 { X86::ADD32ri_ND, X86::ADD32ri_NF_ND },
1478 { X86::ADD32rm, X86::ADD32rm_NF },
1479 { X86::ADD32rm_ND, X86::ADD32rm_NF_ND },
1480 { X86::ADD32rr, X86::ADD32rr_NF },
1481 { X86::ADD32rr_ND, X86::ADD32rr_NF_ND },
1482 { X86::ADD64mi32, X86::ADD64mi32_NF },
1483 { X86::ADD64mi32_ND, X86::ADD64mi32_NF_ND },
1484 { X86::ADD64mi8, X86::ADD64mi8_NF },
1485 { X86::ADD64mi8_ND, X86::ADD64mi8_NF_ND },
1486 { X86::ADD64mr, X86::ADD64mr_NF },
1487 { X86::ADD64mr_ND, X86::ADD64mr_NF_ND },
1488 { X86::ADD64ri32, X86::ADD64ri32_NF },
1489 { X86::ADD64ri32_ND, X86::ADD64ri32_NF_ND },
1490 { X86::ADD64ri8, X86::ADD64ri8_NF },
1491 { X86::ADD64ri8_ND, X86::ADD64ri8_NF_ND },
1492 { X86::ADD64rm, X86::ADD64rm_NF },
1493 { X86::ADD64rm_ND, X86::ADD64rm_NF_ND },
1494 { X86::ADD64rr, X86::ADD64rr_NF },
1495 { X86::ADD64rr_ND, X86::ADD64rr_NF_ND },
1496 { X86::ADD8mi, X86::ADD8mi_NF },
1497 { X86::ADD8mi_ND, X86::ADD8mi_NF_ND },
1498 { X86::ADD8mr, X86::ADD8mr_NF },
1499 { X86::ADD8mr_ND, X86::ADD8mr_NF_ND },
1500 { X86::ADD8ri, X86::ADD8ri_NF },
1501 { X86::ADD8ri_ND, X86::ADD8ri_NF_ND },
1502 { X86::ADD8rm, X86::ADD8rm_NF },
1503 { X86::ADD8rm_ND, X86::ADD8rm_NF_ND },
1504 { X86::ADD8rr, X86::ADD8rr_NF },
1505 { X86::ADD8rr_ND, X86::ADD8rr_NF_ND },
1506 { X86::AND16mi8, X86::AND16mi8_NF },
1507 { X86::AND16mi8_ND, X86::AND16mi8_NF_ND },
1508 { X86::AND16mi, X86::AND16mi_NF },
1509 { X86::AND16mi_ND, X86::AND16mi_NF_ND },
1510 { X86::AND16mr, X86::AND16mr_NF },
1511 { X86::AND16mr_ND, X86::AND16mr_NF_ND },
1512 { X86::AND16ri8, X86::AND16ri8_NF },
1513 { X86::AND16ri8_ND, X86::AND16ri8_NF_ND },
1514 { X86::AND16ri, X86::AND16ri_NF },
1515 { X86::AND16ri_ND, X86::AND16ri_NF_ND },
1516 { X86::AND16rm, X86::AND16rm_NF },
1517 { X86::AND16rm_ND, X86::AND16rm_NF_ND },
1518 { X86::AND16rr, X86::AND16rr_NF },
1519 { X86::AND16rr_ND, X86::AND16rr_NF_ND },
1520 { X86::AND32mi8, X86::AND32mi8_NF },
1521 { X86::AND32mi8_ND, X86::AND32mi8_NF_ND },
1522 { X86::AND32mi, X86::AND32mi_NF },
1523 { X86::AND32mi_ND, X86::AND32mi_NF_ND },
1524 { X86::AND32mr, X86::AND32mr_NF },
1525 { X86::AND32mr_ND, X86::AND32mr_NF_ND },
1526 { X86::AND32ri8, X86::AND32ri8_NF },
1527 { X86::AND32ri8_ND, X86::AND32ri8_NF_ND },
1528 { X86::AND32ri, X86::AND32ri_NF },
1529 { X86::AND32ri_ND, X86::AND32ri_NF_ND },
1530 { X86::AND32rm, X86::AND32rm_NF },
1531 { X86::AND32rm_ND, X86::AND32rm_NF_ND },
1532 { X86::AND32rr, X86::AND32rr_NF },
1533 { X86::AND32rr_ND, X86::AND32rr_NF_ND },
1534 { X86::AND64mi32, X86::AND64mi32_NF },
1535 { X86::AND64mi32_ND, X86::AND64mi32_NF_ND },
1536 { X86::AND64mi8, X86::AND64mi8_NF },
1537 { X86::AND64mi8_ND, X86::AND64mi8_NF_ND },
1538 { X86::AND64mr, X86::AND64mr_NF },
1539 { X86::AND64mr_ND, X86::AND64mr_NF_ND },
1540 { X86::AND64ri32, X86::AND64ri32_NF },
1541 { X86::AND64ri32_ND, X86::AND64ri32_NF_ND },
1542 { X86::AND64ri8, X86::AND64ri8_NF },
1543 { X86::AND64ri8_ND, X86::AND64ri8_NF_ND },
1544 { X86::AND64rm, X86::AND64rm_NF },
1545 { X86::AND64rm_ND, X86::AND64rm_NF_ND },
1546 { X86::AND64rr, X86::AND64rr_NF },
1547 { X86::AND64rr_ND, X86::AND64rr_NF_ND },
1548 { X86::AND8mi, X86::AND8mi_NF },
1549 { X86::AND8mi_ND, X86::AND8mi_NF_ND },
1550 { X86::AND8mr, X86::AND8mr_NF },
1551 { X86::AND8mr_ND, X86::AND8mr_NF_ND },
1552 { X86::AND8ri, X86::AND8ri_NF },
1553 { X86::AND8ri_ND, X86::AND8ri_NF_ND },
1554 { X86::AND8rm, X86::AND8rm_NF },
1555 { X86::AND8rm_ND, X86::AND8rm_NF_ND },
1556 { X86::AND8rr, X86::AND8rr_NF },
1557 { X86::AND8rr_ND, X86::AND8rr_NF_ND },
1558 { X86::ANDN32rm, X86::ANDN32rm_NF },
1559 { X86::ANDN32rr, X86::ANDN32rr_NF },
1560 { X86::ANDN64rm, X86::ANDN64rm_NF },
1561 { X86::ANDN64rr, X86::ANDN64rr_NF },
1562 { X86::BEXTR32rm, X86::BEXTR32rm_NF },
1563 { X86::BEXTR32rr, X86::BEXTR32rr_NF },
1564 { X86::BEXTR64rm, X86::BEXTR64rm_NF },
1565 { X86::BEXTR64rr, X86::BEXTR64rr_NF },
1566 { X86::BLSI32rm, X86::BLSI32rm_NF },
1567 { X86::BLSI32rr, X86::BLSI32rr_NF },
1568 { X86::BLSI64rm, X86::BLSI64rm_NF },
1569 { X86::BLSI64rr, X86::BLSI64rr_NF },
1570 { X86::BLSMSK32rm, X86::BLSMSK32rm_NF },
1571 { X86::BLSMSK32rr, X86::BLSMSK32rr_NF },
1572 { X86::BLSMSK64rm, X86::BLSMSK64rm_NF },
1573 { X86::BLSMSK64rr, X86::BLSMSK64rr_NF },
1574 { X86::BLSR32rm, X86::BLSR32rm_NF },
1575 { X86::BLSR32rr, X86::BLSR32rr_NF },
1576 { X86::BLSR64rm, X86::BLSR64rm_NF },
1577 { X86::BLSR64rr, X86::BLSR64rr_NF },
1578 { X86::BZHI32rm, X86::BZHI32rm_NF },
1579 { X86::BZHI32rr, X86::BZHI32rr_NF },
1580 { X86::BZHI64rm, X86::BZHI64rm_NF },
1581 { X86::BZHI64rr, X86::BZHI64rr_NF },
1582 { X86::DEC16m, X86::DEC16m_NF },
1583 { X86::DEC16m_ND, X86::DEC16m_NF_ND },
1584 { X86::DEC16r, X86::DEC16r_NF },
1585 { X86::DEC16r_ND, X86::DEC16r_NF_ND },
1586 { X86::DEC32m, X86::DEC32m_NF },
1587 { X86::DEC32m_ND, X86::DEC32m_NF_ND },
1588 { X86::DEC32r, X86::DEC32r_NF },
1589 { X86::DEC32r_ND, X86::DEC32r_NF_ND },
1590 { X86::DEC64m, X86::DEC64m_NF },
1591 { X86::DEC64m_ND, X86::DEC64m_NF_ND },
1592 { X86::DEC64r, X86::DEC64r_NF },
1593 { X86::DEC64r_ND, X86::DEC64r_NF_ND },
1594 { X86::DEC8m, X86::DEC8m_NF },
1595 { X86::DEC8m_ND, X86::DEC8m_NF_ND },
1596 { X86::DEC8r, X86::DEC8r_NF },
1597 { X86::DEC8r_ND, X86::DEC8r_NF_ND },
1598 { X86::DIV16m, X86::DIV16m_NF },
1599 { X86::DIV16r, X86::DIV16r_NF },
1600 { X86::DIV32m, X86::DIV32m_NF },
1601 { X86::DIV32r, X86::DIV32r_NF },
1602 { X86::DIV64m, X86::DIV64m_NF },
1603 { X86::DIV64r, X86::DIV64r_NF },
1604 { X86::DIV8m, X86::DIV8m_NF },
1605 { X86::DIV8r, X86::DIV8r_NF },
1606 { X86::IDIV16m, X86::IDIV16m_NF },
1607 { X86::IDIV16r, X86::IDIV16r_NF },
1608 { X86::IDIV32m, X86::IDIV32m_NF },
1609 { X86::IDIV32r, X86::IDIV32r_NF },
1610 { X86::IDIV64m, X86::IDIV64m_NF },
1611 { X86::IDIV64r, X86::IDIV64r_NF },
1612 { X86::IDIV8m, X86::IDIV8m_NF },
1613 { X86::IDIV8r, X86::IDIV8r_NF },
1614 { X86::IMUL16m, X86::IMUL16m_NF },
1615 { X86::IMUL16r, X86::IMUL16r_NF },
1616 { X86::IMUL16rm, X86::IMUL16rm_NF },
1617 { X86::IMUL16rm_ND, X86::IMUL16rm_NF_ND },
1618 { X86::IMUL16rmi8, X86::IMUL16rmi8_NF },
1619 { X86::IMUL16rmi, X86::IMUL16rmi_NF },
1620 { X86::IMUL16rr, X86::IMUL16rr_NF },
1621 { X86::IMUL16rr_ND, X86::IMUL16rr_NF_ND },
1622 { X86::IMUL16rri8, X86::IMUL16rri8_NF },
1623 { X86::IMUL16rri, X86::IMUL16rri_NF },
1624 { X86::IMUL32m, X86::IMUL32m_NF },
1625 { X86::IMUL32r, X86::IMUL32r_NF },
1626 { X86::IMUL32rm, X86::IMUL32rm_NF },
1627 { X86::IMUL32rm_ND, X86::IMUL32rm_NF_ND },
1628 { X86::IMUL32rmi8, X86::IMUL32rmi8_NF },
1629 { X86::IMUL32rmi, X86::IMUL32rmi_NF },
1630 { X86::IMUL32rr, X86::IMUL32rr_NF },
1631 { X86::IMUL32rr_ND, X86::IMUL32rr_NF_ND },
1632 { X86::IMUL32rri8, X86::IMUL32rri8_NF },
1633 { X86::IMUL32rri, X86::IMUL32rri_NF },
1634 { X86::IMUL64m, X86::IMUL64m_NF },
1635 { X86::IMUL64r, X86::IMUL64r_NF },
1636 { X86::IMUL64rm, X86::IMUL64rm_NF },
1637 { X86::IMUL64rm_ND, X86::IMUL64rm_NF_ND },
1638 { X86::IMUL64rmi32, X86::IMUL64rmi32_NF },
1639 { X86::IMUL64rmi8, X86::IMUL64rmi8_NF },
1640 { X86::IMUL64rr, X86::IMUL64rr_NF },
1641 { X86::IMUL64rr_ND, X86::IMUL64rr_NF_ND },
1642 { X86::IMUL64rri32, X86::IMUL64rri32_NF },
1643 { X86::IMUL64rri8, X86::IMUL64rri8_NF },
1644 { X86::IMUL8m, X86::IMUL8m_NF },
1645 { X86::IMUL8r, X86::IMUL8r_NF },
1646 { X86::INC16m, X86::INC16m_NF },
1647 { X86::INC16m_ND, X86::INC16m_NF_ND },
1648 { X86::INC16r, X86::INC16r_NF },
1649 { X86::INC16r_ND, X86::INC16r_NF_ND },
1650 { X86::INC32m, X86::INC32m_NF },
1651 { X86::INC32m_ND, X86::INC32m_NF_ND },
1652 { X86::INC32r, X86::INC32r_NF },
1653 { X86::INC32r_ND, X86::INC32r_NF_ND },
1654 { X86::INC64m, X86::INC64m_NF },
1655 { X86::INC64m_ND, X86::INC64m_NF_ND },
1656 { X86::INC64r, X86::INC64r_NF },
1657 { X86::INC64r_ND, X86::INC64r_NF_ND },
1658 { X86::INC8m, X86::INC8m_NF },
1659 { X86::INC8m_ND, X86::INC8m_NF_ND },
1660 { X86::INC8r, X86::INC8r_NF },
1661 { X86::INC8r_ND, X86::INC8r_NF_ND },
1662 { X86::LZCNT16rm, X86::LZCNT16rm_NF },
1663 { X86::LZCNT16rr, X86::LZCNT16rr_NF },
1664 { X86::LZCNT32rm, X86::LZCNT32rm_NF },
1665 { X86::LZCNT32rr, X86::LZCNT32rr_NF },
1666 { X86::LZCNT64rm, X86::LZCNT64rm_NF },
1667 { X86::LZCNT64rr, X86::LZCNT64rr_NF },
1668 { X86::MUL16m, X86::MUL16m_NF },
1669 { X86::MUL16r, X86::MUL16r_NF },
1670 { X86::MUL32m, X86::MUL32m_NF },
1671 { X86::MUL32r, X86::MUL32r_NF },
1672 { X86::MUL64m, X86::MUL64m_NF },
1673 { X86::MUL64r, X86::MUL64r_NF },
1674 { X86::MUL8m, X86::MUL8m_NF },
1675 { X86::MUL8r, X86::MUL8r_NF },
1676 { X86::NEG16m, X86::NEG16m_NF },
1677 { X86::NEG16m_ND, X86::NEG16m_NF_ND },
1678 { X86::NEG16r, X86::NEG16r_NF },
1679 { X86::NEG16r_ND, X86::NEG16r_NF_ND },
1680 { X86::NEG32m, X86::NEG32m_NF },
1681 { X86::NEG32m_ND, X86::NEG32m_NF_ND },
1682 { X86::NEG32r, X86::NEG32r_NF },
1683 { X86::NEG32r_ND, X86::NEG32r_NF_ND },
1684 { X86::NEG64m, X86::NEG64m_NF },
1685 { X86::NEG64m_ND, X86::NEG64m_NF_ND },
1686 { X86::NEG64r, X86::NEG64r_NF },
1687 { X86::NEG64r_ND, X86::NEG64r_NF_ND },
1688 { X86::NEG8m, X86::NEG8m_NF },
1689 { X86::NEG8m_ND, X86::NEG8m_NF_ND },
1690 { X86::NEG8r, X86::NEG8r_NF },
1691 { X86::NEG8r_ND, X86::NEG8r_NF_ND },
1692 { X86::OR16mi8, X86::OR16mi8_NF },
1693 { X86::OR16mi8_ND, X86::OR16mi8_NF_ND },
1694 { X86::OR16mi, X86::OR16mi_NF },
1695 { X86::OR16mi_ND, X86::OR16mi_NF_ND },
1696 { X86::OR16mr, X86::OR16mr_NF },
1697 { X86::OR16mr_ND, X86::OR16mr_NF_ND },
1698 { X86::OR16ri8, X86::OR16ri8_NF },
1699 { X86::OR16ri8_ND, X86::OR16ri8_NF_ND },
1700 { X86::OR16ri, X86::OR16ri_NF },
1701 { X86::OR16ri_ND, X86::OR16ri_NF_ND },
1702 { X86::OR16rm, X86::OR16rm_NF },
1703 { X86::OR16rm_ND, X86::OR16rm_NF_ND },
1704 { X86::OR16rr, X86::OR16rr_NF },
1705 { X86::OR16rr_ND, X86::OR16rr_NF_ND },
1706 { X86::OR32mi8, X86::OR32mi8_NF },
1707 { X86::OR32mi8_ND, X86::OR32mi8_NF_ND },
1708 { X86::OR32mi, X86::OR32mi_NF },
1709 { X86::OR32mi_ND, X86::OR32mi_NF_ND },
1710 { X86::OR32mr, X86::OR32mr_NF },
1711 { X86::OR32mr_ND, X86::OR32mr_NF_ND },
1712 { X86::OR32ri8, X86::OR32ri8_NF },
1713 { X86::OR32ri8_ND, X86::OR32ri8_NF_ND },
1714 { X86::OR32ri, X86::OR32ri_NF },
1715 { X86::OR32ri_ND, X86::OR32ri_NF_ND },
1716 { X86::OR32rm, X86::OR32rm_NF },
1717 { X86::OR32rm_ND, X86::OR32rm_NF_ND },
1718 { X86::OR32rr, X86::OR32rr_NF },
1719 { X86::OR32rr_ND, X86::OR32rr_NF_ND },
1720 { X86::OR64mi32, X86::OR64mi32_NF },
1721 { X86::OR64mi32_ND, X86::OR64mi32_NF_ND },
1722 { X86::OR64mi8, X86::OR64mi8_NF },
1723 { X86::OR64mi8_ND, X86::OR64mi8_NF_ND },
1724 { X86::OR64mr, X86::OR64mr_NF },
1725 { X86::OR64mr_ND, X86::OR64mr_NF_ND },
1726 { X86::OR64ri32, X86::OR64ri32_NF },
1727 { X86::OR64ri32_ND, X86::OR64ri32_NF_ND },
1728 { X86::OR64ri8, X86::OR64ri8_NF },
1729 { X86::OR64ri8_ND, X86::OR64ri8_NF_ND },
1730 { X86::OR64rm, X86::OR64rm_NF },
1731 { X86::OR64rm_ND, X86::OR64rm_NF_ND },
1732 { X86::OR64rr, X86::OR64rr_NF },
1733 { X86::OR64rr_ND, X86::OR64rr_NF_ND },
1734 { X86::OR8mi, X86::OR8mi_NF },
1735 { X86::OR8mi_ND, X86::OR8mi_NF_ND },
1736 { X86::OR8mr, X86::OR8mr_NF },
1737 { X86::OR8mr_ND, X86::OR8mr_NF_ND },
1738 { X86::OR8ri, X86::OR8ri_NF },
1739 { X86::OR8ri_ND, X86::OR8ri_NF_ND },
1740 { X86::OR8rm, X86::OR8rm_NF },
1741 { X86::OR8rm_ND, X86::OR8rm_NF_ND },
1742 { X86::OR8rr, X86::OR8rr_NF },
1743 { X86::OR8rr_ND, X86::OR8rr_NF_ND },
1744 { X86::POPCNT16rm, X86::POPCNT16rm_NF },
1745 { X86::POPCNT16rr, X86::POPCNT16rr_NF },
1746 { X86::POPCNT32rm, X86::POPCNT32rm_NF },
1747 { X86::POPCNT32rr, X86::POPCNT32rr_NF },
1748 { X86::POPCNT64rm, X86::POPCNT64rm_NF },
1749 { X86::POPCNT64rr, X86::POPCNT64rr_NF },
1750 { X86::ROL16m1, X86::ROL16m1_NF },
1751 { X86::ROL16m1_ND, X86::ROL16m1_NF_ND },
1752 { X86::ROL16mCL, X86::ROL16mCL_NF },
1753 { X86::ROL16mCL_ND, X86::ROL16mCL_NF_ND },
1754 { X86::ROL16mi, X86::ROL16mi_NF },
1755 { X86::ROL16mi_ND, X86::ROL16mi_NF_ND },
1756 { X86::ROL16r1, X86::ROL16r1_NF },
1757 { X86::ROL16r1_ND, X86::ROL16r1_NF_ND },
1758 { X86::ROL16rCL, X86::ROL16rCL_NF },
1759 { X86::ROL16rCL_ND, X86::ROL16rCL_NF_ND },
1760 { X86::ROL16ri, X86::ROL16ri_NF },
1761 { X86::ROL16ri_ND, X86::ROL16ri_NF_ND },
1762 { X86::ROL32m1, X86::ROL32m1_NF },
1763 { X86::ROL32m1_ND, X86::ROL32m1_NF_ND },
1764 { X86::ROL32mCL, X86::ROL32mCL_NF },
1765 { X86::ROL32mCL_ND, X86::ROL32mCL_NF_ND },
1766 { X86::ROL32mi, X86::ROL32mi_NF },
1767 { X86::ROL32mi_ND, X86::ROL32mi_NF_ND },
1768 { X86::ROL32r1, X86::ROL32r1_NF },
1769 { X86::ROL32r1_ND, X86::ROL32r1_NF_ND },
1770 { X86::ROL32rCL, X86::ROL32rCL_NF },
1771 { X86::ROL32rCL_ND, X86::ROL32rCL_NF_ND },
1772 { X86::ROL32ri, X86::ROL32ri_NF },
1773 { X86::ROL32ri_ND, X86::ROL32ri_NF_ND },
1774 { X86::ROL64m1, X86::ROL64m1_NF },
1775 { X86::ROL64m1_ND, X86::ROL64m1_NF_ND },
1776 { X86::ROL64mCL, X86::ROL64mCL_NF },
1777 { X86::ROL64mCL_ND, X86::ROL64mCL_NF_ND },
1778 { X86::ROL64mi, X86::ROL64mi_NF },
1779 { X86::ROL64mi_ND, X86::ROL64mi_NF_ND },
1780 { X86::ROL64r1, X86::ROL64r1_NF },
1781 { X86::ROL64r1_ND, X86::ROL64r1_NF_ND },
1782 { X86::ROL64rCL, X86::ROL64rCL_NF },
1783 { X86::ROL64rCL_ND, X86::ROL64rCL_NF_ND },
1784 { X86::ROL64ri, X86::ROL64ri_NF },
1785 { X86::ROL64ri_ND, X86::ROL64ri_NF_ND },
1786 { X86::ROL8m1, X86::ROL8m1_NF },
1787 { X86::ROL8m1_ND, X86::ROL8m1_NF_ND },
1788 { X86::ROL8mCL, X86::ROL8mCL_NF },
1789 { X86::ROL8mCL_ND, X86::ROL8mCL_NF_ND },
1790 { X86::ROL8mi, X86::ROL8mi_NF },
1791 { X86::ROL8mi_ND, X86::ROL8mi_NF_ND },
1792 { X86::ROL8r1, X86::ROL8r1_NF },
1793 { X86::ROL8r1_ND, X86::ROL8r1_NF_ND },
1794 { X86::ROL8rCL, X86::ROL8rCL_NF },
1795 { X86::ROL8rCL_ND, X86::ROL8rCL_NF_ND },
1796 { X86::ROL8ri, X86::ROL8ri_NF },
1797 { X86::ROL8ri_ND, X86::ROL8ri_NF_ND },
1798 { X86::ROR16m1, X86::ROR16m1_NF },
1799 { X86::ROR16m1_ND, X86::ROR16m1_NF_ND },
1800 { X86::ROR16mCL, X86::ROR16mCL_NF },
1801 { X86::ROR16mCL_ND, X86::ROR16mCL_NF_ND },
1802 { X86::ROR16mi, X86::ROR16mi_NF },
1803 { X86::ROR16mi_ND, X86::ROR16mi_NF_ND },
1804 { X86::ROR16r1, X86::ROR16r1_NF },
1805 { X86::ROR16r1_ND, X86::ROR16r1_NF_ND },
1806 { X86::ROR16rCL, X86::ROR16rCL_NF },
1807 { X86::ROR16rCL_ND, X86::ROR16rCL_NF_ND },
1808 { X86::ROR16ri, X86::ROR16ri_NF },
1809 { X86::ROR16ri_ND, X86::ROR16ri_NF_ND },
1810 { X86::ROR32m1, X86::ROR32m1_NF },
1811 { X86::ROR32m1_ND, X86::ROR32m1_NF_ND },
1812 { X86::ROR32mCL, X86::ROR32mCL_NF },
1813 { X86::ROR32mCL_ND, X86::ROR32mCL_NF_ND },
1814 { X86::ROR32mi, X86::ROR32mi_NF },
1815 { X86::ROR32mi_ND, X86::ROR32mi_NF_ND },
1816 { X86::ROR32r1, X86::ROR32r1_NF },
1817 { X86::ROR32r1_ND, X86::ROR32r1_NF_ND },
1818 { X86::ROR32rCL, X86::ROR32rCL_NF },
1819 { X86::ROR32rCL_ND, X86::ROR32rCL_NF_ND },
1820 { X86::ROR32ri, X86::ROR32ri_NF },
1821 { X86::ROR32ri_ND, X86::ROR32ri_NF_ND },
1822 { X86::ROR64m1, X86::ROR64m1_NF },
1823 { X86::ROR64m1_ND, X86::ROR64m1_NF_ND },
1824 { X86::ROR64mCL, X86::ROR64mCL_NF },
1825 { X86::ROR64mCL_ND, X86::ROR64mCL_NF_ND },
1826 { X86::ROR64mi, X86::ROR64mi_NF },
1827 { X86::ROR64mi_ND, X86::ROR64mi_NF_ND },
1828 { X86::ROR64r1, X86::ROR64r1_NF },
1829 { X86::ROR64r1_ND, X86::ROR64r1_NF_ND },
1830 { X86::ROR64rCL, X86::ROR64rCL_NF },
1831 { X86::ROR64rCL_ND, X86::ROR64rCL_NF_ND },
1832 { X86::ROR64ri, X86::ROR64ri_NF },
1833 { X86::ROR64ri_ND, X86::ROR64ri_NF_ND },
1834 { X86::ROR8m1, X86::ROR8m1_NF },
1835 { X86::ROR8m1_ND, X86::ROR8m1_NF_ND },
1836 { X86::ROR8mCL, X86::ROR8mCL_NF },
1837 { X86::ROR8mCL_ND, X86::ROR8mCL_NF_ND },
1838 { X86::ROR8mi, X86::ROR8mi_NF },
1839 { X86::ROR8mi_ND, X86::ROR8mi_NF_ND },
1840 { X86::ROR8r1, X86::ROR8r1_NF },
1841 { X86::ROR8r1_ND, X86::ROR8r1_NF_ND },
1842 { X86::ROR8rCL, X86::ROR8rCL_NF },
1843 { X86::ROR8rCL_ND, X86::ROR8rCL_NF_ND },
1844 { X86::ROR8ri, X86::ROR8ri_NF },
1845 { X86::ROR8ri_ND, X86::ROR8ri_NF_ND },
1846 { X86::SAR16m1, X86::SAR16m1_NF },
1847 { X86::SAR16m1_ND, X86::SAR16m1_NF_ND },
1848 { X86::SAR16mCL, X86::SAR16mCL_NF },
1849 { X86::SAR16mCL_ND, X86::SAR16mCL_NF_ND },
1850 { X86::SAR16mi, X86::SAR16mi_NF },
1851 { X86::SAR16mi_ND, X86::SAR16mi_NF_ND },
1852 { X86::SAR16r1, X86::SAR16r1_NF },
1853 { X86::SAR16r1_ND, X86::SAR16r1_NF_ND },
1854 { X86::SAR16rCL, X86::SAR16rCL_NF },
1855 { X86::SAR16rCL_ND, X86::SAR16rCL_NF_ND },
1856 { X86::SAR16ri, X86::SAR16ri_NF },
1857 { X86::SAR16ri_ND, X86::SAR16ri_NF_ND },
1858 { X86::SAR32m1, X86::SAR32m1_NF },
1859 { X86::SAR32m1_ND, X86::SAR32m1_NF_ND },
1860 { X86::SAR32mCL, X86::SAR32mCL_NF },
1861 { X86::SAR32mCL_ND, X86::SAR32mCL_NF_ND },
1862 { X86::SAR32mi, X86::SAR32mi_NF },
1863 { X86::SAR32mi_ND, X86::SAR32mi_NF_ND },
1864 { X86::SAR32r1, X86::SAR32r1_NF },
1865 { X86::SAR32r1_ND, X86::SAR32r1_NF_ND },
1866 { X86::SAR32rCL, X86::SAR32rCL_NF },
1867 { X86::SAR32rCL_ND, X86::SAR32rCL_NF_ND },
1868 { X86::SAR32ri, X86::SAR32ri_NF },
1869 { X86::SAR32ri_ND, X86::SAR32ri_NF_ND },
1870 { X86::SAR64m1, X86::SAR64m1_NF },
1871 { X86::SAR64m1_ND, X86::SAR64m1_NF_ND },
1872 { X86::SAR64mCL, X86::SAR64mCL_NF },
1873 { X86::SAR64mCL_ND, X86::SAR64mCL_NF_ND },
1874 { X86::SAR64mi, X86::SAR64mi_NF },
1875 { X86::SAR64mi_ND, X86::SAR64mi_NF_ND },
1876 { X86::SAR64r1, X86::SAR64r1_NF },
1877 { X86::SAR64r1_ND, X86::SAR64r1_NF_ND },
1878 { X86::SAR64rCL, X86::SAR64rCL_NF },
1879 { X86::SAR64rCL_ND, X86::SAR64rCL_NF_ND },
1880 { X86::SAR64ri, X86::SAR64ri_NF },
1881 { X86::SAR64ri_ND, X86::SAR64ri_NF_ND },
1882 { X86::SAR8m1, X86::SAR8m1_NF },
1883 { X86::SAR8m1_ND, X86::SAR8m1_NF_ND },
1884 { X86::SAR8mCL, X86::SAR8mCL_NF },
1885 { X86::SAR8mCL_ND, X86::SAR8mCL_NF_ND },
1886 { X86::SAR8mi, X86::SAR8mi_NF },
1887 { X86::SAR8mi_ND, X86::SAR8mi_NF_ND },
1888 { X86::SAR8r1, X86::SAR8r1_NF },
1889 { X86::SAR8r1_ND, X86::SAR8r1_NF_ND },
1890 { X86::SAR8rCL, X86::SAR8rCL_NF },
1891 { X86::SAR8rCL_ND, X86::SAR8rCL_NF_ND },
1892 { X86::SAR8ri, X86::SAR8ri_NF },
1893 { X86::SAR8ri_ND, X86::SAR8ri_NF_ND },
1894 { X86::SHL16m1, X86::SHL16m1_NF },
1895 { X86::SHL16m1_ND, X86::SHL16m1_NF_ND },
1896 { X86::SHL16mCL, X86::SHL16mCL_NF },
1897 { X86::SHL16mCL_ND, X86::SHL16mCL_NF_ND },
1898 { X86::SHL16mi, X86::SHL16mi_NF },
1899 { X86::SHL16mi_ND, X86::SHL16mi_NF_ND },
1900 { X86::SHL16r1, X86::SHL16r1_NF },
1901 { X86::SHL16r1_ND, X86::SHL16r1_NF_ND },
1902 { X86::SHL16rCL, X86::SHL16rCL_NF },
1903 { X86::SHL16rCL_ND, X86::SHL16rCL_NF_ND },
1904 { X86::SHL16ri, X86::SHL16ri_NF },
1905 { X86::SHL16ri_ND, X86::SHL16ri_NF_ND },
1906 { X86::SHL32m1, X86::SHL32m1_NF },
1907 { X86::SHL32m1_ND, X86::SHL32m1_NF_ND },
1908 { X86::SHL32mCL, X86::SHL32mCL_NF },
1909 { X86::SHL32mCL_ND, X86::SHL32mCL_NF_ND },
1910 { X86::SHL32mi, X86::SHL32mi_NF },
1911 { X86::SHL32mi_ND, X86::SHL32mi_NF_ND },
1912 { X86::SHL32r1, X86::SHL32r1_NF },
1913 { X86::SHL32r1_ND, X86::SHL32r1_NF_ND },
1914 { X86::SHL32rCL, X86::SHL32rCL_NF },
1915 { X86::SHL32rCL_ND, X86::SHL32rCL_NF_ND },
1916 { X86::SHL32ri, X86::SHL32ri_NF },
1917 { X86::SHL32ri_ND, X86::SHL32ri_NF_ND },
1918 { X86::SHL64m1, X86::SHL64m1_NF },
1919 { X86::SHL64m1_ND, X86::SHL64m1_NF_ND },
1920 { X86::SHL64mCL, X86::SHL64mCL_NF },
1921 { X86::SHL64mCL_ND, X86::SHL64mCL_NF_ND },
1922 { X86::SHL64mi, X86::SHL64mi_NF },
1923 { X86::SHL64mi_ND, X86::SHL64mi_NF_ND },
1924 { X86::SHL64r1, X86::SHL64r1_NF },
1925 { X86::SHL64r1_ND, X86::SHL64r1_NF_ND },
1926 { X86::SHL64rCL, X86::SHL64rCL_NF },
1927 { X86::SHL64rCL_ND, X86::SHL64rCL_NF_ND },
1928 { X86::SHL64ri, X86::SHL64ri_NF },
1929 { X86::SHL64ri_ND, X86::SHL64ri_NF_ND },
1930 { X86::SHL8m1, X86::SHL8m1_NF },
1931 { X86::SHL8m1_ND, X86::SHL8m1_NF_ND },
1932 { X86::SHL8mCL, X86::SHL8mCL_NF },
1933 { X86::SHL8mCL_ND, X86::SHL8mCL_NF_ND },
1934 { X86::SHL8mi, X86::SHL8mi_NF },
1935 { X86::SHL8mi_ND, X86::SHL8mi_NF_ND },
1936 { X86::SHL8r1, X86::SHL8r1_NF },
1937 { X86::SHL8r1_ND, X86::SHL8r1_NF_ND },
1938 { X86::SHL8rCL, X86::SHL8rCL_NF },
1939 { X86::SHL8rCL_ND, X86::SHL8rCL_NF_ND },
1940 { X86::SHL8ri, X86::SHL8ri_NF },
1941 { X86::SHL8ri_ND, X86::SHL8ri_NF_ND },
1942 { X86::SHLD16mrCL, X86::SHLD16mrCL_NF },
1943 { X86::SHLD16mrCL_ND, X86::SHLD16mrCL_NF_ND },
1944 { X86::SHLD16mri8, X86::SHLD16mri8_NF },
1945 { X86::SHLD16mri8_ND, X86::SHLD16mri8_NF_ND },
1946 { X86::SHLD16rrCL, X86::SHLD16rrCL_NF },
1947 { X86::SHLD16rrCL_ND, X86::SHLD16rrCL_NF_ND },
1948 { X86::SHLD16rri8, X86::SHLD16rri8_NF },
1949 { X86::SHLD16rri8_ND, X86::SHLD16rri8_NF_ND },
1950 { X86::SHLD32mrCL, X86::SHLD32mrCL_NF },
1951 { X86::SHLD32mrCL_ND, X86::SHLD32mrCL_NF_ND },
1952 { X86::SHLD32mri8, X86::SHLD32mri8_NF },
1953 { X86::SHLD32mri8_ND, X86::SHLD32mri8_NF_ND },
1954 { X86::SHLD32rrCL, X86::SHLD32rrCL_NF },
1955 { X86::SHLD32rrCL_ND, X86::SHLD32rrCL_NF_ND },
1956 { X86::SHLD32rri8, X86::SHLD32rri8_NF },
1957 { X86::SHLD32rri8_ND, X86::SHLD32rri8_NF_ND },
1958 { X86::SHLD64mrCL, X86::SHLD64mrCL_NF },
1959 { X86::SHLD64mrCL_ND, X86::SHLD64mrCL_NF_ND },
1960 { X86::SHLD64mri8, X86::SHLD64mri8_NF },
1961 { X86::SHLD64mri8_ND, X86::SHLD64mri8_NF_ND },
1962 { X86::SHLD64rrCL, X86::SHLD64rrCL_NF },
1963 { X86::SHLD64rrCL_ND, X86::SHLD64rrCL_NF_ND },
1964 { X86::SHLD64rri8, X86::SHLD64rri8_NF },
1965 { X86::SHLD64rri8_ND, X86::SHLD64rri8_NF_ND },
1966 { X86::SHR16m1, X86::SHR16m1_NF },
1967 { X86::SHR16m1_ND, X86::SHR16m1_NF_ND },
1968 { X86::SHR16mCL, X86::SHR16mCL_NF },
1969 { X86::SHR16mCL_ND, X86::SHR16mCL_NF_ND },
1970 { X86::SHR16mi, X86::SHR16mi_NF },
1971 { X86::SHR16mi_ND, X86::SHR16mi_NF_ND },
1972 { X86::SHR16r1, X86::SHR16r1_NF },
1973 { X86::SHR16r1_ND, X86::SHR16r1_NF_ND },
1974 { X86::SHR16rCL, X86::SHR16rCL_NF },
1975 { X86::SHR16rCL_ND, X86::SHR16rCL_NF_ND },
1976 { X86::SHR16ri, X86::SHR16ri_NF },
1977 { X86::SHR16ri_ND, X86::SHR16ri_NF_ND },
1978 { X86::SHR32m1, X86::SHR32m1_NF },
1979 { X86::SHR32m1_ND, X86::SHR32m1_NF_ND },
1980 { X86::SHR32mCL, X86::SHR32mCL_NF },
1981 { X86::SHR32mCL_ND, X86::SHR32mCL_NF_ND },
1982 { X86::SHR32mi, X86::SHR32mi_NF },
1983 { X86::SHR32mi_ND, X86::SHR32mi_NF_ND },
1984 { X86::SHR32r1, X86::SHR32r1_NF },
1985 { X86::SHR32r1_ND, X86::SHR32r1_NF_ND },
1986 { X86::SHR32rCL, X86::SHR32rCL_NF },
1987 { X86::SHR32rCL_ND, X86::SHR32rCL_NF_ND },
1988 { X86::SHR32ri, X86::SHR32ri_NF },
1989 { X86::SHR32ri_ND, X86::SHR32ri_NF_ND },
1990 { X86::SHR64m1, X86::SHR64m1_NF },
1991 { X86::SHR64m1_ND, X86::SHR64m1_NF_ND },
1992 { X86::SHR64mCL, X86::SHR64mCL_NF },
1993 { X86::SHR64mCL_ND, X86::SHR64mCL_NF_ND },
1994 { X86::SHR64mi, X86::SHR64mi_NF },
1995 { X86::SHR64mi_ND, X86::SHR64mi_NF_ND },
1996 { X86::SHR64r1, X86::SHR64r1_NF },
1997 { X86::SHR64r1_ND, X86::SHR64r1_NF_ND },
1998 { X86::SHR64rCL, X86::SHR64rCL_NF },
1999 { X86::SHR64rCL_ND, X86::SHR64rCL_NF_ND },
2000 { X86::SHR64ri, X86::SHR64ri_NF },
2001 { X86::SHR64ri_ND, X86::SHR64ri_NF_ND },
2002 { X86::SHR8m1, X86::SHR8m1_NF },
2003 { X86::SHR8m1_ND, X86::SHR8m1_NF_ND },
2004 { X86::SHR8mCL, X86::SHR8mCL_NF },
2005 { X86::SHR8mCL_ND, X86::SHR8mCL_NF_ND },
2006 { X86::SHR8mi, X86::SHR8mi_NF },
2007 { X86::SHR8mi_ND, X86::SHR8mi_NF_ND },
2008 { X86::SHR8r1, X86::SHR8r1_NF },
2009 { X86::SHR8r1_ND, X86::SHR8r1_NF_ND },
2010 { X86::SHR8rCL, X86::SHR8rCL_NF },
2011 { X86::SHR8rCL_ND, X86::SHR8rCL_NF_ND },
2012 { X86::SHR8ri, X86::SHR8ri_NF },
2013 { X86::SHR8ri_ND, X86::SHR8ri_NF_ND },
2014 { X86::SHRD16mrCL, X86::SHRD16mrCL_NF },
2015 { X86::SHRD16mrCL_ND, X86::SHRD16mrCL_NF_ND },
2016 { X86::SHRD16mri8, X86::SHRD16mri8_NF },
2017 { X86::SHRD16mri8_ND, X86::SHRD16mri8_NF_ND },
2018 { X86::SHRD16rrCL, X86::SHRD16rrCL_NF },
2019 { X86::SHRD16rrCL_ND, X86::SHRD16rrCL_NF_ND },
2020 { X86::SHRD16rri8, X86::SHRD16rri8_NF },
2021 { X86::SHRD16rri8_ND, X86::SHRD16rri8_NF_ND },
2022 { X86::SHRD32mrCL, X86::SHRD32mrCL_NF },
2023 { X86::SHRD32mrCL_ND, X86::SHRD32mrCL_NF_ND },
2024 { X86::SHRD32mri8, X86::SHRD32mri8_NF },
2025 { X86::SHRD32mri8_ND, X86::SHRD32mri8_NF_ND },
2026 { X86::SHRD32rrCL, X86::SHRD32rrCL_NF },
2027 { X86::SHRD32rrCL_ND, X86::SHRD32rrCL_NF_ND },
2028 { X86::SHRD32rri8, X86::SHRD32rri8_NF },
2029 { X86::SHRD32rri8_ND, X86::SHRD32rri8_NF_ND },
2030 { X86::SHRD64mrCL, X86::SHRD64mrCL_NF },
2031 { X86::SHRD64mrCL_ND, X86::SHRD64mrCL_NF_ND },
2032 { X86::SHRD64mri8, X86::SHRD64mri8_NF },
2033 { X86::SHRD64mri8_ND, X86::SHRD64mri8_NF_ND },
2034 { X86::SHRD64rrCL, X86::SHRD64rrCL_NF },
2035 { X86::SHRD64rrCL_ND, X86::SHRD64rrCL_NF_ND },
2036 { X86::SHRD64rri8, X86::SHRD64rri8_NF },
2037 { X86::SHRD64rri8_ND, X86::SHRD64rri8_NF_ND },
2038 { X86::SUB16mi8, X86::SUB16mi8_NF },
2039 { X86::SUB16mi8_ND, X86::SUB16mi8_NF_ND },
2040 { X86::SUB16mi, X86::SUB16mi_NF },
2041 { X86::SUB16mi_ND, X86::SUB16mi_NF_ND },
2042 { X86::SUB16mr, X86::SUB16mr_NF },
2043 { X86::SUB16mr_ND, X86::SUB16mr_NF_ND },
2044 { X86::SUB16ri8, X86::SUB16ri8_NF },
2045 { X86::SUB16ri8_ND, X86::SUB16ri8_NF_ND },
2046 { X86::SUB16ri, X86::SUB16ri_NF },
2047 { X86::SUB16ri_ND, X86::SUB16ri_NF_ND },
2048 { X86::SUB16rm, X86::SUB16rm_NF },
2049 { X86::SUB16rm_ND, X86::SUB16rm_NF_ND },
2050 { X86::SUB16rr, X86::SUB16rr_NF },
2051 { X86::SUB16rr_ND, X86::SUB16rr_NF_ND },
2052 { X86::SUB32mi8, X86::SUB32mi8_NF },
2053 { X86::SUB32mi8_ND, X86::SUB32mi8_NF_ND },
2054 { X86::SUB32mi, X86::SUB32mi_NF },
2055 { X86::SUB32mi_ND, X86::SUB32mi_NF_ND },
2056 { X86::SUB32mr, X86::SUB32mr_NF },
2057 { X86::SUB32mr_ND, X86::SUB32mr_NF_ND },
2058 { X86::SUB32ri8, X86::SUB32ri8_NF },
2059 { X86::SUB32ri8_ND, X86::SUB32ri8_NF_ND },
2060 { X86::SUB32ri, X86::SUB32ri_NF },
2061 { X86::SUB32ri_ND, X86::SUB32ri_NF_ND },
2062 { X86::SUB32rm, X86::SUB32rm_NF },
2063 { X86::SUB32rm_ND, X86::SUB32rm_NF_ND },
2064 { X86::SUB32rr, X86::SUB32rr_NF },
2065 { X86::SUB32rr_ND, X86::SUB32rr_NF_ND },
2066 { X86::SUB64mi32, X86::SUB64mi32_NF },
2067 { X86::SUB64mi32_ND, X86::SUB64mi32_NF_ND },
2068 { X86::SUB64mi8, X86::SUB64mi8_NF },
2069 { X86::SUB64mi8_ND, X86::SUB64mi8_NF_ND },
2070 { X86::SUB64mr, X86::SUB64mr_NF },
2071 { X86::SUB64mr_ND, X86::SUB64mr_NF_ND },
2072 { X86::SUB64ri32, X86::SUB64ri32_NF },
2073 { X86::SUB64ri32_ND, X86::SUB64ri32_NF_ND },
2074 { X86::SUB64ri8, X86::SUB64ri8_NF },
2075 { X86::SUB64ri8_ND, X86::SUB64ri8_NF_ND },
2076 { X86::SUB64rm, X86::SUB64rm_NF },
2077 { X86::SUB64rm_ND, X86::SUB64rm_NF_ND },
2078 { X86::SUB64rr, X86::SUB64rr_NF },
2079 { X86::SUB64rr_ND, X86::SUB64rr_NF_ND },
2080 { X86::SUB8mi, X86::SUB8mi_NF },
2081 { X86::SUB8mi_ND, X86::SUB8mi_NF_ND },
2082 { X86::SUB8mr, X86::SUB8mr_NF },
2083 { X86::SUB8mr_ND, X86::SUB8mr_NF_ND },
2084 { X86::SUB8ri, X86::SUB8ri_NF },
2085 { X86::SUB8ri_ND, X86::SUB8ri_NF_ND },
2086 { X86::SUB8rm, X86::SUB8rm_NF },
2087 { X86::SUB8rm_ND, X86::SUB8rm_NF_ND },
2088 { X86::SUB8rr, X86::SUB8rr_NF },
2089 { X86::SUB8rr_ND, X86::SUB8rr_NF_ND },
2090 { X86::TZCNT16rm, X86::TZCNT16rm_NF },
2091 { X86::TZCNT16rr, X86::TZCNT16rr_NF },
2092 { X86::TZCNT32rm, X86::TZCNT32rm_NF },
2093 { X86::TZCNT32rr, X86::TZCNT32rr_NF },
2094 { X86::TZCNT64rm, X86::TZCNT64rm_NF },
2095 { X86::TZCNT64rr, X86::TZCNT64rr_NF },
2096 { X86::XOR16mi8, X86::XOR16mi8_NF },
2097 { X86::XOR16mi8_ND, X86::XOR16mi8_NF_ND },
2098 { X86::XOR16mi, X86::XOR16mi_NF },
2099 { X86::XOR16mi_ND, X86::XOR16mi_NF_ND },
2100 { X86::XOR16mr, X86::XOR16mr_NF },
2101 { X86::XOR16mr_ND, X86::XOR16mr_NF_ND },
2102 { X86::XOR16ri8, X86::XOR16ri8_NF },
2103 { X86::XOR16ri8_ND, X86::XOR16ri8_NF_ND },
2104 { X86::XOR16ri, X86::XOR16ri_NF },
2105 { X86::XOR16ri_ND, X86::XOR16ri_NF_ND },
2106 { X86::XOR16rm, X86::XOR16rm_NF },
2107 { X86::XOR16rm_ND, X86::XOR16rm_NF_ND },
2108 { X86::XOR16rr, X86::XOR16rr_NF },
2109 { X86::XOR16rr_ND, X86::XOR16rr_NF_ND },
2110 { X86::XOR32mi8, X86::XOR32mi8_NF },
2111 { X86::XOR32mi8_ND, X86::XOR32mi8_NF_ND },
2112 { X86::XOR32mi, X86::XOR32mi_NF },
2113 { X86::XOR32mi_ND, X86::XOR32mi_NF_ND },
2114 { X86::XOR32mr, X86::XOR32mr_NF },
2115 { X86::XOR32mr_ND, X86::XOR32mr_NF_ND },
2116 { X86::XOR32ri8, X86::XOR32ri8_NF },
2117 { X86::XOR32ri8_ND, X86::XOR32ri8_NF_ND },
2118 { X86::XOR32ri, X86::XOR32ri_NF },
2119 { X86::XOR32ri_ND, X86::XOR32ri_NF_ND },
2120 { X86::XOR32rm, X86::XOR32rm_NF },
2121 { X86::XOR32rm_ND, X86::XOR32rm_NF_ND },
2122 { X86::XOR32rr, X86::XOR32rr_NF },
2123 { X86::XOR32rr_ND, X86::XOR32rr_NF_ND },
2124 { X86::XOR64mi32, X86::XOR64mi32_NF },
2125 { X86::XOR64mi32_ND, X86::XOR64mi32_NF_ND },
2126 { X86::XOR64mi8, X86::XOR64mi8_NF },
2127 { X86::XOR64mi8_ND, X86::XOR64mi8_NF_ND },
2128 { X86::XOR64mr, X86::XOR64mr_NF },
2129 { X86::XOR64mr_ND, X86::XOR64mr_NF_ND },
2130 { X86::XOR64ri32, X86::XOR64ri32_NF },
2131 { X86::XOR64ri32_ND, X86::XOR64ri32_NF_ND },
2132 { X86::XOR64ri8, X86::XOR64ri8_NF },
2133 { X86::XOR64ri8_ND, X86::XOR64ri8_NF_ND },
2134 { X86::XOR64rm, X86::XOR64rm_NF },
2135 { X86::XOR64rm_ND, X86::XOR64rm_NF_ND },
2136 { X86::XOR64rr, X86::XOR64rr_NF },
2137 { X86::XOR64rr_ND, X86::XOR64rr_NF_ND },
2138 { X86::XOR8mi, X86::XOR8mi_NF },
2139 { X86::XOR8mi_ND, X86::XOR8mi_NF_ND },
2140 { X86::XOR8mr, X86::XOR8mr_NF },
2141 { X86::XOR8mr_ND, X86::XOR8mr_NF_ND },
2142 { X86::XOR8ri, X86::XOR8ri_NF },
2143 { X86::XOR8ri_ND, X86::XOR8ri_NF_ND },
2144 { X86::XOR8rm, X86::XOR8rm_NF },
2145 { X86::XOR8rm_ND, X86::XOR8rm_NF_ND },
2146 { X86::XOR8rr, X86::XOR8rr_NF },
2147 { X86::XOR8rr_ND, X86::XOR8rr_NF_ND },
2148};
2149
2150#endif // GET_X86_NF_TRANSFORM_TABLE
2151
2152
2153#ifdef GET_X86_ND2NONND_TABLE
2154static const X86TableEntry X86ND2NonNDTable[] = {
2155 { X86::ADC16ri8_ND, X86::ADC16ri8 },
2156 { X86::ADC16ri_ND, X86::ADC16ri },
2157 { X86::ADC16rm_ND, X86::ADC16rm },
2158 { X86::ADC16rr_ND, X86::ADC16rr },
2159 { X86::ADC32ri8_ND, X86::ADC32ri8 },
2160 { X86::ADC32ri_ND, X86::ADC32ri },
2161 { X86::ADC32rm_ND, X86::ADC32rm },
2162 { X86::ADC32rr_ND, X86::ADC32rr },
2163 { X86::ADC64ri32_ND, X86::ADC64ri32 },
2164 { X86::ADC64ri8_ND, X86::ADC64ri8 },
2165 { X86::ADC64rm_ND, X86::ADC64rm },
2166 { X86::ADC64rr_ND, X86::ADC64rr },
2167 { X86::ADC8ri_ND, X86::ADC8ri },
2168 { X86::ADC8rm_ND, X86::ADC8rm },
2169 { X86::ADC8rr_ND, X86::ADC8rr },
2170 { X86::ADCX32rm_ND, X86::ADCX32rm },
2171 { X86::ADCX32rr_ND, X86::ADCX32rr },
2172 { X86::ADCX64rm_ND, X86::ADCX64rm },
2173 { X86::ADCX64rr_ND, X86::ADCX64rr },
2174 { X86::ADD16ri8_ND, X86::ADD16ri8 },
2175 { X86::ADD16ri8_NF_ND, X86::ADD16ri8_NF },
2176 { X86::ADD16ri_ND, X86::ADD16ri },
2177 { X86::ADD16ri_NF_ND, X86::ADD16ri_NF },
2178 { X86::ADD16rm_ND, X86::ADD16rm },
2179 { X86::ADD16rm_NF_ND, X86::ADD16rm_NF },
2180 { X86::ADD16rr_ND, X86::ADD16rr },
2181 { X86::ADD16rr_NF_ND, X86::ADD16rr_NF },
2182 { X86::ADD32ri8_ND, X86::ADD32ri8 },
2183 { X86::ADD32ri8_NF_ND, X86::ADD32ri8_NF },
2184 { X86::ADD32ri_ND, X86::ADD32ri },
2185 { X86::ADD32ri_NF_ND, X86::ADD32ri_NF },
2186 { X86::ADD32rm_ND, X86::ADD32rm },
2187 { X86::ADD32rm_NF_ND, X86::ADD32rm_NF },
2188 { X86::ADD32rr_ND, X86::ADD32rr },
2189 { X86::ADD32rr_NF_ND, X86::ADD32rr_NF },
2190 { X86::ADD64ri32_ND, X86::ADD64ri32 },
2191 { X86::ADD64ri32_NF_ND, X86::ADD64ri32_NF },
2192 { X86::ADD64ri8_ND, X86::ADD64ri8 },
2193 { X86::ADD64ri8_NF_ND, X86::ADD64ri8_NF },
2194 { X86::ADD64rm_ND, X86::ADD64rm },
2195 { X86::ADD64rm_NF_ND, X86::ADD64rm_NF },
2196 { X86::ADD64rr_ND, X86::ADD64rr },
2197 { X86::ADD64rr_NF_ND, X86::ADD64rr_NF },
2198 { X86::ADD8ri_ND, X86::ADD8ri },
2199 { X86::ADD8ri_NF_ND, X86::ADD8ri_NF },
2200 { X86::ADD8rm_ND, X86::ADD8rm },
2201 { X86::ADD8rm_NF_ND, X86::ADD8rm_NF },
2202 { X86::ADD8rr_ND, X86::ADD8rr },
2203 { X86::ADD8rr_NF_ND, X86::ADD8rr_NF },
2204 { X86::ADOX32rm_ND, X86::ADOX32rm },
2205 { X86::ADOX32rr_ND, X86::ADOX32rr },
2206 { X86::ADOX64rm_ND, X86::ADOX64rm },
2207 { X86::ADOX64rr_ND, X86::ADOX64rr },
2208 { X86::AND16ri8_ND, X86::AND16ri8 },
2209 { X86::AND16ri8_NF_ND, X86::AND16ri8_NF },
2210 { X86::AND16ri_ND, X86::AND16ri },
2211 { X86::AND16ri_NF_ND, X86::AND16ri_NF },
2212 { X86::AND16rm_ND, X86::AND16rm },
2213 { X86::AND16rm_NF_ND, X86::AND16rm_NF },
2214 { X86::AND16rr_ND, X86::AND16rr },
2215 { X86::AND16rr_NF_ND, X86::AND16rr_NF },
2216 { X86::AND32ri8_ND, X86::AND32ri8 },
2217 { X86::AND32ri8_NF_ND, X86::AND32ri8_NF },
2218 { X86::AND32ri_ND, X86::AND32ri },
2219 { X86::AND32ri_NF_ND, X86::AND32ri_NF },
2220 { X86::AND32rm_ND, X86::AND32rm },
2221 { X86::AND32rm_NF_ND, X86::AND32rm_NF },
2222 { X86::AND32rr_ND, X86::AND32rr },
2223 { X86::AND32rr_NF_ND, X86::AND32rr_NF },
2224 { X86::AND64ri32_ND, X86::AND64ri32 },
2225 { X86::AND64ri32_NF_ND, X86::AND64ri32_NF },
2226 { X86::AND64ri8_ND, X86::AND64ri8 },
2227 { X86::AND64ri8_NF_ND, X86::AND64ri8_NF },
2228 { X86::AND64rm_ND, X86::AND64rm },
2229 { X86::AND64rm_NF_ND, X86::AND64rm_NF },
2230 { X86::AND64rr_ND, X86::AND64rr },
2231 { X86::AND64rr_NF_ND, X86::AND64rr_NF },
2232 { X86::AND8ri_ND, X86::AND8ri },
2233 { X86::AND8ri_NF_ND, X86::AND8ri_NF },
2234 { X86::AND8rm_ND, X86::AND8rm },
2235 { X86::AND8rm_NF_ND, X86::AND8rm_NF },
2236 { X86::AND8rr_ND, X86::AND8rr },
2237 { X86::AND8rr_NF_ND, X86::AND8rr_NF },
2238 { X86::CMOV16rm_ND, X86::CMOV16rm },
2239 { X86::CMOV16rr_ND, X86::CMOV16rr },
2240 { X86::CMOV32rm_ND, X86::CMOV32rm },
2241 { X86::CMOV32rr_ND, X86::CMOV32rr },
2242 { X86::CMOV64rm_ND, X86::CMOV64rm },
2243 { X86::CMOV64rr_ND, X86::CMOV64rr },
2244 { X86::DEC16r_ND, X86::DEC16r },
2245 { X86::DEC16r_NF_ND, X86::DEC16r_NF },
2246 { X86::DEC32r_ND, X86::DEC32r },
2247 { X86::DEC32r_NF_ND, X86::DEC32r_NF },
2248 { X86::DEC64r_ND, X86::DEC64r },
2249 { X86::DEC64r_NF_ND, X86::DEC64r_NF },
2250 { X86::DEC8r_ND, X86::DEC8r },
2251 { X86::DEC8r_NF_ND, X86::DEC8r_NF },
2252 { X86::IMUL16rm_ND, X86::IMUL16rm },
2253 { X86::IMUL16rm_NF_ND, X86::IMUL16rm_NF },
2254 { X86::IMUL16rr_ND, X86::IMUL16rr },
2255 { X86::IMUL16rr_NF_ND, X86::IMUL16rr_NF },
2256 { X86::IMUL32rm_ND, X86::IMUL32rm },
2257 { X86::IMUL32rm_NF_ND, X86::IMUL32rm_NF },
2258 { X86::IMUL32rr_ND, X86::IMUL32rr },
2259 { X86::IMUL32rr_NF_ND, X86::IMUL32rr_NF },
2260 { X86::IMUL64rm_ND, X86::IMUL64rm },
2261 { X86::IMUL64rm_NF_ND, X86::IMUL64rm_NF },
2262 { X86::IMUL64rr_ND, X86::IMUL64rr },
2263 { X86::IMUL64rr_NF_ND, X86::IMUL64rr_NF },
2264 { X86::INC16r_ND, X86::INC16r },
2265 { X86::INC16r_NF_ND, X86::INC16r_NF },
2266 { X86::INC32r_ND, X86::INC32r },
2267 { X86::INC32r_NF_ND, X86::INC32r_NF },
2268 { X86::INC64r_ND, X86::INC64r },
2269 { X86::INC64r_NF_ND, X86::INC64r_NF },
2270 { X86::INC8r_ND, X86::INC8r },
2271 { X86::INC8r_NF_ND, X86::INC8r_NF },
2272 { X86::MOVBE32rr, X86::BSWAP32r },
2273 { X86::MOVBE64rr, X86::BSWAP64r },
2274 { X86::NEG16r_ND, X86::NEG16r },
2275 { X86::NEG16r_NF_ND, X86::NEG16r_NF },
2276 { X86::NEG32r_ND, X86::NEG32r },
2277 { X86::NEG32r_NF_ND, X86::NEG32r_NF },
2278 { X86::NEG64r_ND, X86::NEG64r },
2279 { X86::NEG64r_NF_ND, X86::NEG64r_NF },
2280 { X86::NEG8r_ND, X86::NEG8r },
2281 { X86::NEG8r_NF_ND, X86::NEG8r_NF },
2282 { X86::NOT16r_ND, X86::NOT16r },
2283 { X86::NOT32r_ND, X86::NOT32r },
2284 { X86::NOT64r_ND, X86::NOT64r },
2285 { X86::NOT8r_ND, X86::NOT8r },
2286 { X86::OR16ri8_ND, X86::OR16ri8 },
2287 { X86::OR16ri8_NF_ND, X86::OR16ri8_NF },
2288 { X86::OR16ri_ND, X86::OR16ri },
2289 { X86::OR16ri_NF_ND, X86::OR16ri_NF },
2290 { X86::OR16rm_ND, X86::OR16rm },
2291 { X86::OR16rm_NF_ND, X86::OR16rm_NF },
2292 { X86::OR16rr_ND, X86::OR16rr },
2293 { X86::OR16rr_NF_ND, X86::OR16rr_NF },
2294 { X86::OR32ri8_ND, X86::OR32ri8 },
2295 { X86::OR32ri8_NF_ND, X86::OR32ri8_NF },
2296 { X86::OR32ri_ND, X86::OR32ri },
2297 { X86::OR32ri_NF_ND, X86::OR32ri_NF },
2298 { X86::OR32rm_ND, X86::OR32rm },
2299 { X86::OR32rm_NF_ND, X86::OR32rm_NF },
2300 { X86::OR32rr_ND, X86::OR32rr },
2301 { X86::OR32rr_NF_ND, X86::OR32rr_NF },
2302 { X86::OR64ri32_ND, X86::OR64ri32 },
2303 { X86::OR64ri32_NF_ND, X86::OR64ri32_NF },
2304 { X86::OR64ri8_ND, X86::OR64ri8 },
2305 { X86::OR64ri8_NF_ND, X86::OR64ri8_NF },
2306 { X86::OR64rm_ND, X86::OR64rm },
2307 { X86::OR64rm_NF_ND, X86::OR64rm_NF },
2308 { X86::OR64rr_ND, X86::OR64rr },
2309 { X86::OR64rr_NF_ND, X86::OR64rr_NF },
2310 { X86::OR8ri_ND, X86::OR8ri },
2311 { X86::OR8ri_NF_ND, X86::OR8ri_NF },
2312 { X86::OR8rm_ND, X86::OR8rm },
2313 { X86::OR8rm_NF_ND, X86::OR8rm_NF },
2314 { X86::OR8rr_ND, X86::OR8rr },
2315 { X86::OR8rr_NF_ND, X86::OR8rr_NF },
2316 { X86::RCL16r1_ND, X86::RCL16r1 },
2317 { X86::RCL16rCL_ND, X86::RCL16rCL },
2318 { X86::RCL16ri_ND, X86::RCL16ri },
2319 { X86::RCL32r1_ND, X86::RCL32r1 },
2320 { X86::RCL32rCL_ND, X86::RCL32rCL },
2321 { X86::RCL32ri_ND, X86::RCL32ri },
2322 { X86::RCL64r1_ND, X86::RCL64r1 },
2323 { X86::RCL64rCL_ND, X86::RCL64rCL },
2324 { X86::RCL64ri_ND, X86::RCL64ri },
2325 { X86::RCL8r1_ND, X86::RCL8r1 },
2326 { X86::RCL8rCL_ND, X86::RCL8rCL },
2327 { X86::RCL8ri_ND, X86::RCL8ri },
2328 { X86::RCR16r1_ND, X86::RCR16r1 },
2329 { X86::RCR16rCL_ND, X86::RCR16rCL },
2330 { X86::RCR16ri_ND, X86::RCR16ri },
2331 { X86::RCR32r1_ND, X86::RCR32r1 },
2332 { X86::RCR32rCL_ND, X86::RCR32rCL },
2333 { X86::RCR32ri_ND, X86::RCR32ri },
2334 { X86::RCR64r1_ND, X86::RCR64r1 },
2335 { X86::RCR64rCL_ND, X86::RCR64rCL },
2336 { X86::RCR64ri_ND, X86::RCR64ri },
2337 { X86::RCR8r1_ND, X86::RCR8r1 },
2338 { X86::RCR8rCL_ND, X86::RCR8rCL },
2339 { X86::RCR8ri_ND, X86::RCR8ri },
2340 { X86::ROL16r1_ND, X86::ROL16r1 },
2341 { X86::ROL16r1_NF_ND, X86::ROL16r1_NF },
2342 { X86::ROL16rCL_ND, X86::ROL16rCL },
2343 { X86::ROL16rCL_NF_ND, X86::ROL16rCL_NF },
2344 { X86::ROL16ri_ND, X86::ROL16ri },
2345 { X86::ROL16ri_NF_ND, X86::ROL16ri_NF },
2346 { X86::ROL32r1_ND, X86::ROL32r1 },
2347 { X86::ROL32r1_NF_ND, X86::ROL32r1_NF },
2348 { X86::ROL32rCL_ND, X86::ROL32rCL },
2349 { X86::ROL32rCL_NF_ND, X86::ROL32rCL_NF },
2350 { X86::ROL32ri_ND, X86::ROL32ri },
2351 { X86::ROL32ri_NF_ND, X86::ROL32ri_NF },
2352 { X86::ROL64r1_ND, X86::ROL64r1 },
2353 { X86::ROL64r1_NF_ND, X86::ROL64r1_NF },
2354 { X86::ROL64rCL_ND, X86::ROL64rCL },
2355 { X86::ROL64rCL_NF_ND, X86::ROL64rCL_NF },
2356 { X86::ROL64ri_ND, X86::ROL64ri },
2357 { X86::ROL64ri_NF_ND, X86::ROL64ri_NF },
2358 { X86::ROL8r1_ND, X86::ROL8r1 },
2359 { X86::ROL8r1_NF_ND, X86::ROL8r1_NF },
2360 { X86::ROL8rCL_ND, X86::ROL8rCL },
2361 { X86::ROL8rCL_NF_ND, X86::ROL8rCL_NF },
2362 { X86::ROL8ri_ND, X86::ROL8ri },
2363 { X86::ROL8ri_NF_ND, X86::ROL8ri_NF },
2364 { X86::ROR16r1_ND, X86::ROR16r1 },
2365 { X86::ROR16r1_NF_ND, X86::ROR16r1_NF },
2366 { X86::ROR16rCL_ND, X86::ROR16rCL },
2367 { X86::ROR16rCL_NF_ND, X86::ROR16rCL_NF },
2368 { X86::ROR16ri_ND, X86::ROR16ri },
2369 { X86::ROR16ri_NF_ND, X86::ROR16ri_NF },
2370 { X86::ROR32r1_ND, X86::ROR32r1 },
2371 { X86::ROR32r1_NF_ND, X86::ROR32r1_NF },
2372 { X86::ROR32rCL_ND, X86::ROR32rCL },
2373 { X86::ROR32rCL_NF_ND, X86::ROR32rCL_NF },
2374 { X86::ROR32ri_ND, X86::ROR32ri },
2375 { X86::ROR32ri_NF_ND, X86::ROR32ri_NF },
2376 { X86::ROR64r1_ND, X86::ROR64r1 },
2377 { X86::ROR64r1_NF_ND, X86::ROR64r1_NF },
2378 { X86::ROR64rCL_ND, X86::ROR64rCL },
2379 { X86::ROR64rCL_NF_ND, X86::ROR64rCL_NF },
2380 { X86::ROR64ri_ND, X86::ROR64ri },
2381 { X86::ROR64ri_NF_ND, X86::ROR64ri_NF },
2382 { X86::ROR8r1_ND, X86::ROR8r1 },
2383 { X86::ROR8r1_NF_ND, X86::ROR8r1_NF },
2384 { X86::ROR8rCL_ND, X86::ROR8rCL },
2385 { X86::ROR8rCL_NF_ND, X86::ROR8rCL_NF },
2386 { X86::ROR8ri_ND, X86::ROR8ri },
2387 { X86::ROR8ri_NF_ND, X86::ROR8ri_NF },
2388 { X86::SAR16r1_ND, X86::SAR16r1 },
2389 { X86::SAR16r1_NF_ND, X86::SAR16r1_NF },
2390 { X86::SAR16rCL_ND, X86::SAR16rCL },
2391 { X86::SAR16rCL_NF_ND, X86::SAR16rCL_NF },
2392 { X86::SAR16ri_ND, X86::SAR16ri },
2393 { X86::SAR16ri_NF_ND, X86::SAR16ri_NF },
2394 { X86::SAR32r1_ND, X86::SAR32r1 },
2395 { X86::SAR32r1_NF_ND, X86::SAR32r1_NF },
2396 { X86::SAR32rCL_ND, X86::SAR32rCL },
2397 { X86::SAR32rCL_NF_ND, X86::SAR32rCL_NF },
2398 { X86::SAR32ri_ND, X86::SAR32ri },
2399 { X86::SAR32ri_NF_ND, X86::SAR32ri_NF },
2400 { X86::SAR64r1_ND, X86::SAR64r1 },
2401 { X86::SAR64r1_NF_ND, X86::SAR64r1_NF },
2402 { X86::SAR64rCL_ND, X86::SAR64rCL },
2403 { X86::SAR64rCL_NF_ND, X86::SAR64rCL_NF },
2404 { X86::SAR64ri_ND, X86::SAR64ri },
2405 { X86::SAR64ri_NF_ND, X86::SAR64ri_NF },
2406 { X86::SAR8r1_ND, X86::SAR8r1 },
2407 { X86::SAR8r1_NF_ND, X86::SAR8r1_NF },
2408 { X86::SAR8rCL_ND, X86::SAR8rCL },
2409 { X86::SAR8rCL_NF_ND, X86::SAR8rCL_NF },
2410 { X86::SAR8ri_ND, X86::SAR8ri },
2411 { X86::SAR8ri_NF_ND, X86::SAR8ri_NF },
2412 { X86::SBB16ri8_ND, X86::SBB16ri8 },
2413 { X86::SBB16ri_ND, X86::SBB16ri },
2414 { X86::SBB16rm_ND, X86::SBB16rm },
2415 { X86::SBB16rr_ND, X86::SBB16rr },
2416 { X86::SBB32ri8_ND, X86::SBB32ri8 },
2417 { X86::SBB32ri_ND, X86::SBB32ri },
2418 { X86::SBB32rm_ND, X86::SBB32rm },
2419 { X86::SBB32rr_ND, X86::SBB32rr },
2420 { X86::SBB64ri32_ND, X86::SBB64ri32 },
2421 { X86::SBB64ri8_ND, X86::SBB64ri8 },
2422 { X86::SBB64rm_ND, X86::SBB64rm },
2423 { X86::SBB64rr_ND, X86::SBB64rr },
2424 { X86::SBB8ri_ND, X86::SBB8ri },
2425 { X86::SBB8rm_ND, X86::SBB8rm },
2426 { X86::SBB8rr_ND, X86::SBB8rr },
2427 { X86::SHL16r1_ND, X86::SHL16r1 },
2428 { X86::SHL16r1_NF_ND, X86::SHL16r1_NF },
2429 { X86::SHL16rCL_ND, X86::SHL16rCL },
2430 { X86::SHL16rCL_NF_ND, X86::SHL16rCL_NF },
2431 { X86::SHL16ri_ND, X86::SHL16ri },
2432 { X86::SHL16ri_NF_ND, X86::SHL16ri_NF },
2433 { X86::SHL32r1_ND, X86::SHL32r1 },
2434 { X86::SHL32r1_NF_ND, X86::SHL32r1_NF },
2435 { X86::SHL32rCL_ND, X86::SHL32rCL },
2436 { X86::SHL32rCL_NF_ND, X86::SHL32rCL_NF },
2437 { X86::SHL32ri_ND, X86::SHL32ri },
2438 { X86::SHL32ri_NF_ND, X86::SHL32ri_NF },
2439 { X86::SHL64r1_ND, X86::SHL64r1 },
2440 { X86::SHL64r1_NF_ND, X86::SHL64r1_NF },
2441 { X86::SHL64rCL_ND, X86::SHL64rCL },
2442 { X86::SHL64rCL_NF_ND, X86::SHL64rCL_NF },
2443 { X86::SHL64ri_ND, X86::SHL64ri },
2444 { X86::SHL64ri_NF_ND, X86::SHL64ri_NF },
2445 { X86::SHL8r1_ND, X86::SHL8r1 },
2446 { X86::SHL8r1_NF_ND, X86::SHL8r1_NF },
2447 { X86::SHL8rCL_ND, X86::SHL8rCL },
2448 { X86::SHL8rCL_NF_ND, X86::SHL8rCL_NF },
2449 { X86::SHL8ri_ND, X86::SHL8ri },
2450 { X86::SHL8ri_NF_ND, X86::SHL8ri_NF },
2451 { X86::SHLD16rrCL_ND, X86::SHLD16rrCL },
2452 { X86::SHLD16rrCL_NF_ND, X86::SHLD16rrCL_NF },
2453 { X86::SHLD16rri8_ND, X86::SHLD16rri8 },
2454 { X86::SHLD16rri8_NF_ND, X86::SHLD16rri8_NF },
2455 { X86::SHLD32rrCL_ND, X86::SHLD32rrCL },
2456 { X86::SHLD32rrCL_NF_ND, X86::SHLD32rrCL_NF },
2457 { X86::SHLD32rri8_ND, X86::SHLD32rri8 },
2458 { X86::SHLD32rri8_NF_ND, X86::SHLD32rri8_NF },
2459 { X86::SHLD64rrCL_ND, X86::SHLD64rrCL },
2460 { X86::SHLD64rrCL_NF_ND, X86::SHLD64rrCL_NF },
2461 { X86::SHLD64rri8_ND, X86::SHLD64rri8 },
2462 { X86::SHLD64rri8_NF_ND, X86::SHLD64rri8_NF },
2463 { X86::SHR16r1_ND, X86::SHR16r1 },
2464 { X86::SHR16r1_NF_ND, X86::SHR16r1_NF },
2465 { X86::SHR16rCL_ND, X86::SHR16rCL },
2466 { X86::SHR16rCL_NF_ND, X86::SHR16rCL_NF },
2467 { X86::SHR16ri_ND, X86::SHR16ri },
2468 { X86::SHR16ri_NF_ND, X86::SHR16ri_NF },
2469 { X86::SHR32r1_ND, X86::SHR32r1 },
2470 { X86::SHR32r1_NF_ND, X86::SHR32r1_NF },
2471 { X86::SHR32rCL_ND, X86::SHR32rCL },
2472 { X86::SHR32rCL_NF_ND, X86::SHR32rCL_NF },
2473 { X86::SHR32ri_ND, X86::SHR32ri },
2474 { X86::SHR32ri_NF_ND, X86::SHR32ri_NF },
2475 { X86::SHR64r1_ND, X86::SHR64r1 },
2476 { X86::SHR64r1_NF_ND, X86::SHR64r1_NF },
2477 { X86::SHR64rCL_ND, X86::SHR64rCL },
2478 { X86::SHR64rCL_NF_ND, X86::SHR64rCL_NF },
2479 { X86::SHR64ri_ND, X86::SHR64ri },
2480 { X86::SHR64ri_NF_ND, X86::SHR64ri_NF },
2481 { X86::SHR8r1_ND, X86::SHR8r1 },
2482 { X86::SHR8r1_NF_ND, X86::SHR8r1_NF },
2483 { X86::SHR8rCL_ND, X86::SHR8rCL },
2484 { X86::SHR8rCL_NF_ND, X86::SHR8rCL_NF },
2485 { X86::SHR8ri_ND, X86::SHR8ri },
2486 { X86::SHR8ri_NF_ND, X86::SHR8ri_NF },
2487 { X86::SHRD16rrCL_ND, X86::SHRD16rrCL },
2488 { X86::SHRD16rrCL_NF_ND, X86::SHRD16rrCL_NF },
2489 { X86::SHRD16rri8_ND, X86::SHRD16rri8 },
2490 { X86::SHRD16rri8_NF_ND, X86::SHRD16rri8_NF },
2491 { X86::SHRD32rrCL_ND, X86::SHRD32rrCL },
2492 { X86::SHRD32rrCL_NF_ND, X86::SHRD32rrCL_NF },
2493 { X86::SHRD32rri8_ND, X86::SHRD32rri8 },
2494 { X86::SHRD32rri8_NF_ND, X86::SHRD32rri8_NF },
2495 { X86::SHRD64rrCL_ND, X86::SHRD64rrCL },
2496 { X86::SHRD64rrCL_NF_ND, X86::SHRD64rrCL_NF },
2497 { X86::SHRD64rri8_ND, X86::SHRD64rri8 },
2498 { X86::SHRD64rri8_NF_ND, X86::SHRD64rri8_NF },
2499 { X86::SUB16ri8_ND, X86::SUB16ri8 },
2500 { X86::SUB16ri8_NF_ND, X86::SUB16ri8_NF },
2501 { X86::SUB16ri_ND, X86::SUB16ri },
2502 { X86::SUB16ri_NF_ND, X86::SUB16ri_NF },
2503 { X86::SUB16rm_ND, X86::SUB16rm },
2504 { X86::SUB16rm_NF_ND, X86::SUB16rm_NF },
2505 { X86::SUB16rr_ND, X86::SUB16rr },
2506 { X86::SUB16rr_NF_ND, X86::SUB16rr_NF },
2507 { X86::SUB32ri8_ND, X86::SUB32ri8 },
2508 { X86::SUB32ri8_NF_ND, X86::SUB32ri8_NF },
2509 { X86::SUB32ri_ND, X86::SUB32ri },
2510 { X86::SUB32ri_NF_ND, X86::SUB32ri_NF },
2511 { X86::SUB32rm_ND, X86::SUB32rm },
2512 { X86::SUB32rm_NF_ND, X86::SUB32rm_NF },
2513 { X86::SUB32rr_ND, X86::SUB32rr },
2514 { X86::SUB32rr_NF_ND, X86::SUB32rr_NF },
2515 { X86::SUB64ri32_ND, X86::SUB64ri32 },
2516 { X86::SUB64ri32_NF_ND, X86::SUB64ri32_NF },
2517 { X86::SUB64ri8_ND, X86::SUB64ri8 },
2518 { X86::SUB64ri8_NF_ND, X86::SUB64ri8_NF },
2519 { X86::SUB64rm_ND, X86::SUB64rm },
2520 { X86::SUB64rm_NF_ND, X86::SUB64rm_NF },
2521 { X86::SUB64rr_ND, X86::SUB64rr },
2522 { X86::SUB64rr_NF_ND, X86::SUB64rr_NF },
2523 { X86::SUB8ri_ND, X86::SUB8ri },
2524 { X86::SUB8ri_NF_ND, X86::SUB8ri_NF },
2525 { X86::SUB8rm_ND, X86::SUB8rm },
2526 { X86::SUB8rm_NF_ND, X86::SUB8rm_NF },
2527 { X86::SUB8rr_ND, X86::SUB8rr },
2528 { X86::SUB8rr_NF_ND, X86::SUB8rr_NF },
2529 { X86::XOR16ri8_ND, X86::XOR16ri8 },
2530 { X86::XOR16ri8_NF_ND, X86::XOR16ri8_NF },
2531 { X86::XOR16ri_ND, X86::XOR16ri },
2532 { X86::XOR16ri_NF_ND, X86::XOR16ri_NF },
2533 { X86::XOR16rm_ND, X86::XOR16rm },
2534 { X86::XOR16rm_NF_ND, X86::XOR16rm_NF },
2535 { X86::XOR16rr_ND, X86::XOR16rr },
2536 { X86::XOR16rr_NF_ND, X86::XOR16rr_NF },
2537 { X86::XOR32ri8_ND, X86::XOR32ri8 },
2538 { X86::XOR32ri8_NF_ND, X86::XOR32ri8_NF },
2539 { X86::XOR32ri_ND, X86::XOR32ri },
2540 { X86::XOR32ri_NF_ND, X86::XOR32ri_NF },
2541 { X86::XOR32rm_ND, X86::XOR32rm },
2542 { X86::XOR32rm_NF_ND, X86::XOR32rm_NF },
2543 { X86::XOR32rr_ND, X86::XOR32rr },
2544 { X86::XOR32rr_NF_ND, X86::XOR32rr_NF },
2545 { X86::XOR64ri32_ND, X86::XOR64ri32 },
2546 { X86::XOR64ri32_NF_ND, X86::XOR64ri32_NF },
2547 { X86::XOR64ri8_ND, X86::XOR64ri8 },
2548 { X86::XOR64ri8_NF_ND, X86::XOR64ri8_NF },
2549 { X86::XOR64rm_ND, X86::XOR64rm },
2550 { X86::XOR64rm_NF_ND, X86::XOR64rm_NF },
2551 { X86::XOR64rr_ND, X86::XOR64rr },
2552 { X86::XOR64rr_NF_ND, X86::XOR64rr_NF },
2553 { X86::XOR8ri_ND, X86::XOR8ri },
2554 { X86::XOR8ri_NF_ND, X86::XOR8ri_NF },
2555 { X86::XOR8rm_ND, X86::XOR8rm },
2556 { X86::XOR8rm_NF_ND, X86::XOR8rm_NF },
2557 { X86::XOR8rr_ND, X86::XOR8rr },
2558 { X86::XOR8rr_NF_ND, X86::XOR8rr_NF },
2559};
2560
2561#endif // GET_X86_ND2NONND_TABLE
2562
2563
2564#ifdef GET_X86_SSE2AVX_TABLE
2565static const X86TableEntry X86SSE2AVXTable[] = {
2566 { .OldOpc: X86::ADDPDrm, .NewOpc: X86::VADDPDrm },
2567 { .OldOpc: X86::ADDPDrr, .NewOpc: X86::VADDPDrr },
2568 { .OldOpc: X86::ADDPSrm, .NewOpc: X86::VADDPSrm },
2569 { .OldOpc: X86::ADDPSrr, .NewOpc: X86::VADDPSrr },
2570 { .OldOpc: X86::ADDSDrm, .NewOpc: X86::VADDSDrm },
2571 { .OldOpc: X86::ADDSDrm_Int, .NewOpc: X86::VADDSDrm_Int },
2572 { .OldOpc: X86::ADDSDrr, .NewOpc: X86::VADDSDrr },
2573 { .OldOpc: X86::ADDSDrr_Int, .NewOpc: X86::VADDSDrr_Int },
2574 { .OldOpc: X86::ADDSSrm, .NewOpc: X86::VADDSSrm },
2575 { .OldOpc: X86::ADDSSrm_Int, .NewOpc: X86::VADDSSrm_Int },
2576 { .OldOpc: X86::ADDSSrr, .NewOpc: X86::VADDSSrr },
2577 { .OldOpc: X86::ADDSSrr_Int, .NewOpc: X86::VADDSSrr_Int },
2578 { .OldOpc: X86::ADDSUBPDrm, .NewOpc: X86::VADDSUBPDrm },
2579 { .OldOpc: X86::ADDSUBPDrr, .NewOpc: X86::VADDSUBPDrr },
2580 { .OldOpc: X86::ADDSUBPSrm, .NewOpc: X86::VADDSUBPSrm },
2581 { .OldOpc: X86::ADDSUBPSrr, .NewOpc: X86::VADDSUBPSrr },
2582 { .OldOpc: X86::AESDECLASTrm, .NewOpc: X86::VAESDECLASTrm },
2583 { .OldOpc: X86::AESDECLASTrr, .NewOpc: X86::VAESDECLASTrr },
2584 { .OldOpc: X86::AESDECrm, .NewOpc: X86::VAESDECrm },
2585 { .OldOpc: X86::AESDECrr, .NewOpc: X86::VAESDECrr },
2586 { .OldOpc: X86::AESENCLASTrm, .NewOpc: X86::VAESENCLASTrm },
2587 { .OldOpc: X86::AESENCLASTrr, .NewOpc: X86::VAESENCLASTrr },
2588 { .OldOpc: X86::AESENCrm, .NewOpc: X86::VAESENCrm },
2589 { .OldOpc: X86::AESENCrr, .NewOpc: X86::VAESENCrr },
2590 { .OldOpc: X86::AESIMCrm, .NewOpc: X86::VAESIMCrm },
2591 { .OldOpc: X86::AESIMCrr, .NewOpc: X86::VAESIMCrr },
2592 { .OldOpc: X86::AESKEYGENASSIST128rm, .NewOpc: X86::VAESKEYGENASSIST128rm },
2593 { .OldOpc: X86::AESKEYGENASSIST128rr, .NewOpc: X86::VAESKEYGENASSIST128rr },
2594 { .OldOpc: X86::ANDNPDrm, .NewOpc: X86::VANDNPDrm },
2595 { .OldOpc: X86::ANDNPDrr, .NewOpc: X86::VANDNPDrr },
2596 { .OldOpc: X86::ANDNPSrm, .NewOpc: X86::VANDNPSrm },
2597 { .OldOpc: X86::ANDNPSrr, .NewOpc: X86::VANDNPSrr },
2598 { .OldOpc: X86::ANDPDrm, .NewOpc: X86::VANDPDrm },
2599 { .OldOpc: X86::ANDPDrr, .NewOpc: X86::VANDPDrr },
2600 { .OldOpc: X86::ANDPSrm, .NewOpc: X86::VANDPSrm },
2601 { .OldOpc: X86::ANDPSrr, .NewOpc: X86::VANDPSrr },
2602 { .OldOpc: X86::BLENDPDrmi, .NewOpc: X86::VBLENDPDrmi },
2603 { .OldOpc: X86::BLENDPDrri, .NewOpc: X86::VBLENDPDrri },
2604 { .OldOpc: X86::BLENDPSrmi, .NewOpc: X86::VBLENDPSrmi },
2605 { .OldOpc: X86::BLENDPSrri, .NewOpc: X86::VBLENDPSrri },
2606 { .OldOpc: X86::BLENDVPDrm0, .NewOpc: X86::VBLENDVPDrmr },
2607 { .OldOpc: X86::BLENDVPDrr0, .NewOpc: X86::VBLENDVPDrrr },
2608 { .OldOpc: X86::BLENDVPSrm0, .NewOpc: X86::VBLENDVPSrmr },
2609 { .OldOpc: X86::BLENDVPSrr0, .NewOpc: X86::VBLENDVPSrrr },
2610 { .OldOpc: X86::CMPPDrmi, .NewOpc: X86::VCMPPDrmi },
2611 { .OldOpc: X86::CMPPDrri, .NewOpc: X86::VCMPPDrri },
2612 { .OldOpc: X86::CMPPSrmi, .NewOpc: X86::VCMPPSrmi },
2613 { .OldOpc: X86::CMPPSrri, .NewOpc: X86::VCMPPSrri },
2614 { .OldOpc: X86::CMPSDrmi, .NewOpc: X86::VCMPSDrmi },
2615 { .OldOpc: X86::CMPSDrmi_Int, .NewOpc: X86::VCMPSDrmi_Int },
2616 { .OldOpc: X86::CMPSDrri, .NewOpc: X86::VCMPSDrri },
2617 { .OldOpc: X86::CMPSDrri_Int, .NewOpc: X86::VCMPSDrri_Int },
2618 { .OldOpc: X86::CMPSSrmi, .NewOpc: X86::VCMPSSrmi },
2619 { .OldOpc: X86::CMPSSrmi_Int, .NewOpc: X86::VCMPSSrmi_Int },
2620 { .OldOpc: X86::CMPSSrri, .NewOpc: X86::VCMPSSrri },
2621 { .OldOpc: X86::CMPSSrri_Int, .NewOpc: X86::VCMPSSrri_Int },
2622 { .OldOpc: X86::COMISDrm, .NewOpc: X86::VCOMISDrm },
2623 { .OldOpc: X86::COMISDrm_Int, .NewOpc: X86::VCOMISDrm_Int },
2624 { .OldOpc: X86::COMISDrr, .NewOpc: X86::VCOMISDrr },
2625 { .OldOpc: X86::COMISDrr_Int, .NewOpc: X86::VCOMISDrr_Int },
2626 { .OldOpc: X86::COMISSrm, .NewOpc: X86::VCOMISSrm },
2627 { .OldOpc: X86::COMISSrm_Int, .NewOpc: X86::VCOMISSrm_Int },
2628 { .OldOpc: X86::COMISSrr, .NewOpc: X86::VCOMISSrr },
2629 { .OldOpc: X86::COMISSrr_Int, .NewOpc: X86::VCOMISSrr_Int },
2630 { .OldOpc: X86::CVTDQ2PDrm, .NewOpc: X86::VCVTDQ2PDrm },
2631 { .OldOpc: X86::CVTDQ2PDrr, .NewOpc: X86::VCVTDQ2PDrr },
2632 { .OldOpc: X86::CVTDQ2PSrm, .NewOpc: X86::VCVTDQ2PSrm },
2633 { .OldOpc: X86::CVTDQ2PSrr, .NewOpc: X86::VCVTDQ2PSrr },
2634 { .OldOpc: X86::CVTPD2DQrm, .NewOpc: X86::VCVTPD2DQrm },
2635 { .OldOpc: X86::CVTPD2DQrr, .NewOpc: X86::VCVTPD2DQrr },
2636 { .OldOpc: X86::CVTPD2PSrm, .NewOpc: X86::VCVTPD2PSrm },
2637 { .OldOpc: X86::CVTPD2PSrr, .NewOpc: X86::VCVTPD2PSrr },
2638 { .OldOpc: X86::CVTPS2DQrm, .NewOpc: X86::VCVTPS2DQrm },
2639 { .OldOpc: X86::CVTPS2DQrr, .NewOpc: X86::VCVTPS2DQrr },
2640 { .OldOpc: X86::CVTPS2PDrm, .NewOpc: X86::VCVTPS2PDrm },
2641 { .OldOpc: X86::CVTPS2PDrr, .NewOpc: X86::VCVTPS2PDrr },
2642 { .OldOpc: X86::CVTSD2SI64rm, .NewOpc: X86::VCVTSD2SI64rm },
2643 { .OldOpc: X86::CVTSD2SI64rm_Int, .NewOpc: X86::VCVTSD2SI64rm_Int },
2644 { .OldOpc: X86::CVTSD2SI64rr, .NewOpc: X86::VCVTSD2SI64rr },
2645 { .OldOpc: X86::CVTSD2SI64rr_Int, .NewOpc: X86::VCVTSD2SI64rr_Int },
2646 { .OldOpc: X86::CVTSD2SIrm, .NewOpc: X86::VCVTSD2SIrm },
2647 { .OldOpc: X86::CVTSD2SIrm_Int, .NewOpc: X86::VCVTSD2SIrm_Int },
2648 { .OldOpc: X86::CVTSD2SIrr, .NewOpc: X86::VCVTSD2SIrr },
2649 { .OldOpc: X86::CVTSD2SIrr_Int, .NewOpc: X86::VCVTSD2SIrr_Int },
2650 { .OldOpc: X86::CVTSD2SSrm, .NewOpc: X86::VCVTSD2SSrm },
2651 { .OldOpc: X86::CVTSD2SSrm_Int, .NewOpc: X86::VCVTSD2SSrm_Int },
2652 { .OldOpc: X86::CVTSD2SSrr, .NewOpc: X86::VCVTSD2SSrr },
2653 { .OldOpc: X86::CVTSD2SSrr_Int, .NewOpc: X86::VCVTSD2SSrr_Int },
2654 { .OldOpc: X86::CVTSI2SDrm, .NewOpc: X86::VCVTSI2SDrm },
2655 { .OldOpc: X86::CVTSI2SDrm_Int, .NewOpc: X86::VCVTSI2SDrm_Int },
2656 { .OldOpc: X86::CVTSI2SDrr, .NewOpc: X86::VCVTSI2SDrr },
2657 { .OldOpc: X86::CVTSI2SDrr_Int, .NewOpc: X86::VCVTSI2SDrr_Int },
2658 { .OldOpc: X86::CVTSI2SSrm, .NewOpc: X86::VCVTSI2SSrm },
2659 { .OldOpc: X86::CVTSI2SSrm_Int, .NewOpc: X86::VCVTSI2SSrm_Int },
2660 { .OldOpc: X86::CVTSI2SSrr, .NewOpc: X86::VCVTSI2SSrr },
2661 { .OldOpc: X86::CVTSI2SSrr_Int, .NewOpc: X86::VCVTSI2SSrr_Int },
2662 { .OldOpc: X86::CVTSI642SDrm, .NewOpc: X86::VCVTSI642SDrm },
2663 { .OldOpc: X86::CVTSI642SDrm_Int, .NewOpc: X86::VCVTSI642SDrm_Int },
2664 { .OldOpc: X86::CVTSI642SDrr, .NewOpc: X86::VCVTSI642SDrr },
2665 { .OldOpc: X86::CVTSI642SDrr_Int, .NewOpc: X86::VCVTSI642SDrr_Int },
2666 { .OldOpc: X86::CVTSI642SSrm, .NewOpc: X86::VCVTSI642SSrm },
2667 { .OldOpc: X86::CVTSI642SSrm_Int, .NewOpc: X86::VCVTSI642SSrm_Int },
2668 { .OldOpc: X86::CVTSI642SSrr, .NewOpc: X86::VCVTSI642SSrr },
2669 { .OldOpc: X86::CVTSI642SSrr_Int, .NewOpc: X86::VCVTSI642SSrr_Int },
2670 { .OldOpc: X86::CVTSS2SDrm, .NewOpc: X86::VCVTSS2SDrm },
2671 { .OldOpc: X86::CVTSS2SDrm_Int, .NewOpc: X86::VCVTSS2SDrm_Int },
2672 { .OldOpc: X86::CVTSS2SDrr, .NewOpc: X86::VCVTSS2SDrr },
2673 { .OldOpc: X86::CVTSS2SDrr_Int, .NewOpc: X86::VCVTSS2SDrr_Int },
2674 { .OldOpc: X86::CVTSS2SI64rm, .NewOpc: X86::VCVTSS2SI64rm },
2675 { .OldOpc: X86::CVTSS2SI64rm_Int, .NewOpc: X86::VCVTSS2SI64rm_Int },
2676 { .OldOpc: X86::CVTSS2SI64rr, .NewOpc: X86::VCVTSS2SI64rr },
2677 { .OldOpc: X86::CVTSS2SI64rr_Int, .NewOpc: X86::VCVTSS2SI64rr_Int },
2678 { .OldOpc: X86::CVTSS2SIrm, .NewOpc: X86::VCVTSS2SIrm },
2679 { .OldOpc: X86::CVTSS2SIrm_Int, .NewOpc: X86::VCVTSS2SIrm_Int },
2680 { .OldOpc: X86::CVTSS2SIrr, .NewOpc: X86::VCVTSS2SIrr },
2681 { .OldOpc: X86::CVTSS2SIrr_Int, .NewOpc: X86::VCVTSS2SIrr_Int },
2682 { .OldOpc: X86::CVTTPD2DQrm, .NewOpc: X86::VCVTTPD2DQrm },
2683 { .OldOpc: X86::CVTTPD2DQrr, .NewOpc: X86::VCVTTPD2DQrr },
2684 { .OldOpc: X86::CVTTPS2DQrm, .NewOpc: X86::VCVTTPS2DQrm },
2685 { .OldOpc: X86::CVTTPS2DQrr, .NewOpc: X86::VCVTTPS2DQrr },
2686 { .OldOpc: X86::CVTTSD2SI64rm, .NewOpc: X86::VCVTTSD2SI64rm },
2687 { .OldOpc: X86::CVTTSD2SI64rm_Int, .NewOpc: X86::VCVTTSD2SI64rm_Int },
2688 { .OldOpc: X86::CVTTSD2SI64rr, .NewOpc: X86::VCVTTSD2SI64rr },
2689 { .OldOpc: X86::CVTTSD2SI64rr_Int, .NewOpc: X86::VCVTTSD2SI64rr_Int },
2690 { .OldOpc: X86::CVTTSD2SIrm, .NewOpc: X86::VCVTTSD2SIrm },
2691 { .OldOpc: X86::CVTTSD2SIrm_Int, .NewOpc: X86::VCVTTSD2SIrm_Int },
2692 { .OldOpc: X86::CVTTSD2SIrr, .NewOpc: X86::VCVTTSD2SIrr },
2693 { .OldOpc: X86::CVTTSD2SIrr_Int, .NewOpc: X86::VCVTTSD2SIrr_Int },
2694 { .OldOpc: X86::CVTTSS2SI64rm, .NewOpc: X86::VCVTTSS2SI64rm },
2695 { .OldOpc: X86::CVTTSS2SI64rm_Int, .NewOpc: X86::VCVTTSS2SI64rm_Int },
2696 { .OldOpc: X86::CVTTSS2SI64rr, .NewOpc: X86::VCVTTSS2SI64rr },
2697 { .OldOpc: X86::CVTTSS2SI64rr_Int, .NewOpc: X86::VCVTTSS2SI64rr_Int },
2698 { .OldOpc: X86::CVTTSS2SIrm, .NewOpc: X86::VCVTTSS2SIrm },
2699 { .OldOpc: X86::CVTTSS2SIrm_Int, .NewOpc: X86::VCVTTSS2SIrm_Int },
2700 { .OldOpc: X86::CVTTSS2SIrr, .NewOpc: X86::VCVTTSS2SIrr },
2701 { .OldOpc: X86::CVTTSS2SIrr_Int, .NewOpc: X86::VCVTTSS2SIrr_Int },
2702 { .OldOpc: X86::DIVPDrm, .NewOpc: X86::VDIVPDrm },
2703 { .OldOpc: X86::DIVPDrr, .NewOpc: X86::VDIVPDrr },
2704 { .OldOpc: X86::DIVPSrm, .NewOpc: X86::VDIVPSrm },
2705 { .OldOpc: X86::DIVPSrr, .NewOpc: X86::VDIVPSrr },
2706 { .OldOpc: X86::DIVSDrm, .NewOpc: X86::VDIVSDrm },
2707 { .OldOpc: X86::DIVSDrm_Int, .NewOpc: X86::VDIVSDrm_Int },
2708 { .OldOpc: X86::DIVSDrr, .NewOpc: X86::VDIVSDrr },
2709 { .OldOpc: X86::DIVSDrr_Int, .NewOpc: X86::VDIVSDrr_Int },
2710 { .OldOpc: X86::DIVSSrm, .NewOpc: X86::VDIVSSrm },
2711 { .OldOpc: X86::DIVSSrm_Int, .NewOpc: X86::VDIVSSrm_Int },
2712 { .OldOpc: X86::DIVSSrr, .NewOpc: X86::VDIVSSrr },
2713 { .OldOpc: X86::DIVSSrr_Int, .NewOpc: X86::VDIVSSrr_Int },
2714 { .OldOpc: X86::DPPDrmi, .NewOpc: X86::VDPPDrmi },
2715 { .OldOpc: X86::DPPDrri, .NewOpc: X86::VDPPDrri },
2716 { .OldOpc: X86::DPPSrmi, .NewOpc: X86::VDPPSrmi },
2717 { .OldOpc: X86::DPPSrri, .NewOpc: X86::VDPPSrri },
2718 { .OldOpc: X86::EXTRACTPSmr, .NewOpc: X86::VEXTRACTPSmr },
2719 { .OldOpc: X86::EXTRACTPSrr, .NewOpc: X86::VEXTRACTPSrr },
2720 { .OldOpc: X86::GF2P8AFFINEINVQBrmi, .NewOpc: X86::VGF2P8AFFINEINVQBrmi },
2721 { .OldOpc: X86::GF2P8AFFINEINVQBrri, .NewOpc: X86::VGF2P8AFFINEINVQBrri },
2722 { .OldOpc: X86::GF2P8AFFINEQBrmi, .NewOpc: X86::VGF2P8AFFINEQBrmi },
2723 { .OldOpc: X86::GF2P8AFFINEQBrri, .NewOpc: X86::VGF2P8AFFINEQBrri },
2724 { .OldOpc: X86::GF2P8MULBrm, .NewOpc: X86::VGF2P8MULBrm },
2725 { .OldOpc: X86::GF2P8MULBrr, .NewOpc: X86::VGF2P8MULBrr },
2726 { .OldOpc: X86::HADDPDrm, .NewOpc: X86::VHADDPDrm },
2727 { .OldOpc: X86::HADDPDrr, .NewOpc: X86::VHADDPDrr },
2728 { .OldOpc: X86::HADDPSrm, .NewOpc: X86::VHADDPSrm },
2729 { .OldOpc: X86::HADDPSrr, .NewOpc: X86::VHADDPSrr },
2730 { .OldOpc: X86::HSUBPDrm, .NewOpc: X86::VHSUBPDrm },
2731 { .OldOpc: X86::HSUBPDrr, .NewOpc: X86::VHSUBPDrr },
2732 { .OldOpc: X86::HSUBPSrm, .NewOpc: X86::VHSUBPSrm },
2733 { .OldOpc: X86::HSUBPSrr, .NewOpc: X86::VHSUBPSrr },
2734 { .OldOpc: X86::INSERTPSrm, .NewOpc: X86::VINSERTPSrm },
2735 { .OldOpc: X86::INSERTPSrr, .NewOpc: X86::VINSERTPSrr },
2736 { .OldOpc: X86::LDDQUrm, .NewOpc: X86::VLDDQUrm },
2737 { .OldOpc: X86::LDMXCSR, .NewOpc: X86::VLDMXCSR },
2738 { .OldOpc: X86::MASKMOVDQU, .NewOpc: X86::VMASKMOVDQU },
2739 { .OldOpc: X86::MASKMOVDQU64, .NewOpc: X86::VMASKMOVDQU64 },
2740 { .OldOpc: X86::MAXCPDrm, .NewOpc: X86::VMAXCPDrm },
2741 { .OldOpc: X86::MAXCPDrr, .NewOpc: X86::VMAXCPDrr },
2742 { .OldOpc: X86::MAXCPSrm, .NewOpc: X86::VMAXCPSrm },
2743 { .OldOpc: X86::MAXCPSrr, .NewOpc: X86::VMAXCPSrr },
2744 { .OldOpc: X86::MAXCSDrm, .NewOpc: X86::VMAXCSDrm },
2745 { .OldOpc: X86::MAXCSDrr, .NewOpc: X86::VMAXCSDrr },
2746 { .OldOpc: X86::MAXCSSrm, .NewOpc: X86::VMAXCSSrm },
2747 { .OldOpc: X86::MAXCSSrr, .NewOpc: X86::VMAXCSSrr },
2748 { .OldOpc: X86::MAXPDrm, .NewOpc: X86::VMAXPDrm },
2749 { .OldOpc: X86::MAXPDrr, .NewOpc: X86::VMAXPDrr },
2750 { .OldOpc: X86::MAXPSrm, .NewOpc: X86::VMAXPSrm },
2751 { .OldOpc: X86::MAXPSrr, .NewOpc: X86::VMAXPSrr },
2752 { .OldOpc: X86::MAXSDrm, .NewOpc: X86::VMAXSDrm },
2753 { .OldOpc: X86::MAXSDrm_Int, .NewOpc: X86::VMAXSDrm_Int },
2754 { .OldOpc: X86::MAXSDrr, .NewOpc: X86::VMAXSDrr },
2755 { .OldOpc: X86::MAXSDrr_Int, .NewOpc: X86::VMAXSDrr_Int },
2756 { .OldOpc: X86::MAXSSrm, .NewOpc: X86::VMAXSSrm },
2757 { .OldOpc: X86::MAXSSrm_Int, .NewOpc: X86::VMAXSSrm_Int },
2758 { .OldOpc: X86::MAXSSrr, .NewOpc: X86::VMAXSSrr },
2759 { .OldOpc: X86::MAXSSrr_Int, .NewOpc: X86::VMAXSSrr_Int },
2760 { .OldOpc: X86::MINCPDrm, .NewOpc: X86::VMINCPDrm },
2761 { .OldOpc: X86::MINCPDrr, .NewOpc: X86::VMINCPDrr },
2762 { .OldOpc: X86::MINCPSrm, .NewOpc: X86::VMINCPSrm },
2763 { .OldOpc: X86::MINCPSrr, .NewOpc: X86::VMINCPSrr },
2764 { .OldOpc: X86::MINCSDrm, .NewOpc: X86::VMINCSDrm },
2765 { .OldOpc: X86::MINCSDrr, .NewOpc: X86::VMINCSDrr },
2766 { .OldOpc: X86::MINCSSrm, .NewOpc: X86::VMINCSSrm },
2767 { .OldOpc: X86::MINCSSrr, .NewOpc: X86::VMINCSSrr },
2768 { .OldOpc: X86::MINPDrm, .NewOpc: X86::VMINPDrm },
2769 { .OldOpc: X86::MINPDrr, .NewOpc: X86::VMINPDrr },
2770 { .OldOpc: X86::MINPSrm, .NewOpc: X86::VMINPSrm },
2771 { .OldOpc: X86::MINPSrr, .NewOpc: X86::VMINPSrr },
2772 { .OldOpc: X86::MINSDrm, .NewOpc: X86::VMINSDrm },
2773 { .OldOpc: X86::MINSDrm_Int, .NewOpc: X86::VMINSDrm_Int },
2774 { .OldOpc: X86::MINSDrr, .NewOpc: X86::VMINSDrr },
2775 { .OldOpc: X86::MINSDrr_Int, .NewOpc: X86::VMINSDrr_Int },
2776 { .OldOpc: X86::MINSSrm, .NewOpc: X86::VMINSSrm },
2777 { .OldOpc: X86::MINSSrm_Int, .NewOpc: X86::VMINSSrm_Int },
2778 { .OldOpc: X86::MINSSrr, .NewOpc: X86::VMINSSrr },
2779 { .OldOpc: X86::MINSSrr_Int, .NewOpc: X86::VMINSSrr_Int },
2780 { .OldOpc: X86::MOV64toPQIrm, .NewOpc: X86::VMOV64toPQIrm },
2781 { .OldOpc: X86::MOV64toPQIrr, .NewOpc: X86::VMOV64toPQIrr },
2782 { .OldOpc: X86::MOV64toSDrr, .NewOpc: X86::VMOV64toSDrr },
2783 { .OldOpc: X86::MOVAPDmr, .NewOpc: X86::VMOVAPDmr },
2784 { .OldOpc: X86::MOVAPDrm, .NewOpc: X86::VMOVAPDrm },
2785 { .OldOpc: X86::MOVAPDrr, .NewOpc: X86::VMOVAPDrr },
2786 { .OldOpc: X86::MOVAPSmr, .NewOpc: X86::VMOVAPSmr },
2787 { .OldOpc: X86::MOVAPSrm, .NewOpc: X86::VMOVAPSrm },
2788 { .OldOpc: X86::MOVAPSrr, .NewOpc: X86::VMOVAPSrr },
2789 { .OldOpc: X86::MOVDDUPrm, .NewOpc: X86::VMOVDDUPrm },
2790 { .OldOpc: X86::MOVDDUPrr, .NewOpc: X86::VMOVDDUPrr },
2791 { .OldOpc: X86::MOVDI2PDIrm, .NewOpc: X86::VMOVDI2PDIrm },
2792 { .OldOpc: X86::MOVDI2PDIrr, .NewOpc: X86::VMOVDI2PDIrr },
2793 { .OldOpc: X86::MOVDI2SSrr, .NewOpc: X86::VMOVDI2SSrr },
2794 { .OldOpc: X86::MOVDQAmr, .NewOpc: X86::VMOVDQAmr },
2795 { .OldOpc: X86::MOVDQArm, .NewOpc: X86::VMOVDQArm },
2796 { .OldOpc: X86::MOVDQArr, .NewOpc: X86::VMOVDQArr },
2797 { .OldOpc: X86::MOVDQUmr, .NewOpc: X86::VMOVDQUmr },
2798 { .OldOpc: X86::MOVDQUrm, .NewOpc: X86::VMOVDQUrm },
2799 { .OldOpc: X86::MOVDQUrr, .NewOpc: X86::VMOVDQUrr },
2800 { .OldOpc: X86::MOVHLPSrr, .NewOpc: X86::VMOVHLPSrr },
2801 { .OldOpc: X86::MOVHPDmr, .NewOpc: X86::VMOVHPDmr },
2802 { .OldOpc: X86::MOVHPDrm, .NewOpc: X86::VMOVHPDrm },
2803 { .OldOpc: X86::MOVHPSmr, .NewOpc: X86::VMOVHPSmr },
2804 { .OldOpc: X86::MOVHPSrm, .NewOpc: X86::VMOVHPSrm },
2805 { .OldOpc: X86::MOVLHPSrr, .NewOpc: X86::VMOVLHPSrr },
2806 { .OldOpc: X86::MOVLPDmr, .NewOpc: X86::VMOVLPDmr },
2807 { .OldOpc: X86::MOVLPDrm, .NewOpc: X86::VMOVLPDrm },
2808 { .OldOpc: X86::MOVLPSmr, .NewOpc: X86::VMOVLPSmr },
2809 { .OldOpc: X86::MOVLPSrm, .NewOpc: X86::VMOVLPSrm },
2810 { .OldOpc: X86::MOVMSKPDrr, .NewOpc: X86::VMOVMSKPDrr },
2811 { .OldOpc: X86::MOVMSKPSrr, .NewOpc: X86::VMOVMSKPSrr },
2812 { .OldOpc: X86::MOVNTDQArm, .NewOpc: X86::VMOVNTDQArm },
2813 { .OldOpc: X86::MOVNTDQmr, .NewOpc: X86::VMOVNTDQmr },
2814 { .OldOpc: X86::MOVNTPDmr, .NewOpc: X86::VMOVNTPDmr },
2815 { .OldOpc: X86::MOVNTPSmr, .NewOpc: X86::VMOVNTPSmr },
2816 { .OldOpc: X86::MOVPDI2DImr, .NewOpc: X86::VMOVPDI2DImr },
2817 { .OldOpc: X86::MOVPDI2DIrr, .NewOpc: X86::VMOVPDI2DIrr },
2818 { .OldOpc: X86::MOVPQI2QImr, .NewOpc: X86::VMOVPQI2QImr },
2819 { .OldOpc: X86::MOVPQI2QIrr, .NewOpc: X86::VMOVPQI2QIrr },
2820 { .OldOpc: X86::MOVPQIto64mr, .NewOpc: X86::VMOVPQIto64mr },
2821 { .OldOpc: X86::MOVPQIto64rr, .NewOpc: X86::VMOVPQIto64rr },
2822 { .OldOpc: X86::MOVQI2PQIrm, .NewOpc: X86::VMOVQI2PQIrm },
2823 { .OldOpc: X86::MOVSDmr, .NewOpc: X86::VMOVSDmr },
2824 { .OldOpc: X86::MOVSDrm, .NewOpc: X86::VMOVSDrm },
2825 { .OldOpc: X86::MOVSDrm_alt, .NewOpc: X86::VMOVSDrm_alt },
2826 { .OldOpc: X86::MOVSDrr, .NewOpc: X86::VMOVSDrr },
2827 { .OldOpc: X86::MOVSDto64rr, .NewOpc: X86::VMOVSDto64rr },
2828 { .OldOpc: X86::MOVSHDUPrm, .NewOpc: X86::VMOVSHDUPrm },
2829 { .OldOpc: X86::MOVSHDUPrr, .NewOpc: X86::VMOVSHDUPrr },
2830 { .OldOpc: X86::MOVSLDUPrm, .NewOpc: X86::VMOVSLDUPrm },
2831 { .OldOpc: X86::MOVSLDUPrr, .NewOpc: X86::VMOVSLDUPrr },
2832 { .OldOpc: X86::MOVSS2DIrr, .NewOpc: X86::VMOVSS2DIrr },
2833 { .OldOpc: X86::MOVSSmr, .NewOpc: X86::VMOVSSmr },
2834 { .OldOpc: X86::MOVSSrm, .NewOpc: X86::VMOVSSrm },
2835 { .OldOpc: X86::MOVSSrm_alt, .NewOpc: X86::VMOVSSrm_alt },
2836 { .OldOpc: X86::MOVSSrr, .NewOpc: X86::VMOVSSrr },
2837 { .OldOpc: X86::MOVUPDmr, .NewOpc: X86::VMOVUPDmr },
2838 { .OldOpc: X86::MOVUPDrm, .NewOpc: X86::VMOVUPDrm },
2839 { .OldOpc: X86::MOVUPDrr, .NewOpc: X86::VMOVUPDrr },
2840 { .OldOpc: X86::MOVUPSmr, .NewOpc: X86::VMOVUPSmr },
2841 { .OldOpc: X86::MOVUPSrm, .NewOpc: X86::VMOVUPSrm },
2842 { .OldOpc: X86::MOVUPSrr, .NewOpc: X86::VMOVUPSrr },
2843 { .OldOpc: X86::MOVZPQILo2PQIrr, .NewOpc: X86::VMOVZPQILo2PQIrr },
2844 { .OldOpc: X86::MPSADBWrmi, .NewOpc: X86::VMPSADBWrmi },
2845 { .OldOpc: X86::MPSADBWrri, .NewOpc: X86::VMPSADBWrri },
2846 { .OldOpc: X86::MULPDrm, .NewOpc: X86::VMULPDrm },
2847 { .OldOpc: X86::MULPDrr, .NewOpc: X86::VMULPDrr },
2848 { .OldOpc: X86::MULPSrm, .NewOpc: X86::VMULPSrm },
2849 { .OldOpc: X86::MULPSrr, .NewOpc: X86::VMULPSrr },
2850 { .OldOpc: X86::MULSDrm, .NewOpc: X86::VMULSDrm },
2851 { .OldOpc: X86::MULSDrm_Int, .NewOpc: X86::VMULSDrm_Int },
2852 { .OldOpc: X86::MULSDrr, .NewOpc: X86::VMULSDrr },
2853 { .OldOpc: X86::MULSDrr_Int, .NewOpc: X86::VMULSDrr_Int },
2854 { .OldOpc: X86::MULSSrm, .NewOpc: X86::VMULSSrm },
2855 { .OldOpc: X86::MULSSrm_Int, .NewOpc: X86::VMULSSrm_Int },
2856 { .OldOpc: X86::MULSSrr, .NewOpc: X86::VMULSSrr },
2857 { .OldOpc: X86::MULSSrr_Int, .NewOpc: X86::VMULSSrr_Int },
2858 { .OldOpc: X86::ORPDrm, .NewOpc: X86::VORPDrm },
2859 { .OldOpc: X86::ORPDrr, .NewOpc: X86::VORPDrr },
2860 { .OldOpc: X86::ORPSrm, .NewOpc: X86::VORPSrm },
2861 { .OldOpc: X86::ORPSrr, .NewOpc: X86::VORPSrr },
2862 { .OldOpc: X86::PABSBrm, .NewOpc: X86::VPABSBrm },
2863 { .OldOpc: X86::PABSBrr, .NewOpc: X86::VPABSBrr },
2864 { .OldOpc: X86::PABSDrm, .NewOpc: X86::VPABSDrm },
2865 { .OldOpc: X86::PABSDrr, .NewOpc: X86::VPABSDrr },
2866 { .OldOpc: X86::PABSWrm, .NewOpc: X86::VPABSWrm },
2867 { .OldOpc: X86::PABSWrr, .NewOpc: X86::VPABSWrr },
2868 { .OldOpc: X86::PACKSSDWrm, .NewOpc: X86::VPACKSSDWrm },
2869 { .OldOpc: X86::PACKSSDWrr, .NewOpc: X86::VPACKSSDWrr },
2870 { .OldOpc: X86::PACKSSWBrm, .NewOpc: X86::VPACKSSWBrm },
2871 { .OldOpc: X86::PACKSSWBrr, .NewOpc: X86::VPACKSSWBrr },
2872 { .OldOpc: X86::PACKUSDWrm, .NewOpc: X86::VPACKUSDWrm },
2873 { .OldOpc: X86::PACKUSDWrr, .NewOpc: X86::VPACKUSDWrr },
2874 { .OldOpc: X86::PACKUSWBrm, .NewOpc: X86::VPACKUSWBrm },
2875 { .OldOpc: X86::PACKUSWBrr, .NewOpc: X86::VPACKUSWBrr },
2876 { .OldOpc: X86::PADDBrm, .NewOpc: X86::VPADDBrm },
2877 { .OldOpc: X86::PADDBrr, .NewOpc: X86::VPADDBrr },
2878 { .OldOpc: X86::PADDDrm, .NewOpc: X86::VPADDDrm },
2879 { .OldOpc: X86::PADDDrr, .NewOpc: X86::VPADDDrr },
2880 { .OldOpc: X86::PADDQrm, .NewOpc: X86::VPADDQrm },
2881 { .OldOpc: X86::PADDQrr, .NewOpc: X86::VPADDQrr },
2882 { .OldOpc: X86::PADDSBrm, .NewOpc: X86::VPADDSBrm },
2883 { .OldOpc: X86::PADDSBrr, .NewOpc: X86::VPADDSBrr },
2884 { .OldOpc: X86::PADDSWrm, .NewOpc: X86::VPADDSWrm },
2885 { .OldOpc: X86::PADDSWrr, .NewOpc: X86::VPADDSWrr },
2886 { .OldOpc: X86::PADDUSBrm, .NewOpc: X86::VPADDUSBrm },
2887 { .OldOpc: X86::PADDUSBrr, .NewOpc: X86::VPADDUSBrr },
2888 { .OldOpc: X86::PADDUSWrm, .NewOpc: X86::VPADDUSWrm },
2889 { .OldOpc: X86::PADDUSWrr, .NewOpc: X86::VPADDUSWrr },
2890 { .OldOpc: X86::PADDWrm, .NewOpc: X86::VPADDWrm },
2891 { .OldOpc: X86::PADDWrr, .NewOpc: X86::VPADDWrr },
2892 { .OldOpc: X86::PALIGNRrmi, .NewOpc: X86::VPALIGNRrmi },
2893 { .OldOpc: X86::PALIGNRrri, .NewOpc: X86::VPALIGNRrri },
2894 { .OldOpc: X86::PANDNrm, .NewOpc: X86::VPANDNrm },
2895 { .OldOpc: X86::PANDNrr, .NewOpc: X86::VPANDNrr },
2896 { .OldOpc: X86::PANDrm, .NewOpc: X86::VPANDrm },
2897 { .OldOpc: X86::PANDrr, .NewOpc: X86::VPANDrr },
2898 { .OldOpc: X86::PAVGBrm, .NewOpc: X86::VPAVGBrm },
2899 { .OldOpc: X86::PAVGBrr, .NewOpc: X86::VPAVGBrr },
2900 { .OldOpc: X86::PAVGWrm, .NewOpc: X86::VPAVGWrm },
2901 { .OldOpc: X86::PAVGWrr, .NewOpc: X86::VPAVGWrr },
2902 { .OldOpc: X86::PBLENDVBrm0, .NewOpc: X86::VPBLENDVBrmr },
2903 { .OldOpc: X86::PBLENDVBrr0, .NewOpc: X86::VPBLENDVBrrr },
2904 { .OldOpc: X86::PBLENDWrmi, .NewOpc: X86::VPBLENDWrmi },
2905 { .OldOpc: X86::PBLENDWrri, .NewOpc: X86::VPBLENDWrri },
2906 { .OldOpc: X86::PCLMULQDQrmi, .NewOpc: X86::VPCLMULQDQrmi },
2907 { .OldOpc: X86::PCLMULQDQrri, .NewOpc: X86::VPCLMULQDQrri },
2908 { .OldOpc: X86::PCMPEQBrm, .NewOpc: X86::VPCMPEQBrm },
2909 { .OldOpc: X86::PCMPEQBrr, .NewOpc: X86::VPCMPEQBrr },
2910 { .OldOpc: X86::PCMPEQDrm, .NewOpc: X86::VPCMPEQDrm },
2911 { .OldOpc: X86::PCMPEQDrr, .NewOpc: X86::VPCMPEQDrr },
2912 { .OldOpc: X86::PCMPEQQrm, .NewOpc: X86::VPCMPEQQrm },
2913 { .OldOpc: X86::PCMPEQQrr, .NewOpc: X86::VPCMPEQQrr },
2914 { .OldOpc: X86::PCMPEQWrm, .NewOpc: X86::VPCMPEQWrm },
2915 { .OldOpc: X86::PCMPEQWrr, .NewOpc: X86::VPCMPEQWrr },
2916 { .OldOpc: X86::PCMPESTRIrmi, .NewOpc: X86::VPCMPESTRIrmi },
2917 { .OldOpc: X86::PCMPESTRIrri, .NewOpc: X86::VPCMPESTRIrri },
2918 { .OldOpc: X86::PCMPESTRMrmi, .NewOpc: X86::VPCMPESTRMrmi },
2919 { .OldOpc: X86::PCMPESTRMrri, .NewOpc: X86::VPCMPESTRMrri },
2920 { .OldOpc: X86::PCMPGTBrm, .NewOpc: X86::VPCMPGTBrm },
2921 { .OldOpc: X86::PCMPGTBrr, .NewOpc: X86::VPCMPGTBrr },
2922 { .OldOpc: X86::PCMPGTDrm, .NewOpc: X86::VPCMPGTDrm },
2923 { .OldOpc: X86::PCMPGTDrr, .NewOpc: X86::VPCMPGTDrr },
2924 { .OldOpc: X86::PCMPGTQrm, .NewOpc: X86::VPCMPGTQrm },
2925 { .OldOpc: X86::PCMPGTQrr, .NewOpc: X86::VPCMPGTQrr },
2926 { .OldOpc: X86::PCMPGTWrm, .NewOpc: X86::VPCMPGTWrm },
2927 { .OldOpc: X86::PCMPGTWrr, .NewOpc: X86::VPCMPGTWrr },
2928 { .OldOpc: X86::PCMPISTRIrmi, .NewOpc: X86::VPCMPISTRIrmi },
2929 { .OldOpc: X86::PCMPISTRIrri, .NewOpc: X86::VPCMPISTRIrri },
2930 { .OldOpc: X86::PCMPISTRMrmi, .NewOpc: X86::VPCMPISTRMrmi },
2931 { .OldOpc: X86::PCMPISTRMrri, .NewOpc: X86::VPCMPISTRMrri },
2932 { .OldOpc: X86::PEXTRBmr, .NewOpc: X86::VPEXTRBmr },
2933 { .OldOpc: X86::PEXTRBrr, .NewOpc: X86::VPEXTRBrr },
2934 { .OldOpc: X86::PEXTRDmr, .NewOpc: X86::VPEXTRDmr },
2935 { .OldOpc: X86::PEXTRDrr, .NewOpc: X86::VPEXTRDrr },
2936 { .OldOpc: X86::PEXTRQmr, .NewOpc: X86::VPEXTRQmr },
2937 { .OldOpc: X86::PEXTRQrr, .NewOpc: X86::VPEXTRQrr },
2938 { .OldOpc: X86::PEXTRWmr, .NewOpc: X86::VPEXTRWmr },
2939 { .OldOpc: X86::PEXTRWrr, .NewOpc: X86::VPEXTRWrr },
2940 { .OldOpc: X86::PHADDDrm, .NewOpc: X86::VPHADDDrm },
2941 { .OldOpc: X86::PHADDDrr, .NewOpc: X86::VPHADDDrr },
2942 { .OldOpc: X86::PHADDSWrm, .NewOpc: X86::VPHADDSWrm },
2943 { .OldOpc: X86::PHADDSWrr, .NewOpc: X86::VPHADDSWrr },
2944 { .OldOpc: X86::PHADDWrm, .NewOpc: X86::VPHADDWrm },
2945 { .OldOpc: X86::PHADDWrr, .NewOpc: X86::VPHADDWrr },
2946 { .OldOpc: X86::PHMINPOSUWrm, .NewOpc: X86::VPHMINPOSUWrm },
2947 { .OldOpc: X86::PHMINPOSUWrr, .NewOpc: X86::VPHMINPOSUWrr },
2948 { .OldOpc: X86::PHSUBDrm, .NewOpc: X86::VPHSUBDrm },
2949 { .OldOpc: X86::PHSUBDrr, .NewOpc: X86::VPHSUBDrr },
2950 { .OldOpc: X86::PHSUBSWrm, .NewOpc: X86::VPHSUBSWrm },
2951 { .OldOpc: X86::PHSUBSWrr, .NewOpc: X86::VPHSUBSWrr },
2952 { .OldOpc: X86::PHSUBWrm, .NewOpc: X86::VPHSUBWrm },
2953 { .OldOpc: X86::PHSUBWrr, .NewOpc: X86::VPHSUBWrr },
2954 { .OldOpc: X86::PINSRBrm, .NewOpc: X86::VPINSRBrm },
2955 { .OldOpc: X86::PINSRBrr, .NewOpc: X86::VPINSRBrr },
2956 { .OldOpc: X86::PINSRDrm, .NewOpc: X86::VPINSRDrm },
2957 { .OldOpc: X86::PINSRDrr, .NewOpc: X86::VPINSRDrr },
2958 { .OldOpc: X86::PINSRQrm, .NewOpc: X86::VPINSRQrm },
2959 { .OldOpc: X86::PINSRQrr, .NewOpc: X86::VPINSRQrr },
2960 { .OldOpc: X86::PINSRWrm, .NewOpc: X86::VPINSRWrm },
2961 { .OldOpc: X86::PINSRWrr, .NewOpc: X86::VPINSRWrr },
2962 { .OldOpc: X86::PMADDUBSWrm, .NewOpc: X86::VPMADDUBSWrm },
2963 { .OldOpc: X86::PMADDUBSWrr, .NewOpc: X86::VPMADDUBSWrr },
2964 { .OldOpc: X86::PMADDWDrm, .NewOpc: X86::VPMADDWDrm },
2965 { .OldOpc: X86::PMADDWDrr, .NewOpc: X86::VPMADDWDrr },
2966 { .OldOpc: X86::PMAXSBrm, .NewOpc: X86::VPMAXSBrm },
2967 { .OldOpc: X86::PMAXSBrr, .NewOpc: X86::VPMAXSBrr },
2968 { .OldOpc: X86::PMAXSDrm, .NewOpc: X86::VPMAXSDrm },
2969 { .OldOpc: X86::PMAXSDrr, .NewOpc: X86::VPMAXSDrr },
2970 { .OldOpc: X86::PMAXSWrm, .NewOpc: X86::VPMAXSWrm },
2971 { .OldOpc: X86::PMAXSWrr, .NewOpc: X86::VPMAXSWrr },
2972 { .OldOpc: X86::PMAXUBrm, .NewOpc: X86::VPMAXUBrm },
2973 { .OldOpc: X86::PMAXUBrr, .NewOpc: X86::VPMAXUBrr },
2974 { .OldOpc: X86::PMAXUDrm, .NewOpc: X86::VPMAXUDrm },
2975 { .OldOpc: X86::PMAXUDrr, .NewOpc: X86::VPMAXUDrr },
2976 { .OldOpc: X86::PMAXUWrm, .NewOpc: X86::VPMAXUWrm },
2977 { .OldOpc: X86::PMAXUWrr, .NewOpc: X86::VPMAXUWrr },
2978 { .OldOpc: X86::PMINSBrm, .NewOpc: X86::VPMINSBrm },
2979 { .OldOpc: X86::PMINSBrr, .NewOpc: X86::VPMINSBrr },
2980 { .OldOpc: X86::PMINSDrm, .NewOpc: X86::VPMINSDrm },
2981 { .OldOpc: X86::PMINSDrr, .NewOpc: X86::VPMINSDrr },
2982 { .OldOpc: X86::PMINSWrm, .NewOpc: X86::VPMINSWrm },
2983 { .OldOpc: X86::PMINSWrr, .NewOpc: X86::VPMINSWrr },
2984 { .OldOpc: X86::PMINUBrm, .NewOpc: X86::VPMINUBrm },
2985 { .OldOpc: X86::PMINUBrr, .NewOpc: X86::VPMINUBrr },
2986 { .OldOpc: X86::PMINUDrm, .NewOpc: X86::VPMINUDrm },
2987 { .OldOpc: X86::PMINUDrr, .NewOpc: X86::VPMINUDrr },
2988 { .OldOpc: X86::PMINUWrm, .NewOpc: X86::VPMINUWrm },
2989 { .OldOpc: X86::PMINUWrr, .NewOpc: X86::VPMINUWrr },
2990 { .OldOpc: X86::PMOVMSKBrr, .NewOpc: X86::VPMOVMSKBrr },
2991 { .OldOpc: X86::PMOVSXBDrm, .NewOpc: X86::VPMOVSXBDrm },
2992 { .OldOpc: X86::PMOVSXBDrr, .NewOpc: X86::VPMOVSXBDrr },
2993 { .OldOpc: X86::PMOVSXBQrm, .NewOpc: X86::VPMOVSXBQrm },
2994 { .OldOpc: X86::PMOVSXBQrr, .NewOpc: X86::VPMOVSXBQrr },
2995 { .OldOpc: X86::PMOVSXBWrm, .NewOpc: X86::VPMOVSXBWrm },
2996 { .OldOpc: X86::PMOVSXBWrr, .NewOpc: X86::VPMOVSXBWrr },
2997 { .OldOpc: X86::PMOVSXDQrm, .NewOpc: X86::VPMOVSXDQrm },
2998 { .OldOpc: X86::PMOVSXDQrr, .NewOpc: X86::VPMOVSXDQrr },
2999 { .OldOpc: X86::PMOVSXWDrm, .NewOpc: X86::VPMOVSXWDrm },
3000 { .OldOpc: X86::PMOVSXWDrr, .NewOpc: X86::VPMOVSXWDrr },
3001 { .OldOpc: X86::PMOVSXWQrm, .NewOpc: X86::VPMOVSXWQrm },
3002 { .OldOpc: X86::PMOVSXWQrr, .NewOpc: X86::VPMOVSXWQrr },
3003 { .OldOpc: X86::PMOVZXBDrm, .NewOpc: X86::VPMOVZXBDrm },
3004 { .OldOpc: X86::PMOVZXBDrr, .NewOpc: X86::VPMOVZXBDrr },
3005 { .OldOpc: X86::PMOVZXBQrm, .NewOpc: X86::VPMOVZXBQrm },
3006 { .OldOpc: X86::PMOVZXBQrr, .NewOpc: X86::VPMOVZXBQrr },
3007 { .OldOpc: X86::PMOVZXBWrm, .NewOpc: X86::VPMOVZXBWrm },
3008 { .OldOpc: X86::PMOVZXBWrr, .NewOpc: X86::VPMOVZXBWrr },
3009 { .OldOpc: X86::PMOVZXDQrm, .NewOpc: X86::VPMOVZXDQrm },
3010 { .OldOpc: X86::PMOVZXDQrr, .NewOpc: X86::VPMOVZXDQrr },
3011 { .OldOpc: X86::PMOVZXWDrm, .NewOpc: X86::VPMOVZXWDrm },
3012 { .OldOpc: X86::PMOVZXWDrr, .NewOpc: X86::VPMOVZXWDrr },
3013 { .OldOpc: X86::PMOVZXWQrm, .NewOpc: X86::VPMOVZXWQrm },
3014 { .OldOpc: X86::PMOVZXWQrr, .NewOpc: X86::VPMOVZXWQrr },
3015 { .OldOpc: X86::PMULDQrm, .NewOpc: X86::VPMULDQrm },
3016 { .OldOpc: X86::PMULDQrr, .NewOpc: X86::VPMULDQrr },
3017 { .OldOpc: X86::PMULHRSWrm, .NewOpc: X86::VPMULHRSWrm },
3018 { .OldOpc: X86::PMULHRSWrr, .NewOpc: X86::VPMULHRSWrr },
3019 { .OldOpc: X86::PMULHUWrm, .NewOpc: X86::VPMULHUWrm },
3020 { .OldOpc: X86::PMULHUWrr, .NewOpc: X86::VPMULHUWrr },
3021 { .OldOpc: X86::PMULHWrm, .NewOpc: X86::VPMULHWrm },
3022 { .OldOpc: X86::PMULHWrr, .NewOpc: X86::VPMULHWrr },
3023 { .OldOpc: X86::PMULLDrm, .NewOpc: X86::VPMULLDrm },
3024 { .OldOpc: X86::PMULLDrr, .NewOpc: X86::VPMULLDrr },
3025 { .OldOpc: X86::PMULLWrm, .NewOpc: X86::VPMULLWrm },
3026 { .OldOpc: X86::PMULLWrr, .NewOpc: X86::VPMULLWrr },
3027 { .OldOpc: X86::PMULUDQrm, .NewOpc: X86::VPMULUDQrm },
3028 { .OldOpc: X86::PMULUDQrr, .NewOpc: X86::VPMULUDQrr },
3029 { .OldOpc: X86::PORrm, .NewOpc: X86::VPORrm },
3030 { .OldOpc: X86::PORrr, .NewOpc: X86::VPORrr },
3031 { .OldOpc: X86::PSADBWrm, .NewOpc: X86::VPSADBWrm },
3032 { .OldOpc: X86::PSADBWrr, .NewOpc: X86::VPSADBWrr },
3033 { .OldOpc: X86::PSHUFBrm, .NewOpc: X86::VPSHUFBrm },
3034 { .OldOpc: X86::PSHUFBrr, .NewOpc: X86::VPSHUFBrr },
3035 { .OldOpc: X86::PSHUFDmi, .NewOpc: X86::VPSHUFDmi },
3036 { .OldOpc: X86::PSHUFDri, .NewOpc: X86::VPSHUFDri },
3037 { .OldOpc: X86::PSHUFHWmi, .NewOpc: X86::VPSHUFHWmi },
3038 { .OldOpc: X86::PSHUFHWri, .NewOpc: X86::VPSHUFHWri },
3039 { .OldOpc: X86::PSHUFLWmi, .NewOpc: X86::VPSHUFLWmi },
3040 { .OldOpc: X86::PSHUFLWri, .NewOpc: X86::VPSHUFLWri },
3041 { .OldOpc: X86::PSIGNBrm, .NewOpc: X86::VPSIGNBrm },
3042 { .OldOpc: X86::PSIGNBrr, .NewOpc: X86::VPSIGNBrr },
3043 { .OldOpc: X86::PSIGNDrm, .NewOpc: X86::VPSIGNDrm },
3044 { .OldOpc: X86::PSIGNDrr, .NewOpc: X86::VPSIGNDrr },
3045 { .OldOpc: X86::PSIGNWrm, .NewOpc: X86::VPSIGNWrm },
3046 { .OldOpc: X86::PSIGNWrr, .NewOpc: X86::VPSIGNWrr },
3047 { .OldOpc: X86::PSLLDQri, .NewOpc: X86::VPSLLDQri },
3048 { .OldOpc: X86::PSLLDri, .NewOpc: X86::VPSLLDri },
3049 { .OldOpc: X86::PSLLDrm, .NewOpc: X86::VPSLLDrm },
3050 { .OldOpc: X86::PSLLDrr, .NewOpc: X86::VPSLLDrr },
3051 { .OldOpc: X86::PSLLQri, .NewOpc: X86::VPSLLQri },
3052 { .OldOpc: X86::PSLLQrm, .NewOpc: X86::VPSLLQrm },
3053 { .OldOpc: X86::PSLLQrr, .NewOpc: X86::VPSLLQrr },
3054 { .OldOpc: X86::PSLLWri, .NewOpc: X86::VPSLLWri },
3055 { .OldOpc: X86::PSLLWrm, .NewOpc: X86::VPSLLWrm },
3056 { .OldOpc: X86::PSLLWrr, .NewOpc: X86::VPSLLWrr },
3057 { .OldOpc: X86::PSRADri, .NewOpc: X86::VPSRADri },
3058 { .OldOpc: X86::PSRADrm, .NewOpc: X86::VPSRADrm },
3059 { .OldOpc: X86::PSRADrr, .NewOpc: X86::VPSRADrr },
3060 { .OldOpc: X86::PSRAWri, .NewOpc: X86::VPSRAWri },
3061 { .OldOpc: X86::PSRAWrm, .NewOpc: X86::VPSRAWrm },
3062 { .OldOpc: X86::PSRAWrr, .NewOpc: X86::VPSRAWrr },
3063 { .OldOpc: X86::PSRLDQri, .NewOpc: X86::VPSRLDQri },
3064 { .OldOpc: X86::PSRLDri, .NewOpc: X86::VPSRLDri },
3065 { .OldOpc: X86::PSRLDrm, .NewOpc: X86::VPSRLDrm },
3066 { .OldOpc: X86::PSRLDrr, .NewOpc: X86::VPSRLDrr },
3067 { .OldOpc: X86::PSRLQri, .NewOpc: X86::VPSRLQri },
3068 { .OldOpc: X86::PSRLQrm, .NewOpc: X86::VPSRLQrm },
3069 { .OldOpc: X86::PSRLQrr, .NewOpc: X86::VPSRLQrr },
3070 { .OldOpc: X86::PSRLWri, .NewOpc: X86::VPSRLWri },
3071 { .OldOpc: X86::PSRLWrm, .NewOpc: X86::VPSRLWrm },
3072 { .OldOpc: X86::PSRLWrr, .NewOpc: X86::VPSRLWrr },
3073 { .OldOpc: X86::PSUBBrm, .NewOpc: X86::VPSUBBrm },
3074 { .OldOpc: X86::PSUBBrr, .NewOpc: X86::VPSUBBrr },
3075 { .OldOpc: X86::PSUBDrm, .NewOpc: X86::VPSUBDrm },
3076 { .OldOpc: X86::PSUBDrr, .NewOpc: X86::VPSUBDrr },
3077 { .OldOpc: X86::PSUBQrm, .NewOpc: X86::VPSUBQrm },
3078 { .OldOpc: X86::PSUBQrr, .NewOpc: X86::VPSUBQrr },
3079 { .OldOpc: X86::PSUBSBrm, .NewOpc: X86::VPSUBSBrm },
3080 { .OldOpc: X86::PSUBSBrr, .NewOpc: X86::VPSUBSBrr },
3081 { .OldOpc: X86::PSUBSWrm, .NewOpc: X86::VPSUBSWrm },
3082 { .OldOpc: X86::PSUBSWrr, .NewOpc: X86::VPSUBSWrr },
3083 { .OldOpc: X86::PSUBUSBrm, .NewOpc: X86::VPSUBUSBrm },
3084 { .OldOpc: X86::PSUBUSBrr, .NewOpc: X86::VPSUBUSBrr },
3085 { .OldOpc: X86::PSUBUSWrm, .NewOpc: X86::VPSUBUSWrm },
3086 { .OldOpc: X86::PSUBUSWrr, .NewOpc: X86::VPSUBUSWrr },
3087 { .OldOpc: X86::PSUBWrm, .NewOpc: X86::VPSUBWrm },
3088 { .OldOpc: X86::PSUBWrr, .NewOpc: X86::VPSUBWrr },
3089 { .OldOpc: X86::PTESTrm, .NewOpc: X86::VPTESTrm },
3090 { .OldOpc: X86::PTESTrr, .NewOpc: X86::VPTESTrr },
3091 { .OldOpc: X86::PUNPCKHBWrm, .NewOpc: X86::VPUNPCKHBWrm },
3092 { .OldOpc: X86::PUNPCKHBWrr, .NewOpc: X86::VPUNPCKHBWrr },
3093 { .OldOpc: X86::PUNPCKHDQrm, .NewOpc: X86::VPUNPCKHDQrm },
3094 { .OldOpc: X86::PUNPCKHDQrr, .NewOpc: X86::VPUNPCKHDQrr },
3095 { .OldOpc: X86::PUNPCKHQDQrm, .NewOpc: X86::VPUNPCKHQDQrm },
3096 { .OldOpc: X86::PUNPCKHQDQrr, .NewOpc: X86::VPUNPCKHQDQrr },
3097 { .OldOpc: X86::PUNPCKHWDrm, .NewOpc: X86::VPUNPCKHWDrm },
3098 { .OldOpc: X86::PUNPCKHWDrr, .NewOpc: X86::VPUNPCKHWDrr },
3099 { .OldOpc: X86::PUNPCKLBWrm, .NewOpc: X86::VPUNPCKLBWrm },
3100 { .OldOpc: X86::PUNPCKLBWrr, .NewOpc: X86::VPUNPCKLBWrr },
3101 { .OldOpc: X86::PUNPCKLDQrm, .NewOpc: X86::VPUNPCKLDQrm },
3102 { .OldOpc: X86::PUNPCKLDQrr, .NewOpc: X86::VPUNPCKLDQrr },
3103 { .OldOpc: X86::PUNPCKLQDQrm, .NewOpc: X86::VPUNPCKLQDQrm },
3104 { .OldOpc: X86::PUNPCKLQDQrr, .NewOpc: X86::VPUNPCKLQDQrr },
3105 { .OldOpc: X86::PUNPCKLWDrm, .NewOpc: X86::VPUNPCKLWDrm },
3106 { .OldOpc: X86::PUNPCKLWDrr, .NewOpc: X86::VPUNPCKLWDrr },
3107 { .OldOpc: X86::PXORrm, .NewOpc: X86::VPXORrm },
3108 { .OldOpc: X86::PXORrr, .NewOpc: X86::VPXORrr },
3109 { .OldOpc: X86::RCPPSm, .NewOpc: X86::VRCPPSm },
3110 { .OldOpc: X86::RCPPSr, .NewOpc: X86::VRCPPSr },
3111 { .OldOpc: X86::RCPSSm, .NewOpc: X86::VRCPSSm },
3112 { .OldOpc: X86::RCPSSm_Int, .NewOpc: X86::VRCPSSm_Int },
3113 { .OldOpc: X86::RCPSSr, .NewOpc: X86::VRCPSSr },
3114 { .OldOpc: X86::RCPSSr_Int, .NewOpc: X86::VRCPSSr_Int },
3115 { .OldOpc: X86::ROUNDPDmi, .NewOpc: X86::VROUNDPDmi },
3116 { .OldOpc: X86::ROUNDPDri, .NewOpc: X86::VROUNDPDri },
3117 { .OldOpc: X86::ROUNDPSmi, .NewOpc: X86::VROUNDPSmi },
3118 { .OldOpc: X86::ROUNDPSri, .NewOpc: X86::VROUNDPSri },
3119 { .OldOpc: X86::ROUNDSDmi, .NewOpc: X86::VROUNDSDmi },
3120 { .OldOpc: X86::ROUNDSDmi_Int, .NewOpc: X86::VROUNDSDmi_Int },
3121 { .OldOpc: X86::ROUNDSDri, .NewOpc: X86::VROUNDSDri },
3122 { .OldOpc: X86::ROUNDSDri_Int, .NewOpc: X86::VROUNDSDri_Int },
3123 { .OldOpc: X86::ROUNDSSmi, .NewOpc: X86::VROUNDSSmi },
3124 { .OldOpc: X86::ROUNDSSmi_Int, .NewOpc: X86::VROUNDSSmi_Int },
3125 { .OldOpc: X86::ROUNDSSri, .NewOpc: X86::VROUNDSSri },
3126 { .OldOpc: X86::ROUNDSSri_Int, .NewOpc: X86::VROUNDSSri_Int },
3127 { .OldOpc: X86::RSQRTPSm, .NewOpc: X86::VRSQRTPSm },
3128 { .OldOpc: X86::RSQRTPSr, .NewOpc: X86::VRSQRTPSr },
3129 { .OldOpc: X86::RSQRTSSm, .NewOpc: X86::VRSQRTSSm },
3130 { .OldOpc: X86::RSQRTSSm_Int, .NewOpc: X86::VRSQRTSSm_Int },
3131 { .OldOpc: X86::RSQRTSSr, .NewOpc: X86::VRSQRTSSr },
3132 { .OldOpc: X86::RSQRTSSr_Int, .NewOpc: X86::VRSQRTSSr_Int },
3133 { .OldOpc: X86::SHUFPDrmi, .NewOpc: X86::VSHUFPDrmi },
3134 { .OldOpc: X86::SHUFPDrri, .NewOpc: X86::VSHUFPDrri },
3135 { .OldOpc: X86::SHUFPSrmi, .NewOpc: X86::VSHUFPSrmi },
3136 { .OldOpc: X86::SHUFPSrri, .NewOpc: X86::VSHUFPSrri },
3137 { .OldOpc: X86::SQRTPDm, .NewOpc: X86::VSQRTPDm },
3138 { .OldOpc: X86::SQRTPDr, .NewOpc: X86::VSQRTPDr },
3139 { .OldOpc: X86::SQRTPSm, .NewOpc: X86::VSQRTPSm },
3140 { .OldOpc: X86::SQRTPSr, .NewOpc: X86::VSQRTPSr },
3141 { .OldOpc: X86::SQRTSDm, .NewOpc: X86::VSQRTSDm },
3142 { .OldOpc: X86::SQRTSDm_Int, .NewOpc: X86::VSQRTSDm_Int },
3143 { .OldOpc: X86::SQRTSDr, .NewOpc: X86::VSQRTSDr },
3144 { .OldOpc: X86::SQRTSDr_Int, .NewOpc: X86::VSQRTSDr_Int },
3145 { .OldOpc: X86::SQRTSSm, .NewOpc: X86::VSQRTSSm },
3146 { .OldOpc: X86::SQRTSSm_Int, .NewOpc: X86::VSQRTSSm_Int },
3147 { .OldOpc: X86::SQRTSSr, .NewOpc: X86::VSQRTSSr },
3148 { .OldOpc: X86::SQRTSSr_Int, .NewOpc: X86::VSQRTSSr_Int },
3149 { .OldOpc: X86::STMXCSR, .NewOpc: X86::VSTMXCSR },
3150 { .OldOpc: X86::SUBPDrm, .NewOpc: X86::VSUBPDrm },
3151 { .OldOpc: X86::SUBPDrr, .NewOpc: X86::VSUBPDrr },
3152 { .OldOpc: X86::SUBPSrm, .NewOpc: X86::VSUBPSrm },
3153 { .OldOpc: X86::SUBPSrr, .NewOpc: X86::VSUBPSrr },
3154 { .OldOpc: X86::SUBSDrm, .NewOpc: X86::VSUBSDrm },
3155 { .OldOpc: X86::SUBSDrm_Int, .NewOpc: X86::VSUBSDrm_Int },
3156 { .OldOpc: X86::SUBSDrr, .NewOpc: X86::VSUBSDrr },
3157 { .OldOpc: X86::SUBSDrr_Int, .NewOpc: X86::VSUBSDrr_Int },
3158 { .OldOpc: X86::SUBSSrm, .NewOpc: X86::VSUBSSrm },
3159 { .OldOpc: X86::SUBSSrm_Int, .NewOpc: X86::VSUBSSrm_Int },
3160 { .OldOpc: X86::SUBSSrr, .NewOpc: X86::VSUBSSrr },
3161 { .OldOpc: X86::SUBSSrr_Int, .NewOpc: X86::VSUBSSrr_Int },
3162 { .OldOpc: X86::UCOMISDrm, .NewOpc: X86::VUCOMISDrm },
3163 { .OldOpc: X86::UCOMISDrm_Int, .NewOpc: X86::VUCOMISDrm_Int },
3164 { .OldOpc: X86::UCOMISDrr, .NewOpc: X86::VUCOMISDrr },
3165 { .OldOpc: X86::UCOMISDrr_Int, .NewOpc: X86::VUCOMISDrr_Int },
3166 { .OldOpc: X86::UCOMISSrm, .NewOpc: X86::VUCOMISSrm },
3167 { .OldOpc: X86::UCOMISSrm_Int, .NewOpc: X86::VUCOMISSrm_Int },
3168 { .OldOpc: X86::UCOMISSrr, .NewOpc: X86::VUCOMISSrr },
3169 { .OldOpc: X86::UCOMISSrr_Int, .NewOpc: X86::VUCOMISSrr_Int },
3170 { .OldOpc: X86::UNPCKHPDrm, .NewOpc: X86::VUNPCKHPDrm },
3171 { .OldOpc: X86::UNPCKHPDrr, .NewOpc: X86::VUNPCKHPDrr },
3172 { .OldOpc: X86::UNPCKHPSrm, .NewOpc: X86::VUNPCKHPSrm },
3173 { .OldOpc: X86::UNPCKHPSrr, .NewOpc: X86::VUNPCKHPSrr },
3174 { .OldOpc: X86::UNPCKLPDrm, .NewOpc: X86::VUNPCKLPDrm },
3175 { .OldOpc: X86::UNPCKLPDrr, .NewOpc: X86::VUNPCKLPDrr },
3176 { .OldOpc: X86::UNPCKLPSrm, .NewOpc: X86::VUNPCKLPSrm },
3177 { .OldOpc: X86::UNPCKLPSrr, .NewOpc: X86::VUNPCKLPSrr },
3178 { .OldOpc: X86::XORPDrm, .NewOpc: X86::VXORPDrm },
3179 { .OldOpc: X86::XORPDrr, .NewOpc: X86::VXORPDrr },
3180 { .OldOpc: X86::XORPSrm, .NewOpc: X86::VXORPSrm },
3181 { .OldOpc: X86::XORPSrr, .NewOpc: X86::VXORPSrr },
3182};
3183
3184#endif // GET_X86_SSE2AVX_TABLE
3185
3186