Lines Matching refs:AVX2

4 …llc < %s -mtriple=x86_64-unknwon -mattr=+avx2 | FileCheck %s --check-prefix=AVX --check-prefix=AVX2
5 ; RUN: llc < %s -mtriple=i686-unknwon -mattr=+avx2 | FileCheck %s --check-prefix=X32-AVX2
27 ; X32-AVX2-LABEL: test1:
28 ; X32-AVX2: # %bb.0:
29 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %eax
30 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %ecx
31 ; X32-AVX2-NEXT: vpmovsxbq (%ecx), %xmm0
32 ; X32-AVX2-NEXT: vxorps %xmm1, %xmm1, %xmm1
33 ; X32-AVX2-NEXT: vmovups %xmm1, (%eax)
34 ; X32-AVX2-NEXT: vmovdqu %xmm0, (%eax)
35 ; X32-AVX2-NEXT: retl
65 ; AVX2-LABEL: test2:
66 ; AVX2: # %bb.0:
67 ; AVX2-NEXT: vpmovsxbq (%rdi), %ymm0
68 ; AVX2-NEXT: vxorps %xmm1, %xmm1, %xmm1
69 ; AVX2-NEXT: vmovups %ymm1, (%rax)
70 ; AVX2-NEXT: vmovdqu %ymm0, (%rsi)
71 ; AVX2-NEXT: vzeroupper
72 ; AVX2-NEXT: retq
74 ; X32-AVX2-LABEL: test2:
75 ; X32-AVX2: # %bb.0:
76 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %eax
77 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %ecx
78 ; X32-AVX2-NEXT: vpmovsxbq (%ecx), %ymm0
79 ; X32-AVX2-NEXT: vxorps %xmm1, %xmm1, %xmm1
80 ; X32-AVX2-NEXT: vmovups %ymm1, (%eax)
81 ; X32-AVX2-NEXT: vmovdqu %ymm0, (%eax)
82 ; X32-AVX2-NEXT: vzeroupper
83 ; X32-AVX2-NEXT: retl
108 ; X32-AVX2-LABEL: test3:
109 ; X32-AVX2: # %bb.0:
110 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %eax
111 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %ecx
112 ; X32-AVX2-NEXT: vpmovsxbd (%ecx), %xmm0
113 ; X32-AVX2-NEXT: vxorps %xmm1, %xmm1, %xmm1
114 ; X32-AVX2-NEXT: vmovups %xmm1, (%eax)
115 ; X32-AVX2-NEXT: vmovdqu %xmm0, (%eax)
116 ; X32-AVX2-NEXT: retl
146 ; AVX2-LABEL: test4:
147 ; AVX2: # %bb.0:
148 ; AVX2-NEXT: vpmovsxbd (%rdi), %ymm0
149 ; AVX2-NEXT: vxorps %xmm1, %xmm1, %xmm1
150 ; AVX2-NEXT: vmovups %ymm1, (%rax)
151 ; AVX2-NEXT: vmovdqu %ymm0, (%rsi)
152 ; AVX2-NEXT: vzeroupper
153 ; AVX2-NEXT: retq
155 ; X32-AVX2-LABEL: test4:
156 ; X32-AVX2: # %bb.0:
157 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %eax
158 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %ecx
159 ; X32-AVX2-NEXT: vpmovsxbd (%ecx), %ymm0
160 ; X32-AVX2-NEXT: vxorps %xmm1, %xmm1, %xmm1
161 ; X32-AVX2-NEXT: vmovups %ymm1, (%eax)
162 ; X32-AVX2-NEXT: vmovdqu %ymm0, (%eax)
163 ; X32-AVX2-NEXT: vzeroupper
164 ; X32-AVX2-NEXT: retl
189 ; X32-AVX2-LABEL: test5:
190 ; X32-AVX2: # %bb.0:
191 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %eax
192 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %ecx
193 ; X32-AVX2-NEXT: vpmovsxbw (%ecx), %xmm0
194 ; X32-AVX2-NEXT: vxorps %xmm1, %xmm1, %xmm1
195 ; X32-AVX2-NEXT: vmovups %xmm1, (%eax)
196 ; X32-AVX2-NEXT: vmovdqu %xmm0, (%eax)
197 ; X32-AVX2-NEXT: retl
227 ; AVX2-LABEL: test6:
228 ; AVX2: # %bb.0:
229 ; AVX2-NEXT: vpmovsxbw (%rdi), %ymm0
230 ; AVX2-NEXT: vxorps %xmm1, %xmm1, %xmm1
231 ; AVX2-NEXT: vmovups %ymm1, (%rax)
232 ; AVX2-NEXT: vmovdqu %ymm0, (%rsi)
233 ; AVX2-NEXT: vzeroupper
234 ; AVX2-NEXT: retq
236 ; X32-AVX2-LABEL: test6:
237 ; X32-AVX2: # %bb.0:
238 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %eax
239 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %ecx
240 ; X32-AVX2-NEXT: vpmovsxbw (%ecx), %ymm0
241 ; X32-AVX2-NEXT: vxorps %xmm1, %xmm1, %xmm1
242 ; X32-AVX2-NEXT: vmovups %ymm1, (%eax)
243 ; X32-AVX2-NEXT: vmovdqu %ymm0, (%eax)
244 ; X32-AVX2-NEXT: vzeroupper
245 ; X32-AVX2-NEXT: retl
270 ; X32-AVX2-LABEL: test7:
271 ; X32-AVX2: # %bb.0:
272 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %eax
273 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %ecx
274 ; X32-AVX2-NEXT: vpmovsxwq (%ecx), %xmm0
275 ; X32-AVX2-NEXT: vxorps %xmm1, %xmm1, %xmm1
276 ; X32-AVX2-NEXT: vmovups %xmm1, (%eax)
277 ; X32-AVX2-NEXT: vmovdqu %xmm0, (%eax)
278 ; X32-AVX2-NEXT: retl
308 ; AVX2-LABEL: test8:
309 ; AVX2: # %bb.0:
310 ; AVX2-NEXT: vpmovsxwq (%rdi), %ymm0
311 ; AVX2-NEXT: vxorps %xmm1, %xmm1, %xmm1
312 ; AVX2-NEXT: vmovups %ymm1, (%rax)
313 ; AVX2-NEXT: vmovdqu %ymm0, (%rsi)
314 ; AVX2-NEXT: vzeroupper
315 ; AVX2-NEXT: retq
317 ; X32-AVX2-LABEL: test8:
318 ; X32-AVX2: # %bb.0:
319 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %eax
320 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %ecx
321 ; X32-AVX2-NEXT: vpmovsxwq (%ecx), %ymm0
322 ; X32-AVX2-NEXT: vxorps %xmm1, %xmm1, %xmm1
323 ; X32-AVX2-NEXT: vmovups %ymm1, (%eax)
324 ; X32-AVX2-NEXT: vmovdqu %ymm0, (%eax)
325 ; X32-AVX2-NEXT: vzeroupper
326 ; X32-AVX2-NEXT: retl
351 ; X32-AVX2-LABEL: test9:
352 ; X32-AVX2: # %bb.0:
353 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %eax
354 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %ecx
355 ; X32-AVX2-NEXT: vpmovsxwd (%ecx), %xmm0
356 ; X32-AVX2-NEXT: vxorps %xmm1, %xmm1, %xmm1
357 ; X32-AVX2-NEXT: vmovups %xmm1, (%eax)
358 ; X32-AVX2-NEXT: vmovdqu %xmm0, (%eax)
359 ; X32-AVX2-NEXT: retl
389 ; AVX2-LABEL: test10:
390 ; AVX2: # %bb.0:
391 ; AVX2-NEXT: vpmovsxwd (%rdi), %ymm0
392 ; AVX2-NEXT: vxorps %xmm1, %xmm1, %xmm1
393 ; AVX2-NEXT: vmovups %ymm1, (%rax)
394 ; AVX2-NEXT: vmovdqu %ymm0, (%rsi)
395 ; AVX2-NEXT: vzeroupper
396 ; AVX2-NEXT: retq
398 ; X32-AVX2-LABEL: test10:
399 ; X32-AVX2: # %bb.0:
400 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %eax
401 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %ecx
402 ; X32-AVX2-NEXT: vpmovsxwd (%ecx), %ymm0
403 ; X32-AVX2-NEXT: vxorps %xmm1, %xmm1, %xmm1
404 ; X32-AVX2-NEXT: vmovups %ymm1, (%eax)
405 ; X32-AVX2-NEXT: vmovdqu %ymm0, (%eax)
406 ; X32-AVX2-NEXT: vzeroupper
407 ; X32-AVX2-NEXT: retl
432 ; X32-AVX2-LABEL: test11:
433 ; X32-AVX2: # %bb.0:
434 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %eax
435 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %ecx
436 ; X32-AVX2-NEXT: vpmovsxdq (%ecx), %xmm0
437 ; X32-AVX2-NEXT: vxorps %xmm1, %xmm1, %xmm1
438 ; X32-AVX2-NEXT: vmovups %xmm1, (%eax)
439 ; X32-AVX2-NEXT: vmovdqu %xmm0, (%eax)
440 ; X32-AVX2-NEXT: retl
470 ; AVX2-LABEL: test12:
471 ; AVX2: # %bb.0:
472 ; AVX2-NEXT: vpmovsxdq (%rdi), %ymm0
473 ; AVX2-NEXT: vxorps %xmm1, %xmm1, %xmm1
474 ; AVX2-NEXT: vmovups %ymm1, (%rax)
475 ; AVX2-NEXT: vmovdqu %ymm0, (%rsi)
476 ; AVX2-NEXT: vzeroupper
477 ; AVX2-NEXT: retq
479 ; X32-AVX2-LABEL: test12:
480 ; X32-AVX2: # %bb.0:
481 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %eax
482 ; X32-AVX2-NEXT: movl {{[0-9]+}}(%esp), %ecx
483 ; X32-AVX2-NEXT: vpmovsxdq (%ecx), %ymm0
484 ; X32-AVX2-NEXT: vxorps %xmm1, %xmm1, %xmm1
485 ; X32-AVX2-NEXT: vmovups %ymm1, (%eax)
486 ; X32-AVX2-NEXT: vmovdqu %ymm0, (%eax)
487 ; X32-AVX2-NEXT: vzeroupper
488 ; X32-AVX2-NEXT: retl