1# Check 64bit AVX512{BW,VL} swap instructions
2
3	.allow_index_reg
4	.text
5_start:
6	vmovdqu8	%xmm29, %xmm30	 # AVX512{BW,VL}
7	vmovdqu8.s	%xmm29, %xmm30	 # AVX512{BW,VL}
8	vmovdqu8	%xmm29, %xmm30{%k7}	 # AVX512{BW,VL}
9	vmovdqu8.s	%xmm29, %xmm30{%k7}	 # AVX512{BW,VL}
10	vmovdqu8	%xmm29, %xmm30{%k7}{z}	 # AVX512{BW,VL}
11	vmovdqu8.s	%xmm29, %xmm30{%k7}{z}	 # AVX512{BW,VL}
12	vmovdqu8	%xmm29, %xmm30	 # AVX512{BW,VL}
13	vmovdqu8.s	%xmm29, %xmm30	 # AVX512{BW,VL}
14	vmovdqu8	%xmm29, %xmm30{%k7}	 # AVX512{BW,VL}
15	vmovdqu8.s	%xmm29, %xmm30{%k7}	 # AVX512{BW,VL}
16	vmovdqu8	%xmm29, %xmm30{%k7}{z}	 # AVX512{BW,VL}
17	vmovdqu8.s	%xmm29, %xmm30{%k7}{z}	 # AVX512{BW,VL}
18	vmovdqu8	%ymm29, %ymm30	 # AVX512{BW,VL}
19	vmovdqu8.s	%ymm29, %ymm30	 # AVX512{BW,VL}
20	vmovdqu8	%ymm29, %ymm30{%k7}	 # AVX512{BW,VL}
21	vmovdqu8.s	%ymm29, %ymm30{%k7}	 # AVX512{BW,VL}
22	vmovdqu8	%ymm29, %ymm30{%k7}{z}	 # AVX512{BW,VL}
23	vmovdqu8.s	%ymm29, %ymm30{%k7}{z}	 # AVX512{BW,VL}
24	vmovdqu8	%ymm29, %ymm30	 # AVX512{BW,VL}
25	vmovdqu8.s	%ymm29, %ymm30	 # AVX512{BW,VL}
26	vmovdqu8	%ymm29, %ymm30{%k7}	 # AVX512{BW,VL}
27	vmovdqu8.s	%ymm29, %ymm30{%k7}	 # AVX512{BW,VL}
28	vmovdqu8	%ymm29, %ymm30{%k7}{z}	 # AVX512{BW,VL}
29	vmovdqu8.s	%ymm29, %ymm30{%k7}{z}	 # AVX512{BW,VL}
30	vmovdqu16	%xmm29, %xmm30	 # AVX512{BW,VL}
31	vmovdqu16.s	%xmm29, %xmm30	 # AVX512{BW,VL}
32	vmovdqu16	%xmm29, %xmm30{%k7}	 # AVX512{BW,VL}
33	vmovdqu16.s	%xmm29, %xmm30{%k7}	 # AVX512{BW,VL}
34	vmovdqu16	%xmm29, %xmm30{%k7}{z}	 # AVX512{BW,VL}
35	vmovdqu16.s	%xmm29, %xmm30{%k7}{z}	 # AVX512{BW,VL}
36	vmovdqu16	%xmm29, %xmm30	 # AVX512{BW,VL}
37	vmovdqu16.s	%xmm29, %xmm30	 # AVX512{BW,VL}
38	vmovdqu16	%xmm29, %xmm30{%k7}	 # AVX512{BW,VL}
39	vmovdqu16.s	%xmm29, %xmm30{%k7}	 # AVX512{BW,VL}
40	vmovdqu16	%xmm29, %xmm30{%k7}{z}	 # AVX512{BW,VL}
41	vmovdqu16.s	%xmm29, %xmm30{%k7}{z}	 # AVX512{BW,VL}
42	vmovdqu16	%ymm29, %ymm30	 # AVX512{BW,VL}
43	vmovdqu16.s	%ymm29, %ymm30	 # AVX512{BW,VL}
44	vmovdqu16	%ymm29, %ymm30{%k7}	 # AVX512{BW,VL}
45	vmovdqu16.s	%ymm29, %ymm30{%k7}	 # AVX512{BW,VL}
46	vmovdqu16	%ymm29, %ymm30{%k7}{z}	 # AVX512{BW,VL}
47	vmovdqu16.s	%ymm29, %ymm30{%k7}{z}	 # AVX512{BW,VL}
48	vmovdqu16	%ymm29, %ymm30	 # AVX512{BW,VL}
49	vmovdqu16.s	%ymm29, %ymm30	 # AVX512{BW,VL}
50	vmovdqu16	%ymm29, %ymm30{%k7}	 # AVX512{BW,VL}
51	vmovdqu16.s	%ymm29, %ymm30{%k7}	 # AVX512{BW,VL}
52	vmovdqu16	%ymm29, %ymm30{%k7}{z}	 # AVX512{BW,VL}
53	vmovdqu16.s	%ymm29, %ymm30{%k7}{z}	 # AVX512{BW,VL}
54
55	.intel_syntax noprefix
56	vmovdqu8	xmm30, xmm29	 # AVX512{BW,VL}
57	vmovdqu8.s	xmm30, xmm29	 # AVX512{BW,VL}
58	vmovdqu8	xmm30{k7}, xmm29	 # AVX512{BW,VL}
59	vmovdqu8.s	xmm30{k7}, xmm29	 # AVX512{BW,VL}
60	vmovdqu8	xmm30{k7}{z}, xmm29	 # AVX512{BW,VL}
61	vmovdqu8.s	xmm30{k7}{z}, xmm29	 # AVX512{BW,VL}
62	vmovdqu8	xmm30, xmm29	 # AVX512{BW,VL}
63	vmovdqu8.s	xmm30, xmm29	 # AVX512{BW,VL}
64	vmovdqu8	xmm30{k7}, xmm29	 # AVX512{BW,VL}
65	vmovdqu8.s	xmm30{k7}, xmm29	 # AVX512{BW,VL}
66	vmovdqu8	xmm30{k7}{z}, xmm29	 # AVX512{BW,VL}
67	vmovdqu8.s	xmm30{k7}{z}, xmm29	 # AVX512{BW,VL}
68	vmovdqu8	ymm30, ymm29	 # AVX512{BW,VL}
69	vmovdqu8.s	ymm30, ymm29	 # AVX512{BW,VL}
70	vmovdqu8	ymm30{k7}, ymm29	 # AVX512{BW,VL}
71	vmovdqu8.s	ymm30{k7}, ymm29	 # AVX512{BW,VL}
72	vmovdqu8	ymm30{k7}{z}, ymm29	 # AVX512{BW,VL}
73	vmovdqu8.s	ymm30{k7}{z}, ymm29	 # AVX512{BW,VL}
74	vmovdqu8	ymm30, ymm29	 # AVX512{BW,VL}
75	vmovdqu8.s	ymm30, ymm29	 # AVX512{BW,VL}
76	vmovdqu8	ymm30{k7}, ymm29	 # AVX512{BW,VL}
77	vmovdqu8.s	ymm30{k7}, ymm29	 # AVX512{BW,VL}
78	vmovdqu8	ymm30{k7}{z}, ymm29	 # AVX512{BW,VL}
79	vmovdqu8.s	ymm30{k7}{z}, ymm29	 # AVX512{BW,VL}
80	vmovdqu16	xmm30, xmm29	 # AVX512{BW,VL}
81	vmovdqu16.s	xmm30, xmm29	 # AVX512{BW,VL}
82	vmovdqu16	xmm30{k7}, xmm29	 # AVX512{BW,VL}
83	vmovdqu16.s	xmm30{k7}, xmm29	 # AVX512{BW,VL}
84	vmovdqu16	xmm30{k7}{z}, xmm29	 # AVX512{BW,VL}
85	vmovdqu16.s	xmm30{k7}{z}, xmm29	 # AVX512{BW,VL}
86	vmovdqu16	xmm30, xmm29	 # AVX512{BW,VL}
87	vmovdqu16.s	xmm30, xmm29	 # AVX512{BW,VL}
88	vmovdqu16	xmm30{k7}, xmm29	 # AVX512{BW,VL}
89	vmovdqu16.s	xmm30{k7}, xmm29	 # AVX512{BW,VL}
90	vmovdqu16	xmm30{k7}{z}, xmm29	 # AVX512{BW,VL}
91	vmovdqu16.s	xmm30{k7}{z}, xmm29	 # AVX512{BW,VL}
92	vmovdqu16	ymm30, ymm29	 # AVX512{BW,VL}
93	vmovdqu16.s	ymm30, ymm29	 # AVX512{BW,VL}
94	vmovdqu16	ymm30{k7}, ymm29	 # AVX512{BW,VL}
95	vmovdqu16.s	ymm30{k7}, ymm29	 # AVX512{BW,VL}
96	vmovdqu16	ymm30{k7}{z}, ymm29	 # AVX512{BW,VL}
97	vmovdqu16.s	ymm30{k7}{z}, ymm29	 # AVX512{BW,VL}
98	vmovdqu16	ymm30, ymm29	 # AVX512{BW,VL}
99	vmovdqu16.s	ymm30, ymm29	 # AVX512{BW,VL}
100	vmovdqu16	ymm30{k7}, ymm29	 # AVX512{BW,VL}
101	vmovdqu16.s	ymm30{k7}, ymm29	 # AVX512{BW,VL}
102	vmovdqu16	ymm30{k7}{z}, ymm29	 # AVX512{BW,VL}
103	vmovdqu16.s	ymm30{k7}{z}, ymm29	 # AVX512{BW,VL}
104