1# Check 64bit SSE to AVX instructions
2
3	.allow_index_reg
4	.text
5_start:
6# Tests for op mem64
7	ldmxcsr (%rcx)
8	stmxcsr (%rcx)
9
10# Tests for op xmm/mem128, xmm
11	cvtdq2ps %xmm4,%xmm6
12	cvtdq2ps (%rcx),%xmm4
13	cvtpd2dq %xmm4,%xmm6
14	cvtpd2dq (%rcx),%xmm4
15	cvtpd2ps %xmm4,%xmm6
16	cvtpd2ps (%rcx),%xmm4
17	cvtps2dq %xmm4,%xmm6
18	cvtps2dq (%rcx),%xmm4
19	cvttpd2dq %xmm4,%xmm6
20	cvttpd2dq (%rcx),%xmm4
21	cvttps2dq %xmm4,%xmm6
22	cvttps2dq (%rcx),%xmm4
23	movapd %xmm4,%xmm6
24	movapd (%rcx),%xmm4
25	movaps %xmm4,%xmm6
26	movaps (%rcx),%xmm4
27	movdqa %xmm4,%xmm6
28	movdqa (%rcx),%xmm4
29	movdqu %xmm4,%xmm6
30	movdqu (%rcx),%xmm4
31	movshdup %xmm4,%xmm6
32	movshdup (%rcx),%xmm4
33	movsldup %xmm4,%xmm6
34	movsldup (%rcx),%xmm4
35	movupd %xmm4,%xmm6
36	movupd (%rcx),%xmm4
37	movups %xmm4,%xmm6
38	movups (%rcx),%xmm4
39	pabsb %xmm4,%xmm6
40	pabsb (%rcx),%xmm4
41	pabsw %xmm4,%xmm6
42	pabsw (%rcx),%xmm4
43	pabsd %xmm4,%xmm6
44	pabsd (%rcx),%xmm4
45	phminposuw %xmm4,%xmm6
46	phminposuw (%rcx),%xmm4
47	ptest %xmm4,%xmm6
48	ptest (%rcx),%xmm4
49	rcpps %xmm4,%xmm6
50	rcpps (%rcx),%xmm4
51	rsqrtps %xmm4,%xmm6
52	rsqrtps (%rcx),%xmm4
53	sqrtpd %xmm4,%xmm6
54	sqrtpd (%rcx),%xmm4
55	sqrtps %xmm4,%xmm6
56	sqrtps (%rcx),%xmm4
57	aesimc %xmm4,%xmm6
58	aesimc (%rcx),%xmm4
59
60# Tests for op xmm, xmm/mem128
61	movapd %xmm4,%xmm6
62	movapd %xmm4,(%rcx)
63	movaps %xmm4,%xmm6
64	movaps %xmm4,(%rcx)
65	movdqa %xmm4,%xmm6
66	movdqa %xmm4,(%rcx)
67	movdqu %xmm4,%xmm6
68	movdqu %xmm4,(%rcx)
69	movupd %xmm4,%xmm6
70	movupd %xmm4,(%rcx)
71	movups %xmm4,%xmm6
72	movups %xmm4,(%rcx)
73
74# Tests for op mem128, xmm
75	lddqu (%rcx),%xmm4
76	movntdqa (%rcx),%xmm4
77
78# Tests for op xmm, mem128
79	movntdq %xmm4,(%rcx)
80	movntpd %xmm4,(%rcx)
81	movntps %xmm4,(%rcx)
82
83# Tests for op xmm/mem128, xmm[, xmm]
84	addpd %xmm4,%xmm6
85	addpd (%rcx),%xmm6
86	addps %xmm4,%xmm6
87	addps (%rcx),%xmm6
88	addsubpd %xmm4,%xmm6
89	addsubpd (%rcx),%xmm6
90	addsubps %xmm4,%xmm6
91	addsubps (%rcx),%xmm6
92	andnpd %xmm4,%xmm6
93	andnpd (%rcx),%xmm6
94	andnps %xmm4,%xmm6
95	andnps (%rcx),%xmm6
96	andpd %xmm4,%xmm6
97	andpd (%rcx),%xmm6
98	andps %xmm4,%xmm6
99	andps (%rcx),%xmm6
100	divpd %xmm4,%xmm6
101	divpd (%rcx),%xmm6
102	divps %xmm4,%xmm6
103	divps (%rcx),%xmm6
104	haddpd %xmm4,%xmm6
105	haddpd (%rcx),%xmm6
106	haddps %xmm4,%xmm6
107	haddps (%rcx),%xmm6
108	hsubpd %xmm4,%xmm6
109	hsubpd (%rcx),%xmm6
110	hsubps %xmm4,%xmm6
111	hsubps (%rcx),%xmm6
112	maxpd %xmm4,%xmm6
113	maxpd (%rcx),%xmm6
114	maxps %xmm4,%xmm6
115	maxps (%rcx),%xmm6
116	minpd %xmm4,%xmm6
117	minpd (%rcx),%xmm6
118	minps %xmm4,%xmm6
119	minps (%rcx),%xmm6
120	mulpd %xmm4,%xmm6
121	mulpd (%rcx),%xmm6
122	mulps %xmm4,%xmm6
123	mulps (%rcx),%xmm6
124	orpd %xmm4,%xmm6
125	orpd (%rcx),%xmm6
126	orps %xmm4,%xmm6
127	orps (%rcx),%xmm6
128	packsswb %xmm4,%xmm6
129	packsswb (%rcx),%xmm6
130	packssdw %xmm4,%xmm6
131	packssdw (%rcx),%xmm6
132	packuswb %xmm4,%xmm6
133	packuswb (%rcx),%xmm6
134	packusdw %xmm4,%xmm6
135	packusdw (%rcx),%xmm6
136	paddb %xmm4,%xmm6
137	paddb (%rcx),%xmm6
138	paddw %xmm4,%xmm6
139	paddw (%rcx),%xmm6
140	paddd %xmm4,%xmm6
141	paddd (%rcx),%xmm6
142	paddq %xmm4,%xmm6
143	paddq (%rcx),%xmm6
144	paddsb %xmm4,%xmm6
145	paddsb (%rcx),%xmm6
146	paddsw %xmm4,%xmm6
147	paddsw (%rcx),%xmm6
148	paddusb %xmm4,%xmm6
149	paddusb (%rcx),%xmm6
150	paddusw %xmm4,%xmm6
151	paddusw (%rcx),%xmm6
152	pand %xmm4,%xmm6
153	pand (%rcx),%xmm6
154	pandn %xmm4,%xmm6
155	pandn (%rcx),%xmm6
156	pavgb %xmm4,%xmm6
157	pavgb (%rcx),%xmm6
158	pavgw %xmm4,%xmm6
159	pavgw (%rcx),%xmm6
160	pclmullqlqdq %xmm4,%xmm6
161	pclmullqlqdq (%rcx),%xmm6
162	pclmulhqlqdq %xmm4,%xmm6
163	pclmulhqlqdq (%rcx),%xmm6
164	pclmullqhqdq %xmm4,%xmm6
165	pclmullqhqdq (%rcx),%xmm6
166	pclmulhqhqdq %xmm4,%xmm6
167	pclmulhqhqdq (%rcx),%xmm6
168	pcmpeqb %xmm4,%xmm6
169	pcmpeqb (%rcx),%xmm6
170	pcmpeqw %xmm4,%xmm6
171	pcmpeqw (%rcx),%xmm6
172	pcmpeqd %xmm4,%xmm6
173	pcmpeqd (%rcx),%xmm6
174	pcmpeqq %xmm4,%xmm6
175	pcmpeqq (%rcx),%xmm6
176	pcmpgtb %xmm4,%xmm6
177	pcmpgtb (%rcx),%xmm6
178	pcmpgtw %xmm4,%xmm6
179	pcmpgtw (%rcx),%xmm6
180	pcmpgtd %xmm4,%xmm6
181	pcmpgtd (%rcx),%xmm6
182	pcmpgtq %xmm4,%xmm6
183	pcmpgtq (%rcx),%xmm6
184	phaddw %xmm4,%xmm6
185	phaddw (%rcx),%xmm6
186	phaddd %xmm4,%xmm6
187	phaddd (%rcx),%xmm6
188	phaddsw %xmm4,%xmm6
189	phaddsw (%rcx),%xmm6
190	phsubw %xmm4,%xmm6
191	phsubw (%rcx),%xmm6
192	phsubd %xmm4,%xmm6
193	phsubd (%rcx),%xmm6
194	phsubsw %xmm4,%xmm6
195	phsubsw (%rcx),%xmm6
196	pmaddwd %xmm4,%xmm6
197	pmaddwd (%rcx),%xmm6
198	pmaddubsw %xmm4,%xmm6
199	pmaddubsw (%rcx),%xmm6
200	pmaxsb %xmm4,%xmm6
201	pmaxsb (%rcx),%xmm6
202	pmaxsw %xmm4,%xmm6
203	pmaxsw (%rcx),%xmm6
204	pmaxsd %xmm4,%xmm6
205	pmaxsd (%rcx),%xmm6
206	pmaxub %xmm4,%xmm6
207	pmaxub (%rcx),%xmm6
208	pmaxuw %xmm4,%xmm6
209	pmaxuw (%rcx),%xmm6
210	pmaxud %xmm4,%xmm6
211	pmaxud (%rcx),%xmm6
212	pminsb %xmm4,%xmm6
213	pminsb (%rcx),%xmm6
214	pminsw %xmm4,%xmm6
215	pminsw (%rcx),%xmm6
216	pminsd %xmm4,%xmm6
217	pminsd (%rcx),%xmm6
218	pminub %xmm4,%xmm6
219	pminub (%rcx),%xmm6
220	pminuw %xmm4,%xmm6
221	pminuw (%rcx),%xmm6
222	pminud %xmm4,%xmm6
223	pminud (%rcx),%xmm6
224	pmulhuw %xmm4,%xmm6
225	pmulhuw (%rcx),%xmm6
226	pmulhrsw %xmm4,%xmm6
227	pmulhrsw (%rcx),%xmm6
228	pmulhw %xmm4,%xmm6
229	pmulhw (%rcx),%xmm6
230	pmullw %xmm4,%xmm6
231	pmullw (%rcx),%xmm6
232	pmulld %xmm4,%xmm6
233	pmulld (%rcx),%xmm6
234	pmuludq %xmm4,%xmm6
235	pmuludq (%rcx),%xmm6
236	pmuldq %xmm4,%xmm6
237	pmuldq (%rcx),%xmm6
238	por %xmm4,%xmm6
239	por (%rcx),%xmm6
240	psadbw %xmm4,%xmm6
241	psadbw (%rcx),%xmm6
242	pshufb %xmm4,%xmm6
243	pshufb (%rcx),%xmm6
244	psignb %xmm4,%xmm6
245	psignb (%rcx),%xmm6
246	psignw %xmm4,%xmm6
247	psignw (%rcx),%xmm6
248	psignd %xmm4,%xmm6
249	psignd (%rcx),%xmm6
250	psllw %xmm4,%xmm6
251	psllw (%rcx),%xmm6
252	pslld %xmm4,%xmm6
253	pslld (%rcx),%xmm6
254	psllq %xmm4,%xmm6
255	psllq (%rcx),%xmm6
256	psraw %xmm4,%xmm6
257	psraw (%rcx),%xmm6
258	psrad %xmm4,%xmm6
259	psrad (%rcx),%xmm6
260	psrlw %xmm4,%xmm6
261	psrlw (%rcx),%xmm6
262	psrld %xmm4,%xmm6
263	psrld (%rcx),%xmm6
264	psrlq %xmm4,%xmm6
265	psrlq (%rcx),%xmm6
266	psubb %xmm4,%xmm6
267	psubb (%rcx),%xmm6
268	psubw %xmm4,%xmm6
269	psubw (%rcx),%xmm6
270	psubd %xmm4,%xmm6
271	psubd (%rcx),%xmm6
272	psubq %xmm4,%xmm6
273	psubq (%rcx),%xmm6
274	psubsb %xmm4,%xmm6
275	psubsb (%rcx),%xmm6
276	psubsw %xmm4,%xmm6
277	psubsw (%rcx),%xmm6
278	psubusb %xmm4,%xmm6
279	psubusb (%rcx),%xmm6
280	psubusw %xmm4,%xmm6
281	psubusw (%rcx),%xmm6
282	punpckhbw %xmm4,%xmm6
283	punpckhbw (%rcx),%xmm6
284	punpckhwd %xmm4,%xmm6
285	punpckhwd (%rcx),%xmm6
286	punpckhdq %xmm4,%xmm6
287	punpckhdq (%rcx),%xmm6
288	punpckhqdq %xmm4,%xmm6
289	punpckhqdq (%rcx),%xmm6
290	punpcklbw %xmm4,%xmm6
291	punpcklbw (%rcx),%xmm6
292	punpcklwd %xmm4,%xmm6
293	punpcklwd (%rcx),%xmm6
294	punpckldq %xmm4,%xmm6
295	punpckldq (%rcx),%xmm6
296	punpcklqdq %xmm4,%xmm6
297	punpcklqdq (%rcx),%xmm6
298	pxor %xmm4,%xmm6
299	pxor (%rcx),%xmm6
300	subpd %xmm4,%xmm6
301	subpd (%rcx),%xmm6
302	subps %xmm4,%xmm6
303	subps (%rcx),%xmm6
304	unpckhpd %xmm4,%xmm6
305	unpckhpd (%rcx),%xmm6
306	unpckhps %xmm4,%xmm6
307	unpckhps (%rcx),%xmm6
308	unpcklpd %xmm4,%xmm6
309	unpcklpd (%rcx),%xmm6
310	unpcklps %xmm4,%xmm6
311	unpcklps (%rcx),%xmm6
312	xorpd %xmm4,%xmm6
313	xorpd (%rcx),%xmm6
314	xorps %xmm4,%xmm6
315	xorps (%rcx),%xmm6
316	aesenc %xmm4,%xmm6
317	aesenc (%rcx),%xmm6
318	aesenclast %xmm4,%xmm6
319	aesenclast (%rcx),%xmm6
320	aesdec %xmm4,%xmm6
321	aesdec (%rcx),%xmm6
322	aesdeclast %xmm4,%xmm6
323	aesdeclast (%rcx),%xmm6
324	cmpeqpd %xmm4,%xmm6
325	cmpeqpd (%rcx),%xmm6
326	cmpeqps %xmm4,%xmm6
327	cmpeqps (%rcx),%xmm6
328	cmpltpd %xmm4,%xmm6
329	cmpltpd (%rcx),%xmm6
330	cmpltps %xmm4,%xmm6
331	cmpltps (%rcx),%xmm6
332	cmplepd %xmm4,%xmm6
333	cmplepd (%rcx),%xmm6
334	cmpleps %xmm4,%xmm6
335	cmpleps (%rcx),%xmm6
336	cmpunordpd %xmm4,%xmm6
337	cmpunordpd (%rcx),%xmm6
338	cmpunordps %xmm4,%xmm6
339	cmpunordps (%rcx),%xmm6
340	cmpneqpd %xmm4,%xmm6
341	cmpneqpd (%rcx),%xmm6
342	cmpneqps %xmm4,%xmm6
343	cmpneqps (%rcx),%xmm6
344	cmpnltpd %xmm4,%xmm6
345	cmpnltpd (%rcx),%xmm6
346	cmpnltps %xmm4,%xmm6
347	cmpnltps (%rcx),%xmm6
348	cmpnlepd %xmm4,%xmm6
349	cmpnlepd (%rcx),%xmm6
350	cmpnleps %xmm4,%xmm6
351	cmpnleps (%rcx),%xmm6
352	cmpordpd %xmm4,%xmm6
353	cmpordpd (%rcx),%xmm6
354	cmpordps %xmm4,%xmm6
355	cmpordps (%rcx),%xmm6
356
357# Tests for op imm8, xmm/mem128, xmm
358	aeskeygenassist $100,%xmm4,%xmm6
359	aeskeygenassist $100,(%rcx),%xmm6
360	pcmpestri $100,%xmm4,%xmm6
361	pcmpestri $100,(%rcx),%xmm6
362	pcmpestrm $100,%xmm4,%xmm6
363	pcmpestrm $100,(%rcx),%xmm6
364	pcmpistri $100,%xmm4,%xmm6
365	pcmpistri $100,(%rcx),%xmm6
366	pcmpistrm $100,%xmm4,%xmm6
367	pcmpistrm $100,(%rcx),%xmm6
368	pshufd $100,%xmm4,%xmm6
369	pshufd $100,(%rcx),%xmm6
370	pshufhw $100,%xmm4,%xmm6
371	pshufhw $100,(%rcx),%xmm6
372	pshuflw $100,%xmm4,%xmm6
373	pshuflw $100,(%rcx),%xmm6
374	roundpd $100,%xmm4,%xmm6
375	roundpd $100,(%rcx),%xmm6
376	roundps $100,%xmm4,%xmm6
377	roundps $100,(%rcx),%xmm6
378
379# Tests for op imm8, xmm/mem128, xmm[, xmm]
380	blendpd $100,%xmm4,%xmm6
381	blendpd $100,(%rcx),%xmm6
382	blendps $100,%xmm4,%xmm6
383	blendps $100,(%rcx),%xmm6
384	cmppd $100,%xmm4,%xmm6
385	cmppd $100,(%rcx),%xmm6
386	cmpps $100,%xmm4,%xmm6
387	cmpps $100,(%rcx),%xmm6
388	dppd $100,%xmm4,%xmm6
389	dppd $100,(%rcx),%xmm6
390	dpps $100,%xmm4,%xmm6
391	dpps $100,(%rcx),%xmm6
392	mpsadbw $100,%xmm4,%xmm6
393	mpsadbw $100,(%rcx),%xmm6
394	palignr $100,%xmm4,%xmm6
395	palignr $100,(%rcx),%xmm6
396	pblendw $100,%xmm4,%xmm6
397	pblendw $100,(%rcx),%xmm6
398	pclmulqdq $100,%xmm4,%xmm6
399	pclmulqdq $100,(%rcx),%xmm6
400	shufpd $100,%xmm4,%xmm6
401	shufpd $100,(%rcx),%xmm6
402	shufps $100,%xmm4,%xmm6
403	shufps $100,(%rcx),%xmm6
404
405# Tests for op xmm0, xmm/mem128, xmm[, xmm]
406	blendvpd %xmm0,%xmm4,%xmm6
407	blendvpd %xmm0,(%rcx),%xmm6
408	blendvpd %xmm4,%xmm6
409	blendvpd (%rcx),%xmm6
410	blendvps %xmm0,%xmm4,%xmm6
411	blendvps %xmm0,(%rcx),%xmm6
412	blendvps %xmm4,%xmm6
413	blendvps (%rcx),%xmm6
414	pblendvb %xmm0,%xmm4,%xmm6
415	pblendvb %xmm0,(%rcx),%xmm6
416	pblendvb %xmm4,%xmm6
417	pblendvb (%rcx),%xmm6
418
419# Tests for op xmm/mem64, xmm
420	comisd %xmm4,%xmm6
421	comisd (%rcx),%xmm4
422	cvtdq2pd %xmm4,%xmm6
423	cvtdq2pd (%rcx),%xmm4
424	cvtps2pd %xmm4,%xmm6
425	cvtps2pd (%rcx),%xmm4
426	movddup %xmm4,%xmm6
427	movddup (%rcx),%xmm4
428	pmovsxbw %xmm4,%xmm6
429	pmovsxbw (%rcx),%xmm4
430	pmovsxwd %xmm4,%xmm6
431	pmovsxwd (%rcx),%xmm4
432	pmovsxdq %xmm4,%xmm6
433	pmovsxdq (%rcx),%xmm4
434	pmovzxbw %xmm4,%xmm6
435	pmovzxbw (%rcx),%xmm4
436	pmovzxwd %xmm4,%xmm6
437	pmovzxwd (%rcx),%xmm4
438	pmovzxdq %xmm4,%xmm6
439	pmovzxdq (%rcx),%xmm4
440	ucomisd %xmm4,%xmm6
441	ucomisd (%rcx),%xmm4
442
443# Tests for op mem64, xmm
444	movsd (%rcx),%xmm4
445
446# Tests for op xmm, mem64
447	movlpd %xmm4,(%rcx)
448	movlps %xmm4,(%rcx)
449	movhpd %xmm4,(%rcx)
450	movhps %xmm4,(%rcx)
451	movsd %xmm4,(%rcx)
452
453# Tests for op xmm, regq/mem64
454# Tests for op regq/mem64, xmm
455	movd %xmm4,%rcx
456	movd %rcx,%xmm4
457	movq %xmm4,%rcx
458	movq %rcx,%xmm4
459	movq %xmm4,(%rcx)
460	movq (%rcx),%xmm4
461
462# Tests for op xmm/mem64, regl
463	cvtsd2si %xmm4,%ecx
464	cvtsd2si (%rcx),%ecx
465	cvttsd2si %xmm4,%ecx
466	cvttsd2si (%rcx),%ecx
467
468# Tests for op xmm/mem64, regq
469	cvtsd2si %xmm4,%rcx
470	cvtsd2si (%rcx),%rcx
471	cvttsd2si %xmm4,%rcx
472	cvttsd2si (%rcx),%rcx
473
474# Tests for op regq/mem64, xmm[, xmm]
475	cvtsi2sdq %rcx,%xmm4
476	cvtsi2sdq (%rcx),%xmm4
477	cvtsi2ssq %rcx,%xmm4
478	cvtsi2ssq (%rcx),%xmm4
479
480# Tests for op imm8, regq/mem64, xmm[, xmm]
481	pinsrq $100,%rcx,%xmm4
482	pinsrq $100,(%rcx),%xmm4
483
484# Testsf for op imm8, xmm, regq/mem64
485	pextrq $100,%xmm4,%rcx
486	pextrq $100,%xmm4,(%rcx)
487
488# Tests for op mem64, xmm[, xmm]
489	movlpd (%rcx),%xmm4
490	movlps (%rcx),%xmm4
491	movhpd (%rcx),%xmm4
492	movhps (%rcx),%xmm4
493
494# Tests for op imm8, xmm/mem64, xmm[, xmm]
495	cmpsd $100,%xmm4,%xmm6
496	cmpsd $100,(%rcx),%xmm6
497	roundsd $100,%xmm4,%xmm6
498	roundsd $100,(%rcx),%xmm6
499
500# Tests for op xmm/mem64, xmm[, xmm]
501	addsd %xmm4,%xmm6
502	addsd (%rcx),%xmm6
503	cvtsd2ss %xmm4,%xmm6
504	cvtsd2ss (%rcx),%xmm6
505	divsd %xmm4,%xmm6
506	divsd (%rcx),%xmm6
507	maxsd %xmm4,%xmm6
508	maxsd (%rcx),%xmm6
509	minsd %xmm4,%xmm6
510	minsd (%rcx),%xmm6
511	mulsd %xmm4,%xmm6
512	mulsd (%rcx),%xmm6
513	sqrtsd %xmm4,%xmm6
514	sqrtsd (%rcx),%xmm6
515	subsd %xmm4,%xmm6
516	subsd (%rcx),%xmm6
517	cmpeqsd %xmm4,%xmm6
518	cmpeqsd (%rcx),%xmm6
519	cmpltsd %xmm4,%xmm6
520	cmpltsd (%rcx),%xmm6
521	cmplesd %xmm4,%xmm6
522	cmplesd (%rcx),%xmm6
523	cmpunordsd %xmm4,%xmm6
524	cmpunordsd (%rcx),%xmm6
525	cmpneqsd %xmm4,%xmm6
526	cmpneqsd (%rcx),%xmm6
527	cmpnltsd %xmm4,%xmm6
528	cmpnltsd (%rcx),%xmm6
529	cmpnlesd %xmm4,%xmm6
530	cmpnlesd (%rcx),%xmm6
531	cmpordsd %xmm4,%xmm6
532	cmpordsd (%rcx),%xmm6
533
534# Tests for op xmm/mem32, xmm[, xmm]
535	addss %xmm4,%xmm6
536	addss (%rcx),%xmm6
537	cvtss2sd %xmm4,%xmm6
538	cvtss2sd (%rcx),%xmm6
539	divss %xmm4,%xmm6
540	divss (%rcx),%xmm6
541	maxss %xmm4,%xmm6
542	maxss (%rcx),%xmm6
543	minss %xmm4,%xmm6
544	minss (%rcx),%xmm6
545	mulss %xmm4,%xmm6
546	mulss (%rcx),%xmm6
547	rcpss %xmm4,%xmm6
548	rcpss (%rcx),%xmm6
549	rsqrtss %xmm4,%xmm6
550	rsqrtss (%rcx),%xmm6
551	sqrtss %xmm4,%xmm6
552	sqrtss (%rcx),%xmm6
553	subss %xmm4,%xmm6
554	subss (%rcx),%xmm6
555	cmpeqss %xmm4,%xmm6
556	cmpeqss (%rcx),%xmm6
557	cmpltss %xmm4,%xmm6
558	cmpltss (%rcx),%xmm6
559	cmpless %xmm4,%xmm6
560	cmpless (%rcx),%xmm6
561	cmpunordss %xmm4,%xmm6
562	cmpunordss (%rcx),%xmm6
563	cmpneqss %xmm4,%xmm6
564	cmpneqss (%rcx),%xmm6
565	cmpnltss %xmm4,%xmm6
566	cmpnltss (%rcx),%xmm6
567	cmpnless %xmm4,%xmm6
568	cmpnless (%rcx),%xmm6
569	cmpordss %xmm4,%xmm6
570	cmpordss (%rcx),%xmm6
571
572# Tests for op xmm/mem32, xmm
573	comiss %xmm4,%xmm6
574	comiss (%rcx),%xmm4
575	pmovsxbd %xmm4,%xmm6
576	pmovsxbd (%rcx),%xmm4
577	pmovsxwq %xmm4,%xmm6
578	pmovsxwq (%rcx),%xmm4
579	pmovzxbd %xmm4,%xmm6
580	pmovzxbd (%rcx),%xmm4
581	pmovzxwq %xmm4,%xmm6
582	pmovzxwq (%rcx),%xmm4
583	ucomiss %xmm4,%xmm6
584	ucomiss (%rcx),%xmm4
585
586# Tests for op mem32, xmm
587	movss (%rcx),%xmm4
588
589# Tests for op xmm, mem32
590	movss %xmm4,(%rcx)
591
592# Tests for op xmm, regl/mem32
593# Tests for op regl/mem32, xmm
594	movd %xmm4,%ecx
595	movd %xmm4,(%rcx)
596	movd %ecx,%xmm4
597	movd (%rcx),%xmm4
598
599# Tests for op xmm/mem32, regl
600	cvtss2si %xmm4,%ecx
601	cvtss2si (%rcx),%ecx
602	cvttss2si %xmm4,%ecx
603	cvttss2si (%rcx),%ecx
604
605# Tests for op xmm/mem32, regq
606	cvtss2si %xmm4,%rcx
607	cvtss2si (%rcx),%rcx
608	cvttss2si %xmm4,%rcx
609	cvttss2si (%rcx),%rcx
610
611# Tests for op xmm, regq
612	movmskpd %xmm4,%rcx
613	movmskps %xmm4,%rcx
614	pmovmskb %xmm4,%rcx
615
616# Tests for op imm8, xmm, regq/mem32
617	extractps $100,%xmm4,%rcx
618	extractps $100,%xmm4,(%rcx)
619# Tests for op imm8, xmm, regl/mem32
620	pextrd $100,%xmm4,%ecx
621	pextrd $100,%xmm4,(%rcx)
622	extractps $100,%xmm4,%ecx
623	extractps $100,%xmm4,(%rcx)
624
625# Tests for op regl/mem32, xmm[, xmm]
626	cvtsi2sd %ecx,%xmm4
627	cvtsi2sd (%rcx),%xmm4
628	cvtsi2ss %ecx,%xmm4
629	cvtsi2ss (%rcx),%xmm4
630
631# Tests for op imm8, xmm/mem32, xmm[, xmm]
632	cmpss $100,%xmm4,%xmm6
633	cmpss $100,(%rcx),%xmm6
634	insertps $100,%xmm4,%xmm6
635	insertps $100,(%rcx),%xmm6
636	roundss $100,%xmm4,%xmm6
637	roundss $100,(%rcx),%xmm6
638
639# Tests for op xmm/m16, xmm
640	pmovsxbq %xmm4,%xmm6
641	pmovsxbq (%rcx),%xmm4
642	pmovzxbq %xmm4,%xmm6
643	pmovzxbq (%rcx),%xmm4
644
645# Tests for op imm8, xmm, regl/mem16
646	pextrw $100,%xmm4,%ecx
647	pextrw $100,%xmm4,(%rcx)
648
649# Tests for op imm8, xmm, regq/mem16
650	pextrw $100,%xmm4,%rcx
651	pextrw $100,%xmm4,(%rcx)
652
653# Tests for op imm8, regl/mem16, xmm[, xmm]
654	pinsrw $100,%ecx,%xmm4
655	pinsrw $100,(%rcx),%xmm4
656
657
658	pinsrw $100,%rcx,%xmm4
659	pinsrw $100,(%rcx),%xmm4
660
661# Tests for op imm8, xmm, regl/mem8
662	pextrb $100,%xmm4,%ecx
663	pextrb $100,%xmm4,(%rcx)
664
665# Tests for op imm8, regl/mem8, xmm[, xmm]
666	pinsrb $100,%ecx,%xmm4
667	pinsrb $100,(%rcx),%xmm4
668
669# Tests for op imm8, xmm, regq
670	pextrw $100,%xmm4,%rcx
671# Tests for op imm8, xmm, regq/mem8
672	pextrb $100,%xmm4,%rcx
673	pextrb $100,%xmm4,(%rcx)
674
675# Tests for op imm8, regl/mem8, xmm[, xmm]
676	pinsrb $100,%ecx,%xmm4
677	pinsrb $100,(%rcx),%xmm4
678
679# Tests for op xmm, xmm
680	maskmovdqu %xmm4,%xmm6
681	movq %xmm4,%xmm6
682
683# Tests for op xmm, regl
684	movmskpd %xmm4,%ecx
685	movmskps %xmm4,%ecx
686	pmovmskb %xmm4,%ecx
687# Tests for op xmm, xmm[, xmm]
688	movhlps %xmm4,%xmm6
689	movlhps %xmm4,%xmm6
690	movsd %xmm4,%xmm6
691	movss %xmm4,%xmm6
692
693# Tests for op imm8, xmm[, xmm]
694	pslld $100,%xmm4
695	pslldq $100,%xmm4
696	psllq $100,%xmm4
697	psllw $100,%xmm4
698	psrad $100,%xmm4
699	psraw $100,%xmm4
700	psrld $100,%xmm4
701	psrldq $100,%xmm4
702	psrlq $100,%xmm4
703	psrlw $100,%xmm4
704
705# Tests for op imm8, xmm, regl
706	pextrw $100,%xmm4,%ecx
707
708
709	.intel_syntax noprefix
710# Tests for op mem64
711	ldmxcsr DWORD PTR [rcx]
712	stmxcsr DWORD PTR [rcx]
713
714# Tests for op xmm/mem128, xmm
715	cvtdq2ps xmm6,xmm4
716	cvtdq2ps xmm4,XMMWORD PTR [rcx]
717	cvtpd2dq xmm6,xmm4
718	cvtpd2dq xmm4,XMMWORD PTR [rcx]
719	cvtpd2ps xmm6,xmm4
720	cvtpd2ps xmm4,XMMWORD PTR [rcx]
721	cvtps2dq xmm6,xmm4
722	cvtps2dq xmm4,XMMWORD PTR [rcx]
723	cvttpd2dq xmm6,xmm4
724	cvttpd2dq xmm4,XMMWORD PTR [rcx]
725	cvttps2dq xmm6,xmm4
726	cvttps2dq xmm4,XMMWORD PTR [rcx]
727	movapd xmm6,xmm4
728	movapd xmm4,XMMWORD PTR [rcx]
729	movaps xmm6,xmm4
730	movaps xmm4,XMMWORD PTR [rcx]
731	movdqa xmm6,xmm4
732	movdqa xmm4,XMMWORD PTR [rcx]
733	movdqu xmm6,xmm4
734	movdqu xmm4,XMMWORD PTR [rcx]
735	movshdup xmm6,xmm4
736	movshdup xmm4,XMMWORD PTR [rcx]
737	movsldup xmm6,xmm4
738	movsldup xmm4,XMMWORD PTR [rcx]
739	movupd xmm6,xmm4
740	movupd xmm4,XMMWORD PTR [rcx]
741	movups xmm6,xmm4
742	movups xmm4,XMMWORD PTR [rcx]
743	pabsb xmm6,xmm4
744	pabsb xmm4,XMMWORD PTR [rcx]
745	pabsw xmm6,xmm4
746	pabsw xmm4,XMMWORD PTR [rcx]
747	pabsd xmm6,xmm4
748	pabsd xmm4,XMMWORD PTR [rcx]
749	phminposuw xmm6,xmm4
750	phminposuw xmm4,XMMWORD PTR [rcx]
751	ptest xmm6,xmm4
752	ptest xmm4,XMMWORD PTR [rcx]
753	rcpps xmm6,xmm4
754	rcpps xmm4,XMMWORD PTR [rcx]
755	rsqrtps xmm6,xmm4
756	rsqrtps xmm4,XMMWORD PTR [rcx]
757	sqrtpd xmm6,xmm4
758	sqrtpd xmm4,XMMWORD PTR [rcx]
759	sqrtps xmm6,xmm4
760	sqrtps xmm4,XMMWORD PTR [rcx]
761	aesimc xmm6,xmm4
762	aesimc xmm4,XMMWORD PTR [rcx]
763
764# Tests for op xmm, xmm/mem128
765	movapd xmm6,xmm4
766	movapd XMMWORD PTR [rcx],xmm4
767	movaps xmm6,xmm4
768	movaps XMMWORD PTR [rcx],xmm4
769	movdqa xmm6,xmm4
770	movdqa XMMWORD PTR [rcx],xmm4
771	movdqu xmm6,xmm4
772	movdqu XMMWORD PTR [rcx],xmm4
773	movupd xmm6,xmm4
774	movupd XMMWORD PTR [rcx],xmm4
775	movups xmm6,xmm4
776	movups XMMWORD PTR [rcx],xmm4
777
778# Tests for op mem128, xmm
779	lddqu xmm4,XMMWORD PTR [rcx]
780	movntdqa xmm4,XMMWORD PTR [rcx]
781
782# Tests for op xmm, mem128
783	movntdq XMMWORD PTR [rcx],xmm4
784	movntpd XMMWORD PTR [rcx],xmm4
785	movntps XMMWORD PTR [rcx],xmm4
786
787# Tests for op xmm/mem128, xmm[, xmm]
788	addpd xmm6,xmm4
789	addpd xmm6,XMMWORD PTR [rcx]
790	addps xmm6,xmm4
791	addps xmm6,XMMWORD PTR [rcx]
792	addsubpd xmm6,xmm4
793	addsubpd xmm6,XMMWORD PTR [rcx]
794	addsubps xmm6,xmm4
795	addsubps xmm6,XMMWORD PTR [rcx]
796	andnpd xmm6,xmm4
797	andnpd xmm6,XMMWORD PTR [rcx]
798	andnps xmm6,xmm4
799	andnps xmm6,XMMWORD PTR [rcx]
800	andpd xmm6,xmm4
801	andpd xmm6,XMMWORD PTR [rcx]
802	andps xmm6,xmm4
803	andps xmm6,XMMWORD PTR [rcx]
804	divpd xmm6,xmm4
805	divpd xmm6,XMMWORD PTR [rcx]
806	divps xmm6,xmm4
807	divps xmm6,XMMWORD PTR [rcx]
808	haddpd xmm6,xmm4
809	haddpd xmm6,XMMWORD PTR [rcx]
810	haddps xmm6,xmm4
811	haddps xmm6,XMMWORD PTR [rcx]
812	hsubpd xmm6,xmm4
813	hsubpd xmm6,XMMWORD PTR [rcx]
814	hsubps xmm6,xmm4
815	hsubps xmm6,XMMWORD PTR [rcx]
816	maxpd xmm6,xmm4
817	maxpd xmm6,XMMWORD PTR [rcx]
818	maxps xmm6,xmm4
819	maxps xmm6,XMMWORD PTR [rcx]
820	minpd xmm6,xmm4
821	minpd xmm6,XMMWORD PTR [rcx]
822	minps xmm6,xmm4
823	minps xmm6,XMMWORD PTR [rcx]
824	mulpd xmm6,xmm4
825	mulpd xmm6,XMMWORD PTR [rcx]
826	mulps xmm6,xmm4
827	mulps xmm6,XMMWORD PTR [rcx]
828	orpd xmm6,xmm4
829	orpd xmm6,XMMWORD PTR [rcx]
830	orps xmm6,xmm4
831	orps xmm6,XMMWORD PTR [rcx]
832	packsswb xmm6,xmm4
833	packsswb xmm6,XMMWORD PTR [rcx]
834	packssdw xmm6,xmm4
835	packssdw xmm6,XMMWORD PTR [rcx]
836	packuswb xmm6,xmm4
837	packuswb xmm6,XMMWORD PTR [rcx]
838	packusdw xmm6,xmm4
839	packusdw xmm6,XMMWORD PTR [rcx]
840	paddb xmm6,xmm4
841	paddb xmm6,XMMWORD PTR [rcx]
842	paddw xmm6,xmm4
843	paddw xmm6,XMMWORD PTR [rcx]
844	paddd xmm6,xmm4
845	paddd xmm6,XMMWORD PTR [rcx]
846	paddq xmm6,xmm4
847	paddq xmm6,XMMWORD PTR [rcx]
848	paddsb xmm6,xmm4
849	paddsb xmm6,XMMWORD PTR [rcx]
850	paddsw xmm6,xmm4
851	paddsw xmm6,XMMWORD PTR [rcx]
852	paddusb xmm6,xmm4
853	paddusb xmm6,XMMWORD PTR [rcx]
854	paddusw xmm6,xmm4
855	paddusw xmm6,XMMWORD PTR [rcx]
856	pand xmm6,xmm4
857	pand xmm6,XMMWORD PTR [rcx]
858	pandn xmm6,xmm4
859	pandn xmm6,XMMWORD PTR [rcx]
860	pavgb xmm6,xmm4
861	pavgb xmm6,XMMWORD PTR [rcx]
862	pavgw xmm6,xmm4
863	pavgw xmm6,XMMWORD PTR [rcx]
864	pclmullqlqdq xmm6,xmm4
865	pclmullqlqdq xmm6,XMMWORD PTR [rcx]
866	pclmulhqlqdq xmm6,xmm4
867	pclmulhqlqdq xmm6,XMMWORD PTR [rcx]
868	pclmullqhqdq xmm6,xmm4
869	pclmullqhqdq xmm6,XMMWORD PTR [rcx]
870	pclmulhqhqdq xmm6,xmm4
871	pclmulhqhqdq xmm6,XMMWORD PTR [rcx]
872	pcmpeqb xmm6,xmm4
873	pcmpeqb xmm6,XMMWORD PTR [rcx]
874	pcmpeqw xmm6,xmm4
875	pcmpeqw xmm6,XMMWORD PTR [rcx]
876	pcmpeqd xmm6,xmm4
877	pcmpeqd xmm6,XMMWORD PTR [rcx]
878	pcmpeqq xmm6,xmm4
879	pcmpeqq xmm6,XMMWORD PTR [rcx]
880	pcmpgtb xmm6,xmm4
881	pcmpgtb xmm6,XMMWORD PTR [rcx]
882	pcmpgtw xmm6,xmm4
883	pcmpgtw xmm6,XMMWORD PTR [rcx]
884	pcmpgtd xmm6,xmm4
885	pcmpgtd xmm6,XMMWORD PTR [rcx]
886	pcmpgtq xmm6,xmm4
887	pcmpgtq xmm6,XMMWORD PTR [rcx]
888	phaddw xmm6,xmm4
889	phaddw xmm6,XMMWORD PTR [rcx]
890	phaddd xmm6,xmm4
891	phaddd xmm6,XMMWORD PTR [rcx]
892	phaddsw xmm6,xmm4
893	phaddsw xmm6,XMMWORD PTR [rcx]
894	phsubw xmm6,xmm4
895	phsubw xmm6,XMMWORD PTR [rcx]
896	phsubd xmm6,xmm4
897	phsubd xmm6,XMMWORD PTR [rcx]
898	phsubsw xmm6,xmm4
899	phsubsw xmm6,XMMWORD PTR [rcx]
900	pmaddwd xmm6,xmm4
901	pmaddwd xmm6,XMMWORD PTR [rcx]
902	pmaddubsw xmm6,xmm4
903	pmaddubsw xmm6,XMMWORD PTR [rcx]
904	pmaxsb xmm6,xmm4
905	pmaxsb xmm6,XMMWORD PTR [rcx]
906	pmaxsw xmm6,xmm4
907	pmaxsw xmm6,XMMWORD PTR [rcx]
908	pmaxsd xmm6,xmm4
909	pmaxsd xmm6,XMMWORD PTR [rcx]
910	pmaxub xmm6,xmm4
911	pmaxub xmm6,XMMWORD PTR [rcx]
912	pmaxuw xmm6,xmm4
913	pmaxuw xmm6,XMMWORD PTR [rcx]
914	pmaxud xmm6,xmm4
915	pmaxud xmm6,XMMWORD PTR [rcx]
916	pminsb xmm6,xmm4
917	pminsb xmm6,XMMWORD PTR [rcx]
918	pminsw xmm6,xmm4
919	pminsw xmm6,XMMWORD PTR [rcx]
920	pminsd xmm6,xmm4
921	pminsd xmm6,XMMWORD PTR [rcx]
922	pminub xmm6,xmm4
923	pminub xmm6,XMMWORD PTR [rcx]
924	pminuw xmm6,xmm4
925	pminuw xmm6,XMMWORD PTR [rcx]
926	pminud xmm6,xmm4
927	pminud xmm6,XMMWORD PTR [rcx]
928	pmulhuw xmm6,xmm4
929	pmulhuw xmm6,XMMWORD PTR [rcx]
930	pmulhrsw xmm6,xmm4
931	pmulhrsw xmm6,XMMWORD PTR [rcx]
932	pmulhw xmm6,xmm4
933	pmulhw xmm6,XMMWORD PTR [rcx]
934	pmullw xmm6,xmm4
935	pmullw xmm6,XMMWORD PTR [rcx]
936	pmulld xmm6,xmm4
937	pmulld xmm6,XMMWORD PTR [rcx]
938	pmuludq xmm6,xmm4
939	pmuludq xmm6,XMMWORD PTR [rcx]
940	pmuldq xmm6,xmm4
941	pmuldq xmm6,XMMWORD PTR [rcx]
942	por xmm6,xmm4
943	por xmm6,XMMWORD PTR [rcx]
944	psadbw xmm6,xmm4
945	psadbw xmm6,XMMWORD PTR [rcx]
946	pshufb xmm6,xmm4
947	pshufb xmm6,XMMWORD PTR [rcx]
948	psignb xmm6,xmm4
949	psignb xmm6,XMMWORD PTR [rcx]
950	psignw xmm6,xmm4
951	psignw xmm6,XMMWORD PTR [rcx]
952	psignd xmm6,xmm4
953	psignd xmm6,XMMWORD PTR [rcx]
954	psllw xmm6,xmm4
955	psllw xmm6,XMMWORD PTR [rcx]
956	pslld xmm6,xmm4
957	pslld xmm6,XMMWORD PTR [rcx]
958	psllq xmm6,xmm4
959	psllq xmm6,XMMWORD PTR [rcx]
960	psraw xmm6,xmm4
961	psraw xmm6,XMMWORD PTR [rcx]
962	psrad xmm6,xmm4
963	psrad xmm6,XMMWORD PTR [rcx]
964	psrlw xmm6,xmm4
965	psrlw xmm6,XMMWORD PTR [rcx]
966	psrld xmm6,xmm4
967	psrld xmm6,XMMWORD PTR [rcx]
968	psrlq xmm6,xmm4
969	psrlq xmm6,XMMWORD PTR [rcx]
970	psubb xmm6,xmm4
971	psubb xmm6,XMMWORD PTR [rcx]
972	psubw xmm6,xmm4
973	psubw xmm6,XMMWORD PTR [rcx]
974	psubd xmm6,xmm4
975	psubd xmm6,XMMWORD PTR [rcx]
976	psubq xmm6,xmm4
977	psubq xmm6,XMMWORD PTR [rcx]
978	psubsb xmm6,xmm4
979	psubsb xmm6,XMMWORD PTR [rcx]
980	psubsw xmm6,xmm4
981	psubsw xmm6,XMMWORD PTR [rcx]
982	psubusb xmm6,xmm4
983	psubusb xmm6,XMMWORD PTR [rcx]
984	psubusw xmm6,xmm4
985	psubusw xmm6,XMMWORD PTR [rcx]
986	punpckhbw xmm6,xmm4
987	punpckhbw xmm6,XMMWORD PTR [rcx]
988	punpckhwd xmm6,xmm4
989	punpckhwd xmm6,XMMWORD PTR [rcx]
990	punpckhdq xmm6,xmm4
991	punpckhdq xmm6,XMMWORD PTR [rcx]
992	punpckhqdq xmm6,xmm4
993	punpckhqdq xmm6,XMMWORD PTR [rcx]
994	punpcklbw xmm6,xmm4
995	punpcklbw xmm6,XMMWORD PTR [rcx]
996	punpcklwd xmm6,xmm4
997	punpcklwd xmm6,XMMWORD PTR [rcx]
998	punpckldq xmm6,xmm4
999	punpckldq xmm6,XMMWORD PTR [rcx]
1000	punpcklqdq xmm6,xmm4
1001	punpcklqdq xmm6,XMMWORD PTR [rcx]
1002	pxor xmm6,xmm4
1003	pxor xmm6,XMMWORD PTR [rcx]
1004	subpd xmm6,xmm4
1005	subpd xmm6,XMMWORD PTR [rcx]
1006	subps xmm6,xmm4
1007	subps xmm6,XMMWORD PTR [rcx]
1008	unpckhpd xmm6,xmm4
1009	unpckhpd xmm6,XMMWORD PTR [rcx]
1010	unpckhps xmm6,xmm4
1011	unpckhps xmm6,XMMWORD PTR [rcx]
1012	unpcklpd xmm6,xmm4
1013	unpcklpd xmm6,XMMWORD PTR [rcx]
1014	unpcklps xmm6,xmm4
1015	unpcklps xmm6,XMMWORD PTR [rcx]
1016	xorpd xmm6,xmm4
1017	xorpd xmm6,XMMWORD PTR [rcx]
1018	xorps xmm6,xmm4
1019	xorps xmm6,XMMWORD PTR [rcx]
1020	aesenc xmm6,xmm4
1021	aesenc xmm6,XMMWORD PTR [rcx]
1022	aesenclast xmm6,xmm4
1023	aesenclast xmm6,XMMWORD PTR [rcx]
1024	aesdec xmm6,xmm4
1025	aesdec xmm6,XMMWORD PTR [rcx]
1026	aesdeclast xmm6,xmm4
1027	aesdeclast xmm6,XMMWORD PTR [rcx]
1028	cmpeqpd xmm6,xmm4
1029	cmpeqpd xmm6,XMMWORD PTR [rcx]
1030	cmpeqps xmm6,xmm4
1031	cmpeqps xmm6,XMMWORD PTR [rcx]
1032	cmpltpd xmm6,xmm4
1033	cmpltpd xmm6,XMMWORD PTR [rcx]
1034	cmpltps xmm6,xmm4
1035	cmpltps xmm6,XMMWORD PTR [rcx]
1036	cmplepd xmm6,xmm4
1037	cmplepd xmm6,XMMWORD PTR [rcx]
1038	cmpleps xmm6,xmm4
1039	cmpleps xmm6,XMMWORD PTR [rcx]
1040	cmpunordpd xmm6,xmm4
1041	cmpunordpd xmm6,XMMWORD PTR [rcx]
1042	cmpunordps xmm6,xmm4
1043	cmpunordps xmm6,XMMWORD PTR [rcx]
1044	cmpneqpd xmm6,xmm4
1045	cmpneqpd xmm6,XMMWORD PTR [rcx]
1046	cmpneqps xmm6,xmm4
1047	cmpneqps xmm6,XMMWORD PTR [rcx]
1048	cmpnltpd xmm6,xmm4
1049	cmpnltpd xmm6,XMMWORD PTR [rcx]
1050	cmpnltps xmm6,xmm4
1051	cmpnltps xmm6,XMMWORD PTR [rcx]
1052	cmpnlepd xmm6,xmm4
1053	cmpnlepd xmm6,XMMWORD PTR [rcx]
1054	cmpnleps xmm6,xmm4
1055	cmpnleps xmm6,XMMWORD PTR [rcx]
1056	cmpordpd xmm6,xmm4
1057	cmpordpd xmm6,XMMWORD PTR [rcx]
1058	cmpordps xmm6,xmm4
1059	cmpordps xmm6,XMMWORD PTR [rcx]
1060
1061# Tests for op imm8, xmm/mem128, xmm
1062	aeskeygenassist xmm6,xmm4,100
1063	aeskeygenassist xmm6,XMMWORD PTR [rcx],100
1064	pcmpestri xmm6,xmm4,100
1065	pcmpestri xmm6,XMMWORD PTR [rcx],100
1066	pcmpestrm xmm6,xmm4,100
1067	pcmpestrm xmm6,XMMWORD PTR [rcx],100
1068	pcmpistri xmm6,xmm4,100
1069	pcmpistri xmm6,XMMWORD PTR [rcx],100
1070	pcmpistrm xmm6,xmm4,100
1071	pcmpistrm xmm6,XMMWORD PTR [rcx],100
1072	pshufd xmm6,xmm4,100
1073	pshufd xmm6,XMMWORD PTR [rcx],100
1074	pshufhw xmm6,xmm4,100
1075	pshufhw xmm6,XMMWORD PTR [rcx],100
1076	pshuflw xmm6,xmm4,100
1077	pshuflw xmm6,XMMWORD PTR [rcx],100
1078	roundpd xmm6,xmm4,100
1079	roundpd xmm6,XMMWORD PTR [rcx],100
1080	roundps xmm6,xmm4,100
1081	roundps xmm6,XMMWORD PTR [rcx],100
1082
1083# Tests for op imm8, xmm/mem128, xmm[, xmm]
1084	blendpd xmm6,xmm4,100
1085	blendpd xmm6,XMMWORD PTR [rcx],100
1086	blendps xmm6,xmm4,100
1087	blendps xmm6,XMMWORD PTR [rcx],100
1088	cmppd xmm6,xmm4,100
1089	cmppd xmm6,XMMWORD PTR [rcx],100
1090	cmpps xmm6,xmm4,100
1091	cmpps xmm6,XMMWORD PTR [rcx],100
1092	dppd xmm6,xmm4,100
1093	dppd xmm6,XMMWORD PTR [rcx],100
1094	dpps xmm6,xmm4,100
1095	dpps xmm6,XMMWORD PTR [rcx],100
1096	mpsadbw xmm6,xmm4,100
1097	mpsadbw xmm6,XMMWORD PTR [rcx],100
1098	palignr xmm6,xmm4,100
1099	palignr xmm6,XMMWORD PTR [rcx],100
1100	pblendw xmm6,xmm4,100
1101	pblendw xmm6,XMMWORD PTR [rcx],100
1102	pclmulqdq xmm6,xmm4,100
1103	pclmulqdq xmm6,XMMWORD PTR [rcx],100
1104	shufpd xmm6,xmm4,100
1105	shufpd xmm6,XMMWORD PTR [rcx],100
1106	shufps xmm6,xmm4,100
1107	shufps xmm6,XMMWORD PTR [rcx],100
1108
1109# Tests for op xmm0, xmm/mem128, xmm[, xmm]
1110	blendvpd xmm6,xmm4,xmm0
1111	blendvpd xmm6,XMMWORD PTR [rcx],xmm0
1112	blendvpd xmm6,xmm4
1113	blendvpd xmm6,XMMWORD PTR [rcx]
1114	blendvps xmm6,xmm4,xmm0
1115	blendvps xmm6,XMMWORD PTR [rcx],xmm0
1116	blendvps xmm6,xmm4
1117	blendvps xmm6,XMMWORD PTR [rcx]
1118	pblendvb xmm6,xmm4,xmm0
1119	pblendvb xmm6,XMMWORD PTR [rcx],xmm0
1120	pblendvb xmm6,xmm4
1121	pblendvb xmm6,XMMWORD PTR [rcx]
1122
1123# Tests for op xmm/mem64, xmm
1124	comisd xmm6,xmm4
1125	comisd xmm4,QWORD PTR [rcx]
1126	cvtdq2pd xmm6,xmm4
1127	cvtdq2pd xmm4,QWORD PTR [rcx]
1128	cvtps2pd xmm6,xmm4
1129	cvtps2pd xmm4,QWORD PTR [rcx]
1130	movddup xmm6,xmm4
1131	movddup xmm4,QWORD PTR [rcx]
1132	pmovsxbw xmm6,xmm4
1133	pmovsxbw xmm4,QWORD PTR [rcx]
1134	pmovsxwd xmm6,xmm4
1135	pmovsxwd xmm4,QWORD PTR [rcx]
1136	pmovsxdq xmm6,xmm4
1137	pmovsxdq xmm4,QWORD PTR [rcx]
1138	pmovzxbw xmm6,xmm4
1139	pmovzxbw xmm4,QWORD PTR [rcx]
1140	pmovzxwd xmm6,xmm4
1141	pmovzxwd xmm4,QWORD PTR [rcx]
1142	pmovzxdq xmm6,xmm4
1143	pmovzxdq xmm4,QWORD PTR [rcx]
1144	ucomisd xmm6,xmm4
1145	ucomisd xmm4,QWORD PTR [rcx]
1146
1147# Tests for op mem64, xmm
1148	movsd xmm4,QWORD PTR [rcx]
1149
1150# Tests for op xmm, mem64
1151	movlpd QWORD PTR [rcx],xmm4
1152	movlps QWORD PTR [rcx],xmm4
1153	movhpd QWORD PTR [rcx],xmm4
1154	movhps QWORD PTR [rcx],xmm4
1155	movsd QWORD PTR [rcx],xmm4
1156
1157# Tests for op xmm, regq/mem64
1158# Tests for op regq/mem64, xmm
1159	movd rcx,xmm4
1160	movd xmm4,rcx
1161	movq rcx,xmm4
1162	movq xmm4,rcx
1163	movq QWORD PTR [rcx],xmm4
1164	movq xmm4,QWORD PTR [rcx]
1165
1166# Tests for op xmm/mem64, regl
1167	cvtsd2si ecx,xmm4
1168	cvtsd2si ecx,QWORD PTR [rcx]
1169	cvttsd2si ecx,xmm4
1170	cvttsd2si ecx,QWORD PTR [rcx]
1171
1172# Tests for op xmm/mem64, regq
1173	cvtsd2si rcx,xmm4
1174	cvtsd2si rcx,QWORD PTR [rcx]
1175	cvttsd2si rcx,xmm4
1176	cvttsd2si rcx,QWORD PTR [rcx]
1177
1178# Tests for op regq/mem64, xmm[, xmm]
1179	cvtsi2sdq xmm4,rcx
1180	cvtsi2sdq xmm4,QWORD PTR [rcx]
1181	cvtsi2ssq xmm4,rcx
1182	cvtsi2ssq xmm4,QWORD PTR [rcx]
1183
1184# Tests for op imm8, regq/mem64, xmm[, xmm]
1185	pinsrq xmm4,rcx,100
1186	pinsrq xmm4,QWORD PTR [rcx],100
1187
1188# Testsf for op imm8, xmm, regq/mem64
1189	pextrq rcx,xmm4,100
1190	pextrq QWORD PTR [rcx],xmm4,100
1191
1192# Tests for op mem64, xmm[, xmm]
1193	movlpd xmm4,QWORD PTR [rcx]
1194	movlps xmm4,QWORD PTR [rcx]
1195	movhpd xmm4,QWORD PTR [rcx]
1196	movhps xmm4,QWORD PTR [rcx]
1197
1198# Tests for op imm8, xmm/mem64, xmm[, xmm]
1199	cmpsd xmm6,xmm4,100
1200	cmpsd xmm6,QWORD PTR [rcx],100
1201	roundsd xmm6,xmm4,100
1202	roundsd xmm6,QWORD PTR [rcx],100
1203
1204# Tests for op xmm/mem64, xmm[, xmm]
1205	addsd xmm6,xmm4
1206	addsd xmm6,QWORD PTR [rcx]
1207	cvtsd2ss xmm6,xmm4
1208	cvtsd2ss xmm6,QWORD PTR [rcx]
1209	divsd xmm6,xmm4
1210	divsd xmm6,QWORD PTR [rcx]
1211	maxsd xmm6,xmm4
1212	maxsd xmm6,QWORD PTR [rcx]
1213	minsd xmm6,xmm4
1214	minsd xmm6,QWORD PTR [rcx]
1215	mulsd xmm6,xmm4
1216	mulsd xmm6,QWORD PTR [rcx]
1217	sqrtsd xmm6,xmm4
1218	sqrtsd xmm6,QWORD PTR [rcx]
1219	subsd xmm6,xmm4
1220	subsd xmm6,QWORD PTR [rcx]
1221	cmpeqsd xmm6,xmm4
1222	cmpeqsd xmm6,QWORD PTR [rcx]
1223	cmpltsd xmm6,xmm4
1224	cmpltsd xmm6,QWORD PTR [rcx]
1225	cmplesd xmm6,xmm4
1226	cmplesd xmm6,QWORD PTR [rcx]
1227	cmpunordsd xmm6,xmm4
1228	cmpunordsd xmm6,QWORD PTR [rcx]
1229	cmpneqsd xmm6,xmm4
1230	cmpneqsd xmm6,QWORD PTR [rcx]
1231	cmpnltsd xmm6,xmm4
1232	cmpnltsd xmm6,QWORD PTR [rcx]
1233	cmpnlesd xmm6,xmm4
1234	cmpnlesd xmm6,QWORD PTR [rcx]
1235	cmpordsd xmm6,xmm4
1236	cmpordsd xmm6,QWORD PTR [rcx]
1237
1238# Tests for op xmm/mem32, xmm[, xmm]
1239	addss xmm6,xmm4
1240	addss xmm6,DWORD PTR [rcx]
1241	cvtss2sd xmm6,xmm4
1242	cvtss2sd xmm6,DWORD PTR [rcx]
1243	divss xmm6,xmm4
1244	divss xmm6,DWORD PTR [rcx]
1245	maxss xmm6,xmm4
1246	maxss xmm6,DWORD PTR [rcx]
1247	minss xmm6,xmm4
1248	minss xmm6,DWORD PTR [rcx]
1249	mulss xmm6,xmm4
1250	mulss xmm6,DWORD PTR [rcx]
1251	rcpss xmm6,xmm4
1252	rcpss xmm6,DWORD PTR [rcx]
1253	rsqrtss xmm6,xmm4
1254	rsqrtss xmm6,DWORD PTR [rcx]
1255	sqrtss xmm6,xmm4
1256	sqrtss xmm6,DWORD PTR [rcx]
1257	subss xmm6,xmm4
1258	subss xmm6,DWORD PTR [rcx]
1259	cmpeqss xmm6,xmm4
1260	cmpeqss xmm6,DWORD PTR [rcx]
1261	cmpltss xmm6,xmm4
1262	cmpltss xmm6,DWORD PTR [rcx]
1263	cmpless xmm6,xmm4
1264	cmpless xmm6,DWORD PTR [rcx]
1265	cmpunordss xmm6,xmm4
1266	cmpunordss xmm6,DWORD PTR [rcx]
1267	cmpneqss xmm6,xmm4
1268	cmpneqss xmm6,DWORD PTR [rcx]
1269	cmpnltss xmm6,xmm4
1270	cmpnltss xmm6,DWORD PTR [rcx]
1271	cmpnless xmm6,xmm4
1272	cmpnless xmm6,DWORD PTR [rcx]
1273	cmpordss xmm6,xmm4
1274	cmpordss xmm6,DWORD PTR [rcx]
1275
1276# Tests for op xmm/mem32, xmm
1277	comiss xmm6,xmm4
1278	comiss xmm4,DWORD PTR [rcx]
1279	pmovsxbd xmm6,xmm4
1280	pmovsxbd xmm4,DWORD PTR [rcx]
1281	pmovsxwq xmm6,xmm4
1282	pmovsxwq xmm4,DWORD PTR [rcx]
1283	pmovzxbd xmm6,xmm4
1284	pmovzxbd xmm4,DWORD PTR [rcx]
1285	pmovzxwq xmm6,xmm4
1286	pmovzxwq xmm4,DWORD PTR [rcx]
1287	ucomiss xmm6,xmm4
1288	ucomiss xmm4,DWORD PTR [rcx]
1289
1290# Tests for op mem32, xmm
1291	movss xmm4,DWORD PTR [rcx]
1292
1293# Tests for op xmm, mem32
1294	movss DWORD PTR [rcx],xmm4
1295
1296# Tests for op xmm, regl/mem32
1297# Tests for op regl/mem32, xmm
1298	movd ecx,xmm4
1299	movd DWORD PTR [rcx],xmm4
1300	movd xmm4,ecx
1301	movd xmm4,DWORD PTR [rcx]
1302
1303# Tests for op xmm/mem32, regl
1304	cvtss2si ecx,xmm4
1305	cvtss2si ecx,DWORD PTR [rcx]
1306	cvttss2si ecx,xmm4
1307	cvttss2si ecx,DWORD PTR [rcx]
1308
1309# Tests for op xmm/mem32, regq
1310	cvtss2si rcx,xmm4
1311	cvtss2si rcx,DWORD PTR [rcx]
1312	cvttss2si rcx,xmm4
1313	cvttss2si rcx,DWORD PTR [rcx]
1314
1315# Tests for op xmm, regq
1316	movmskpd rcx,xmm4
1317	movmskps rcx,xmm4
1318	pmovmskb rcx,xmm4
1319
1320# Tests for op imm8, xmm, regq/mem32
1321	extractps rcx,xmm4,100
1322	extractps DWORD PTR [rcx],xmm4,100
1323# Tests for op imm8, xmm, regl/mem32
1324	pextrd ecx,xmm4,100
1325	pextrd DWORD PTR [rcx],xmm4,100
1326	extractps ecx,xmm4,100
1327	extractps DWORD PTR [rcx],xmm4,100
1328
1329# Tests for op regl/mem32, xmm[, xmm]
1330	cvtsi2sd xmm4,ecx
1331	cvtsi2sd xmm4,DWORD PTR [rcx]
1332	cvtsi2ss xmm4,ecx
1333	cvtsi2ss xmm4,DWORD PTR [rcx]
1334
1335# Tests for op imm8, xmm/mem32, xmm[, xmm]
1336	cmpss xmm6,xmm4,100
1337	cmpss xmm6,DWORD PTR [rcx],100
1338	insertps xmm6,xmm4,100
1339	insertps xmm6,DWORD PTR [rcx],100
1340	roundss xmm6,xmm4,100
1341	roundss xmm6,DWORD PTR [rcx],100
1342
1343# Tests for op xmm/m16, xmm
1344	pmovsxbq xmm6,xmm4
1345	pmovsxbq xmm4,WORD PTR [rcx]
1346	pmovzxbq xmm6,xmm4
1347	pmovzxbq xmm4,WORD PTR [rcx]
1348
1349# Tests for op imm8, xmm, regl/mem16
1350	pextrw ecx,xmm4,100
1351	pextrw WORD PTR [rcx],xmm4,100
1352
1353# Tests for op imm8, xmm, regq/mem16
1354	pextrw rcx,xmm4,100
1355	pextrw WORD PTR [rcx],xmm4,100
1356
1357# Tests for op imm8, regl/mem16, xmm[, xmm]
1358	pinsrw xmm4,ecx,100
1359	pinsrw xmm4,WORD PTR [rcx],100
1360
1361
1362	pinsrw xmm4,rcx,100
1363	pinsrw xmm4,WORD PTR [rcx],100
1364
1365# Tests for op imm8, xmm, regl/mem8
1366	pextrb ecx,xmm4,100
1367	pextrb BYTE PTR [rcx],xmm4,100
1368
1369# Tests for op imm8, regl/mem8, xmm[, xmm]
1370	pinsrb xmm4,ecx,100
1371	pinsrb xmm4,BYTE PTR [rcx],100
1372
1373# Tests for op imm8, xmm, regq
1374	pextrw rcx,xmm4,100
1375# Tests for op imm8, xmm, regq/mem8
1376	pextrb rcx,xmm4,100
1377	pextrb BYTE PTR [rcx],xmm4,100
1378
1379# Tests for op imm8, regl/mem8, xmm[, xmm]
1380	pinsrb xmm4,ecx,100
1381	pinsrb xmm4,BYTE PTR [rcx],100
1382
1383# Tests for op xmm, xmm
1384	maskmovdqu xmm6,xmm4
1385	movq xmm6,xmm4
1386
1387# Tests for op xmm, regl
1388	movmskpd ecx,xmm4
1389	movmskps ecx,xmm4
1390	pmovmskb ecx,xmm4
1391# Tests for op xmm, xmm[, xmm]
1392	movhlps xmm6,xmm4
1393	movlhps xmm6,xmm4
1394	movsd xmm6,xmm4
1395	movss xmm6,xmm4
1396
1397# Tests for op imm8, xmm[, xmm]
1398	pslld xmm4,100
1399	pslldq xmm4,100
1400	psllq xmm4,100
1401	psllw xmm4,100
1402	psrad xmm4,100
1403	psraw xmm4,100
1404	psrld xmm4,100
1405	psrldq xmm4,100
1406	psrlq xmm4,100
1407	psrlw xmm4,100
1408
1409# Tests for op imm8, xmm, regl
1410	pextrw ecx,xmm4,100
1411
1412