Lines Matching refs:SKX
2 ; RUN: llc < %s -mtriple=x86_64-apple-darwin -mcpu=skx | FileCheck --check-prefix=SKX %s
6 ; SKX-LABEL: extract_subvector128_v32i16:
7 ; SKX: ## %bb.0:
8 ; SKX-NEXT: vextractf32x4 $2, %zmm0, %xmm0
9 ; SKX-NEXT: vzeroupper
10 ; SKX-NEXT: retq
16 ; SKX-LABEL: extract_subvector128_v32i16_first_element:
17 ; SKX: ## %bb.0:
18 ; SKX-NEXT: ## kill: def $xmm0 killed $xmm0 killed $zmm0
19 ; SKX-NEXT: vzeroupper
20 ; SKX-NEXT: retq
26 ; SKX-LABEL: extract_subvector128_v64i8:
27 ; SKX: ## %bb.0:
28 ; SKX-NEXT: vextractf32x4 $2, %zmm0, %xmm0
29 ; SKX-NEXT: vzeroupper
30 ; SKX-NEXT: retq
36 ; SKX-LABEL: extract_subvector128_v64i8_first_element:
37 ; SKX: ## %bb.0:
38 ; SKX-NEXT: ## kill: def $xmm0 killed $xmm0 killed $zmm0
39 ; SKX-NEXT: vzeroupper
40 ; SKX-NEXT: retq
47 ; SKX-LABEL: extract_subvector256_v32i16:
48 ; SKX: ## %bb.0:
49 ; SKX-NEXT: vextractf64x4 $1, %zmm0, %ymm0
50 ; SKX-NEXT: retq
56 ; SKX-LABEL: extract_subvector256_v64i8:
57 ; SKX: ## %bb.0:
58 ; SKX-NEXT: vextractf64x4 $1, %zmm0, %ymm0
59 ; SKX-NEXT: retq
65 ; SKX-LABEL: extract_subvector256_v8f64_store:
66 ; SKX: ## %bb.0: ## %entry
67 ; SKX-NEXT: vextractf128 $1, %ymm0, (%rdi)
68 ; SKX-NEXT: vzeroupper
69 ; SKX-NEXT: retq
78 ; SKX-LABEL: extract_subvector256_v8f32_store:
79 ; SKX: ## %bb.0: ## %entry
80 ; SKX-NEXT: vextractf128 $1, %ymm0, (%rdi)
81 ; SKX-NEXT: vzeroupper
82 ; SKX-NEXT: retq
91 ; SKX-LABEL: extract_subvector256_v4i64_store:
92 ; SKX: ## %bb.0: ## %entry
93 ; SKX-NEXT: vextractf128 $1, %ymm0, (%rdi)
94 ; SKX-NEXT: vzeroupper
95 ; SKX-NEXT: retq
104 ; SKX-LABEL: extract_subvector256_v8i32_store:
105 ; SKX: ## %bb.0: ## %entry
106 ; SKX-NEXT: vextractf128 $1, %ymm0, (%rdi)
107 ; SKX-NEXT: vzeroupper
108 ; SKX-NEXT: retq
117 ; SKX-LABEL: extract_subvector256_v16i16_store:
118 ; SKX: ## %bb.0: ## %entry
119 ; SKX-NEXT: vextractf128 $1, %ymm0, (%rdi)
120 ; SKX-NEXT: vzeroupper
121 ; SKX-NEXT: retq
130 ; SKX-LABEL: extract_subvector256_v32i8_store:
131 ; SKX: ## %bb.0: ## %entry
132 ; SKX-NEXT: vextractf128 $1, %ymm0, (%rdi)
133 ; SKX-NEXT: vzeroupper
134 ; SKX-NEXT: retq
143 ; SKX-LABEL: extract_subvector256_v4f64_store_lo:
144 ; SKX: ## %bb.0: ## %entry
145 ; SKX-NEXT: vmovups %xmm0, (%rdi)
146 ; SKX-NEXT: vzeroupper
147 ; SKX-NEXT: retq
156 ; SKX-LABEL: extract_subvector256_v4f64_store_lo_align_16:
157 ; SKX: ## %bb.0: ## %entry
158 ; SKX-NEXT: vmovaps %xmm0, (%rdi)
159 ; SKX-NEXT: vzeroupper
160 ; SKX-NEXT: retq
169 ; SKX-LABEL: extract_subvector256_v4f32_store_lo:
170 ; SKX: ## %bb.0: ## %entry
171 ; SKX-NEXT: vmovups %xmm0, (%rdi)
172 ; SKX-NEXT: vzeroupper
173 ; SKX-NEXT: retq
182 ; SKX-LABEL: extract_subvector256_v4f32_store_lo_align_16:
183 ; SKX: ## %bb.0: ## %entry
184 ; SKX-NEXT: vmovaps %xmm0, (%rdi)
185 ; SKX-NEXT: vzeroupper
186 ; SKX-NEXT: retq
195 ; SKX-LABEL: extract_subvector256_v2i64_store_lo:
196 ; SKX: ## %bb.0: ## %entry
197 ; SKX-NEXT: vmovups %xmm0, (%rdi)
198 ; SKX-NEXT: vzeroupper
199 ; SKX-NEXT: retq
208 ; SKX-LABEL: extract_subvector256_v2i64_store_lo_align_16:
209 ; SKX: ## %bb.0: ## %entry
210 ; SKX-NEXT: vmovaps %xmm0, (%rdi)
211 ; SKX-NEXT: vzeroupper
212 ; SKX-NEXT: retq
221 ; SKX-LABEL: extract_subvector256_v4i32_store_lo:
222 ; SKX: ## %bb.0: ## %entry
223 ; SKX-NEXT: vmovups %xmm0, (%rdi)
224 ; SKX-NEXT: vzeroupper
225 ; SKX-NEXT: retq
234 ; SKX-LABEL: extract_subvector256_v4i32_store_lo_align_16:
235 ; SKX: ## %bb.0: ## %entry
236 ; SKX-NEXT: vmovaps %xmm0, (%rdi)
237 ; SKX-NEXT: vzeroupper
238 ; SKX-NEXT: retq
247 ; SKX-LABEL: extract_subvector256_v8i16_store_lo:
248 ; SKX: ## %bb.0: ## %entry
249 ; SKX-NEXT: vmovups %xmm0, (%rdi)
250 ; SKX-NEXT: vzeroupper
251 ; SKX-NEXT: retq
260 ; SKX-LABEL: extract_subvector256_v8i16_store_lo_align_16:
261 ; SKX: ## %bb.0: ## %entry
262 ; SKX-NEXT: vmovaps %xmm0, (%rdi)
263 ; SKX-NEXT: vzeroupper
264 ; SKX-NEXT: retq
273 ; SKX-LABEL: extract_subvector256_v16i8_store_lo:
274 ; SKX: ## %bb.0: ## %entry
275 ; SKX-NEXT: vmovups %xmm0, (%rdi)
276 ; SKX-NEXT: vzeroupper
277 ; SKX-NEXT: retq
286 ; SKX-LABEL: extract_subvector256_v16i8_store_lo_align_16:
287 ; SKX: ## %bb.0: ## %entry
288 ; SKX-NEXT: vmovaps %xmm0, (%rdi)
289 ; SKX-NEXT: vzeroupper
290 ; SKX-NEXT: retq
299 ; SKX-LABEL: extract_subvector512_v2f64_store_lo:
300 ; SKX: ## %bb.0: ## %entry
301 ; SKX-NEXT: vmovups %xmm0, (%rdi)
302 ; SKX-NEXT: vzeroupper
303 ; SKX-NEXT: retq
312 ; SKX-LABEL: extract_subvector512_v2f64_store_lo_align_16:
313 ; SKX: ## %bb.0: ## %entry
314 ; SKX-NEXT: vmovaps %xmm0, (%rdi)
315 ; SKX-NEXT: vzeroupper
316 ; SKX-NEXT: retq
325 ; SKX-LABEL: extract_subvector512_v4f32_store_lo:
326 ; SKX: ## %bb.0: ## %entry
327 ; SKX-NEXT: vmovups %xmm0, (%rdi)
328 ; SKX-NEXT: vzeroupper
329 ; SKX-NEXT: retq
338 ; SKX-LABEL: extract_subvector512_v4f32_store_lo_align_16:
339 ; SKX: ## %bb.0: ## %entry
340 ; SKX-NEXT: vmovaps %xmm0, (%rdi)
341 ; SKX-NEXT: vzeroupper
342 ; SKX-NEXT: retq
351 ; SKX-LABEL: extract_subvector512_v2i64_store_lo:
352 ; SKX: ## %bb.0: ## %entry
353 ; SKX-NEXT: vmovups %xmm0, (%rdi)
354 ; SKX-NEXT: vzeroupper
355 ; SKX-NEXT: retq
364 ; SKX-LABEL: extract_subvector512_v2i64_store_lo_align_16:
365 ; SKX: ## %bb.0: ## %entry
366 ; SKX-NEXT: vmovaps %xmm0, (%rdi)
367 ; SKX-NEXT: vzeroupper
368 ; SKX-NEXT: retq
377 ; SKX-LABEL: extract_subvector512_v4i32_store_lo:
378 ; SKX: ## %bb.0: ## %entry
379 ; SKX-NEXT: vmovups %xmm0, (%rdi)
380 ; SKX-NEXT: vzeroupper
381 ; SKX-NEXT: retq
390 ; SKX-LABEL: extract_subvector512_v4i32_store_lo_align_16:
391 ; SKX: ## %bb.0: ## %entry
392 ; SKX-NEXT: vmovaps %xmm0, (%rdi)
393 ; SKX-NEXT: vzeroupper
394 ; SKX-NEXT: retq
403 ; SKX-LABEL: extract_subvector512_v8i16_store_lo:
404 ; SKX: ## %bb.0: ## %entry
405 ; SKX-NEXT: vmovups %xmm0, (%rdi)
406 ; SKX-NEXT: vzeroupper
407 ; SKX-NEXT: retq
416 ; SKX-LABEL: extract_subvector512_v16i8_store_lo:
417 ; SKX: ## %bb.0: ## %entry
418 ; SKX-NEXT: vmovups %xmm0, (%rdi)
419 ; SKX-NEXT: vzeroupper
420 ; SKX-NEXT: retq
429 ; SKX-LABEL: extract_subvector512_v16i8_store_lo_align_16:
430 ; SKX: ## %bb.0: ## %entry
431 ; SKX-NEXT: vmovaps %xmm0, (%rdi)
432 ; SKX-NEXT: vzeroupper
433 ; SKX-NEXT: retq
442 ; SKX-LABEL: extract_subvector512_v4f64_store_lo:
443 ; SKX: ## %bb.0: ## %entry
444 ; SKX-NEXT: vmovups %ymm0, (%rdi)
445 ; SKX-NEXT: vzeroupper
446 ; SKX-NEXT: retq
455 ; SKX-LABEL: extract_subvector512_v4f64_store_lo_align_16:
456 ; SKX: ## %bb.0: ## %entry
457 ; SKX-NEXT: vmovups %ymm0, (%rdi)
458 ; SKX-NEXT: vzeroupper
459 ; SKX-NEXT: retq
468 ; SKX-LABEL: extract_subvector512_v4f64_store_lo_align_32:
469 ; SKX: ## %bb.0: ## %entry
470 ; SKX-NEXT: vmovaps %ymm0, (%rdi)
471 ; SKX-NEXT: vzeroupper
472 ; SKX-NEXT: retq
481 ; SKX-LABEL: extract_subvector512_v8f32_store_lo:
482 ; SKX: ## %bb.0: ## %entry
483 ; SKX-NEXT: vmovups %ymm0, (%rdi)
484 ; SKX-NEXT: vzeroupper
485 ; SKX-NEXT: retq
494 ; SKX-LABEL: extract_subvector512_v8f32_store_lo_align_16:
495 ; SKX: ## %bb.0: ## %entry
496 ; SKX-NEXT: vmovups %ymm0, (%rdi)
497 ; SKX-NEXT: vzeroupper
498 ; SKX-NEXT: retq
507 ; SKX-LABEL: extract_subvector512_v8f32_store_lo_align_32:
508 ; SKX: ## %bb.0: ## %entry
509 ; SKX-NEXT: vmovaps %ymm0, (%rdi)
510 ; SKX-NEXT: vzeroupper
511 ; SKX-NEXT: retq
520 ; SKX-LABEL: extract_subvector512_v4i64_store_lo:
521 ; SKX: ## %bb.0: ## %entry
522 ; SKX-NEXT: vmovups %ymm0, (%rdi)
523 ; SKX-NEXT: vzeroupper
524 ; SKX-NEXT: retq
533 ; SKX-LABEL: extract_subvector512_v4i64_store_lo_align_16:
534 ; SKX: ## %bb.0: ## %entry
535 ; SKX-NEXT: vmovups %ymm0, (%rdi)
536 ; SKX-NEXT: vzeroupper
537 ; SKX-NEXT: retq
546 ; SKX-LABEL: extract_subvector512_v4i64_store_lo_align_32:
547 ; SKX: ## %bb.0: ## %entry
548 ; SKX-NEXT: vmovaps %ymm0, (%rdi)
549 ; SKX-NEXT: vzeroupper
550 ; SKX-NEXT: retq
559 ; SKX-LABEL: extract_subvector512_v8i32_store_lo:
560 ; SKX: ## %bb.0: ## %entry
561 ; SKX-NEXT: vmovups %ymm0, (%rdi)
562 ; SKX-NEXT: vzeroupper
563 ; SKX-NEXT: retq
572 ; SKX-LABEL: extract_subvector512_v8i32_store_lo_align_16:
573 ; SKX: ## %bb.0: ## %entry
574 ; SKX-NEXT: vmovups %ymm0, (%rdi)
575 ; SKX-NEXT: vzeroupper
576 ; SKX-NEXT: retq
585 ; SKX-LABEL: extract_subvector512_v8i32_store_lo_align_32:
586 ; SKX: ## %bb.0: ## %entry
587 ; SKX-NEXT: vmovaps %ymm0, (%rdi)
588 ; SKX-NEXT: vzeroupper
589 ; SKX-NEXT: retq
598 ; SKX-LABEL: extract_subvector512_v16i16_store_lo:
599 ; SKX: ## %bb.0: ## %entry
600 ; SKX-NEXT: vmovups %ymm0, (%rdi)
601 ; SKX-NEXT: vzeroupper
602 ; SKX-NEXT: retq
611 ; SKX-LABEL: extract_subvector512_v16i16_store_lo_align_16:
612 ; SKX: ## %bb.0: ## %entry
613 ; SKX-NEXT: vmovups %ymm0, (%rdi)
614 ; SKX-NEXT: vzeroupper
615 ; SKX-NEXT: retq
624 ; SKX-LABEL: extract_subvector512_v16i16_store_lo_align_32:
625 ; SKX: ## %bb.0: ## %entry
626 ; SKX-NEXT: vmovaps %ymm0, (%rdi)
627 ; SKX-NEXT: vzeroupper
628 ; SKX-NEXT: retq
637 ; SKX-LABEL: extract_subvector512_v32i8_store_lo:
638 ; SKX: ## %bb.0: ## %entry
639 ; SKX-NEXT: vmovups %ymm0, (%rdi)
640 ; SKX-NEXT: vzeroupper
641 ; SKX-NEXT: retq
650 ; SKX-LABEL: extract_subvector512_v32i8_store_lo_align_16:
651 ; SKX: ## %bb.0: ## %entry
652 ; SKX-NEXT: vmovups %ymm0, (%rdi)
653 ; SKX-NEXT: vzeroupper
654 ; SKX-NEXT: retq
663 ; SKX-LABEL: extract_subvector512_v32i8_store_lo_align_32:
664 ; SKX: ## %bb.0: ## %entry
665 ; SKX-NEXT: vmovaps %ymm0, (%rdi)
666 ; SKX-NEXT: vzeroupper
667 ; SKX-NEXT: retq
676 ; SKX-LABEL: test_mm512_mask_extractf64x4_pd:
677 ; SKX: ## %bb.0: ## %entry
678 ; SKX-NEXT: kmovd %edi, %k1
679 ; SKX-NEXT: vextractf64x4 $1, %zmm1, %ymm0 {%k1}
680 ; SKX-NEXT: retq
690 ; SKX-LABEL: test_mm512_maskz_extractf64x4_pd:
691 ; SKX: ## %bb.0: ## %entry
692 ; SKX-NEXT: kmovd %edi, %k1
693 ; SKX-NEXT: vextractf64x4 $1, %zmm0, %ymm0 {%k1} {z}
694 ; SKX-NEXT: retq
704 ; SKX-LABEL: test_mm512_mask_extractf32x4_ps:
705 ; SKX: ## %bb.0: ## %entry
706 ; SKX-NEXT: kmovd %edi, %k1
707 ; SKX-NEXT: vextractf32x4 $1, %zmm1, %xmm0 {%k1}
708 ; SKX-NEXT: vzeroupper
709 ; SKX-NEXT: retq
720 ; SKX-LABEL: test_mm512_maskz_extractf32x4_ps:
721 ; SKX: ## %bb.0: ## %entry
722 ; SKX-NEXT: kmovd %edi, %k1
723 ; SKX-NEXT: vextractf32x4 $1, %zmm0, %xmm0 {%k1} {z}
724 ; SKX-NEXT: vzeroupper
725 ; SKX-NEXT: retq
736 ; SKX-LABEL: test_mm256_mask_extractf64x2_pd:
737 ; SKX: ## %bb.0: ## %entry
738 ; SKX-NEXT: kmovd %edi, %k1
739 ; SKX-NEXT: vextractf64x2 $1, %ymm1, %xmm0 {%k1}
740 ; SKX-NEXT: vzeroupper
741 ; SKX-NEXT: retq
751 ; SKX-LABEL: test_mm256_maskz_extractf64x2_pd:
752 ; SKX: ## %bb.0: ## %entry
753 ; SKX-NEXT: kmovd %edi, %k1
754 ; SKX-NEXT: vextractf64x2 $1, %ymm0, %xmm0 {%k1} {z}
755 ; SKX-NEXT: vzeroupper
756 ; SKX-NEXT: retq
766 ; SKX-LABEL: test_mm256_mask_extracti64x2_epi64:
767 ; SKX: ## %bb.0: ## %entry
768 ; SKX-NEXT: kmovd %edi, %k1
769 ; SKX-NEXT: vextracti64x2 $1, %ymm1, %xmm0 {%k1}
770 ; SKX-NEXT: vzeroupper
771 ; SKX-NEXT: retq
781 ; SKX-LABEL: test_mm256_maskz_extracti64x2_epi64:
782 ; SKX: ## %bb.0: ## %entry
783 ; SKX-NEXT: kmovd %edi, %k1
784 ; SKX-NEXT: vextracti64x2 $1, %ymm0, %xmm0 {%k1} {z}
785 ; SKX-NEXT: vzeroupper
786 ; SKX-NEXT: retq
796 ; SKX-LABEL: test_mm256_mask_extractf32x4_ps:
797 ; SKX: ## %bb.0: ## %entry
798 ; SKX-NEXT: kmovd %edi, %k1
799 ; SKX-NEXT: vextractf32x4 $1, %ymm1, %xmm0 {%k1}
800 ; SKX-NEXT: vzeroupper
801 ; SKX-NEXT: retq
811 ; SKX-LABEL: test_mm256_maskz_extractf32x4_ps:
812 ; SKX: ## %bb.0: ## %entry
813 ; SKX-NEXT: kmovd %edi, %k1
814 ; SKX-NEXT: vextractf32x4 $1, %ymm0, %xmm0 {%k1} {z}
815 ; SKX-NEXT: vzeroupper
816 ; SKX-NEXT: retq
826 ; SKX-LABEL: test_mm256_mask_extracti32x4_epi32:
827 ; SKX: ## %bb.0: ## %entry
828 ; SKX-NEXT: kmovd %edi, %k1
829 ; SKX-NEXT: vextracti32x4 $1, %ymm1, %xmm0 {%k1}
830 ; SKX-NEXT: vzeroupper
831 ; SKX-NEXT: retq
844 ; SKX-LABEL: test_mm256_maskz_extracti32x4_epi32:
845 ; SKX: ## %bb.0: ## %entry
846 ; SKX-NEXT: kmovd %edi, %k1
847 ; SKX-NEXT: vextracti32x4 $1, %ymm0, %xmm0 {%k1} {z}
848 ; SKX-NEXT: vzeroupper
849 ; SKX-NEXT: retq
861 ; SKX-LABEL: test_mm512_mask_extractf32x8_ps:
862 ; SKX: ## %bb.0: ## %entry
863 ; SKX-NEXT: kmovd %edi, %k1
864 ; SKX-NEXT: vextractf32x8 $1, %zmm1, %ymm0 {%k1}
865 ; SKX-NEXT: retq
874 ; SKX-LABEL: test_mm512_maskz_extractf32x8_ps:
875 ; SKX: ## %bb.0: ## %entry
876 ; SKX-NEXT: kmovd %edi, %k1
877 ; SKX-NEXT: vextractf32x8 $1, %zmm0, %ymm0 {%k1} {z}
878 ; SKX-NEXT: retq
887 ; SKX-LABEL: test_mm512_mask_extractf64x2_pd:
888 ; SKX: ## %bb.0: ## %entry
889 ; SKX-NEXT: kmovd %edi, %k1
890 ; SKX-NEXT: vextractf64x2 $3, %zmm1, %xmm0 {%k1}
891 ; SKX-NEXT: vzeroupper
892 ; SKX-NEXT: retq
902 ; SKX-LABEL: test_mm512_maskz_extractf64x2_pd:
903 ; SKX: ## %bb.0: ## %entry
904 ; SKX-NEXT: kmovd %edi, %k1
905 ; SKX-NEXT: vextractf64x2 $3, %zmm0, %xmm0 {%k1} {z}
906 ; SKX-NEXT: vzeroupper
907 ; SKX-NEXT: retq