xref: /aosp_15_r20/external/llvm/test/MC/X86/shuffle-comments.s (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker# RUN: llvm-mc %s -triple=x86_64-unknown-unknown | FileCheck %s
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Workerpalignr $8, %xmm0, %xmm1
4*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm0[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
5*9880d681SAndroid Build Coastguard Workerpalignr $8, (%rax), %xmm1
6*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = mem[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
7*9880d681SAndroid Build Coastguard Worker
8*9880d681SAndroid Build Coastguard Workerpalignr $16, %xmm0, %xmm1
9*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]
10*9880d681SAndroid Build Coastguard Workerpalignr $16, (%rax), %xmm1
11*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]
12*9880d681SAndroid Build Coastguard Worker
13*9880d681SAndroid Build Coastguard Workerpalignr $0, %xmm0, %xmm1
14*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm0[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]
15*9880d681SAndroid Build Coastguard Workerpalignr $0, (%rax), %xmm1
16*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = mem[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]
17*9880d681SAndroid Build Coastguard Worker
18*9880d681SAndroid Build Coastguard Workervpalignr $8, %xmm0, %xmm1, %xmm2
19*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm0[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
20*9880d681SAndroid Build Coastguard Workervpalignr $8, (%rax), %xmm1, %xmm2
21*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = mem[8,9,10,11,12,13,14,15],xmm1[0,1,2,3,4,5,6,7]
22*9880d681SAndroid Build Coastguard Worker
23*9880d681SAndroid Build Coastguard Workervpalignr $16, %xmm0, %xmm1, %xmm2
24*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]
25*9880d681SAndroid Build Coastguard Workervpalignr $16, (%rax), %xmm1, %xmm2
26*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]
27*9880d681SAndroid Build Coastguard Worker
28*9880d681SAndroid Build Coastguard Workervpalignr $0, %xmm0, %xmm1, %xmm2
29*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm0[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]
30*9880d681SAndroid Build Coastguard Workervpalignr $0, (%rax), %xmm1, %xmm2
31*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = mem[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]
32*9880d681SAndroid Build Coastguard Worker
33*9880d681SAndroid Build Coastguard Workervpalignr $8, %ymm0, %ymm1, %ymm2
34*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm0[8,9,10,11,12,13,14,15],ymm1[0,1,2,3,4,5,6,7],ymm0[24,25,26,27,28,29,30,31],ymm1[16,17,18,19,20,21,22,23]
35*9880d681SAndroid Build Coastguard Workervpalignr $8, (%rax), %ymm1, %ymm2
36*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = mem[8,9,10,11,12,13,14,15],ymm1[0,1,2,3,4,5,6,7],mem[24,25,26,27,28,29,30,31],ymm1[16,17,18,19,20,21,22,23]
37*9880d681SAndroid Build Coastguard Worker
38*9880d681SAndroid Build Coastguard Workervpalignr $16, %ymm0, %ymm1, %ymm2
39*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31]
40*9880d681SAndroid Build Coastguard Workervpalignr $16, (%rax), %ymm1, %ymm2
41*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31]
42*9880d681SAndroid Build Coastguard Worker
43*9880d681SAndroid Build Coastguard Workervpalignr $0, %ymm0, %ymm1, %ymm2
44*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm0[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31]
45*9880d681SAndroid Build Coastguard Workervpalignr $0, (%rax), %ymm1, %ymm2
46*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = mem[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31]
47*9880d681SAndroid Build Coastguard Worker
48*9880d681SAndroid Build Coastguard Workerpshufd $27, %xmm0, %xmm1
49*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm0[3,2,1,0]
50*9880d681SAndroid Build Coastguard Workerpshufd $27, (%rax), %xmm1
51*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = mem[3,2,1,0]
52*9880d681SAndroid Build Coastguard Worker
53*9880d681SAndroid Build Coastguard Workervpshufd $27, %xmm0, %xmm1
54*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm0[3,2,1,0]
55*9880d681SAndroid Build Coastguard Workervpshufd $27, (%rax), %xmm1
56*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = mem[3,2,1,0]
57*9880d681SAndroid Build Coastguard Worker
58*9880d681SAndroid Build Coastguard Workervpshufd $27, %ymm0, %ymm1
59*9880d681SAndroid Build Coastguard Worker# CHECK: ymm1 = ymm0[3,2,1,0,7,6,5,4]
60*9880d681SAndroid Build Coastguard Workervpshufd $27, (%rax), %ymm1
61*9880d681SAndroid Build Coastguard Worker# CHECK: ymm1 = mem[3,2,1,0,7,6,5,4]
62*9880d681SAndroid Build Coastguard Worker
63*9880d681SAndroid Build Coastguard Workerpunpcklbw %xmm0, %xmm1
64*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1],xmm1[2],xmm0[2],xmm1[3],xmm0[3],xmm1[4],xmm0[4],xmm1[5],xmm0[5],xmm1[6],xmm0[6],xmm1[7],xmm0[7]
65*9880d681SAndroid Build Coastguard Workerpunpcklbw (%rax), %xmm1
66*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[0],mem[0],xmm1[1],mem[1],xmm1[2],mem[2],xmm1[3],mem[3],xmm1[4],mem[4],xmm1[5],mem[5],xmm1[6],mem[6],xmm1[7],mem[7]
67*9880d681SAndroid Build Coastguard Worker
68*9880d681SAndroid Build Coastguard Workervpunpcklbw %xmm0, %xmm1, %xmm2
69*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[0],xmm0[0],xmm1[1],xmm0[1],xmm1[2],xmm0[2],xmm1[3],xmm0[3],xmm1[4],xmm0[4],xmm1[5],xmm0[5],xmm1[6],xmm0[6],xmm1[7],xmm0[7]
70*9880d681SAndroid Build Coastguard Workervpunpcklbw (%rax), %xmm1, %xmm2
71*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[0],mem[0],xmm1[1],mem[1],xmm1[2],mem[2],xmm1[3],mem[3],xmm1[4],mem[4],xmm1[5],mem[5],xmm1[6],mem[6],xmm1[7],mem[7]
72*9880d681SAndroid Build Coastguard Worker
73*9880d681SAndroid Build Coastguard Workervpunpcklbw %ymm0, %ymm1, %ymm2
74*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[0],ymm0[0],ymm1[1],ymm0[1],ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[4],ymm0[4],ymm1[5],ymm0[5],ymm1[6],ymm0[6],ymm1[7],ymm0[7],ymm1[16],ymm0[16],ymm1[17],ymm0[17],ymm1[18],ymm0[18],ymm1[19],ymm0[19],ymm1[20],ymm0[20],ymm1[21],ymm0[21],ymm1[22],ymm0[22],ymm1[23],ymm0[23]
75*9880d681SAndroid Build Coastguard Workervpunpcklbw (%rax), %ymm1, %ymm2
76*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[0],mem[0],ymm1[1],mem[1],ymm1[2],mem[2],ymm1[3],mem[3],ymm1[4],mem[4],ymm1[5],mem[5],ymm1[6],mem[6],ymm1[7],mem[7],ymm1[16],mem[16],ymm1[17],mem[17],ymm1[18],mem[18],ymm1[19],mem[19],ymm1[20],mem[20],ymm1[21],mem[21],ymm1[22],mem[22],ymm1[23],mem[23]
77*9880d681SAndroid Build Coastguard Worker
78*9880d681SAndroid Build Coastguard Workerpunpckhbw %xmm0, %xmm1
79*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[8],xmm0[8],xmm1[9],xmm0[9],xmm1[10],xmm0[10],xmm1[11],xmm0[11],xmm1[12],xmm0[12],xmm1[13],xmm0[13],xmm1[14],xmm0[14],xmm1[15],xmm0[15]
80*9880d681SAndroid Build Coastguard Workerpunpckhbw (%rax), %xmm1
81*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[8],mem[8],xmm1[9],mem[9],xmm1[10],mem[10],xmm1[11],mem[11],xmm1[12],mem[12],xmm1[13],mem[13],xmm1[14],mem[14],xmm1[15],mem[15]
82*9880d681SAndroid Build Coastguard Worker
83*9880d681SAndroid Build Coastguard Workervpunpckhbw %xmm0, %xmm1, %xmm2
84*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[8],xmm0[8],xmm1[9],xmm0[9],xmm1[10],xmm0[10],xmm1[11],xmm0[11],xmm1[12],xmm0[12],xmm1[13],xmm0[13],xmm1[14],xmm0[14],xmm1[15],xmm0[15]
85*9880d681SAndroid Build Coastguard Workervpunpckhbw (%rax), %xmm1, %xmm2
86*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[8],mem[8],xmm1[9],mem[9],xmm1[10],mem[10],xmm1[11],mem[11],xmm1[12],mem[12],xmm1[13],mem[13],xmm1[14],mem[14],xmm1[15],mem[15]
87*9880d681SAndroid Build Coastguard Worker
88*9880d681SAndroid Build Coastguard Workervpunpckhbw %ymm0, %ymm1, %ymm2
89*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[8],ymm0[8],ymm1[9],ymm0[9],ymm1[10],ymm0[10],ymm1[11],ymm0[11],ymm1[12],ymm0[12],ymm1[13],ymm0[13],ymm1[14],ymm0[14],ymm1[15],ymm0[15],ymm1[24],ymm0[24],ymm1[25],ymm0[25],ymm1[26],ymm0[26],ymm1[27],ymm0[27],ymm1[28],ymm0[28],ymm1[29],ymm0[29],ymm1[30],ymm0[30],ymm1[31],ymm0[31]
90*9880d681SAndroid Build Coastguard Workervpunpckhbw (%rax), %ymm1, %ymm2
91*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[8],mem[8],ymm1[9],mem[9],ymm1[10],mem[10],ymm1[11],mem[11],ymm1[12],mem[12],ymm1[13],mem[13],ymm1[14],mem[14],ymm1[15],mem[15],ymm1[24],mem[24],ymm1[25],mem[25],ymm1[26],mem[26],ymm1[27],mem[27],ymm1[28],mem[28],ymm1[29],mem[29],ymm1[30],mem[30],ymm1[31],mem[31]
92*9880d681SAndroid Build Coastguard Worker
93*9880d681SAndroid Build Coastguard Workerpunpcklwd %xmm0, %xmm1
94*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1],xmm1[2],xmm0[2],xmm1[3],xmm0[3]
95*9880d681SAndroid Build Coastguard Workerpunpcklwd (%rax), %xmm1
96*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[0],mem[0],xmm1[1],mem[1],xmm1[2],mem[2],xmm1[3],mem[3]
97*9880d681SAndroid Build Coastguard Worker
98*9880d681SAndroid Build Coastguard Workervpunpcklwd %xmm0, %xmm1, %xmm2
99*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[0],xmm0[0],xmm1[1],xmm0[1],xmm1[2],xmm0[2],xmm1[3],xmm0[3]
100*9880d681SAndroid Build Coastguard Workervpunpcklwd (%rax), %xmm1, %xmm2
101*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[0],mem[0],xmm1[1],mem[1],xmm1[2],mem[2],xmm1[3],mem[3]
102*9880d681SAndroid Build Coastguard Worker
103*9880d681SAndroid Build Coastguard Workervpunpcklwd %ymm0, %ymm1, %ymm2
104*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[0],ymm0[0],ymm1[1],ymm0[1],ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[8],ymm0[8],ymm1[9],ymm0[9],ymm1[10],ymm0[10],ymm1[11],ymm0[11]
105*9880d681SAndroid Build Coastguard Workervpunpcklwd (%rax), %ymm1, %ymm2
106*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[0],mem[0],ymm1[1],mem[1],ymm1[2],mem[2],ymm1[3],mem[3],ymm1[8],mem[8],ymm1[9],mem[9],ymm1[10],mem[10],ymm1[11],mem[11]
107*9880d681SAndroid Build Coastguard Worker
108*9880d681SAndroid Build Coastguard Workerpunpckhwd %xmm0, %xmm1
109*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[4],xmm0[4],xmm1[5],xmm0[5],xmm1[6],xmm0[6],xmm1[7],xmm0[7]
110*9880d681SAndroid Build Coastguard Workerpunpckhwd (%rax), %xmm1
111*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[4],mem[4],xmm1[5],mem[5],xmm1[6],mem[6],xmm1[7],mem[7]
112*9880d681SAndroid Build Coastguard Worker
113*9880d681SAndroid Build Coastguard Workervpunpckhwd %xmm0, %xmm1, %xmm2
114*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[4],xmm0[4],xmm1[5],xmm0[5],xmm1[6],xmm0[6],xmm1[7],xmm0[7]
115*9880d681SAndroid Build Coastguard Workervpunpckhwd (%rax), %xmm1, %xmm2
116*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[4],mem[4],xmm1[5],mem[5],xmm1[6],mem[6],xmm1[7],mem[7]
117*9880d681SAndroid Build Coastguard Worker
118*9880d681SAndroid Build Coastguard Workervpunpckhwd %ymm0, %ymm1, %ymm2
119*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[4],ymm0[4],ymm1[5],ymm0[5],ymm1[6],ymm0[6],ymm1[7],ymm0[7],ymm1[12],ymm0[12],ymm1[13],ymm0[13],ymm1[14],ymm0[14],ymm1[15],ymm0[15]
120*9880d681SAndroid Build Coastguard Workervpunpckhwd (%rax), %ymm1, %ymm2
121*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[4],mem[4],ymm1[5],mem[5],ymm1[6],mem[6],ymm1[7],mem[7],ymm1[12],mem[12],ymm1[13],mem[13],ymm1[14],mem[14],ymm1[15],mem[15]
122*9880d681SAndroid Build Coastguard Worker
123*9880d681SAndroid Build Coastguard Workerpunpckldq %xmm0, %xmm1
124*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]
125*9880d681SAndroid Build Coastguard Workerpunpckldq (%rax), %xmm1
126*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
127*9880d681SAndroid Build Coastguard Worker
128*9880d681SAndroid Build Coastguard Workervpunpckldq %xmm0, %xmm1, %xmm2
129*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]
130*9880d681SAndroid Build Coastguard Workervpunpckldq (%rax), %xmm1, %xmm2
131*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[0],mem[0],xmm1[1],mem[1]
132*9880d681SAndroid Build Coastguard Worker
133*9880d681SAndroid Build Coastguard Workervpunpckldq %ymm0, %ymm1, %ymm2
134*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[0],ymm0[0],ymm1[1],ymm0[1],ymm1[4],ymm0[4],ymm1[5],ymm0[5]
135*9880d681SAndroid Build Coastguard Workervpunpckldq (%rax), %ymm1, %ymm2
136*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[0],mem[0],ymm1[1],mem[1],ymm1[4],mem[4],ymm1[5],mem[5]
137*9880d681SAndroid Build Coastguard Worker
138*9880d681SAndroid Build Coastguard Workerpunpckhdq %xmm0, %xmm1
139*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]
140*9880d681SAndroid Build Coastguard Workerpunpckhdq (%rax), %xmm1
141*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[2],mem[2],xmm1[3],mem[3]
142*9880d681SAndroid Build Coastguard Worker
143*9880d681SAndroid Build Coastguard Workervpunpckhdq %xmm0, %xmm1, %xmm2
144*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]
145*9880d681SAndroid Build Coastguard Workervpunpckhdq (%rax), %xmm1, %xmm2
146*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[2],mem[2],xmm1[3],mem[3]
147*9880d681SAndroid Build Coastguard Worker
148*9880d681SAndroid Build Coastguard Workervpunpckhdq %ymm0, %ymm1, %ymm2
149*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[6],ymm0[6],ymm1[7],ymm0[7]
150*9880d681SAndroid Build Coastguard Workervpunpckhdq (%rax), %ymm1, %ymm2
151*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[2],mem[2],ymm1[3],mem[3],ymm1[6],mem[6],ymm1[7],mem[7]
152*9880d681SAndroid Build Coastguard Worker
153*9880d681SAndroid Build Coastguard Workerpunpcklqdq %xmm0, %xmm1
154*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[0],xmm0[0]
155*9880d681SAndroid Build Coastguard Workerpunpcklqdq (%rax), %xmm1
156*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[0],mem[0]
157*9880d681SAndroid Build Coastguard Worker
158*9880d681SAndroid Build Coastguard Workervpunpcklqdq %xmm0, %xmm1, %xmm2
159*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[0],xmm0[0]
160*9880d681SAndroid Build Coastguard Workervpunpcklqdq (%rax), %xmm1, %xmm2
161*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[0],mem[0]
162*9880d681SAndroid Build Coastguard Worker
163*9880d681SAndroid Build Coastguard Workervpunpcklqdq %ymm0, %ymm1, %ymm2
164*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[0],ymm0[0],ymm1[2],ymm0[2]
165*9880d681SAndroid Build Coastguard Workervpunpcklqdq (%rax), %ymm1, %ymm2
166*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[0],mem[0],ymm1[2],mem[2]
167*9880d681SAndroid Build Coastguard Worker
168*9880d681SAndroid Build Coastguard Workerpunpckhqdq %xmm0, %xmm1
169*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[1],xmm0[1]
170*9880d681SAndroid Build Coastguard Workerpunpckhqdq (%rax), %xmm1
171*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[1],mem[1]
172*9880d681SAndroid Build Coastguard Worker
173*9880d681SAndroid Build Coastguard Workervpunpckhqdq %xmm0, %xmm1, %xmm2
174*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[1],xmm0[1]
175*9880d681SAndroid Build Coastguard Workervpunpckhqdq (%rax), %xmm1, %xmm2
176*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[1],mem[1]
177*9880d681SAndroid Build Coastguard Worker
178*9880d681SAndroid Build Coastguard Workervpunpckhqdq %ymm0, %ymm1, %ymm2
179*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[1],ymm0[1],ymm1[3],ymm0[3]
180*9880d681SAndroid Build Coastguard Workervpunpckhqdq (%rax), %ymm1, %ymm2
181*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[1],mem[1],ymm1[3],mem[3]
182*9880d681SAndroid Build Coastguard Worker
183*9880d681SAndroid Build Coastguard Workerunpcklps %xmm0, %xmm1
184*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]
185*9880d681SAndroid Build Coastguard Workerunpcklps (%rax), %xmm1
186*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
187*9880d681SAndroid Build Coastguard Worker
188*9880d681SAndroid Build Coastguard Workervunpcklps %xmm0, %xmm1, %xmm2
189*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]
190*9880d681SAndroid Build Coastguard Workervunpcklps (%rax), %xmm1, %xmm2
191*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[0],mem[0],xmm1[1],mem[1]
192*9880d681SAndroid Build Coastguard Worker
193*9880d681SAndroid Build Coastguard Workervunpcklps %ymm0, %ymm1, %ymm2
194*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[0],ymm0[0],ymm1[1],ymm0[1],ymm1[4],ymm0[4],ymm1[5],ymm0[5]
195*9880d681SAndroid Build Coastguard Workervunpcklps (%rax), %ymm1, %ymm2
196*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[0],mem[0],ymm1[1],mem[1],ymm1[4],mem[4],ymm1[5],mem[5]
197*9880d681SAndroid Build Coastguard Worker
198*9880d681SAndroid Build Coastguard Workerunpckhps %xmm0, %xmm1
199*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]
200*9880d681SAndroid Build Coastguard Workerunpckhps (%rax), %xmm1
201*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[2],mem[2],xmm1[3],mem[3]
202*9880d681SAndroid Build Coastguard Worker
203*9880d681SAndroid Build Coastguard Workervunpckhps %xmm0, %xmm1, %xmm2
204*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]
205*9880d681SAndroid Build Coastguard Workervunpckhps (%rax), %xmm1, %xmm2
206*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[2],mem[2],xmm1[3],mem[3]
207*9880d681SAndroid Build Coastguard Worker
208*9880d681SAndroid Build Coastguard Workervunpckhps %ymm0, %ymm1, %ymm2
209*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[6],ymm0[6],ymm1[7],ymm0[7]
210*9880d681SAndroid Build Coastguard Workervunpckhps (%rax), %ymm1, %ymm2
211*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[2],mem[2],ymm1[3],mem[3],ymm1[6],mem[6],ymm1[7],mem[7]
212*9880d681SAndroid Build Coastguard Worker
213*9880d681SAndroid Build Coastguard Workerunpcklpd %xmm0, %xmm1
214*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[0],xmm0[0]
215*9880d681SAndroid Build Coastguard Workerunpcklpd (%rax), %xmm1
216*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[0],mem[0]
217*9880d681SAndroid Build Coastguard Worker
218*9880d681SAndroid Build Coastguard Workervunpcklpd %xmm0, %xmm1, %xmm2
219*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[0],xmm0[0]
220*9880d681SAndroid Build Coastguard Workervunpcklpd (%rax), %xmm1, %xmm2
221*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[0],mem[0]
222*9880d681SAndroid Build Coastguard Worker
223*9880d681SAndroid Build Coastguard Workervunpcklpd %ymm0, %ymm1, %ymm2
224*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[0],ymm0[0],ymm1[2],ymm0[2]
225*9880d681SAndroid Build Coastguard Workervunpcklpd (%rax), %ymm1, %ymm2
226*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[0],mem[0],ymm1[2],mem[2]
227*9880d681SAndroid Build Coastguard Worker
228*9880d681SAndroid Build Coastguard Workerunpckhpd %xmm0, %xmm1
229*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[1],xmm0[1]
230*9880d681SAndroid Build Coastguard Workerunpckhpd (%rax), %xmm1
231*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[1],mem[1]
232*9880d681SAndroid Build Coastguard Worker
233*9880d681SAndroid Build Coastguard Workervunpckhpd %xmm0, %xmm1, %xmm2
234*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[1],xmm0[1]
235*9880d681SAndroid Build Coastguard Workervunpckhpd (%rax), %xmm1, %xmm2
236*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[1],mem[1]
237*9880d681SAndroid Build Coastguard Worker
238*9880d681SAndroid Build Coastguard Workervunpckhpd %ymm0, %ymm1, %ymm2
239*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[1],ymm0[1],ymm1[3],ymm0[3]
240*9880d681SAndroid Build Coastguard Workervunpckhpd (%rax), %ymm1, %ymm2
241*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[1],mem[1],ymm1[3],mem[3]
242*9880d681SAndroid Build Coastguard Worker
243*9880d681SAndroid Build Coastguard Workershufps $27, %xmm0, %xmm1
244*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[3,2],xmm0[1,0]
245*9880d681SAndroid Build Coastguard Workershufps $27, (%rax), %xmm1
246*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[3,2],mem[1,0]
247*9880d681SAndroid Build Coastguard Worker
248*9880d681SAndroid Build Coastguard Workervshufps $27, %xmm0, %xmm1, %xmm2
249*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[3,2],xmm0[1,0]
250*9880d681SAndroid Build Coastguard Workervshufps $27, (%rax), %xmm1, %xmm2
251*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[3,2],mem[1,0]
252*9880d681SAndroid Build Coastguard Worker
253*9880d681SAndroid Build Coastguard Workervshufps $27, %ymm0, %ymm1, %ymm2
254*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[3,2],ymm0[1,0],ymm1[7,6],ymm0[5,4]
255*9880d681SAndroid Build Coastguard Workervshufps $27, (%rax), %ymm1, %ymm2
256*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[3,2],mem[1,0],ymm1[7,6],mem[5,4]
257*9880d681SAndroid Build Coastguard Worker
258*9880d681SAndroid Build Coastguard Workershufpd $3, %xmm0, %xmm1
259*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[1],xmm0[1]
260*9880d681SAndroid Build Coastguard Workershufpd $3, (%rax), %xmm1
261*9880d681SAndroid Build Coastguard Worker# CHECK: xmm1 = xmm1[1],mem[1]
262*9880d681SAndroid Build Coastguard Worker
263*9880d681SAndroid Build Coastguard Workervshufpd $3, %xmm0, %xmm1, %xmm2
264*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[1],xmm0[1]
265*9880d681SAndroid Build Coastguard Workervshufpd $3, (%rax), %xmm1, %xmm2
266*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[1],mem[1]
267*9880d681SAndroid Build Coastguard Worker
268*9880d681SAndroid Build Coastguard Workervshufpd $11, %ymm0, %ymm1, %ymm2
269*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[1],ymm0[1],ymm1[2],ymm0[3]
270*9880d681SAndroid Build Coastguard Workervshufpd $11, (%rax), %ymm1, %ymm2
271*9880d681SAndroid Build Coastguard Worker# CHECK: ymm2 = ymm1[1],mem[1],ymm1[2],mem[3]
272*9880d681SAndroid Build Coastguard Worker
273*9880d681SAndroid Build Coastguard Workervinsertps $16, %xmm0, %xmm1, %xmm2
274*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[0],xmm0[0],xmm1[2,3]
275*9880d681SAndroid Build Coastguard Workervinsertps $16, (%rax), %xmm1, %xmm2
276*9880d681SAndroid Build Coastguard Worker# CHECK: xmm2 = xmm1[0],mem[0],xmm1[2,3]
277