1 /// @file include-private/xed3-phash-vv1.h
2 
3 // This file was automatically generated.
4 // Do not edit this file.
5 
6 #if !defined(INCLUDE_PRIVATE_XED3_PHASH_VV1_H)
7 # define INCLUDE_PRIVATE_XED3_PHASH_VV1_H
8 /*BEGIN_LEGAL
9 
10 Copyright (c) 2018 Intel Corporation
11 
12   Licensed under the Apache License, Version 2.0 (the "License");
13   you may not use this file except in compliance with the License.
14   You may obtain a copy of the License at
15 
16       http://www.apache.org/licenses/LICENSE-2.0
17 
18   Unless required by applicable law or agreed to in writing, software
19   distributed under the License is distributed on an "AS IS" BASIS,
20   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21   See the License for the specific language governing permissions and
22   limitations under the License.
23 
24 END_LEGAL */
25 #include "xed-internal-header.h"
26 #include "xed3-operand-lu.h"
27 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x10_vv1(const xed_decoded_inst_t* d);
28 
29 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x11_vv1(const xed_decoded_inst_t* d);
30 
31 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x12_vv1(const xed_decoded_inst_t* d);
32 
33 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x13_vv1(const xed_decoded_inst_t* d);
34 
35 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x14_vv1(const xed_decoded_inst_t* d);
36 
37 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x15_vv1(const xed_decoded_inst_t* d);
38 
39 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x16_vv1(const xed_decoded_inst_t* d);
40 
41 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x17_vv1(const xed_decoded_inst_t* d);
42 
43 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x28_vv1(const xed_decoded_inst_t* d);
44 
45 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x29_vv1(const xed_decoded_inst_t* d);
46 
47 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x2a_vv1(const xed_decoded_inst_t* d);
48 
49 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x2b_vv1(const xed_decoded_inst_t* d);
50 
51 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x2c_vv1(const xed_decoded_inst_t* d);
52 
53 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x2d_vv1(const xed_decoded_inst_t* d);
54 
55 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x2e_vv1(const xed_decoded_inst_t* d);
56 
57 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x2f_vv1(const xed_decoded_inst_t* d);
58 
59 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x41_vv1(const xed_decoded_inst_t* d);
60 
61 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x42_vv1(const xed_decoded_inst_t* d);
62 
63 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x44_vv1(const xed_decoded_inst_t* d);
64 
65 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x45_vv1(const xed_decoded_inst_t* d);
66 
67 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x46_vv1(const xed_decoded_inst_t* d);
68 
69 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x47_vv1(const xed_decoded_inst_t* d);
70 
71 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x4a_vv1(const xed_decoded_inst_t* d);
72 
73 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x4b_vv1(const xed_decoded_inst_t* d);
74 
75 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x50_vv1(const xed_decoded_inst_t* d);
76 
77 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x51_vv1(const xed_decoded_inst_t* d);
78 
79 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x52_vv1(const xed_decoded_inst_t* d);
80 
81 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x53_vv1(const xed_decoded_inst_t* d);
82 
83 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x54_vv1(const xed_decoded_inst_t* d);
84 
85 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x55_vv1(const xed_decoded_inst_t* d);
86 
87 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x56_vv1(const xed_decoded_inst_t* d);
88 
89 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x57_vv1(const xed_decoded_inst_t* d);
90 
91 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x58_vv1(const xed_decoded_inst_t* d);
92 
93 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x59_vv1(const xed_decoded_inst_t* d);
94 
95 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x5a_vv1(const xed_decoded_inst_t* d);
96 
97 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x5b_vv1(const xed_decoded_inst_t* d);
98 
99 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x5c_vv1(const xed_decoded_inst_t* d);
100 
101 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x5d_vv1(const xed_decoded_inst_t* d);
102 
103 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x5e_vv1(const xed_decoded_inst_t* d);
104 
105 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x5f_vv1(const xed_decoded_inst_t* d);
106 
107 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x60_vv1(const xed_decoded_inst_t* d);
108 
109 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x61_vv1(const xed_decoded_inst_t* d);
110 
111 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x62_vv1(const xed_decoded_inst_t* d);
112 
113 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x63_vv1(const xed_decoded_inst_t* d);
114 
115 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x64_vv1(const xed_decoded_inst_t* d);
116 
117 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x65_vv1(const xed_decoded_inst_t* d);
118 
119 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x66_vv1(const xed_decoded_inst_t* d);
120 
121 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x67_vv1(const xed_decoded_inst_t* d);
122 
123 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x68_vv1(const xed_decoded_inst_t* d);
124 
125 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x69_vv1(const xed_decoded_inst_t* d);
126 
127 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x6a_vv1(const xed_decoded_inst_t* d);
128 
129 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x6b_vv1(const xed_decoded_inst_t* d);
130 
131 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x6c_vv1(const xed_decoded_inst_t* d);
132 
133 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x6d_vv1(const xed_decoded_inst_t* d);
134 
135 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x6e_vv1(const xed_decoded_inst_t* d);
136 
137 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x6f_vv1(const xed_decoded_inst_t* d);
138 
139 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x70_vv1(const xed_decoded_inst_t* d);
140 
141 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x71_vv1(const xed_decoded_inst_t* d);
142 
143 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x72_vv1(const xed_decoded_inst_t* d);
144 
145 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x73_vv1(const xed_decoded_inst_t* d);
146 
147 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x74_vv1(const xed_decoded_inst_t* d);
148 
149 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x75_vv1(const xed_decoded_inst_t* d);
150 
151 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x76_vv1(const xed_decoded_inst_t* d);
152 
153 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x77_vv1(const xed_decoded_inst_t* d);
154 
155 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x7c_vv1(const xed_decoded_inst_t* d);
156 
157 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x7d_vv1(const xed_decoded_inst_t* d);
158 
159 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x7e_vv1(const xed_decoded_inst_t* d);
160 
161 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x7f_vv1(const xed_decoded_inst_t* d);
162 
163 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x90_vv1(const xed_decoded_inst_t* d);
164 
165 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x91_vv1(const xed_decoded_inst_t* d);
166 
167 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x92_vv1(const xed_decoded_inst_t* d);
168 
169 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x93_vv1(const xed_decoded_inst_t* d);
170 
171 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x98_vv1(const xed_decoded_inst_t* d);
172 
173 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x99_vv1(const xed_decoded_inst_t* d);
174 
175 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xae_vv1(const xed_decoded_inst_t* d);
176 
177 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xc2_vv1(const xed_decoded_inst_t* d);
178 
179 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xc4_vv1(const xed_decoded_inst_t* d);
180 
181 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xc5_vv1(const xed_decoded_inst_t* d);
182 
183 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xc6_vv1(const xed_decoded_inst_t* d);
184 
185 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xd0_vv1(const xed_decoded_inst_t* d);
186 
187 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xd1_vv1(const xed_decoded_inst_t* d);
188 
189 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xd2_vv1(const xed_decoded_inst_t* d);
190 
191 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xd3_vv1(const xed_decoded_inst_t* d);
192 
193 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xd4_vv1(const xed_decoded_inst_t* d);
194 
195 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xd5_vv1(const xed_decoded_inst_t* d);
196 
197 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xd6_vv1(const xed_decoded_inst_t* d);
198 
199 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xd7_vv1(const xed_decoded_inst_t* d);
200 
201 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xd8_vv1(const xed_decoded_inst_t* d);
202 
203 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xd9_vv1(const xed_decoded_inst_t* d);
204 
205 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xda_vv1(const xed_decoded_inst_t* d);
206 
207 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xdb_vv1(const xed_decoded_inst_t* d);
208 
209 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xdc_vv1(const xed_decoded_inst_t* d);
210 
211 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xdd_vv1(const xed_decoded_inst_t* d);
212 
213 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xde_vv1(const xed_decoded_inst_t* d);
214 
215 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xdf_vv1(const xed_decoded_inst_t* d);
216 
217 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xe0_vv1(const xed_decoded_inst_t* d);
218 
219 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xe1_vv1(const xed_decoded_inst_t* d);
220 
221 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xe2_vv1(const xed_decoded_inst_t* d);
222 
223 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xe3_vv1(const xed_decoded_inst_t* d);
224 
225 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xe4_vv1(const xed_decoded_inst_t* d);
226 
227 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xe5_vv1(const xed_decoded_inst_t* d);
228 
229 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xe6_vv1(const xed_decoded_inst_t* d);
230 
231 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xe7_vv1(const xed_decoded_inst_t* d);
232 
233 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xe8_vv1(const xed_decoded_inst_t* d);
234 
235 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xe9_vv1(const xed_decoded_inst_t* d);
236 
237 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xea_vv1(const xed_decoded_inst_t* d);
238 
239 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xeb_vv1(const xed_decoded_inst_t* d);
240 
241 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xec_vv1(const xed_decoded_inst_t* d);
242 
243 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xed_vv1(const xed_decoded_inst_t* d);
244 
245 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xee_vv1(const xed_decoded_inst_t* d);
246 
247 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xef_vv1(const xed_decoded_inst_t* d);
248 
249 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xf0_vv1(const xed_decoded_inst_t* d);
250 
251 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xf1_vv1(const xed_decoded_inst_t* d);
252 
253 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xf2_vv1(const xed_decoded_inst_t* d);
254 
255 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xf3_vv1(const xed_decoded_inst_t* d);
256 
257 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xf4_vv1(const xed_decoded_inst_t* d);
258 
259 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xf5_vv1(const xed_decoded_inst_t* d);
260 
261 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xf6_vv1(const xed_decoded_inst_t* d);
262 
263 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xf7_vv1(const xed_decoded_inst_t* d);
264 
265 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xf8_vv1(const xed_decoded_inst_t* d);
266 
267 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xf9_vv1(const xed_decoded_inst_t* d);
268 
269 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xfa_vv1(const xed_decoded_inst_t* d);
270 
271 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xfb_vv1(const xed_decoded_inst_t* d);
272 
273 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xfc_vv1(const xed_decoded_inst_t* d);
274 
275 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xfd_vv1(const xed_decoded_inst_t* d);
276 
277 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xfe_vv1(const xed_decoded_inst_t* d);
278 
279 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x0_vv1(const xed_decoded_inst_t* d);
280 
281 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x1_vv1(const xed_decoded_inst_t* d);
282 
283 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x2_vv1(const xed_decoded_inst_t* d);
284 
285 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x3_vv1(const xed_decoded_inst_t* d);
286 
287 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x4_vv1(const xed_decoded_inst_t* d);
288 
289 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x5_vv1(const xed_decoded_inst_t* d);
290 
291 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x6_vv1(const xed_decoded_inst_t* d);
292 
293 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x7_vv1(const xed_decoded_inst_t* d);
294 
295 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x8_vv1(const xed_decoded_inst_t* d);
296 
297 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x9_vv1(const xed_decoded_inst_t* d);
298 
299 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xa_vv1(const xed_decoded_inst_t* d);
300 
301 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xb_vv1(const xed_decoded_inst_t* d);
302 
303 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xc_vv1(const xed_decoded_inst_t* d);
304 
305 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xd_vv1(const xed_decoded_inst_t* d);
306 
307 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xe_vv1(const xed_decoded_inst_t* d);
308 
309 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xf_vv1(const xed_decoded_inst_t* d);
310 
311 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x13_vv1(const xed_decoded_inst_t* d);
312 
313 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x16_vv1(const xed_decoded_inst_t* d);
314 
315 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x17_vv1(const xed_decoded_inst_t* d);
316 
317 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x18_vv1(const xed_decoded_inst_t* d);
318 
319 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x19_vv1(const xed_decoded_inst_t* d);
320 
321 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x1a_vv1(const xed_decoded_inst_t* d);
322 
323 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x1c_vv1(const xed_decoded_inst_t* d);
324 
325 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x1d_vv1(const xed_decoded_inst_t* d);
326 
327 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x1e_vv1(const xed_decoded_inst_t* d);
328 
329 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x20_vv1(const xed_decoded_inst_t* d);
330 
331 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x21_vv1(const xed_decoded_inst_t* d);
332 
333 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x22_vv1(const xed_decoded_inst_t* d);
334 
335 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x23_vv1(const xed_decoded_inst_t* d);
336 
337 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x24_vv1(const xed_decoded_inst_t* d);
338 
339 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x25_vv1(const xed_decoded_inst_t* d);
340 
341 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x28_vv1(const xed_decoded_inst_t* d);
342 
343 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x29_vv1(const xed_decoded_inst_t* d);
344 
345 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x2a_vv1(const xed_decoded_inst_t* d);
346 
347 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x2b_vv1(const xed_decoded_inst_t* d);
348 
349 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x2c_vv1(const xed_decoded_inst_t* d);
350 
351 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x2d_vv1(const xed_decoded_inst_t* d);
352 
353 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x2e_vv1(const xed_decoded_inst_t* d);
354 
355 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x2f_vv1(const xed_decoded_inst_t* d);
356 
357 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x30_vv1(const xed_decoded_inst_t* d);
358 
359 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x31_vv1(const xed_decoded_inst_t* d);
360 
361 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x32_vv1(const xed_decoded_inst_t* d);
362 
363 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x33_vv1(const xed_decoded_inst_t* d);
364 
365 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x34_vv1(const xed_decoded_inst_t* d);
366 
367 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x35_vv1(const xed_decoded_inst_t* d);
368 
369 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x36_vv1(const xed_decoded_inst_t* d);
370 
371 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x37_vv1(const xed_decoded_inst_t* d);
372 
373 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x38_vv1(const xed_decoded_inst_t* d);
374 
375 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x39_vv1(const xed_decoded_inst_t* d);
376 
377 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x3a_vv1(const xed_decoded_inst_t* d);
378 
379 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x3b_vv1(const xed_decoded_inst_t* d);
380 
381 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x3c_vv1(const xed_decoded_inst_t* d);
382 
383 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x3d_vv1(const xed_decoded_inst_t* d);
384 
385 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x3e_vv1(const xed_decoded_inst_t* d);
386 
387 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x3f_vv1(const xed_decoded_inst_t* d);
388 
389 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x40_vv1(const xed_decoded_inst_t* d);
390 
391 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x41_vv1(const xed_decoded_inst_t* d);
392 
393 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x45_vv1(const xed_decoded_inst_t* d);
394 
395 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x46_vv1(const xed_decoded_inst_t* d);
396 
397 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x47_vv1(const xed_decoded_inst_t* d);
398 
399 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x58_vv1(const xed_decoded_inst_t* d);
400 
401 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x59_vv1(const xed_decoded_inst_t* d);
402 
403 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x5a_vv1(const xed_decoded_inst_t* d);
404 
405 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x78_vv1(const xed_decoded_inst_t* d);
406 
407 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x79_vv1(const xed_decoded_inst_t* d);
408 
409 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x8c_vv1(const xed_decoded_inst_t* d);
410 
411 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x8e_vv1(const xed_decoded_inst_t* d);
412 
413 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x90_vv1(const xed_decoded_inst_t* d);
414 
415 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x91_vv1(const xed_decoded_inst_t* d);
416 
417 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x92_vv1(const xed_decoded_inst_t* d);
418 
419 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x93_vv1(const xed_decoded_inst_t* d);
420 
421 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x96_vv1(const xed_decoded_inst_t* d);
422 
423 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x97_vv1(const xed_decoded_inst_t* d);
424 
425 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x98_vv1(const xed_decoded_inst_t* d);
426 
427 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x99_vv1(const xed_decoded_inst_t* d);
428 
429 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x9a_vv1(const xed_decoded_inst_t* d);
430 
431 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x9b_vv1(const xed_decoded_inst_t* d);
432 
433 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x9c_vv1(const xed_decoded_inst_t* d);
434 
435 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x9d_vv1(const xed_decoded_inst_t* d);
436 
437 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x9e_vv1(const xed_decoded_inst_t* d);
438 
439 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x9f_vv1(const xed_decoded_inst_t* d);
440 
441 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xa6_vv1(const xed_decoded_inst_t* d);
442 
443 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xa7_vv1(const xed_decoded_inst_t* d);
444 
445 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xa8_vv1(const xed_decoded_inst_t* d);
446 
447 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xa9_vv1(const xed_decoded_inst_t* d);
448 
449 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xaa_vv1(const xed_decoded_inst_t* d);
450 
451 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xab_vv1(const xed_decoded_inst_t* d);
452 
453 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xac_vv1(const xed_decoded_inst_t* d);
454 
455 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xad_vv1(const xed_decoded_inst_t* d);
456 
457 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xae_vv1(const xed_decoded_inst_t* d);
458 
459 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xaf_vv1(const xed_decoded_inst_t* d);
460 
461 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xb6_vv1(const xed_decoded_inst_t* d);
462 
463 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xb7_vv1(const xed_decoded_inst_t* d);
464 
465 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xb8_vv1(const xed_decoded_inst_t* d);
466 
467 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xb9_vv1(const xed_decoded_inst_t* d);
468 
469 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xba_vv1(const xed_decoded_inst_t* d);
470 
471 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xbb_vv1(const xed_decoded_inst_t* d);
472 
473 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xbc_vv1(const xed_decoded_inst_t* d);
474 
475 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xbd_vv1(const xed_decoded_inst_t* d);
476 
477 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xbe_vv1(const xed_decoded_inst_t* d);
478 
479 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xbf_vv1(const xed_decoded_inst_t* d);
480 
481 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xcf_vv1(const xed_decoded_inst_t* d);
482 
483 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xdb_vv1(const xed_decoded_inst_t* d);
484 
485 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xdc_vv1(const xed_decoded_inst_t* d);
486 
487 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xdd_vv1(const xed_decoded_inst_t* d);
488 
489 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xde_vv1(const xed_decoded_inst_t* d);
490 
491 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xdf_vv1(const xed_decoded_inst_t* d);
492 
493 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xf2_vv1(const xed_decoded_inst_t* d);
494 
495 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xf3_vv1(const xed_decoded_inst_t* d);
496 
497 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xf5_vv1(const xed_decoded_inst_t* d);
498 
499 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xf6_vv1(const xed_decoded_inst_t* d);
500 
501 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xf7_vv1(const xed_decoded_inst_t* d);
502 
503 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x0_vv1(const xed_decoded_inst_t* d);
504 
505 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x1_vv1(const xed_decoded_inst_t* d);
506 
507 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x2_vv1(const xed_decoded_inst_t* d);
508 
509 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x4_vv1(const xed_decoded_inst_t* d);
510 
511 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x5_vv1(const xed_decoded_inst_t* d);
512 
513 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x6_vv1(const xed_decoded_inst_t* d);
514 
515 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x8_vv1(const xed_decoded_inst_t* d);
516 
517 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x9_vv1(const xed_decoded_inst_t* d);
518 
519 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0xa_vv1(const xed_decoded_inst_t* d);
520 
521 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0xb_vv1(const xed_decoded_inst_t* d);
522 
523 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0xc_vv1(const xed_decoded_inst_t* d);
524 
525 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0xd_vv1(const xed_decoded_inst_t* d);
526 
527 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0xe_vv1(const xed_decoded_inst_t* d);
528 
529 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0xf_vv1(const xed_decoded_inst_t* d);
530 
531 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x14_vv1(const xed_decoded_inst_t* d);
532 
533 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x15_vv1(const xed_decoded_inst_t* d);
534 
535 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x16_vv1(const xed_decoded_inst_t* d);
536 
537 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x17_vv1(const xed_decoded_inst_t* d);
538 
539 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x18_vv1(const xed_decoded_inst_t* d);
540 
541 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x19_vv1(const xed_decoded_inst_t* d);
542 
543 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x1d_vv1(const xed_decoded_inst_t* d);
544 
545 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x20_vv1(const xed_decoded_inst_t* d);
546 
547 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x21_vv1(const xed_decoded_inst_t* d);
548 
549 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x22_vv1(const xed_decoded_inst_t* d);
550 
551 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x30_vv1(const xed_decoded_inst_t* d);
552 
553 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x31_vv1(const xed_decoded_inst_t* d);
554 
555 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x32_vv1(const xed_decoded_inst_t* d);
556 
557 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x33_vv1(const xed_decoded_inst_t* d);
558 
559 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x38_vv1(const xed_decoded_inst_t* d);
560 
561 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x39_vv1(const xed_decoded_inst_t* d);
562 
563 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x40_vv1(const xed_decoded_inst_t* d);
564 
565 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x41_vv1(const xed_decoded_inst_t* d);
566 
567 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x42_vv1(const xed_decoded_inst_t* d);
568 
569 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x44_vv1(const xed_decoded_inst_t* d);
570 
571 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x46_vv1(const xed_decoded_inst_t* d);
572 
573 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x48_vv1(const xed_decoded_inst_t* d);
574 
575 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x49_vv1(const xed_decoded_inst_t* d);
576 
577 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x4a_vv1(const xed_decoded_inst_t* d);
578 
579 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x4b_vv1(const xed_decoded_inst_t* d);
580 
581 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x4c_vv1(const xed_decoded_inst_t* d);
582 
583 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x5c_vv1(const xed_decoded_inst_t* d);
584 
585 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x5d_vv1(const xed_decoded_inst_t* d);
586 
587 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x5e_vv1(const xed_decoded_inst_t* d);
588 
589 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x5f_vv1(const xed_decoded_inst_t* d);
590 
591 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x60_vv1(const xed_decoded_inst_t* d);
592 
593 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x61_vv1(const xed_decoded_inst_t* d);
594 
595 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x62_vv1(const xed_decoded_inst_t* d);
596 
597 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x63_vv1(const xed_decoded_inst_t* d);
598 
599 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x68_vv1(const xed_decoded_inst_t* d);
600 
601 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x69_vv1(const xed_decoded_inst_t* d);
602 
603 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x6a_vv1(const xed_decoded_inst_t* d);
604 
605 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x6b_vv1(const xed_decoded_inst_t* d);
606 
607 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x6c_vv1(const xed_decoded_inst_t* d);
608 
609 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x6d_vv1(const xed_decoded_inst_t* d);
610 
611 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x6e_vv1(const xed_decoded_inst_t* d);
612 
613 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x6f_vv1(const xed_decoded_inst_t* d);
614 
615 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x78_vv1(const xed_decoded_inst_t* d);
616 
617 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x79_vv1(const xed_decoded_inst_t* d);
618 
619 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x7a_vv1(const xed_decoded_inst_t* d);
620 
621 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x7b_vv1(const xed_decoded_inst_t* d);
622 
623 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x7c_vv1(const xed_decoded_inst_t* d);
624 
625 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x7d_vv1(const xed_decoded_inst_t* d);
626 
627 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x7e_vv1(const xed_decoded_inst_t* d);
628 
629 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x7f_vv1(const xed_decoded_inst_t* d);
630 
631 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0xce_vv1(const xed_decoded_inst_t* d);
632 
633 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0xcf_vv1(const xed_decoded_inst_t* d);
634 
635 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0xdf_vv1(const xed_decoded_inst_t* d);
636 
637 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0xf0_vv1(const xed_decoded_inst_t* d);
638 
xed3_phash_find_map0x0F_opcode0x10_vv1(const xed_decoded_inst_t * d)639 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x10_vv1(const xed_decoded_inst_t* d)
640 {
641 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
642 static const lu_entry_t lu_table[96] = {
643 /*h(125)=0 VV1 0x10  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {125, 2215},
644 /*h(93)=1 VV1 0x10  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {93, 2215},
645 /*h(61)=2 VV1 0x10  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {61, 2215},
646 /*h(29)=3 VV1 0x10  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {29, 2215},
647 /*empty slot1 */ {0,0},
648 /*h(118)=5 VV1 0x10  VF2 V0F MOD[mm] MOD!=3  NOVSR REG[rrr] RM[nnn] MODRM()*/ {118, 2204},
649 /*h(86)=6 VV1 0x10  VF2 V0F MOD[mm] MOD!=3  NOVSR REG[rrr] RM[nnn] MODRM()*/ {86, 2204},
650 /*h(54)=7 VV1 0x10  VF2 V0F MOD[mm] MOD!=3  NOVSR REG[rrr] RM[nnn] MODRM()*/ {54, 2204},
651 /*h(22)=8 VV1 0x10  VF2 V0F MOD[mm] MOD!=3  NOVSR REG[rrr] RM[nnn] MODRM()*/ {22, 2204},
652 /*h(115)=9 VV1 0x10  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {115, 2205},
653 /*h(83)=10 VV1 0x10  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {83, 2205},
654 /*h(51)=11 VV1 0x10  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {51, 2205},
655 /*h(19)=12 VV1 0x10  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {19, 2205},
656 /*h(126)=13 VV1 0x10  VF3 V0F MOD[mm] MOD!=3  NOVSR REG[rrr] RM[nnn] MODRM()*/ {126, 2214},
657 /*h(94)=14 VV1 0x10  VF3 V0F MOD[mm] MOD!=3  NOVSR REG[rrr] RM[nnn] MODRM()*/ {94, 2214},
658 /*h(62)=15 VV1 0x10  VF3 V0F MOD[mm] MOD!=3  NOVSR REG[rrr] RM[nnn] MODRM()*/ {62, 2214},
659 /*h(30)=16 VV1 0x10  VF3 V0F MOD[mm] MOD!=3  NOVSR REG[rrr] RM[nnn] MODRM()*/ {30, 2214},
660 /*empty slot1 */ {0,0},
661 /*h(119)=18 VV1 0x10  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {119, 2205},
662 /*h(87)=19 VV1 0x10  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {87, 2205},
663 /*h(55)=20 VV1 0x10  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {55, 2205},
664 /*h(23)=21 VV1 0x10  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 2205},
665 /*empty slot1 */ {0,0},
666 /*empty slot1 */ {0,0},
667 /*empty slot1 */ {0,0},
668 /*empty slot1 */ {0,0},
669 /*h(127)=26 VV1 0x10  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {127, 2215},
670 /*h(95)=27 VV1 0x10  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {95, 2215},
671 /*h(63)=28 VV1 0x10  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {63, 2215},
672 /*h(31)=29 VV1 0x10  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {31, 2215},
673 /*empty slot1 */ {0,0},
674 /*empty slot1 */ {0,0},
675 /*empty slot1 */ {0,0},
676 /*empty slot1 */ {0,0},
677 /*empty slot1 */ {0,0},
678 /*h(117)=35 VV1 0x10  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {117, 2205},
679 /*h(85)=36 VV1 0x10  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {85, 2205},
680 /*h(53)=37 VV1 0x10  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {53, 2205},
681 /*h(21)=38 VV1 0x10  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 2205},
682 /*empty slot1 */ {0,0},
683 /*empty slot1 */ {0,0},
684 /*empty slot1 */ {0,0},
685 /*h(46)=42 VV1 0x10  V66 VL256 V0F NOVSR  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 2944},
686 /*h(14)=43 VV1 0x10  V66 VL128 V0F NOVSR  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 2940},
687 /*h(121)=44 VV1 0x10  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {121, 2215},
688 /*h(89)=45 VV1 0x10  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {89, 2215},
689 /*h(57)=46 VV1 0x10  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {57, 2215},
690 /*h(25)=47 VV1 0x10  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {25, 2215},
691 /*empty slot1 */ {0,0},
692 /*empty slot1 */ {0,0},
693 /*empty slot1 */ {0,0},
694 /*empty slot1 */ {0,0},
695 /*empty slot1 */ {0,0},
696 /*empty slot1 */ {0,0},
697 /*empty slot1 */ {0,0},
698 /*h(47)=55 VV1 0x10  V66 VL256 V0F NOVSR  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 2945},
699 /*h(15)=56 VV1 0x10  V66 VL128 V0F NOVSR  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 2941},
700 /*empty slot1 */ {0,0},
701 /*empty slot1 */ {0,0},
702 /*empty slot1 */ {0,0},
703 /*empty slot1 */ {0,0},
704 /*empty slot1 */ {0,0},
705 /*empty slot1 */ {0,0},
706 /*empty slot1 */ {0,0},
707 /*empty slot1 */ {0,0},
708 /*empty slot1 */ {0,0},
709 /*empty slot1 */ {0,0},
710 /*empty slot1 */ {0,0},
711 /*empty slot1 */ {0,0},
712 /*empty slot1 */ {0,0},
713 /*h(123)=70 VV1 0x10  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {123, 2215},
714 /*h(91)=71 VV1 0x10  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {91, 2215},
715 /*h(59)=72 VV1 0x10  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {59, 2215},
716 /*h(27)=73 VV1 0x10  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {27, 2215},
717 /*empty slot1 */ {0,0},
718 /*empty slot1 */ {0,0},
719 /*empty slot1 */ {0,0},
720 /*h(38)=77 VV1 0x10  VNP VL256 V0F NOVSR  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {38, 2926},
721 /*h(6)=78 VV1 0x10  VNP VL128 V0F NOVSR  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 2922},
722 /*h(113)=79 VV1 0x10  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {113, 2205},
723 /*h(81)=80 VV1 0x10  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {81, 2205},
724 /*h(49)=81 VV1 0x10  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {49, 2205},
725 /*h(17)=82 VV1 0x10  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {17, 2205},
726 /*empty slot1 */ {0,0},
727 /*empty slot1 */ {0,0},
728 /*empty slot1 */ {0,0},
729 /*empty slot1 */ {0,0},
730 /*empty slot1 */ {0,0},
731 /*empty slot1 */ {0,0},
732 /*empty slot1 */ {0,0},
733 /*h(39)=90 VV1 0x10  VNP VL256 V0F NOVSR  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {39, 2927},
734 /*h(7)=91 VV1 0x10  VNP VL128 V0F NOVSR  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 2923},
735 /*empty slot1 */ {0,0},
736 /*empty slot1 */ {0,0},
737 /*empty slot1 */ {0,0},
738 /*empty slot1 */ {0,0}
739 };
740 xed_uint64_t key = 0;
741 xed_uint64_t hidx = 0;
742 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
743 hidx = ((13*key % 139) % 96);
744 if(lu_table[hidx].key == key) {
745     return lu_table[hidx].value;
746 }
747 else{
748     return 0;
749 }
750 }
xed3_phash_find_map0x0F_opcode0x11_vv1(const xed_decoded_inst_t * d)751 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x11_vv1(const xed_decoded_inst_t* d)
752 {
753 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
754 static const lu_entry_t lu_table[96] = {
755 /*h(125)=0 VV1 0x11  VF3 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {125, 2217},
756 /*h(93)=1 VV1 0x11  VF3 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {93, 2217},
757 /*h(61)=2 VV1 0x11  VF3 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {61, 2217},
758 /*h(29)=3 VV1 0x11  VF3 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {29, 2217},
759 /*empty slot1 */ {0,0},
760 /*h(118)=5 VV1 0x11  VF2 V0F MOD[mm] MOD!=3 NOVSR REG[rrr] RM[nnn] MODRM()*/ {118, 2206},
761 /*h(86)=6 VV1 0x11  VF2 V0F MOD[mm] MOD!=3 NOVSR REG[rrr] RM[nnn] MODRM()*/ {86, 2206},
762 /*h(54)=7 VV1 0x11  VF2 V0F MOD[mm] MOD!=3 NOVSR REG[rrr] RM[nnn] MODRM()*/ {54, 2206},
763 /*h(22)=8 VV1 0x11  VF2 V0F MOD[mm] MOD!=3 NOVSR REG[rrr] RM[nnn] MODRM()*/ {22, 2206},
764 /*h(115)=9 VV1 0x11  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {115, 2207},
765 /*h(83)=10 VV1 0x11  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {83, 2207},
766 /*h(51)=11 VV1 0x11  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {51, 2207},
767 /*h(19)=12 VV1 0x11  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {19, 2207},
768 /*h(126)=13 VV1 0x11  VF3 V0F  MOD[mm] MOD!=3 NOVSR  REG[rrr] RM[nnn] MODRM()*/ {126, 2216},
769 /*h(94)=14 VV1 0x11  VF3 V0F  MOD[mm] MOD!=3 NOVSR  REG[rrr] RM[nnn] MODRM()*/ {94, 2216},
770 /*h(62)=15 VV1 0x11  VF3 V0F  MOD[mm] MOD!=3 NOVSR  REG[rrr] RM[nnn] MODRM()*/ {62, 2216},
771 /*h(30)=16 VV1 0x11  VF3 V0F  MOD[mm] MOD!=3 NOVSR  REG[rrr] RM[nnn] MODRM()*/ {30, 2216},
772 /*empty slot1 */ {0,0},
773 /*h(119)=18 VV1 0x11  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {119, 2207},
774 /*h(87)=19 VV1 0x11  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {87, 2207},
775 /*h(55)=20 VV1 0x11  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {55, 2207},
776 /*h(23)=21 VV1 0x11  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 2207},
777 /*empty slot1 */ {0,0},
778 /*empty slot1 */ {0,0},
779 /*empty slot1 */ {0,0},
780 /*empty slot1 */ {0,0},
781 /*h(127)=26 VV1 0x11  VF3 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {127, 2217},
782 /*h(95)=27 VV1 0x11  VF3 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {95, 2217},
783 /*h(63)=28 VV1 0x11  VF3 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {63, 2217},
784 /*h(31)=29 VV1 0x11  VF3 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {31, 2217},
785 /*empty slot1 */ {0,0},
786 /*empty slot1 */ {0,0},
787 /*empty slot1 */ {0,0},
788 /*empty slot1 */ {0,0},
789 /*empty slot1 */ {0,0},
790 /*h(117)=35 VV1 0x11  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {117, 2207},
791 /*h(85)=36 VV1 0x11  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {85, 2207},
792 /*h(53)=37 VV1 0x11  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {53, 2207},
793 /*h(21)=38 VV1 0x11  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 2207},
794 /*empty slot1 */ {0,0},
795 /*empty slot1 */ {0,0},
796 /*empty slot1 */ {0,0},
797 /*h(46)=42 VV1 0x11  V66 VL256 V0F NOVSR  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 2946},
798 /*h(14)=43 VV1 0x11  V66 VL128 V0F NOVSR  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 2942},
799 /*h(121)=44 VV1 0x11  VF3 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {121, 2217},
800 /*h(89)=45 VV1 0x11  VF3 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {89, 2217},
801 /*h(57)=46 VV1 0x11  VF3 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {57, 2217},
802 /*h(25)=47 VV1 0x11  VF3 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {25, 2217},
803 /*empty slot1 */ {0,0},
804 /*empty slot1 */ {0,0},
805 /*empty slot1 */ {0,0},
806 /*empty slot1 */ {0,0},
807 /*empty slot1 */ {0,0},
808 /*empty slot1 */ {0,0},
809 /*empty slot1 */ {0,0},
810 /*h(47)=55 VV1 0x11  V66 VL256 V0F NOVSR  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 2947},
811 /*h(15)=56 VV1 0x11  V66 VL128 V0F NOVSR  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 2943},
812 /*empty slot1 */ {0,0},
813 /*empty slot1 */ {0,0},
814 /*empty slot1 */ {0,0},
815 /*empty slot1 */ {0,0},
816 /*empty slot1 */ {0,0},
817 /*empty slot1 */ {0,0},
818 /*empty slot1 */ {0,0},
819 /*empty slot1 */ {0,0},
820 /*empty slot1 */ {0,0},
821 /*empty slot1 */ {0,0},
822 /*empty slot1 */ {0,0},
823 /*empty slot1 */ {0,0},
824 /*empty slot1 */ {0,0},
825 /*h(123)=70 VV1 0x11  VF3 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {123, 2217},
826 /*h(91)=71 VV1 0x11  VF3 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {91, 2217},
827 /*h(59)=72 VV1 0x11  VF3 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {59, 2217},
828 /*h(27)=73 VV1 0x11  VF3 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {27, 2217},
829 /*empty slot1 */ {0,0},
830 /*empty slot1 */ {0,0},
831 /*empty slot1 */ {0,0},
832 /*h(38)=77 VV1 0x11  VNP VL256 V0F NOVSR  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {38, 2928},
833 /*h(6)=78 VV1 0x11  VNP VL128 V0F NOVSR  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 2924},
834 /*h(113)=79 VV1 0x11  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {113, 2207},
835 /*h(81)=80 VV1 0x11  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {81, 2207},
836 /*h(49)=81 VV1 0x11  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {49, 2207},
837 /*h(17)=82 VV1 0x11  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {17, 2207},
838 /*empty slot1 */ {0,0},
839 /*empty slot1 */ {0,0},
840 /*empty slot1 */ {0,0},
841 /*empty slot1 */ {0,0},
842 /*empty slot1 */ {0,0},
843 /*empty slot1 */ {0,0},
844 /*empty slot1 */ {0,0},
845 /*h(39)=90 VV1 0x11  VNP VL256 V0F NOVSR  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {39, 2929},
846 /*h(7)=91 VV1 0x11  VNP VL128 V0F NOVSR  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 2925},
847 /*empty slot1 */ {0,0},
848 /*empty slot1 */ {0,0},
849 /*empty slot1 */ {0,0},
850 /*empty slot1 */ {0,0}
851 };
852 xed_uint64_t key = 0;
853 xed_uint64_t hidx = 0;
854 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
855 hidx = ((13*key % 139) % 96);
856 if(lu_table[hidx].key == key) {
857     return lu_table[hidx].value;
858 }
859 else{
860     return 0;
861 }
862 }
xed3_phash_find_map0x0F_opcode0x12_vv1(const xed_decoded_inst_t * d)863 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x12_vv1(const xed_decoded_inst_t* d)
864 {
865 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
866 static const lu_entry_t lu_table[34] = {
867 /*h(0)=0 VV1 0x12  VL128 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {0, 2733},
868 /*empty slot1 */ {0,0},
869 /*empty slot1 */ {0,0},
870 /*h(5)=3 VV1 0x12  VL128 VNP V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 3514},
871 /*empty slot1 */ {0,0},
872 /*h(31)=5 VV1 0x12  VL128 VF3 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {31, 2574},
873 /*h(10)=6 VV1 0x12  VL128 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2724},
874 /*h(23)=7 VV1 0x12  VL128 VF2 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 2385},
875 /*h(2)=8 VV1 0x12  VL128 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2733},
876 /*empty slot1 */ {0,0},
877 /*h(62)=10 VV1 0x12  VL256 VF3 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {62, 2575},
878 /*h(7)=11 VV1 0x12  VL128 VNP V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 3514},
879 /*h(54)=12 VV1 0x12  VL256 VF2 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {54, 2386},
880 /*empty slot1 */ {0,0},
881 /*h(12)=14 VV1 0x12  VL128 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {12, 2724},
882 /*empty slot1 */ {0,0},
883 /*h(4)=16 VV1 0x12  VL128 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 2733},
884 /*empty slot1 */ {0,0},
885 /*h(30)=18 VV1 0x12  VL128 VF3 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {30, 2573},
886 /*empty slot1 */ {0,0},
887 /*h(22)=20 VV1 0x12  VL128 VF2 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 2384},
888 /*h(1)=21 VV1 0x12  VL128 VNP V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {1, 3514},
889 /*h(14)=22 VV1 0x12  VL128 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 2724},
890 /*empty slot1 */ {0,0},
891 /*h(6)=24 VV1 0x12  VL128 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 2733},
892 /*empty slot1 */ {0,0},
893 /*empty slot1 */ {0,0},
894 /*empty slot1 */ {0,0},
895 /*empty slot1 */ {0,0},
896 /*h(3)=29 VV1 0x12  VL128 VNP V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3514},
897 /*empty slot1 */ {0,0},
898 /*h(63)=31 VV1 0x12  VL256 VF3 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {63, 2576},
899 /*h(8)=32 VV1 0x12  VL128 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {8, 2724},
900 /*h(55)=33 VV1 0x12  VL256 VF2 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {55, 2387}
901 };
902 xed_union64_t t, u;
903 xed_uint64_t key = 0;
904 xed_uint64_t hidx = 0;
905 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
906 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 34ULL, u.s.hi32);
907 if(lu_table[hidx].key == key) {
908     return lu_table[hidx].value;
909 }
910 else{
911     return 0;
912 }
913 }
xed3_phash_find_map0x0F_opcode0x13_vv1(const xed_decoded_inst_t * d)914 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x13_vv1(const xed_decoded_inst_t* d)
915 {
916 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
917 static const lu_entry_t lu_table[3] = {
918 /*empty slot1 */ {0,0},
919 /*h(14)=1 VV1 0x13  VL128 V66 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 2725},
920 /*h(6)=2 VV1 0x13  VL128 VNP V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 2734}
921 };
922 xed_union64_t t, u;
923 xed_uint64_t key = 0;
924 xed_uint64_t hidx = 0;
925 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
926 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 3ULL, u.s.hi32);
927 if(lu_table[hidx].key == key) {
928     return lu_table[hidx].value;
929 }
930 else{
931     return 0;
932 }
933 }
xed3_phash_find_map0x0F_opcode0x14_vv1(const xed_decoded_inst_t * d)934 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x14_vv1(const xed_decoded_inst_t* d)
935 {
936 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
937 static const lu_entry_t lu_table[10] = {
938 /*h(0)=0 VV1 0x14  VL128 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {0, 3583},
939 /*h(10)=1 VV1 0x14  VL256 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3601},
940 /*h(2)=2 VV1 0x14  VL128 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3599},
941 /*empty slot1 */ {0,0},
942 /*empty slot1 */ {0,0},
943 /*h(9)=5 VV1 0x14  VL256 VNP V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {9, 3586},
944 /*h(1)=6 VV1 0x14  VL128 VNP V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {1, 3584},
945 /*h(11)=7 VV1 0x14  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3602},
946 /*h(3)=8 VV1 0x14  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3600},
947 /*h(8)=9 VV1 0x14  VL256 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {8, 3585}
948 };
949 xed_union64_t t, u;
950 xed_uint64_t key = 0;
951 xed_uint64_t hidx = 0;
952 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
953 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 10ULL, u.s.hi32);
954 if(lu_table[hidx].key == key) {
955     return lu_table[hidx].value;
956 }
957 else{
958     return 0;
959 }
960 }
xed3_phash_find_map0x0F_opcode0x15_vv1(const xed_decoded_inst_t * d)961 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x15_vv1(const xed_decoded_inst_t* d)
962 {
963 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
964 static const lu_entry_t lu_table[10] = {
965 /*h(0)=0 VV1 0x15  VL128 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {0, 2852},
966 /*h(10)=1 VV1 0x15  VL256 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2510},
967 /*h(2)=2 VV1 0x15  VL128 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2508},
968 /*empty slot1 */ {0,0},
969 /*empty slot1 */ {0,0},
970 /*h(9)=5 VV1 0x15  VL256 VNP V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {9, 2855},
971 /*h(1)=6 VV1 0x15  VL128 VNP V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {1, 2853},
972 /*h(11)=7 VV1 0x15  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2511},
973 /*h(3)=8 VV1 0x15  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2509},
974 /*h(8)=9 VV1 0x15  VL256 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {8, 2854}
975 };
976 xed_union64_t t, u;
977 xed_uint64_t key = 0;
978 xed_uint64_t hidx = 0;
979 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
980 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 10ULL, u.s.hi32);
981 if(lu_table[hidx].key == key) {
982     return lu_table[hidx].value;
983 }
984 else{
985     return 0;
986 }
987 }
xed3_phash_find_map0x0F_opcode0x16_vv1(const xed_decoded_inst_t * d)988 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x16_vv1(const xed_decoded_inst_t* d)
989 {
990 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
991 static const lu_entry_t lu_table[32] = {
992 /*h(0)=0 VV1 0x16  VL128 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {0, 3103},
993 /*h(3)=1 VV1 0x16  VL128 VNP V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2732},
994 /*h(30)=2 VV1 0x16  VL128 VF3 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {30, 2303},
995 /*h(7)=3 VV1 0x16  VL128 VNP V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 2732},
996 /*h(10)=4 VV1 0x16  VL128 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3080},
997 /*empty slot1 */ {0,0},
998 /*h(14)=6 VV1 0x16  VL128 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 3080},
999 /*h(4)=7 VV1 0x16  VL128 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 3103},
1000 /*h(31)=8 VV1 0x16  VL128 VF3 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {31, 2304},
1001 /*empty slot1 */ {0,0},
1002 /*empty slot1 */ {0,0},
1003 /*h(1)=11 VV1 0x16  VL128 VNP V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {1, 2732},
1004 /*empty slot1 */ {0,0},
1005 /*empty slot1 */ {0,0},
1006 /*h(8)=14 VV1 0x16  VL128 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {8, 3080},
1007 /*empty slot1 */ {0,0},
1008 /*h(62)=16 VV1 0x16  VL256 VF3 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {62, 2305},
1009 /*empty slot1 */ {0,0},
1010 /*h(5)=18 VV1 0x16  VL128 VNP V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 2732},
1011 /*empty slot1 */ {0,0},
1012 /*empty slot1 */ {0,0},
1013 /*h(12)=21 VV1 0x16  VL128 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {12, 3080},
1014 /*h(2)=22 VV1 0x16  VL128 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3103},
1015 /*empty slot1 */ {0,0},
1016 /*empty slot1 */ {0,0},
1017 /*empty slot1 */ {0,0},
1018 /*empty slot1 */ {0,0},
1019 /*h(63)=27 VV1 0x16  VL256 VF3 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {63, 2306},
1020 /*empty slot1 */ {0,0},
1021 /*h(6)=29 VV1 0x16  VL128 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3103},
1022 /*empty slot1 */ {0,0},
1023 /*empty slot1 */ {0,0}
1024 };
1025 xed_uint64_t key = 0;
1026 xed_uint64_t hidx = 0;
1027 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
1028 hidx = ((11*key % 37) % 32);
1029 if(lu_table[hidx].key == key) {
1030     return lu_table[hidx].value;
1031 }
1032 else{
1033     return 0;
1034 }
1035 }
xed3_phash_find_map0x0F_opcode0x17_vv1(const xed_decoded_inst_t * d)1036 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x17_vv1(const xed_decoded_inst_t* d)
1037 {
1038 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1039 static const lu_entry_t lu_table[3] = {
1040 /*empty slot1 */ {0,0},
1041 /*h(14)=1 VV1 0x17  VL128 V66 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 3081},
1042 /*h(6)=2 VV1 0x17  VL128 VNP V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3104}
1043 };
1044 xed_union64_t t, u;
1045 xed_uint64_t key = 0;
1046 xed_uint64_t hidx = 0;
1047 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
1048 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 3ULL, u.s.hi32);
1049 if(lu_table[hidx].key == key) {
1050     return lu_table[hidx].value;
1051 }
1052 else{
1053     return 0;
1054 }
1055 }
xed3_phash_find_map0x0F_opcode0x28_vv1(const xed_decoded_inst_t * d)1056 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x28_vv1(const xed_decoded_inst_t* d)
1057 {
1058 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1059 static const lu_entry_t lu_table[13] = {
1060 /*h(47)=0 VV1 0x28  VL256 V66 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 3297},
1061 /*h(39)=1 VV1 0x28  VL256 VNP V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {39, 3331},
1062 /*empty slot1 */ {0,0},
1063 /*h(15)=3 VV1 0x28  VL128 V66 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 3293},
1064 /*h(7)=4 VV1 0x28  VL128 VNP V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 3327},
1065 /*h(46)=5 VV1 0x28  VL256 V66 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 3296},
1066 /*h(38)=6 VV1 0x28  VL256 VNP V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {38, 3330},
1067 /*empty slot1 */ {0,0},
1068 /*h(14)=8 VV1 0x28  VL128 V66 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 3292},
1069 /*h(6)=9 VV1 0x28  VL128 VNP V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3326},
1070 /*empty slot1 */ {0,0},
1071 /*empty slot1 */ {0,0},
1072 /*empty slot1 */ {0,0}
1073 };
1074 xed_union64_t t, u;
1075 xed_uint64_t key = 0;
1076 xed_uint64_t hidx = 0;
1077 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
1078 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 13ULL, u.s.hi32);
1079 if(lu_table[hidx].key == key) {
1080     return lu_table[hidx].value;
1081 }
1082 else{
1083     return 0;
1084 }
1085 }
xed3_phash_find_map0x0F_opcode0x29_vv1(const xed_decoded_inst_t * d)1086 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x29_vv1(const xed_decoded_inst_t* d)
1087 {
1088 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1089 static const lu_entry_t lu_table[13] = {
1090 /*h(47)=0 VV1 0x29  VL256 V66 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 3299},
1091 /*h(39)=1 VV1 0x29  VL256 VNP V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {39, 3333},
1092 /*empty slot1 */ {0,0},
1093 /*h(15)=3 VV1 0x29  VL128 V66 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 3295},
1094 /*h(7)=4 VV1 0x29  VL128 VNP V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 3329},
1095 /*h(46)=5 VV1 0x29  VL256 V66 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 3298},
1096 /*h(38)=6 VV1 0x29  VL256 VNP V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {38, 3332},
1097 /*empty slot1 */ {0,0},
1098 /*h(14)=8 VV1 0x29  VL128 V66 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 3294},
1099 /*h(6)=9 VV1 0x29  VL128 VNP V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3328},
1100 /*empty slot1 */ {0,0},
1101 /*empty slot1 */ {0,0},
1102 /*empty slot1 */ {0,0}
1103 };
1104 xed_union64_t t, u;
1105 xed_uint64_t key = 0;
1106 xed_uint64_t hidx = 0;
1107 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
1108 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 13ULL, u.s.hi32);
1109 if(lu_table[hidx].key == key) {
1110     return lu_table[hidx].value;
1111 }
1112 else{
1113     return 0;
1114 }
1115 }
xed3_phash_find_map0x0F_opcode0x2a_vv1(const xed_decoded_inst_t * d)1116 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x2a_vv1(const xed_decoded_inst_t* d)
1117 {
1118 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1119 static const lu_entry_t lu_table[34] = {
1120 /*h(34)=0 VV1 0x2A  VF2 V0F not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {34, 3470},
1121 /*empty slot1 */ {0,0},
1122 /*h(60)=2 VV1 0x2A   VF3 V0F mode64 rexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {60, 3457},
1123 /*empty slot1 */ {0,0},
1124 /*h(52)=4 VV1 0x2A   VF3 V0F mode64 norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {52, 3455},
1125 /*empty slot1 */ {0,0},
1126 /*h(44)=6 VV1 0x2A  VF2 V0F mode64 rexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {44, 3474},
1127 /*h(57)=7 VV1 0x2A   VF3 V0F not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {57, 3454},
1128 /*h(36)=8 VV1 0x2A  VF2 V0F mode64 norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {36, 3472},
1129 /*h(49)=9 VV1 0x2A   VF3 V0F not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {49, 3454},
1130 /*empty slot1 */ {0,0},
1131 /*h(41)=11 VV1 0x2A  VF2 V0F not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {41, 3471},
1132 /*empty slot1 */ {0,0},
1133 /*h(33)=13 VV1 0x2A  VF2 V0F not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {33, 3471},
1134 /*empty slot1 */ {0,0},
1135 /*h(59)=15 VV1 0x2A   VF3 V0F not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {59, 3454},
1136 /*empty slot1 */ {0,0},
1137 /*h(51)=17 VV1 0x2A   VF3 V0F not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {51, 3454},
1138 /*empty slot1 */ {0,0},
1139 /*h(43)=19 VV1 0x2A  VF2 V0F not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {43, 3471},
1140 /*h(56)=20 VV1 0x2A   VF3 V0F not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {56, 3453},
1141 /*h(35)=21 VV1 0x2A  VF2 V0F not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {35, 3471},
1142 /*h(48)=22 VV1 0x2A   VF3 V0F not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {48, 3453},
1143 /*h(61)=23 VV1 0x2A   VF3 V0F mode64 rexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {61, 3458},
1144 /*h(40)=24 VV1 0x2A  VF2 V0F not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {40, 3470},
1145 /*h(53)=25 VV1 0x2A   VF3 V0F mode64 norexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {53, 3456},
1146 /*h(32)=26 VV1 0x2A  VF2 V0F not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {32, 3470},
1147 /*h(45)=27 VV1 0x2A  VF2 V0F mode64 rexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {45, 3475},
1148 /*h(58)=28 VV1 0x2A   VF3 V0F not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {58, 3453},
1149 /*h(37)=29 VV1 0x2A  VF2 V0F mode64 norexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {37, 3473},
1150 /*h(50)=30 VV1 0x2A   VF3 V0F not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {50, 3453},
1151 /*empty slot1 */ {0,0},
1152 /*h(42)=32 VV1 0x2A  VF2 V0F not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {42, 3470},
1153 /*empty slot1 */ {0,0}
1154 };
1155 xed_union64_t t, u;
1156 xed_uint64_t key = 0;
1157 xed_uint64_t hidx = 0;
1158 key = xed_dec_lu_MOD3_MODE_REXW_VEX_PREFIX(d);
1159 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 34ULL, u.s.hi32);
1160 if(lu_table[hidx].key == key) {
1161     return lu_table[hidx].value;
1162 }
1163 else{
1164     return 0;
1165 }
1166 }
xed3_phash_find_map0x0F_opcode0x2b_vv1(const xed_decoded_inst_t * d)1167 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x2b_vv1(const xed_decoded_inst_t* d)
1168 {
1169 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1170 static const lu_entry_t lu_table[4] = {
1171 /*h(14)=0 VV1 0x2B  V66 V0F VL128 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 3574},
1172 /*h(38)=1 VV1 0x2B  VNP V0F VL256 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {38, 3593},
1173 /*h(46)=2 VV1 0x2B  V66 V0F VL256 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 3575},
1174 /*h(6)=3 VV1 0x2B  VNP V0F VL128 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3592}
1175 };
1176 xed_uint64_t key = 0;
1177 xed_uint64_t hidx = 0;
1178 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
1179 hidx = ((4*key % 7) % 4);
1180 if(lu_table[hidx].key == key) {
1181     return lu_table[hidx].value;
1182 }
1183 else{
1184     return 0;
1185 }
1186 }
xed3_phash_find_map0x0F_opcode0x2c_vv1(const xed_decoded_inst_t * d)1187 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x2c_vv1(const xed_decoded_inst_t* d)
1188 {
1189 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1190 static const lu_entry_t lu_table[24] = {
1191 /*h(178)=0 VV1 0x2C   VF2 V0F  NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {178, 3707},
1192 /*h(189)=1 VV1 0x2C   VF2 V0F  NOVSR mode64 rexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {189, 3712},
1193 /*h(243)=2 VV1 0x2C   VF3 V0F  NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {243, 2746},
1194 /*h(248)=3 VV1 0x2C   VF3 V0F  NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {248, 2745},
1195 /*h(179)=4 VV1 0x2C   VF2 V0F  NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {179, 3708},
1196 /*h(184)=5 VV1 0x2C   VF2 V0F  NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {184, 3707},
1197 /*h(244)=6 VV1 0x2C   VF3 V0F  NOVSR mode64 norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {244, 2747},
1198 /*h(249)=7 VV1 0x2C   VF3 V0F  NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {249, 2746},
1199 /*h(180)=8 VV1 0x2C   VF2 V0F  NOVSR mode64 norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {180, 3709},
1200 /*h(185)=9 VV1 0x2C   VF2 V0F  NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {185, 3708},
1201 /*h(245)=10 VV1 0x2C   VF3 V0F  NOVSR mode64 norexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {245, 2748},
1202 /*h(250)=11 VV1 0x2C   VF3 V0F  NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {250, 2745},
1203 /*h(181)=12 VV1 0x2C   VF2 V0F  NOVSR mode64 norexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {181, 3710},
1204 /*h(186)=13 VV1 0x2C   VF2 V0F  NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {186, 3707},
1205 /*h(240)=14 VV1 0x2C   VF3 V0F  NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {240, 2745},
1206 /*h(251)=15 VV1 0x2C   VF3 V0F  NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {251, 2746},
1207 /*h(176)=16 VV1 0x2C   VF2 V0F  NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {176, 3707},
1208 /*h(187)=17 VV1 0x2C   VF2 V0F  NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {187, 3708},
1209 /*h(241)=18 VV1 0x2C   VF3 V0F  NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {241, 2746},
1210 /*h(252)=19 VV1 0x2C   VF3 V0F  NOVSR mode64 rexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {252, 2749},
1211 /*h(177)=20 VV1 0x2C   VF2 V0F  NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {177, 3708},
1212 /*h(188)=21 VV1 0x2C   VF2 V0F  NOVSR mode64 rexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {188, 3711},
1213 /*h(242)=22 VV1 0x2C   VF3 V0F  NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {242, 2745},
1214 /*h(253)=23 VV1 0x2C   VF3 V0F  NOVSR mode64 rexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {253, 2750}
1215 };
1216 xed_uint64_t key = 0;
1217 xed_uint64_t hidx = 0;
1218 key = xed_dec_lu_MOD3_MODE_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX(d);
1219 hidx = ((4*key % 43) % 24);
1220 if(lu_table[hidx].key == key) {
1221     return lu_table[hidx].value;
1222 }
1223 else{
1224     return 0;
1225 }
1226 }
xed3_phash_find_map0x0F_opcode0x2d_vv1(const xed_decoded_inst_t * d)1227 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x2d_vv1(const xed_decoded_inst_t* d)
1228 {
1229 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1230 static const lu_entry_t lu_table[24] = {
1231 /*h(178)=0 VV1 0x2D   VF2 V0F  NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {178, 3476},
1232 /*h(189)=1 VV1 0x2D   VF2 V0F  NOVSR mode64 rexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {189, 3481},
1233 /*h(243)=2 VV1 0x2D   VF3 V0F  NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {243, 3026},
1234 /*h(248)=3 VV1 0x2D   VF3 V0F  NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {248, 3025},
1235 /*h(179)=4 VV1 0x2D   VF2 V0F  NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {179, 3477},
1236 /*h(184)=5 VV1 0x2D   VF2 V0F  NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {184, 3476},
1237 /*h(244)=6 VV1 0x2D   VF3 V0F  NOVSR mode64 norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {244, 3027},
1238 /*h(249)=7 VV1 0x2D   VF3 V0F  NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {249, 3026},
1239 /*h(180)=8 VV1 0x2D   VF2 V0F  NOVSR mode64 norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {180, 3478},
1240 /*h(185)=9 VV1 0x2D   VF2 V0F  NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {185, 3477},
1241 /*h(245)=10 VV1 0x2D   VF3 V0F  NOVSR mode64 norexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {245, 3028},
1242 /*h(250)=11 VV1 0x2D   VF3 V0F  NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {250, 3025},
1243 /*h(181)=12 VV1 0x2D   VF2 V0F  NOVSR mode64 norexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {181, 3479},
1244 /*h(186)=13 VV1 0x2D   VF2 V0F  NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {186, 3476},
1245 /*h(240)=14 VV1 0x2D   VF3 V0F  NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {240, 3025},
1246 /*h(251)=15 VV1 0x2D   VF3 V0F  NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {251, 3026},
1247 /*h(176)=16 VV1 0x2D   VF2 V0F  NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {176, 3476},
1248 /*h(187)=17 VV1 0x2D   VF2 V0F  NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {187, 3477},
1249 /*h(241)=18 VV1 0x2D   VF3 V0F  NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {241, 3026},
1250 /*h(252)=19 VV1 0x2D   VF3 V0F  NOVSR mode64 rexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {252, 3029},
1251 /*h(177)=20 VV1 0x2D   VF2 V0F  NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {177, 3477},
1252 /*h(188)=21 VV1 0x2D   VF2 V0F  NOVSR mode64 rexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {188, 3480},
1253 /*h(242)=22 VV1 0x2D   VF3 V0F  NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {242, 3025},
1254 /*h(253)=23 VV1 0x2D   VF3 V0F  NOVSR mode64 rexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {253, 3030}
1255 };
1256 xed_uint64_t key = 0;
1257 xed_uint64_t hidx = 0;
1258 key = xed_dec_lu_MOD3_MODE_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX(d);
1259 hidx = ((4*key % 43) % 24);
1260 if(lu_table[hidx].key == key) {
1261     return lu_table[hidx].value;
1262 }
1263 else{
1264     return 0;
1265 }
1266 }
xed3_phash_find_map0x0F_opcode0x2e_vv1(const xed_decoded_inst_t * d)1267 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x2e_vv1(const xed_decoded_inst_t* d)
1268 {
1269 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1270 static const lu_entry_t lu_table[4] = {
1271 /*h(15)=0 VV1 0x2E V66 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 3231},
1272 /*h(7)=1 VV1 0x2E VNP V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 3217},
1273 /*h(14)=2 VV1 0x2E V66 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 3230},
1274 /*h(6)=3 VV1 0x2E VNP V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3216}
1275 };
1276 xed_uint64_t key = 0;
1277 xed_uint64_t hidx = 0;
1278 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX(d);
1279 hidx = ((3*key % 5) % 4);
1280 if(lu_table[hidx].key == key) {
1281     return lu_table[hidx].value;
1282 }
1283 else{
1284     return 0;
1285 }
1286 }
xed3_phash_find_map0x0F_opcode0x2f_vv1(const xed_decoded_inst_t * d)1287 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x2f_vv1(const xed_decoded_inst_t* d)
1288 {
1289 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1290 static const lu_entry_t lu_table[4] = {
1291 /*h(15)=0 VV1 0x2F   V66 V0F  NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 2519},
1292 /*h(7)=1 VV1 0x2F   VNP V0F  NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 2532},
1293 /*h(14)=2 VV1 0x2F   V66 V0F  NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 2518},
1294 /*h(6)=3 VV1 0x2F   VNP V0F  NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 2531}
1295 };
1296 xed_uint64_t key = 0;
1297 xed_uint64_t hidx = 0;
1298 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX(d);
1299 hidx = ((3*key % 5) % 4);
1300 if(lu_table[hidx].key == key) {
1301     return lu_table[hidx].value;
1302 }
1303 else{
1304     return 0;
1305 }
1306 }
xed3_phash_find_map0x0F_opcode0x41_vv1(const xed_decoded_inst_t * d)1307 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x41_vv1(const xed_decoded_inst_t* d)
1308 {
1309 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1310 static const lu_entry_t lu_table[5] = {
1311 /*empty slot1 */ {0,0},
1312 /*h(23)=1 VV1 0x41 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W1*/ {23, 3461},
1313 /*h(17)=2 VV1 0x41 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W0*/ {17, 2838},
1314 /*h(19)=3 VV1 0x41 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W1*/ {19, 2846},
1315 /*h(21)=4 VV1 0x41 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W0*/ {21, 2830}
1316 };
1317 xed_union64_t t, u;
1318 xed_uint64_t key = 0;
1319 xed_uint64_t hidx = 0;
1320 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
1321 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
1322 if(lu_table[hidx].key == key) {
1323     return lu_table[hidx].value;
1324 }
1325 else{
1326     return 0;
1327 }
1328 }
xed3_phash_find_map0x0F_opcode0x42_vv1(const xed_decoded_inst_t * d)1329 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x42_vv1(const xed_decoded_inst_t* d)
1330 {
1331 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1332 static const lu_entry_t lu_table[5] = {
1333 /*empty slot1 */ {0,0},
1334 /*h(23)=1 VV1 0x42 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W1*/ {23, 2831},
1335 /*h(17)=2 VV1 0x42 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W0*/ {17, 2845},
1336 /*h(19)=3 VV1 0x42 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W1*/ {19, 2840},
1337 /*h(21)=4 VV1 0x42 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W0*/ {21, 2823}
1338 };
1339 xed_union64_t t, u;
1340 xed_uint64_t key = 0;
1341 xed_uint64_t hidx = 0;
1342 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
1343 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
1344 if(lu_table[hidx].key == key) {
1345     return lu_table[hidx].value;
1346 }
1347 else{
1348     return 0;
1349 }
1350 }
xed3_phash_find_map0x0F_opcode0x44_vv1(const xed_decoded_inst_t * d)1351 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x44_vv1(const xed_decoded_inst_t* d)
1352 {
1353 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1354 static const lu_entry_t lu_table[8] = {
1355 /*h(13)=0 VV1 0x44 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR*/ {13, 2953},
1356 /*h(31)=1 VV1 0x44 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W1  NOVSR*/ {31, 2959},
1357 /*h(15)=2 VV1 0x44 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W1  NOVSR*/ {15, 2952},
1358 /*empty slot1 */ {0,0},
1359 /*empty slot1 */ {0,0},
1360 /*empty slot1 */ {0,0},
1361 /*empty slot1 */ {0,0},
1362 /*h(29)=7 VV1 0x44 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR*/ {29, 2958}
1363 };
1364 xed_union64_t t;
1365 xed_uint64_t key = 0;
1366 xed_uint64_t hidx = 0;
1367 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
1368 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-3));
1369 if(lu_table[hidx].key == key) {
1370     return lu_table[hidx].value;
1371 }
1372 else{
1373     return 0;
1374 }
1375 }
xed3_phash_find_map0x0F_opcode0x45_vv1(const xed_decoded_inst_t * d)1376 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x45_vv1(const xed_decoded_inst_t* d)
1377 {
1378 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1379 static const lu_entry_t lu_table[5] = {
1380 /*empty slot1 */ {0,0},
1381 /*h(23)=1 VV1 0x45 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W1*/ {23, 2648},
1382 /*h(17)=2 VV1 0x45 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W0*/ {17, 3690},
1383 /*h(19)=3 VV1 0x45 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W1*/ {19, 2673},
1384 /*h(21)=4 VV1 0x45 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W0*/ {21, 3621}
1385 };
1386 xed_union64_t t, u;
1387 xed_uint64_t key = 0;
1388 xed_uint64_t hidx = 0;
1389 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
1390 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
1391 if(lu_table[hidx].key == key) {
1392     return lu_table[hidx].value;
1393 }
1394 else{
1395     return 0;
1396 }
1397 }
xed3_phash_find_map0x0F_opcode0x46_vv1(const xed_decoded_inst_t * d)1398 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x46_vv1(const xed_decoded_inst_t* d)
1399 {
1400 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1401 static const lu_entry_t lu_table[5] = {
1402 /*empty slot1 */ {0,0},
1403 /*h(23)=1 VV1 0x46 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W1*/ {23, 2302},
1404 /*h(17)=2 VV1 0x46 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W0*/ {17, 2288},
1405 /*h(19)=3 VV1 0x46 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W1*/ {19, 2285},
1406 /*h(21)=4 VV1 0x46 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W0*/ {21, 2299}
1407 };
1408 xed_union64_t t, u;
1409 xed_uint64_t key = 0;
1410 xed_uint64_t hidx = 0;
1411 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
1412 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
1413 if(lu_table[hidx].key == key) {
1414     return lu_table[hidx].value;
1415 }
1416 else{
1417     return 0;
1418 }
1419 }
xed3_phash_find_map0x0F_opcode0x47_vv1(const xed_decoded_inst_t * d)1420 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x47_vv1(const xed_decoded_inst_t* d)
1421 {
1422 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1423 static const lu_entry_t lu_table[5] = {
1424 /*empty slot1 */ {0,0},
1425 /*h(23)=1 VV1 0x47 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W1*/ {23, 3634},
1426 /*h(17)=2 VV1 0x47 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W0*/ {17, 3553},
1427 /*h(19)=3 VV1 0x47 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W1*/ {19, 2383},
1428 /*h(21)=4 VV1 0x47 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W0*/ {21, 3362}
1429 };
1430 xed_union64_t t, u;
1431 xed_uint64_t key = 0;
1432 xed_uint64_t hidx = 0;
1433 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
1434 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
1435 if(lu_table[hidx].key == key) {
1436     return lu_table[hidx].value;
1437 }
1438 else{
1439     return 0;
1440 }
1441 }
xed3_phash_find_map0x0F_opcode0x4a_vv1(const xed_decoded_inst_t * d)1442 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x4a_vv1(const xed_decoded_inst_t* d)
1443 {
1444 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1445 static const lu_entry_t lu_table[5] = {
1446 /*empty slot1 */ {0,0},
1447 /*h(23)=1 VV1 0x4A V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W1*/ {23, 2839},
1448 /*h(17)=2 VV1 0x4A VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W0*/ {17, 2824},
1449 /*h(19)=3 VV1 0x4A VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W1*/ {19, 2829},
1450 /*h(21)=4 VV1 0x4A V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W0*/ {21, 2847}
1451 };
1452 xed_union64_t t, u;
1453 xed_uint64_t key = 0;
1454 xed_uint64_t hidx = 0;
1455 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
1456 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
1457 if(lu_table[hidx].key == key) {
1458     return lu_table[hidx].value;
1459 }
1460 else{
1461     return 0;
1462 }
1463 }
xed3_phash_find_map0x0F_opcode0x4b_vv1(const xed_decoded_inst_t * d)1464 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x4b_vv1(const xed_decoded_inst_t* d)
1465 {
1466 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1467 static const lu_entry_t lu_table[5] = {
1468 /*empty slot1 */ {0,0},
1469 /*empty slot1 */ {0,0},
1470 /*h(17)=2 VV1 0x4B VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W0*/ {17, 2978},
1471 /*h(19)=3 VV1 0x4B VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W1*/ {19, 2406},
1472 /*h(21)=4 VV1 0x4B V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=1  W0*/ {21, 3075}
1473 };
1474 xed_union64_t t, u;
1475 xed_uint64_t key = 0;
1476 xed_uint64_t hidx = 0;
1477 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
1478 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
1479 if(lu_table[hidx].key == key) {
1480     return lu_table[hidx].value;
1481 }
1482 else{
1483     return 0;
1484 }
1485 }
xed3_phash_find_map0x0F_opcode0x50_vv1(const xed_decoded_inst_t * d)1486 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x50_vv1(const xed_decoded_inst_t* d)
1487 {
1488 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1489 static const lu_entry_t lu_table[4] = {
1490 /*h(7)=0 VV1 0x50  VL128 VNP V0F  NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 2208},
1491 /*h(39)=1 VV1 0x50  VL256 VNP V0F  NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {39, 2209},
1492 /*h(15)=2 VV1 0x50  VL128 V66 V0F  NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 2202},
1493 /*h(47)=3 VV1 0x50  VL256 V66 V0F  NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 2203}
1494 };
1495 xed_uint64_t key = 0;
1496 xed_uint64_t hidx = 0;
1497 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
1498 hidx = ((9*key % 7) % 4);
1499 if(lu_table[hidx].key == key) {
1500     return lu_table[hidx].value;
1501 }
1502 else{
1503     return 0;
1504 }
1505 }
xed3_phash_find_map0x0F_opcode0x51_vv1(const xed_decoded_inst_t * d)1506 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x51_vv1(const xed_decoded_inst_t* d)
1507 {
1508 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1509 static const lu_entry_t lu_table[144] = {
1510 /*h(89)=0 VV1 0x51  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {89, 2507},
1511 /*empty slot1 */ {0,0},
1512 /*h(123)=2 VV1 0x51  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {123, 2507},
1513 /*empty slot1 */ {0,0},
1514 /*empty slot1 */ {0,0},
1515 /*empty slot1 */ {0,0},
1516 /*h(47)=6 VV1 0x51  VL256 V66 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 2670},
1517 /*empty slot1 */ {0,0},
1518 /*h(81)=8 VV1 0x51  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {81, 2499},
1519 /*h(26)=9 VV1 0x51  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {26, 2506},
1520 /*h(115)=10 VV1 0x51  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {115, 2499},
1521 /*h(60)=11 VV1 0x51  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {60, 2506},
1522 /*empty slot1 */ {0,0},
1523 /*h(94)=13 VV1 0x51  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {94, 2506},
1524 /*h(39)=14 VV1 0x51  VL256 VNP NOVSR V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {39, 2658},
1525 /*empty slot1 */ {0,0},
1526 /*empty slot1 */ {0,0},
1527 /*h(18)=17 VV1 0x51  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {18, 2498},
1528 /*empty slot1 */ {0,0},
1529 /*h(52)=19 VV1 0x51  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {52, 2498},
1530 /*empty slot1 */ {0,0},
1531 /*h(86)=21 VV1 0x51  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {86, 2498},
1532 /*h(31)=22 VV1 0x51  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {31, 2507},
1533 /*h(120)=23 VV1 0x51  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {120, 2506},
1534 /*empty slot1 */ {0,0},
1535 /*empty slot1 */ {0,0},
1536 /*empty slot1 */ {0,0},
1537 /*empty slot1 */ {0,0},
1538 /*empty slot1 */ {0,0},
1539 /*empty slot1 */ {0,0},
1540 /*h(23)=30 VV1 0x51  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 2499},
1541 /*h(112)=31 VV1 0x51  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {112, 2498},
1542 /*h(57)=32 VV1 0x51  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {57, 2507},
1543 /*empty slot1 */ {0,0},
1544 /*h(91)=34 VV1 0x51  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {91, 2507},
1545 /*empty slot1 */ {0,0},
1546 /*h(125)=36 VV1 0x51  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {125, 2507},
1547 /*empty slot1 */ {0,0},
1548 /*h(15)=38 VV1 0x51  VL128 V66 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 2668},
1549 /*empty slot1 */ {0,0},
1550 /*h(49)=40 VV1 0x51  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {49, 2499},
1551 /*empty slot1 */ {0,0},
1552 /*h(83)=42 VV1 0x51  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {83, 2499},
1553 /*h(28)=43 VV1 0x51  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {28, 2506},
1554 /*h(117)=44 VV1 0x51  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {117, 2499},
1555 /*h(62)=45 VV1 0x51  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {62, 2506},
1556 /*h(7)=46 VV1 0x51  VL128 VNP NOVSR V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 2656},
1557 /*empty slot1 */ {0,0},
1558 /*empty slot1 */ {0,0},
1559 /*empty slot1 */ {0,0},
1560 /*empty slot1 */ {0,0},
1561 /*h(20)=51 VV1 0x51  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 2498},
1562 /*empty slot1 */ {0,0},
1563 /*h(54)=53 VV1 0x51  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {54, 2498},
1564 /*empty slot1 */ {0,0},
1565 /*h(88)=55 VV1 0x51  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {88, 2506},
1566 /*empty slot1 */ {0,0},
1567 /*h(122)=57 VV1 0x51  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {122, 2506},
1568 /*empty slot1 */ {0,0},
1569 /*empty slot1 */ {0,0},
1570 /*empty slot1 */ {0,0},
1571 /*h(46)=61 VV1 0x51  VL256 V66 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 2669},
1572 /*empty slot1 */ {0,0},
1573 /*h(80)=63 VV1 0x51  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {80, 2498},
1574 /*h(25)=64 VV1 0x51  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {25, 2507},
1575 /*h(114)=65 VV1 0x51  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {114, 2498},
1576 /*h(59)=66 VV1 0x51  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {59, 2507},
1577 /*empty slot1 */ {0,0},
1578 /*h(93)=68 VV1 0x51  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {93, 2507},
1579 /*h(38)=69 VV1 0x51  VL256 VNP NOVSR V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {38, 2657},
1580 /*h(127)=70 VV1 0x51  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {127, 2507},
1581 /*empty slot1 */ {0,0},
1582 /*h(17)=72 VV1 0x51  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {17, 2499},
1583 /*empty slot1 */ {0,0},
1584 /*h(51)=74 VV1 0x51  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {51, 2499},
1585 /*empty slot1 */ {0,0},
1586 /*h(85)=76 VV1 0x51  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {85, 2499},
1587 /*h(30)=77 VV1 0x51  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {30, 2506},
1588 /*h(119)=78 VV1 0x51  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {119, 2499},
1589 /*empty slot1 */ {0,0},
1590 /*empty slot1 */ {0,0},
1591 /*empty slot1 */ {0,0},
1592 /*empty slot1 */ {0,0},
1593 /*empty slot1 */ {0,0},
1594 /*empty slot1 */ {0,0},
1595 /*h(22)=85 VV1 0x51  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 2498},
1596 /*empty slot1 */ {0,0},
1597 /*h(56)=87 VV1 0x51  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {56, 2506},
1598 /*empty slot1 */ {0,0},
1599 /*h(90)=89 VV1 0x51  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {90, 2506},
1600 /*empty slot1 */ {0,0},
1601 /*h(124)=91 VV1 0x51  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {124, 2506},
1602 /*empty slot1 */ {0,0},
1603 /*h(14)=93 VV1 0x51  VL128 V66 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 2667},
1604 /*empty slot1 */ {0,0},
1605 /*h(48)=95 VV1 0x51  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {48, 2498},
1606 /*empty slot1 */ {0,0},
1607 /*h(82)=97 VV1 0x51  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {82, 2498},
1608 /*h(27)=98 VV1 0x51  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {27, 2507},
1609 /*h(116)=99 VV1 0x51  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {116, 2498},
1610 /*h(61)=100 VV1 0x51  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {61, 2507},
1611 /*h(6)=101 VV1 0x51  VL128 VNP NOVSR V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 2655},
1612 /*h(95)=102 VV1 0x51  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {95, 2507},
1613 /*empty slot1 */ {0,0},
1614 /*empty slot1 */ {0,0},
1615 /*empty slot1 */ {0,0},
1616 /*h(19)=106 VV1 0x51  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {19, 2499},
1617 /*empty slot1 */ {0,0},
1618 /*h(53)=108 VV1 0x51  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {53, 2499},
1619 /*empty slot1 */ {0,0},
1620 /*h(87)=110 VV1 0x51  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {87, 2499},
1621 /*empty slot1 */ {0,0},
1622 /*h(121)=112 VV1 0x51  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {121, 2507},
1623 /*empty slot1 */ {0,0},
1624 /*empty slot1 */ {0,0},
1625 /*empty slot1 */ {0,0},
1626 /*empty slot1 */ {0,0},
1627 /*empty slot1 */ {0,0},
1628 /*empty slot1 */ {0,0},
1629 /*h(24)=119 VV1 0x51  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {24, 2506},
1630 /*h(113)=120 VV1 0x51  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {113, 2499},
1631 /*h(58)=121 VV1 0x51  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {58, 2506},
1632 /*empty slot1 */ {0,0},
1633 /*h(92)=123 VV1 0x51  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {92, 2506},
1634 /*empty slot1 */ {0,0},
1635 /*h(126)=125 VV1 0x51  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {126, 2506},
1636 /*empty slot1 */ {0,0},
1637 /*h(16)=127 VV1 0x51  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {16, 2498},
1638 /*empty slot1 */ {0,0},
1639 /*h(50)=129 VV1 0x51  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {50, 2498},
1640 /*empty slot1 */ {0,0},
1641 /*h(84)=131 VV1 0x51  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {84, 2498},
1642 /*h(29)=132 VV1 0x51  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {29, 2507},
1643 /*h(118)=133 VV1 0x51  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {118, 2498},
1644 /*h(63)=134 VV1 0x51  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {63, 2507},
1645 /*empty slot1 */ {0,0},
1646 /*empty slot1 */ {0,0},
1647 /*empty slot1 */ {0,0},
1648 /*empty slot1 */ {0,0},
1649 /*empty slot1 */ {0,0},
1650 /*h(21)=140 VV1 0x51  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 2499},
1651 /*empty slot1 */ {0,0},
1652 /*h(55)=142 VV1 0x51  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {55, 2499},
1653 /*empty slot1 */ {0,0}
1654 };
1655 xed_union64_t t, u;
1656 xed_uint64_t key = 0;
1657 xed_uint64_t hidx = 0;
1658 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
1659 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 144ULL, u.s.hi32);
1660 if(lu_table[hidx].key == key) {
1661     return lu_table[hidx].value;
1662 }
1663 else{
1664     return 0;
1665 }
1666 }
xed3_phash_find_map0x0F_opcode0x52_vv1(const xed_decoded_inst_t * d)1667 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x52_vv1(const xed_decoded_inst_t* d)
1668 {
1669 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1670 static const lu_entry_t lu_table[72] = {
1671 /*h(24)=0 VV1 0x52  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {24, 2545},
1672 /*h(122)=1 VV1 0x52  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {122, 2545},
1673 /*h(25)=2 VV1 0x52  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {25, 2546},
1674 /*empty slot1 */ {0,0},
1675 /*h(123)=4 VV1 0x52  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {123, 2546},
1676 /*h(26)=5 VV1 0x52  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {26, 2545},
1677 /*empty slot1 */ {0,0},
1678 /*h(124)=7 VV1 0x52  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {124, 2545},
1679 /*h(27)=8 VV1 0x52  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {27, 2546},
1680 /*empty slot1 */ {0,0},
1681 /*h(125)=10 VV1 0x52  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {125, 2546},
1682 /*h(28)=11 VV1 0x52  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {28, 2545},
1683 /*empty slot1 */ {0,0},
1684 /*h(126)=13 VV1 0x52  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {126, 2545},
1685 /*h(29)=14 VV1 0x52  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {29, 2546},
1686 /*empty slot1 */ {0,0},
1687 /*h(127)=16 VV1 0x52  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {127, 2546},
1688 /*h(30)=17 VV1 0x52  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {30, 2545},
1689 /*h(6)=18 VV1 0x52  VNP VL128 NOVSR V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3158},
1690 /*empty slot1 */ {0,0},
1691 /*h(31)=20 VV1 0x52  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {31, 2546},
1692 /*h(7)=21 VV1 0x52  VNP VL128 NOVSR V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 3159},
1693 /*h(56)=22 VV1 0x52  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {56, 2545},
1694 /*empty slot1 */ {0,0},
1695 /*empty slot1 */ {0,0},
1696 /*h(57)=25 VV1 0x52  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {57, 2546},
1697 /*empty slot1 */ {0,0},
1698 /*empty slot1 */ {0,0},
1699 /*h(58)=28 VV1 0x52  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {58, 2545},
1700 /*empty slot1 */ {0,0},
1701 /*empty slot1 */ {0,0},
1702 /*h(59)=31 VV1 0x52  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {59, 2546},
1703 /*empty slot1 */ {0,0},
1704 /*empty slot1 */ {0,0},
1705 /*h(60)=34 VV1 0x52  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {60, 2545},
1706 /*empty slot1 */ {0,0},
1707 /*empty slot1 */ {0,0},
1708 /*h(61)=37 VV1 0x52  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {61, 2546},
1709 /*empty slot1 */ {0,0},
1710 /*empty slot1 */ {0,0},
1711 /*h(62)=40 VV1 0x52  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {62, 2545},
1712 /*h(38)=41 VV1 0x52  VNP VL256 NOVSR V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {38, 3160},
1713 /*empty slot1 */ {0,0},
1714 /*h(63)=43 VV1 0x52  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {63, 2546},
1715 /*h(39)=44 VV1 0x52  VNP VL256 NOVSR V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {39, 3161},
1716 /*h(88)=45 VV1 0x52  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {88, 2545},
1717 /*empty slot1 */ {0,0},
1718 /*empty slot1 */ {0,0},
1719 /*h(89)=48 VV1 0x52  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {89, 2546},
1720 /*empty slot1 */ {0,0},
1721 /*empty slot1 */ {0,0},
1722 /*h(90)=51 VV1 0x52  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {90, 2545},
1723 /*empty slot1 */ {0,0},
1724 /*empty slot1 */ {0,0},
1725 /*h(91)=54 VV1 0x52  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {91, 2546},
1726 /*empty slot1 */ {0,0},
1727 /*empty slot1 */ {0,0},
1728 /*h(92)=57 VV1 0x52  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {92, 2545},
1729 /*empty slot1 */ {0,0},
1730 /*empty slot1 */ {0,0},
1731 /*h(93)=60 VV1 0x52  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {93, 2546},
1732 /*empty slot1 */ {0,0},
1733 /*empty slot1 */ {0,0},
1734 /*h(94)=63 VV1 0x52  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {94, 2545},
1735 /*empty slot1 */ {0,0},
1736 /*empty slot1 */ {0,0},
1737 /*h(95)=66 VV1 0x52  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {95, 2546},
1738 /*empty slot1 */ {0,0},
1739 /*h(120)=68 VV1 0x52  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {120, 2545},
1740 /*empty slot1 */ {0,0},
1741 /*empty slot1 */ {0,0},
1742 /*h(121)=71 VV1 0x52  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {121, 2546}
1743 };
1744 xed_uint64_t key = 0;
1745 xed_uint64_t hidx = 0;
1746 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
1747 hidx = ((3*key % 73) % 72);
1748 if(lu_table[hidx].key == key) {
1749     return lu_table[hidx].value;
1750 }
1751 else{
1752     return 0;
1753 }
1754 }
xed3_phash_find_map0x0F_opcode0x53_vv1(const xed_decoded_inst_t * d)1755 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x53_vv1(const xed_decoded_inst_t* d)
1756 {
1757 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1758 static const lu_entry_t lu_table[72] = {
1759 /*h(24)=0 VV1 0x53  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {24, 2230},
1760 /*h(122)=1 VV1 0x53  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {122, 2230},
1761 /*h(25)=2 VV1 0x53  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {25, 2231},
1762 /*empty slot1 */ {0,0},
1763 /*h(123)=4 VV1 0x53  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {123, 2231},
1764 /*h(26)=5 VV1 0x53  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {26, 2230},
1765 /*empty slot1 */ {0,0},
1766 /*h(124)=7 VV1 0x53  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {124, 2230},
1767 /*h(27)=8 VV1 0x53  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {27, 2231},
1768 /*empty slot1 */ {0,0},
1769 /*h(125)=10 VV1 0x53  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {125, 2231},
1770 /*h(28)=11 VV1 0x53  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {28, 2230},
1771 /*empty slot1 */ {0,0},
1772 /*h(126)=13 VV1 0x53  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {126, 2230},
1773 /*h(29)=14 VV1 0x53  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {29, 2231},
1774 /*empty slot1 */ {0,0},
1775 /*h(127)=16 VV1 0x53  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {127, 2231},
1776 /*h(30)=17 VV1 0x53  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {30, 2230},
1777 /*h(6)=18 VV1 0x53  VNP VL128 NOVSR V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3466},
1778 /*empty slot1 */ {0,0},
1779 /*h(31)=20 VV1 0x53  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {31, 2231},
1780 /*h(7)=21 VV1 0x53  VNP VL128 NOVSR V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 3467},
1781 /*h(56)=22 VV1 0x53  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {56, 2230},
1782 /*empty slot1 */ {0,0},
1783 /*empty slot1 */ {0,0},
1784 /*h(57)=25 VV1 0x53  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {57, 2231},
1785 /*empty slot1 */ {0,0},
1786 /*empty slot1 */ {0,0},
1787 /*h(58)=28 VV1 0x53  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {58, 2230},
1788 /*empty slot1 */ {0,0},
1789 /*empty slot1 */ {0,0},
1790 /*h(59)=31 VV1 0x53  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {59, 2231},
1791 /*empty slot1 */ {0,0},
1792 /*empty slot1 */ {0,0},
1793 /*h(60)=34 VV1 0x53  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {60, 2230},
1794 /*empty slot1 */ {0,0},
1795 /*empty slot1 */ {0,0},
1796 /*h(61)=37 VV1 0x53  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {61, 2231},
1797 /*empty slot1 */ {0,0},
1798 /*empty slot1 */ {0,0},
1799 /*h(62)=40 VV1 0x53  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {62, 2230},
1800 /*h(38)=41 VV1 0x53  VNP VL256 NOVSR V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {38, 3468},
1801 /*empty slot1 */ {0,0},
1802 /*h(63)=43 VV1 0x53  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {63, 2231},
1803 /*h(39)=44 VV1 0x53  VNP VL256 NOVSR V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {39, 3469},
1804 /*h(88)=45 VV1 0x53  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {88, 2230},
1805 /*empty slot1 */ {0,0},
1806 /*empty slot1 */ {0,0},
1807 /*h(89)=48 VV1 0x53  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {89, 2231},
1808 /*empty slot1 */ {0,0},
1809 /*empty slot1 */ {0,0},
1810 /*h(90)=51 VV1 0x53  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {90, 2230},
1811 /*empty slot1 */ {0,0},
1812 /*empty slot1 */ {0,0},
1813 /*h(91)=54 VV1 0x53  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {91, 2231},
1814 /*empty slot1 */ {0,0},
1815 /*empty slot1 */ {0,0},
1816 /*h(92)=57 VV1 0x53  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {92, 2230},
1817 /*empty slot1 */ {0,0},
1818 /*empty slot1 */ {0,0},
1819 /*h(93)=60 VV1 0x53  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {93, 2231},
1820 /*empty slot1 */ {0,0},
1821 /*empty slot1 */ {0,0},
1822 /*h(94)=63 VV1 0x53  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {94, 2230},
1823 /*empty slot1 */ {0,0},
1824 /*empty slot1 */ {0,0},
1825 /*h(95)=66 VV1 0x53  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {95, 2231},
1826 /*empty slot1 */ {0,0},
1827 /*h(120)=68 VV1 0x53  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {120, 2230},
1828 /*empty slot1 */ {0,0},
1829 /*empty slot1 */ {0,0},
1830 /*h(121)=71 VV1 0x53  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {121, 2231}
1831 };
1832 xed_uint64_t key = 0;
1833 xed_uint64_t hidx = 0;
1834 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
1835 hidx = ((3*key % 73) % 72);
1836 if(lu_table[hidx].key == key) {
1837     return lu_table[hidx].value;
1838 }
1839 else{
1840     return 0;
1841 }
1842 }
xed3_phash_find_map0x0F_opcode0x54_vv1(const xed_decoded_inst_t * d)1843 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x54_vv1(const xed_decoded_inst_t* d)
1844 {
1845 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1846 static const lu_entry_t lu_table[10] = {
1847 /*h(0)=0 VV1 0x54  VL128 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {0, 2402},
1848 /*h(10)=1 VV1 0x54  VL256 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2381},
1849 /*h(2)=2 VV1 0x54  VL128 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2379},
1850 /*empty slot1 */ {0,0},
1851 /*empty slot1 */ {0,0},
1852 /*h(9)=5 VV1 0x54  VL256 VNP V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {9, 2405},
1853 /*h(1)=6 VV1 0x54  VL128 VNP V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {1, 2403},
1854 /*h(11)=7 VV1 0x54  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2382},
1855 /*h(3)=8 VV1 0x54  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2380},
1856 /*h(8)=9 VV1 0x54  VL256 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {8, 2404}
1857 };
1858 xed_union64_t t, u;
1859 xed_uint64_t key = 0;
1860 xed_uint64_t hidx = 0;
1861 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
1862 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 10ULL, u.s.hi32);
1863 if(lu_table[hidx].key == key) {
1864     return lu_table[hidx].value;
1865 }
1866 else{
1867     return 0;
1868 }
1869 }
xed3_phash_find_map0x0F_opcode0x55_vv1(const xed_decoded_inst_t * d)1870 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x55_vv1(const xed_decoded_inst_t* d)
1871 {
1872 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1873 static const lu_entry_t lu_table[10] = {
1874 /*h(0)=0 VV1 0x55  VL128 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {0, 3106},
1875 /*h(10)=1 VV1 0x55  VL256 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3124},
1876 /*h(2)=2 VV1 0x55  VL128 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3122},
1877 /*empty slot1 */ {0,0},
1878 /*empty slot1 */ {0,0},
1879 /*h(9)=5 VV1 0x55  VL256 VNP V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {9, 3109},
1880 /*h(1)=6 VV1 0x55  VL128 VNP V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {1, 3107},
1881 /*h(11)=7 VV1 0x55  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3125},
1882 /*h(3)=8 VV1 0x55  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3123},
1883 /*h(8)=9 VV1 0x55  VL256 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {8, 3108}
1884 };
1885 xed_union64_t t, u;
1886 xed_uint64_t key = 0;
1887 xed_uint64_t hidx = 0;
1888 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
1889 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 10ULL, u.s.hi32);
1890 if(lu_table[hidx].key == key) {
1891     return lu_table[hidx].value;
1892 }
1893 else{
1894     return 0;
1895 }
1896 }
xed3_phash_find_map0x0F_opcode0x56_vv1(const xed_decoded_inst_t * d)1897 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x56_vv1(const xed_decoded_inst_t* d)
1898 {
1899 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1900 static const lu_entry_t lu_table[10] = {
1901 /*h(0)=0 VV1 0x56  VNP V0F VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {0, 3559},
1902 /*h(10)=1 VV1 0x56  VL256 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3551},
1903 /*h(2)=2 VV1 0x56  VL128 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3549},
1904 /*empty slot1 */ {0,0},
1905 /*empty slot1 */ {0,0},
1906 /*h(9)=5 VV1 0x56  VNP V0F VL256 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {9, 3562},
1907 /*h(1)=6 VV1 0x56  VNP V0F VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {1, 3560},
1908 /*h(11)=7 VV1 0x56  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3552},
1909 /*h(3)=8 VV1 0x56  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3550},
1910 /*h(8)=9 VV1 0x56  VNP V0F VL256 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {8, 3561}
1911 };
1912 xed_union64_t t, u;
1913 xed_uint64_t key = 0;
1914 xed_uint64_t hidx = 0;
1915 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
1916 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 10ULL, u.s.hi32);
1917 if(lu_table[hidx].key == key) {
1918     return lu_table[hidx].value;
1919 }
1920 else{
1921     return 0;
1922 }
1923 }
xed3_phash_find_map0x0F_opcode0x57_vv1(const xed_decoded_inst_t * d)1924 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x57_vv1(const xed_decoded_inst_t* d)
1925 {
1926 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1927 static const lu_entry_t lu_table[10] = {
1928 /*h(0)=0 VV1 0x57  VNP V0F VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {0, 2910},
1929 /*h(10)=1 VV1 0x57  V66 V0F VL256 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2891},
1930 /*h(2)=2 VV1 0x57  V66 V0F VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2889},
1931 /*empty slot1 */ {0,0},
1932 /*empty slot1 */ {0,0},
1933 /*h(9)=5 VV1 0x57  VNP V0F VL256 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {9, 2913},
1934 /*h(1)=6 VV1 0x57  VNP V0F VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {1, 2911},
1935 /*h(11)=7 VV1 0x57  V66 V0F VL256 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2892},
1936 /*h(3)=8 VV1 0x57  V66 V0F VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2890},
1937 /*h(8)=9 VV1 0x57  VNP V0F VL256 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {8, 2912}
1938 };
1939 xed_union64_t t, u;
1940 xed_uint64_t key = 0;
1941 xed_uint64_t hidx = 0;
1942 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
1943 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 10ULL, u.s.hi32);
1944 if(lu_table[hidx].key == key) {
1945     return lu_table[hidx].value;
1946 }
1947 else{
1948     return 0;
1949 }
1950 }
xed3_phash_find_map0x0F_opcode0x58_vv1(const xed_decoded_inst_t * d)1951 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x58_vv1(const xed_decoded_inst_t* d)
1952 {
1953 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
1954 static const lu_entry_t lu_table[34] = {
1955 /*h(0)=0 VV1 0x58  VNP VL128 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {0, 3204},
1956 /*h(13)=1 VV1 0x58  VF2  V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {13, 3732},
1957 /*empty slot1 */ {0,0},
1958 /*h(5)=3 VV1 0x58  VF2  V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 3732},
1959 /*empty slot1 */ {0,0},
1960 /*h(31)=5 VV1 0x58  VF3  V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {31, 3748},
1961 /*h(10)=6 VV1 0x58  V66 VL256 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3190},
1962 /*h(23)=7 VV1 0x58  VF3  V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 3748},
1963 /*h(2)=8 VV1 0x58  V66 VL128 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3188},
1964 /*h(15)=9 VV1 0x58  VF3  V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 3748},
1965 /*h(28)=10 VV1 0x58  VF2  V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {28, 3731},
1966 /*h(7)=11 VV1 0x58  VF3  V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 3748},
1967 /*h(20)=12 VV1 0x58  VF2  V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 3731},
1968 /*empty slot1 */ {0,0},
1969 /*h(12)=14 VV1 0x58  VF2  V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {12, 3731},
1970 /*empty slot1 */ {0,0},
1971 /*h(4)=16 VV1 0x58  VF2  V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 3731},
1972 /*empty slot1 */ {0,0},
1973 /*h(30)=18 VV1 0x58  VF3  V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {30, 3747},
1974 /*h(9)=19 VV1 0x58  VNP VL256 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {9, 3207},
1975 /*h(22)=20 VV1 0x58  VF3  V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 3747},
1976 /*h(1)=21 VV1 0x58  VNP VL128 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {1, 3205},
1977 /*h(14)=22 VV1 0x58  VF3  V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 3747},
1978 /*empty slot1 */ {0,0},
1979 /*h(6)=24 VV1 0x58  VF3  V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3747},
1980 /*empty slot1 */ {0,0},
1981 /*empty slot1 */ {0,0},
1982 /*h(11)=27 VV1 0x58  V66 VL256 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3191},
1983 /*empty slot1 */ {0,0},
1984 /*h(3)=29 VV1 0x58  V66 VL128 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3189},
1985 /*empty slot1 */ {0,0},
1986 /*h(29)=31 VV1 0x58  VF2  V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {29, 3732},
1987 /*h(8)=32 VV1 0x58  VNP VL256 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {8, 3206},
1988 /*h(21)=33 VV1 0x58  VF2  V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 3732}
1989 };
1990 xed_union64_t t, u;
1991 xed_uint64_t key = 0;
1992 xed_uint64_t hidx = 0;
1993 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
1994 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 34ULL, u.s.hi32);
1995 if(lu_table[hidx].key == key) {
1996     return lu_table[hidx].value;
1997 }
1998 else{
1999     return 0;
2000 }
2001 }
xed3_phash_find_map0x0F_opcode0x59_vv1(const xed_decoded_inst_t * d)2002 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x59_vv1(const xed_decoded_inst_t* d)
2003 {
2004 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2005 static const lu_entry_t lu_table[34] = {
2006 /*h(0)=0 VV1 0x59  VL128 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {0, 2409},
2007 /*h(13)=1 VV1 0x59  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {13, 2408},
2008 /*empty slot1 */ {0,0},
2009 /*h(5)=3 VV1 0x59  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 2408},
2010 /*empty slot1 */ {0,0},
2011 /*h(31)=5 VV1 0x59  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {31, 2378},
2012 /*h(10)=6 VV1 0x59  VL256 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2759},
2013 /*h(23)=7 VV1 0x59  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 2378},
2014 /*h(2)=8 VV1 0x59  VL128 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2757},
2015 /*h(15)=9 VV1 0x59  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 2378},
2016 /*h(28)=10 VV1 0x59  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {28, 2407},
2017 /*h(7)=11 VV1 0x59  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 2378},
2018 /*h(20)=12 VV1 0x59  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 2407},
2019 /*empty slot1 */ {0,0},
2020 /*h(12)=14 VV1 0x59  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {12, 2407},
2021 /*empty slot1 */ {0,0},
2022 /*h(4)=16 VV1 0x59  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 2407},
2023 /*empty slot1 */ {0,0},
2024 /*h(30)=18 VV1 0x59  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {30, 2377},
2025 /*h(9)=19 VV1 0x59  VL256 VNP V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {9, 2412},
2026 /*h(22)=20 VV1 0x59  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 2377},
2027 /*h(1)=21 VV1 0x59  VL128 VNP V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {1, 2410},
2028 /*h(14)=22 VV1 0x59  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 2377},
2029 /*empty slot1 */ {0,0},
2030 /*h(6)=24 VV1 0x59  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 2377},
2031 /*empty slot1 */ {0,0},
2032 /*empty slot1 */ {0,0},
2033 /*h(11)=27 VV1 0x59  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2760},
2034 /*empty slot1 */ {0,0},
2035 /*h(3)=29 VV1 0x59  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2758},
2036 /*empty slot1 */ {0,0},
2037 /*h(29)=31 VV1 0x59  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {29, 2408},
2038 /*h(8)=32 VV1 0x59  VL256 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {8, 2411},
2039 /*h(21)=33 VV1 0x59  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 2408}
2040 };
2041 xed_union64_t t, u;
2042 xed_uint64_t key = 0;
2043 xed_uint64_t hidx = 0;
2044 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
2045 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 34ULL, u.s.hi32);
2046 if(lu_table[hidx].key == key) {
2047     return lu_table[hidx].value;
2048 }
2049 else{
2050     return 0;
2051 }
2052 }
xed3_phash_find_map0x0F_opcode0x5a_vv1(const xed_decoded_inst_t * d)2053 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x5a_vv1(const xed_decoded_inst_t* d)
2054 {
2055 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2056 static const lu_entry_t lu_table[144] = {
2057 /*h(89)=0 VV1 0x5A  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {89, 2513},
2058 /*empty slot1 */ {0,0},
2059 /*h(123)=2 VV1 0x5A  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {123, 2513},
2060 /*empty slot1 */ {0,0},
2061 /*empty slot1 */ {0,0},
2062 /*empty slot1 */ {0,0},
2063 /*h(47)=6 VV1 0x5A  V66 VL256 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 3720},
2064 /*empty slot1 */ {0,0},
2065 /*h(81)=8 VV1 0x5A  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {81, 3460},
2066 /*h(26)=9 VV1 0x5A  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {26, 2512},
2067 /*h(115)=10 VV1 0x5A  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {115, 3460},
2068 /*h(60)=11 VV1 0x5A  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {60, 2512},
2069 /*empty slot1 */ {0,0},
2070 /*h(94)=13 VV1 0x5A  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {94, 2512},
2071 /*h(39)=14 VV1 0x5A  VNP VL256 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {39, 3756},
2072 /*empty slot1 */ {0,0},
2073 /*empty slot1 */ {0,0},
2074 /*h(18)=17 VV1 0x5A  VF2 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {18, 3459},
2075 /*empty slot1 */ {0,0},
2076 /*h(52)=19 VV1 0x5A  VF2 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {52, 3459},
2077 /*empty slot1 */ {0,0},
2078 /*h(86)=21 VV1 0x5A  VF2 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {86, 3459},
2079 /*h(31)=22 VV1 0x5A  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {31, 2513},
2080 /*h(120)=23 VV1 0x5A  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {120, 2512},
2081 /*empty slot1 */ {0,0},
2082 /*empty slot1 */ {0,0},
2083 /*empty slot1 */ {0,0},
2084 /*empty slot1 */ {0,0},
2085 /*empty slot1 */ {0,0},
2086 /*empty slot1 */ {0,0},
2087 /*h(23)=30 VV1 0x5A  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 3460},
2088 /*h(112)=31 VV1 0x5A  VF2 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {112, 3459},
2089 /*h(57)=32 VV1 0x5A  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {57, 2513},
2090 /*empty slot1 */ {0,0},
2091 /*h(91)=34 VV1 0x5A  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {91, 2513},
2092 /*empty slot1 */ {0,0},
2093 /*h(125)=36 VV1 0x5A  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {125, 2513},
2094 /*empty slot1 */ {0,0},
2095 /*h(15)=38 VV1 0x5A  V66 VL128 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 3718},
2096 /*empty slot1 */ {0,0},
2097 /*h(49)=40 VV1 0x5A  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {49, 3460},
2098 /*empty slot1 */ {0,0},
2099 /*h(83)=42 VV1 0x5A  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {83, 3460},
2100 /*h(28)=43 VV1 0x5A  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {28, 2512},
2101 /*h(117)=44 VV1 0x5A  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {117, 3460},
2102 /*h(62)=45 VV1 0x5A  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {62, 2512},
2103 /*h(7)=46 VV1 0x5A  VNP VL128 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 3754},
2104 /*empty slot1 */ {0,0},
2105 /*empty slot1 */ {0,0},
2106 /*empty slot1 */ {0,0},
2107 /*empty slot1 */ {0,0},
2108 /*h(20)=51 VV1 0x5A  VF2 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 3459},
2109 /*empty slot1 */ {0,0},
2110 /*h(54)=53 VV1 0x5A  VF2 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {54, 3459},
2111 /*empty slot1 */ {0,0},
2112 /*h(88)=55 VV1 0x5A  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {88, 2512},
2113 /*empty slot1 */ {0,0},
2114 /*h(122)=57 VV1 0x5A  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {122, 2512},
2115 /*empty slot1 */ {0,0},
2116 /*empty slot1 */ {0,0},
2117 /*empty slot1 */ {0,0},
2118 /*h(46)=61 VV1 0x5A  V66 VL256 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 3719},
2119 /*empty slot1 */ {0,0},
2120 /*h(80)=63 VV1 0x5A  VF2 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {80, 3459},
2121 /*h(25)=64 VV1 0x5A  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {25, 2513},
2122 /*h(114)=65 VV1 0x5A  VF2 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {114, 3459},
2123 /*h(59)=66 VV1 0x5A  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {59, 2513},
2124 /*empty slot1 */ {0,0},
2125 /*h(93)=68 VV1 0x5A  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {93, 2513},
2126 /*h(38)=69 VV1 0x5A  VNP VL256 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {38, 3755},
2127 /*h(127)=70 VV1 0x5A  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {127, 2513},
2128 /*empty slot1 */ {0,0},
2129 /*h(17)=72 VV1 0x5A  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {17, 3460},
2130 /*empty slot1 */ {0,0},
2131 /*h(51)=74 VV1 0x5A  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {51, 3460},
2132 /*empty slot1 */ {0,0},
2133 /*h(85)=76 VV1 0x5A  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {85, 3460},
2134 /*h(30)=77 VV1 0x5A  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {30, 2512},
2135 /*h(119)=78 VV1 0x5A  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {119, 3460},
2136 /*empty slot1 */ {0,0},
2137 /*empty slot1 */ {0,0},
2138 /*empty slot1 */ {0,0},
2139 /*empty slot1 */ {0,0},
2140 /*empty slot1 */ {0,0},
2141 /*empty slot1 */ {0,0},
2142 /*h(22)=85 VV1 0x5A  VF2 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 3459},
2143 /*empty slot1 */ {0,0},
2144 /*h(56)=87 VV1 0x5A  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {56, 2512},
2145 /*empty slot1 */ {0,0},
2146 /*h(90)=89 VV1 0x5A  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {90, 2512},
2147 /*empty slot1 */ {0,0},
2148 /*h(124)=91 VV1 0x5A  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {124, 2512},
2149 /*empty slot1 */ {0,0},
2150 /*h(14)=93 VV1 0x5A  V66 VL128 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 3717},
2151 /*empty slot1 */ {0,0},
2152 /*h(48)=95 VV1 0x5A  VF2 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {48, 3459},
2153 /*empty slot1 */ {0,0},
2154 /*h(82)=97 VV1 0x5A  VF2 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {82, 3459},
2155 /*h(27)=98 VV1 0x5A  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {27, 2513},
2156 /*h(116)=99 VV1 0x5A  VF2 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {116, 3459},
2157 /*h(61)=100 VV1 0x5A  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {61, 2513},
2158 /*h(6)=101 VV1 0x5A  VNP VL128 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3753},
2159 /*h(95)=102 VV1 0x5A  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {95, 2513},
2160 /*empty slot1 */ {0,0},
2161 /*empty slot1 */ {0,0},
2162 /*empty slot1 */ {0,0},
2163 /*h(19)=106 VV1 0x5A  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {19, 3460},
2164 /*empty slot1 */ {0,0},
2165 /*h(53)=108 VV1 0x5A  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {53, 3460},
2166 /*empty slot1 */ {0,0},
2167 /*h(87)=110 VV1 0x5A  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {87, 3460},
2168 /*empty slot1 */ {0,0},
2169 /*h(121)=112 VV1 0x5A  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {121, 2513},
2170 /*empty slot1 */ {0,0},
2171 /*empty slot1 */ {0,0},
2172 /*empty slot1 */ {0,0},
2173 /*empty slot1 */ {0,0},
2174 /*empty slot1 */ {0,0},
2175 /*empty slot1 */ {0,0},
2176 /*h(24)=119 VV1 0x5A  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {24, 2512},
2177 /*h(113)=120 VV1 0x5A  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {113, 3460},
2178 /*h(58)=121 VV1 0x5A  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {58, 2512},
2179 /*empty slot1 */ {0,0},
2180 /*h(92)=123 VV1 0x5A  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {92, 2512},
2181 /*empty slot1 */ {0,0},
2182 /*h(126)=125 VV1 0x5A  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {126, 2512},
2183 /*empty slot1 */ {0,0},
2184 /*h(16)=127 VV1 0x5A  VF2 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {16, 3459},
2185 /*empty slot1 */ {0,0},
2186 /*h(50)=129 VV1 0x5A  VF2 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {50, 3459},
2187 /*empty slot1 */ {0,0},
2188 /*h(84)=131 VV1 0x5A  VF2 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {84, 3459},
2189 /*h(29)=132 VV1 0x5A  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {29, 2513},
2190 /*h(118)=133 VV1 0x5A  VF2 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {118, 3459},
2191 /*h(63)=134 VV1 0x5A  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {63, 2513},
2192 /*empty slot1 */ {0,0},
2193 /*empty slot1 */ {0,0},
2194 /*empty slot1 */ {0,0},
2195 /*empty slot1 */ {0,0},
2196 /*empty slot1 */ {0,0},
2197 /*h(21)=140 VV1 0x5A  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 3460},
2198 /*empty slot1 */ {0,0},
2199 /*h(55)=142 VV1 0x5A  VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {55, 3460},
2200 /*empty slot1 */ {0,0}
2201 };
2202 xed_union64_t t, u;
2203 xed_uint64_t key = 0;
2204 xed_uint64_t hidx = 0;
2205 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
2206 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 144ULL, u.s.hi32);
2207 if(lu_table[hidx].key == key) {
2208     return lu_table[hidx].value;
2209 }
2210 else{
2211     return 0;
2212 }
2213 }
xed3_phash_find_map0x0F_opcode0x5b_vv1(const xed_decoded_inst_t * d)2214 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x5b_vv1(const xed_decoded_inst_t* d)
2215 {
2216 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2217 static const lu_entry_t lu_table[22] = {
2218 /*empty slot1 */ {0,0},
2219 /*h(47)=1 VV1 0x5B  VL256 V66 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 2662},
2220 /*h(39)=2 VV1 0x5B  VL256 VNP V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {39, 3353},
2221 /*h(31)=3 VV1 0x5B  VL128 VF3 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {31, 2955},
2222 /*empty slot1 */ {0,0},
2223 /*h(15)=5 VV1 0x5B  VL128 V66 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 2660},
2224 /*h(62)=6 VV1 0x5B  VL256 VF3 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {62, 2956},
2225 /*h(7)=7 VV1 0x5B  VL128 VNP V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 3351},
2226 /*empty slot1 */ {0,0},
2227 /*h(46)=9 VV1 0x5B  VL256 V66 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 2661},
2228 /*h(38)=10 VV1 0x5B  VL256 VNP V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {38, 3352},
2229 /*h(30)=11 VV1 0x5B  VL128 VF3 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {30, 2954},
2230 /*empty slot1 */ {0,0},
2231 /*empty slot1 */ {0,0},
2232 /*h(14)=14 VV1 0x5B  VL128 V66 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 2659},
2233 /*h(6)=15 VV1 0x5B  VL128 VNP V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3350},
2234 /*empty slot1 */ {0,0},
2235 /*empty slot1 */ {0,0},
2236 /*empty slot1 */ {0,0},
2237 /*empty slot1 */ {0,0},
2238 /*h(63)=20 VV1 0x5B  VL256 VF3 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {63, 2957},
2239 /*empty slot1 */ {0,0}
2240 };
2241 xed_union64_t t, u;
2242 xed_uint64_t key = 0;
2243 xed_uint64_t hidx = 0;
2244 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
2245 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 22ULL, u.s.hi32);
2246 if(lu_table[hidx].key == key) {
2247     return lu_table[hidx].value;
2248 }
2249 else{
2250     return 0;
2251 }
2252 }
xed3_phash_find_map0x0F_opcode0x5c_vv1(const xed_decoded_inst_t * d)2253 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x5c_vv1(const xed_decoded_inst_t* d)
2254 {
2255 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2256 static const lu_entry_t lu_table[34] = {
2257 /*h(0)=0 VV1 0x5C  VL128 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {0, 3037},
2258 /*h(13)=1 VV1 0x5C  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {13, 2654},
2259 /*empty slot1 */ {0,0},
2260 /*h(5)=3 VV1 0x5C  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 2654},
2261 /*empty slot1 */ {0,0},
2262 /*h(31)=5 VV1 0x5C  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {31, 2672},
2263 /*h(10)=6 VV1 0x5C  V66 V0F VL256 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3023},
2264 /*h(23)=7 VV1 0x5C  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 2672},
2265 /*h(2)=8 VV1 0x5C  V66 V0F VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3021},
2266 /*h(15)=9 VV1 0x5C  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 2672},
2267 /*h(28)=10 VV1 0x5C  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {28, 2653},
2268 /*h(7)=11 VV1 0x5C  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 2672},
2269 /*h(20)=12 VV1 0x5C  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 2653},
2270 /*empty slot1 */ {0,0},
2271 /*h(12)=14 VV1 0x5C  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {12, 2653},
2272 /*empty slot1 */ {0,0},
2273 /*h(4)=16 VV1 0x5C  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 2653},
2274 /*empty slot1 */ {0,0},
2275 /*h(30)=18 VV1 0x5C  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {30, 2671},
2276 /*h(9)=19 VV1 0x5C  VL256 VNP V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {9, 3040},
2277 /*h(22)=20 VV1 0x5C  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 2671},
2278 /*h(1)=21 VV1 0x5C  VL128 VNP V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {1, 3038},
2279 /*h(14)=22 VV1 0x5C  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 2671},
2280 /*empty slot1 */ {0,0},
2281 /*h(6)=24 VV1 0x5C  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 2671},
2282 /*empty slot1 */ {0,0},
2283 /*empty slot1 */ {0,0},
2284 /*h(11)=27 VV1 0x5C  V66 V0F VL256 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3024},
2285 /*empty slot1 */ {0,0},
2286 /*h(3)=29 VV1 0x5C  V66 V0F VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3022},
2287 /*empty slot1 */ {0,0},
2288 /*h(29)=31 VV1 0x5C  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {29, 2654},
2289 /*h(8)=32 VV1 0x5C  VL256 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {8, 3039},
2290 /*h(21)=33 VV1 0x5C  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 2654}
2291 };
2292 xed_union64_t t, u;
2293 xed_uint64_t key = 0;
2294 xed_uint64_t hidx = 0;
2295 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
2296 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 34ULL, u.s.hi32);
2297 if(lu_table[hidx].key == key) {
2298     return lu_table[hidx].value;
2299 }
2300 else{
2301     return 0;
2302 }
2303 }
xed3_phash_find_map0x0F_opcode0x5d_vv1(const xed_decoded_inst_t * d)2304 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x5d_vv1(const xed_decoded_inst_t* d)
2305 {
2306 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2307 static const lu_entry_t lu_table[34] = {
2308 /*h(0)=0 VV1 0x5D  VNP V0F VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {0, 3367},
2309 /*h(13)=1 VV1 0x5D  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {13, 3046},
2310 /*empty slot1 */ {0,0},
2311 /*h(5)=3 VV1 0x5D  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 3046},
2312 /*empty slot1 */ {0,0},
2313 /*h(31)=5 VV1 0x5D  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {31, 3032},
2314 /*h(10)=6 VV1 0x5D  V66 V0F VL256 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3348},
2315 /*h(23)=7 VV1 0x5D  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 3032},
2316 /*h(2)=8 VV1 0x5D  V66 V0F VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3346},
2317 /*h(15)=9 VV1 0x5D  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 3032},
2318 /*h(28)=10 VV1 0x5D  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {28, 3045},
2319 /*h(7)=11 VV1 0x5D  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 3032},
2320 /*h(20)=12 VV1 0x5D  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 3045},
2321 /*empty slot1 */ {0,0},
2322 /*h(12)=14 VV1 0x5D  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {12, 3045},
2323 /*empty slot1 */ {0,0},
2324 /*h(4)=16 VV1 0x5D  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 3045},
2325 /*empty slot1 */ {0,0},
2326 /*h(30)=18 VV1 0x5D  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {30, 3031},
2327 /*h(9)=19 VV1 0x5D  VNP V0F VL256 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {9, 3370},
2328 /*h(22)=20 VV1 0x5D  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 3031},
2329 /*h(1)=21 VV1 0x5D  VNP V0F VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {1, 3368},
2330 /*h(14)=22 VV1 0x5D  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 3031},
2331 /*empty slot1 */ {0,0},
2332 /*h(6)=24 VV1 0x5D  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3031},
2333 /*empty slot1 */ {0,0},
2334 /*empty slot1 */ {0,0},
2335 /*h(11)=27 VV1 0x5D  V66 V0F VL256 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3349},
2336 /*empty slot1 */ {0,0},
2337 /*h(3)=29 VV1 0x5D  V66 V0F VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3347},
2338 /*empty slot1 */ {0,0},
2339 /*h(29)=31 VV1 0x5D  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {29, 3046},
2340 /*h(8)=32 VV1 0x5D  VNP V0F VL256 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {8, 3369},
2341 /*h(21)=33 VV1 0x5D  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 3046}
2342 };
2343 xed_union64_t t, u;
2344 xed_uint64_t key = 0;
2345 xed_uint64_t hidx = 0;
2346 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
2347 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 34ULL, u.s.hi32);
2348 if(lu_table[hidx].key == key) {
2349     return lu_table[hidx].value;
2350 }
2351 else{
2352     return 0;
2353 }
2354 }
xed3_phash_find_map0x0F_opcode0x5e_vv1(const xed_decoded_inst_t * d)2355 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x5e_vv1(const xed_decoded_inst_t* d)
2356 {
2357 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2358 static const lu_entry_t lu_table[34] = {
2359 /*h(0)=0 VV1 0x5E  VNP V0F VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {0, 2589},
2360 /*h(13)=1 VV1 0x5E  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {13, 2977},
2361 /*empty slot1 */ {0,0},
2362 /*h(5)=3 VV1 0x5E  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 2977},
2363 /*empty slot1 */ {0,0},
2364 /*h(31)=5 VV1 0x5E  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {31, 2965},
2365 /*h(10)=6 VV1 0x5E  V66 V0F VL256 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2579},
2366 /*h(23)=7 VV1 0x5E  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 2965},
2367 /*h(2)=8 VV1 0x5E  V66 V0F VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2577},
2368 /*h(15)=9 VV1 0x5E  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 2965},
2369 /*h(28)=10 VV1 0x5E  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {28, 2976},
2370 /*h(7)=11 VV1 0x5E  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 2965},
2371 /*h(20)=12 VV1 0x5E  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 2976},
2372 /*empty slot1 */ {0,0},
2373 /*h(12)=14 VV1 0x5E  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {12, 2976},
2374 /*empty slot1 */ {0,0},
2375 /*h(4)=16 VV1 0x5E  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 2976},
2376 /*empty slot1 */ {0,0},
2377 /*h(30)=18 VV1 0x5E  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {30, 2964},
2378 /*h(9)=19 VV1 0x5E  VNP V0F VL256 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {9, 2592},
2379 /*h(22)=20 VV1 0x5E  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 2964},
2380 /*h(1)=21 VV1 0x5E  VNP V0F VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {1, 2590},
2381 /*h(14)=22 VV1 0x5E  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 2964},
2382 /*empty slot1 */ {0,0},
2383 /*h(6)=24 VV1 0x5E  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 2964},
2384 /*empty slot1 */ {0,0},
2385 /*empty slot1 */ {0,0},
2386 /*h(11)=27 VV1 0x5E  V66 V0F VL256 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2580},
2387 /*empty slot1 */ {0,0},
2388 /*h(3)=29 VV1 0x5E  V66 V0F VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2578},
2389 /*empty slot1 */ {0,0},
2390 /*h(29)=31 VV1 0x5E  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {29, 2977},
2391 /*h(8)=32 VV1 0x5E  VNP V0F VL256 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {8, 2591},
2392 /*h(21)=33 VV1 0x5E  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 2977}
2393 };
2394 xed_union64_t t, u;
2395 xed_uint64_t key = 0;
2396 xed_uint64_t hidx = 0;
2397 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
2398 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 34ULL, u.s.hi32);
2399 if(lu_table[hidx].key == key) {
2400     return lu_table[hidx].value;
2401 }
2402 else{
2403     return 0;
2404 }
2405 }
xed3_phash_find_map0x0F_opcode0x5f_vv1(const xed_decoded_inst_t * d)2406 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x5f_vv1(const xed_decoded_inst_t* d)
2407 {
2408 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2409 static const lu_entry_t lu_table[34] = {
2410 /*h(0)=0 VV1 0x5F  VNP V0F VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {0, 2809},
2411 /*h(13)=1 VV1 0x5F  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {13, 2454},
2412 /*empty slot1 */ {0,0},
2413 /*h(5)=3 VV1 0x5F  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 2454},
2414 /*empty slot1 */ {0,0},
2415 /*h(31)=5 VV1 0x5F  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {31, 2436},
2416 /*h(10)=6 VV1 0x5F  V66 V0F VL256 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2801},
2417 /*h(23)=7 VV1 0x5F  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 2436},
2418 /*h(2)=8 VV1 0x5F  V66 V0F VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2799},
2419 /*h(15)=9 VV1 0x5F  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 2436},
2420 /*h(28)=10 VV1 0x5F  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {28, 2453},
2421 /*h(7)=11 VV1 0x5F  VF3 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 2436},
2422 /*h(20)=12 VV1 0x5F  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 2453},
2423 /*empty slot1 */ {0,0},
2424 /*h(12)=14 VV1 0x5F  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {12, 2453},
2425 /*empty slot1 */ {0,0},
2426 /*h(4)=16 VV1 0x5F  VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 2453},
2427 /*empty slot1 */ {0,0},
2428 /*h(30)=18 VV1 0x5F  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {30, 2435},
2429 /*h(9)=19 VV1 0x5F  VNP V0F VL256 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {9, 2812},
2430 /*h(22)=20 VV1 0x5F  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 2435},
2431 /*h(1)=21 VV1 0x5F  VNP V0F VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {1, 2810},
2432 /*h(14)=22 VV1 0x5F  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 2435},
2433 /*empty slot1 */ {0,0},
2434 /*h(6)=24 VV1 0x5F  VF3 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 2435},
2435 /*empty slot1 */ {0,0},
2436 /*empty slot1 */ {0,0},
2437 /*h(11)=27 VV1 0x5F  V66 V0F VL256 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2802},
2438 /*empty slot1 */ {0,0},
2439 /*h(3)=29 VV1 0x5F  V66 V0F VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2800},
2440 /*empty slot1 */ {0,0},
2441 /*h(29)=31 VV1 0x5F  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {29, 2454},
2442 /*h(8)=32 VV1 0x5F  VNP V0F VL256 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {8, 2811},
2443 /*h(21)=33 VV1 0x5F  VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 2454}
2444 };
2445 xed_union64_t t, u;
2446 xed_uint64_t key = 0;
2447 xed_uint64_t hidx = 0;
2448 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
2449 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 34ULL, u.s.hi32);
2450 if(lu_table[hidx].key == key) {
2451     return lu_table[hidx].value;
2452 }
2453 else{
2454     return 0;
2455 }
2456 }
xed3_phash_find_map0x0F_opcode0x60_vv1(const xed_decoded_inst_t * d)2457 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x60_vv1(const xed_decoded_inst_t* d)
2458 {
2459 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2460 static const lu_entry_t lu_table[5] = {
2461 /*h(10)=0 VV1 0x60  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2283},
2462 /*h(2)=1 VV1 0x60  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2281},
2463 /*empty slot1 */ {0,0},
2464 /*h(11)=3 VV1 0x60  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2284},
2465 /*h(3)=4 VV1 0x60  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2282}
2466 };
2467 xed_union64_t t, u;
2468 xed_uint64_t key = 0;
2469 xed_uint64_t hidx = 0;
2470 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
2471 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
2472 if(lu_table[hidx].key == key) {
2473     return lu_table[hidx].value;
2474 }
2475 else{
2476     return 0;
2477 }
2478 }
xed3_phash_find_map0x0F_opcode0x61_vv1(const xed_decoded_inst_t * d)2479 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x61_vv1(const xed_decoded_inst_t* d)
2480 {
2481 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2482 static const lu_entry_t lu_table[5] = {
2483 /*h(10)=0 VV1 0x61  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2863},
2484 /*h(2)=1 VV1 0x61  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2861},
2485 /*empty slot1 */ {0,0},
2486 /*h(11)=3 VV1 0x61  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2864},
2487 /*h(3)=4 VV1 0x61  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2862}
2488 };
2489 xed_union64_t t, u;
2490 xed_uint64_t key = 0;
2491 xed_uint64_t hidx = 0;
2492 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
2493 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
2494 if(lu_table[hidx].key == key) {
2495     return lu_table[hidx].value;
2496 }
2497 else{
2498     return 0;
2499 }
2500 }
xed3_phash_find_map0x0F_opcode0x62_vv1(const xed_decoded_inst_t * d)2501 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x62_vv1(const xed_decoded_inst_t* d)
2502 {
2503 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2504 static const lu_entry_t lu_table[5] = {
2505 /*h(10)=0 VV1 0x62  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3360},
2506 /*h(2)=1 VV1 0x62  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3358},
2507 /*empty slot1 */ {0,0},
2508 /*h(11)=3 VV1 0x62  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3361},
2509 /*h(3)=4 VV1 0x62  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3359}
2510 };
2511 xed_union64_t t, u;
2512 xed_uint64_t key = 0;
2513 xed_uint64_t hidx = 0;
2514 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
2515 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
2516 if(lu_table[hidx].key == key) {
2517     return lu_table[hidx].value;
2518 }
2519 else{
2520     return 0;
2521 }
2522 }
xed3_phash_find_map0x0F_opcode0x63_vv1(const xed_decoded_inst_t * d)2523 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x63_vv1(const xed_decoded_inst_t* d)
2524 {
2525 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2526 static const lu_entry_t lu_table[5] = {
2527 /*h(10)=0 VV1 0x63  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3745},
2528 /*h(2)=1 VV1 0x63  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3743},
2529 /*empty slot1 */ {0,0},
2530 /*h(11)=3 VV1 0x63  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3746},
2531 /*h(3)=4 VV1 0x63  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3744}
2532 };
2533 xed_union64_t t, u;
2534 xed_uint64_t key = 0;
2535 xed_uint64_t hidx = 0;
2536 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
2537 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
2538 if(lu_table[hidx].key == key) {
2539     return lu_table[hidx].value;
2540 }
2541 else{
2542     return 0;
2543 }
2544 }
xed3_phash_find_map0x0F_opcode0x64_vv1(const xed_decoded_inst_t * d)2545 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x64_vv1(const xed_decoded_inst_t* d)
2546 {
2547 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2548 static const lu_entry_t lu_table[5] = {
2549 /*h(10)=0 VV1 0x64  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3078},
2550 /*h(2)=1 VV1 0x64  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3076},
2551 /*empty slot1 */ {0,0},
2552 /*h(11)=3 VV1 0x64  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3079},
2553 /*h(3)=4 VV1 0x64  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3077}
2554 };
2555 xed_union64_t t, u;
2556 xed_uint64_t key = 0;
2557 xed_uint64_t hidx = 0;
2558 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
2559 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
2560 if(lu_table[hidx].key == key) {
2561     return lu_table[hidx].value;
2562 }
2563 else{
2564     return 0;
2565 }
2566 }
xed3_phash_find_map0x0F_opcode0x65_vv1(const xed_decoded_inst_t * d)2567 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x65_vv1(const xed_decoded_inst_t* d)
2568 {
2569 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2570 static const lu_entry_t lu_table[5] = {
2571 /*h(10)=0 VV1 0x65  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3666},
2572 /*h(2)=1 VV1 0x65  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3664},
2573 /*empty slot1 */ {0,0},
2574 /*h(11)=3 VV1 0x65  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3667},
2575 /*h(3)=4 VV1 0x65  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3665}
2576 };
2577 xed_union64_t t, u;
2578 xed_uint64_t key = 0;
2579 xed_uint64_t hidx = 0;
2580 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
2581 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
2582 if(lu_table[hidx].key == key) {
2583     return lu_table[hidx].value;
2584 }
2585 else{
2586     return 0;
2587 }
2588 }
xed3_phash_find_map0x0F_opcode0x66_vv1(const xed_decoded_inst_t * d)2589 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x66_vv1(const xed_decoded_inst_t* d)
2590 {
2591 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2592 static const lu_entry_t lu_table[5] = {
2593 /*h(10)=0 VV1 0x66  V66 V0F VL256  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3646},
2594 /*h(2)=1 VV1 0x66  V66 V0F VL128  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3644},
2595 /*empty slot1 */ {0,0},
2596 /*h(11)=3 VV1 0x66  V66 V0F VL256 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3647},
2597 /*h(3)=4 VV1 0x66  V66 V0F VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3645}
2598 };
2599 xed_union64_t t, u;
2600 xed_uint64_t key = 0;
2601 xed_uint64_t hidx = 0;
2602 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
2603 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
2604 if(lu_table[hidx].key == key) {
2605     return lu_table[hidx].value;
2606 }
2607 else{
2608     return 0;
2609 }
2610 }
xed3_phash_find_map0x0F_opcode0x67_vv1(const xed_decoded_inst_t * d)2611 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x67_vv1(const xed_decoded_inst_t* d)
2612 {
2613 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2614 static const lu_entry_t lu_table[5] = {
2615 /*h(10)=0 VV1 0x67  V66 V0F VL256  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2805},
2616 /*h(2)=1 VV1 0x67  V66 V0F VL128  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2803},
2617 /*empty slot1 */ {0,0},
2618 /*h(11)=3 VV1 0x67  V66 V0F VL256 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2806},
2619 /*h(3)=4 VV1 0x67  V66 V0F VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2804}
2620 };
2621 xed_union64_t t, u;
2622 xed_uint64_t key = 0;
2623 xed_uint64_t hidx = 0;
2624 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
2625 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
2626 if(lu_table[hidx].key == key) {
2627     return lu_table[hidx].value;
2628 }
2629 else{
2630     return 0;
2631 }
2632 }
xed3_phash_find_map0x0F_opcode0x68_vv1(const xed_decoded_inst_t * d)2633 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x68_vv1(const xed_decoded_inst_t* d)
2634 {
2635 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2636 static const lu_entry_t lu_table[5] = {
2637 /*h(10)=0 VV1 0x68  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3624},
2638 /*h(2)=1 VV1 0x68  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3622},
2639 /*empty slot1 */ {0,0},
2640 /*h(11)=3 VV1 0x68  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3625},
2641 /*h(3)=4 VV1 0x68  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3623}
2642 };
2643 xed_union64_t t, u;
2644 xed_uint64_t key = 0;
2645 xed_uint64_t hidx = 0;
2646 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
2647 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
2648 if(lu_table[hidx].key == key) {
2649     return lu_table[hidx].value;
2650 }
2651 else{
2652     return 0;
2653 }
2654 }
xed3_phash_find_map0x0F_opcode0x69_vv1(const xed_decoded_inst_t * d)2655 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x69_vv1(const xed_decoded_inst_t* d)
2656 {
2657 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2658 static const lu_entry_t lu_table[5] = {
2659 /*h(10)=0 VV1 0x69  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3695},
2660 /*h(2)=1 VV1 0x69  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3693},
2661 /*empty slot1 */ {0,0},
2662 /*h(11)=3 VV1 0x69  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3696},
2663 /*h(3)=4 VV1 0x69  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3694}
2664 };
2665 xed_union64_t t, u;
2666 xed_uint64_t key = 0;
2667 xed_uint64_t hidx = 0;
2668 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
2669 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
2670 if(lu_table[hidx].key == key) {
2671     return lu_table[hidx].value;
2672 }
2673 else{
2674     return 0;
2675 }
2676 }
xed3_phash_find_map0x0F_opcode0x6a_vv1(const xed_decoded_inst_t * d)2677 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x6a_vv1(const xed_decoded_inst_t* d)
2678 {
2679 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2680 static const lu_entry_t lu_table[5] = {
2681 /*h(10)=0 VV1 0x6A  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2737},
2682 /*h(2)=1 VV1 0x6A  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2735},
2683 /*empty slot1 */ {0,0},
2684 /*h(11)=3 VV1 0x6A  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2738},
2685 /*h(3)=4 VV1 0x6A  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2736}
2686 };
2687 xed_union64_t t, u;
2688 xed_uint64_t key = 0;
2689 xed_uint64_t hidx = 0;
2690 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
2691 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
2692 if(lu_table[hidx].key == key) {
2693     return lu_table[hidx].value;
2694 }
2695 else{
2696     return 0;
2697 }
2698 }
xed3_phash_find_map0x0F_opcode0x6b_vv1(const xed_decoded_inst_t * d)2699 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x6b_vv1(const xed_decoded_inst_t* d)
2700 {
2701 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2702 static const lu_entry_t lu_table[5] = {
2703 /*h(10)=0 VV1 0x6B  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2482},
2704 /*h(2)=1 VV1 0x6B  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2480},
2705 /*empty slot1 */ {0,0},
2706 /*h(11)=3 VV1 0x6B  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2483},
2707 /*h(3)=4 VV1 0x6B  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2481}
2708 };
2709 xed_union64_t t, u;
2710 xed_uint64_t key = 0;
2711 xed_uint64_t hidx = 0;
2712 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
2713 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
2714 if(lu_table[hidx].key == key) {
2715     return lu_table[hidx].value;
2716 }
2717 else{
2718     return 0;
2719 }
2720 }
xed3_phash_find_map0x0F_opcode0x6c_vv1(const xed_decoded_inst_t * d)2721 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x6c_vv1(const xed_decoded_inst_t* d)
2722 {
2723 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2724 static const lu_entry_t lu_table[5] = {
2725 /*h(10)=0 VV1 0x6C  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3302},
2726 /*h(2)=1 VV1 0x6C  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3300},
2727 /*empty slot1 */ {0,0},
2728 /*h(11)=3 VV1 0x6C  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3303},
2729 /*h(3)=4 VV1 0x6C  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3301}
2730 };
2731 xed_union64_t t, u;
2732 xed_uint64_t key = 0;
2733 xed_uint64_t hidx = 0;
2734 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
2735 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
2736 if(lu_table[hidx].key == key) {
2737     return lu_table[hidx].value;
2738 }
2739 else{
2740     return 0;
2741 }
2742 }
xed3_phash_find_map0x0F_opcode0x6d_vv1(const xed_decoded_inst_t * d)2743 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x6d_vv1(const xed_decoded_inst_t* d)
2744 {
2745 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2746 static const lu_entry_t lu_table[5] = {
2747 /*h(10)=0 VV1 0x6D  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2815},
2748 /*h(2)=1 VV1 0x6D  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2813},
2749 /*empty slot1 */ {0,0},
2750 /*h(11)=3 VV1 0x6D  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2816},
2751 /*h(3)=4 VV1 0x6D  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2814}
2752 };
2753 xed_union64_t t, u;
2754 xed_uint64_t key = 0;
2755 xed_uint64_t hidx = 0;
2756 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
2757 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
2758 if(lu_table[hidx].key == key) {
2759     return lu_table[hidx].value;
2760 }
2761 else{
2762     return 0;
2763 }
2764 }
xed3_phash_find_map0x0F_opcode0x6e_vv1(const xed_decoded_inst_t * d)2765 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x6e_vv1(const xed_decoded_inst_t* d)
2766 {
2767 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2768 static const lu_entry_t lu_table[17] = {
2769 /*h(123)=0 VV1 0x6E  VL128 V66 V0F not64  NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {123, 2243},
2770 /*h(115)=1 VV1 0x6E  VL128 V66 V0F not64  NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {115, 2243},
2771 /*h(120)=2 VV1 0x6E  VL128 V66 V0F not64 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {120, 2242},
2772 /*h(112)=3 VV1 0x6E  VL128 V66 V0F not64 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {112, 2242},
2773 /*h(125)=4 VV1 0x6E  VL128 V66 V0F mode64 rexw_prefix NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {125, 2235},
2774 /*h(117)=5 VV1 0x6E  VL128 V66 V0F mode64 norexw_prefix NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {117, 2247},
2775 /*h(122)=6 VV1 0x6E  VL128 V66 V0F not64 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {122, 2242},
2776 /*h(114)=7 VV1 0x6E  VL128 V66 V0F not64 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {114, 2242},
2777 /*empty slot1 */ {0,0},
2778 /*empty slot1 */ {0,0},
2779 /*h(124)=10 VV1 0x6E  VL128 V66 V0F mode64 rexw_prefix NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {124, 2234},
2780 /*h(116)=11 VV1 0x6E  VL128 V66 V0F mode64 norexw_prefix NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {116, 2246},
2781 /*empty slot1 */ {0,0},
2782 /*h(121)=13 VV1 0x6E  VL128 V66 V0F not64  NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {121, 2243},
2783 /*h(113)=14 VV1 0x6E  VL128 V66 V0F not64  NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {113, 2243},
2784 /*empty slot1 */ {0,0},
2785 /*empty slot1 */ {0,0}
2786 };
2787 xed_union64_t t, u;
2788 xed_uint64_t key = 0;
2789 xed_uint64_t hidx = 0;
2790 key = xed_dec_lu_MOD3_MODE_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
2791 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 17ULL, u.s.hi32);
2792 if(lu_table[hidx].key == key) {
2793     return lu_table[hidx].value;
2794 }
2795 else{
2796     return 0;
2797 }
2798 }
xed3_phash_find_map0x0F_opcode0x6f_vv1(const xed_decoded_inst_t * d)2799 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x6f_vv1(const xed_decoded_inst_t* d)
2800 {
2801 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2802 static const lu_entry_t lu_table[10] = {
2803 /*h(47)=0 VV1 0x6F  VL256 V66 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 2570},
2804 /*h(31)=1 VV1 0x6F  VL128 VF3 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {31, 2582},
2805 /*h(15)=2 VV1 0x6F  VL128 V66 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 2566},
2806 /*h(62)=3 VV1 0x6F  VL256 VF3 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {62, 2583},
2807 /*h(46)=4 VV1 0x6F  VL256 V66 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 2569},
2808 /*h(30)=5 VV1 0x6F  VL128 VF3 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {30, 2581},
2809 /*h(14)=6 VV1 0x6F  VL128 V66 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 2565},
2810 /*empty slot1 */ {0,0},
2811 /*empty slot1 */ {0,0},
2812 /*h(63)=9 VV1 0x6F  VL256 VF3 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {63, 2584}
2813 };
2814 xed_union64_t t, u;
2815 xed_uint64_t key = 0;
2816 xed_uint64_t hidx = 0;
2817 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
2818 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 10ULL, u.s.hi32);
2819 if(lu_table[hidx].key == key) {
2820     return lu_table[hidx].value;
2821 }
2822 else{
2823     return 0;
2824 }
2825 }
xed3_phash_find_map0x0F_opcode0x70_vv1(const xed_decoded_inst_t * d)2826 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x70_vv1(const xed_decoded_inst_t* d)
2827 {
2828 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2829 static const lu_entry_t lu_table[17] = {
2830 /*h(47)=0 VV1 0x70   VL256 V66 V0F NOVSR  MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {47, 2554},
2831 /*empty slot1 */ {0,0},
2832 /*h(31)=2 VV1 0x70  VL128 VF3 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {31, 2426},
2833 /*h(23)=3 VV1 0x70  VL128 VF2 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {23, 2598},
2834 /*h(15)=4 VV1 0x70  VL128 V66 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {15, 2552},
2835 /*h(62)=5 VV1 0x70   VL256 VF3 V0F NOVSR   MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {62, 2427},
2836 /*h(54)=6 VV1 0x70   VL256 VF2 V0F NOVSR   MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {54, 2599},
2837 /*h(46)=7 VV1 0x70   VL256 V66 V0F NOVSR   MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {46, 2553},
2838 /*empty slot1 */ {0,0},
2839 /*h(30)=9 VV1 0x70  VL128 VF3 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {30, 2425},
2840 /*h(22)=10 VV1 0x70  VL128 VF2 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {22, 2597},
2841 /*h(14)=11 VV1 0x70  VL128 V66 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {14, 2551},
2842 /*empty slot1 */ {0,0},
2843 /*empty slot1 */ {0,0},
2844 /*empty slot1 */ {0,0},
2845 /*h(63)=15 VV1 0x70   VL256 VF3 V0F NOVSR  MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {63, 2428},
2846 /*h(55)=16 VV1 0x70   VL256 VF2 V0F NOVSR  MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {55, 2600}
2847 };
2848 xed_union64_t t, u;
2849 xed_uint64_t key = 0;
2850 xed_uint64_t hidx = 0;
2851 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
2852 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 17ULL, u.s.hi32);
2853 if(lu_table[hidx].key == key) {
2854     return lu_table[hidx].value;
2855 }
2856 else{
2857     return 0;
2858 }
2859 }
xed3_phash_find_map0x0F_opcode0x71_vv1(const xed_decoded_inst_t * d)2860 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x71_vv1(const xed_decoded_inst_t* d)
2861 {
2862 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2863 static const lu_entry_t lu_table[6] = {
2864 /*h(21)=0 VV1 0x71  VL128 V66 V0F MOD[0b11] MOD=3 REG[0b010] RM[nnn] UIMM8()*/ {21, 3278},
2865 /*h(85)=1 VV1 0x71   VL256  V66 V0F MOD[0b11] MOD=3 REG[0b010] RM[nnn] UIMM8()*/ {85, 3281},
2866 /*h(29)=2 VV1 0x71  VL128 V66 V0F MOD[0b11] MOD=3 REG[0b110] RM[nnn] UIMM8()*/ {29, 2630},
2867 /*h(93)=3 VV1 0x71   VL256  V66 V0F MOD[0b11] MOD=3 REG[0b110] RM[nnn] UIMM8()*/ {93, 2633},
2868 /*h(25)=4 VV1 0x71  VL128 V66 V0F MOD[0b11] MOD=3 REG[0b100] RM[nnn] UIMM8()*/ {25, 2557},
2869 /*h(89)=5 VV1 0x71   VL256  V66 V0F MOD[0b11] MOD=3 REG[0b100] RM[nnn] UIMM8()*/ {89, 2560}
2870 };
2871 xed_uint64_t key = 0;
2872 xed_uint64_t hidx = 0;
2873 key = xed_dec_lu_MOD3_REG_VEX_PREFIX_VL(d);
2874 hidx = ((5*key % 11) % 6);
2875 if(lu_table[hidx].key == key) {
2876     return lu_table[hidx].value;
2877 }
2878 else{
2879     return 0;
2880 }
2881 }
xed3_phash_find_map0x0F_opcode0x72_vv1(const xed_decoded_inst_t * d)2882 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x72_vv1(const xed_decoded_inst_t* d)
2883 {
2884 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2885 static const lu_entry_t lu_table[6] = {
2886 /*h(21)=0 VV1 0x72  VL128 V66 V0F MOD[0b11] MOD=3 REG[0b010] RM[nnn] UIMM8()*/ {21, 3312},
2887 /*h(85)=1 VV1 0x72   VL256  V66 V0F MOD[0b11] MOD=3 REG[0b010] RM[nnn] UIMM8()*/ {85, 3315},
2888 /*h(29)=2 VV1 0x72  VL128 V66 V0F MOD[0b11] MOD=3 REG[0b110] RM[nnn] UIMM8()*/ {29, 2606},
2889 /*h(93)=3 VV1 0x72   VL256  V66 V0F MOD[0b11] MOD=3 REG[0b110] RM[nnn] UIMM8()*/ {93, 2609},
2890 /*h(25)=4 VV1 0x72  VL128 V66 V0F MOD[0b11] MOD=3 REG[0b100] RM[nnn] UIMM8()*/ {25, 2541},
2891 /*h(89)=5 VV1 0x72   VL256  V66 V0F MOD[0b11] MOD=3 REG[0b100] RM[nnn] UIMM8()*/ {89, 2544}
2892 };
2893 xed_uint64_t key = 0;
2894 xed_uint64_t hidx = 0;
2895 key = xed_dec_lu_MOD3_REG_VEX_PREFIX_VL(d);
2896 hidx = ((5*key % 11) % 6);
2897 if(lu_table[hidx].key == key) {
2898     return lu_table[hidx].value;
2899 }
2900 else{
2901     return 0;
2902 }
2903 }
xed3_phash_find_map0x0F_opcode0x73_vv1(const xed_decoded_inst_t * d)2904 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x73_vv1(const xed_decoded_inst_t* d)
2905 {
2906 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2907 static const lu_entry_t lu_table[14] = {
2908 /*empty slot1 */ {0,0},
2909 /*empty slot1 */ {0,0},
2910 /*h(31)=2 VV1 0x73  VL128 V66 V0F MOD[0b11] MOD=3 REG[0b111] RM[nnn] UIMM8()*/ {31, 2232},
2911 /*h(23)=3 VV1 0x73  VL128 V66 V0F MOD[0b11] MOD=3 REG[0b011] RM[nnn] UIMM8()*/ {23, 2413},
2912 /*empty slot1 */ {0,0},
2913 /*empty slot1 */ {0,0},
2914 /*h(93)=6 VV1 0x73   VL256  V66 V0F MOD[0b11] MOD=3 REG[0b110] RM[nnn] UIMM8()*/ {93, 2619},
2915 /*h(85)=7 VV1 0x73   VL256  V66 V0F MOD[0b11] MOD=3 REG[0b010] RM[nnn] UIMM8()*/ {85, 3287},
2916 /*empty slot1 */ {0,0},
2917 /*h(95)=9 VV1 0x73  VL256 V66 V0F   MOD[0b11] MOD=3 REG[0b111] RM[nnn] UIMM8()*/ {95, 2233},
2918 /*h(87)=10 VV1 0x73  VL256 V66 V0F   MOD[0b11] MOD=3 REG[0b011] RM[nnn] UIMM8()*/ {87, 2414},
2919 /*empty slot1 */ {0,0},
2920 /*h(29)=12 VV1 0x73  VL128 V66 V0F MOD[0b11] MOD=3 REG[0b110] RM[nnn] UIMM8()*/ {29, 2616},
2921 /*h(21)=13 VV1 0x73  VL128 V66 V0F MOD[0b11] MOD=3 REG[0b010] RM[nnn] UIMM8()*/ {21, 3284}
2922 };
2923 xed_union64_t t, u;
2924 xed_uint64_t key = 0;
2925 xed_uint64_t hidx = 0;
2926 key = xed_dec_lu_MOD3_REG_VEX_PREFIX_VL(d);
2927 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 14ULL, u.s.hi32);
2928 if(lu_table[hidx].key == key) {
2929     return lu_table[hidx].value;
2930 }
2931 else{
2932     return 0;
2933 }
2934 }
xed3_phash_find_map0x0F_opcode0x74_vv1(const xed_decoded_inst_t * d)2935 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x74_vv1(const xed_decoded_inst_t* d)
2936 {
2937 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2938 static const lu_entry_t lu_table[5] = {
2939 /*h(10)=0 VV1 0x74  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2351},
2940 /*h(2)=1 VV1 0x74  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2349},
2941 /*empty slot1 */ {0,0},
2942 /*h(11)=3 VV1 0x74  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2352},
2943 /*h(3)=4 VV1 0x74  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2350}
2944 };
2945 xed_union64_t t, u;
2946 xed_uint64_t key = 0;
2947 xed_uint64_t hidx = 0;
2948 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
2949 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
2950 if(lu_table[hidx].key == key) {
2951     return lu_table[hidx].value;
2952 }
2953 else{
2954     return 0;
2955 }
2956 }
xed3_phash_find_map0x0F_opcode0x75_vv1(const xed_decoded_inst_t * d)2957 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x75_vv1(const xed_decoded_inst_t* d)
2958 {
2959 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2960 static const lu_entry_t lu_table[5] = {
2961 /*h(10)=0 VV1 0x75  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2335},
2962 /*h(2)=1 VV1 0x75  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2333},
2963 /*empty slot1 */ {0,0},
2964 /*h(11)=3 VV1 0x75  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2336},
2965 /*h(3)=4 VV1 0x75  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2334}
2966 };
2967 xed_union64_t t, u;
2968 xed_uint64_t key = 0;
2969 xed_uint64_t hidx = 0;
2970 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
2971 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
2972 if(lu_table[hidx].key == key) {
2973     return lu_table[hidx].value;
2974 }
2975 else{
2976     return 0;
2977 }
2978 }
xed3_phash_find_map0x0F_opcode0x76_vv1(const xed_decoded_inst_t * d)2979 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x76_vv1(const xed_decoded_inst_t* d)
2980 {
2981 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
2982 static const lu_entry_t lu_table[5] = {
2983 /*h(10)=0 VV1 0x76  V66 V0F VL256  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2347},
2984 /*h(2)=1 VV1 0x76  V66 V0F VL128  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2345},
2985 /*empty slot1 */ {0,0},
2986 /*h(11)=3 VV1 0x76  V66 V0F VL256 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2348},
2987 /*h(3)=4 VV1 0x76  V66 V0F VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2346}
2988 };
2989 xed_union64_t t, u;
2990 xed_uint64_t key = 0;
2991 xed_uint64_t hidx = 0;
2992 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
2993 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
2994 if(lu_table[hidx].key == key) {
2995     return lu_table[hidx].value;
2996 }
2997 else{
2998     return 0;
2999 }
3000 }
xed3_phash_find_map0x0F_opcode0x77_vv1(const xed_decoded_inst_t * d)3001 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x77_vv1(const xed_decoded_inst_t* d)
3002 {
3003 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3004 static const lu_entry_t lu_table[4] = {
3005 /*empty slot1 */ {0,0},
3006 /*empty slot1 */ {0,0},
3007 /*h(19)=2 VV1 0x77 VNP  V0F VL256  NOVSR*/ {19, 2524},
3008 /*h(3)=3 VV1 0x77 VNP  V0F VL128 NOVSR*/ {3, 3105}
3009 };
3010 xed_union64_t t;
3011 xed_uint64_t key = 0;
3012 xed_uint64_t hidx = 0;
3013 key = xed_dec_lu_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
3014 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-2));
3015 if(lu_table[hidx].key == key) {
3016     return lu_table[hidx].value;
3017 }
3018 else{
3019     return 0;
3020 }
3021 }
xed3_phash_find_map0x0F_opcode0x7c_vv1(const xed_decoded_inst_t * d)3022 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x7c_vv1(const xed_decoded_inst_t* d)
3023 {
3024 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3025 static const lu_entry_t lu_table[13] = {
3026 /*h(13)=0 VV1 0x7C  VL256 VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {13, 2939},
3027 /*h(5)=1 VV1 0x7C  VL128 VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 2937},
3028 /*h(10)=2 VV1 0x7C  VL256 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2275},
3029 /*h(2)=3 VV1 0x7C  VL128 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2273},
3030 /*empty slot1 */ {0,0},
3031 /*h(12)=5 VV1 0x7C  VL256 VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {12, 2938},
3032 /*h(4)=6 VV1 0x7C  VL128 VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 2936},
3033 /*empty slot1 */ {0,0},
3034 /*empty slot1 */ {0,0},
3035 /*empty slot1 */ {0,0},
3036 /*h(11)=10 VV1 0x7C  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2276},
3037 /*h(3)=11 VV1 0x7C  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2274},
3038 /*empty slot1 */ {0,0}
3039 };
3040 xed_union64_t t, u;
3041 xed_uint64_t key = 0;
3042 xed_uint64_t hidx = 0;
3043 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3044 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 13ULL, u.s.hi32);
3045 if(lu_table[hidx].key == key) {
3046     return lu_table[hidx].value;
3047 }
3048 else{
3049     return 0;
3050 }
3051 }
xed3_phash_find_map0x0F_opcode0x7d_vv1(const xed_decoded_inst_t * d)3052 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x7d_vv1(const xed_decoded_inst_t* d)
3053 {
3054 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3055 static const lu_entry_t lu_table[13] = {
3056 /*h(13)=0 VV1 0x7D  VL256 VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {13, 2933},
3057 /*h(5)=1 VV1 0x7D  VL128 VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 2931},
3058 /*h(10)=2 VV1 0x7D  VL256 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2920},
3059 /*h(2)=3 VV1 0x7D  VL128 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2918},
3060 /*empty slot1 */ {0,0},
3061 /*h(12)=5 VV1 0x7D  VL256 VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {12, 2932},
3062 /*h(4)=6 VV1 0x7D  VL128 VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 2930},
3063 /*empty slot1 */ {0,0},
3064 /*empty slot1 */ {0,0},
3065 /*empty slot1 */ {0,0},
3066 /*h(11)=10 VV1 0x7D  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2921},
3067 /*h(3)=11 VV1 0x7D  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2919},
3068 /*empty slot1 */ {0,0}
3069 };
3070 xed_union64_t t, u;
3071 xed_uint64_t key = 0;
3072 xed_uint64_t hidx = 0;
3073 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3074 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 13ULL, u.s.hi32);
3075 if(lu_table[hidx].key == key) {
3076     return lu_table[hidx].value;
3077 }
3078 else{
3079     return 0;
3080 }
3081 }
xed3_phash_find_map0x0F_opcode0x7e_vv1(const xed_decoded_inst_t * d)3082 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x7e_vv1(const xed_decoded_inst_t* d)
3083 {
3084 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3085 static const lu_entry_t lu_table[34] = {
3086 /*h(123)=0 VV1 0x7E  VL128 V66 V0F not64  NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {123, 2245},
3087 /*empty slot1 */ {0,0},
3088 /*h(115)=2 VV1 0x7E  VL128 V66 V0F not64  NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {115, 2245},
3089 /*empty slot1 */ {0,0},
3090 /*h(251)=4 VV1 0x7E  VL128 VF3 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {251, 2239},
3091 /*h(120)=5 VV1 0x7E  VL128 V66 V0F not64  NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {120, 2244},
3092 /*h(243)=6 VV1 0x7E  VL128 VF3 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {243, 2239},
3093 /*h(112)=7 VV1 0x7E  VL128 V66 V0F not64  NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {112, 2244},
3094 /*h(125)=8 VV1 0x7E  VL128 V66 V0F mode64 rexw_prefix NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {125, 2237},
3095 /*h(248)=9 VV1 0x7E  VL128 VF3 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {248, 2238},
3096 /*h(117)=10 VV1 0x7E  VL128 V66 V0F mode64 norexw_prefix NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {117, 2249},
3097 /*h(240)=11 VV1 0x7E  VL128 VF3 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {240, 2238},
3098 /*h(253)=12 VV1 0x7E  VL128 VF3 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {253, 2239},
3099 /*h(122)=13 VV1 0x7E  VL128 V66 V0F not64  NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {122, 2244},
3100 /*h(245)=14 VV1 0x7E  VL128 VF3 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {245, 2239},
3101 /*h(114)=15 VV1 0x7E  VL128 V66 V0F not64  NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {114, 2244},
3102 /*empty slot1 */ {0,0},
3103 /*h(250)=17 VV1 0x7E  VL128 VF3 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {250, 2238},
3104 /*empty slot1 */ {0,0},
3105 /*h(242)=19 VV1 0x7E  VL128 VF3 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {242, 2238},
3106 /*empty slot1 */ {0,0},
3107 /*h(124)=21 VV1 0x7E  VL128 V66 V0F mode64 rexw_prefix NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {124, 2236},
3108 /*empty slot1 */ {0,0},
3109 /*h(116)=23 VV1 0x7E  VL128 V66 V0F mode64 norexw_prefix NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {116, 2248},
3110 /*empty slot1 */ {0,0},
3111 /*h(252)=25 VV1 0x7E  VL128 VF3 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {252, 2238},
3112 /*h(121)=26 VV1 0x7E  VL128 V66 V0F not64  NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {121, 2245},
3113 /*h(244)=27 VV1 0x7E  VL128 VF3 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {244, 2238},
3114 /*h(113)=28 VV1 0x7E  VL128 V66 V0F not64  NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {113, 2245},
3115 /*empty slot1 */ {0,0},
3116 /*h(249)=30 VV1 0x7E  VL128 VF3 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {249, 2239},
3117 /*empty slot1 */ {0,0},
3118 /*h(241)=32 VV1 0x7E  VL128 VF3 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {241, 2239},
3119 /*empty slot1 */ {0,0}
3120 };
3121 xed_union64_t t, u;
3122 xed_uint64_t key = 0;
3123 xed_uint64_t hidx = 0;
3124 key = xed_dec_lu_MOD3_MODE_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
3125 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 34ULL, u.s.hi32);
3126 if(lu_table[hidx].key == key) {
3127     return lu_table[hidx].value;
3128 }
3129 else{
3130     return 0;
3131 }
3132 }
xed3_phash_find_map0x0F_opcode0x7f_vv1(const xed_decoded_inst_t * d)3133 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x7f_vv1(const xed_decoded_inst_t* d)
3134 {
3135 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3136 static const lu_entry_t lu_table[10] = {
3137 /*h(47)=0 VV1 0x7F  VL256 V66 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 2572},
3138 /*h(31)=1 VV1 0x7F  VL128 VF3 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {31, 2586},
3139 /*h(15)=2 VV1 0x7F  VL128 V66 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 2568},
3140 /*h(62)=3 VV1 0x7F  VL256 VF3 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {62, 2587},
3141 /*h(46)=4 VV1 0x7F  VL256 V66 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 2571},
3142 /*h(30)=5 VV1 0x7F  VL128 VF3 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {30, 2585},
3143 /*h(14)=6 VV1 0x7F  VL128 V66 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 2567},
3144 /*empty slot1 */ {0,0},
3145 /*empty slot1 */ {0,0},
3146 /*h(63)=9 VV1 0x7F  VL256 VF3 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {63, 2588}
3147 };
3148 xed_union64_t t, u;
3149 xed_uint64_t key = 0;
3150 xed_uint64_t hidx = 0;
3151 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
3152 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 10ULL, u.s.hi32);
3153 if(lu_table[hidx].key == key) {
3154     return lu_table[hidx].value;
3155 }
3156 else{
3157     return 0;
3158 }
3159 }
xed3_phash_find_map0x0F_opcode0x90_vv1(const xed_decoded_inst_t * d)3160 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x90_vv1(const xed_decoded_inst_t* d)
3161 {
3162 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3163 static const lu_entry_t lu_table[10] = {
3164 /*h(13)=0 VV1 0x90 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR*/ {13, 2704},
3165 /*h(31)=1 VV1 0x90 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W1  NOVSR*/ {31, 2684},
3166 /*h(15)=2 VV1 0x90 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W1  NOVSR*/ {15, 2691},
3167 /*h(28)=3 VV1 0x90 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM()  VL=0  W0  NOVSR*/ {28, 2251},
3168 /*h(12)=4 VV1 0x90 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM()  VL=0  W0  NOVSR*/ {12, 2705},
3169 /*h(30)=5 VV1 0x90 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM()  VL=0  W1  NOVSR*/ {30, 2685},
3170 /*h(14)=6 VV1 0x90 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM()  VL=0  W1  NOVSR*/ {14, 2692},
3171 /*empty slot1 */ {0,0},
3172 /*empty slot1 */ {0,0},
3173 /*h(29)=9 VV1 0x90 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR*/ {29, 2250}
3174 };
3175 xed_union64_t t, u;
3176 xed_uint64_t key = 0;
3177 xed_uint64_t hidx = 0;
3178 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
3179 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 10ULL, u.s.hi32);
3180 if(lu_table[hidx].key == key) {
3181     return lu_table[hidx].value;
3182 }
3183 else{
3184     return 0;
3185 }
3186 }
xed3_phash_find_map0x0F_opcode0x91_vv1(const xed_decoded_inst_t * d)3187 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x91_vv1(const xed_decoded_inst_t* d)
3188 {
3189 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3190 static const lu_entry_t lu_table[8] = {
3191 /*empty slot1 */ {0,0},
3192 /*empty slot1 */ {0,0},
3193 /*h(28)=2 VV1 0x91 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM()  VL=0  W0  NOVSR*/ {28, 2252},
3194 /*h(12)=3 VV1 0x91 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM()  VL=0  W0  NOVSR*/ {12, 2706},
3195 /*h(30)=4 VV1 0x91 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM()  VL=0  W1  NOVSR*/ {30, 2686},
3196 /*h(14)=5 VV1 0x91 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM()  VL=0  W1  NOVSR*/ {14, 2693},
3197 /*empty slot1 */ {0,0},
3198 /*empty slot1 */ {0,0}
3199 };
3200 xed_union64_t t;
3201 xed_uint64_t key = 0;
3202 xed_uint64_t hidx = 0;
3203 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
3204 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-3));
3205 if(lu_table[hidx].key == key) {
3206     return lu_table[hidx].value;
3207 }
3208 else{
3209     return 0;
3210 }
3211 }
xed3_phash_find_map0x0F_opcode0x92_vv1(const xed_decoded_inst_t * d)3212 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x92_vv1(const xed_decoded_inst_t* d)
3213 {
3214 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3215 static const lu_entry_t lu_table[21] = {
3216 /*empty slot1 */ {0,0},
3217 /*h(115)=1 VV1 0x92 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR*/ {115, 2253},
3218 /*empty slot1 */ {0,0},
3219 /*empty slot1 */ {0,0},
3220 /*empty slot1 */ {0,0},
3221 /*h(49)=5 VV1 0x92 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR*/ {49, 2707},
3222 /*h(117)=6 VV1 0x92 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR*/ {117, 2253},
3223 /*h(185)=7 VV1 0x92 VF2 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  not64 NOVSR*/ {185, 2688},
3224 /*h(177)=8 VV1 0x92 VF2 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  not64 NOVSR*/ {177, 2688},
3225 /*empty slot1 */ {0,0},
3226 /*h(51)=10 VV1 0x92 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR*/ {51, 2707},
3227 /*empty slot1 */ {0,0},
3228 /*h(187)=12 VV1 0x92 VF2 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  not64 NOVSR*/ {187, 2688},
3229 /*h(179)=13 VV1 0x92 VF2 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  not64 NOVSR*/ {179, 2688},
3230 /*empty slot1 */ {0,0},
3231 /*h(53)=15 VV1 0x92 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR*/ {53, 2707},
3232 /*h(189)=16 VV1 0x92 VF2 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W1  mode64  NOVSR*/ {189, 2694},
3233 /*h(113)=17 VV1 0x92 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR*/ {113, 2253},
3234 /*h(181)=18 VV1 0x92 VF2 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0 mode64  NOVSR*/ {181, 2687},
3235 /*empty slot1 */ {0,0},
3236 /*empty slot1 */ {0,0}
3237 };
3238 xed_union64_t t, u;
3239 xed_uint64_t key = 0;
3240 xed_uint64_t hidx = 0;
3241 key = xed_dec_lu_MOD3_MODE_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
3242 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 21ULL, u.s.hi32);
3243 if(lu_table[hidx].key == key) {
3244     return lu_table[hidx].value;
3245 }
3246 else{
3247     return 0;
3248 }
3249 }
xed3_phash_find_map0x0F_opcode0x93_vv1(const xed_decoded_inst_t * d)3250 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x93_vv1(const xed_decoded_inst_t* d)
3251 {
3252 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3253 static const lu_entry_t lu_table[21] = {
3254 /*empty slot1 */ {0,0},
3255 /*h(115)=1 VV1 0x93 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR*/ {115, 2254},
3256 /*empty slot1 */ {0,0},
3257 /*empty slot1 */ {0,0},
3258 /*empty slot1 */ {0,0},
3259 /*h(49)=5 VV1 0x93 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR*/ {49, 2708},
3260 /*h(117)=6 VV1 0x93 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR*/ {117, 2254},
3261 /*h(185)=7 VV1 0x93 VF2 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  not64  NOVSR*/ {185, 2690},
3262 /*h(177)=8 VV1 0x93 VF2 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  not64  NOVSR*/ {177, 2690},
3263 /*empty slot1 */ {0,0},
3264 /*h(51)=10 VV1 0x93 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR*/ {51, 2708},
3265 /*empty slot1 */ {0,0},
3266 /*h(187)=12 VV1 0x93 VF2 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  not64  NOVSR*/ {187, 2690},
3267 /*h(179)=13 VV1 0x93 VF2 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  not64  NOVSR*/ {179, 2690},
3268 /*empty slot1 */ {0,0},
3269 /*h(53)=15 VV1 0x93 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR*/ {53, 2708},
3270 /*h(189)=16 VV1 0x93 VF2 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W1  mode64  NOVSR*/ {189, 2695},
3271 /*h(113)=17 VV1 0x93 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR*/ {113, 2254},
3272 /*h(181)=18 VV1 0x93 VF2 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  mode64 NOVSR*/ {181, 2689},
3273 /*empty slot1 */ {0,0},
3274 /*empty slot1 */ {0,0}
3275 };
3276 xed_union64_t t, u;
3277 xed_uint64_t key = 0;
3278 xed_uint64_t hidx = 0;
3279 key = xed_dec_lu_MOD3_MODE_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
3280 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 21ULL, u.s.hi32);
3281 if(lu_table[hidx].key == key) {
3282     return lu_table[hidx].value;
3283 }
3284 else{
3285     return 0;
3286 }
3287 }
xed3_phash_find_map0x0F_opcode0x98_vv1(const xed_decoded_inst_t * d)3288 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x98_vv1(const xed_decoded_inst_t* d)
3289 {
3290 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3291 static const lu_entry_t lu_table[8] = {
3292 /*h(13)=0 VV1 0x98 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR*/ {13, 2797},
3293 /*h(31)=1 VV1 0x98 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W1  NOVSR*/ {31, 2807},
3294 /*h(15)=2 VV1 0x98 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W1  NOVSR*/ {15, 2798},
3295 /*empty slot1 */ {0,0},
3296 /*empty slot1 */ {0,0},
3297 /*empty slot1 */ {0,0},
3298 /*empty slot1 */ {0,0},
3299 /*h(29)=7 VV1 0x98 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR*/ {29, 2808}
3300 };
3301 xed_union64_t t;
3302 xed_uint64_t key = 0;
3303 xed_uint64_t hidx = 0;
3304 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
3305 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-3));
3306 if(lu_table[hidx].key == key) {
3307     return lu_table[hidx].value;
3308 }
3309 else{
3310     return 0;
3311 }
3312 }
xed3_phash_find_map0x0F_opcode0x99_vv1(const xed_decoded_inst_t * d)3313 static xed_uint32_t xed3_phash_find_map0x0F_opcode0x99_vv1(const xed_decoded_inst_t* d)
3314 {
3315 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3316 static const lu_entry_t lu_table[8] = {
3317 /*h(13)=0 VV1 0x99 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR*/ {13, 2860},
3318 /*h(31)=1 VV1 0x99 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W1  NOVSR*/ {31, 3554},
3319 /*h(15)=2 VV1 0x99 VNP V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W1  NOVSR*/ {15, 2903},
3320 /*empty slot1 */ {0,0},
3321 /*empty slot1 */ {0,0},
3322 /*empty slot1 */ {0,0},
3323 /*empty slot1 */ {0,0},
3324 /*h(29)=7 VV1 0x99 V66 V0F MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR*/ {29, 3082}
3325 };
3326 xed_union64_t t;
3327 xed_uint64_t key = 0;
3328 xed_uint64_t hidx = 0;
3329 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
3330 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-3));
3331 if(lu_table[hidx].key == key) {
3332     return lu_table[hidx].value;
3333 }
3334 else{
3335     return 0;
3336 }
3337 }
xed3_phash_find_map0x0F_opcode0xae_vv1(const xed_decoded_inst_t * d)3338 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xae_vv1(const xed_decoded_inst_t* d)
3339 {
3340 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3341 static const lu_entry_t lu_table[3] = {
3342 /*h(52)=0 VV1 0xAE VL128 VNP V0F NOVSR MOD[mm] MOD!=3 REG[0b010] RM[nnn] MODRM()*/ {52, 2601},
3343 /*h(54)=1 VV1 0xAE VL128 VNP V0F NOVSR MOD[mm] MOD!=3 REG[0b011] RM[nnn] MODRM()*/ {54, 2459},
3344 /*empty slot1 */ {0,0}
3345 };
3346 xed_union64_t t, u;
3347 xed_uint64_t key = 0;
3348 xed_uint64_t hidx = 0;
3349 key = xed_dec_lu_MOD3_REG_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
3350 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 3ULL, u.s.hi32);
3351 if(lu_table[hidx].key == key) {
3352     return lu_table[hidx].value;
3353 }
3354 else{
3355     return 0;
3356 }
3357 }
xed3_phash_find_map0x0F_opcode0xc2_vv1(const xed_decoded_inst_t * d)3358 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xc2_vv1(const xed_decoded_inst_t* d)
3359 {
3360 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3361 static const lu_entry_t lu_table[34] = {
3362 /*h(0)=0 VV1 0xC2  VNP VL128 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {0, 2995},
3363 /*h(13)=1 VV1 0xC2   VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {13, 2613},
3364 /*empty slot1 */ {0,0},
3365 /*h(5)=3 VV1 0xC2   VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {5, 2613},
3366 /*empty slot1 */ {0,0},
3367 /*h(31)=5 VV1 0xC2   VF3 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {31, 2596},
3368 /*h(10)=6 VV1 0xC2  V66 VL256 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {10, 3011},
3369 /*h(23)=7 VV1 0xC2   VF3 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {23, 2596},
3370 /*h(2)=8 VV1 0xC2  V66 VL128 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {2, 3009},
3371 /*h(15)=9 VV1 0xC2   VF3 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {15, 2596},
3372 /*h(28)=10 VV1 0xC2   VF2 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {28, 2612},
3373 /*h(7)=11 VV1 0xC2   VF3 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {7, 2596},
3374 /*h(20)=12 VV1 0xC2   VF2 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {20, 2612},
3375 /*empty slot1 */ {0,0},
3376 /*h(12)=14 VV1 0xC2   VF2 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {12, 2612},
3377 /*empty slot1 */ {0,0},
3378 /*h(4)=16 VV1 0xC2   VF2 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {4, 2612},
3379 /*empty slot1 */ {0,0},
3380 /*h(30)=18 VV1 0xC2   VF3 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {30, 2595},
3381 /*h(9)=19 VV1 0xC2  VNP VL256 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {9, 2998},
3382 /*h(22)=20 VV1 0xC2   VF3 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {22, 2595},
3383 /*h(1)=21 VV1 0xC2  VNP VL128 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {1, 2996},
3384 /*h(14)=22 VV1 0xC2   VF3 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {14, 2595},
3385 /*empty slot1 */ {0,0},
3386 /*h(6)=24 VV1 0xC2   VF3 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {6, 2595},
3387 /*empty slot1 */ {0,0},
3388 /*empty slot1 */ {0,0},
3389 /*h(11)=27 VV1 0xC2  V66 VL256 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {11, 3012},
3390 /*empty slot1 */ {0,0},
3391 /*h(3)=29 VV1 0xC2  V66 VL128 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {3, 3010},
3392 /*empty slot1 */ {0,0},
3393 /*h(29)=31 VV1 0xC2   VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {29, 2613},
3394 /*h(8)=32 VV1 0xC2  VNP VL256 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {8, 2997},
3395 /*h(21)=33 VV1 0xC2   VF2 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {21, 2613}
3396 };
3397 xed_union64_t t, u;
3398 xed_uint64_t key = 0;
3399 xed_uint64_t hidx = 0;
3400 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3401 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 34ULL, u.s.hi32);
3402 if(lu_table[hidx].key == key) {
3403     return lu_table[hidx].value;
3404 }
3405 else{
3406     return 0;
3407 }
3408 }
xed3_phash_find_map0x0F_opcode0xc4_vv1(const xed_decoded_inst_t * d)3409 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xc4_vv1(const xed_decoded_inst_t* d)
3410 {
3411 typedef struct { xed_uint32_t value;} lu_entry_t;
3412 static const lu_entry_t lu_table[2] = {
3413 /*h(2)=0 VV1 0xC4  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {3268},
3414 /*h(3)=1 VV1 0xC4  VL128 V66 V0F  MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {3269}
3415 };
3416 xed_uint64_t key = 0;
3417 xed_uint64_t hidx = 0;
3418 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3419 hidx = key - 2;
3420 if(hidx <= 1) {
3421     return lu_table[hidx].value;
3422 }
3423 else{
3424     return 0;
3425 }
3426 }
xed3_phash_find_map0x0F_opcode0xc5_vv1(const xed_decoded_inst_t * d)3427 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xc5_vv1(const xed_decoded_inst_t* d)
3428 {
3429 typedef struct { xed_uint32_t value;} lu_entry_t;
3430 static const lu_entry_t lu_table[1] = {
3431 /*h(15)=0 VV1 0xC5  VL128 V66 V0F  NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {3177}
3432 };
3433 xed_uint64_t key = 0;
3434 xed_uint64_t hidx = 0;
3435 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
3436 hidx = key - 15;
3437 if(hidx == 0) {
3438     return lu_table[hidx].value;
3439 }
3440 else{
3441     return 0;
3442 }
3443 }
xed3_phash_find_map0x0F_opcode0xc6_vv1(const xed_decoded_inst_t * d)3444 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xc6_vv1(const xed_decoded_inst_t* d)
3445 {
3446 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3447 static const lu_entry_t lu_table[10] = {
3448 /*h(0)=0 VV1 0xC6  VL128 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {0, 2674},
3449 /*h(10)=1 VV1 0xC6  VL256 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {10, 2651},
3450 /*h(2)=2 VV1 0xC6  VL128 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {2, 2649},
3451 /*empty slot1 */ {0,0},
3452 /*empty slot1 */ {0,0},
3453 /*h(9)=5 VV1 0xC6  VL256 VNP V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {9, 2677},
3454 /*h(1)=6 VV1 0xC6  VL128 VNP V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {1, 2675},
3455 /*h(11)=7 VV1 0xC6  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {11, 2652},
3456 /*h(3)=8 VV1 0xC6  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {3, 2650},
3457 /*h(8)=9 VV1 0xC6  VL256 VNP V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {8, 2676}
3458 };
3459 xed_union64_t t, u;
3460 xed_uint64_t key = 0;
3461 xed_uint64_t hidx = 0;
3462 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3463 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 10ULL, u.s.hi32);
3464 if(lu_table[hidx].key == key) {
3465     return lu_table[hidx].value;
3466 }
3467 else{
3468     return 0;
3469 }
3470 }
xed3_phash_find_map0x0F_opcode0xd0_vv1(const xed_decoded_inst_t * d)3471 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xd0_vv1(const xed_decoded_inst_t* d)
3472 {
3473 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3474 static const lu_entry_t lu_table[13] = {
3475 /*h(13)=0 VV1 0xD0  VL256 VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {13, 3002},
3476 /*h(5)=1 VV1 0xD0  VL128 VF2 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 3000},
3477 /*h(10)=2 VV1 0xD0  VL256 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2492},
3478 /*h(2)=3 VV1 0xD0  VL128 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2490},
3479 /*empty slot1 */ {0,0},
3480 /*h(12)=5 VV1 0xD0  VL256 VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {12, 3001},
3481 /*h(4)=6 VV1 0xD0  VL128 VF2 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 2999},
3482 /*empty slot1 */ {0,0},
3483 /*empty slot1 */ {0,0},
3484 /*empty slot1 */ {0,0},
3485 /*h(11)=10 VV1 0xD0  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2493},
3486 /*h(3)=11 VV1 0xD0  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2491},
3487 /*empty slot1 */ {0,0}
3488 };
3489 xed_union64_t t, u;
3490 xed_uint64_t key = 0;
3491 xed_uint64_t hidx = 0;
3492 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3493 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 13ULL, u.s.hi32);
3494 if(lu_table[hidx].key == key) {
3495     return lu_table[hidx].value;
3496 }
3497 else{
3498     return 0;
3499 }
3500 }
xed3_phash_find_map0x0F_opcode0xd1_vv1(const xed_decoded_inst_t * d)3501 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xd1_vv1(const xed_decoded_inst_t* d)
3502 {
3503 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3504 static const lu_entry_t lu_table[5] = {
3505 /*h(10)=0 VV1 0xD1  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3279},
3506 /*h(2)=1 VV1 0xD1  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3276},
3507 /*empty slot1 */ {0,0},
3508 /*h(11)=3 VV1 0xD1  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3280},
3509 /*h(3)=4 VV1 0xD1  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3277}
3510 };
3511 xed_union64_t t, u;
3512 xed_uint64_t key = 0;
3513 xed_uint64_t hidx = 0;
3514 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3515 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
3516 if(lu_table[hidx].key == key) {
3517     return lu_table[hidx].value;
3518 }
3519 else{
3520     return 0;
3521 }
3522 }
xed3_phash_find_map0x0F_opcode0xd2_vv1(const xed_decoded_inst_t * d)3523 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xd2_vv1(const xed_decoded_inst_t* d)
3524 {
3525 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3526 static const lu_entry_t lu_table[5] = {
3527 /*h(10)=0 VV1 0xD2  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3313},
3528 /*h(2)=1 VV1 0xD2  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3310},
3529 /*empty slot1 */ {0,0},
3530 /*h(11)=3 VV1 0xD2  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3314},
3531 /*h(3)=4 VV1 0xD2  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3311}
3532 };
3533 xed_union64_t t, u;
3534 xed_uint64_t key = 0;
3535 xed_uint64_t hidx = 0;
3536 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3537 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
3538 if(lu_table[hidx].key == key) {
3539     return lu_table[hidx].value;
3540 }
3541 else{
3542     return 0;
3543 }
3544 }
xed3_phash_find_map0x0F_opcode0xd3_vv1(const xed_decoded_inst_t * d)3545 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xd3_vv1(const xed_decoded_inst_t* d)
3546 {
3547 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3548 static const lu_entry_t lu_table[5] = {
3549 /*h(10)=0 VV1 0xD3  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3285},
3550 /*h(2)=1 VV1 0xD3  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3282},
3551 /*empty slot1 */ {0,0},
3552 /*h(11)=3 VV1 0xD3  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3286},
3553 /*h(3)=4 VV1 0xD3  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3283}
3554 };
3555 xed_union64_t t, u;
3556 xed_uint64_t key = 0;
3557 xed_uint64_t hidx = 0;
3558 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3559 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
3560 if(lu_table[hidx].key == key) {
3561     return lu_table[hidx].value;
3562 }
3563 else{
3564     return 0;
3565 }
3566 }
xed3_phash_find_map0x0F_opcode0xd4_vv1(const xed_decoded_inst_t * d)3567 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xd4_vv1(const xed_decoded_inst_t* d)
3568 {
3569 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3570 static const lu_entry_t lu_table[5] = {
3571 /*h(10)=0 VV1 0xD4  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3112},
3572 /*h(2)=1 VV1 0xD4  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3110},
3573 /*empty slot1 */ {0,0},
3574 /*h(11)=3 VV1 0xD4  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3113},
3575 /*h(3)=4 VV1 0xD4  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3111}
3576 };
3577 xed_union64_t t, u;
3578 xed_uint64_t key = 0;
3579 xed_uint64_t hidx = 0;
3580 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3581 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
3582 if(lu_table[hidx].key == key) {
3583     return lu_table[hidx].value;
3584 }
3585 else{
3586     return 0;
3587 }
3588 }
xed3_phash_find_map0x0F_opcode0xd5_vv1(const xed_decoded_inst_t * d)3589 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xd5_vv1(const xed_decoded_inst_t* d)
3590 {
3591 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3592 static const lu_entry_t lu_table[5] = {
3593 /*h(10)=0 VV1 0xD5  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3228},
3594 /*h(2)=1 VV1 0xD5  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3226},
3595 /*empty slot1 */ {0,0},
3596 /*h(11)=3 VV1 0xD5  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3229},
3597 /*h(3)=4 VV1 0xD5  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3227}
3598 };
3599 xed_union64_t t, u;
3600 xed_uint64_t key = 0;
3601 xed_uint64_t hidx = 0;
3602 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3603 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
3604 if(lu_table[hidx].key == key) {
3605     return lu_table[hidx].value;
3606 }
3607 else{
3608     return 0;
3609 }
3610 }
xed3_phash_find_map0x0F_opcode0xd6_vv1(const xed_decoded_inst_t * d)3611 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xd6_vv1(const xed_decoded_inst_t* d)
3612 {
3613 typedef struct { xed_uint32_t value;} lu_entry_t;
3614 static const lu_entry_t lu_table[2] = {
3615 /*h(14)=0 VV1 0xD6  VL128 V66 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2240},
3616 /*h(15)=1 VV1 0xD6  VL128 V66 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {2241}
3617 };
3618 xed_uint64_t key = 0;
3619 xed_uint64_t hidx = 0;
3620 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
3621 hidx = key - 14;
3622 if(hidx <= 1) {
3623     return lu_table[hidx].value;
3624 }
3625 else{
3626     return 0;
3627 }
3628 }
xed3_phash_find_map0x0F_opcode0xd7_vv1(const xed_decoded_inst_t * d)3629 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xd7_vv1(const xed_decoded_inst_t* d)
3630 {
3631 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3632 static const lu_entry_t lu_table[4] = {
3633 /*h(47)=0 VV1 0xD7  VL256 V66 V0F  NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 2611},
3634 /*h(15)=1 VV1 0xD7  VL128 V66 V0F  NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 2610},
3635 /*empty slot1 */ {0,0},
3636 /*empty slot1 */ {0,0}
3637 };
3638 xed_union64_t t;
3639 xed_uint64_t key = 0;
3640 xed_uint64_t hidx = 0;
3641 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
3642 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-2));
3643 if(lu_table[hidx].key == key) {
3644     return lu_table[hidx].value;
3645 }
3646 else{
3647     return 0;
3648 }
3649 }
xed3_phash_find_map0x0F_opcode0xd8_vv1(const xed_decoded_inst_t * d)3650 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xd8_vv1(const xed_decoded_inst_t* d)
3651 {
3652 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3653 static const lu_entry_t lu_table[5] = {
3654 /*h(10)=0 VV1 0xD8  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3053},
3655 /*h(2)=1 VV1 0xD8  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3051},
3656 /*empty slot1 */ {0,0},
3657 /*h(11)=3 VV1 0xD8  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3054},
3658 /*h(3)=4 VV1 0xD8  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3052}
3659 };
3660 xed_union64_t t, u;
3661 xed_uint64_t key = 0;
3662 xed_uint64_t hidx = 0;
3663 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3664 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
3665 if(lu_table[hidx].key == key) {
3666     return lu_table[hidx].value;
3667 }
3668 else{
3669     return 0;
3670 }
3671 }
xed3_phash_find_map0x0F_opcode0xd9_vv1(const xed_decoded_inst_t * d)3672 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xd9_vv1(const xed_decoded_inst_t* d)
3673 {
3674 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3675 static const lu_entry_t lu_table[5] = {
3676 /*h(10)=0 VV1 0xD9  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3073},
3677 /*h(2)=1 VV1 0xD9  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3071},
3678 /*empty slot1 */ {0,0},
3679 /*h(11)=3 VV1 0xD9  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3074},
3680 /*h(3)=4 VV1 0xD9  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3072}
3681 };
3682 xed_union64_t t, u;
3683 xed_uint64_t key = 0;
3684 xed_uint64_t hidx = 0;
3685 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3686 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
3687 if(lu_table[hidx].key == key) {
3688     return lu_table[hidx].value;
3689 }
3690 else{
3691     return 0;
3692 }
3693 }
xed3_phash_find_map0x0F_opcode0xda_vv1(const xed_decoded_inst_t * d)3694 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xda_vv1(const xed_decoded_inst_t* d)
3695 {
3696 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3697 static const lu_entry_t lu_table[5] = {
3698 /*h(10)=0 VV1 0xDA  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3589},
3699 /*h(2)=1 VV1 0xDA  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3587},
3700 /*empty slot1 */ {0,0},
3701 /*h(11)=3 VV1 0xDA  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3590},
3702 /*h(3)=4 VV1 0xDA  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3588}
3703 };
3704 xed_union64_t t, u;
3705 xed_uint64_t key = 0;
3706 xed_uint64_t hidx = 0;
3707 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3708 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
3709 if(lu_table[hidx].key == key) {
3710     return lu_table[hidx].value;
3711 }
3712 else{
3713     return 0;
3714 }
3715 }
xed3_phash_find_map0x0F_opcode0xdb_vv1(const xed_decoded_inst_t * d)3716 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xdb_vv1(const xed_decoded_inst_t* d)
3717 {
3718 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3719 static const lu_entry_t lu_table[5] = {
3720 /*h(10)=0 VV1 0xDB  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2638},
3721 /*h(2)=1 VV1 0xDB  VL128 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2636},
3722 /*empty slot1 */ {0,0},
3723 /*h(11)=3 VV1 0xDB   VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2639},
3724 /*h(3)=4 VV1 0xDB  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2637}
3725 };
3726 xed_union64_t t, u;
3727 xed_uint64_t key = 0;
3728 xed_uint64_t hidx = 0;
3729 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3730 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
3731 if(lu_table[hidx].key == key) {
3732     return lu_table[hidx].value;
3733 }
3734 else{
3735     return 0;
3736 }
3737 }
xed3_phash_find_map0x0F_opcode0xdc_vv1(const xed_decoded_inst_t * d)3738 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xdc_vv1(const xed_decoded_inst_t* d)
3739 {
3740 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3741 static const lu_entry_t lu_table[5] = {
3742 /*h(10)=0 VV1 0xDC  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2867},
3743 /*h(2)=1 VV1 0xDC  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2865},
3744 /*empty slot1 */ {0,0},
3745 /*h(11)=3 VV1 0xDC  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2868},
3746 /*h(3)=4 VV1 0xDC  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2866}
3747 };
3748 xed_union64_t t, u;
3749 xed_uint64_t key = 0;
3750 xed_uint64_t hidx = 0;
3751 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3752 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
3753 if(lu_table[hidx].key == key) {
3754     return lu_table[hidx].value;
3755 }
3756 else{
3757     return 0;
3758 }
3759 }
xed3_phash_find_map0x0F_opcode0xdd_vv1(const xed_decoded_inst_t * d)3760 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xdd_vv1(const xed_decoded_inst_t* d)
3761 {
3762 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3763 static const lu_entry_t lu_table[5] = {
3764 /*h(10)=0 VV1 0xDD  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2858},
3765 /*h(2)=1 VV1 0xDD  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2856},
3766 /*empty slot1 */ {0,0},
3767 /*h(11)=3 VV1 0xDD  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2859},
3768 /*h(3)=4 VV1 0xDD  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2857}
3769 };
3770 xed_union64_t t, u;
3771 xed_uint64_t key = 0;
3772 xed_uint64_t hidx = 0;
3773 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3774 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
3775 if(lu_table[hidx].key == key) {
3776     return lu_table[hidx].value;
3777 }
3778 else{
3779     return 0;
3780 }
3781 }
xed3_phash_find_map0x0F_opcode0xde_vv1(const xed_decoded_inst_t * d)3782 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xde_vv1(const xed_decoded_inst_t* d)
3783 {
3784 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3785 static const lu_entry_t lu_table[5] = {
3786 /*h(10)=0 VV1 0xDE  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2488},
3787 /*h(2)=1 VV1 0xDE  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2486},
3788 /*empty slot1 */ {0,0},
3789 /*h(11)=3 VV1 0xDE  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2489},
3790 /*h(3)=4 VV1 0xDE  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2487}
3791 };
3792 xed_union64_t t, u;
3793 xed_uint64_t key = 0;
3794 xed_uint64_t hidx = 0;
3795 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3796 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
3797 if(lu_table[hidx].key == key) {
3798     return lu_table[hidx].value;
3799 }
3800 else{
3801     return 0;
3802 }
3803 }
xed3_phash_find_map0x0F_opcode0xdf_vv1(const xed_decoded_inst_t * d)3804 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xdf_vv1(const xed_decoded_inst_t* d)
3805 {
3806 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3807 static const lu_entry_t lu_table[5] = {
3808 /*h(10)=0 VV1 0xDF  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2646},
3809 /*h(2)=1 VV1 0xDF  VL128 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2644},
3810 /*empty slot1 */ {0,0},
3811 /*h(11)=3 VV1 0xDF   VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2647},
3812 /*h(3)=4 VV1 0xDF  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2645}
3813 };
3814 xed_union64_t t, u;
3815 xed_uint64_t key = 0;
3816 xed_uint64_t hidx = 0;
3817 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3818 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
3819 if(lu_table[hidx].key == key) {
3820     return lu_table[hidx].value;
3821 }
3822 else{
3823     return 0;
3824 }
3825 }
xed3_phash_find_map0x0F_opcode0xe0_vv1(const xed_decoded_inst_t * d)3826 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xe0_vv1(const xed_decoded_inst_t* d)
3827 {
3828 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3829 static const lu_entry_t lu_table[5] = {
3830 /*h(10)=0 VV1 0xE0  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2359},
3831 /*h(2)=1 VV1 0xE0  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2357},
3832 /*empty slot1 */ {0,0},
3833 /*h(11)=3 VV1 0xE0  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2360},
3834 /*h(3)=4 VV1 0xE0  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2358}
3835 };
3836 xed_union64_t t, u;
3837 xed_uint64_t key = 0;
3838 xed_uint64_t hidx = 0;
3839 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3840 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
3841 if(lu_table[hidx].key == key) {
3842     return lu_table[hidx].value;
3843 }
3844 else{
3845     return 0;
3846 }
3847 }
xed3_phash_find_map0x0F_opcode0xe1_vv1(const xed_decoded_inst_t * d)3848 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xe1_vv1(const xed_decoded_inst_t* d)
3849 {
3850 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3851 static const lu_entry_t lu_table[5] = {
3852 /*h(10)=0 VV1 0xE1  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2558},
3853 /*h(2)=1 VV1 0xE1  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2555},
3854 /*empty slot1 */ {0,0},
3855 /*h(11)=3 VV1 0xE1  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2559},
3856 /*h(3)=4 VV1 0xE1  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2556}
3857 };
3858 xed_union64_t t, u;
3859 xed_uint64_t key = 0;
3860 xed_uint64_t hidx = 0;
3861 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3862 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
3863 if(lu_table[hidx].key == key) {
3864     return lu_table[hidx].value;
3865 }
3866 else{
3867     return 0;
3868 }
3869 }
xed3_phash_find_map0x0F_opcode0xe2_vv1(const xed_decoded_inst_t * d)3870 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xe2_vv1(const xed_decoded_inst_t* d)
3871 {
3872 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3873 static const lu_entry_t lu_table[5] = {
3874 /*h(10)=0 VV1 0xE2  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2542},
3875 /*h(2)=1 VV1 0xE2  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2539},
3876 /*empty slot1 */ {0,0},
3877 /*h(11)=3 VV1 0xE2  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2543},
3878 /*h(3)=4 VV1 0xE2  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2540}
3879 };
3880 xed_union64_t t, u;
3881 xed_uint64_t key = 0;
3882 xed_uint64_t hidx = 0;
3883 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3884 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
3885 if(lu_table[hidx].key == key) {
3886     return lu_table[hidx].value;
3887 }
3888 else{
3889     return 0;
3890 }
3891 }
xed3_phash_find_map0x0F_opcode0xe3_vv1(const xed_decoded_inst_t * d)3892 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xe3_vv1(const xed_decoded_inst_t* d)
3893 {
3894 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3895 static const lu_entry_t lu_table[5] = {
3896 /*h(10)=0 VV1 0xE3  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2343},
3897 /*h(2)=1 VV1 0xE3  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2341},
3898 /*empty slot1 */ {0,0},
3899 /*h(11)=3 VV1 0xE3  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2344},
3900 /*h(3)=4 VV1 0xE3  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2342}
3901 };
3902 xed_union64_t t, u;
3903 xed_uint64_t key = 0;
3904 xed_uint64_t hidx = 0;
3905 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3906 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
3907 if(lu_table[hidx].key == key) {
3908     return lu_table[hidx].value;
3909 }
3910 else{
3911     return 0;
3912 }
3913 }
xed3_phash_find_map0x0F_opcode0xe4_vv1(const xed_decoded_inst_t * d)3914 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xe4_vv1(const xed_decoded_inst_t* d)
3915 {
3916 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3917 static const lu_entry_t lu_table[5] = {
3918 /*h(10)=0 VV1 0xE4  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2212},
3919 /*h(2)=1 VV1 0xE4  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2210},
3920 /*empty slot1 */ {0,0},
3921 /*h(11)=3 VV1 0xE4  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2213},
3922 /*h(3)=4 VV1 0xE4  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2211}
3923 };
3924 xed_union64_t t, u;
3925 xed_uint64_t key = 0;
3926 xed_uint64_t hidx = 0;
3927 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3928 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
3929 if(lu_table[hidx].key == key) {
3930     return lu_table[hidx].value;
3931 }
3932 else{
3933     return 0;
3934 }
3935 }
xed3_phash_find_map0x0F_opcode0xe5_vv1(const xed_decoded_inst_t * d)3936 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xe5_vv1(const xed_decoded_inst_t* d)
3937 {
3938 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3939 static const lu_entry_t lu_table[5] = {
3940 /*h(10)=0 VV1 0xE5  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2887},
3941 /*h(2)=1 VV1 0xE5  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2885},
3942 /*empty slot1 */ {0,0},
3943 /*h(11)=3 VV1 0xE5  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2888},
3944 /*h(3)=4 VV1 0xE5  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2886}
3945 };
3946 xed_union64_t t, u;
3947 xed_uint64_t key = 0;
3948 xed_uint64_t hidx = 0;
3949 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
3950 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
3951 if(lu_table[hidx].key == key) {
3952     return lu_table[hidx].value;
3953 }
3954 else{
3955     return 0;
3956 }
3957 }
xed3_phash_find_map0x0F_opcode0xe6_vv1(const xed_decoded_inst_t * d)3958 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xe6_vv1(const xed_decoded_inst_t* d)
3959 {
3960 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3961 static const lu_entry_t lu_table[17] = {
3962 /*h(47)=0 VV1 0xE6  VL256 V66 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 3638},
3963 /*empty slot1 */ {0,0},
3964 /*h(31)=2 VV1 0xE6  VL128 VF3 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {31, 3364},
3965 /*h(23)=3 VV1 0xE6  VL128 VF2 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 2740},
3966 /*h(15)=4 VV1 0xE6  VL128 V66 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 3636},
3967 /*h(62)=5 VV1 0xE6  VL256 VF3 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {62, 3365},
3968 /*h(54)=6 VV1 0xE6  VL256 VF2 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {54, 2741},
3969 /*h(46)=7 VV1 0xE6  VL256 V66 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 3637},
3970 /*empty slot1 */ {0,0},
3971 /*h(30)=9 VV1 0xE6  VL128 VF3 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {30, 3363},
3972 /*h(22)=10 VV1 0xE6  VL128 VF2 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 2739},
3973 /*h(14)=11 VV1 0xE6  VL128 V66 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 3635},
3974 /*empty slot1 */ {0,0},
3975 /*empty slot1 */ {0,0},
3976 /*empty slot1 */ {0,0},
3977 /*h(63)=15 VV1 0xE6  VL256 VF3 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {63, 3366},
3978 /*h(55)=16 VV1 0xE6  VL256 VF2 V0F NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {55, 2742}
3979 };
3980 xed_union64_t t, u;
3981 xed_uint64_t key = 0;
3982 xed_uint64_t hidx = 0;
3983 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
3984 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 17ULL, u.s.hi32);
3985 if(lu_table[hidx].key == key) {
3986     return lu_table[hidx].value;
3987 }
3988 else{
3989     return 0;
3990 }
3991 }
xed3_phash_find_map0x0F_opcode0xe7_vv1(const xed_decoded_inst_t * d)3992 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xe7_vv1(const xed_decoded_inst_t* d)
3993 {
3994 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
3995 static const lu_entry_t lu_table[2] = {
3996 /*h(46)=0 VV1 0xE7  V66 V0F VL256 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 2984},
3997 /*h(14)=1 VV1 0xE7  V66 V0F VL128 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 2983}
3998 };
3999 xed_union64_t t;
4000 xed_uint64_t key = 0;
4001 xed_uint64_t hidx = 0;
4002 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
4003 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-1));
4004 if(lu_table[hidx].key == key) {
4005     return lu_table[hidx].value;
4006 }
4007 else{
4008     return 0;
4009 }
4010 }
xed3_phash_find_map0x0F_opcode0xe8_vv1(const xed_decoded_inst_t * d)4011 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xe8_vv1(const xed_decoded_inst_t* d)
4012 {
4013 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4014 static const lu_entry_t lu_table[5] = {
4015 /*h(10)=0 VV1 0xE8  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3434},
4016 /*h(2)=1 VV1 0xE8  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3432},
4017 /*empty slot1 */ {0,0},
4018 /*h(11)=3 VV1 0xE8  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3435},
4019 /*h(3)=4 VV1 0xE8  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3433}
4020 };
4021 xed_union64_t t, u;
4022 xed_uint64_t key = 0;
4023 xed_uint64_t hidx = 0;
4024 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4025 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4026 if(lu_table[hidx].key == key) {
4027     return lu_table[hidx].value;
4028 }
4029 else{
4030     return 0;
4031 }
4032 }
xed3_phash_find_map0x0F_opcode0xe9_vv1(const xed_decoded_inst_t * d)4033 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xe9_vv1(const xed_decoded_inst_t* d)
4034 {
4035 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4036 static const lu_entry_t lu_table[5] = {
4037 /*h(10)=0 VV1 0xE9  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3447},
4038 /*h(2)=1 VV1 0xE9  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3445},
4039 /*empty slot1 */ {0,0},
4040 /*h(11)=3 VV1 0xE9  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3448},
4041 /*h(3)=4 VV1 0xE9  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3446}
4042 };
4043 xed_union64_t t, u;
4044 xed_uint64_t key = 0;
4045 xed_uint64_t hidx = 0;
4046 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4047 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4048 if(lu_table[hidx].key == key) {
4049     return lu_table[hidx].value;
4050 }
4051 else{
4052     return 0;
4053 }
4054 }
xed3_phash_find_map0x0F_opcode0xea_vv1(const xed_decoded_inst_t * d)4055 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xea_vv1(const xed_decoded_inst_t* d)
4056 {
4057 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4058 static const lu_entry_t lu_table[5] = {
4059 /*h(10)=0 VV1 0xEA  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2470},
4060 /*h(2)=1 VV1 0xEA  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2468},
4061 /*empty slot1 */ {0,0},
4062 /*h(11)=3 VV1 0xEA  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2471},
4063 /*h(3)=4 VV1 0xEA  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2469}
4064 };
4065 xed_union64_t t, u;
4066 xed_uint64_t key = 0;
4067 xed_uint64_t hidx = 0;
4068 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4069 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4070 if(lu_table[hidx].key == key) {
4071     return lu_table[hidx].value;
4072 }
4073 else{
4074     return 0;
4075 }
4076 }
xed3_phash_find_map0x0F_opcode0xeb_vv1(const xed_decoded_inst_t * d)4077 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xeb_vv1(const xed_decoded_inst_t* d)
4078 {
4079 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4080 static const lu_entry_t lu_table[5] = {
4081 /*h(10)=0 VV1 0xEB  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3202},
4082 /*h(2)=1 VV1 0xEB  VL128 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3200},
4083 /*empty slot1 */ {0,0},
4084 /*h(11)=3 VV1 0xEB   VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3203},
4085 /*h(3)=4 VV1 0xEB  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3201}
4086 };
4087 xed_union64_t t, u;
4088 xed_uint64_t key = 0;
4089 xed_uint64_t hidx = 0;
4090 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4091 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4092 if(lu_table[hidx].key == key) {
4093     return lu_table[hidx].value;
4094 }
4095 else{
4096     return 0;
4097 }
4098 }
xed3_phash_find_map0x0F_opcode0xec_vv1(const xed_decoded_inst_t * d)4099 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xec_vv1(const xed_decoded_inst_t* d)
4100 {
4101 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4102 static const lu_entry_t lu_table[5] = {
4103 /*h(10)=0 VV1 0xEC  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2795},
4104 /*h(2)=1 VV1 0xEC  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2793},
4105 /*empty slot1 */ {0,0},
4106 /*h(11)=3 VV1 0xEC  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2796},
4107 /*h(3)=4 VV1 0xEC  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2794}
4108 };
4109 xed_union64_t t, u;
4110 xed_uint64_t key = 0;
4111 xed_uint64_t hidx = 0;
4112 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4113 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4114 if(lu_table[hidx].key == key) {
4115     return lu_table[hidx].value;
4116 }
4117 else{
4118     return 0;
4119 }
4120 }
xed3_phash_find_map0x0F_opcode0xed_vv1(const xed_decoded_inst_t * d)4121 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xed_vv1(const xed_decoded_inst_t* d)
4122 {
4123 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4124 static const lu_entry_t lu_table[5] = {
4125 /*h(10)=0 VV1 0xED  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2777},
4126 /*h(2)=1 VV1 0xED  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2775},
4127 /*empty slot1 */ {0,0},
4128 /*h(11)=3 VV1 0xED  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2778},
4129 /*h(3)=4 VV1 0xED  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2776}
4130 };
4131 xed_union64_t t, u;
4132 xed_uint64_t key = 0;
4133 xed_uint64_t hidx = 0;
4134 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4135 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4136 if(lu_table[hidx].key == key) {
4137     return lu_table[hidx].value;
4138 }
4139 else{
4140     return 0;
4141 }
4142 }
xed3_phash_find_map0x0F_opcode0xee_vv1(const xed_decoded_inst_t * d)4143 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xee_vv1(const xed_decoded_inst_t* d)
4144 {
4145 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4146 static const lu_entry_t lu_table[5] = {
4147 /*h(10)=0 VV1 0xEE  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2390},
4148 /*h(2)=1 VV1 0xEE  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2388},
4149 /*empty slot1 */ {0,0},
4150 /*h(11)=3 VV1 0xEE  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2391},
4151 /*h(3)=4 VV1 0xEE  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2389}
4152 };
4153 xed_union64_t t, u;
4154 xed_uint64_t key = 0;
4155 xed_uint64_t hidx = 0;
4156 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4157 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4158 if(lu_table[hidx].key == key) {
4159     return lu_table[hidx].value;
4160 }
4161 else{
4162     return 0;
4163 }
4164 }
xed3_phash_find_map0x0F_opcode0xef_vv1(const xed_decoded_inst_t * d)4165 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xef_vv1(const xed_decoded_inst_t* d)
4166 {
4167 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4168 static const lu_entry_t lu_table[5] = {
4169 /*h(10)=0 VV1 0xEF  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2496},
4170 /*h(2)=1 VV1 0xEF  VL128 V66 V0F MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2494},
4171 /*empty slot1 */ {0,0},
4172 /*h(11)=3 VV1 0xEF   VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2497},
4173 /*h(3)=4 VV1 0xEF  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2495}
4174 };
4175 xed_union64_t t, u;
4176 xed_uint64_t key = 0;
4177 xed_uint64_t hidx = 0;
4178 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4179 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4180 if(lu_table[hidx].key == key) {
4181     return lu_table[hidx].value;
4182 }
4183 else{
4184     return 0;
4185 }
4186 }
xed3_phash_find_map0x0F_opcode0xf0_vv1(const xed_decoded_inst_t * d)4187 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xf0_vv1(const xed_decoded_inst_t* d)
4188 {
4189 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4190 static const lu_entry_t lu_table[2] = {
4191 /*h(54)=0 VV1 0xF0  VL256 VF2 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {54, 2683},
4192 /*h(22)=1 VV1 0xF0  VL128 VF2 V0F NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 2682}
4193 };
4194 xed_union64_t t;
4195 xed_uint64_t key = 0;
4196 xed_uint64_t hidx = 0;
4197 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
4198 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-1));
4199 if(lu_table[hidx].key == key) {
4200     return lu_table[hidx].value;
4201 }
4202 else{
4203     return 0;
4204 }
4205 }
xed3_phash_find_map0x0F_opcode0xf1_vv1(const xed_decoded_inst_t * d)4206 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xf1_vv1(const xed_decoded_inst_t* d)
4207 {
4208 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4209 static const lu_entry_t lu_table[5] = {
4210 /*h(10)=0 VV1 0xF1  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2631},
4211 /*h(2)=1 VV1 0xF1  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2628},
4212 /*empty slot1 */ {0,0},
4213 /*h(11)=3 VV1 0xF1  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2632},
4214 /*h(3)=4 VV1 0xF1  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2629}
4215 };
4216 xed_union64_t t, u;
4217 xed_uint64_t key = 0;
4218 xed_uint64_t hidx = 0;
4219 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4220 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4221 if(lu_table[hidx].key == key) {
4222     return lu_table[hidx].value;
4223 }
4224 else{
4225     return 0;
4226 }
4227 }
xed3_phash_find_map0x0F_opcode0xf2_vv1(const xed_decoded_inst_t * d)4228 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xf2_vv1(const xed_decoded_inst_t* d)
4229 {
4230 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4231 static const lu_entry_t lu_table[5] = {
4232 /*h(10)=0 VV1 0xF2  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2607},
4233 /*h(2)=1 VV1 0xF2  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2604},
4234 /*empty slot1 */ {0,0},
4235 /*h(11)=3 VV1 0xF2  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2608},
4236 /*h(3)=4 VV1 0xF2  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2605}
4237 };
4238 xed_union64_t t, u;
4239 xed_uint64_t key = 0;
4240 xed_uint64_t hidx = 0;
4241 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4242 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4243 if(lu_table[hidx].key == key) {
4244     return lu_table[hidx].value;
4245 }
4246 else{
4247     return 0;
4248 }
4249 }
xed3_phash_find_map0x0F_opcode0xf3_vv1(const xed_decoded_inst_t * d)4250 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xf3_vv1(const xed_decoded_inst_t* d)
4251 {
4252 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4253 static const lu_entry_t lu_table[5] = {
4254 /*h(10)=0 VV1 0xF3  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2617},
4255 /*h(2)=1 VV1 0xF3  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2614},
4256 /*empty slot1 */ {0,0},
4257 /*h(11)=3 VV1 0xF3  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2618},
4258 /*h(3)=4 VV1 0xF3  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2615}
4259 };
4260 xed_union64_t t, u;
4261 xed_uint64_t key = 0;
4262 xed_uint64_t hidx = 0;
4263 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4264 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4265 if(lu_table[hidx].key == key) {
4266     return lu_table[hidx].value;
4267 }
4268 else{
4269     return 0;
4270 }
4271 }
xed3_phash_find_map0x0F_opcode0xf4_vv1(const xed_decoded_inst_t * d)4272 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xf4_vv1(const xed_decoded_inst_t* d)
4273 {
4274 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4275 static const lu_entry_t lu_table[5] = {
4276 /*h(10)=0 VV1 0xF4  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2228},
4277 /*h(2)=1 VV1 0xF4  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2226},
4278 /*empty slot1 */ {0,0},
4279 /*h(11)=3 VV1 0xF4  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2229},
4280 /*h(3)=4 VV1 0xF4  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2227}
4281 };
4282 xed_union64_t t, u;
4283 xed_uint64_t key = 0;
4284 xed_uint64_t hidx = 0;
4285 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4286 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4287 if(lu_table[hidx].key == key) {
4288     return lu_table[hidx].value;
4289 }
4290 else{
4291     return 0;
4292 }
4293 }
xed3_phash_find_map0x0F_opcode0xf5_vv1(const xed_decoded_inst_t * d)4294 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xf5_vv1(const xed_decoded_inst_t* d)
4295 {
4296 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4297 static const lu_entry_t lu_table[5] = {
4298 /*h(10)=0 VV1 0xF5  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3651},
4299 /*h(2)=1 VV1 0xF5  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3649},
4300 /*empty slot1 */ {0,0},
4301 /*h(11)=3 VV1 0xF5  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3652},
4302 /*h(3)=4 VV1 0xF5  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3650}
4303 };
4304 xed_union64_t t, u;
4305 xed_uint64_t key = 0;
4306 xed_uint64_t hidx = 0;
4307 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4308 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4309 if(lu_table[hidx].key == key) {
4310     return lu_table[hidx].value;
4311 }
4312 else{
4313     return 0;
4314 }
4315 }
xed3_phash_find_map0x0F_opcode0xf6_vv1(const xed_decoded_inst_t * d)4316 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xf6_vv1(const xed_decoded_inst_t* d)
4317 {
4318 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4319 static const lu_entry_t lu_table[5] = {
4320 /*h(10)=0 VV1 0xF6  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3418},
4321 /*h(2)=1 VV1 0xF6  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3416},
4322 /*empty slot1 */ {0,0},
4323 /*h(11)=3 VV1 0xF6  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3419},
4324 /*h(3)=4 VV1 0xF6  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3417}
4325 };
4326 xed_union64_t t, u;
4327 xed_uint64_t key = 0;
4328 xed_uint64_t hidx = 0;
4329 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4330 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4331 if(lu_table[hidx].key == key) {
4332     return lu_table[hidx].value;
4333 }
4334 else{
4335     return 0;
4336 }
4337 }
xed3_phash_find_map0x0F_opcode0xf7_vv1(const xed_decoded_inst_t * d)4338 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xf7_vv1(const xed_decoded_inst_t* d)
4339 {
4340 typedef struct { xed_uint32_t value;} lu_entry_t;
4341 static const lu_entry_t lu_table[1] = {
4342 /*h(15)=0 VV1 0xF7 V0F V66 VL128  NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3573}
4343 };
4344 xed_uint64_t key = 0;
4345 xed_uint64_t hidx = 0;
4346 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
4347 hidx = key - 15;
4348 if(hidx == 0) {
4349     return lu_table[hidx].value;
4350 }
4351 else{
4352     return 0;
4353 }
4354 }
xed3_phash_find_map0x0F_opcode0xf8_vv1(const xed_decoded_inst_t * d)4355 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xf8_vv1(const xed_decoded_inst_t* d)
4356 {
4357 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4358 static const lu_entry_t lu_table[5] = {
4359 /*h(10)=0 VV1 0xF8  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3381},
4360 /*h(2)=1 VV1 0xF8  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3379},
4361 /*empty slot1 */ {0,0},
4362 /*h(11)=3 VV1 0xF8  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3382},
4363 /*h(3)=4 VV1 0xF8  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3380}
4364 };
4365 xed_union64_t t, u;
4366 xed_uint64_t key = 0;
4367 xed_uint64_t hidx = 0;
4368 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4369 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4370 if(lu_table[hidx].key == key) {
4371     return lu_table[hidx].value;
4372 }
4373 else{
4374     return 0;
4375 }
4376 }
xed3_phash_find_map0x0F_opcode0xf9_vv1(const xed_decoded_inst_t * d)4377 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xf9_vv1(const xed_decoded_inst_t* d)
4378 {
4379 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4380 static const lu_entry_t lu_table[5] = {
4381 /*h(10)=0 VV1 0xF9  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3406},
4382 /*h(2)=1 VV1 0xF9  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3404},
4383 /*empty slot1 */ {0,0},
4384 /*h(11)=3 VV1 0xF9  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3407},
4385 /*h(3)=4 VV1 0xF9  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3405}
4386 };
4387 xed_union64_t t, u;
4388 xed_uint64_t key = 0;
4389 xed_uint64_t hidx = 0;
4390 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4391 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4392 if(lu_table[hidx].key == key) {
4393     return lu_table[hidx].value;
4394 }
4395 else{
4396     return 0;
4397 }
4398 }
xed3_phash_find_map0x0F_opcode0xfa_vv1(const xed_decoded_inst_t * d)4399 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xfa_vv1(const xed_decoded_inst_t* d)
4400 {
4401 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4402 static const lu_entry_t lu_table[5] = {
4403 /*h(10)=0 VV1 0xFA  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3385},
4404 /*h(2)=1 VV1 0xFA  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3383},
4405 /*empty slot1 */ {0,0},
4406 /*h(11)=3 VV1 0xFA  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3386},
4407 /*h(3)=4 VV1 0xFA  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3384}
4408 };
4409 xed_union64_t t, u;
4410 xed_uint64_t key = 0;
4411 xed_uint64_t hidx = 0;
4412 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4413 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4414 if(lu_table[hidx].key == key) {
4415     return lu_table[hidx].value;
4416 }
4417 else{
4418     return 0;
4419 }
4420 }
xed3_phash_find_map0x0F_opcode0xfb_vv1(const xed_decoded_inst_t * d)4421 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xfb_vv1(const xed_decoded_inst_t* d)
4422 {
4423 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4424 static const lu_entry_t lu_table[5] = {
4425 /*h(10)=0 VV1 0xFB  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3402},
4426 /*h(2)=1 VV1 0xFB  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3400},
4427 /*empty slot1 */ {0,0},
4428 /*h(11)=3 VV1 0xFB  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3403},
4429 /*h(3)=4 VV1 0xFB  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3401}
4430 };
4431 xed_union64_t t, u;
4432 xed_uint64_t key = 0;
4433 xed_uint64_t hidx = 0;
4434 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4435 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4436 if(lu_table[hidx].key == key) {
4437     return lu_table[hidx].value;
4438 }
4439 else{
4440     return 0;
4441 }
4442 }
xed3_phash_find_map0x0F_opcode0xfc_vv1(const xed_decoded_inst_t * d)4443 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xfc_vv1(const xed_decoded_inst_t* d)
4444 {
4445 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4446 static const lu_entry_t lu_table[5] = {
4447 /*h(10)=0 VV1 0xFC  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3120},
4448 /*h(2)=1 VV1 0xFC  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3118},
4449 /*empty slot1 */ {0,0},
4450 /*h(11)=3 VV1 0xFC  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3121},
4451 /*h(3)=4 VV1 0xFC  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3119}
4452 };
4453 xed_union64_t t, u;
4454 xed_uint64_t key = 0;
4455 xed_uint64_t hidx = 0;
4456 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4457 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4458 if(lu_table[hidx].key == key) {
4459     return lu_table[hidx].value;
4460 }
4461 else{
4462     return 0;
4463 }
4464 }
xed3_phash_find_map0x0F_opcode0xfd_vv1(const xed_decoded_inst_t * d)4465 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xfd_vv1(const xed_decoded_inst_t* d)
4466 {
4467 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4468 static const lu_entry_t lu_table[5] = {
4469 /*h(10)=0 VV1 0xFD  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3116},
4470 /*h(2)=1 VV1 0xFD  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3114},
4471 /*empty slot1 */ {0,0},
4472 /*h(11)=3 VV1 0xFD  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3117},
4473 /*h(3)=4 VV1 0xFD  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3115}
4474 };
4475 xed_union64_t t, u;
4476 xed_uint64_t key = 0;
4477 xed_uint64_t hidx = 0;
4478 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4479 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4480 if(lu_table[hidx].key == key) {
4481     return lu_table[hidx].value;
4482 }
4483 else{
4484     return 0;
4485 }
4486 }
xed3_phash_find_map0x0F_opcode0xfe_vv1(const xed_decoded_inst_t * d)4487 static xed_uint32_t xed3_phash_find_map0x0F_opcode0xfe_vv1(const xed_decoded_inst_t* d)
4488 {
4489 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4490 static const lu_entry_t lu_table[5] = {
4491 /*h(10)=0 VV1 0xFE  VL256 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3128},
4492 /*h(2)=1 VV1 0xFE  VL128 V66 V0F  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3126},
4493 /*empty slot1 */ {0,0},
4494 /*h(11)=3 VV1 0xFE  VL256 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3129},
4495 /*h(3)=4 VV1 0xFE  VL128 V66 V0F MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3127}
4496 };
4497 xed_union64_t t, u;
4498 xed_uint64_t key = 0;
4499 xed_uint64_t hidx = 0;
4500 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4501 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4502 if(lu_table[hidx].key == key) {
4503     return lu_table[hidx].value;
4504 }
4505 else{
4506     return 0;
4507 }
4508 }
xed3_phash_find_map0x0F38_opcode0x0_vv1(const xed_decoded_inst_t * d)4509 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x0_vv1(const xed_decoded_inst_t* d)
4510 {
4511 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4512 static const lu_entry_t lu_table[5] = {
4513 /*h(10)=0 VV1 0x00  VL256 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2563},
4514 /*h(2)=1 VV1 0x00  VL128 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2561},
4515 /*empty slot1 */ {0,0},
4516 /*h(11)=3 VV1 0x00  VL256 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2564},
4517 /*h(3)=4 VV1 0x00  VL128 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2562}
4518 };
4519 xed_union64_t t, u;
4520 xed_uint64_t key = 0;
4521 xed_uint64_t hidx = 0;
4522 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4523 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4524 if(lu_table[hidx].key == key) {
4525     return lu_table[hidx].value;
4526 }
4527 else{
4528     return 0;
4529 }
4530 }
xed3_phash_find_map0x0F38_opcode0x1_vv1(const xed_decoded_inst_t * d)4531 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x1_vv1(const xed_decoded_inst_t* d)
4532 {
4533 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4534 static const lu_entry_t lu_table[5] = {
4535 /*h(10)=0 VV1 0x01  VL256 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2642},
4536 /*h(2)=1 VV1 0x01  VL128 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2640},
4537 /*empty slot1 */ {0,0},
4538 /*h(11)=3 VV1 0x01  VL256 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2643},
4539 /*h(3)=4 VV1 0x01  VL128 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2641}
4540 };
4541 xed_union64_t t, u;
4542 xed_uint64_t key = 0;
4543 xed_uint64_t hidx = 0;
4544 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4545 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4546 if(lu_table[hidx].key == key) {
4547     return lu_table[hidx].value;
4548 }
4549 else{
4550     return 0;
4551 }
4552 }
xed3_phash_find_map0x0F38_opcode0x2_vv1(const xed_decoded_inst_t * d)4553 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x2_vv1(const xed_decoded_inst_t* d)
4554 {
4555 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4556 static const lu_entry_t lu_table[5] = {
4557 /*h(10)=0 VV1 0x02  VL256 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2665},
4558 /*h(2)=1 VV1 0x02  VL128 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2663},
4559 /*empty slot1 */ {0,0},
4560 /*h(11)=3 VV1 0x02  VL256 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2666},
4561 /*h(3)=4 VV1 0x02  VL128 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2664}
4562 };
4563 xed_union64_t t, u;
4564 xed_uint64_t key = 0;
4565 xed_uint64_t hidx = 0;
4566 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4567 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4568 if(lu_table[hidx].key == key) {
4569     return lu_table[hidx].value;
4570 }
4571 else{
4572     return 0;
4573 }
4574 }
xed3_phash_find_map0x0F38_opcode0x3_vv1(const xed_decoded_inst_t * d)4575 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x3_vv1(const xed_decoded_inst_t* d)
4576 {
4577 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4578 static const lu_entry_t lu_table[5] = {
4579 /*h(10)=0 VV1 0x03  VL256 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3043},
4580 /*h(2)=1 VV1 0x03  VL128 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3041},
4581 /*empty slot1 */ {0,0},
4582 /*h(11)=3 VV1 0x03  VL256 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3044},
4583 /*h(3)=4 VV1 0x03  VL128 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3042}
4584 };
4585 xed_union64_t t, u;
4586 xed_uint64_t key = 0;
4587 xed_uint64_t hidx = 0;
4588 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4589 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4590 if(lu_table[hidx].key == key) {
4591     return lu_table[hidx].value;
4592 }
4593 else{
4594     return 0;
4595 }
4596 }
xed3_phash_find_map0x0F38_opcode0x4_vv1(const xed_decoded_inst_t * d)4597 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x4_vv1(const xed_decoded_inst_t* d)
4598 {
4599 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4600 static const lu_entry_t lu_table[5] = {
4601 /*h(10)=0 VV1 0x04  VL256 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2908},
4602 /*h(2)=1 VV1 0x04  VL128 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2906},
4603 /*empty slot1 */ {0,0},
4604 /*h(11)=3 VV1 0x04  VL256 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2909},
4605 /*h(3)=4 VV1 0x04  VL128 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2907}
4606 };
4607 xed_union64_t t, u;
4608 xed_uint64_t key = 0;
4609 xed_uint64_t hidx = 0;
4610 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4611 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4612 if(lu_table[hidx].key == key) {
4613     return lu_table[hidx].value;
4614 }
4615 else{
4616     return 0;
4617 }
4618 }
xed3_phash_find_map0x0F38_opcode0x5_vv1(const xed_decoded_inst_t * d)4619 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x5_vv1(const xed_decoded_inst_t* d)
4620 {
4621 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4622 static const lu_entry_t lu_table[5] = {
4623 /*h(10)=0 VV1 0x05  VL256 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3171},
4624 /*h(2)=1 VV1 0x05  VL128 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3169},
4625 /*empty slot1 */ {0,0},
4626 /*h(11)=3 VV1 0x05  VL256 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3172},
4627 /*h(3)=4 VV1 0x05  VL128 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3170}
4628 };
4629 xed_union64_t t, u;
4630 xed_uint64_t key = 0;
4631 xed_uint64_t hidx = 0;
4632 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4633 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4634 if(lu_table[hidx].key == key) {
4635     return lu_table[hidx].value;
4636 }
4637 else{
4638     return 0;
4639 }
4640 }
xed3_phash_find_map0x0F38_opcode0x6_vv1(const xed_decoded_inst_t * d)4641 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x6_vv1(const xed_decoded_inst_t* d)
4642 {
4643 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4644 static const lu_entry_t lu_table[5] = {
4645 /*h(10)=0 VV1 0x06  VL256 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3180},
4646 /*h(2)=1 VV1 0x06  VL128 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3178},
4647 /*empty slot1 */ {0,0},
4648 /*h(11)=3 VV1 0x06  VL256 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3181},
4649 /*h(3)=4 VV1 0x06  VL128 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3179}
4650 };
4651 xed_union64_t t, u;
4652 xed_uint64_t key = 0;
4653 xed_uint64_t hidx = 0;
4654 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4655 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4656 if(lu_table[hidx].key == key) {
4657     return lu_table[hidx].value;
4658 }
4659 else{
4660     return 0;
4661 }
4662 }
xed3_phash_find_map0x0F38_opcode0x7_vv1(const xed_decoded_inst_t * d)4663 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x7_vv1(const xed_decoded_inst_t* d)
4664 {
4665 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4666 static const lu_entry_t lu_table[5] = {
4667 /*h(10)=0 VV1 0x07  VL256 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3705},
4668 /*h(2)=1 VV1 0x07  VL128 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3703},
4669 /*empty slot1 */ {0,0},
4670 /*h(11)=3 VV1 0x07  VL256 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3706},
4671 /*h(3)=4 VV1 0x07  VL128 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3704}
4672 };
4673 xed_union64_t t, u;
4674 xed_uint64_t key = 0;
4675 xed_uint64_t hidx = 0;
4676 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4677 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4678 if(lu_table[hidx].key == key) {
4679     return lu_table[hidx].value;
4680 }
4681 else{
4682     return 0;
4683 }
4684 }
xed3_phash_find_map0x0F38_opcode0x8_vv1(const xed_decoded_inst_t * d)4685 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x8_vv1(const xed_decoded_inst_t* d)
4686 {
4687 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4688 static const lu_entry_t lu_table[5] = {
4689 /*h(10)=0 VV1 0x08  VL256 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2836},
4690 /*h(2)=1 VV1 0x08  VL128 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2834},
4691 /*empty slot1 */ {0,0},
4692 /*h(11)=3 VV1 0x08  VL256 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2837},
4693 /*h(3)=4 VV1 0x08  VL128 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2835}
4694 };
4695 xed_union64_t t, u;
4696 xed_uint64_t key = 0;
4697 xed_uint64_t hidx = 0;
4698 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4699 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4700 if(lu_table[hidx].key == key) {
4701     return lu_table[hidx].value;
4702 }
4703 else{
4704     return 0;
4705 }
4706 }
xed3_phash_find_map0x0F38_opcode0x9_vv1(const xed_decoded_inst_t * d)4707 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x9_vv1(const xed_decoded_inst_t* d)
4708 {
4709 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4710 static const lu_entry_t lu_table[5] = {
4711 /*h(10)=0 VV1 0x09  VL256 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2819},
4712 /*h(2)=1 VV1 0x09  VL128 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2817},
4713 /*empty slot1 */ {0,0},
4714 /*h(11)=3 VV1 0x09  VL256 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2820},
4715 /*h(3)=4 VV1 0x09  VL128 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2818}
4716 };
4717 xed_union64_t t, u;
4718 xed_uint64_t key = 0;
4719 xed_uint64_t hidx = 0;
4720 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4721 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4722 if(lu_table[hidx].key == key) {
4723     return lu_table[hidx].value;
4724 }
4725 else{
4726     return 0;
4727 }
4728 }
xed3_phash_find_map0x0F38_opcode0xa_vv1(const xed_decoded_inst_t * d)4729 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xa_vv1(const xed_decoded_inst_t* d)
4730 {
4731 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4732 static const lu_entry_t lu_table[5] = {
4733 /*h(10)=0 VV1 0x0A  VL256 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2871},
4734 /*h(2)=1 VV1 0x0A  VL128 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2869},
4735 /*empty slot1 */ {0,0},
4736 /*h(11)=3 VV1 0x0A  VL256 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2872},
4737 /*h(3)=4 VV1 0x0A  VL128 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2870}
4738 };
4739 xed_union64_t t, u;
4740 xed_uint64_t key = 0;
4741 xed_uint64_t hidx = 0;
4742 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4743 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4744 if(lu_table[hidx].key == key) {
4745     return lu_table[hidx].value;
4746 }
4747 else{
4748     return 0;
4749 }
4750 }
xed3_phash_find_map0x0F38_opcode0xb_vv1(const xed_decoded_inst_t * d)4751 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xb_vv1(const xed_decoded_inst_t* d)
4752 {
4753 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4754 static const lu_entry_t lu_table[5] = {
4755 /*h(10)=0 VV1 0x0B  VL256 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2257},
4756 /*h(2)=1 VV1 0x0B  VL128 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2255},
4757 /*empty slot1 */ {0,0},
4758 /*h(11)=3 VV1 0x0B  VL256 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2258},
4759 /*h(3)=4 VV1 0x0B  VL128 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2256}
4760 };
4761 xed_union64_t t, u;
4762 xed_uint64_t key = 0;
4763 xed_uint64_t hidx = 0;
4764 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
4765 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4766 if(lu_table[hidx].key == key) {
4767     return lu_table[hidx].value;
4768 }
4769 else{
4770     return 0;
4771 }
4772 }
xed3_phash_find_map0x0F38_opcode0xc_vv1(const xed_decoded_inst_t * d)4773 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xc_vv1(const xed_decoded_inst_t* d)
4774 {
4775 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4776 static const lu_entry_t lu_table[5] = {
4777 /*h(5)=0 VV1 0x0C  VL128 V66 V0F38 norexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 2310},
4778 /*h(20)=1 VV1 0x0C  VL256 V66 V0F38  norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 2311},
4779 /*h(4)=2 VV1 0x0C VL128 V66 V0F38 norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 2309},
4780 /*empty slot1 */ {0,0},
4781 /*h(21)=4 VV1 0x0C  VL256 V66 V0F38  norexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 2312}
4782 };
4783 xed_union64_t t, u;
4784 xed_uint64_t key = 0;
4785 xed_uint64_t hidx = 0;
4786 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
4787 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4788 if(lu_table[hidx].key == key) {
4789     return lu_table[hidx].value;
4790 }
4791 else{
4792     return 0;
4793 }
4794 }
xed3_phash_find_map0x0F38_opcode0xd_vv1(const xed_decoded_inst_t * d)4795 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xd_vv1(const xed_decoded_inst_t* d)
4796 {
4797 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4798 static const lu_entry_t lu_table[5] = {
4799 /*h(5)=0 VV1 0x0D  VL128 V66 V0F38 norexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 3317},
4800 /*h(20)=1 VV1 0x0D  VL256 V66 V0F38 norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 3318},
4801 /*h(4)=2 VV1 0x0D VL128 V66 V0F38 norexw_prefix  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 3316},
4802 /*empty slot1 */ {0,0},
4803 /*h(21)=4 VV1 0x0D  VL256 V66 V0F38 norexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 3319}
4804 };
4805 xed_union64_t t, u;
4806 xed_uint64_t key = 0;
4807 xed_uint64_t hidx = 0;
4808 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
4809 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4810 if(lu_table[hidx].key == key) {
4811     return lu_table[hidx].value;
4812 }
4813 else{
4814     return 0;
4815 }
4816 }
xed3_phash_find_map0x0F38_opcode0xe_vv1(const xed_decoded_inst_t * d)4817 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xe_vv1(const xed_decoded_inst_t* d)
4818 {
4819 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4820 static const lu_entry_t lu_table[8] = {
4821 /*empty slot1 */ {0,0},
4822 /*empty slot1 */ {0,0},
4823 /*h(28)=2 VV1 0x0E VL128 V66 V0F38 norexw_prefix  NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {28, 2979},
4824 /*h(93)=3 VV1 0x0E VL256 V66 V0F38 norexw_prefix NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {93, 2982},
4825 /*empty slot1 */ {0,0},
4826 /*empty slot1 */ {0,0},
4827 /*h(92)=6 VV1 0x0E VL256 V66 V0F38  norexw_prefix NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {92, 2981},
4828 /*h(29)=7 VV1 0x0E  VL128 V66 V0F38 norexw_prefix NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {29, 2980}
4829 };
4830 xed_union64_t t;
4831 xed_uint64_t key = 0;
4832 xed_uint64_t hidx = 0;
4833 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
4834 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-3));
4835 if(lu_table[hidx].key == key) {
4836     return lu_table[hidx].value;
4837 }
4838 else{
4839     return 0;
4840 }
4841 }
xed3_phash_find_map0x0F38_opcode0xf_vv1(const xed_decoded_inst_t * d)4842 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xf_vv1(const xed_decoded_inst_t* d)
4843 {
4844 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4845 static const lu_entry_t lu_table[8] = {
4846 /*empty slot1 */ {0,0},
4847 /*empty slot1 */ {0,0},
4848 /*h(28)=2 VV1 0x0F  VL128 V66 V0F38 norexw_prefix NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {28, 2960},
4849 /*h(93)=3 VV1 0x0F VL256 V66 V0F38 norexw_prefix NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {93, 2963},
4850 /*empty slot1 */ {0,0},
4851 /*empty slot1 */ {0,0},
4852 /*h(92)=6 VV1 0x0F VL256 V66 V0F38  norexw_prefix NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {92, 2962},
4853 /*h(29)=7 VV1 0x0F VL128 V66 V0F38 norexw_prefix NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {29, 2961}
4854 };
4855 xed_union64_t t;
4856 xed_uint64_t key = 0;
4857 xed_uint64_t hidx = 0;
4858 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
4859 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-3));
4860 if(lu_table[hidx].key == key) {
4861     return lu_table[hidx].value;
4862 }
4863 else{
4864     return 0;
4865 }
4866 }
xed3_phash_find_map0x0F38_opcode0x13_vv1(const xed_decoded_inst_t * d)4867 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x13_vv1(const xed_decoded_inst_t* d)
4868 {
4869 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4870 static const lu_entry_t lu_table[8] = {
4871 /*empty slot1 */ {0,0},
4872 /*empty slot1 */ {0,0},
4873 /*h(28)=2 VV1 0x13 VL128 V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()  W0*/ {28, 2295},
4874 /*h(93)=3 VV1 0x13 VL256 V66 V0F38 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]  W0*/ {93, 2298},
4875 /*empty slot1 */ {0,0},
4876 /*empty slot1 */ {0,0},
4877 /*h(92)=6 VV1 0x13 VL256 V66 V0F38 NOVSR  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() W0*/ {92, 2297},
4878 /*h(29)=7 VV1 0x13 VL128 V66 V0F38 NOVSR  MOD[0b11] MOD=3 REG[rrr] RM[nnn] W0*/ {29, 2296}
4879 };
4880 xed_union64_t t;
4881 xed_uint64_t key = 0;
4882 xed_uint64_t hidx = 0;
4883 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
4884 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-3));
4885 if(lu_table[hidx].key == key) {
4886     return lu_table[hidx].value;
4887 }
4888 else{
4889     return 0;
4890 }
4891 }
xed3_phash_find_map0x0F38_opcode0x16_vv1(const xed_decoded_inst_t * d)4892 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x16_vv1(const xed_decoded_inst_t* d)
4893 {
4894 typedef struct { xed_uint32_t value;} lu_entry_t;
4895 static const lu_entry_t lu_table[2] = {
4896 /*h(20)=0 VV1 0x16  VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {3581},
4897 /*h(21)=1 VV1 0x16  VL256 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3582}
4898 };
4899 xed_uint64_t key = 0;
4900 xed_uint64_t hidx = 0;
4901 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
4902 hidx = key - 20;
4903 if(hidx <= 1) {
4904     return lu_table[hidx].value;
4905 }
4906 else{
4907     return 0;
4908 }
4909 }
xed3_phash_find_map0x0F38_opcode0x17_vv1(const xed_decoded_inst_t * d)4910 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x17_vv1(const xed_decoded_inst_t* d)
4911 {
4912 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4913 static const lu_entry_t lu_table[5] = {
4914 /*h(47)=0 VV1 0x17  VL256 V66 V0F38 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 2475},
4915 /*h(15)=1 VV1 0x17  VL128 V66 V0F38 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 2473},
4916 /*h(46)=2 VV1 0x17  VL256 V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 2474},
4917 /*h(14)=3 VV1 0x17  VL128 V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 2472},
4918 /*empty slot1 */ {0,0}
4919 };
4920 xed_union64_t t, u;
4921 xed_uint64_t key = 0;
4922 xed_uint64_t hidx = 0;
4923 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
4924 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
4925 if(lu_table[hidx].key == key) {
4926     return lu_table[hidx].value;
4927 }
4928 else{
4929     return 0;
4930 }
4931 }
xed3_phash_find_map0x0F38_opcode0x18_vv1(const xed_decoded_inst_t * d)4932 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x18_vv1(const xed_decoded_inst_t* d)
4933 {
4934 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4935 static const lu_entry_t lu_table[8] = {
4936 /*empty slot1 */ {0,0},
4937 /*empty slot1 */ {0,0},
4938 /*h(28)=2 VV1 0x18  norexw_prefix VL128 V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {28, 3342},
4939 /*h(93)=3 VV1 0x18  VL256 V66 V0F38 W0 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {93, 3345},
4940 /*empty slot1 */ {0,0},
4941 /*empty slot1 */ {0,0},
4942 /*h(92)=6 VV1 0x18  norexw_prefix VL256 V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {92, 3343},
4943 /*h(29)=7 VV1 0x18  VL128 V66 V0F38 W0 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {29, 3344}
4944 };
4945 xed_union64_t t;
4946 xed_uint64_t key = 0;
4947 xed_uint64_t hidx = 0;
4948 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
4949 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-3));
4950 if(lu_table[hidx].key == key) {
4951     return lu_table[hidx].value;
4952 }
4953 else{
4954     return 0;
4955 }
4956 }
xed3_phash_find_map0x0F38_opcode0x19_vv1(const xed_decoded_inst_t * d)4957 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x19_vv1(const xed_decoded_inst_t* d)
4958 {
4959 typedef struct { xed_uint32_t value;} lu_entry_t;
4960 static const lu_entry_t lu_table[2] = {
4961 /*h(92)=0 VV1 0x19  norexw_prefix VL256 V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {3340},
4962 /*h(93)=1 VV1 0x19  VL256 V66 V0F38 W0 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3341}
4963 };
4964 xed_uint64_t key = 0;
4965 xed_uint64_t hidx = 0;
4966 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
4967 hidx = key - 92;
4968 if(hidx <= 1) {
4969     return lu_table[hidx].value;
4970 }
4971 else{
4972     return 0;
4973 }
4974 }
xed3_phash_find_map0x0F38_opcode0x1a_vv1(const xed_decoded_inst_t * d)4975 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x1a_vv1(const xed_decoded_inst_t* d)
4976 {
4977 typedef struct { xed_uint32_t value;} lu_entry_t;
4978 static const lu_entry_t lu_table[1] = {
4979 /*h(92)=0 VV1 0x1A norexw_prefix VL256 V66 V0F38 NOVSR  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {3399}
4980 };
4981 xed_uint64_t key = 0;
4982 xed_uint64_t hidx = 0;
4983 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
4984 hidx = key - 92;
4985 if(hidx == 0) {
4986     return lu_table[hidx].value;
4987 }
4988 else{
4989     return 0;
4990 }
4991 }
xed3_phash_find_map0x0F38_opcode0x1c_vv1(const xed_decoded_inst_t * d)4992 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x1c_vv1(const xed_decoded_inst_t* d)
4993 {
4994 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
4995 static const lu_entry_t lu_table[5] = {
4996 /*h(47)=0 VV1 0x1C   VL256 V66 V0F38 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 3133},
4997 /*h(15)=1 VV1 0x1C  V66 V0F38 VL128 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 3131},
4998 /*h(46)=2 VV1 0x1C   VL256 V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 3132},
4999 /*h(14)=3 VV1 0x1C   V66 V0F38 VL128 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 3130},
5000 /*empty slot1 */ {0,0}
5001 };
5002 xed_union64_t t, u;
5003 xed_uint64_t key = 0;
5004 xed_uint64_t hidx = 0;
5005 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
5006 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5007 if(lu_table[hidx].key == key) {
5008     return lu_table[hidx].value;
5009 }
5010 else{
5011     return 0;
5012 }
5013 }
xed3_phash_find_map0x0F38_opcode0x1d_vv1(const xed_decoded_inst_t * d)5014 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x1d_vv1(const xed_decoded_inst_t* d)
5015 {
5016 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5017 static const lu_entry_t lu_table[5] = {
5018 /*h(47)=0 VV1 0x1D   VL256 V66 V0F38 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 3036},
5019 /*h(15)=1 VV1 0x1D  V66 V0F38 VL128 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 3034},
5020 /*h(46)=2 VV1 0x1D   VL256 V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 3035},
5021 /*h(14)=3 VV1 0x1D   V66 V0F38 VL128 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 3033},
5022 /*empty slot1 */ {0,0}
5023 };
5024 xed_union64_t t, u;
5025 xed_uint64_t key = 0;
5026 xed_uint64_t hidx = 0;
5027 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
5028 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5029 if(lu_table[hidx].key == key) {
5030     return lu_table[hidx].value;
5031 }
5032 else{
5033     return 0;
5034 }
5035 }
xed3_phash_find_map0x0F38_opcode0x1e_vv1(const xed_decoded_inst_t * d)5036 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x1e_vv1(const xed_decoded_inst_t* d)
5037 {
5038 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5039 static const lu_entry_t lu_table[5] = {
5040 /*h(47)=0 VV1 0x1E   VL256 V66 V0F38 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 3673},
5041 /*h(15)=1 VV1 0x1E  V66 V0F38 VL128 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 3671},
5042 /*h(46)=2 VV1 0x1E   VL256 V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 3672},
5043 /*h(14)=3 VV1 0x1E   V66 V0F38 VL128 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 3670},
5044 /*empty slot1 */ {0,0}
5045 };
5046 xed_union64_t t, u;
5047 xed_uint64_t key = 0;
5048 xed_uint64_t hidx = 0;
5049 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
5050 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5051 if(lu_table[hidx].key == key) {
5052     return lu_table[hidx].value;
5053 }
5054 else{
5055     return 0;
5056 }
5057 }
xed3_phash_find_map0x0F38_opcode0x20_vv1(const xed_decoded_inst_t * d)5058 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x20_vv1(const xed_decoded_inst_t* d)
5059 {
5060 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5061 static const lu_entry_t lu_table[5] = {
5062 /*h(47)=0 VV1 0x20   VL256  V66 V0F38 NOVSR  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 3250},
5063 /*h(15)=1 VV1 0x20  VL128 V66 V0F38 NOVSR  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 3248},
5064 /*h(46)=2 VV1 0x20   VL256  V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 3251},
5065 /*h(14)=3 VV1 0x20  VL128 V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 3249},
5066 /*empty slot1 */ {0,0}
5067 };
5068 xed_union64_t t, u;
5069 xed_uint64_t key = 0;
5070 xed_uint64_t hidx = 0;
5071 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
5072 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5073 if(lu_table[hidx].key == key) {
5074     return lu_table[hidx].value;
5075 }
5076 else{
5077     return 0;
5078 }
5079 }
xed3_phash_find_map0x0F38_opcode0x21_vv1(const xed_decoded_inst_t * d)5080 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x21_vv1(const xed_decoded_inst_t* d)
5081 {
5082 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5083 static const lu_entry_t lu_table[5] = {
5084 /*h(47)=0 VV1 0x21   VL256  V66 V0F38 NOVSR  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 2549},
5085 /*h(15)=1 VV1 0x21  VL128 V66 V0F38 NOVSR  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 2547},
5086 /*h(46)=2 VV1 0x21   VL256  V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 2550},
5087 /*h(14)=3 VV1 0x21  VL128 V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 2548},
5088 /*empty slot1 */ {0,0}
5089 };
5090 xed_union64_t t, u;
5091 xed_uint64_t key = 0;
5092 xed_uint64_t hidx = 0;
5093 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
5094 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5095 if(lu_table[hidx].key == key) {
5096     return lu_table[hidx].value;
5097 }
5098 else{
5099     return 0;
5100 }
5101 }
xed3_phash_find_map0x0F38_opcode0x22_vv1(const xed_decoded_inst_t * d)5102 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x22_vv1(const xed_decoded_inst_t* d)
5103 {
5104 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5105 static const lu_entry_t lu_table[5] = {
5106 /*h(47)=0 VV1 0x22   VL256  V66 V0F38 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 2502},
5107 /*h(15)=1 VV1 0x22  VL128 V66 V0F38 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 2500},
5108 /*h(46)=2 VV1 0x22   VL256  V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 2503},
5109 /*h(14)=3 VV1 0x22  VL128 V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 2501},
5110 /*empty slot1 */ {0,0}
5111 };
5112 xed_union64_t t, u;
5113 xed_uint64_t key = 0;
5114 xed_uint64_t hidx = 0;
5115 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
5116 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5117 if(lu_table[hidx].key == key) {
5118     return lu_table[hidx].value;
5119 }
5120 else{
5121     return 0;
5122 }
5123 }
xed3_phash_find_map0x0F38_opcode0x23_vv1(const xed_decoded_inst_t * d)5124 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x23_vv1(const xed_decoded_inst_t* d)
5125 {
5126 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5127 static const lu_entry_t lu_table[5] = {
5128 /*h(47)=0 VV1 0x23   VL256  V66 V0F38 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 3504},
5129 /*h(15)=1 VV1 0x23  VL128 V66 V0F38 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 3502},
5130 /*h(46)=2 VV1 0x23   VL256  V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 3505},
5131 /*h(14)=3 VV1 0x23  VL128 V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 3503},
5132 /*empty slot1 */ {0,0}
5133 };
5134 xed_union64_t t, u;
5135 xed_uint64_t key = 0;
5136 xed_uint64_t hidx = 0;
5137 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
5138 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5139 if(lu_table[hidx].key == key) {
5140     return lu_table[hidx].value;
5141 }
5142 else{
5143     return 0;
5144 }
5145 }
xed3_phash_find_map0x0F38_opcode0x24_vv1(const xed_decoded_inst_t * d)5146 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x24_vv1(const xed_decoded_inst_t* d)
5147 {
5148 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5149 static const lu_entry_t lu_table[5] = {
5150 /*h(47)=0 VV1 0x24   VL256  V66 V0F38 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 3521},
5151 /*h(15)=1 VV1 0x24  VL128 V66 V0F38 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 3519},
5152 /*h(46)=2 VV1 0x24   VL256  V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 3522},
5153 /*h(14)=3 VV1 0x24  VL128 V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 3520},
5154 /*empty slot1 */ {0,0}
5155 };
5156 xed_union64_t t, u;
5157 xed_uint64_t key = 0;
5158 xed_uint64_t hidx = 0;
5159 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
5160 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5161 if(lu_table[hidx].key == key) {
5162     return lu_table[hidx].value;
5163 }
5164 else{
5165     return 0;
5166 }
5167 }
xed3_phash_find_map0x0F38_opcode0x25_vv1(const xed_decoded_inst_t * d)5168 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x25_vv1(const xed_decoded_inst_t* d)
5169 {
5170 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5171 static const lu_entry_t lu_table[5] = {
5172 /*h(47)=0 VV1 0x25   VL256  V66 V0F38 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 2363},
5173 /*h(15)=1 VV1 0x25  VL128 V66 V0F38 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 2361},
5174 /*h(46)=2 VV1 0x25   VL256  V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 2364},
5175 /*h(14)=3 VV1 0x25  VL128 V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 2362},
5176 /*empty slot1 */ {0,0}
5177 };
5178 xed_union64_t t, u;
5179 xed_uint64_t key = 0;
5180 xed_uint64_t hidx = 0;
5181 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
5182 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5183 if(lu_table[hidx].key == key) {
5184     return lu_table[hidx].value;
5185 }
5186 else{
5187     return 0;
5188 }
5189 }
xed3_phash_find_map0x0F38_opcode0x28_vv1(const xed_decoded_inst_t * d)5190 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x28_vv1(const xed_decoded_inst_t* d)
5191 {
5192 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5193 static const lu_entry_t lu_table[5] = {
5194 /*h(10)=0 VV1 0x28  VL256 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2711},
5195 /*h(2)=1 VV1 0x28  VL128 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2709},
5196 /*empty slot1 */ {0,0},
5197 /*h(11)=3 VV1 0x28  VL256 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2712},
5198 /*h(3)=4 VV1 0x28  VL128 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2710}
5199 };
5200 xed_union64_t t, u;
5201 xed_uint64_t key = 0;
5202 xed_uint64_t hidx = 0;
5203 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
5204 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5205 if(lu_table[hidx].key == key) {
5206     return lu_table[hidx].value;
5207 }
5208 else{
5209     return 0;
5210 }
5211 }
xed3_phash_find_map0x0F38_opcode0x29_vv1(const xed_decoded_inst_t * d)5212 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x29_vv1(const xed_decoded_inst_t* d)
5213 {
5214 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5215 static const lu_entry_t lu_table[5] = {
5216 /*h(10)=0 VV1 0x29  VL256 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2339},
5217 /*h(2)=1 VV1 0x29  VL128 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2337},
5218 /*empty slot1 */ {0,0},
5219 /*h(11)=3 VV1 0x29  VL256 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2340},
5220 /*h(3)=4 VV1 0x29  VL128 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2338}
5221 };
5222 xed_union64_t t, u;
5223 xed_uint64_t key = 0;
5224 xed_uint64_t hidx = 0;
5225 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
5226 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5227 if(lu_table[hidx].key == key) {
5228     return lu_table[hidx].value;
5229 }
5230 else{
5231     return 0;
5232 }
5233 }
xed3_phash_find_map0x0F38_opcode0x2a_vv1(const xed_decoded_inst_t * d)5234 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x2a_vv1(const xed_decoded_inst_t* d)
5235 {
5236 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5237 static const lu_entry_t lu_table[2] = {
5238 /*h(46)=0 VV1 0x2A  V66 V0F38 VL256 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 2420},
5239 /*h(14)=1 VV1 0x2A  V66 V0F38 VL128 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 2419}
5240 };
5241 xed_union64_t t;
5242 xed_uint64_t key = 0;
5243 xed_uint64_t hidx = 0;
5244 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
5245 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-1));
5246 if(lu_table[hidx].key == key) {
5247     return lu_table[hidx].value;
5248 }
5249 else{
5250     return 0;
5251 }
5252 }
xed3_phash_find_map0x0F38_opcode0x2b_vv1(const xed_decoded_inst_t * d)5253 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x2b_vv1(const xed_decoded_inst_t* d)
5254 {
5255 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5256 static const lu_entry_t lu_table[5] = {
5257 /*h(10)=0 VV1 0x2B  V66 V0F38 VL256  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3256},
5258 /*h(2)=1 VV1 0x2B  V66 V0F38 VL128  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3254},
5259 /*empty slot1 */ {0,0},
5260 /*h(11)=3 VV1 0x2B  V66 V0F38 VL256 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3257},
5261 /*h(3)=4 VV1 0x2B  V66 V0F38 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3255}
5262 };
5263 xed_union64_t t, u;
5264 xed_uint64_t key = 0;
5265 xed_uint64_t hidx = 0;
5266 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
5267 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5268 if(lu_table[hidx].key == key) {
5269     return lu_table[hidx].value;
5270 }
5271 else{
5272     return 0;
5273 }
5274 }
xed3_phash_find_map0x0F38_opcode0x2c_vv1(const xed_decoded_inst_t * d)5275 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x2c_vv1(const xed_decoded_inst_t* d)
5276 {
5277 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5278 static const lu_entry_t lu_table[2] = {
5279 /*h(20)=0 VV1 0x2C V66 VL256 V0F38    norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 2790},
5280 /*h(4)=1 VV1 0x2C V66 VL128 V0F38 norexw_prefix  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 2789}
5281 };
5282 xed_uint64_t key = 0;
5283 xed_uint64_t hidx = 0;
5284 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
5285 hidx = ((4*key % 3) % 2);
5286 if(lu_table[hidx].key == key) {
5287     return lu_table[hidx].value;
5288 }
5289 else{
5290     return 0;
5291 }
5292 }
xed3_phash_find_map0x0F38_opcode0x2d_vv1(const xed_decoded_inst_t * d)5293 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x2d_vv1(const xed_decoded_inst_t* d)
5294 {
5295 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5296 static const lu_entry_t lu_table[2] = {
5297 /*h(20)=0 VV1 0x2D  V66 VL256 V0F38 norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 2780},
5298 /*h(4)=1 VV1 0x2D  V66 VL128 V0F38  norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 2779}
5299 };
5300 xed_uint64_t key = 0;
5301 xed_uint64_t hidx = 0;
5302 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
5303 hidx = ((4*key % 3) % 2);
5304 if(lu_table[hidx].key == key) {
5305     return lu_table[hidx].value;
5306 }
5307 else{
5308     return 0;
5309 }
5310 }
xed3_phash_find_map0x0F38_opcode0x2e_vv1(const xed_decoded_inst_t * d)5311 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x2e_vv1(const xed_decoded_inst_t* d)
5312 {
5313 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5314 static const lu_entry_t lu_table[2] = {
5315 /*h(20)=0 VV1 0x2E V66 V0F38 VL256 norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 2792},
5316 /*h(4)=1 VV1 0x2E V66 V0F38 VL128  norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 2791}
5317 };
5318 xed_uint64_t key = 0;
5319 xed_uint64_t hidx = 0;
5320 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
5321 hidx = ((4*key % 3) % 2);
5322 if(lu_table[hidx].key == key) {
5323     return lu_table[hidx].value;
5324 }
5325 else{
5326     return 0;
5327 }
5328 }
xed3_phash_find_map0x0F38_opcode0x2f_vv1(const xed_decoded_inst_t * d)5329 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x2f_vv1(const xed_decoded_inst_t* d)
5330 {
5331 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5332 static const lu_entry_t lu_table[2] = {
5333 /*h(20)=0 VV1 0x2F   V66 V0F38 VL256 norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 2782},
5334 /*h(4)=1 VV1 0x2F   V66 V0F38 VL128 norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 2781}
5335 };
5336 xed_uint64_t key = 0;
5337 xed_uint64_t hidx = 0;
5338 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
5339 hidx = ((4*key % 3) % 2);
5340 if(lu_table[hidx].key == key) {
5341     return lu_table[hidx].value;
5342 }
5343 else{
5344     return 0;
5345 }
5346 }
xed3_phash_find_map0x0F38_opcode0x30_vv1(const xed_decoded_inst_t * d)5347 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x30_vv1(const xed_decoded_inst_t* d)
5348 {
5349 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5350 static const lu_entry_t lu_table[5] = {
5351 /*h(47)=0 VV1 0x30   VL256  V66 V0F38 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 2769},
5352 /*h(15)=1 VV1 0x30  VL128 V66 V0F38 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 2767},
5353 /*h(46)=2 VV1 0x30   VL256  V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 2770},
5354 /*h(14)=3 VV1 0x30  VL128 V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 2768},
5355 /*empty slot1 */ {0,0}
5356 };
5357 xed_union64_t t, u;
5358 xed_uint64_t key = 0;
5359 xed_uint64_t hidx = 0;
5360 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
5361 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5362 if(lu_table[hidx].key == key) {
5363     return lu_table[hidx].value;
5364 }
5365 else{
5366     return 0;
5367 }
5368 }
xed3_phash_find_map0x0F38_opcode0x31_vv1(const xed_decoded_inst_t * d)5369 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x31_vv1(const xed_decoded_inst_t* d)
5370 {
5371 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5372 static const lu_entry_t lu_table[5] = {
5373 /*h(47)=0 VV1 0x31   VL256  V66 V0F38 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 2765},
5374 /*h(15)=1 VV1 0x31  VL128 V66 V0F38 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 2763},
5375 /*h(46)=2 VV1 0x31   VL256  V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 2766},
5376 /*h(14)=3 VV1 0x31  VL128 V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 2764},
5377 /*empty slot1 */ {0,0}
5378 };
5379 xed_union64_t t, u;
5380 xed_uint64_t key = 0;
5381 xed_uint64_t hidx = 0;
5382 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
5383 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5384 if(lu_table[hidx].key == key) {
5385     return lu_table[hidx].value;
5386 }
5387 else{
5388     return 0;
5389 }
5390 }
xed3_phash_find_map0x0F38_opcode0x32_vv1(const xed_decoded_inst_t * d)5391 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x32_vv1(const xed_decoded_inst_t* d)
5392 {
5393 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5394 static const lu_entry_t lu_table[5] = {
5395 /*h(47)=0 VV1 0x32   V66  V0F38 VL256 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 2773},
5396 /*h(15)=1 VV1 0x32  V66 V0F38 VL128 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 2771},
5397 /*h(46)=2 VV1 0x32   V66  V0F38 VL256 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 2774},
5398 /*h(14)=3 VV1 0x32  V66 V0F38 VL128 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 2772},
5399 /*empty slot1 */ {0,0}
5400 };
5401 xed_union64_t t, u;
5402 xed_uint64_t key = 0;
5403 xed_uint64_t hidx = 0;
5404 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
5405 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5406 if(lu_table[hidx].key == key) {
5407     return lu_table[hidx].value;
5408 }
5409 else{
5410     return 0;
5411 }
5412 }
xed3_phash_find_map0x0F38_opcode0x33_vv1(const xed_decoded_inst_t * d)5413 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x33_vv1(const xed_decoded_inst_t* d)
5414 {
5415 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5416 static const lu_entry_t lu_table[5] = {
5417 /*h(47)=0 VV1 0x33   V66  V0F38 VL256 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 3680},
5418 /*h(15)=1 VV1 0x33  V66 V0F38 VL128 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 3678},
5419 /*h(46)=2 VV1 0x33   V66  V0F38 VL256 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 3681},
5420 /*h(14)=3 VV1 0x33  V66 V0F38 VL128 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 3679},
5421 /*empty slot1 */ {0,0}
5422 };
5423 xed_union64_t t, u;
5424 xed_uint64_t key = 0;
5425 xed_uint64_t hidx = 0;
5426 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
5427 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5428 if(lu_table[hidx].key == key) {
5429     return lu_table[hidx].value;
5430 }
5431 else{
5432     return 0;
5433 }
5434 }
xed3_phash_find_map0x0F38_opcode0x34_vv1(const xed_decoded_inst_t * d)5435 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x34_vv1(const xed_decoded_inst_t* d)
5436 {
5437 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5438 static const lu_entry_t lu_table[5] = {
5439 /*h(47)=0 VV1 0x34   VL256  V66 V0F38 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 2319},
5440 /*h(15)=1 VV1 0x34  VL128 V66 V0F38 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 2317},
5441 /*h(46)=2 VV1 0x34   VL256  V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 2320},
5442 /*h(14)=3 VV1 0x34  VL128 V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 2318},
5443 /*empty slot1 */ {0,0}
5444 };
5445 xed_union64_t t, u;
5446 xed_uint64_t key = 0;
5447 xed_uint64_t hidx = 0;
5448 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
5449 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5450 if(lu_table[hidx].key == key) {
5451     return lu_table[hidx].value;
5452 }
5453 else{
5454     return 0;
5455 }
5456 }
xed3_phash_find_map0x0F38_opcode0x35_vv1(const xed_decoded_inst_t * d)5457 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x35_vv1(const xed_decoded_inst_t* d)
5458 {
5459 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5460 static const lu_entry_t lu_table[5] = {
5461 /*h(47)=0 VV1 0x35   VL256  V66 V0F38 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {47, 3451},
5462 /*h(15)=1 VV1 0x35  VL128 V66 V0F38 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {15, 3449},
5463 /*h(46)=2 VV1 0x35   VL256  V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {46, 3452},
5464 /*h(14)=3 VV1 0x35  VL128 V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {14, 3450},
5465 /*empty slot1 */ {0,0}
5466 };
5467 xed_union64_t t, u;
5468 xed_uint64_t key = 0;
5469 xed_uint64_t hidx = 0;
5470 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
5471 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5472 if(lu_table[hidx].key == key) {
5473     return lu_table[hidx].value;
5474 }
5475 else{
5476     return 0;
5477 }
5478 }
xed3_phash_find_map0x0F38_opcode0x36_vv1(const xed_decoded_inst_t * d)5479 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x36_vv1(const xed_decoded_inst_t* d)
5480 {
5481 typedef struct { xed_uint32_t value;} lu_entry_t;
5482 static const lu_entry_t lu_table[2] = {
5483 /*h(20)=0 VV1 0x36  VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2286},
5484 /*h(21)=1 VV1 0x36  VL256 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {2287}
5485 };
5486 xed_uint64_t key = 0;
5487 xed_uint64_t hidx = 0;
5488 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
5489 hidx = key - 20;
5490 if(hidx <= 1) {
5491     return lu_table[hidx].value;
5492 }
5493 else{
5494     return 0;
5495 }
5496 }
xed3_phash_find_map0x0F38_opcode0x37_vv1(const xed_decoded_inst_t * d)5497 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x37_vv1(const xed_decoded_inst_t* d)
5498 {
5499 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5500 static const lu_entry_t lu_table[5] = {
5501 /*h(10)=0 VV1 0x37  V66 V0F38 VL256  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3657},
5502 /*h(2)=1 VV1 0x37  V66 V0F38 VL128  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3655},
5503 /*empty slot1 */ {0,0},
5504 /*h(11)=3 VV1 0x37  V66 V0F38 VL256 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3658},
5505 /*h(3)=4 VV1 0x37  V66 V0F38 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3656}
5506 };
5507 xed_union64_t t, u;
5508 xed_uint64_t key = 0;
5509 xed_uint64_t hidx = 0;
5510 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
5511 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5512 if(lu_table[hidx].key == key) {
5513     return lu_table[hidx].value;
5514 }
5515 else{
5516     return 0;
5517 }
5518 }
xed3_phash_find_map0x0F38_opcode0x38_vv1(const xed_decoded_inst_t * d)5519 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x38_vv1(const xed_decoded_inst_t* d)
5520 {
5521 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5522 static const lu_entry_t lu_table[5] = {
5523 /*h(10)=0 VV1 0x38  VL256 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2462},
5524 /*h(2)=1 VV1 0x38  VL128 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2460},
5525 /*empty slot1 */ {0,0},
5526 /*h(11)=3 VV1 0x38  VL256 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2463},
5527 /*h(3)=4 VV1 0x38  VL128 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2461}
5528 };
5529 xed_union64_t t, u;
5530 xed_uint64_t key = 0;
5531 xed_uint64_t hidx = 0;
5532 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
5533 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5534 if(lu_table[hidx].key == key) {
5535     return lu_table[hidx].value;
5536 }
5537 else{
5538     return 0;
5539 }
5540 }
xed3_phash_find_map0x0F38_opcode0x39_vv1(const xed_decoded_inst_t * d)5541 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x39_vv1(const xed_decoded_inst_t* d)
5542 {
5543 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5544 static const lu_entry_t lu_table[5] = {
5545 /*h(10)=0 VV1 0x39  VL256 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2457},
5546 /*h(2)=1 VV1 0x39  VL128 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2455},
5547 /*empty slot1 */ {0,0},
5548 /*h(11)=3 VV1 0x39  VL256 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2458},
5549 /*h(3)=4 VV1 0x39  VL128 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2456}
5550 };
5551 xed_union64_t t, u;
5552 xed_uint64_t key = 0;
5553 xed_uint64_t hidx = 0;
5554 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
5555 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5556 if(lu_table[hidx].key == key) {
5557     return lu_table[hidx].value;
5558 }
5559 else{
5560     return 0;
5561 }
5562 }
xed3_phash_find_map0x0F38_opcode0x3a_vv1(const xed_decoded_inst_t * d)5563 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x3a_vv1(const xed_decoded_inst_t* d)
5564 {
5565 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5566 static const lu_entry_t lu_table[5] = {
5567 /*h(10)=0 VV1 0x3A  V66 V0F38 VL256  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3579},
5568 /*h(2)=1 VV1 0x3A  V66 V0F38 VL128  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3577},
5569 /*empty slot1 */ {0,0},
5570 /*h(11)=3 VV1 0x3A  V66 V0F38 VL256 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3580},
5571 /*h(3)=4 VV1 0x3A  V66 V0F38 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3578}
5572 };
5573 xed_union64_t t, u;
5574 xed_uint64_t key = 0;
5575 xed_uint64_t hidx = 0;
5576 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
5577 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5578 if(lu_table[hidx].key == key) {
5579     return lu_table[hidx].value;
5580 }
5581 else{
5582     return 0;
5583 }
5584 }
xed3_phash_find_map0x0F38_opcode0x3b_vv1(const xed_decoded_inst_t * d)5585 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x3b_vv1(const xed_decoded_inst_t* d)
5586 {
5587 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5588 static const lu_entry_t lu_table[5] = {
5589 /*h(10)=0 VV1 0x3B  V66 V0F38 VL256  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3596},
5590 /*h(2)=1 VV1 0x3B  V66 V0F38 VL128  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3594},
5591 /*empty slot1 */ {0,0},
5592 /*h(11)=3 VV1 0x3B  V66 V0F38 VL256 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3597},
5593 /*h(3)=4 VV1 0x3B  V66 V0F38 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3595}
5594 };
5595 xed_union64_t t, u;
5596 xed_uint64_t key = 0;
5597 xed_uint64_t hidx = 0;
5598 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
5599 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5600 if(lu_table[hidx].key == key) {
5601     return lu_table[hidx].value;
5602 }
5603 else{
5604     return 0;
5605 }
5606 }
xed3_phash_find_map0x0F38_opcode0x3c_vv1(const xed_decoded_inst_t * d)5607 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x3c_vv1(const xed_decoded_inst_t* d)
5608 {
5609 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5610 static const lu_entry_t lu_table[5] = {
5611 /*h(10)=0 VV1 0x3C  VL256 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2375},
5612 /*h(2)=1 VV1 0x3C  VL128 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2373},
5613 /*empty slot1 */ {0,0},
5614 /*h(11)=3 VV1 0x3C  VL256 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2376},
5615 /*h(3)=4 VV1 0x3C  VL128 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2374}
5616 };
5617 xed_union64_t t, u;
5618 xed_uint64_t key = 0;
5619 xed_uint64_t hidx = 0;
5620 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
5621 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5622 if(lu_table[hidx].key == key) {
5623     return lu_table[hidx].value;
5624 }
5625 else{
5626     return 0;
5627 }
5628 }
xed3_phash_find_map0x0F38_opcode0x3d_vv1(const xed_decoded_inst_t * d)5629 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x3d_vv1(const xed_decoded_inst_t* d)
5630 {
5631 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5632 static const lu_entry_t lu_table[5] = {
5633 /*h(10)=0 VV1 0x3D  VL256 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2367},
5634 /*h(2)=1 VV1 0x3D  VL128 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2365},
5635 /*empty slot1 */ {0,0},
5636 /*h(11)=3 VV1 0x3D  VL256 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2368},
5637 /*h(3)=4 VV1 0x3D  VL128 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2366}
5638 };
5639 xed_union64_t t, u;
5640 xed_uint64_t key = 0;
5641 xed_uint64_t hidx = 0;
5642 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
5643 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5644 if(lu_table[hidx].key == key) {
5645     return lu_table[hidx].value;
5646 }
5647 else{
5648     return 0;
5649 }
5650 }
xed3_phash_find_map0x0F38_opcode0x3e_vv1(const xed_decoded_inst_t * d)5651 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x3e_vv1(const xed_decoded_inst_t* d)
5652 {
5653 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5654 static const lu_entry_t lu_table[5] = {
5655 /*h(10)=0 VV1 0x3E  VL256 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3274},
5656 /*h(2)=1 VV1 0x3E  VL128 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3272},
5657 /*empty slot1 */ {0,0},
5658 /*h(11)=3 VV1 0x3E  VL256 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3275},
5659 /*h(3)=4 VV1 0x3E  VL128 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3273}
5660 };
5661 xed_union64_t t, u;
5662 xed_uint64_t key = 0;
5663 xed_uint64_t hidx = 0;
5664 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
5665 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5666 if(lu_table[hidx].key == key) {
5667     return lu_table[hidx].value;
5668 }
5669 else{
5670     return 0;
5671 }
5672 }
xed3_phash_find_map0x0F38_opcode0x3f_vv1(const xed_decoded_inst_t * d)5673 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x3f_vv1(const xed_decoded_inst_t* d)
5674 {
5675 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5676 static const lu_entry_t lu_table[5] = {
5677 /*h(10)=0 VV1 0x3F  VL256 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3260},
5678 /*h(2)=1 VV1 0x3F  VL128 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3258},
5679 /*empty slot1 */ {0,0},
5680 /*h(11)=3 VV1 0x3F  VL256 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3261},
5681 /*h(3)=4 VV1 0x3F  VL128 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3259}
5682 };
5683 xed_union64_t t, u;
5684 xed_uint64_t key = 0;
5685 xed_uint64_t hidx = 0;
5686 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
5687 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5688 if(lu_table[hidx].key == key) {
5689     return lu_table[hidx].value;
5690 }
5691 else{
5692     return 0;
5693 }
5694 }
xed3_phash_find_map0x0F38_opcode0x40_vv1(const xed_decoded_inst_t * d)5695 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x40_vv1(const xed_decoded_inst_t* d)
5696 {
5697 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5698 static const lu_entry_t lu_table[5] = {
5699 /*h(10)=0 VV1 0x40  VL256 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3210},
5700 /*h(2)=1 VV1 0x40  VL128 V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3208},
5701 /*empty slot1 */ {0,0},
5702 /*h(11)=3 VV1 0x40  VL256 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3211},
5703 /*h(3)=4 VV1 0x40  VL128 V66 V0F38 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3209}
5704 };
5705 xed_union64_t t, u;
5706 xed_uint64_t key = 0;
5707 xed_uint64_t hidx = 0;
5708 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
5709 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5710 if(lu_table[hidx].key == key) {
5711     return lu_table[hidx].value;
5712 }
5713 else{
5714     return 0;
5715 }
5716 }
xed3_phash_find_map0x0F38_opcode0x41_vv1(const xed_decoded_inst_t * d)5717 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x41_vv1(const xed_decoded_inst_t* d)
5718 {
5719 typedef struct { xed_uint32_t value;} lu_entry_t;
5720 static const lu_entry_t lu_table[2] = {
5721 /*h(14)=0 VV1 0x41   V66 V0F38 VL128 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {3668},
5722 /*h(15)=1 VV1 0x41  V66 V0F38 VL128 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3669}
5723 };
5724 xed_uint64_t key = 0;
5725 xed_uint64_t hidx = 0;
5726 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
5727 hidx = key - 14;
5728 if(hidx <= 1) {
5729     return lu_table[hidx].value;
5730 }
5731 else{
5732     return 0;
5733 }
5734 }
xed3_phash_find_map0x0F38_opcode0x45_vv1(const xed_decoded_inst_t * d)5735 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x45_vv1(const xed_decoded_inst_t* d)
5736 {
5737 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5738 static const lu_entry_t lu_table[9] = {
5739 /*h(5)=0 VV1 0x45  VL128 V0F38 V66 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 2393},
5740 /*h(23)=1 VV1 0x45  VL256 V0F38 V66 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 2372},
5741 /*h(7)=2 VV1 0x45  VL128 V0F38 V66 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 2370},
5742 /*h(20)=3 VV1 0x45  VL256 V0F38 V66  W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 2394},
5743 /*h(4)=4 VV1 0x45  VL128 V0F38 V66  W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 2392},
5744 /*h(22)=5 VV1 0x45  VL256 V0F38 V66  W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 2371},
5745 /*h(6)=6 VV1 0x45  VL128 V0F38 V66  W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 2369},
5746 /*empty slot1 */ {0,0},
5747 /*h(21)=8 VV1 0x45  VL256 V0F38 V66 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 2395}
5748 };
5749 xed_union64_t t, u;
5750 xed_uint64_t key = 0;
5751 xed_uint64_t hidx = 0;
5752 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
5753 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
5754 if(lu_table[hidx].key == key) {
5755     return lu_table[hidx].value;
5756 }
5757 else{
5758     return 0;
5759 }
5760 }
xed3_phash_find_map0x0F38_opcode0x46_vv1(const xed_decoded_inst_t * d)5761 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x46_vv1(const xed_decoded_inst_t* d)
5762 {
5763 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5764 static const lu_entry_t lu_table[5] = {
5765 /*h(5)=0 VV1 0x46  VL128 V0F38 V66 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 2949},
5766 /*h(20)=1 VV1 0x46  VL256 V0F38 V66  W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 2950},
5767 /*h(4)=2 VV1 0x46  VL128 V0F38 V66  W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 2948},
5768 /*empty slot1 */ {0,0},
5769 /*h(21)=4 VV1 0x46  VL256 V0F38 V66 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 2951}
5770 };
5771 xed_union64_t t, u;
5772 xed_uint64_t key = 0;
5773 xed_uint64_t hidx = 0;
5774 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
5775 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
5776 if(lu_table[hidx].key == key) {
5777     return lu_table[hidx].value;
5778 }
5779 else{
5780     return 0;
5781 }
5782 }
xed3_phash_find_map0x0F38_opcode0x47_vv1(const xed_decoded_inst_t * d)5783 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x47_vv1(const xed_decoded_inst_t* d)
5784 {
5785 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5786 static const lu_entry_t lu_table[9] = {
5787 /*h(5)=0 VV1 0x47  VL128 V0F38 V66 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 3722},
5788 /*h(23)=1 VV1 0x47  VL256 V0F38 V66 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 3752},
5789 /*h(7)=2 VV1 0x47  VL128 V0F38 V66 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 3750},
5790 /*h(20)=3 VV1 0x47  VL256 V0F38 V66  W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 3723},
5791 /*h(4)=4 VV1 0x47  VL128 V0F38 V66  W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 3721},
5792 /*h(22)=5 VV1 0x47  VL256 V0F38 V66  W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 3751},
5793 /*h(6)=6 VV1 0x47  VL128 V0F38 V66  W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3749},
5794 /*empty slot1 */ {0,0},
5795 /*h(21)=8 VV1 0x47  VL256 V0F38 V66 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 3724}
5796 };
5797 xed_union64_t t, u;
5798 xed_uint64_t key = 0;
5799 xed_uint64_t hidx = 0;
5800 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
5801 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
5802 if(lu_table[hidx].key == key) {
5803     return lu_table[hidx].value;
5804 }
5805 else{
5806     return 0;
5807 }
5808 }
xed3_phash_find_map0x0F38_opcode0x58_vv1(const xed_decoded_inst_t * d)5809 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x58_vv1(const xed_decoded_inst_t* d)
5810 {
5811 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5812 static const lu_entry_t lu_table[8] = {
5813 /*empty slot1 */ {0,0},
5814 /*empty slot1 */ {0,0},
5815 /*h(28)=2 VV1 0x58 VL128 V66 V0F38 W0 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {28, 2873},
5816 /*h(93)=3 VV1 0x58 VL256 V66 V0F38 W0 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {93, 2876},
5817 /*empty slot1 */ {0,0},
5818 /*empty slot1 */ {0,0},
5819 /*h(92)=6 VV1 0x58 VL256 V66 V0F38 W0 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {92, 2875},
5820 /*h(29)=7 VV1 0x58 VL128 V66 V0F38 W0 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {29, 2874}
5821 };
5822 xed_union64_t t;
5823 xed_uint64_t key = 0;
5824 xed_uint64_t hidx = 0;
5825 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
5826 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-3));
5827 if(lu_table[hidx].key == key) {
5828     return lu_table[hidx].value;
5829 }
5830 else{
5831     return 0;
5832 }
5833 }
xed3_phash_find_map0x0F38_opcode0x59_vv1(const xed_decoded_inst_t * d)5834 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x59_vv1(const xed_decoded_inst_t* d)
5835 {
5836 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5837 static const lu_entry_t lu_table[8] = {
5838 /*empty slot1 */ {0,0},
5839 /*empty slot1 */ {0,0},
5840 /*h(28)=2 VV1 0x59 VL128 V66 V0F38 W0 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {28, 3371},
5841 /*h(93)=3 VV1 0x59 VL256 V66 V0F38 W0 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {93, 3374},
5842 /*empty slot1 */ {0,0},
5843 /*empty slot1 */ {0,0},
5844 /*h(92)=6 VV1 0x59 VL256 V66 V0F38 W0 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {92, 3373},
5845 /*h(29)=7 VV1 0x59 VL128 V66 V0F38 W0 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {29, 3372}
5846 };
5847 xed_union64_t t;
5848 xed_uint64_t key = 0;
5849 xed_uint64_t hidx = 0;
5850 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
5851 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-3));
5852 if(lu_table[hidx].key == key) {
5853     return lu_table[hidx].value;
5854 }
5855 else{
5856     return 0;
5857 }
5858 }
xed3_phash_find_map0x0F38_opcode0x5a_vv1(const xed_decoded_inst_t * d)5859 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x5a_vv1(const xed_decoded_inst_t* d)
5860 {
5861 typedef struct { xed_uint32_t value;} lu_entry_t;
5862 static const lu_entry_t lu_table[1] = {
5863 /*h(92)=0 VV1 0x5A VL256 V66 V0F38 W0 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {3444}
5864 };
5865 xed_uint64_t key = 0;
5866 xed_uint64_t hidx = 0;
5867 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
5868 hidx = key - 92;
5869 if(hidx == 0) {
5870     return lu_table[hidx].value;
5871 }
5872 else{
5873     return 0;
5874 }
5875 }
xed3_phash_find_map0x0F38_opcode0x78_vv1(const xed_decoded_inst_t * d)5876 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x78_vv1(const xed_decoded_inst_t* d)
5877 {
5878 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5879 static const lu_entry_t lu_table[8] = {
5880 /*empty slot1 */ {0,0},
5881 /*empty slot1 */ {0,0},
5882 /*h(28)=2 VV1 0x78 VL128 V66 V0F38 W0 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {28, 2881},
5883 /*h(93)=3 VV1 0x78 VL256 V66 V0F38 W0 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {93, 2884},
5884 /*empty slot1 */ {0,0},
5885 /*empty slot1 */ {0,0},
5886 /*h(92)=6 VV1 0x78 VL256 V66 V0F38 W0 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {92, 2883},
5887 /*h(29)=7 VV1 0x78 VL128 V66 V0F38 W0 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {29, 2882}
5888 };
5889 xed_union64_t t;
5890 xed_uint64_t key = 0;
5891 xed_uint64_t hidx = 0;
5892 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
5893 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-3));
5894 if(lu_table[hidx].key == key) {
5895     return lu_table[hidx].value;
5896 }
5897 else{
5898     return 0;
5899 }
5900 }
xed3_phash_find_map0x0F38_opcode0x79_vv1(const xed_decoded_inst_t * d)5901 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x79_vv1(const xed_decoded_inst_t* d)
5902 {
5903 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5904 static const lu_entry_t lu_table[8] = {
5905 /*empty slot1 */ {0,0},
5906 /*empty slot1 */ {0,0},
5907 /*h(28)=2 VV1 0x79 VL128 V66 V0F38 W0 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {28, 2895},
5908 /*h(93)=3 VV1 0x79 VL256 V66 V0F38 W0 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {93, 2898},
5909 /*empty slot1 */ {0,0},
5910 /*empty slot1 */ {0,0},
5911 /*h(92)=6 VV1 0x79 VL256 V66 V0F38 W0 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {92, 2897},
5912 /*h(29)=7 VV1 0x79 VL128 V66 V0F38 W0 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {29, 2896}
5913 };
5914 xed_union64_t t;
5915 xed_uint64_t key = 0;
5916 xed_uint64_t hidx = 0;
5917 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
5918 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-3));
5919 if(lu_table[hidx].key == key) {
5920     return lu_table[hidx].value;
5921 }
5922 else{
5923     return 0;
5924 }
5925 }
xed3_phash_find_map0x0F38_opcode0x8c_vv1(const xed_decoded_inst_t * d)5926 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x8c_vv1(const xed_decoded_inst_t* d)
5927 {
5928 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5929 static const lu_entry_t lu_table[8] = {
5930 /*empty slot1 */ {0,0},
5931 /*empty slot1 */ {0,0},
5932 /*h(20)=2 VV1 0x8C  VL256 V66 V0F38 W0  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 3409},
5933 /*h(4)=3 VV1 0x8C  VL128 V66 V0F38 W0  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 3408},
5934 /*h(22)=4 VV1 0x8C  VL256 V66 V0F38 W1  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 3396},
5935 /*h(6)=5 VV1 0x8C  VL128 V66 V0F38 W1  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3395},
5936 /*empty slot1 */ {0,0},
5937 /*empty slot1 */ {0,0}
5938 };
5939 xed_union64_t t;
5940 xed_uint64_t key = 0;
5941 xed_uint64_t hidx = 0;
5942 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
5943 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-3));
5944 if(lu_table[hidx].key == key) {
5945     return lu_table[hidx].value;
5946 }
5947 else{
5948     return 0;
5949 }
5950 }
xed3_phash_find_map0x0F38_opcode0x8e_vv1(const xed_decoded_inst_t * d)5951 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x8e_vv1(const xed_decoded_inst_t* d)
5952 {
5953 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5954 static const lu_entry_t lu_table[8] = {
5955 /*empty slot1 */ {0,0},
5956 /*empty slot1 */ {0,0},
5957 /*h(20)=2 VV1 0x8E  VL256 V66 V0F38 W0  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 3411},
5958 /*h(4)=3 VV1 0x8E  VL128 V66 V0F38 W0  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 3410},
5959 /*h(22)=4 VV1 0x8E  VL256 V66 V0F38 W1  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 3398},
5960 /*h(6)=5 VV1 0x8E  VL128 V66 V0F38 W1  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3397},
5961 /*empty slot1 */ {0,0},
5962 /*empty slot1 */ {0,0}
5963 };
5964 xed_union64_t t;
5965 xed_uint64_t key = 0;
5966 xed_uint64_t hidx = 0;
5967 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
5968 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-3));
5969 if(lu_table[hidx].key == key) {
5970     return lu_table[hidx].value;
5971 }
5972 else{
5973     return 0;
5974 }
5975 }
xed3_phash_find_map0x0F38_opcode0x90_vv1(const xed_decoded_inst_t * d)5976 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x90_vv1(const xed_decoded_inst_t* d)
5977 {
5978 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
5979 static const lu_entry_t lu_table[15] = {
5980 /*h(178)=0 VV1 0x90   VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_YMM() eanot16*/ {178, 3691},
5981 /*empty slot1 */ {0,0},
5982 /*empty slot1 */ {0,0},
5983 /*empty slot1 */ {0,0},
5984 /*empty slot1 */ {0,0},
5985 /*empty slot1 */ {0,0},
5986 /*h(59)=6 VV1 0x90   VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_XMM() eanot16*/ {59, 3698},
5987 /*h(51)=7 VV1 0x90   VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_XMM() eanot16*/ {51, 3692},
5988 /*h(187)=8 VV1 0x90   VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_XMM() eanot16*/ {187, 3697},
5989 /*h(179)=9 VV1 0x90   VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_YMM() eanot16*/ {179, 3691},
5990 /*empty slot1 */ {0,0},
5991 /*empty slot1 */ {0,0},
5992 /*h(58)=12 VV1 0x90   VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_XMM() eanot16*/ {58, 3698},
5993 /*h(50)=13 VV1 0x90   VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_XMM() eanot16*/ {50, 3692},
5994 /*h(186)=14 VV1 0x90   VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_XMM() eanot16*/ {186, 3697}
5995 };
5996 xed_union64_t t, u;
5997 xed_uint64_t key = 0;
5998 xed_uint64_t hidx = 0;
5999 key = xed_dec_lu_ASZ_NONTERM_EASZ_MOD3_REXW_RM4_VEX_PREFIX_VL(d);
6000 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 15ULL, u.s.hi32);
6001 if(lu_table[hidx].key == key) {
6002     return lu_table[hidx].value;
6003 }
6004 else{
6005     return 0;
6006 }
6007 }
xed3_phash_find_map0x0F38_opcode0x91_vv1(const xed_decoded_inst_t * d)6008 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x91_vv1(const xed_decoded_inst_t* d)
6009 {
6010 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6011 static const lu_entry_t lu_table[15] = {
6012 /*h(178)=0 VV1 0x91   VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_YMM() eanot16*/ {178, 2717},
6013 /*empty slot1 */ {0,0},
6014 /*empty slot1 */ {0,0},
6015 /*empty slot1 */ {0,0},
6016 /*empty slot1 */ {0,0},
6017 /*empty slot1 */ {0,0},
6018 /*h(59)=6 VV1 0x91   VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_XMM() eanot16*/ {59, 2744},
6019 /*h(51)=7 VV1 0x91   VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_XMM() eanot16*/ {51, 2718},
6020 /*h(187)=8 VV1 0x91   VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_YMM() eanot16*/ {187, 2743},
6021 /*h(179)=9 VV1 0x91   VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_YMM() eanot16*/ {179, 2717},
6022 /*empty slot1 */ {0,0},
6023 /*empty slot1 */ {0,0},
6024 /*h(58)=12 VV1 0x91   VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_XMM() eanot16*/ {58, 2744},
6025 /*h(50)=13 VV1 0x91   VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_XMM() eanot16*/ {50, 2718},
6026 /*h(186)=14 VV1 0x91   VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_YMM() eanot16*/ {186, 2743}
6027 };
6028 xed_union64_t t, u;
6029 xed_uint64_t key = 0;
6030 xed_uint64_t hidx = 0;
6031 key = xed_dec_lu_ASZ_NONTERM_EASZ_MOD3_REXW_RM4_VEX_PREFIX_VL(d);
6032 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 15ULL, u.s.hi32);
6033 if(lu_table[hidx].key == key) {
6034     return lu_table[hidx].value;
6035 }
6036 else{
6037     return 0;
6038 }
6039 }
xed3_phash_find_map0x0F38_opcode0x92_vv1(const xed_decoded_inst_t * d)6040 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x92_vv1(const xed_decoded_inst_t* d)
6041 {
6042 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6043 static const lu_entry_t lu_table[15] = {
6044 /*h(178)=0 VV1 0x92   VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_YMM() eanot16*/ {178, 2715},
6045 /*empty slot1 */ {0,0},
6046 /*empty slot1 */ {0,0},
6047 /*empty slot1 */ {0,0},
6048 /*empty slot1 */ {0,0},
6049 /*empty slot1 */ {0,0},
6050 /*h(59)=6 VV1 0x92   VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_XMM() eanot16*/ {59, 2727},
6051 /*h(51)=7 VV1 0x92   VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_XMM() eanot16*/ {51, 2716},
6052 /*h(187)=8 VV1 0x92   VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_XMM() eanot16*/ {187, 2726},
6053 /*h(179)=9 VV1 0x92   VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_YMM() eanot16*/ {179, 2715},
6054 /*empty slot1 */ {0,0},
6055 /*empty slot1 */ {0,0},
6056 /*h(58)=12 VV1 0x92   VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_XMM() eanot16*/ {58, 2727},
6057 /*h(50)=13 VV1 0x92   VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_XMM() eanot16*/ {50, 2716},
6058 /*h(186)=14 VV1 0x92   VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_XMM() eanot16*/ {186, 2726}
6059 };
6060 xed_union64_t t, u;
6061 xed_uint64_t key = 0;
6062 xed_uint64_t hidx = 0;
6063 key = xed_dec_lu_ASZ_NONTERM_EASZ_MOD3_REXW_RM4_VEX_PREFIX_VL(d);
6064 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 15ULL, u.s.hi32);
6065 if(lu_table[hidx].key == key) {
6066     return lu_table[hidx].value;
6067 }
6068 else{
6069     return 0;
6070 }
6071 }
xed3_phash_find_map0x0F38_opcode0x93_vv1(const xed_decoded_inst_t * d)6072 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x93_vv1(const xed_decoded_inst_t* d)
6073 {
6074 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6075 static const lu_entry_t lu_table[15] = {
6076 /*h(178)=0 VV1 0x93   VL256 V66 V0F38   W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_YMM() eanot16*/ {178, 2329},
6077 /*empty slot1 */ {0,0},
6078 /*empty slot1 */ {0,0},
6079 /*empty slot1 */ {0,0},
6080 /*empty slot1 */ {0,0},
6081 /*empty slot1 */ {0,0},
6082 /*h(59)=6 VV1 0x93   VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_XMM() eanot16*/ {59, 2322},
6083 /*h(51)=7 VV1 0x93   VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_XMM() eanot16*/ {51, 2330},
6084 /*h(187)=8 VV1 0x93   VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_YMM() eanot16*/ {187, 2321},
6085 /*h(179)=9 VV1 0x93   VL256 V66 V0F38   W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_YMM() eanot16*/ {179, 2329},
6086 /*empty slot1 */ {0,0},
6087 /*empty slot1 */ {0,0},
6088 /*h(58)=12 VV1 0x93   VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_XMM() eanot16*/ {58, 2322},
6089 /*h(50)=13 VV1 0x93   VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_XMM() eanot16*/ {50, 2330},
6090 /*h(186)=14 VV1 0x93   VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] RM=4 VMODRM_YMM() eanot16*/ {186, 2321}
6091 };
6092 xed_union64_t t, u;
6093 xed_uint64_t key = 0;
6094 xed_uint64_t hidx = 0;
6095 key = xed_dec_lu_ASZ_NONTERM_EASZ_MOD3_REXW_RM4_VEX_PREFIX_VL(d);
6096 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 15ULL, u.s.hi32);
6097 if(lu_table[hidx].key == key) {
6098     return lu_table[hidx].value;
6099 }
6100 else{
6101     return 0;
6102 }
6103 }
xed3_phash_find_map0x0F38_opcode0x96_vv1(const xed_decoded_inst_t * d)6104 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x96_vv1(const xed_decoded_inst_t* d)
6105 {
6106 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6107 static const lu_entry_t lu_table[9] = {
6108 /*h(5)=0 VV1 0x96 VL128 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 3683},
6109 /*h(23)=1 VV1 0x96 VL256 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 3677},
6110 /*h(7)=2 VV1 0x96 VL128 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 3675},
6111 /*h(20)=3 VV1 0x96 VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 3684},
6112 /*h(4)=4 VV1 0x96 VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 3682},
6113 /*h(22)=5 VV1 0x96 VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 3676},
6114 /*h(6)=6 VV1 0x96 VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3674},
6115 /*empty slot1 */ {0,0},
6116 /*h(21)=8 VV1 0x96 VL256 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 3685}
6117 };
6118 xed_union64_t t, u;
6119 xed_uint64_t key = 0;
6120 xed_uint64_t hidx = 0;
6121 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
6122 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
6123 if(lu_table[hidx].key == key) {
6124     return lu_table[hidx].value;
6125 }
6126 else{
6127     return 0;
6128 }
6129 }
xed3_phash_find_map0x0F38_opcode0x97_vv1(const xed_decoded_inst_t * d)6130 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x97_vv1(const xed_decoded_inst_t* d)
6131 {
6132 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6133 static const lu_entry_t lu_table[9] = {
6134 /*h(5)=0 VV1 0x97 VL128 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 3425},
6135 /*h(23)=1 VV1 0x97 VL256 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 3415},
6136 /*h(7)=2 VV1 0x97 VL128 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 3413},
6137 /*h(20)=3 VV1 0x97 VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 3426},
6138 /*h(4)=4 VV1 0x97 VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 3424},
6139 /*h(22)=5 VV1 0x97 VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 3414},
6140 /*h(6)=6 VV1 0x97 VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3412},
6141 /*empty slot1 */ {0,0},
6142 /*h(21)=8 VV1 0x97 VL256 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 3427}
6143 };
6144 xed_union64_t t, u;
6145 xed_uint64_t key = 0;
6146 xed_uint64_t hidx = 0;
6147 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
6148 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
6149 if(lu_table[hidx].key == key) {
6150     return lu_table[hidx].value;
6151 }
6152 else{
6153     return 0;
6154 }
6155 }
xed3_phash_find_map0x0F38_opcode0x98_vv1(const xed_decoded_inst_t * d)6156 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x98_vv1(const xed_decoded_inst_t* d)
6157 {
6158 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6159 static const lu_entry_t lu_table[9] = {
6160 /*h(5)=0 VV1 0x98 VL128 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 3100},
6161 /*h(23)=1 VV1 0x98 VL256 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 3086},
6162 /*h(7)=2 VV1 0x98 VL128 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 3084},
6163 /*h(20)=3 VV1 0x98 VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 3101},
6164 /*h(4)=4 VV1 0x98 VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 3099},
6165 /*h(22)=5 VV1 0x98 VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 3085},
6166 /*h(6)=6 VV1 0x98 VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3083},
6167 /*empty slot1 */ {0,0},
6168 /*h(21)=8 VV1 0x98 VL256 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 3102}
6169 };
6170 xed_union64_t t, u;
6171 xed_uint64_t key = 0;
6172 xed_uint64_t hidx = 0;
6173 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
6174 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
6175 if(lu_table[hidx].key == key) {
6176     return lu_table[hidx].value;
6177 }
6178 else{
6179     return 0;
6180 }
6181 }
xed3_phash_find_map0x0F38_opcode0x99_vv1(const xed_decoded_inst_t * d)6182 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x99_vv1(const xed_decoded_inst_t* d)
6183 {
6184 typedef struct { xed_uint32_t value;} lu_entry_t;
6185 static const lu_entry_t lu_table[4] = {
6186 /*h(4)=0 VV1 0x99  V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2934},
6187 /*h(5)=1 VV1 0x99  V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {2935},
6188 /*h(6)=2 VV1 0x99 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2916},
6189 /*h(7)=3 VV1 0x99 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {2917}
6190 };
6191 xed_uint64_t key = 0;
6192 xed_uint64_t hidx = 0;
6193 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX(d);
6194 hidx = key - 4;
6195 if(hidx <= 3) {
6196     return lu_table[hidx].value;
6197 }
6198 else{
6199     return 0;
6200 }
6201 }
xed3_phash_find_map0x0F38_opcode0x9a_vv1(const xed_decoded_inst_t * d)6202 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x9a_vv1(const xed_decoded_inst_t* d)
6203 {
6204 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6205 static const lu_entry_t lu_table[9] = {
6206 /*h(5)=0 VV1 0x9A VL128 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 2262},
6207 /*h(23)=1 VV1 0x9A VL256 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 2280},
6208 /*h(7)=2 VV1 0x9A VL128 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 2278},
6209 /*h(20)=3 VV1 0x9A VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 2263},
6210 /*h(4)=4 VV1 0x9A VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 2261},
6211 /*h(22)=5 VV1 0x9A VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 2279},
6212 /*h(6)=6 VV1 0x9A VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 2277},
6213 /*empty slot1 */ {0,0},
6214 /*h(21)=8 VV1 0x9A VL256 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 2264}
6215 };
6216 xed_union64_t t, u;
6217 xed_uint64_t key = 0;
6218 xed_uint64_t hidx = 0;
6219 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
6220 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
6221 if(lu_table[hidx].key == key) {
6222     return lu_table[hidx].value;
6223 }
6224 else{
6225     return 0;
6226 }
6227 }
xed3_phash_find_map0x0F38_opcode0x9b_vv1(const xed_decoded_inst_t * d)6228 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x9b_vv1(const xed_decoded_inst_t* d)
6229 {
6230 typedef struct { xed_uint32_t value;} lu_entry_t;
6231 static const lu_entry_t lu_table[4] = {
6232 /*h(4)=0 VV1 0x9B  V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2602},
6233 /*h(5)=1 VV1 0x9B  V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {2603},
6234 /*h(6)=2 VV1 0x9B V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2634},
6235 /*h(7)=3 VV1 0x9B V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {2635}
6236 };
6237 xed_uint64_t key = 0;
6238 xed_uint64_t hidx = 0;
6239 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX(d);
6240 hidx = key - 4;
6241 if(hidx <= 3) {
6242     return lu_table[hidx].value;
6243 }
6244 else{
6245     return 0;
6246 }
6247 }
xed3_phash_find_map0x0F38_opcode0x9c_vv1(const xed_decoded_inst_t * d)6248 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x9c_vv1(const xed_decoded_inst_t* d)
6249 {
6250 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6251 static const lu_entry_t lu_table[9] = {
6252 /*h(5)=0 VV1 0x9C VL128 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 3700},
6253 /*h(23)=1 VV1 0x9C VL256 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 3689},
6254 /*h(7)=2 VV1 0x9C VL128 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 3687},
6255 /*h(20)=3 VV1 0x9C VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 3701},
6256 /*h(4)=4 VV1 0x9C VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 3699},
6257 /*h(22)=5 VV1 0x9C VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 3688},
6258 /*h(6)=6 VV1 0x9C VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3686},
6259 /*empty slot1 */ {0,0},
6260 /*h(21)=8 VV1 0x9C VL256 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 3702}
6261 };
6262 xed_union64_t t, u;
6263 xed_uint64_t key = 0;
6264 xed_uint64_t hidx = 0;
6265 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
6266 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
6267 if(lu_table[hidx].key == key) {
6268     return lu_table[hidx].value;
6269 }
6270 else{
6271     return 0;
6272 }
6273 }
xed3_phash_find_map0x0F38_opcode0x9d_vv1(const xed_decoded_inst_t * d)6274 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x9d_vv1(const xed_decoded_inst_t* d)
6275 {
6276 typedef struct { xed_uint32_t value;} lu_entry_t;
6277 static const lu_entry_t lu_table[4] = {
6278 /*h(4)=0 VV1 0x9D  V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {3324},
6279 /*h(5)=1 VV1 0x9D  V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3325},
6280 /*h(6)=2 VV1 0x9D V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {3304},
6281 /*h(7)=3 VV1 0x9D V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3305}
6282 };
6283 xed_uint64_t key = 0;
6284 xed_uint64_t hidx = 0;
6285 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX(d);
6286 hidx = key - 4;
6287 if(hidx <= 3) {
6288     return lu_table[hidx].value;
6289 }
6290 else{
6291     return 0;
6292 }
6293 }
xed3_phash_find_map0x0F38_opcode0x9e_vv1(const xed_decoded_inst_t * d)6294 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x9e_vv1(const xed_decoded_inst_t* d)
6295 {
6296 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6297 static const lu_entry_t lu_table[9] = {
6298 /*h(5)=0 VV1 0x9E VL128 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 2842},
6299 /*h(23)=1 VV1 0x9E VL256 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 2828},
6300 /*h(7)=2 VV1 0x9E VL128 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 2826},
6301 /*h(20)=3 VV1 0x9E VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 2843},
6302 /*h(4)=4 VV1 0x9E VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 2841},
6303 /*h(22)=5 VV1 0x9E VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 2827},
6304 /*h(6)=6 VV1 0x9E VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 2825},
6305 /*empty slot1 */ {0,0},
6306 /*h(21)=8 VV1 0x9E VL256 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 2844}
6307 };
6308 xed_union64_t t, u;
6309 xed_uint64_t key = 0;
6310 xed_uint64_t hidx = 0;
6311 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
6312 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
6313 if(lu_table[hidx].key == key) {
6314     return lu_table[hidx].value;
6315 }
6316 else{
6317     return 0;
6318 }
6319 }
xed3_phash_find_map0x0F38_opcode0x9f_vv1(const xed_decoded_inst_t * d)6320 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0x9f_vv1(const xed_decoded_inst_t* d)
6321 {
6322 typedef struct { xed_uint32_t value;} lu_entry_t;
6323 static const lu_entry_t lu_table[4] = {
6324 /*h(4)=0 VV1 0x9F  V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {3194},
6325 /*h(5)=1 VV1 0x9F  V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3195},
6326 /*h(6)=2 VV1 0x9F V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {3192},
6327 /*h(7)=3 VV1 0x9F V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3193}
6328 };
6329 xed_uint64_t key = 0;
6330 xed_uint64_t hidx = 0;
6331 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX(d);
6332 hidx = key - 4;
6333 if(hidx <= 3) {
6334     return lu_table[hidx].value;
6335 }
6336 else{
6337     return 0;
6338 }
6339 }
xed3_phash_find_map0x0F38_opcode0xa6_vv1(const xed_decoded_inst_t * d)6340 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xa6_vv1(const xed_decoded_inst_t* d)
6341 {
6342 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6343 static const lu_entry_t lu_table[9] = {
6344 /*h(5)=0 VV1 0xA6 VL128 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 3606},
6345 /*h(23)=1 VV1 0xA6 VL256 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 3620},
6346 /*h(7)=2 VV1 0xA6 VL128 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 3618},
6347 /*h(20)=3 VV1 0xA6 VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 3607},
6348 /*h(4)=4 VV1 0xA6 VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 3605},
6349 /*h(22)=5 VV1 0xA6 VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 3619},
6350 /*h(6)=6 VV1 0xA6 VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3617},
6351 /*empty slot1 */ {0,0},
6352 /*h(21)=8 VV1 0xA6 VL256 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 3608}
6353 };
6354 xed_union64_t t, u;
6355 xed_uint64_t key = 0;
6356 xed_uint64_t hidx = 0;
6357 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
6358 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
6359 if(lu_table[hidx].key == key) {
6360     return lu_table[hidx].value;
6361 }
6362 else{
6363     return 0;
6364 }
6365 }
xed3_phash_find_map0x0F38_opcode0xa7_vv1(const xed_decoded_inst_t * d)6366 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xa7_vv1(const xed_decoded_inst_t* d)
6367 {
6368 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6369 static const lu_entry_t lu_table[9] = {
6370 /*h(5)=0 VV1 0xA7 VL128 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 3441},
6371 /*h(23)=1 VV1 0xA7 VL256 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 2623},
6372 /*h(7)=2 VV1 0xA7 VL128 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 2621},
6373 /*h(20)=3 VV1 0xA7 VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 3442},
6374 /*h(4)=4 VV1 0xA7 VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 3440},
6375 /*h(22)=5 VV1 0xA7 VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 2622},
6376 /*h(6)=6 VV1 0xA7 VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 2620},
6377 /*empty slot1 */ {0,0},
6378 /*h(21)=8 VV1 0xA7 VL256 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 3443}
6379 };
6380 xed_union64_t t, u;
6381 xed_uint64_t key = 0;
6382 xed_uint64_t hidx = 0;
6383 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
6384 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
6385 if(lu_table[hidx].key == key) {
6386     return lu_table[hidx].value;
6387 }
6388 else{
6389     return 0;
6390 }
6391 }
xed3_phash_find_map0x0F38_opcode0xa8_vv1(const xed_decoded_inst_t * d)6392 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xa8_vv1(const xed_decoded_inst_t* d)
6393 {
6394 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6395 static const lu_entry_t lu_table[9] = {
6396 /*h(5)=0 VV1 0xA8 VL128 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 3661},
6397 /*h(23)=1 VV1 0xA8 VL256 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 3643},
6398 /*h(7)=2 VV1 0xA8 VL128 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 3641},
6399 /*h(20)=3 VV1 0xA8 VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 3662},
6400 /*h(4)=4 VV1 0xA8 VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 3660},
6401 /*h(22)=5 VV1 0xA8 VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 3642},
6402 /*h(6)=6 VV1 0xA8 VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3640},
6403 /*empty slot1 */ {0,0},
6404 /*h(21)=8 VV1 0xA8 VL256 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 3663}
6405 };
6406 xed_union64_t t, u;
6407 xed_uint64_t key = 0;
6408 xed_uint64_t hidx = 0;
6409 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
6410 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
6411 if(lu_table[hidx].key == key) {
6412     return lu_table[hidx].value;
6413 }
6414 else{
6415     return 0;
6416 }
6417 }
xed3_phash_find_map0x0F38_opcode0xa9_vv1(const xed_decoded_inst_t * d)6418 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xa9_vv1(const xed_decoded_inst_t* d)
6419 {
6420 typedef struct { xed_uint32_t value;} lu_entry_t;
6421 static const lu_entry_t lu_table[4] = {
6422 /*h(4)=0 VV1 0xA9  V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {3270},
6423 /*h(5)=1 VV1 0xA9  V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3271},
6424 /*h(6)=2 VV1 0xA9  V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {3252},
6425 /*h(7)=3 VV1 0xA9  V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3253}
6426 };
6427 xed_uint64_t key = 0;
6428 xed_uint64_t hidx = 0;
6429 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX(d);
6430 hidx = key - 4;
6431 if(hidx <= 3) {
6432     return lu_table[hidx].value;
6433 }
6434 else{
6435     return 0;
6436 }
6437 }
xed3_phash_find_map0x0F38_opcode0xaa_vv1(const xed_decoded_inst_t * d)6438 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xaa_vv1(const xed_decoded_inst_t* d)
6439 {
6440 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6441 static const lu_entry_t lu_table[9] = {
6442 /*h(5)=0 VV1 0xAA VL128 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 2465},
6443 /*h(23)=1 VV1 0xAA VL256 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 2479},
6444 /*h(7)=2 VV1 0xAA VL128 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 2477},
6445 /*h(20)=3 VV1 0xAA VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 2466},
6446 /*h(4)=4 VV1 0xAA VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 2464},
6447 /*h(22)=5 VV1 0xAA VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 2478},
6448 /*h(6)=6 VV1 0xAA VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 2476},
6449 /*empty slot1 */ {0,0},
6450 /*h(21)=8 VV1 0xAA VL256 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 2467}
6451 };
6452 xed_union64_t t, u;
6453 xed_uint64_t key = 0;
6454 xed_uint64_t hidx = 0;
6455 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
6456 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
6457 if(lu_table[hidx].key == key) {
6458     return lu_table[hidx].value;
6459 }
6460 else{
6461     return 0;
6462 }
6463 }
xed3_phash_find_map0x0F38_opcode0xab_vv1(const xed_decoded_inst_t * d)6464 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xab_vv1(const xed_decoded_inst_t* d)
6465 {
6466 typedef struct { xed_uint32_t value;} lu_entry_t;
6467 static const lu_entry_t lu_table[4] = {
6468 /*h(4)=0 VV1 0xAB  V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2832},
6469 /*h(5)=1 VV1 0xAB  V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {2833},
6470 /*h(6)=2 VV1 0xAB  V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2821},
6471 /*h(7)=3 VV1 0xAB  V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {2822}
6472 };
6473 xed_uint64_t key = 0;
6474 xed_uint64_t hidx = 0;
6475 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX(d);
6476 hidx = key - 4;
6477 if(hidx <= 3) {
6478     return lu_table[hidx].value;
6479 }
6480 else{
6481     return 0;
6482 }
6483 }
xed3_phash_find_map0x0F38_opcode0xac_vv1(const xed_decoded_inst_t * d)6484 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xac_vv1(const xed_decoded_inst_t* d)
6485 {
6486 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6487 static const lu_entry_t lu_table[9] = {
6488 /*h(5)=0 VV1 0xAC VL128 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 2679},
6489 /*h(23)=1 VV1 0xAC VL256 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 2703},
6490 /*h(7)=2 VV1 0xAC VL128 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 2701},
6491 /*h(20)=3 VV1 0xAC VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 2680},
6492 /*h(4)=4 VV1 0xAC VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 2678},
6493 /*h(22)=5 VV1 0xAC VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 2702},
6494 /*h(6)=6 VV1 0xAC VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 2700},
6495 /*empty slot1 */ {0,0},
6496 /*h(21)=8 VV1 0xAC VL256 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 2681}
6497 };
6498 xed_union64_t t, u;
6499 xed_uint64_t key = 0;
6500 xed_uint64_t hidx = 0;
6501 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
6502 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
6503 if(lu_table[hidx].key == key) {
6504     return lu_table[hidx].value;
6505 }
6506 else{
6507     return 0;
6508 }
6509 }
xed3_phash_find_map0x0F38_opcode0xad_vv1(const xed_decoded_inst_t * d)6510 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xad_vv1(const xed_decoded_inst_t* d)
6511 {
6512 typedef struct { xed_uint32_t value;} lu_entry_t;
6513 static const lu_entry_t lu_table[4] = {
6514 /*h(4)=0 VV1 0xAD  V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2307},
6515 /*h(5)=1 VV1 0xAD  V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {2308},
6516 /*h(6)=2 VV1 0xAD  V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2323},
6517 /*h(7)=3 VV1 0xAD  V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {2324}
6518 };
6519 xed_uint64_t key = 0;
6520 xed_uint64_t hidx = 0;
6521 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX(d);
6522 hidx = key - 4;
6523 if(hidx <= 3) {
6524     return lu_table[hidx].value;
6525 }
6526 else{
6527     return 0;
6528 }
6529 }
xed3_phash_find_map0x0F38_opcode0xae_vv1(const xed_decoded_inst_t * d)6530 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xae_vv1(const xed_decoded_inst_t* d)
6531 {
6532 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6533 static const lu_entry_t lu_table[9] = {
6534 /*h(5)=0 VV1 0xAE VL128 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 3355},
6535 /*h(23)=1 VV1 0xAE VL256 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 3378},
6536 /*h(7)=2 VV1 0xAE VL128 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 3376},
6537 /*h(20)=3 VV1 0xAE VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 3356},
6538 /*h(4)=4 VV1 0xAE VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 3354},
6539 /*h(22)=5 VV1 0xAE VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 3377},
6540 /*h(6)=6 VV1 0xAE VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3375},
6541 /*empty slot1 */ {0,0},
6542 /*h(21)=8 VV1 0xAE VL256 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 3357}
6543 };
6544 xed_union64_t t, u;
6545 xed_uint64_t key = 0;
6546 xed_uint64_t hidx = 0;
6547 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
6548 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
6549 if(lu_table[hidx].key == key) {
6550     return lu_table[hidx].value;
6551 }
6552 else{
6553     return 0;
6554 }
6555 }
xed3_phash_find_map0x0F38_opcode0xaf_vv1(const xed_decoded_inst_t * d)6556 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xaf_vv1(const xed_decoded_inst_t* d)
6557 {
6558 typedef struct { xed_uint32_t value;} lu_entry_t;
6559 static const lu_entry_t lu_table[4] = {
6560 /*h(4)=0 VV1 0xAF  V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {3244},
6561 /*h(5)=1 VV1 0xAF  V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3245},
6562 /*h(6)=2 VV1 0xAF  V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2331},
6563 /*h(7)=3 VV1 0xAF  V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {2332}
6564 };
6565 xed_uint64_t key = 0;
6566 xed_uint64_t hidx = 0;
6567 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX(d);
6568 hidx = key - 4;
6569 if(hidx <= 3) {
6570     return lu_table[hidx].value;
6571 }
6572 else{
6573     return 0;
6574 }
6575 }
xed3_phash_find_map0x0F38_opcode0xb6_vv1(const xed_decoded_inst_t * d)6576 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xb6_vv1(const xed_decoded_inst_t* d)
6577 {
6578 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6579 static const lu_entry_t lu_table[9] = {
6580 /*h(5)=0 VV1 0xB6 VL128 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 2219},
6581 /*h(23)=1 VV1 0xB6 VL256 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 2225},
6582 /*h(7)=2 VV1 0xB6 VL128 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 2223},
6583 /*h(20)=3 VV1 0xB6 VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 2220},
6584 /*h(4)=4 VV1 0xB6 VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 2218},
6585 /*h(22)=5 VV1 0xB6 VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 2224},
6586 /*h(6)=6 VV1 0xB6 VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 2222},
6587 /*empty slot1 */ {0,0},
6588 /*h(21)=8 VV1 0xB6 VL256 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 2221}
6589 };
6590 xed_union64_t t, u;
6591 xed_uint64_t key = 0;
6592 xed_uint64_t hidx = 0;
6593 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
6594 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
6595 if(lu_table[hidx].key == key) {
6596     return lu_table[hidx].value;
6597 }
6598 else{
6599     return 0;
6600 }
6601 }
xed3_phash_find_map0x0F38_opcode0xb7_vv1(const xed_decoded_inst_t * d)6602 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xb7_vv1(const xed_decoded_inst_t* d)
6603 {
6604 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6605 static const lu_entry_t lu_table[9] = {
6606 /*h(5)=0 VV1 0xB7 VL128 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 3491},
6607 /*h(23)=1 VV1 0xB7 VL256 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 3518},
6608 /*h(7)=2 VV1 0xB7 VL128 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 3516},
6609 /*h(20)=3 VV1 0xB7 VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 3492},
6610 /*h(4)=4 VV1 0xB7 VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 3490},
6611 /*h(22)=5 VV1 0xB7 VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 3517},
6612 /*h(6)=6 VV1 0xB7 VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3515},
6613 /*empty slot1 */ {0,0},
6614 /*h(21)=8 VV1 0xB7 VL256 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 3493}
6615 };
6616 xed_union64_t t, u;
6617 xed_uint64_t key = 0;
6618 xed_uint64_t hidx = 0;
6619 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
6620 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
6621 if(lu_table[hidx].key == key) {
6622     return lu_table[hidx].value;
6623 }
6624 else{
6625     return 0;
6626 }
6627 }
xed3_phash_find_map0x0F38_opcode0xb8_vv1(const xed_decoded_inst_t * d)6628 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xb8_vv1(const xed_decoded_inst_t* d)
6629 {
6630 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6631 static const lu_entry_t lu_table[9] = {
6632 /*h(5)=0 VV1 0xB8 VL128 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 2900},
6633 /*h(23)=1 VV1 0xB8 VL256 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 2880},
6634 /*h(7)=2 VV1 0xB8 VL128 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 2878},
6635 /*h(20)=3 VV1 0xB8 VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 2901},
6636 /*h(4)=4 VV1 0xB8 VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 2899},
6637 /*h(22)=5 VV1 0xB8 VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 2879},
6638 /*h(6)=6 VV1 0xB8 VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 2877},
6639 /*empty slot1 */ {0,0},
6640 /*h(21)=8 VV1 0xB8 VL256 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 2902}
6641 };
6642 xed_union64_t t, u;
6643 xed_uint64_t key = 0;
6644 xed_uint64_t hidx = 0;
6645 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
6646 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
6647 if(lu_table[hidx].key == key) {
6648     return lu_table[hidx].value;
6649 }
6650 else{
6651     return 0;
6652 }
6653 }
xed3_phash_find_map0x0F38_opcode0xb9_vv1(const xed_decoded_inst_t * d)6654 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xb9_vv1(const xed_decoded_inst_t* d)
6655 {
6656 typedef struct { xed_uint32_t value;} lu_entry_t;
6657 static const lu_entry_t lu_table[4] = {
6658 /*h(4)=0 VV1 0xB9 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2751},
6659 /*h(5)=1 VV1 0xB9 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {2752},
6660 /*h(6)=2 VV1 0xB9 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2761},
6661 /*h(7)=3 VV1 0xB9 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {2762}
6662 };
6663 xed_uint64_t key = 0;
6664 xed_uint64_t hidx = 0;
6665 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX(d);
6666 hidx = key - 4;
6667 if(hidx <= 3) {
6668     return lu_table[hidx].value;
6669 }
6670 else{
6671     return 0;
6672 }
6673 }
xed3_phash_find_map0x0F38_opcode0xba_vv1(const xed_decoded_inst_t * d)6674 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xba_vv1(const xed_decoded_inst_t* d)
6675 {
6676 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6677 static const lu_entry_t lu_table[9] = {
6678 /*h(5)=0 VV1 0xBA VL128 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 2697},
6679 /*h(23)=1 VV1 0xBA VL256 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 3716},
6680 /*h(7)=2 VV1 0xBA VL128 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 3714},
6681 /*h(20)=3 VV1 0xBA VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 2698},
6682 /*h(4)=4 VV1 0xBA VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 2696},
6683 /*h(22)=5 VV1 0xBA VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 3715},
6684 /*h(6)=6 VV1 0xBA VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3713},
6685 /*empty slot1 */ {0,0},
6686 /*h(21)=8 VV1 0xBA VL256 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 2699}
6687 };
6688 xed_union64_t t, u;
6689 xed_uint64_t key = 0;
6690 xed_uint64_t hidx = 0;
6691 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
6692 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
6693 if(lu_table[hidx].key == key) {
6694     return lu_table[hidx].value;
6695 }
6696 else{
6697     return 0;
6698 }
6699 }
xed3_phash_find_map0x0F38_opcode0xbb_vv1(const xed_decoded_inst_t * d)6700 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xbb_vv1(const xed_decoded_inst_t* d)
6701 {
6702 typedef struct { xed_uint32_t value;} lu_entry_t;
6703 static const lu_entry_t lu_table[4] = {
6704 /*h(4)=0 VV1 0xBB V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {3061},
6705 /*h(5)=1 VV1 0xBB V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3062},
6706 /*h(6)=2 VV1 0xBB V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {3055},
6707 /*h(7)=3 VV1 0xBB V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3056}
6708 };
6709 xed_uint64_t key = 0;
6710 xed_uint64_t hidx = 0;
6711 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX(d);
6712 hidx = key - 4;
6713 if(hidx <= 3) {
6714     return lu_table[hidx].value;
6715 }
6716 else{
6717     return 0;
6718 }
6719 }
xed3_phash_find_map0x0F38_opcode0xbc_vv1(const xed_decoded_inst_t * d)6720 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xbc_vv1(const xed_decoded_inst_t* d)
6721 {
6722 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6723 static const lu_entry_t lu_table[9] = {
6724 /*h(5)=0 VV1 0xBC VL128 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 3495},
6725 /*h(23)=1 VV1 0xBC VL256 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 3538},
6726 /*h(7)=2 VV1 0xBC VL128 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 3536},
6727 /*h(20)=3 VV1 0xBC VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 3496},
6728 /*h(4)=4 VV1 0xBC VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 3494},
6729 /*h(22)=5 VV1 0xBC VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 3537},
6730 /*h(6)=6 VV1 0xBC VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3535},
6731 /*empty slot1 */ {0,0},
6732 /*h(21)=8 VV1 0xBC VL256 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 3497}
6733 };
6734 xed_union64_t t, u;
6735 xed_uint64_t key = 0;
6736 xed_uint64_t hidx = 0;
6737 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
6738 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
6739 if(lu_table[hidx].key == key) {
6740     return lu_table[hidx].value;
6741 }
6742 else{
6743     return 0;
6744 }
6745 }
xed3_phash_find_map0x0F38_opcode0xbd_vv1(const xed_decoded_inst_t * d)6746 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xbd_vv1(const xed_decoded_inst_t* d)
6747 {
6748 typedef struct { xed_uint32_t value;} lu_entry_t;
6749 static const lu_entry_t lu_table[4] = {
6750 /*h(4)=0 VV1 0xBD V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2974},
6751 /*h(5)=1 VV1 0xBD V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {2975},
6752 /*h(6)=2 VV1 0xBD V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2985},
6753 /*h(7)=3 VV1 0xBD V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {2986}
6754 };
6755 xed_uint64_t key = 0;
6756 xed_uint64_t hidx = 0;
6757 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX(d);
6758 hidx = key - 4;
6759 if(hidx <= 3) {
6760     return lu_table[hidx].value;
6761 }
6762 else{
6763     return 0;
6764 }
6765 }
xed3_phash_find_map0x0F38_opcode0xbe_vv1(const xed_decoded_inst_t * d)6766 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xbe_vv1(const xed_decoded_inst_t* d)
6767 {
6768 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6769 static const lu_entry_t lu_table[9] = {
6770 /*h(5)=0 VV1 0xBE VL128 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 3213},
6771 /*h(23)=1 VV1 0xBE VL256 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {23, 3235},
6772 /*h(7)=2 VV1 0xBE VL128 V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {7, 3233},
6773 /*h(20)=3 VV1 0xBE VL256 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 3214},
6774 /*h(4)=4 VV1 0xBE VL128 V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 3212},
6775 /*h(22)=5 VV1 0xBE VL256 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {22, 3234},
6776 /*h(6)=6 VV1 0xBE VL128 V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {6, 3232},
6777 /*empty slot1 */ {0,0},
6778 /*h(21)=8 VV1 0xBE VL256 V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 3215}
6779 };
6780 xed_union64_t t, u;
6781 xed_uint64_t key = 0;
6782 xed_uint64_t hidx = 0;
6783 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
6784 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
6785 if(lu_table[hidx].key == key) {
6786     return lu_table[hidx].value;
6787 }
6788 else{
6789     return 0;
6790 }
6791 }
xed3_phash_find_map0x0F38_opcode0xbf_vv1(const xed_decoded_inst_t * d)6792 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xbf_vv1(const xed_decoded_inst_t* d)
6793 {
6794 typedef struct { xed_uint32_t value;} lu_entry_t;
6795 static const lu_entry_t lu_table[4] = {
6796 /*h(4)=0 VV1 0xBF V66 V0F38 W0 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {3563},
6797 /*h(5)=1 VV1 0xBF V66 V0F38 W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3564},
6798 /*h(6)=2 VV1 0xBF V66 V0F38 W1 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {3565},
6799 /*h(7)=3 VV1 0xBF V66 V0F38 W1 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3566}
6800 };
6801 xed_uint64_t key = 0;
6802 xed_uint64_t hidx = 0;
6803 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX(d);
6804 hidx = key - 4;
6805 if(hidx <= 3) {
6806     return lu_table[hidx].value;
6807 }
6808 else{
6809     return 0;
6810 }
6811 }
xed3_phash_find_map0x0F38_opcode0xcf_vv1(const xed_decoded_inst_t * d)6812 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xcf_vv1(const xed_decoded_inst_t* d)
6813 {
6814 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6815 static const lu_entry_t lu_table[5] = {
6816 /*h(5)=0 VV1 0xCF V66 V0F38 MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL128  W0*/ {5, 3545},
6817 /*h(20)=1 VV1 0xCF V66 V0F38 MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM()  VL256  W0*/ {20, 3548},
6818 /*h(4)=2 VV1 0xCF V66 V0F38 MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM()  VL128  W0*/ {4, 3546},
6819 /*empty slot1 */ {0,0},
6820 /*h(21)=4 VV1 0xCF V66 V0F38 MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL256  W0*/ {21, 3547}
6821 };
6822 xed_union64_t t, u;
6823 xed_uint64_t key = 0;
6824 xed_uint64_t hidx = 0;
6825 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
6826 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
6827 if(lu_table[hidx].key == key) {
6828     return lu_table[hidx].value;
6829 }
6830 else{
6831     return 0;
6832 }
6833 }
xed3_phash_find_map0x0F38_opcode0xdb_vv1(const xed_decoded_inst_t * d)6834 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xdb_vv1(const xed_decoded_inst_t* d)
6835 {
6836 typedef struct { xed_uint32_t value;} lu_entry_t;
6837 static const lu_entry_t lu_table[2] = {
6838 /*h(14)=0 VV1 0xDB VL128 V66 V0F38 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2594},
6839 /*h(15)=1 VV1 0xDB VL128 V66 V0F38 NOVSR MOD[0b11] MOD=3  REG[rrr] RM[nnn]*/ {2593}
6840 };
6841 xed_uint64_t key = 0;
6842 xed_uint64_t hidx = 0;
6843 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
6844 hidx = key - 14;
6845 if(hidx <= 1) {
6846     return lu_table[hidx].value;
6847 }
6848 else{
6849     return 0;
6850 }
6851 }
xed3_phash_find_map0x0F38_opcode0xdc_vv1(const xed_decoded_inst_t * d)6852 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xdc_vv1(const xed_decoded_inst_t* d)
6853 {
6854 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6855 static const lu_entry_t lu_table[5] = {
6856 /*h(10)=0 VV1 0xDC V66 V0F38 MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM()  VL256*/ {10, 2723},
6857 /*h(2)=1 VV1 0xDC V66 V0F38  MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM() VL128*/ {2, 2721},
6858 /*empty slot1 */ {0,0},
6859 /*h(11)=3 VV1 0xDC V66 V0F38 MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL256*/ {11, 2722},
6860 /*h(3)=4 VV1 0xDC V66 V0F38  MOD[0b11] MOD=3  REG[rrr] RM[nnn] VL128*/ {3, 2720}
6861 };
6862 xed_union64_t t, u;
6863 xed_uint64_t key = 0;
6864 xed_uint64_t hidx = 0;
6865 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
6866 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
6867 if(lu_table[hidx].key == key) {
6868     return lu_table[hidx].value;
6869 }
6870 else{
6871     return 0;
6872 }
6873 }
xed3_phash_find_map0x0F38_opcode0xdd_vv1(const xed_decoded_inst_t * d)6874 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xdd_vv1(const xed_decoded_inst_t* d)
6875 {
6876 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6877 static const lu_entry_t lu_table[5] = {
6878 /*h(10)=0 VV1 0xDD V66 V0F38 MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM()  VL256*/ {10, 2851},
6879 /*h(2)=1 VV1 0xDD  V66 V0F38 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() VL128*/ {2, 2849},
6880 /*empty slot1 */ {0,0},
6881 /*h(11)=3 VV1 0xDD V66 V0F38 MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL256*/ {11, 2850},
6882 /*h(3)=4 VV1 0xDD V66 V0F38 MOD[0b11] MOD=3  REG[rrr] RM[nnn] VL128*/ {3, 2848}
6883 };
6884 xed_union64_t t, u;
6885 xed_uint64_t key = 0;
6886 xed_uint64_t hidx = 0;
6887 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
6888 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
6889 if(lu_table[hidx].key == key) {
6890     return lu_table[hidx].value;
6891 }
6892 else{
6893     return 0;
6894 }
6895 }
xed3_phash_find_map0x0F38_opcode0xde_vv1(const xed_decoded_inst_t * d)6896 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xde_vv1(const xed_decoded_inst_t* d)
6897 {
6898 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6899 static const lu_entry_t lu_table[5] = {
6900 /*h(10)=0 VV1 0xDE V66 V0F38 MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM()  VL256*/ {10, 2328},
6901 /*h(2)=1 VV1 0xDE V66 V0F38 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() VL128*/ {2, 2326},
6902 /*empty slot1 */ {0,0},
6903 /*h(11)=3 VV1 0xDE V66 V0F38 MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL256*/ {11, 2327},
6904 /*h(3)=4 VV1 0xDE V66 V0F38 MOD[0b11] MOD=3  REG[rrr] RM[nnn] VL128*/ {3, 2325}
6905 };
6906 xed_union64_t t, u;
6907 xed_uint64_t key = 0;
6908 xed_uint64_t hidx = 0;
6909 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
6910 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
6911 if(lu_table[hidx].key == key) {
6912     return lu_table[hidx].value;
6913 }
6914 else{
6915     return 0;
6916 }
6917 }
xed3_phash_find_map0x0F38_opcode0xdf_vv1(const xed_decoded_inst_t * d)6918 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xdf_vv1(const xed_decoded_inst_t* d)
6919 {
6920 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6921 static const lu_entry_t lu_table[5] = {
6922 /*h(10)=0 VV1 0xDF V66 V0F38 MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM()  VL256*/ {10, 2517},
6923 /*h(2)=1 VV1 0xDF V66 V0F38 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() VL128*/ {2, 2515},
6924 /*empty slot1 */ {0,0},
6925 /*h(11)=3 VV1 0xDF V66 V0F38 MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL256*/ {11, 2516},
6926 /*h(3)=4 VV1 0xDF V66 V0F38 MOD[0b11] MOD=3  REG[rrr] RM[nnn] VL128*/ {3, 2514}
6927 };
6928 xed_union64_t t, u;
6929 xed_uint64_t key = 0;
6930 xed_uint64_t hidx = 0;
6931 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
6932 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
6933 if(lu_table[hidx].key == key) {
6934     return lu_table[hidx].value;
6935 }
6936 else{
6937     return 0;
6938 }
6939 }
xed3_phash_find_map0x0F38_opcode0xf2_vv1(const xed_decoded_inst_t * d)6940 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xf2_vv1(const xed_decoded_inst_t* d)
6941 {
6942 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6943 static const lu_entry_t lu_table[12] = {
6944 /*h(0)=0 VV1 0xF2 V0F38 VNP  not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {0, 3182},
6945 /*h(8)=1 VV1 0xF2 V0F38 VNP  not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {8, 3182},
6946 /*h(5)=2 VV1 0xF2 V0F38 VNP  W0 mode64 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 3185},
6947 /*h(13)=3 VV1 0xF2 V0F38 VNP W1 VL128  mode64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {13, 3187},
6948 /*h(4)=4 VV1 0xF2 V0F38 VNP  W0 mode64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 3183},
6949 /*h(12)=5 VV1 0xF2 V0F38 VNP W1 VL128  mode64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {12, 3186},
6950 /*h(3)=6 VV1 0xF2 V0F38 VNP  not64 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3184},
6951 /*h(11)=7 VV1 0xF2 V0F38 VNP  not64 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3184},
6952 /*h(2)=8 VV1 0xF2 V0F38 VNP  not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3182},
6953 /*h(10)=9 VV1 0xF2 V0F38 VNP  not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3182},
6954 /*h(1)=10 VV1 0xF2 V0F38 VNP  not64 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {1, 3184},
6955 /*h(9)=11 VV1 0xF2 V0F38 VNP  not64 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {9, 3184}
6956 };
6957 xed_uint64_t key = 0;
6958 xed_uint64_t hidx = 0;
6959 key = xed_dec_lu_MOD3_MODE_REXW_VEX_PREFIX_VL(d);
6960 hidx = ((10*key % 67) % 12);
6961 if(lu_table[hidx].key == key) {
6962     return lu_table[hidx].value;
6963 }
6964 else{
6965     return 0;
6966 }
6967 }
xed3_phash_find_map0x0F38_opcode0xf3_vv1(const xed_decoded_inst_t * d)6968 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xf3_vv1(const xed_decoded_inst_t* d)
6969 {
6970 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
6971 static const lu_entry_t lu_table[72] = {
6972 /*h(89)=0 VV1 0xF3 V0F38 VNP not64 VL128 MOD[0b11] MOD=3 REG[0b011] RM[nnn]*/ {89, 3727},
6973 /*h(18)=1 VV1 0xF3 V0F38 VNP not64 VL128 MOD[mm] MOD!=3 REG[0b010] RM[nnn] MODRM()*/ {18, 2289},
6974 /*empty slot1 */ {0,0},
6975 /*empty slot1 */ {0,0},
6976 /*h(72)=4 VV1 0xF3 V0F38 VNP not64 VL128  MOD[mm] MOD!=3 REG[0b001] RM[nnn] MODRM()*/ {72, 3733},
6977 /*h(90)=5 VV1 0xF3 V0F38 VNP not64 VL128 MOD[mm] MOD!=3 REG[0b011] RM[nnn] MODRM()*/ {90, 3725},
6978 /*h(19)=6 VV1 0xF3 V0F38 VNP not64 VL128 MOD[0b11] MOD=3 REG[0b010] RM[nnn]*/ {19, 2291},
6979 /*empty slot1 */ {0,0},
6980 /*h(16)=8 VV1 0xF3 V0F38 VNP not64 VL128 MOD[mm] MOD!=3 REG[0b010] RM[nnn] MODRM()*/ {16, 2289},
6981 /*h(73)=9 VV1 0xF3 V0F38 VNP not64 VL128  MOD[0b11] MOD=3 REG[0b001] RM[nnn]*/ {73, 3735},
6982 /*h(91)=10 VV1 0xF3 V0F38 VNP not64 VL128 MOD[0b11] MOD=3 REG[0b011] RM[nnn]*/ {91, 3727},
6983 /*h(20)=11 VV1 0xF3 V0F38 VNP W0 mode64 VL128 MOD[mm] MOD!=3 REG[0b010] RM[nnn] MODRM()*/ {20, 2290},
6984 /*h(88)=12 VV1 0xF3 V0F38 VNP not64 VL128 MOD[mm] MOD!=3 REG[0b011] RM[nnn] MODRM()*/ {88, 3725},
6985 /*h(17)=13 VV1 0xF3 V0F38 VNP not64 VL128 MOD[0b11] MOD=3 REG[0b010] RM[nnn]*/ {17, 2291},
6986 /*h(74)=14 VV1 0xF3 V0F38 VNP not64 VL128  MOD[mm] MOD!=3 REG[0b001] RM[nnn] MODRM()*/ {74, 3733},
6987 /*h(92)=15 VV1 0xF3 V0F38 VNP W1 VL128 mode64 MOD[mm] MOD!=3 REG[0b011] RM[nnn] MODRM()*/ {92, 3729},
6988 /*h(21)=16 VV1 0xF3 V0F38 VNP W0 mode64 VL128 MOD[0b11] MOD=3 REG[0b010] RM[nnn]*/ {21, 2292},
6989 /*empty slot1 */ {0,0},
6990 /*empty slot1 */ {0,0},
6991 /*h(75)=19 VV1 0xF3 V0F38 VNP not64 VL128  MOD[0b11] MOD=3 REG[0b001] RM[nnn]*/ {75, 3735},
6992 /*h(93)=20 VV1 0xF3 V0F38 VNP W1 VL128 mode64 MOD[0b11] MOD=3 REG[0b011] RM[nnn]*/ {93, 3730},
6993 /*empty slot1 */ {0,0},
6994 /*empty slot1 */ {0,0},
6995 /*empty slot1 */ {0,0},
6996 /*h(76)=24 VV1 0xF3 V0F38 VNP W1 VL128 mode64 MOD[mm] MOD!=3 REG[0b001] RM[nnn] MODRM()*/ {76, 3737},
6997 /*empty slot1 */ {0,0},
6998 /*empty slot1 */ {0,0},
6999 /*empty slot1 */ {0,0},
7000 /*empty slot1 */ {0,0},
7001 /*h(77)=29 VV1 0xF3 V0F38 VNP W1 VL128 mode64 MOD[0b11] MOD=3 REG[0b001] RM[nnn]*/ {77, 3738},
7002 /*empty slot1 */ {0,0},
7003 /*h(24)=31 VV1 0xF3 V0F38 VNP not64 VL128 MOD[mm] MOD!=3 REG[0b011] RM[nnn] MODRM()*/ {24, 3725},
7004 /*empty slot1 */ {0,0},
7005 /*empty slot1 */ {0,0},
7006 /*empty slot1 */ {0,0},
7007 /*empty slot1 */ {0,0},
7008 /*h(25)=36 VV1 0xF3 V0F38 VNP not64 VL128 MOD[0b11] MOD=3 REG[0b011] RM[nnn]*/ {25, 3727},
7009 /*empty slot1 */ {0,0},
7010 /*empty slot1 */ {0,0},
7011 /*empty slot1 */ {0,0},
7012 /*h(8)=40 VV1 0xF3 V0F38 VNP not64 VL128  MOD[mm] MOD!=3 REG[0b001] RM[nnn] MODRM()*/ {8, 3733},
7013 /*h(26)=41 VV1 0xF3 V0F38 VNP not64 VL128 MOD[mm] MOD!=3 REG[0b011] RM[nnn] MODRM()*/ {26, 3725},
7014 /*empty slot1 */ {0,0},
7015 /*empty slot1 */ {0,0},
7016 /*h(80)=44 VV1 0xF3 V0F38 VNP not64 VL128 MOD[mm] MOD!=3 REG[0b010] RM[nnn] MODRM()*/ {80, 2289},
7017 /*h(9)=45 VV1 0xF3 V0F38 VNP not64 VL128  MOD[0b11] MOD=3 REG[0b001] RM[nnn]*/ {9, 3735},
7018 /*h(27)=46 VV1 0xF3 V0F38 VNP not64 VL128 MOD[0b11] MOD=3 REG[0b011] RM[nnn]*/ {27, 3727},
7019 /*empty slot1 */ {0,0},
7020 /*empty slot1 */ {0,0},
7021 /*h(81)=49 VV1 0xF3 V0F38 VNP not64 VL128 MOD[0b11] MOD=3 REG[0b010] RM[nnn]*/ {81, 2291},
7022 /*h(10)=50 VV1 0xF3 V0F38 VNP not64 VL128  MOD[mm] MOD!=3 REG[0b001] RM[nnn] MODRM()*/ {10, 3733},
7023 /*h(28)=51 VV1 0xF3 V0F38 VNP W0 mode64 VL128 MOD[mm] MOD!=3 REG[0b011] RM[nnn] MODRM()*/ {28, 3726},
7024 /*empty slot1 */ {0,0},
7025 /*empty slot1 */ {0,0},
7026 /*h(82)=54 VV1 0xF3 V0F38 VNP not64 VL128 MOD[mm] MOD!=3 REG[0b010] RM[nnn] MODRM()*/ {82, 2289},
7027 /*h(11)=55 VV1 0xF3 V0F38 VNP not64 VL128  MOD[0b11] MOD=3 REG[0b001] RM[nnn]*/ {11, 3735},
7028 /*h(29)=56 VV1 0xF3 V0F38 VNP W0 mode64 VL128 MOD[0b11] MOD=3 REG[0b011] RM[nnn]*/ {29, 3728},
7029 /*empty slot1 */ {0,0},
7030 /*empty slot1 */ {0,0},
7031 /*h(83)=59 VV1 0xF3 V0F38 VNP not64 VL128 MOD[0b11] MOD=3 REG[0b010] RM[nnn]*/ {83, 2291},
7032 /*h(12)=60 VV1 0xF3 V0F38 VNP W0 mode64 VL128  MOD[mm] MOD!=3 REG[0b001] RM[nnn] MODRM()*/ {12, 3734},
7033 /*empty slot1 */ {0,0},
7034 /*empty slot1 */ {0,0},
7035 /*empty slot1 */ {0,0},
7036 /*h(84)=64 VV1 0xF3 V0F38 VNP W1 VL128 mode64 MOD[mm] MOD!=3 REG[0b010] RM[nnn] MODRM()*/ {84, 2293},
7037 /*h(13)=65 VV1 0xF3 V0F38 VNP W0 mode64 VL128  MOD[0b11] MOD=3 REG[0b001] RM[nnn]*/ {13, 3736},
7038 /*empty slot1 */ {0,0},
7039 /*empty slot1 */ {0,0},
7040 /*empty slot1 */ {0,0},
7041 /*h(85)=69 VV1 0xF3 V0F38 VNP W1 VL128 mode64 MOD[0b11] MOD=3 REG[0b010] RM[nnn]*/ {85, 2294},
7042 /*empty slot1 */ {0,0},
7043 /*empty slot1 */ {0,0}
7044 };
7045 xed_uint64_t key = 0;
7046 xed_uint64_t hidx = 0;
7047 key = xed_dec_lu_MOD3_MODE_REG_REXW_VEX_PREFIX_VL(d);
7048 hidx = ((5*key % 89) % 72);
7049 if(lu_table[hidx].key == key) {
7050     return lu_table[hidx].value;
7051 }
7052 else{
7053     return 0;
7054 }
7055 }
xed3_phash_find_map0x0F38_opcode0xf5_vv1(const xed_decoded_inst_t * d)7056 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xf5_vv1(const xed_decoded_inst_t* d)
7057 {
7058 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
7059 static const lu_entry_t lu_table[67] = {
7060 /*h(0)=0 VV1 0xF5 V0F38 VNP not64 VL128  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {0, 2525},
7061 /*h(45)=1 VV1 0xF5 V0F38 VF2 W1 VL128 mode64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {45, 2538},
7062 /*empty slot1 */ {0,0},
7063 /*h(1)=3 VV1 0xF5 V0F38 VNP not64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {1, 2527},
7064 /*empty slot1 */ {0,0},
7065 /*empty slot1 */ {0,0},
7066 /*h(2)=6 VV1 0xF5 V0F38 VNP not64 VL128  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 2525},
7067 /*empty slot1 */ {0,0},
7068 /*empty slot1 */ {0,0},
7069 /*h(3)=9 VV1 0xF5 V0F38 VNP not64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 2527},
7070 /*h(48)=10 VV1 0xF5 V0F38 VF3 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {48, 3567},
7071 /*empty slot1 */ {0,0},
7072 /*h(4)=12 VV1 0xF5 V0F38 VNP W0 mode64 VL128  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 2526},
7073 /*h(49)=13 VV1 0xF5 V0F38 VF3 not64 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {49, 3569},
7074 /*empty slot1 */ {0,0},
7075 /*h(5)=15 VV1 0xF5 V0F38 VNP W0 mode64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 2528},
7076 /*h(50)=16 VV1 0xF5 V0F38 VF3 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {50, 3567},
7077 /*empty slot1 */ {0,0},
7078 /*empty slot1 */ {0,0},
7079 /*h(51)=19 VV1 0xF5 V0F38 VF3 not64 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {51, 3569},
7080 /*empty slot1 */ {0,0},
7081 /*empty slot1 */ {0,0},
7082 /*h(52)=22 VV1 0xF5 V0F38 VF3 W0 mode64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {52, 3568},
7083 /*empty slot1 */ {0,0},
7084 /*h(8)=24 VV1 0xF5 V0F38 VNP not64 VL128  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {8, 2525},
7085 /*h(53)=25 VV1 0xF5 V0F38 VF3 W0 mode64 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {53, 3570},
7086 /*empty slot1 */ {0,0},
7087 /*h(9)=27 VV1 0xF5 V0F38 VNP not64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {9, 2527},
7088 /*empty slot1 */ {0,0},
7089 /*h(32)=29 VV1 0xF5 V0F38 VF2 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {32, 2533},
7090 /*h(10)=30 VV1 0xF5 V0F38 VNP not64 VL128  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 2525},
7091 /*empty slot1 */ {0,0},
7092 /*h(33)=32 VV1 0xF5 V0F38 VF2 not64 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {33, 2535},
7093 /*h(11)=33 VV1 0xF5 V0F38 VNP not64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 2527},
7094 /*h(56)=34 VV1 0xF5 V0F38 VF3 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {56, 3567},
7095 /*h(34)=35 VV1 0xF5 V0F38 VF2 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {34, 2533},
7096 /*h(12)=36 VV1 0xF5 V0F38 VNP W1 VL128 mode64  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {12, 2529},
7097 /*h(57)=37 VV1 0xF5 V0F38 VF3 not64 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {57, 3569},
7098 /*h(35)=38 VV1 0xF5 V0F38 VF2 not64 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {35, 2535},
7099 /*h(13)=39 VV1 0xF5 V0F38 VNP W1 VL128 mode64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {13, 2530},
7100 /*h(58)=40 VV1 0xF5 V0F38 VF3 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {58, 3567},
7101 /*h(36)=41 VV1 0xF5 V0F38 VF2 W0 mode64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {36, 2534},
7102 /*empty slot1 */ {0,0},
7103 /*h(59)=43 VV1 0xF5 V0F38 VF3 not64 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {59, 3569},
7104 /*h(37)=44 VV1 0xF5 V0F38 VF2 W0 mode64 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {37, 2536},
7105 /*empty slot1 */ {0,0},
7106 /*h(60)=46 VV1 0xF5 V0F38 VF3 W1 VL128 mode64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {60, 3571},
7107 /*empty slot1 */ {0,0},
7108 /*empty slot1 */ {0,0},
7109 /*h(61)=49 VV1 0xF5 V0F38 VF3 W1 VL128 mode64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {61, 3572},
7110 /*empty slot1 */ {0,0},
7111 /*empty slot1 */ {0,0},
7112 /*empty slot1 */ {0,0},
7113 /*h(40)=53 VV1 0xF5 V0F38 VF2 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {40, 2533},
7114 /*empty slot1 */ {0,0},
7115 /*empty slot1 */ {0,0},
7116 /*h(41)=56 VV1 0xF5 V0F38 VF2 not64 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {41, 2535},
7117 /*empty slot1 */ {0,0},
7118 /*empty slot1 */ {0,0},
7119 /*h(42)=59 VV1 0xF5 V0F38 VF2 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {42, 2533},
7120 /*empty slot1 */ {0,0},
7121 /*empty slot1 */ {0,0},
7122 /*h(43)=62 VV1 0xF5 V0F38 VF2 not64 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {43, 2535},
7123 /*empty slot1 */ {0,0},
7124 /*empty slot1 */ {0,0},
7125 /*h(44)=65 VV1 0xF5 V0F38 VF2 W1 VL128 mode64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {44, 2537},
7126 /*empty slot1 */ {0,0}
7127 };
7128 xed_uint64_t key = 0;
7129 xed_uint64_t hidx = 0;
7130 key = xed_dec_lu_MOD3_MODE_REXW_VEX_PREFIX_VL(d);
7131 hidx = (3*key % 67);
7132 if(lu_table[hidx].key == key) {
7133     return lu_table[hidx].value;
7134 }
7135 else{
7136     return 0;
7137 }
7138 }
xed3_phash_find_map0x0F38_opcode0xf6_vv1(const xed_decoded_inst_t * d)7139 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xf6_vv1(const xed_decoded_inst_t* d)
7140 {
7141 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
7142 static const lu_entry_t lu_table[18] = {
7143 /*h(34)=0 VV1 0xF6 VF2 V0F38 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {34, 3238},
7144 /*empty slot1 */ {0,0},
7145 /*empty slot1 */ {0,0},
7146 /*h(44)=3 VV1 0xF6 VF2 V0F38 W1 VL128 mode64  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {44, 3241},
7147 /*h(36)=4 VV1 0xF6 VF2 V0F38 W0 mode64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {36, 3239},
7148 /*empty slot1 */ {0,0},
7149 /*h(41)=6 VV1 0xF6 VF2 V0F38 not64 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {41, 3236},
7150 /*h(33)=7 VV1 0xF6 VF2 V0F38 not64 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {33, 3236},
7151 /*empty slot1 */ {0,0},
7152 /*empty slot1 */ {0,0},
7153 /*h(43)=10 VV1 0xF6 VF2 V0F38 not64 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {43, 3236},
7154 /*h(35)=11 VV1 0xF6 VF2 V0F38 not64 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {35, 3236},
7155 /*h(40)=12 VV1 0xF6 VF2 V0F38 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {40, 3238},
7156 /*h(32)=13 VV1 0xF6 VF2 V0F38 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {32, 3238},
7157 /*h(45)=14 VV1 0xF6 VF2 V0F38 W1 VL128 mode64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {45, 3240},
7158 /*h(37)=15 VV1 0xF6 VF2 V0F38 W0 mode64 VL128 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {37, 3237},
7159 /*empty slot1 */ {0,0},
7160 /*h(42)=17 VV1 0xF6 VF2 V0F38 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {42, 3238}
7161 };
7162 xed_union64_t t, u;
7163 xed_uint64_t key = 0;
7164 xed_uint64_t hidx = 0;
7165 key = xed_dec_lu_MOD3_MODE_REXW_VEX_PREFIX_VL(d);
7166 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 18ULL, u.s.hi32);
7167 if(lu_table[hidx].key == key) {
7168     return lu_table[hidx].value;
7169 }
7170 else{
7171     return 0;
7172 }
7173 }
xed3_phash_find_map0x0F38_opcode0xf7_vv1(const xed_decoded_inst_t * d)7174 static xed_uint32_t xed3_phash_find_map0x0F38_opcode0xf7_vv1(const xed_decoded_inst_t* d)
7175 {
7176 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
7177 static const lu_entry_t lu_table[67] = {
7178 /*h(0)=0 VV1 0xF7 V0F38 VNP not64 VL128  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {0, 3539},
7179 /*h(45)=1 VV1 0xF7 V0F38 VF2  W1 VL128 mode64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {45, 2401},
7180 /*empty slot1 */ {0,0},
7181 /*h(1)=3 VV1 0xF7 V0F38 VNP not64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {1, 3541},
7182 /*empty slot1 */ {0,0},
7183 /*h(24)=5 VV1 0xF7 V0F38 V66 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {24, 3334},
7184 /*h(2)=6 VV1 0xF7 V0F38 VNP not64 VL128  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {2, 3539},
7185 /*empty slot1 */ {0,0},
7186 /*h(25)=8 VV1 0xF7 V0F38 V66 not64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {25, 3336},
7187 /*h(3)=9 VV1 0xF7 V0F38 VNP not64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {3, 3541},
7188 /*h(48)=10 VV1 0xF7 V0F38 VF3 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {48, 2429},
7189 /*h(26)=11 VV1 0xF7 V0F38 V66 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {26, 3334},
7190 /*h(4)=12 VV1 0xF7 V0F38 VNP W0 mode64 VL128  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {4, 3540},
7191 /*h(49)=13 VV1 0xF7 V0F38 VF3 not64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {49, 2431},
7192 /*h(27)=14 VV1 0xF7 V0F38 V66 not64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {27, 3336},
7193 /*h(5)=15 VV1 0xF7 V0F38 VNP W0 mode64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {5, 3542},
7194 /*h(50)=16 VV1 0xF7 V0F38 VF3 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {50, 2429},
7195 /*h(28)=17 VV1 0xF7 V0F38 V66  W1 VL128 mode64  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {28, 3338},
7196 /*empty slot1 */ {0,0},
7197 /*h(51)=19 VV1 0xF7 V0F38 VF3 not64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {51, 2431},
7198 /*h(29)=20 VV1 0xF7 V0F38 V66  W1 VL128 mode64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {29, 3339},
7199 /*empty slot1 */ {0,0},
7200 /*h(52)=22 VV1 0xF7 V0F38 VF3 W0 mode64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {52, 2430},
7201 /*empty slot1 */ {0,0},
7202 /*h(8)=24 VV1 0xF7 V0F38 VNP not64 VL128  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {8, 3539},
7203 /*h(53)=25 VV1 0xF7 V0F38 VF3 W0 mode64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {53, 2432},
7204 /*empty slot1 */ {0,0},
7205 /*h(9)=27 VV1 0xF7 V0F38 VNP not64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {9, 3541},
7206 /*empty slot1 */ {0,0},
7207 /*h(32)=29 VV1 0xF7 V0F38 VF2 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {32, 2396},
7208 /*h(10)=30 VV1 0xF7 V0F38 VNP not64 VL128  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {10, 3539},
7209 /*empty slot1 */ {0,0},
7210 /*h(33)=32 VV1 0xF7 V0F38 VF2 not64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {33, 2398},
7211 /*h(11)=33 VV1 0xF7 V0F38 VNP not64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {11, 3541},
7212 /*h(56)=34 VV1 0xF7 V0F38 VF3 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {56, 2429},
7213 /*h(34)=35 VV1 0xF7 V0F38 VF2 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {34, 2396},
7214 /*h(12)=36 VV1 0xF7 V0F38 VNP W1 VL128 mode64  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {12, 3543},
7215 /*h(57)=37 VV1 0xF7 V0F38 VF3 not64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {57, 2431},
7216 /*h(35)=38 VV1 0xF7 V0F38 VF2 not64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {35, 2398},
7217 /*h(13)=39 VV1 0xF7 V0F38 VNP W1 VL128 mode64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {13, 3544},
7218 /*h(58)=40 VV1 0xF7 V0F38 VF3 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {58, 2429},
7219 /*h(36)=41 VV1 0xF7 V0F38 VF2 W0 mode64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {36, 2397},
7220 /*empty slot1 */ {0,0},
7221 /*h(59)=43 VV1 0xF7 V0F38 VF3 not64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {59, 2431},
7222 /*h(37)=44 VV1 0xF7 V0F38 VF2 W0 mode64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {37, 2399},
7223 /*empty slot1 */ {0,0},
7224 /*h(60)=46 VV1 0xF7 V0F38 VF3  W1 VL128 mode64  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {60, 2433},
7225 /*empty slot1 */ {0,0},
7226 /*h(16)=48 VV1 0xF7 V0F38 V66 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {16, 3334},
7227 /*h(61)=49 VV1 0xF7 V0F38 VF3  W1 VL128 mode64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {61, 2434},
7228 /*empty slot1 */ {0,0},
7229 /*h(17)=51 VV1 0xF7 V0F38 V66 not64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {17, 3336},
7230 /*empty slot1 */ {0,0},
7231 /*h(40)=53 VV1 0xF7 V0F38 VF2 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {40, 2396},
7232 /*h(18)=54 VV1 0xF7 V0F38 V66 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {18, 3334},
7233 /*empty slot1 */ {0,0},
7234 /*h(41)=56 VV1 0xF7 V0F38 VF2 not64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {41, 2398},
7235 /*h(19)=57 VV1 0xF7 V0F38 V66 not64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {19, 3336},
7236 /*empty slot1 */ {0,0},
7237 /*h(42)=59 VV1 0xF7 V0F38 VF2 not64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {42, 2396},
7238 /*h(20)=60 VV1 0xF7 V0F38 V66 W0 mode64 VL128 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {20, 3335},
7239 /*empty slot1 */ {0,0},
7240 /*h(43)=62 VV1 0xF7 V0F38 VF2 not64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {43, 2398},
7241 /*h(21)=63 VV1 0xF7 V0F38 V66 W0 mode64 VL128  MOD[0b11] MOD=3 REG[rrr] RM[nnn]*/ {21, 3337},
7242 /*empty slot1 */ {0,0},
7243 /*h(44)=65 VV1 0xF7 V0F38 VF2  W1 VL128 mode64  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM()*/ {44, 2400},
7244 /*empty slot1 */ {0,0}
7245 };
7246 xed_uint64_t key = 0;
7247 xed_uint64_t hidx = 0;
7248 key = xed_dec_lu_MOD3_MODE_REXW_VEX_PREFIX_VL(d);
7249 hidx = (3*key % 67);
7250 if(lu_table[hidx].key == key) {
7251     return lu_table[hidx].value;
7252 }
7253 else{
7254     return 0;
7255 }
7256 }
xed3_phash_find_map0x0F3A_opcode0x0_vv1(const xed_decoded_inst_t * d)7257 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x0_vv1(const xed_decoded_inst_t* d)
7258 {
7259 typedef struct { xed_uint32_t value;} lu_entry_t;
7260 static const lu_entry_t lu_table[2] = {
7261 /*h(94)=0 VV1 0x00 VL256 V0F3A V66 W1 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {2300},
7262 /*h(95)=1 VV1 0x00 VL256 V0F3A V66 W1 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {2301}
7263 };
7264 xed_uint64_t key = 0;
7265 xed_uint64_t hidx = 0;
7266 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
7267 hidx = key - 94;
7268 if(hidx <= 1) {
7269     return lu_table[hidx].value;
7270 }
7271 else{
7272     return 0;
7273 }
7274 }
xed3_phash_find_map0x0F3A_opcode0x1_vv1(const xed_decoded_inst_t * d)7275 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x1_vv1(const xed_decoded_inst_t* d)
7276 {
7277 typedef struct { xed_uint32_t value;} lu_entry_t;
7278 static const lu_entry_t lu_table[2] = {
7279 /*h(94)=0 VV1 0x01 VL256 V0F3A V66 W1 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {3603},
7280 /*h(95)=1 VV1 0x01 VL256 V0F3A V66 W1 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {3604}
7281 };
7282 xed_uint64_t key = 0;
7283 xed_uint64_t hidx = 0;
7284 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
7285 hidx = key - 94;
7286 if(hidx <= 1) {
7287     return lu_table[hidx].value;
7288 }
7289 else{
7290     return 0;
7291 }
7292 }
xed3_phash_find_map0x0F3A_opcode0x2_vv1(const xed_decoded_inst_t * d)7293 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x2_vv1(const xed_decoded_inst_t* d)
7294 {
7295 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
7296 static const lu_entry_t lu_table[5] = {
7297 /*h(5)=0 VV1 0x02  VL128 V66 V0F3A W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {5, 3556},
7298 /*h(20)=1 VV1 0x02  VL256 V66 V0F3A W0  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {20, 3557},
7299 /*h(4)=2 VV1 0x02  VL128 V66 V0F3A W0  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {4, 3555},
7300 /*empty slot1 */ {0,0},
7301 /*h(21)=4 VV1 0x02  VL256 V66 V0F3A W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {21, 3558}
7302 };
7303 xed_union64_t t, u;
7304 xed_uint64_t key = 0;
7305 xed_uint64_t hidx = 0;
7306 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
7307 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
7308 if(lu_table[hidx].key == key) {
7309     return lu_table[hidx].value;
7310 }
7311 else{
7312     return 0;
7313 }
7314 }
xed3_phash_find_map0x0F3A_opcode0x4_vv1(const xed_decoded_inst_t * d)7315 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x4_vv1(const xed_decoded_inst_t* d)
7316 {
7317 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
7318 static const lu_entry_t lu_table[8] = {
7319 /*empty slot1 */ {0,0},
7320 /*empty slot1 */ {0,0},
7321 /*h(28)=2 VV1 0x04 VL128 V66 V0F3A norexw_prefix NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {28, 2313},
7322 /*h(93)=3 VV1 0x04 VL256 V66 V0F3A norexw_prefix NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {93, 2316},
7323 /*empty slot1 */ {0,0},
7324 /*empty slot1 */ {0,0},
7325 /*h(92)=6 VV1 0x04 VL256 V66 V0F3A norexw_prefix NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {92, 2315},
7326 /*h(29)=7 VV1 0x04 VL128 V66 V0F3A norexw_prefix NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {29, 2314}
7327 };
7328 xed_union64_t t;
7329 xed_uint64_t key = 0;
7330 xed_uint64_t hidx = 0;
7331 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
7332 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-3));
7333 if(lu_table[hidx].key == key) {
7334     return lu_table[hidx].value;
7335 }
7336 else{
7337     return 0;
7338 }
7339 }
xed3_phash_find_map0x0F3A_opcode0x5_vv1(const xed_decoded_inst_t * d)7340 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x5_vv1(const xed_decoded_inst_t* d)
7341 {
7342 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
7343 static const lu_entry_t lu_table[8] = {
7344 /*empty slot1 */ {0,0},
7345 /*empty slot1 */ {0,0},
7346 /*h(28)=2 VV1 0x05  VL128 V66 V0F3A norexw_prefix NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {28, 3320},
7347 /*h(93)=3 VV1 0x05  VL256 V66 V0F3A norexw_prefix NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {93, 3323},
7348 /*empty slot1 */ {0,0},
7349 /*empty slot1 */ {0,0},
7350 /*h(92)=6 VV1 0x05  VL256 V66 V0F3A norexw_prefix NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {92, 3322},
7351 /*h(29)=7 VV1 0x05  VL128 V66 V0F3A norexw_prefix NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {29, 3321}
7352 };
7353 xed_union64_t t;
7354 xed_uint64_t key = 0;
7355 xed_uint64_t hidx = 0;
7356 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
7357 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-3));
7358 if(lu_table[hidx].key == key) {
7359     return lu_table[hidx].value;
7360 }
7361 else{
7362     return 0;
7363 }
7364 }
xed3_phash_find_map0x0F3A_opcode0x6_vv1(const xed_decoded_inst_t * d)7365 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x6_vv1(const xed_decoded_inst_t* d)
7366 {
7367 typedef struct { xed_uint32_t value;} lu_entry_t;
7368 static const lu_entry_t lu_table[2] = {
7369 /*h(20)=0 VV1 0x06 VL256 V66 V0F3A norexw_prefix  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {2259},
7370 /*h(21)=1 VV1 0x06 VL256 V66 V0F3A norexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {2260}
7371 };
7372 xed_uint64_t key = 0;
7373 xed_uint64_t hidx = 0;
7374 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
7375 hidx = key - 20;
7376 if(hidx <= 1) {
7377     return lu_table[hidx].value;
7378 }
7379 else{
7380     return 0;
7381 }
7382 }
xed3_phash_find_map0x0F3A_opcode0x8_vv1(const xed_decoded_inst_t * d)7383 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x8_vv1(const xed_decoded_inst_t* d)
7384 {
7385 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
7386 static const lu_entry_t lu_table[5] = {
7387 /*h(47)=0 VV1 0x08  VL256 V66 V0F3A NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {47, 3431},
7388 /*h(15)=1 VV1 0x08  VL128 V66 V0F3A NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {15, 3429},
7389 /*h(46)=2 VV1 0x08  VL256 V66 V0F3A NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {46, 3430},
7390 /*h(14)=3 VV1 0x08  VL128 V66 V0F3A NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {14, 3428},
7391 /*empty slot1 */ {0,0}
7392 };
7393 xed_union64_t t, u;
7394 xed_uint64_t key = 0;
7395 xed_uint64_t hidx = 0;
7396 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
7397 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
7398 if(lu_table[hidx].key == key) {
7399     return lu_table[hidx].value;
7400 }
7401 else{
7402     return 0;
7403 }
7404 }
xed3_phash_find_map0x0F3A_opcode0x9_vv1(const xed_decoded_inst_t * d)7405 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x9_vv1(const xed_decoded_inst_t* d)
7406 {
7407 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
7408 static const lu_entry_t lu_table[5] = {
7409 /*h(47)=0 VV1 0x09  VL256 V66 V0F3A NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {47, 3423},
7410 /*h(15)=1 VV1 0x09  VL128 V66 V0F3A NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {15, 3421},
7411 /*h(46)=2 VV1 0x09  VL256 V66 V0F3A NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {46, 3422},
7412 /*h(14)=3 VV1 0x09  VL128 V66 V0F3A NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {14, 3420},
7413 /*empty slot1 */ {0,0}
7414 };
7415 xed_union64_t t, u;
7416 xed_uint64_t key = 0;
7417 xed_uint64_t hidx = 0;
7418 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
7419 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
7420 if(lu_table[hidx].key == key) {
7421     return lu_table[hidx].value;
7422 }
7423 else{
7424     return 0;
7425 }
7426 }
xed3_phash_find_map0x0F3A_opcode0xa_vv1(const xed_decoded_inst_t * d)7427 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0xa_vv1(const xed_decoded_inst_t* d)
7428 {
7429 typedef struct { xed_uint32_t value;} lu_entry_t;
7430 static const lu_entry_t lu_table[2] = {
7431 /*h(2)=0 VV1 0x0A  V66 V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {2904},
7432 /*h(3)=1 VV1 0x0A  V66 V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {2905}
7433 };
7434 xed_uint64_t key = 0;
7435 xed_uint64_t hidx = 0;
7436 key = xed_dec_lu_MOD3_VEX_PREFIX(d);
7437 hidx = key - 2;
7438 if(hidx <= 1) {
7439     return lu_table[hidx].value;
7440 }
7441 else{
7442     return 0;
7443 }
7444 }
xed3_phash_find_map0x0F3A_opcode0xb_vv1(const xed_decoded_inst_t * d)7445 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0xb_vv1(const xed_decoded_inst_t* d)
7446 {
7447 typedef struct { xed_uint32_t value;} lu_entry_t;
7448 static const lu_entry_t lu_table[2] = {
7449 /*h(2)=0 VV1 0x0B  V66 V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {2893},
7450 /*h(3)=1 VV1 0x0B  V66 V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {2894}
7451 };
7452 xed_uint64_t key = 0;
7453 xed_uint64_t hidx = 0;
7454 key = xed_dec_lu_MOD3_VEX_PREFIX(d);
7455 hidx = key - 2;
7456 if(hidx <= 1) {
7457     return lu_table[hidx].value;
7458 }
7459 else{
7460     return 0;
7461 }
7462 }
xed3_phash_find_map0x0F3A_opcode0xc_vv1(const xed_decoded_inst_t * d)7463 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0xc_vv1(const xed_decoded_inst_t* d)
7464 {
7465 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
7466 static const lu_entry_t lu_table[5] = {
7467 /*h(10)=0 VV1 0x0C  VL256 V66 V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {10, 3148},
7468 /*h(2)=1 VV1 0x0C  VL128 V66 V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {2, 3146},
7469 /*empty slot1 */ {0,0},
7470 /*h(11)=3 VV1 0x0C  VL256 V66 V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {11, 3149},
7471 /*h(3)=4 VV1 0x0C  VL128 V66 V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {3, 3147}
7472 };
7473 xed_union64_t t, u;
7474 xed_uint64_t key = 0;
7475 xed_uint64_t hidx = 0;
7476 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
7477 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
7478 if(lu_table[hidx].key == key) {
7479     return lu_table[hidx].value;
7480 }
7481 else{
7482     return 0;
7483 }
7484 }
xed3_phash_find_map0x0F3A_opcode0xd_vv1(const xed_decoded_inst_t * d)7485 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0xd_vv1(const xed_decoded_inst_t* d)
7486 {
7487 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
7488 static const lu_entry_t lu_table[5] = {
7489 /*h(10)=0 VV1 0x0D  VL256 V66 V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {10, 3136},
7490 /*h(2)=1 VV1 0x0D  VL128 V66 V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {2, 3134},
7491 /*empty slot1 */ {0,0},
7492 /*h(11)=3 VV1 0x0D  VL256 V66 V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {11, 3137},
7493 /*h(3)=4 VV1 0x0D  VL128 V66 V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {3, 3135}
7494 };
7495 xed_union64_t t, u;
7496 xed_uint64_t key = 0;
7497 xed_uint64_t hidx = 0;
7498 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
7499 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
7500 if(lu_table[hidx].key == key) {
7501     return lu_table[hidx].value;
7502 }
7503 else{
7504     return 0;
7505 }
7506 }
xed3_phash_find_map0x0F3A_opcode0xe_vv1(const xed_decoded_inst_t * d)7507 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0xe_vv1(const xed_decoded_inst_t* d)
7508 {
7509 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
7510 static const lu_entry_t lu_table[5] = {
7511 /*h(10)=0 VV1 0x0E  VL256 V66 V0F3A  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {10, 3198},
7512 /*h(2)=1 VV1 0x0E  VL128 V66 V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {2, 3196},
7513 /*empty slot1 */ {0,0},
7514 /*h(11)=3 VV1 0x0E  VL256 V66 V0F3A  MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {11, 3199},
7515 /*h(3)=4 VV1 0x0E  VL128 V66 V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {3, 3197}
7516 };
7517 xed_union64_t t, u;
7518 xed_uint64_t key = 0;
7519 xed_uint64_t hidx = 0;
7520 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
7521 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
7522 if(lu_table[hidx].key == key) {
7523     return lu_table[hidx].value;
7524 }
7525 else{
7526     return 0;
7527 }
7528 }
xed3_phash_find_map0x0F3A_opcode0xf_vv1(const xed_decoded_inst_t * d)7529 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0xf_vv1(const xed_decoded_inst_t* d)
7530 {
7531 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
7532 static const lu_entry_t lu_table[5] = {
7533 /*h(10)=0 VV1 0x0F  VL256 V66 V0F3A  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {10, 2787},
7534 /*h(2)=1 VV1 0x0F  VL128 V66 V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {2, 2785},
7535 /*empty slot1 */ {0,0},
7536 /*h(11)=3 VV1 0x0F  VL256 V66 V0F3A  MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {11, 2788},
7537 /*h(3)=4 VV1 0x0F  VL128 V66 V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {3, 2786}
7538 };
7539 xed_union64_t t, u;
7540 xed_uint64_t key = 0;
7541 xed_uint64_t hidx = 0;
7542 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
7543 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
7544 if(lu_table[hidx].key == key) {
7545     return lu_table[hidx].value;
7546 }
7547 else{
7548     return 0;
7549 }
7550 }
xed3_phash_find_map0x0F3A_opcode0x14_vv1(const xed_decoded_inst_t * d)7551 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x14_vv1(const xed_decoded_inst_t* d)
7552 {
7553 typedef struct { xed_uint32_t value;} lu_entry_t;
7554 static const lu_entry_t lu_table[2] = {
7555 /*h(14)=0 VV1 0x14  VL128 V66 V0F3A NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {3163},
7556 /*h(15)=1 VV1 0x14  VL128 V66 V0F3A NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {3164}
7557 };
7558 xed_uint64_t key = 0;
7559 xed_uint64_t hidx = 0;
7560 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
7561 hidx = key - 14;
7562 if(hidx <= 1) {
7563     return lu_table[hidx].value;
7564 }
7565 else{
7566     return 0;
7567 }
7568 }
xed3_phash_find_map0x0F3A_opcode0x15_vv1(const xed_decoded_inst_t * d)7569 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x15_vv1(const xed_decoded_inst_t* d)
7570 {
7571 typedef struct { xed_uint32_t value;} lu_entry_t;
7572 static const lu_entry_t lu_table[2] = {
7573 /*h(14)=0 VV1 0x15  VL128 V66 V0F3A NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {3175},
7574 /*h(15)=1 VV1 0x15  VL128 V66 V0F3A NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {3176}
7575 };
7576 xed_uint64_t key = 0;
7577 xed_uint64_t hidx = 0;
7578 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
7579 hidx = key - 14;
7580 if(hidx <= 1) {
7581     return lu_table[hidx].value;
7582 }
7583 else{
7584     return 0;
7585 }
7586 }
xed3_phash_find_map0x0F3A_opcode0x16_vv1(const xed_decoded_inst_t * d)7587 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x16_vv1(const xed_decoded_inst_t* d)
7588 {
7589 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
7590 static const lu_entry_t lu_table[17] = {
7591 /*h(123)=0 VV1 0x16 VL128 V66 V0F3A not64  NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {123, 3168},
7592 /*h(115)=1 VV1 0x16 VL128 V66 V0F3A not64  NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {115, 3168},
7593 /*h(120)=2 VV1 0x16 VL128 V66 V0F3A not64  NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {120, 3167},
7594 /*h(112)=3 VV1 0x16 VL128 V66 V0F3A not64  NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {112, 3167},
7595 /*h(125)=4 VV1 0x16  VL128 V66 V0F3A mode64 rexw_prefix NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {125, 3174},
7596 /*h(117)=5 VV1 0x16 VL128 V66 V0F3A mode64 norexw_prefix NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {117, 3166},
7597 /*h(122)=6 VV1 0x16 VL128 V66 V0F3A not64  NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {122, 3167},
7598 /*h(114)=7 VV1 0x16 VL128 V66 V0F3A not64  NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {114, 3167},
7599 /*empty slot1 */ {0,0},
7600 /*empty slot1 */ {0,0},
7601 /*h(124)=10 VV1 0x16  VL128 V66 V0F3A mode64 rexw_prefix  NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {124, 3173},
7602 /*h(116)=11 VV1 0x16 VL128 V66 V0F3A mode64 norexw_prefix NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {116, 3165},
7603 /*empty slot1 */ {0,0},
7604 /*h(121)=13 VV1 0x16 VL128 V66 V0F3A not64  NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {121, 3168},
7605 /*h(113)=14 VV1 0x16 VL128 V66 V0F3A not64  NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {113, 3168},
7606 /*empty slot1 */ {0,0},
7607 /*empty slot1 */ {0,0}
7608 };
7609 xed_union64_t t, u;
7610 xed_uint64_t key = 0;
7611 xed_uint64_t hidx = 0;
7612 key = xed_dec_lu_MOD3_MODE_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
7613 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 17ULL, u.s.hi32);
7614 if(lu_table[hidx].key == key) {
7615     return lu_table[hidx].value;
7616 }
7617 else{
7618     return 0;
7619 }
7620 }
xed3_phash_find_map0x0F3A_opcode0x17_vv1(const xed_decoded_inst_t * d)7621 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x17_vv1(const xed_decoded_inst_t* d)
7622 {
7623 typedef struct { xed_uint32_t value;} lu_entry_t;
7624 static const lu_entry_t lu_table[2] = {
7625 /*h(14)=0 VV1 0x17  VL128 V66 V0F3A  NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {2504},
7626 /*h(15)=1 VV1 0x17  VL128 V66 V0F3A  NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {2505}
7627 };
7628 xed_uint64_t key = 0;
7629 xed_uint64_t hidx = 0;
7630 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
7631 hidx = key - 14;
7632 if(hidx <= 1) {
7633     return lu_table[hidx].value;
7634 }
7635 else{
7636     return 0;
7637 }
7638 }
xed3_phash_find_map0x0F3A_opcode0x18_vv1(const xed_decoded_inst_t * d)7639 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x18_vv1(const xed_decoded_inst_t* d)
7640 {
7641 typedef struct { xed_uint32_t value;} lu_entry_t;
7642 static const lu_entry_t lu_table[2] = {
7643 /*h(20)=0 VV1 0x18  norexw_prefix VL256 V66 V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {2914},
7644 /*h(21)=1 VV1 0x18  norexw_prefix  VL256 V66 V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {2915}
7645 };
7646 xed_uint64_t key = 0;
7647 xed_uint64_t hidx = 0;
7648 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
7649 hidx = key - 20;
7650 if(hidx <= 1) {
7651     return lu_table[hidx].value;
7652 }
7653 else{
7654     return 0;
7655 }
7656 }
xed3_phash_find_map0x0F3A_opcode0x19_vv1(const xed_decoded_inst_t * d)7657 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x19_vv1(const xed_decoded_inst_t* d)
7658 {
7659 typedef struct { xed_uint32_t value;} lu_entry_t;
7660 static const lu_entry_t lu_table[2] = {
7661 /*h(92)=0 VV1 0x19  norexw_prefix VL256 V66 V0F3A NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {3246},
7662 /*h(93)=1 VV1 0x19  norexw_prefix VL256 V66 V0F3A NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {3247}
7663 };
7664 xed_uint64_t key = 0;
7665 xed_uint64_t hidx = 0;
7666 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
7667 hidx = key - 92;
7668 if(hidx <= 1) {
7669     return lu_table[hidx].value;
7670 }
7671 else{
7672     return 0;
7673 }
7674 }
xed3_phash_find_map0x0F3A_opcode0x1d_vv1(const xed_decoded_inst_t * d)7675 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x1d_vv1(const xed_decoded_inst_t* d)
7676 {
7677 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
7678 static const lu_entry_t lu_table[8] = {
7679 /*empty slot1 */ {0,0},
7680 /*empty slot1 */ {0,0},
7681 /*h(28)=2 VV1 0x1D VL128 V66 V0F3A NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8() W0*/ {28, 3739},
7682 /*h(93)=3 VV1 0x1D VL256 V66 V0F3A NOVSR  MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8() W0*/ {93, 3742},
7683 /*empty slot1 */ {0,0},
7684 /*empty slot1 */ {0,0},
7685 /*h(92)=6 VV1 0x1D VL256 V66 V0F3A NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8() W0*/ {92, 3741},
7686 /*h(29)=7 VV1 0x1D VL128 V66 V0F3A NOVSR  MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8() W0*/ {29, 3740}
7687 };
7688 xed_union64_t t;
7689 xed_uint64_t key = 0;
7690 xed_uint64_t hidx = 0;
7691 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
7692 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-3));
7693 if(lu_table[hidx].key == key) {
7694     return lu_table[hidx].value;
7695 }
7696 else{
7697     return 0;
7698 }
7699 }
xed3_phash_find_map0x0F3A_opcode0x20_vv1(const xed_decoded_inst_t * d)7700 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x20_vv1(const xed_decoded_inst_t* d)
7701 {
7702 typedef struct { xed_uint32_t value;} lu_entry_t;
7703 static const lu_entry_t lu_table[2] = {
7704 /*h(2)=0 VV1 0x20  VL128 V66 V0F3A  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {2484},
7705 /*h(3)=1 VV1 0x20  VL128 V66 V0F3A  MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {2485}
7706 };
7707 xed_uint64_t key = 0;
7708 xed_uint64_t hidx = 0;
7709 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
7710 hidx = key - 2;
7711 if(hidx <= 1) {
7712     return lu_table[hidx].value;
7713 }
7714 else{
7715     return 0;
7716 }
7717 }
xed3_phash_find_map0x0F3A_opcode0x21_vv1(const xed_decoded_inst_t * d)7718 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x21_vv1(const xed_decoded_inst_t* d)
7719 {
7720 typedef struct { xed_uint32_t value;} lu_entry_t;
7721 static const lu_entry_t lu_table[2] = {
7722 /*h(2)=0 VV1 0x21  VL128 V66 V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {2783},
7723 /*h(3)=1 VV1 0x21  VL128 V66 V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {2784}
7724 };
7725 xed_uint64_t key = 0;
7726 xed_uint64_t hidx = 0;
7727 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
7728 hidx = key - 2;
7729 if(hidx <= 1) {
7730     return lu_table[hidx].value;
7731 }
7732 else{
7733     return 0;
7734 }
7735 }
xed3_phash_find_map0x0F3A_opcode0x22_vv1(const xed_decoded_inst_t * d)7736 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x22_vv1(const xed_decoded_inst_t* d)
7737 {
7738 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
7739 static const lu_entry_t lu_table[18] = {
7740 /*empty slot1 */ {0,0},
7741 /*h(26)=1 VV1 0x22  VL128 V66 V0F3A not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {26, 3264},
7742 /*h(18)=2 VV1 0x22  VL128 V66 V0F3A not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {18, 3264},
7743 /*empty slot1 */ {0,0},
7744 /*empty slot1 */ {0,0},
7745 /*h(28)=5 VV1 0x22  VL128 V66 V0F3A mode64 rexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {28, 3266},
7746 /*h(20)=6 VV1 0x22  VL128 V66 V0F3A mode64 norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {20, 3262},
7747 /*empty slot1 */ {0,0},
7748 /*h(25)=8 VV1 0x22  VL128 V66 V0F3A not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {25, 3265},
7749 /*h(17)=9 VV1 0x22  VL128 V66 V0F3A not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {17, 3265},
7750 /*empty slot1 */ {0,0},
7751 /*empty slot1 */ {0,0},
7752 /*h(27)=12 VV1 0x22  VL128 V66 V0F3A not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {27, 3265},
7753 /*h(19)=13 VV1 0x22  VL128 V66 V0F3A not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {19, 3265},
7754 /*h(24)=14 VV1 0x22  VL128 V66 V0F3A not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {24, 3264},
7755 /*h(16)=15 VV1 0x22  VL128 V66 V0F3A not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {16, 3264},
7756 /*h(29)=16 VV1 0x22  VL128 V66 V0F3A mode64 rexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {29, 3267},
7757 /*h(21)=17 VV1 0x22  VL128 V66 V0F3A mode64 norexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {21, 3263}
7758 };
7759 xed_union64_t t, u;
7760 xed_uint64_t key = 0;
7761 xed_uint64_t hidx = 0;
7762 key = xed_dec_lu_MOD3_MODE_REXW_VEX_PREFIX_VL(d);
7763 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 18ULL, u.s.hi32);
7764 if(lu_table[hidx].key == key) {
7765     return lu_table[hidx].value;
7766 }
7767 else{
7768     return 0;
7769 }
7770 }
xed3_phash_find_map0x0F3A_opcode0x30_vv1(const xed_decoded_inst_t * d)7771 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x30_vv1(const xed_decoded_inst_t* d)
7772 {
7773 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
7774 static const lu_entry_t lu_table[2] = {
7775 /*h(31)=0 VV1 0x30 V66 V0F3A MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W1  NOVSR UIMM8()*/ {31, 3576},
7776 /*h(29)=1 VV1 0x30 V66 V0F3A MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR UIMM8()*/ {29, 3591}
7777 };
7778 xed_union64_t t;
7779 xed_uint64_t key = 0;
7780 xed_uint64_t hidx = 0;
7781 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
7782 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-1));
7783 if(lu_table[hidx].key == key) {
7784     return lu_table[hidx].value;
7785 }
7786 else{
7787     return 0;
7788 }
7789 }
xed3_phash_find_map0x0F3A_opcode0x31_vv1(const xed_decoded_inst_t * d)7790 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x31_vv1(const xed_decoded_inst_t* d)
7791 {
7792 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
7793 static const lu_entry_t lu_table[2] = {
7794 /*h(31)=0 VV1 0x31 V66 V0F3A MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W1  NOVSR UIMM8()*/ {31, 2719},
7795 /*h(29)=1 VV1 0x31 V66 V0F3A MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR UIMM8()*/ {29, 3598}
7796 };
7797 xed_union64_t t;
7798 xed_uint64_t key = 0;
7799 xed_uint64_t hidx = 0;
7800 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
7801 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-1));
7802 if(lu_table[hidx].key == key) {
7803     return lu_table[hidx].value;
7804 }
7805 else{
7806     return 0;
7807 }
7808 }
xed3_phash_find_map0x0F3A_opcode0x32_vv1(const xed_decoded_inst_t * d)7809 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x32_vv1(const xed_decoded_inst_t* d)
7810 {
7811 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
7812 static const lu_entry_t lu_table[2] = {
7813 /*h(31)=0 VV1 0x32 V66 V0F3A MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W1  NOVSR UIMM8()*/ {31, 3659},
7814 /*h(29)=1 VV1 0x32 V66 V0F3A MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR UIMM8()*/ {29, 3648}
7815 };
7816 xed_union64_t t;
7817 xed_uint64_t key = 0;
7818 xed_uint64_t hidx = 0;
7819 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
7820 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-1));
7821 if(lu_table[hidx].key == key) {
7822     return lu_table[hidx].value;
7823 }
7824 else{
7825     return 0;
7826 }
7827 }
xed3_phash_find_map0x0F3A_opcode0x33_vv1(const xed_decoded_inst_t * d)7828 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x33_vv1(const xed_decoded_inst_t* d)
7829 {
7830 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
7831 static const lu_entry_t lu_table[2] = {
7832 /*h(31)=0 VV1 0x33 V66 V0F3A MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W1  NOVSR UIMM8()*/ {31, 3162},
7833 /*h(29)=1 VV1 0x33 V66 V0F3A MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL=0  W0  NOVSR UIMM8()*/ {29, 3639}
7834 };
7835 xed_union64_t t;
7836 xed_uint64_t key = 0;
7837 xed_uint64_t hidx = 0;
7838 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
7839 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-1));
7840 if(lu_table[hidx].key == key) {
7841     return lu_table[hidx].value;
7842 }
7843 else{
7844     return 0;
7845 }
7846 }
xed3_phash_find_map0x0F3A_opcode0x38_vv1(const xed_decoded_inst_t * d)7847 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x38_vv1(const xed_decoded_inst_t* d)
7848 {
7849 typedef struct { xed_uint32_t value;} lu_entry_t;
7850 static const lu_entry_t lu_table[2] = {
7851 /*h(20)=0 VV1 0x38  VL256 V66 V0F3A W0  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {3436},
7852 /*h(21)=1 VV1 0x38  VL256 V66 V0F3A W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {3437}
7853 };
7854 xed_uint64_t key = 0;
7855 xed_uint64_t hidx = 0;
7856 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
7857 hidx = key - 20;
7858 if(hidx <= 1) {
7859     return lu_table[hidx].value;
7860 }
7861 else{
7862     return 0;
7863 }
7864 }
xed3_phash_find_map0x0F3A_opcode0x39_vv1(const xed_decoded_inst_t * d)7865 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x39_vv1(const xed_decoded_inst_t* d)
7866 {
7867 typedef struct { xed_uint32_t value;} lu_entry_t;
7868 static const lu_entry_t lu_table[2] = {
7869 /*h(92)=0 VV1 0x39  VL256 V66 V0F3A W0  NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {3438},
7870 /*h(93)=1 VV1 0x39  VL256 V66 V0F3A W0 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {3439}
7871 };
7872 xed_uint64_t key = 0;
7873 xed_uint64_t hidx = 0;
7874 key = xed_dec_lu_MOD3_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
7875 hidx = key - 92;
7876 if(hidx <= 1) {
7877     return lu_table[hidx].value;
7878 }
7879 else{
7880     return 0;
7881 }
7882 }
xed3_phash_find_map0x0F3A_opcode0x40_vv1(const xed_decoded_inst_t * d)7883 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x40_vv1(const xed_decoded_inst_t* d)
7884 {
7885 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
7886 static const lu_entry_t lu_table[5] = {
7887 /*h(10)=0 VV1 0x40  VL256 V66 V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {10, 2730},
7888 /*h(2)=1 VV1 0x40  VL128 V66 V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {2, 2728},
7889 /*empty slot1 */ {0,0},
7890 /*h(11)=3 VV1 0x40  VL256 V66 V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {11, 2731},
7891 /*h(3)=4 VV1 0x40  VL128 V66 V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {3, 2729}
7892 };
7893 xed_union64_t t, u;
7894 xed_uint64_t key = 0;
7895 xed_uint64_t hidx = 0;
7896 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
7897 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
7898 if(lu_table[hidx].key == key) {
7899     return lu_table[hidx].value;
7900 }
7901 else{
7902     return 0;
7903 }
7904 }
xed3_phash_find_map0x0F3A_opcode0x41_vv1(const xed_decoded_inst_t * d)7905 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x41_vv1(const xed_decoded_inst_t* d)
7906 {
7907 typedef struct { xed_uint32_t value;} lu_entry_t;
7908 static const lu_entry_t lu_table[2] = {
7909 /*h(2)=0 VV1 0x41  VL128 V66 V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {2713},
7910 /*h(3)=1 VV1 0x41  VL128 V66 V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {2714}
7911 };
7912 xed_uint64_t key = 0;
7913 xed_uint64_t hidx = 0;
7914 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
7915 hidx = key - 2;
7916 if(hidx <= 1) {
7917     return lu_table[hidx].value;
7918 }
7919 else{
7920     return 0;
7921 }
7922 }
xed3_phash_find_map0x0F3A_opcode0x42_vv1(const xed_decoded_inst_t * d)7923 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x42_vv1(const xed_decoded_inst_t* d)
7924 {
7925 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
7926 static const lu_entry_t lu_table[5] = {
7927 /*h(10)=0 VV1 0x42  VL256 V66 V0F3A  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {10, 3069},
7928 /*h(2)=1 VV1 0x42  VL128 V66 V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {2, 3067},
7929 /*empty slot1 */ {0,0},
7930 /*h(11)=3 VV1 0x42  VL256 V66 V0F3A  MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {11, 3070},
7931 /*h(3)=4 VV1 0x42  VL128 V66 V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {3, 3068}
7932 };
7933 xed_union64_t t, u;
7934 xed_uint64_t key = 0;
7935 xed_uint64_t hidx = 0;
7936 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
7937 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
7938 if(lu_table[hidx].key == key) {
7939     return lu_table[hidx].value;
7940 }
7941 else{
7942     return 0;
7943 }
7944 }
xed3_phash_find_map0x0F3A_opcode0x44_vv1(const xed_decoded_inst_t * d)7945 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x44_vv1(const xed_decoded_inst_t* d)
7946 {
7947 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
7948 static const lu_entry_t lu_table[5] = {
7949 /*h(10)=0 VV1 0x44 V66 V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM()  VL256     UIMM8()*/ {10, 3465},
7950 /*h(2)=1 VV1 0x44  V66 V0F3A  MOD[mm]  MOD!=3 REG[rrr] RM[nnn] MODRM() VL128 UIMM8()*/ {2, 3463},
7951 /*empty slot1 */ {0,0},
7952 /*h(11)=3 VV1 0x44 V66 V0F3A MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL256     UIMM8()*/ {11, 3464},
7953 /*h(3)=4 VV1 0x44  V66 V0F3A  MOD[0b11]  MOD=3  REG[rrr] RM[nnn] VL128 UIMM8()*/ {3, 3462}
7954 };
7955 xed_union64_t t, u;
7956 xed_uint64_t key = 0;
7957 xed_uint64_t hidx = 0;
7958 key = xed_dec_lu_MOD3_VEX_PREFIX_VL(d);
7959 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
7960 if(lu_table[hidx].key == key) {
7961     return lu_table[hidx].value;
7962 }
7963 else{
7964     return 0;
7965 }
7966 }
xed3_phash_find_map0x0F3A_opcode0x46_vv1(const xed_decoded_inst_t * d)7967 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x46_vv1(const xed_decoded_inst_t* d)
7968 {
7969 typedef struct { xed_uint32_t value;} lu_entry_t;
7970 static const lu_entry_t lu_table[2] = {
7971 /*h(20)=0 VV1 0x46  VL256 V66 V0F3A W0  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {3242},
7972 /*h(21)=1 VV1 0x46  VL256 V66 V0F3A W0 MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {3243}
7973 };
7974 xed_uint64_t key = 0;
7975 xed_uint64_t hidx = 0;
7976 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
7977 hidx = key - 20;
7978 if(hidx <= 1) {
7979     return lu_table[hidx].value;
7980 }
7981 else{
7982     return 0;
7983 }
7984 }
xed3_phash_find_map0x0F3A_opcode0x48_vv1(const xed_decoded_inst_t * d)7985 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x48_vv1(const xed_decoded_inst_t* d)
7986 {
7987 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
7988 static const lu_entry_t lu_table[9] = {
7989 /*h(5)=0 VV1 0x48 VL128 V66 V0F3A W0  MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {5, 2438},
7990 /*h(23)=1 VV1 0x48 VL256 V66 V0F3A W1   MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {23, 2444},
7991 /*h(7)=2 VV1 0x48 VL128 V66 V0F3A W1  MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {7, 2442},
7992 /*h(20)=3 VV1 0x48 VL256 V66 V0F3A W0   MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {20, 2439},
7993 /*h(4)=4 VV1 0x48 VL128 V66 V0F3A W0  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {4, 2437},
7994 /*h(22)=5 VV1 0x48 VL256 V66 V0F3A W1   MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {22, 2443},
7995 /*h(6)=6 VV1 0x48 VL128 V66 V0F3A W1  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {6, 2441},
7996 /*empty slot1 */ {0,0},
7997 /*h(21)=8 VV1 0x48 VL256 V66 V0F3A W0   MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {21, 2440}
7998 };
7999 xed_union64_t t, u;
8000 xed_uint64_t key = 0;
8001 xed_uint64_t hidx = 0;
8002 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
8003 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
8004 if(lu_table[hidx].key == key) {
8005     return lu_table[hidx].value;
8006 }
8007 else{
8008     return 0;
8009 }
8010 }
xed3_phash_find_map0x0F3A_opcode0x49_vv1(const xed_decoded_inst_t * d)8011 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x49_vv1(const xed_decoded_inst_t* d)
8012 {
8013 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
8014 static const lu_entry_t lu_table[9] = {
8015 /*h(5)=0 VV1 0x49 VL128 V66 V0F3A W0  MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {5, 2446},
8016 /*h(23)=1 VV1 0x49 VL256 V66 V0F3A W1   MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {23, 2452},
8017 /*h(7)=2 VV1 0x49 VL128 V66 V0F3A W1  MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {7, 2450},
8018 /*h(20)=3 VV1 0x49 VL256 V66 V0F3A W0   MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {20, 2447},
8019 /*h(4)=4 VV1 0x49 VL128 V66 V0F3A W0  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {4, 2445},
8020 /*h(22)=5 VV1 0x49 VL256 V66 V0F3A W1   MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {22, 2451},
8021 /*h(6)=6 VV1 0x49 VL128 V66 V0F3A W1  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {6, 2449},
8022 /*empty slot1 */ {0,0},
8023 /*h(21)=8 VV1 0x49 VL256 V66 V0F3A W0   MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {21, 2448}
8024 };
8025 xed_union64_t t, u;
8026 xed_uint64_t key = 0;
8027 xed_uint64_t hidx = 0;
8028 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
8029 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
8030 if(lu_table[hidx].key == key) {
8031     return lu_table[hidx].value;
8032 }
8033 else{
8034     return 0;
8035 }
8036 }
xed3_phash_find_map0x0F3A_opcode0x4a_vv1(const xed_decoded_inst_t * d)8037 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x4a_vv1(const xed_decoded_inst_t* d)
8038 {
8039 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
8040 static const lu_entry_t lu_table[5] = {
8041 /*h(5)=0 VV1 0x4A   V66 V0F3A VL128 norexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {5, 3064},
8042 /*h(20)=1 VV1 0x4A   V66 V0F3A VL256 norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {20, 3065},
8043 /*h(4)=2 VV1 0x4A   V66 V0F3A VL128 norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {4, 3063},
8044 /*empty slot1 */ {0,0},
8045 /*h(21)=4 VV1 0x4A   V66 V0F3A VL256 norexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {21, 3066}
8046 };
8047 xed_union64_t t, u;
8048 xed_uint64_t key = 0;
8049 xed_uint64_t hidx = 0;
8050 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
8051 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
8052 if(lu_table[hidx].key == key) {
8053     return lu_table[hidx].value;
8054 }
8055 else{
8056     return 0;
8057 }
8058 }
xed3_phash_find_map0x0F3A_opcode0x4b_vv1(const xed_decoded_inst_t * d)8059 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x4b_vv1(const xed_decoded_inst_t* d)
8060 {
8061 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
8062 static const lu_entry_t lu_table[5] = {
8063 /*h(5)=0 VV1 0x4B   V66 V0F3A VL128 norexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {5, 2625},
8064 /*h(20)=1 VV1 0x4B   V66 V0F3A VL256 norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {20, 2626},
8065 /*h(4)=2 VV1 0x4B   V66 V0F3A VL128 norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {4, 2624},
8066 /*empty slot1 */ {0,0},
8067 /*h(21)=4 VV1 0x4B   V66 V0F3A VL256 norexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {21, 2627}
8068 };
8069 xed_union64_t t, u;
8070 xed_uint64_t key = 0;
8071 xed_uint64_t hidx = 0;
8072 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
8073 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
8074 if(lu_table[hidx].key == key) {
8075     return lu_table[hidx].value;
8076 }
8077 else{
8078     return 0;
8079 }
8080 }
xed3_phash_find_map0x0F3A_opcode0x4c_vv1(const xed_decoded_inst_t * d)8081 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x4c_vv1(const xed_decoded_inst_t* d)
8082 {
8083 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
8084 static const lu_entry_t lu_table[5] = {
8085 /*h(5)=0 VV1 0x4C   VL128 V66 V0F3A norexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {5, 2521},
8086 /*h(20)=1 VV1 0x4C   VL256 V66 V0F3A norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {20, 2522},
8087 /*h(4)=2 VV1 0x4C   VL128 V66 V0F3A norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {4, 2520},
8088 /*empty slot1 */ {0,0},
8089 /*h(21)=4 VV1 0x4C   VL256 V66 V0F3A norexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {21, 2523}
8090 };
8091 xed_union64_t t, u;
8092 xed_uint64_t key = 0;
8093 xed_uint64_t hidx = 0;
8094 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
8095 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 5ULL, u.s.hi32);
8096 if(lu_table[hidx].key == key) {
8097     return lu_table[hidx].value;
8098 }
8099 else{
8100     return 0;
8101 }
8102 }
xed3_phash_find_map0x0F3A_opcode0x5c_vv1(const xed_decoded_inst_t * d)8103 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x5c_vv1(const xed_decoded_inst_t* d)
8104 {
8105 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
8106 static const lu_entry_t lu_table[9] = {
8107 /*h(5)=0 VV1 0x5C V66 W0 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {5, 3014},
8108 /*h(23)=1 VV1 0x5C V66 W1 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {23, 3020},
8109 /*h(7)=2 VV1 0x5C V66 W1 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {7, 3016},
8110 /*h(20)=3 VV1 0x5C V66 W0 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {20, 3017},
8111 /*h(4)=4 VV1 0x5C V66 W0 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {4, 3013},
8112 /*h(22)=5 VV1 0x5C V66 W1 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {22, 3019},
8113 /*h(6)=6 VV1 0x5C V66 W1 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {6, 3015},
8114 /*empty slot1 */ {0,0},
8115 /*h(21)=8 VV1 0x5C V66 W0 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {21, 3018}
8116 };
8117 xed_union64_t t, u;
8118 xed_uint64_t key = 0;
8119 xed_uint64_t hidx = 0;
8120 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
8121 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
8122 if(lu_table[hidx].key == key) {
8123     return lu_table[hidx].value;
8124 }
8125 else{
8126     return 0;
8127 }
8128 }
xed3_phash_find_map0x0F3A_opcode0x5d_vv1(const xed_decoded_inst_t * d)8129 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x5d_vv1(const xed_decoded_inst_t* d)
8130 {
8131 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
8132 static const lu_entry_t lu_table[9] = {
8133 /*h(5)=0 VV1 0x5D V66 W0 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {5, 2266},
8134 /*h(23)=1 VV1 0x5D V66 W1 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {23, 2272},
8135 /*h(7)=2 VV1 0x5D V66 W1 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {7, 2268},
8136 /*h(20)=3 VV1 0x5D V66 W0 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {20, 2269},
8137 /*h(4)=4 VV1 0x5D V66 W0 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {4, 2265},
8138 /*h(22)=5 VV1 0x5D V66 W1 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {22, 2271},
8139 /*h(6)=6 VV1 0x5D V66 W1 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {6, 2267},
8140 /*empty slot1 */ {0,0},
8141 /*h(21)=8 VV1 0x5D V66 W0 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {21, 2270}
8142 };
8143 xed_union64_t t, u;
8144 xed_uint64_t key = 0;
8145 xed_uint64_t hidx = 0;
8146 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
8147 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
8148 if(lu_table[hidx].key == key) {
8149     return lu_table[hidx].value;
8150 }
8151 else{
8152     return 0;
8153 }
8154 }
xed3_phash_find_map0x0F3A_opcode0x5e_vv1(const xed_decoded_inst_t * d)8155 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x5e_vv1(const xed_decoded_inst_t* d)
8156 {
8157 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
8158 static const lu_entry_t lu_table[9] = {
8159 /*h(5)=0 VV1 0x5E V66 W0 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {5, 3627},
8160 /*h(23)=1 VV1 0x5E V66 W1 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {23, 3633},
8161 /*h(7)=2 VV1 0x5E V66 W1 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {7, 3629},
8162 /*h(20)=3 VV1 0x5E V66 W0 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {20, 3630},
8163 /*h(4)=4 VV1 0x5E V66 W0 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {4, 3626},
8164 /*h(22)=5 VV1 0x5E V66 W1 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {22, 3632},
8165 /*h(6)=6 VV1 0x5E V66 W1 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {6, 3628},
8166 /*empty slot1 */ {0,0},
8167 /*h(21)=8 VV1 0x5E V66 W0 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {21, 3631}
8168 };
8169 xed_union64_t t, u;
8170 xed_uint64_t key = 0;
8171 xed_uint64_t hidx = 0;
8172 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
8173 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
8174 if(lu_table[hidx].key == key) {
8175     return lu_table[hidx].value;
8176 }
8177 else{
8178     return 0;
8179 }
8180 }
xed3_phash_find_map0x0F3A_opcode0x5f_vv1(const xed_decoded_inst_t * d)8181 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x5f_vv1(const xed_decoded_inst_t* d)
8182 {
8183 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
8184 static const lu_entry_t lu_table[9] = {
8185 /*h(5)=0 VV1 0x5F V66 W0 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {5, 3610},
8186 /*h(23)=1 VV1 0x5F V66 W1 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {23, 3616},
8187 /*h(7)=2 VV1 0x5F V66 W1 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {7, 3612},
8188 /*h(20)=3 VV1 0x5F V66 W0 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {20, 3613},
8189 /*h(4)=4 VV1 0x5F V66 W0 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {4, 3609},
8190 /*h(22)=5 VV1 0x5F V66 W1 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {22, 3615},
8191 /*h(6)=6 VV1 0x5F V66 W1 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {6, 3611},
8192 /*empty slot1 */ {0,0},
8193 /*h(21)=8 VV1 0x5F V66 W0 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {21, 3614}
8194 };
8195 xed_union64_t t, u;
8196 xed_uint64_t key = 0;
8197 xed_uint64_t hidx = 0;
8198 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
8199 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
8200 if(lu_table[hidx].key == key) {
8201     return lu_table[hidx].value;
8202 }
8203 else{
8204     return 0;
8205 }
8206 }
xed3_phash_find_map0x0F3A_opcode0x60_vv1(const xed_decoded_inst_t * d)8207 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x60_vv1(const xed_decoded_inst_t* d)
8208 {
8209 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
8210 static const lu_entry_t lu_table[17] = {
8211 /*h(123)=0 VV1 0x60  VL128 V66 V0F3A NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {123, 3094},
8212 /*h(115)=1 VV1 0x60  VL128 V66 V0F3A NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {115, 3094},
8213 /*h(120)=2 VV1 0x60  VL128 V66 V0F3A NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {120, 3093},
8214 /*h(112)=3 VV1 0x60  VL128 V66 V0F3A NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {112, 3093},
8215 /*h(125)=4 VV1 0x60  VL128 V66 V0F3A NOVSR mode64 rexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {125, 3098},
8216 /*h(117)=5 VV1 0x60  VL128 V66 V0F3A NOVSR mode64 norexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {117, 3096},
8217 /*h(122)=6 VV1 0x60  VL128 V66 V0F3A NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {122, 3093},
8218 /*h(114)=7 VV1 0x60  VL128 V66 V0F3A NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {114, 3093},
8219 /*empty slot1 */ {0,0},
8220 /*empty slot1 */ {0,0},
8221 /*h(124)=10 VV1 0x60  VL128 V66 V0F3A NOVSR mode64 rexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {124, 3097},
8222 /*h(116)=11 VV1 0x60  VL128 V66 V0F3A NOVSR mode64 norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {116, 3095},
8223 /*empty slot1 */ {0,0},
8224 /*h(121)=13 VV1 0x60  VL128 V66 V0F3A NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {121, 3094},
8225 /*h(113)=14 VV1 0x60  VL128 V66 V0F3A NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {113, 3094},
8226 /*empty slot1 */ {0,0},
8227 /*empty slot1 */ {0,0}
8228 };
8229 xed_union64_t t, u;
8230 xed_uint64_t key = 0;
8231 xed_uint64_t hidx = 0;
8232 key = xed_dec_lu_MOD3_MODE_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
8233 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 17ULL, u.s.hi32);
8234 if(lu_table[hidx].key == key) {
8235     return lu_table[hidx].value;
8236 }
8237 else{
8238     return 0;
8239 }
8240 }
xed3_phash_find_map0x0F3A_opcode0x61_vv1(const xed_decoded_inst_t * d)8241 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x61_vv1(const xed_decoded_inst_t* d)
8242 {
8243 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
8244 static const lu_entry_t lu_table[17] = {
8245 /*h(123)=0 VV1 0x61  VL128 V66 V0F3A NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {123, 3088},
8246 /*h(115)=1 VV1 0x61  VL128 V66 V0F3A NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {115, 3088},
8247 /*h(120)=2 VV1 0x61  VL128 V66 V0F3A NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {120, 3087},
8248 /*h(112)=3 VV1 0x61  VL128 V66 V0F3A NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {112, 3087},
8249 /*h(125)=4 VV1 0x61  VL128 V66 V0F3A NOVSR mode64 rexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {125, 3092},
8250 /*h(117)=5 VV1 0x61  VL128 V66 V0F3A NOVSR mode64 norexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {117, 3090},
8251 /*h(122)=6 VV1 0x61  VL128 V66 V0F3A NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {122, 3087},
8252 /*h(114)=7 VV1 0x61  VL128 V66 V0F3A NOVSR not64 MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {114, 3087},
8253 /*empty slot1 */ {0,0},
8254 /*empty slot1 */ {0,0},
8255 /*h(124)=10 VV1 0x61  VL128 V66 V0F3A NOVSR mode64 rexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {124, 3091},
8256 /*h(116)=11 VV1 0x61  VL128 V66 V0F3A NOVSR mode64 norexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {116, 3089},
8257 /*empty slot1 */ {0,0},
8258 /*h(121)=13 VV1 0x61  VL128 V66 V0F3A NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {121, 3088},
8259 /*h(113)=14 VV1 0x61  VL128 V66 V0F3A NOVSR not64 MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {113, 3088},
8260 /*empty slot1 */ {0,0},
8261 /*empty slot1 */ {0,0}
8262 };
8263 xed_union64_t t, u;
8264 xed_uint64_t key = 0;
8265 xed_uint64_t hidx = 0;
8266 key = xed_dec_lu_MOD3_MODE_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
8267 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 17ULL, u.s.hi32);
8268 if(lu_table[hidx].key == key) {
8269     return lu_table[hidx].value;
8270 }
8271 else{
8272     return 0;
8273 }
8274 }
xed3_phash_find_map0x0F3A_opcode0x62_vv1(const xed_decoded_inst_t * d)8275 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x62_vv1(const xed_decoded_inst_t* d)
8276 {
8277 typedef struct { xed_uint32_t value;} lu_entry_t;
8278 static const lu_entry_t lu_table[2] = {
8279 /*h(14)=0 VV1 0x62  VL128 V66 V0F3A NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {3218},
8280 /*h(15)=1 VV1 0x62  VL128 V66 V0F3A NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {3219}
8281 };
8282 xed_uint64_t key = 0;
8283 xed_uint64_t hidx = 0;
8284 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
8285 hidx = key - 14;
8286 if(hidx <= 1) {
8287     return lu_table[hidx].value;
8288 }
8289 else{
8290     return 0;
8291 }
8292 }
xed3_phash_find_map0x0F3A_opcode0x63_vv1(const xed_decoded_inst_t * d)8293 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x63_vv1(const xed_decoded_inst_t* d)
8294 {
8295 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
8296 static const lu_entry_t lu_table[17] = {
8297 /*h(123)=0 VV1 0x63  VL128 V66 V0F3A NOVSR  not64  MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {123, 3221},
8298 /*h(115)=1 VV1 0x63  VL128 V66 V0F3A NOVSR  not64  MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {115, 3221},
8299 /*h(120)=2 VV1 0x63  VL128 V66 V0F3A NOVSR  not64  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {120, 3220},
8300 /*h(112)=3 VV1 0x63  VL128 V66 V0F3A NOVSR  not64  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {112, 3220},
8301 /*h(125)=4 VV1 0x63  VL128 V66 V0F3A NOVSR mode64 rexw_prefix  MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {125, 3225},
8302 /*h(117)=5 VV1 0x63  VL128 V66 V0F3A NOVSR mode64 norexw_prefix MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {117, 3223},
8303 /*h(122)=6 VV1 0x63  VL128 V66 V0F3A NOVSR  not64  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {122, 3220},
8304 /*h(114)=7 VV1 0x63  VL128 V66 V0F3A NOVSR  not64  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {114, 3220},
8305 /*empty slot1 */ {0,0},
8306 /*empty slot1 */ {0,0},
8307 /*h(124)=10 VV1 0x63  VL128 V66 V0F3A NOVSR mode64 rexw_prefix MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {124, 3224},
8308 /*h(116)=11 VV1 0x63  VL128 V66 V0F3A NOVSR mode64 norexw_prefix  MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {116, 3222},
8309 /*empty slot1 */ {0,0},
8310 /*h(121)=13 VV1 0x63  VL128 V66 V0F3A NOVSR  not64  MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {121, 3221},
8311 /*h(113)=14 VV1 0x63  VL128 V66 V0F3A NOVSR  not64  MOD[0b11] MOD=3 REG[rrr] RM[nnn] UIMM8()*/ {113, 3221},
8312 /*empty slot1 */ {0,0},
8313 /*empty slot1 */ {0,0}
8314 };
8315 xed_union64_t t, u;
8316 xed_uint64_t key = 0;
8317 xed_uint64_t hidx = 0;
8318 key = xed_dec_lu_MOD3_MODE_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
8319 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 17ULL, u.s.hi32);
8320 if(lu_table[hidx].key == key) {
8321     return lu_table[hidx].value;
8322 }
8323 else{
8324     return 0;
8325 }
8326 }
xed3_phash_find_map0x0F3A_opcode0x68_vv1(const xed_decoded_inst_t * d)8327 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x68_vv1(const xed_decoded_inst_t* d)
8328 {
8329 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
8330 static const lu_entry_t lu_table[9] = {
8331 /*h(5)=0 VV1 0x68 V66 W0 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {5, 3524},
8332 /*h(23)=1 VV1 0x68 V66 W1 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {23, 3530},
8333 /*h(7)=2 VV1 0x68 V66 W1 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {7, 3526},
8334 /*h(20)=3 VV1 0x68 V66 W0 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {20, 3527},
8335 /*h(4)=4 VV1 0x68 V66 W0 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {4, 3523},
8336 /*h(22)=5 VV1 0x68 V66 W1 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {22, 3529},
8337 /*h(6)=6 VV1 0x68 V66 W1 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {6, 3525},
8338 /*empty slot1 */ {0,0},
8339 /*h(21)=8 VV1 0x68 V66 W0 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {21, 3528}
8340 };
8341 xed_union64_t t, u;
8342 xed_uint64_t key = 0;
8343 xed_uint64_t hidx = 0;
8344 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
8345 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
8346 if(lu_table[hidx].key == key) {
8347     return lu_table[hidx].value;
8348 }
8349 else{
8350     return 0;
8351 }
8352 }
xed3_phash_find_map0x0F3A_opcode0x69_vv1(const xed_decoded_inst_t * d)8353 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x69_vv1(const xed_decoded_inst_t* d)
8354 {
8355 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
8356 static const lu_entry_t lu_table[9] = {
8357 /*h(5)=0 VV1 0x69 V66 W0 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {5, 3507},
8358 /*h(23)=1 VV1 0x69 V66 W1 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {23, 3513},
8359 /*h(7)=2 VV1 0x69 V66 W1 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {7, 3509},
8360 /*h(20)=3 VV1 0x69 V66 W0 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {20, 3510},
8361 /*h(4)=4 VV1 0x69 V66 W0 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {4, 3506},
8362 /*h(22)=5 VV1 0x69 V66 W1 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {22, 3512},
8363 /*h(6)=6 VV1 0x69 V66 W1 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {6, 3508},
8364 /*empty slot1 */ {0,0},
8365 /*h(21)=8 VV1 0x69 V66 W0 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {21, 3511}
8366 };
8367 xed_union64_t t, u;
8368 xed_uint64_t key = 0;
8369 xed_uint64_t hidx = 0;
8370 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
8371 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
8372 if(lu_table[hidx].key == key) {
8373     return lu_table[hidx].value;
8374 }
8375 else{
8376     return 0;
8377 }
8378 }
xed3_phash_find_map0x0F3A_opcode0x6a_vv1(const xed_decoded_inst_t * d)8379 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x6a_vv1(const xed_decoded_inst_t* d)
8380 {
8381 typedef struct { xed_uint32_t value;} lu_entry_t;
8382 static const lu_entry_t lu_table[4] = {
8383 /*h(4)=0 VV1 0x6A V66 W0  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {3047},
8384 /*h(5)=1 VV1 0x6A V66 W0  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {3048},
8385 /*h(6)=2 VV1 0x6A V66 W1  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {3049},
8386 /*h(7)=3 VV1 0x6A V66 W1  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {3050}
8387 };
8388 xed_uint64_t key = 0;
8389 xed_uint64_t hidx = 0;
8390 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX(d);
8391 hidx = key - 4;
8392 if(hidx <= 3) {
8393     return lu_table[hidx].value;
8394 }
8395 else{
8396     return 0;
8397 }
8398 }
xed3_phash_find_map0x0F3A_opcode0x6b_vv1(const xed_decoded_inst_t * d)8399 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x6b_vv1(const xed_decoded_inst_t* d)
8400 {
8401 typedef struct { xed_uint32_t value;} lu_entry_t;
8402 static const lu_entry_t lu_table[4] = {
8403 /*h(4)=0 VV1 0x6B V66 W0  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {3057},
8404 /*h(5)=1 VV1 0x6B V66 W0  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {3058},
8405 /*h(6)=2 VV1 0x6B V66 W1  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {3059},
8406 /*h(7)=3 VV1 0x6B V66 W1  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {3060}
8407 };
8408 xed_uint64_t key = 0;
8409 xed_uint64_t hidx = 0;
8410 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX(d);
8411 hidx = key - 4;
8412 if(hidx <= 3) {
8413     return lu_table[hidx].value;
8414 }
8415 else{
8416     return 0;
8417 }
8418 }
xed3_phash_find_map0x0F3A_opcode0x6c_vv1(const xed_decoded_inst_t * d)8419 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x6c_vv1(const xed_decoded_inst_t* d)
8420 {
8421 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
8422 static const lu_entry_t lu_table[9] = {
8423 /*h(5)=0 VV1 0x6C V66 W0 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {5, 3151},
8424 /*h(23)=1 VV1 0x6C V66 W1 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {23, 3157},
8425 /*h(7)=2 VV1 0x6C V66 W1 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {7, 3153},
8426 /*h(20)=3 VV1 0x6C V66 W0 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {20, 3154},
8427 /*h(4)=4 VV1 0x6C V66 W0 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {4, 3150},
8428 /*h(22)=5 VV1 0x6C V66 W1 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {22, 3156},
8429 /*h(6)=6 VV1 0x6C V66 W1 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {6, 3152},
8430 /*empty slot1 */ {0,0},
8431 /*h(21)=8 VV1 0x6C V66 W0 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {21, 3155}
8432 };
8433 xed_union64_t t, u;
8434 xed_uint64_t key = 0;
8435 xed_uint64_t hidx = 0;
8436 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
8437 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
8438 if(lu_table[hidx].key == key) {
8439     return lu_table[hidx].value;
8440 }
8441 else{
8442     return 0;
8443 }
8444 }
xed3_phash_find_map0x0F3A_opcode0x6d_vv1(const xed_decoded_inst_t * d)8445 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x6d_vv1(const xed_decoded_inst_t* d)
8446 {
8447 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
8448 static const lu_entry_t lu_table[9] = {
8449 /*h(5)=0 VV1 0x6D V66 W0 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {5, 3139},
8450 /*h(23)=1 VV1 0x6D V66 W1 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {23, 3145},
8451 /*h(7)=2 VV1 0x6D V66 W1 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {7, 3141},
8452 /*h(20)=3 VV1 0x6D V66 W0 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {20, 3142},
8453 /*h(4)=4 VV1 0x6D V66 W0 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {4, 3138},
8454 /*h(22)=5 VV1 0x6D V66 W1 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {22, 3144},
8455 /*h(6)=6 VV1 0x6D V66 W1 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {6, 3140},
8456 /*empty slot1 */ {0,0},
8457 /*h(21)=8 VV1 0x6D V66 W0 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {21, 3143}
8458 };
8459 xed_union64_t t, u;
8460 xed_uint64_t key = 0;
8461 xed_uint64_t hidx = 0;
8462 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
8463 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
8464 if(lu_table[hidx].key == key) {
8465     return lu_table[hidx].value;
8466 }
8467 else{
8468     return 0;
8469 }
8470 }
xed3_phash_find_map0x0F3A_opcode0x6e_vv1(const xed_decoded_inst_t * d)8471 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x6e_vv1(const xed_decoded_inst_t* d)
8472 {
8473 typedef struct { xed_uint32_t value;} lu_entry_t;
8474 static const lu_entry_t lu_table[4] = {
8475 /*h(4)=0 VV1 0x6E V66 W0  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {3288},
8476 /*h(5)=1 VV1 0x6E V66 W0  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {3289},
8477 /*h(6)=2 VV1 0x6E V66 W1  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {3290},
8478 /*h(7)=3 VV1 0x6E V66 W1  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {3291}
8479 };
8480 xed_uint64_t key = 0;
8481 xed_uint64_t hidx = 0;
8482 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX(d);
8483 hidx = key - 4;
8484 if(hidx <= 3) {
8485     return lu_table[hidx].value;
8486 }
8487 else{
8488     return 0;
8489 }
8490 }
xed3_phash_find_map0x0F3A_opcode0x6f_vv1(const xed_decoded_inst_t * d)8491 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x6f_vv1(const xed_decoded_inst_t* d)
8492 {
8493 typedef struct { xed_uint32_t value;} lu_entry_t;
8494 static const lu_entry_t lu_table[4] = {
8495 /*h(4)=0 VV1 0x6F V66 W0  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {3306},
8496 /*h(5)=1 VV1 0x6F V66 W0  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {3307},
8497 /*h(6)=2 VV1 0x6F V66 W1  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {3308},
8498 /*h(7)=3 VV1 0x6F V66 W1  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {3309}
8499 };
8500 xed_uint64_t key = 0;
8501 xed_uint64_t hidx = 0;
8502 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX(d);
8503 hidx = key - 4;
8504 if(hidx <= 3) {
8505     return lu_table[hidx].value;
8506 }
8507 else{
8508     return 0;
8509 }
8510 }
xed3_phash_find_map0x0F3A_opcode0x78_vv1(const xed_decoded_inst_t * d)8511 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x78_vv1(const xed_decoded_inst_t* d)
8512 {
8513 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
8514 static const lu_entry_t lu_table[9] = {
8515 /*h(5)=0 VV1 0x78 V66 W0 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {5, 3388},
8516 /*h(23)=1 VV1 0x78 V66 W1 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {23, 3394},
8517 /*h(7)=2 VV1 0x78 V66 W1 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {7, 3390},
8518 /*h(20)=3 VV1 0x78 V66 W0 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {20, 3391},
8519 /*h(4)=4 VV1 0x78 V66 W0 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {4, 3387},
8520 /*h(22)=5 VV1 0x78 V66 W1 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {22, 3393},
8521 /*h(6)=6 VV1 0x78 V66 W1 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {6, 3389},
8522 /*empty slot1 */ {0,0},
8523 /*h(21)=8 VV1 0x78 V66 W0 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {21, 3392}
8524 };
8525 xed_union64_t t, u;
8526 xed_uint64_t key = 0;
8527 xed_uint64_t hidx = 0;
8528 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
8529 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
8530 if(lu_table[hidx].key == key) {
8531     return lu_table[hidx].value;
8532 }
8533 else{
8534     return 0;
8535 }
8536 }
xed3_phash_find_map0x0F3A_opcode0x79_vv1(const xed_decoded_inst_t * d)8537 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x79_vv1(const xed_decoded_inst_t* d)
8538 {
8539 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
8540 static const lu_entry_t lu_table[9] = {
8541 /*h(5)=0 VV1 0x79 V66 W0 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {5, 3483},
8542 /*h(23)=1 VV1 0x79 V66 W1 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {23, 3489},
8543 /*h(7)=2 VV1 0x79 V66 W1 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {7, 3485},
8544 /*h(20)=3 VV1 0x79 V66 W0 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {20, 3486},
8545 /*h(4)=4 VV1 0x79 V66 W0 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {4, 3482},
8546 /*h(22)=5 VV1 0x79 V66 W1 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {22, 3488},
8547 /*h(6)=6 VV1 0x79 V66 W1 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {6, 3484},
8548 /*empty slot1 */ {0,0},
8549 /*h(21)=8 VV1 0x79 V66 W0 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {21, 3487}
8550 };
8551 xed_union64_t t, u;
8552 xed_uint64_t key = 0;
8553 xed_uint64_t hidx = 0;
8554 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
8555 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
8556 if(lu_table[hidx].key == key) {
8557     return lu_table[hidx].value;
8558 }
8559 else{
8560     return 0;
8561 }
8562 }
xed3_phash_find_map0x0F3A_opcode0x7a_vv1(const xed_decoded_inst_t * d)8563 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x7a_vv1(const xed_decoded_inst_t* d)
8564 {
8565 typedef struct { xed_uint32_t value;} lu_entry_t;
8566 static const lu_entry_t lu_table[4] = {
8567 /*h(4)=0 VV1 0x7A V66 W0  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {2421},
8568 /*h(5)=1 VV1 0x7A V66 W0  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {2422},
8569 /*h(6)=2 VV1 0x7A V66 W1  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {2423},
8570 /*h(7)=3 VV1 0x7A V66 W1  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {2424}
8571 };
8572 xed_uint64_t key = 0;
8573 xed_uint64_t hidx = 0;
8574 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX(d);
8575 hidx = key - 4;
8576 if(hidx <= 3) {
8577     return lu_table[hidx].value;
8578 }
8579 else{
8580     return 0;
8581 }
8582 }
xed3_phash_find_map0x0F3A_opcode0x7b_vv1(const xed_decoded_inst_t * d)8583 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x7b_vv1(const xed_decoded_inst_t* d)
8584 {
8585 typedef struct { xed_uint32_t value;} lu_entry_t;
8586 static const lu_entry_t lu_table[4] = {
8587 /*h(4)=0 VV1 0x7B V66 W0  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {2415},
8588 /*h(5)=1 VV1 0x7B V66 W0  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {2416},
8589 /*h(6)=2 VV1 0x7B V66 W1  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {2417},
8590 /*h(7)=3 VV1 0x7B V66 W1  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {2418}
8591 };
8592 xed_uint64_t key = 0;
8593 xed_uint64_t hidx = 0;
8594 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX(d);
8595 hidx = key - 4;
8596 if(hidx <= 3) {
8597     return lu_table[hidx].value;
8598 }
8599 else{
8600     return 0;
8601 }
8602 }
xed3_phash_find_map0x0F3A_opcode0x7c_vv1(const xed_decoded_inst_t * d)8603 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x7c_vv1(const xed_decoded_inst_t* d)
8604 {
8605 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
8606 static const lu_entry_t lu_table[9] = {
8607 /*h(5)=0 VV1 0x7C V66 W0 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {5, 2967},
8608 /*h(23)=1 VV1 0x7C V66 W1 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {23, 2973},
8609 /*h(7)=2 VV1 0x7C V66 W1 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {7, 2969},
8610 /*h(20)=3 VV1 0x7C V66 W0 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {20, 2970},
8611 /*h(4)=4 VV1 0x7C V66 W0 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {4, 2966},
8612 /*h(22)=5 VV1 0x7C V66 W1 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {22, 2972},
8613 /*h(6)=6 VV1 0x7C V66 W1 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {6, 2968},
8614 /*empty slot1 */ {0,0},
8615 /*h(21)=8 VV1 0x7C V66 W0 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {21, 2971}
8616 };
8617 xed_union64_t t, u;
8618 xed_uint64_t key = 0;
8619 xed_uint64_t hidx = 0;
8620 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
8621 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
8622 if(lu_table[hidx].key == key) {
8623     return lu_table[hidx].value;
8624 }
8625 else{
8626     return 0;
8627 }
8628 }
xed3_phash_find_map0x0F3A_opcode0x7d_vv1(const xed_decoded_inst_t * d)8629 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x7d_vv1(const xed_decoded_inst_t* d)
8630 {
8631 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
8632 static const lu_entry_t lu_table[9] = {
8633 /*h(5)=0 VV1 0x7D V66 W0 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {5, 2988},
8634 /*h(23)=1 VV1 0x7D V66 W1 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {23, 2994},
8635 /*h(7)=2 VV1 0x7D V66 W1 VL128  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {7, 2990},
8636 /*h(20)=3 VV1 0x7D V66 W0 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {20, 2991},
8637 /*h(4)=4 VV1 0x7D V66 W0 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {4, 2987},
8638 /*h(22)=5 VV1 0x7D V66 W1 VL256  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {22, 2993},
8639 /*h(6)=6 VV1 0x7D V66 W1 VL128  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {6, 2989},
8640 /*empty slot1 */ {0,0},
8641 /*h(21)=8 VV1 0x7D V66 W0 VL256  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {21, 2992}
8642 };
8643 xed_union64_t t, u;
8644 xed_uint64_t key = 0;
8645 xed_uint64_t hidx = 0;
8646 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
8647 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 9ULL, u.s.hi32);
8648 if(lu_table[hidx].key == key) {
8649     return lu_table[hidx].value;
8650 }
8651 else{
8652     return 0;
8653 }
8654 }
xed3_phash_find_map0x0F3A_opcode0x7e_vv1(const xed_decoded_inst_t * d)8655 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x7e_vv1(const xed_decoded_inst_t* d)
8656 {
8657 typedef struct { xed_uint32_t value;} lu_entry_t;
8658 static const lu_entry_t lu_table[4] = {
8659 /*h(4)=0 VV1 0x7E V66 W0  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {3498},
8660 /*h(5)=1 VV1 0x7E V66 W0  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {3499},
8661 /*h(6)=2 VV1 0x7E V66 W1  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {3500},
8662 /*h(7)=3 VV1 0x7E V66 W1  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {3501}
8663 };
8664 xed_uint64_t key = 0;
8665 xed_uint64_t hidx = 0;
8666 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX(d);
8667 hidx = key - 4;
8668 if(hidx <= 3) {
8669     return lu_table[hidx].value;
8670 }
8671 else{
8672     return 0;
8673 }
8674 }
xed3_phash_find_map0x0F3A_opcode0x7f_vv1(const xed_decoded_inst_t * d)8675 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0x7f_vv1(const xed_decoded_inst_t* d)
8676 {
8677 typedef struct { xed_uint32_t value;} lu_entry_t;
8678 static const lu_entry_t lu_table[4] = {
8679 /*h(4)=0 VV1 0x7F V66 W0  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {3531},
8680 /*h(5)=1 VV1 0x7F V66 W0  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {3532},
8681 /*h(6)=2 VV1 0x7F V66 W1  V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() SE_IMM8()*/ {3533},
8682 /*h(7)=3 VV1 0x7F V66 W1  V0F3A MOD[0b11] MOD=3 REG[rrr] RM[nnn] SE_IMM8()*/ {3534}
8683 };
8684 xed_uint64_t key = 0;
8685 xed_uint64_t hidx = 0;
8686 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX(d);
8687 hidx = key - 4;
8688 if(hidx <= 3) {
8689     return lu_table[hidx].value;
8690 }
8691 else{
8692     return 0;
8693 }
8694 }
xed3_phash_find_map0x0F3A_opcode0xce_vv1(const xed_decoded_inst_t * d)8695 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0xce_vv1(const xed_decoded_inst_t* d)
8696 {
8697 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
8698 static const lu_entry_t lu_table[8] = {
8699 /*empty slot1 */ {0,0},
8700 /*h(23)=1 VV1 0xCE V66 V0F3A MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL256  W1   UIMM8()*/ {23, 2355},
8701 /*h(7)=2 VV1 0xCE V66 V0F3A MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL128  W1   UIMM8()*/ {7, 2353},
8702 /*empty slot1 */ {0,0},
8703 /*h(22)=4 VV1 0xCE V66 V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM()  VL256  W1   UIMM8()*/ {22, 2356},
8704 /*h(6)=5 VV1 0xCE V66 V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM()  VL128  W1   UIMM8()*/ {6, 2354},
8705 /*empty slot1 */ {0,0},
8706 /*empty slot1 */ {0,0}
8707 };
8708 xed_union64_t t;
8709 xed_uint64_t key = 0;
8710 xed_uint64_t hidx = 0;
8711 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
8712 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-3));
8713 if(lu_table[hidx].key == key) {
8714     return lu_table[hidx].value;
8715 }
8716 else{
8717     return 0;
8718 }
8719 }
xed3_phash_find_map0x0F3A_opcode0xcf_vv1(const xed_decoded_inst_t * d)8720 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0xcf_vv1(const xed_decoded_inst_t* d)
8721 {
8722 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
8723 static const lu_entry_t lu_table[8] = {
8724 /*empty slot1 */ {0,0},
8725 /*h(23)=1 VV1 0xCF V66 V0F3A MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL256  W1   UIMM8()*/ {23, 2755},
8726 /*h(7)=2 VV1 0xCF V66 V0F3A MOD[0b11] MOD=3  REG[rrr] RM[nnn]  VL128  W1   UIMM8()*/ {7, 2753},
8727 /*empty slot1 */ {0,0},
8728 /*h(22)=4 VV1 0xCF V66 V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM()  VL256  W1   UIMM8()*/ {22, 2756},
8729 /*h(6)=5 VV1 0xCF V66 V0F3A MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM()  VL128  W1   UIMM8()*/ {6, 2754},
8730 /*empty slot1 */ {0,0},
8731 /*empty slot1 */ {0,0}
8732 };
8733 xed_union64_t t;
8734 xed_uint64_t key = 0;
8735 xed_uint64_t hidx = 0;
8736 key = xed_dec_lu_MOD3_REXW_VEX_PREFIX_VL(d);
8737 hidx = (t.u64 = 2654435769  * key,  t.s.lo32 >> (32-3));
8738 if(lu_table[hidx].key == key) {
8739     return lu_table[hidx].value;
8740 }
8741 else{
8742     return 0;
8743 }
8744 }
xed3_phash_find_map0x0F3A_opcode0xdf_vv1(const xed_decoded_inst_t * d)8745 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0xdf_vv1(const xed_decoded_inst_t* d)
8746 {
8747 typedef struct { xed_uint32_t value;} lu_entry_t;
8748 static const lu_entry_t lu_table[2] = {
8749 /*h(14)=0 VV1 0xDF  VL128 V66 V0F3A NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn] MODRM() UIMM8()*/ {3654},
8750 /*h(15)=1 VV1 0xDF VL128 V66 V0F3A  NOVSR MOD[0b11] MOD=3  REG[rrr] RM[nnn] UIMM8()*/ {3653}
8751 };
8752 xed_uint64_t key = 0;
8753 xed_uint64_t hidx = 0;
8754 key = xed_dec_lu_MOD3_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
8755 hidx = key - 14;
8756 if(hidx <= 1) {
8757     return lu_table[hidx].value;
8758 }
8759 else{
8760     return 0;
8761 }
8762 }
xed3_phash_find_map0x0F3A_opcode0xf0_vv1(const xed_decoded_inst_t * d)8763 static xed_uint32_t xed3_phash_find_map0x0F3A_opcode0xf0_vv1(const xed_decoded_inst_t* d)
8764 {
8765 typedef struct {xed_uint32_t key; xed_uint32_t value;} lu_entry_t;
8766 static const lu_entry_t lu_table[18] = {
8767 /*h(178)=0 VV1 0xF0 VF2 V0F3A not64 VL128 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM() UIMM8()*/ {178, 3005},
8768 /*empty slot1 */ {0,0},
8769 /*empty slot1 */ {0,0},
8770 /*h(188)=3 VV1 0xF0 VF2 V0F3A W1 VL128 NOVSR mode64 MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM() UIMM8()*/ {188, 3008},
8771 /*h(180)=4 VV1 0xF0 VF2 V0F3A W0 mode64 VL128 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM() UIMM8()*/ {180, 3006},
8772 /*empty slot1 */ {0,0},
8773 /*h(185)=6 VV1 0xF0 VF2 V0F3A not64 VL128 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]  UIMM8()*/ {185, 3003},
8774 /*h(177)=7 VV1 0xF0 VF2 V0F3A not64 VL128 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]  UIMM8()*/ {177, 3003},
8775 /*empty slot1 */ {0,0},
8776 /*empty slot1 */ {0,0},
8777 /*h(187)=10 VV1 0xF0 VF2 V0F3A not64 VL128 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]  UIMM8()*/ {187, 3003},
8778 /*h(179)=11 VV1 0xF0 VF2 V0F3A not64 VL128 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]  UIMM8()*/ {179, 3003},
8779 /*h(184)=12 VV1 0xF0 VF2 V0F3A not64 VL128 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM() UIMM8()*/ {184, 3005},
8780 /*h(176)=13 VV1 0xF0 VF2 V0F3A not64 VL128 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM() UIMM8()*/ {176, 3005},
8781 /*h(189)=14 VV1 0xF0 VF2 V0F3A W1 VL128 NOVSR mode64 MOD[0b11] MOD=3 REG[rrr] RM[nnn]  UIMM8()*/ {189, 3007},
8782 /*h(181)=15 VV1 0xF0 VF2 V0F3A W0 mode64 VL128 NOVSR MOD[0b11] MOD=3 REG[rrr] RM[nnn]  UIMM8()*/ {181, 3004},
8783 /*empty slot1 */ {0,0},
8784 /*h(186)=17 VV1 0xF0 VF2 V0F3A not64 VL128 NOVSR MOD[mm] MOD!=3 REG[rrr] RM[nnn]  MODRM() UIMM8()*/ {186, 3005}
8785 };
8786 xed_union64_t t, u;
8787 xed_uint64_t key = 0;
8788 xed_uint64_t hidx = 0;
8789 key = xed_dec_lu_MOD3_MODE_REXW_VEXDEST210_7_VEXDEST3_VEX_PREFIX_VL(d);
8790 hidx = (t.u64 = 2654435769  * key, u.u64 = t.s.lo32 * 18ULL, u.s.hi32);
8791 if(lu_table[hidx].key == key) {
8792     return lu_table[hidx].value;
8793 }
8794 else{
8795     return 0;
8796 }
8797 }
8798 #endif
8799