Home | History | Annotate | Download | only in X86

Lines Matching full:next

8 ; CHECK-NEXT:    kmovw %esi, %k0
9 ; CHECK-NEXT: kmovw %edi, %k1
10 ; CHECK-NEXT: xorl %eax, %eax
11 ; CHECK-NEXT: kortestw %k0, %k1
12 ; CHECK-NEXT: sete %al
13 ; CHECK-NEXT: retq
22 ; CHECK-NEXT: kmovw %esi, %k0
23 ; CHECK-NEXT: kmovw %edi, %k1
24 ; CHECK-NEXT: kortestw %k0, %k1
25 ; CHECK-NEXT: sbbl %eax, %eax
26 ; CHECK-NEXT: andl $1, %eax
27 ; CHECK-NEXT: retq
36 ; CHECK-NEXT: movw $8, %ax
37 ; CHECK-NEXT: kmovw %eax, %k0
38 ; CHECK-NEXT: kmovw %edi, %k1
39 ; CHECK-NEXT: kandw %k0, %k1, %k0
40 ; CHECK-NEXT: kmovw %esi, %k1
41 ; CHECK-NEXT: kandw %k1, %k0, %k0
42 ; CHECK-NEXT: kmovw %k0, %eax
43 ; CHECK-NEXT: retq
53 ; CHECK-NEXT: kmovw %edi, %k0
54 ; CHECK-NEXT: knotw %k0, %k0
55 ; CHECK-NEXT: kmovw %k0, %eax
56 ; CHECK-NEXT: retq
66 ; CHECK-NEXT: kmovw %edi, %k0
67 ; CHECK-NEXT: kmovw %esi, %k1
68 ; CHECK-NEXT: kunpckbw %k1, %k0, %k0
69 ; CHECK-NEXT: kmovw %k0, %eax
70 ; CHECK-NEXT: ## kill: %AX<def> %AX<kill> %EAX<kill>
71 ; CHECK-NEXT: retq
79 ; CHECK-NEXT: vrcp14ps %zmm0, %zmm0
80 ; CHECK-NEXT: retq
89 ; CHECK-NEXT: vrcp14pd %zmm0, %zmm0
90 ; CHECK-NEXT: retq
101 ; CHECK-NEXT: vrndscalepd $11, %zmm0, %zmm0
102 ; CHECK-NEXT: retq
112 ; CHECK-NEXT: vrndscaleps $11, %zmm0, %zmm0
113 ; CHECK-NEXT: retq
121 ; CHECK-NEXT: vrsqrt14ps %zmm0, %zmm0
122 ; CHECK-NEXT: retq
131 ; CHECK-NEXT: vsqrtpd %zmm0, %zmm0
132 ; CHECK-NEXT: retq
141 ; CHECK-NEXT: vsqrtps %zmm0, %zmm0
142 ; CHECK-NEXT: retq
149 ; CHECK-NEXT: vsqrtps {rz-sae}, %zmm0, %zmm0
150 ; CHECK-NEXT: retq
159 ; CHECK-NEXT: vgetexppd %zmm0, %zmm0
160 ; CHECK-NEXT: retq
167 ; CHECK-NEXT: vgetexppd {sae}, %zmm0, %zmm0
168 ; CHECK-NEXT: retq
177 ; CHECK-NEXT: vgetexpps %zmm0, %zmm0
178 ; CHECK-NEXT: retq
186 ; CHECK-NEXT: vgetexpps {sae}, %zmm0, %zmm0
187 ; CHECK-NEXT: retq
198 ; CHECK-NEXT: andl $1, %edi
199 ; CHECK-NEXT: kmovw %edi, %k1
200 ; CHECK-NEXT: vmovaps %zmm2, %zmm3
201 ; CHECK-NEXT: vsqrtss %xmm1, %xmm0, %xmm3 {%k1}
202 ; CHECK-NEXT: vsqrtss {rd-sae}, %xmm1, %xmm0, %xmm2 {%k1}
203 ; CHECK-NEXT: vsqrtss {ru-sae}, %xmm1, %xmm0, %xmm4 {%k1} {z}
204 ; CHECK-NEXT: vsqrtss {rz-sae}, %xmm1, %xmm0, %xmm0
205 ; CHECK-NEXT: vaddps %xmm2, %xmm3, %xmm1
206 ; CHECK-NEXT: vaddps %xmm0, %xmm4, %xmm0
207 ; CHECK-NEXT: vaddps %xmm0, %xmm1, %xmm0
208 ; CHECK-NEXT: retq
225 ; CHECK-NEXT: andl $1, %edi
226 ; CHECK-NEXT: kmovw %edi, %k1
227 ; CHECK-NEXT: vmovaps %zmm2, %zmm3
228 ; CHECK-NEXT: vsqrtsd %xmm1, %xmm0, %xmm3 {%k1}
229 ; CHECK-NEXT: vsqrtsd {rd-sae}, %xmm1, %xmm0, %xmm2 {%k1}
230 ; CHECK-NEXT: vsqrtsd {ru-sae}, %xmm1, %xmm0, %xmm4 {%k1} {z}
231 ; CHECK-NEXT: vsqrtsd {rz-sae}, %xmm1, %xmm0, %xmm0
232 ; CHECK-NEXT: vaddpd %xmm2, %xmm3, %xmm1
233 ; CHECK-NEXT: vaddpd %xmm0, %xmm4, %xmm0
234 ; CHECK-NEXT: vaddpd %xmm0, %xmm1, %xmm0
235 ; CHECK-NEXT: retq
250 ; CHECK-NEXT: vcvtsd2si %xmm0, %rax
251 ; CHECK-NEXT: retq
260 ; CHECK-NEXT: vcvtsi2sdq %rdi, %xmm0, %xmm0
261 ; CHECK-NEXT: retq
270 ; CHECK-NEXT: vcvttsd2si %xmm0, %rcx
271 ; CHECK-NEXT: vcvttsd2si {sae}, %xmm0, %rax
272 ; CHECK-NEXT: addq %rcx, %rax
273 ; CHECK-NEXT: retq
284 ; CHECK-NEXT: vcvttsd2usi %xmm0, %ecx
285 ; CHECK-NEXT: vcvttsd2usi {sae}, %xmm0, %eax
286 ; CHECK-NEXT: addl %ecx, %eax
287 ; CHECK-NEXT: retq
298 ; CHECK-NEXT: vcvttsd2si %xmm0, %ecx
299 ; CHECK-NEXT: vcvttsd2si {sae}, %xmm0, %eax
300 ; CHECK-NEXT: addl %ecx, %eax
301 ; CHECK-NEXT: retq
314 ; CHECK-NEXT: vcvttsd2usi %xmm0, %rcx
315 ; CHECK-NEXT: vcvttsd2usi {sae}, %xmm0, %rax
316 ; CHECK-NEXT: addq %rcx, %rax
317 ; CHECK-NEXT: retq
328 ; CHECK-NEXT: vcvtss2si %xmm0, %rax
329 ; CHECK-NEXT: retq
339 ; CHECK-NEXT: vcvtsi2ssq %rdi, %xmm0, %xmm0
340 ; CHECK-NEXT: retq
350 ; CHECK-NEXT: vcvttss2si {sae}, %xmm0, %ecx
351 ; CHECK-NEXT: vcvttss2si %xmm0, %eax
352 ; CHECK-NEXT: addl %ecx, %eax
353 ; CHECK-NEXT: retq
364 ; CHECK-NEXT: vcvttss2si %xmm0, %rcx
365 ; CHECK-NEXT: vcvttss2si {sae}, %xmm0, %rax
366 ; CHECK-NEXT: addq %rcx, %rax
367 ; CHECK-NEXT: retq
378 ; CHECK-NEXT: vcvttss2usi {sae}, %xmm0, %ecx
379 ; CHECK-NEXT: vcvttss2usi %xmm0, %eax
380 ; CHECK-NEXT: addl %ecx, %eax
381 ; CHECK-NEXT: retq
392 ; CHECK-NEXT: vcvttss2usi %xmm0, %rcx
393 ; CHECK-NEXT: vcvttss2usi {sae}, %xmm0, %rax
394 ; CHECK-NEXT: addq %rcx, %rax
395 ; CHECK-NEXT: retq
406 ; CHECK-NEXT: vcvtsd2usi %xmm0, %rcx
407 ; CHECK-NEXT: vcvtsd2usi {rz-sae}, %xmm0, %rax
408 ; CHECK-NEXT: vcvtsd2usi {rd-sae}, %xmm0, %rdx
409 NEXT: addq %rcx, %rax
410 ; CHECK-NEXT: addq %rdx, %rax
411 ; CHECK-NEXT: retq
425 ; CHECK-NEXT: vcvtsd2si %xmm0, %rcx
426 ; CHECK-NEXT: vcvtsd2si {rz-sae}, %xmm0, %rax
427 ; CHECK-NEXT: vcvtsd2si {rd-sae}, %xmm0, %rdx
428 ; CHECK-NEXT: addq %rcx, %rax
429 ; CHECK-NEXT: addq %rdx, %rax
430 ; CHECK-NEXT: retq
444 ; CHECK-NEXT: vcvtss2usi %xmm0, %rcx
445 ; CHECK-NEXT: vcvtss2usi {rz-sae}, %xmm0, %rax
446 ; CHECK-NEXT: vcvtss2usi {rd-sae}, %xmm0, %rdx
447 ; CHECK-NEXT: addq %rcx, %rax
448 ; CHECK-NEXT: addq %rdx, %rax
449 ; CHECK-NEXT: retq
463 ; CHECK-NEXT: vcvtss2si %xmm0, %rcx
464 ; CHECK-NEXT: vcvtss2si {rz-sae}, %xmm0, %rax
465 ; CHECK-NEXT: vcvtss2si {rd-sae}, %xmm0, %rdx
466 ; CHECK-NEXT: addq %rcx, %rax
467 ; CHECK-NEXT: addq %rdx, %rax
468 ; CHECK-NEXT: retq
482 ; CHECK-NEXT: vcvtsd2usi %xmm0, %ecx
483 ; CHECK-NEXT: vcvtsd2usi {rz-sae}, %xmm0, %eax
484 ; CHECK-NEXT: vcvtsd2usi {rd-sae}, %xmm0, %edx
485 ; CHECK-NEXT: addl %ecx, %eax
486 ; CHECK-NEXT: addl %edx, %eax
487 ; CHECK-NEXT: retq
501 ; CHECK-NEXT: vcvtsd2si %xmm0, %ecx
502 ; CHECK-NEXT: vcvtsd2si {rz-sae}, %xmm0, %eax
503 ; CHECK-NEXT: vcvtsd2si {rd-sae}, %xmm0, %edx
504 ; CHECK-NEXT: addl %ecx, %eax
505 ; CHECK-NEXT: addl %edx, %eax
506 ; CHECK-NEXT: retq
520 ; CHECK-NEXT: vcvtss2usi %xmm0, %ecx
521 ; CHECK-NEXT: vcvtss2usi {rz-sae}, %xmm0, %eax
522 ; CHECK-NEXT: vcvtss2usi {rd-sae}, %xmm0, %edx
523 ; CHECK-NEXT: addl %ecx, %eax
524 ; CHECK-NEXT: addl %edx, %eax
525 ; CHECK-NEXT: retq
539 ; CHECK-NEXT: vcvtss2si %xmm0, %ecx
540 ; CHECK-NEXT: vcvtss2si {rz-sae}, %xmm0, %eax
541 ; CHECK-NEXT: vcvtss2si {rd-sae}, %xmm0, %edx
542 ; CHECK-NEXT: addl %ecx, %eax
543 ; CHECK-NEXT: addl %edx, %eax
544 ; CHECK-NEXT: retq
558 ; CHECK-NEXT: vcvtph2ps %ymm0, %zmm0
559 ; CHECK-NEXT: retq
567 ; CHECK-NEXT: vcvtph2ps {sae}, %ymm0, %zmm0
568 ; CHECK-NEXT: retq
576 ; CHECK-NEXT: kmovw %edi, %k1
577 ; CHECK-NEXT: vcvtph2ps %ymm0, %zmm1 {%k1}
578 ; CHECK-NEXT: vmovaps %zmm1, %zmm0
579 ; CHECK-NEXT: retq
587 ; CHECK-NEXT: kmovw %edi, %k1
588 ; CHECK-NEXT: vcvtph2ps {sae}, %ymm0, %zmm0 {%k1} {z}
589 ; CHECK-NEXT: retq
597 ; CHECK-NEXT: kmovw %edi, %k1
598 ; CHECK-NEXT: vcvtph2ps %ymm0, %zmm0 {%k1} {z}
599 ; CHECK-NEXT: retq
609 ; CHECK-NEXT: kmovw %edi, %k1
610 ; CHECK-NEXT: vcvtps2ph $2, %zmm0, %ymm1 {%k1}
611 ; CHECK-NEXT: vcvtps2ph $2, %zmm0, %ymm2 {%k1} {z}
612 ; CHECK-NEXT: vcvtps2ph $2, %zmm0, (%rsi)
613 ; CHECK-NEXT: vpaddw %ymm1, %ymm2, %ymm0
614 ; CHECK-NEXT: retq
628 ; CHECK-NEXT: vbroadcastss (%rdi), %zmm0
629 ; CHECK-NEXT: retq
638 ; CHECK-NEXT: vbroadcastsd (%rdi), %zmm0
639 ; CHECK-NEXT: retq
648 ; CHECK-NEXT: vpconflictd %zmm0, %zmm0
649 ; CHECK-NEXT: retq
659 ; CHECK-NEXT: vpconflictq %zmm0, %zmm0
660 ; CHECK-NEXT: retq
670 ; CHECK-NEXT: kmovw %edi, %k1
671 ; CHECK-NEXT: vpconflictd %zmm0, %zmm0 {%k1} {z}
672 ; CHECK-NEXT: retq
680 ; CHECK-NEXT: kmovw %edi, %k1
681 ; CHECK-NEXT: vpconflictq %zmm0, %zmm1 {%k1}
682 ; CHECK-NEXT: vmovaps %zmm1, %zmm0
683 ; CHECK-NEXT: retq
691 ; CHECK-NEXT: vplzcntd %zmm0, %zmm0
692 ; CHECK-NEXT: retq
702 ; CHECK-NEXT: vplzcntq %zmm0, %zmm0
703 ; CHECK-NEXT: retq
714 ; CHECK-NEXT: kmovw %edi, %k1
715 ; CHECK-NEXT: vplzcntd %zmm0, %zmm1 {%k1}
716 ; CHECK-NEXT: vmovaps %zmm1, %zmm0
717 ; CHECK-NEXT: retq
725 ; CHECK-NEXT: kmovw %edi, %k1
726 ; CHECK-NEXT: vplzcntq %zmm0, %zmm1 {%k1}
727 ; CHECK-NEXT: vmovaps %zmm1, %zmm0
728 ; CHECK-NEXT: retq
736 ; CHECK-NEXT: vcmpleps {sae}, %zmm1, %zmm0, %k0
737 ; CHECK-NEXT: kmovw %k0, %eax
738 ; CHECK-NEXT: ## kill: %AX<def> %AX<kill> %EAX<kill>
739 ; CHECK-NEXT: retq
748 ; CHECK-NEXT: vcmpneqpd %zmm1, %zmm0, %k0
749 ; CHECK-NEXT: kmovw %k0, %eax
750 ; CHECK-NEXT: ## kill: %AL<def> %AL<kill> %EAX<kill>
751 ; CHECK-NEXT: retq
761 ; CHECK-NEXT: vmaxpd %zmm1, %zmm0, %zmm0
762 ; CHECK-NEXT: retq
773 ; CHECK-NEXT: vminpd %zmm1, %zmm0, %zmm0
774 ; CHECK-NEXT: retq
787 ; CHECK-NEXT: kmovw %edi, %k1
788 ; CHECK-NEXT: vpabsd %zmm0, %zmm1 {%k1}
789 ; CHECK-NEXT: vpabsd %zmm0, %zmm0
790 ; CHECK-NEXT: vpaddd %zmm0, %zmm1, %zmm0
791 ; CHECK-NEXT: retq
803 ; CHECK-NEXT: kmovw %edi, %k1
804 ; CHECK-NEXT: vpabsq %zmm0, %zmm1 {%k1}
805 ; CHECK-NEXT: vpabsq %zmm0, %zmm0
806 ; CHECK-NEXT: vpaddq %zmm0, %zmm1, %zmm0
807 ; CHECK-NEXT: retq
817 ; CHECK-NEXT: kmovw %edi, %k1
818 ; CHECK-NEXT: vptestmq %zmm1, %zmm0, %k0 {%k1}
819 ; CHECK-NEXT: kmovw %k0, %ecx
820 ; CHECK-NEXT: vptestmq %zmm1, %zmm0, %k0
821 ; CHECK-NEXT: kmovw %k0, %eax
822 ; CHECK-NEXT: addb %cl, %al
823 ; CHECK-NEXT: ## kill: %AL<def> %AL<kill> %EAX<kill>
824 ; CHECK-NEXT
835 ; CHECK-NEXT: kmovw %edi, %k1
836 ; CHECK-NEXT: vptestmd %zmm1, %zmm0, %k0 {%k1}
837 ; CHECK-NEXT: kmovw %k0, %ecx
838 ; CHECK-NEXT: vptestmd %zmm1, %zmm0, %k0
839 ; CHECK-NEXT: kmovw %k0, %eax
840 ; CHECK-NEXT: addl %ecx, %eax
841 ; CHECK-NEXT: ## kill: %AX<def> %AX<kill> %EAX<kill>
842 ; CHECK-NEXT: retq
853 ; CHECK-NEXT: valignq $2, %zmm1, %zmm0, %zmm0
854 ; CHECK-NEXT: retq
862 ; CHECK-NEXT: kmovw %edi, %k1
863 ; CHECK-NEXT: valignq $2, %zmm1, %zmm0, %zmm2 {%k1}
864 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
865 ; CHECK-NEXT: retq
875 ; CHECK-NEXT: kmovw %edi, %k1
876 ; CHECK-NEXT: valignd $5, %zmm1, %zmm0, %zmm0 {%k1} {z}
877 ; CHECK-NEXT: retq
887 ; CHECK-NEXT: kmovw %esi, %k1
888 ; CHECK-NEXT: vmovss %xmm0, (%rdi) {%k1}
889 ; CHECK-NEXT: retq
899 ; CHECK-NEXT: vpcmpeqd %zmm1, %zmm0, %k0
900 ; CHECK-NEXT: vpcmpltd %zmm1, %zmm0, %k1
901 ; CHECK-NEXT: vpcmpled %zmm1, %zmm0, %k2
902 ; CHECK-NEXT: vpcmpunordd %zmm1, %zmm0, %k3
903 ; CHECK-NEXT: vpcmpneqd %zmm1, %zmm0, %k4
904 ; CHECK-NEXT: vpcmpnltd %zmm1, %zmm0, %k5
905 ; CHECK-NEXT: vpcmpnled %zmm1, %zmm0, %k6
906 ; CHECK-NEXT: vpcmpordd %zmm1, %zmm0, %k7
907 ; CHECK-NEXT: kmovw %k1, %eax
908 ; CHECK-NEXT: kmovw %k0, %ecx
909 ; CHECK-NEXT: vmovd %ecx, %xmm0
910 ; CHECK-NEXT: vpinsrw $1, %eax, %xmm0, %xmm0
911 ; CHECK-NEXT: kmovw %k2, %eax
912 ; CHECK-NEXT: vpinsrw $2, %eax, %xmm0, %xmm0
913 ; CHECK-NEXT: kmovw %k3, %eax
914 ; CHECK-NEXT: vpinsrw $3, %eax, %xmm0, %xmm0
915 ; CHECK-NEXT: kmovw %k4, %eax
916 ; CHECK-NEXT: vpinsrw $4, %eax, %xmm0, %xmm0
917 ; CHECK-NEXT: kmovw %k5, %eax
918 ; CHECK-NEXT: vpinsrw $5, %eax, %xmm0, %xmm0
919 ; CHECK-NEXT: kmovw %k6, %eax
920 ; CHECK-NEXT: vpinsrw $6, %eax, %xmm0, %xmm0
921 ; CHECK-NEXT: kmovw %k7, %eax
922 ; CHECK-NEXT: vpinsrw $7, %eax, %xmm0, %xmm0
923 ; CHECK-NEXT: retq
946 ; CHECK-NEXT: kmovw %edi, %k1
947 ; CHECK-NEXT: vpcmpeqd %zmm1, %zmm0, %k0 {%k1}
948 ; CHECK-NEXT: vpcmpltd %zmm1, %zmm0, %k2 {%k1}
949 ; CHECK-NEXT: vpcmpled %zmm1, %zmm0, %k3 {%k1}
950 ; CHECK-NEXT: vpcmpunordd %zmm1, %zmm0, %k4 {%k1}
951 ; CHECK-NEXT: vpcmpneqd %zmm1, %zmm0, %k5 {%k1}
952 ; CHECK-NEXT: vpcmpnltd %zmm1, %zmm0, %k6 {%k1}
953 ; CHECK-NEXT: vpcmpnled %zmm1, %zmm0, %k7 {%k1}
954 ; CHECK-NEXT: vpcmpordd %zmm1, %zmm0, %k1 {%k1}
955 ; CHECK-NEXT: kmovw %k2, %eax
956 ; CHECK-NEXT: kmovw %k0, %ecx
957 ; CHECK-NEXT: vmovd %ecx, %xmm0
958 ; CHECK-NEXT: vpinsrw $1, %eax, %xmm0, %xmm0
959 ; CHECK-NEXT: kmovw %k3, %eax
960 ; CHECK-NEXT: vpinsrw $2, %eax, %xmm0, %xmm0
961 ; CHECK-NEXT: kmovw %k4, %eax
962 ; CHECK-NEXT: vpinsrw $3, %eax, %xmm0, %xmm0
963 ; CHECK-NEXT: kmovw %k5, %eax
964 ; CHECK-NEXT: vpinsrw $4, %eax, %xmm0, %xmm0
965 ; CHECK-NEXT: kmovw %k6, %eax
966 ; CHECK-NEXT: vpinsrw $5, %eax, %xmm0, %xmm0
967 ; CHECK-NEXT: kmovw %k7, %eax
968 ; CHECK-NEXT: vpinsrw $6, %eax, %xmm0, %xmm0
969 ; CHECK-NEXT: kmovw %k1, %eax
970 ; CHECK-NEXT: vpinsrw $7, %eax, %xmm0, %xmm0
971 ; CHECK-NEXT: retq
996 ; CHECK-NEXT: vpcmpequd %zmm1, %zmm0, %k0
997 ; CHECK-NEXT: vpcmpltud %zmm1, %zmm0, %k1
998 ; CHECK-NEXT: vpcmpleud %zmm1, %zmm0, %k2
999 ; CHECK-NEXT: vpcmpunordud %zmm1, %zmm0, %k3
1000 ; CHECK-NEXT: vpcmpnequd %zmm1, %zmm0, %k4
1001 ; CHECK-NEXT: vpcmpnltud %zmm1, %zmm0, %k5
1002 ; CHECK-NEXT: vpcmpnleud %zmm1, %zmm0, %k6
1003 ; CHECK-NEXT: vpcmpordud %zmm1, %zmm0, %k7
1004 ; CHECK-NEXT: kmovw %k1, %eax
1005 ; CHECK-NEXT: kmovw %k0, %ecx
1006 ; CHECK-NEXT: vmovd %ecx, %xmm0
1007 ; CHECK-NEXT: vpinsrw $1, %eax, %xmm0, %xmm0
1008 ; CHECK-NEXT: kmovw %k2, %eax
1009 ; CHECK-NEXT: vpinsrw $2, %eax, %xmm0, %xmm0
1010 ; CHECK-NEXT: kmovw %k3, %eax
1011 ; CHECK-NEXT: vpinsrw $3, %eax, %xmm0, %xmm0
1012 ; CHECK-NEXT: kmovw %k4, %eax
1013 ; CHECK-NEXT: vpinsrw $4, %eax, %xmm0, %xmm0
1014 ; CHECK-NEXT: kmovw %k5, %eax
1015 ; CHECK-NEXT: vpinsrw $5, %eax, %xmm0, %xmm0
1016 ; CHECK-NEXT: kmovw %k6, %eax
1017 ; CHECK-NEXT: vpinsrw $6, %eax, %xmm0, %xmm0
1018 ; CHECK-NEXT: kmovw %k7, %eax
1019 ; CHECK-NEXT: vpinsrw $7, %eax, %xmm0, %xmm0
1020 ; CHECK-NEXT: retq
1043 ; CHECK-NEXT: kmovw %edi, %k1
1044 ; CHECK-NEXT: vpcmpequd %zmm1, %zmm0, %k0 {%k1}
1045 ; CHECK-NEXT: vpcmpltud %zmm1, %zmm0, %k2 {%k1}
1046 ; CHECK-NEXT: vpcmpleud %zmm1, %zmm0, %k3 {%k1}
1047 ; CHECK-NEXT: vpcmpunordud %zmm1, %zmm0, %k4 {%k1}
1048 ; CHECK-NEXT: vpcmpnequd %zmm1, %zmm0, %k5 {%k1}
1049 ; CHECK-NEXT: vpcmpnltud %zmm1, %zmm0, %k6 {%k1}
1050 ; CHECK-NEXT: vpcmpnleud %zmm1, %zmm0, %k7 {%k1}
1051 ; CHECK-NEXT: vpcmpordud %zmm1, %zmm0, %k1 {%k1}
1052 ; CHECK-NEXT: kmovw %k2, %eax
1053 ; CHECK-NEXT: kmovw %k0, %ecx
1054 ; CHECK-NEXT: vmovd %ecx, %xmm0
1055 ; CHECK-NEXT: vpinsrw $1, %eax, %xmm0, %xmm0
1056 ; CHECK-NEXT: kmovw %k3, %eax
1057 ; CHECK-NEXT: vpinsrw $2, %eax, %xmm0, %xmm0
1058 ; CHECK-NEXT: kmovw %k4, %eax
1059 ; CHECK-NEXT: vpinsrw $3, %eax, %xmm0, %xmm0
1060 ; CHECK-NEXT: kmovw %k5, %eax
1061 ; CHECK-NEXT: vpinsrw $4, %eax, %xmm0, %xmm0
1062 ; CHECK-NEXT: kmovw %k6, %eax
1063 ; CHECK-NEXT: vpinsrw $5, %eax, %xmm0, %xmm0
1064 ; CHECK-NEXT: kmovw %k7, %eax
1065 ; CHECK-NEXT: vpinsrw $6, %eax, %xmm0, %xmm0
1066 ; CHECK-NEXT: kmovw %k1, %eax
1067 ; CHECK-NEXT: vpinsrw $7, %eax, %xmm0, %xmm0
1068 ; CHECK-NEXT: retq
1093 ; CHECK-NEXT: vpcmpeqq %zmm1, %zmm0, %k0
1094 ; CHECK-NEXT: vpcmpltq %zmm1, %zmm0, %k1
1095 ; CHECK-NEXT: vpcmpleq %zmm1, %zmm0, %k2
1096 ; CHECK-NEXT: vpcmpunordq %zmm1, %zmm0, %k3
1097 ; CHECK-NEXT: vpcmpneqq %zmm1, %zmm0, %k4
1098 ; CHECK-NEXT: vpcmpnltq %zmm1, %zmm0, %k5
1099 ; CHECK-NEXT: vpcmpnleq %zmm1, %zmm0, %k6
1100 ; CHECK-NEXT: vpcmpordq %zmm1, %zmm0, %k7
1101 ; CHECK-NEXT: kmovw %k0, %eax
1102 ; CHECK-NEXT: vpinsrb $0, %eax, %xmm0, %xmm0
1103 ; CHECK-NEXT: kmovw %k1, %eax
1104 ; CHECK-NEXT: vpinsrb $2, %eax, %xmm0, %xmm0
1105 ; CHECK-NEXT: kmovw %k2, %eax
1106 ; CHECK-NEXT: vpinsrb $4, %eax, %xmm0, %xmm0
1107 ; CHECK-NEXT: kmovw %k3, %eax
1108 ; CHECK-NEXT: vpinsrb $6, %eax, %xmm0, %xmm0
1109 ; CHECK-NEXT: kmovw %k4, %eax
1110 ; CHECK-NEXT: vpinsrb $8, %eax, %xmm0, %xmm0
1111 ; CHECK-NEXT: kmovw %k5, %eax
1112 ; CHECK-NEXT: vpinsrb $10, %eax, %xmm0, %xmm0
1113 ; CHECK-NEXT: kmovw %k6, %eax
1114 ; CHECK-NEXT: vpinsrb $12, %eax, %xmm0, %xmm0
1115 ; CHECK-NEXT: kmovw %k7, %eax
1116 ; CHECK-NEXT: vpinsrb $14, %eax, %xmm0, %xmm0
1117 ; CHECK-NEXT: retq
1140 ; CHECK-NEXT: kmovw %edi, %k1
1141 ; CHECK-NEXT: vpcmpeqq %zmm1, %zmm0, %k0 {%k1}
1142 ; CHECK-NEXT: vpcmpltq %zmm1, %zmm0, %k2 {%k1}
1143 ; CHECK-NEXT: vpcmpleq %zmm1, %zmm0, %k3 {%k1}
1144 ; CHECK-NEXT: vpcmpunordq %zmm1, %zmm0, %k4 {%k1}
1145 ; CHECK-NEXT: vpcmpneqq %zmm1, %zmm0, %k5 {%k1}
1146 ; CHECK-NEXT: vpcmpnltq %zmm1, %zmm0, %k6 {%k1}
1147 ; CHECK-NEXT: vpcmpnleq %zmm1, %zmm0, %k7 {%k1}
1148 ; CHECK-NEXT: vpcmpordq %zmm1, %zmm0, %k1 {%k1}
1149 ; CHECK-NEXT: kmovw %k0, %eax
1150 ; CHECK-NEXT: vpinsrb $0, %eax, %xmm0, %xmm0
1151 ; CHECK-NEXT: kmovw %k2, %eax
1152 ; CHECK-NEXT: vpinsrb $2, %eax, %xmm0, %xmm0
1153 ; CHECK-NEXT: kmovw %k3, %eax
1154 ; CHECK-NEXT: vpinsrb $4, %eax, %xmm0, %xmm0
1155 ; CHECK-NEXT: kmovw %k4, %eax
1156 ; CHECK-NEXT: vpinsrb $6, %eax, %xmm0, %xmm0
1157 ; CHECK-NEXT: kmovw %k5, %eax
1158 ; CHECK-NEXT: vpinsrb $8, %eax, %xmm0, %xmm0
1159 ; CHECK-NEXT: kmovw %k6, %eax
1160 ; CHECK-NEXT: vpinsrb $10, %eax, %xmm0, %xmm0
1161 ; CHECK-NEXT
1162 ; CHECK-NEXT: vpinsrb $12, %eax, %xmm0, %xmm0
1163 ; CHECK-NEXT: kmovw %k1, %eax
1164 ; CHECK-NEXT: vpinsrb $14, %eax, %xmm0, %xmm0
1165 ; CHECK-NEXT: retq
1190 ; CHECK-NEXT: vpcmpequq %zmm1, %zmm0, %k0
1191 ; CHECK-NEXT: vpcmpltuq %zmm1, %zmm0, %k1
1192 ; CHECK-NEXT: vpcmpleuq %zmm1, %zmm0, %k2
1193 ; CHECK-NEXT: vpcmpunorduq %zmm1, %zmm0, %k3
1194 ; CHECK-NEXT: vpcmpnequq %zmm1, %zmm0, %k4
1195 ; CHECK-NEXT: vpcmpnltuq %zmm1, %zmm0, %k5
1196 ; CHECK-NEXT: vpcmpnleuq %zmm1, %zmm0, %k6
1197 ; CHECK-NEXT: vpcmporduq %zmm1, %zmm0, %k7
1198 ; CHECK-NEXT: kmovw %k0, %eax
1199 ; CHECK-NEXT: vpinsrb $0, %eax, %xmm0, %xmm0
1200 ; CHECK-NEXT: kmovw %k1, %eax
1201 ; CHECK-NEXT: vpinsrb $2, %eax, %xmm0, %xmm0
1202 ; CHECK-NEXT: kmovw %k2, %eax
1203 ; CHECK-NEXT: vpinsrb $4, %eax, %xmm0, %xmm0
1204 ; CHECK-NEXT: kmovw %k3, %eax
1205 ; CHECK-NEXT: vpinsrb $6, %eax, %xmm0, %xmm0
1206 ; CHECK-NEXT: kmovw %k4, %eax
1207 ; CHECK-NEXT: vpinsrb $8, %eax, %xmm0, %xmm0
1208 ; CHECK-NEXT: kmovw %k5, %eax
1209 ; CHECK-NEXT: vpinsrb $10, %eax, %xmm0, %xmm0
1210 ; CHECK-NEXT: kmovw %k6, %eax
1211 ; CHECK-NEXT: vpinsrb $12, %eax, %xmm0, %xmm0
1212 ; CHECK-NEXT: kmovw %k7, %eax
1213 ; CHECK-NEXT: vpinsrb $14, %eax, %xmm0, %xmm0
1214 ; CHECK-NEXT: retq
1237 ; CHECK-NEXT: kmovw %edi, %k1
1238 ; CHECK-NEXT: vpcmpequq %zmm1, %zmm0, %k0 {%k1}
1239 ; CHECK-NEXT: vpcmpltuq %zmm1, %zmm0, %k2 {%k1}
1240 ; CHECK-NEXT: vpcmpleuq %zmm1, %zmm0, %k3 {%k1}
1241 ; CHECK-NEXT: vpcmpunorduq %zmm1, %zmm0, %k4 {%k1}
1242 ; CHECK-NEXT: vpcmpnequq %zmm1, %zmm0, %k5 {%k1}
1243 ; CHECK-NEXT: vpcmpnltuq %zmm1, %zmm0, %k6 {%k1}
1244 ; CHECK-NEXT: vpcmpnleuq %zmm1, %zmm0, %k7 {%k1}
1245 ; CHECK-NEXT: vpcmporduq %zmm1, %zmm0, %k1 {%k1}
1246 ; CHECK-NEXT: kmovw %k0, %eax
1247 ; CHECK-NEXT: vpinsrb $0, %eax, %xmm0, %xmm0
1248 ; CHECK-NEXT: kmovw %k2, %eax
1249 ; CHECK-NEXT: vpinsrb $2, %eax, %xmm0, %xmm0
1250 ; CHECK-NEXT: kmovw %k3, %eax
1251 ; CHECK-NEXT: vpinsrb $4, %eax, %xmm0, %xmm0
1252 ; CHECK-NEXT: kmovw %k4, %eax
1253 ; CHECK-NEXT: vpinsrb $6, %eax, %xmm0, %xmm0
1254 ; CHECK-NEXT: kmovw %k5, %eax
1255 ; CHECK-NEXT: vpinsrb $8, %eax, %xmm0, %xmm0
1256 ; CHECK-NEXT: kmovw %k6, %eax
1257 ; CHECK-NEXT: vpinsrb $10, %eax, %xmm0, %xmm0
1258 ; CHECK-NEXT: kmovw %k7, %eax
1259 ; CHECK-NEXT: vpinsrb $12, %eax, %xmm0, %xmm0
1260 ; CHECK-NEXT: kmovw %k1, %eax
1261 ; CHECK-NEXT: vpinsrb $14, %eax, %xmm0, %xmm0
1262 ; CHECK-NEXT: retq
1287 ; CHECK-NEXT: kmovw %edi, %k1
1288 ; CHECK-NEXT: vextractf32x4 $2, %zmm1, %xmm0 {%k1}
1289 ; CHECK-NEXT: retq
1299 ; CHECK-NEXT: kmovw %edi, %k1
1300 ; CHECK-NEXT: vextracti64x4 $2, %zmm1, %ymm0 {%k1}
1301 ; CHECK-NEXT: retq
1311 ; CHECK-NEXT: kmovw %edi, %k1
1312 ; CHECK-NEXT: vextracti32x4 $2, %zmm0, %xmm0 {%k1} {z}
1313 ; CHECK-NEXT: retq
1323 ; CHECK-NEXT: vextractf64x4 $2, %zmm0, %ymm0
1324 ; CHECK-NEXT: retq
1334 ; CHECK-NEXT: vpslld %xmm1, %zmm0, %zmm0
1335 ; CHECK-NEXT: retq
1343 ; CHECK-NEXT: kmovw %edi, %k1
1344 ; CHECK-NEXT: vpslld %xmm1, %zmm0, %zmm2 {%k1}
1345 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
1346 ; CHECK-NEXT: retq
1354 ; CHECK-NEXT: kmovw %edi, %k1
1355 ; CHECK-NEXT: vpslld %xmm1, %zmm0, %zmm0 {%k1} {z}
1356 ; CHECK-NEXT: retq
1366 ; CHECK-NEXT: vpsllq %xmm1, %zmm0, %zmm0
1367 ; CHECK-NEXT: retq
1375 ; CHECK-NEXT: kmovw %edi, %k1
1376 ; CHECK-NEXT: vpsllq %xmm1, %zmm0, %zmm2 {%k1}
1377 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
1378 ; CHECK-NEXT: retq
1386 ; CHECK-NEXT: kmovw %edi, %k1
1387 ; CHECK-NEXT: vpsllq %xmm1, %zmm0, %zmm0 {%k1} {z}
1388 ; CHECK-NEXT: retq
1398 ; CHECK-NEXT: vpsrld %xmm1, %zmm0, %zmm0
1399 ; CHECK-NEXT: retq
1407 ; CHECK-NEXT: kmovw %edi, %k1
1408 ; CHECK-NEXT: vpsrld %xmm1, %zmm0, %zmm2 {%k1}
1409 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
1410 ; CHECK-NEXT: retq
1418 ; CHECK-NEXT: kmovw %edi, %k1
1419 ; CHECK-NEXT: vpsrld %xmm1, %zmm0, %zmm0 {%k1} {z}
1420 ; CHECK-NEXT: retq
1430 ; CHECK-NEXT: vpsrlq %xmm1, %zmm0, %zmm0
1431 ; CHECK-NEXT: retq
1439 ; CHECK-NEXT: kmovw %edi, %k1
1440 ; CHECK-NEXT: vpsrlq %xmm1, %zmm0, %zmm2 {%k1}
1441 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
1442 ; CHECK-NEXT: retq
1450 ; CHECK-NEXT: kmovw %edi, %k1
1451 ; CHECK-NEXT: vpsrlq %xmm1, %zmm0, %zmm0 {%k1} {z}
1452 ; CHECK-NEXT: retq
1462 ; CHECK-NEXT: vpsrad %xmm1, %zmm0, %zmm0
1463 ; CHECK-NEXT: retq
1471 ; CHECK-NEXT: kmovw %edi, %k1
1472 ; CHECK-NEXT: vpsrad %xmm1, %zmm0, %zmm2 {%k1}
1473 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
1474 ; CHECK-NEXT: retq
1482 ; CHECK-NEXT: kmovw %edi, %k1
1483 ; CHECK-NEXT: vpsrad %xmm1, %zmm0, %zmm0 {%k1} {z}
1484 ; CHECK-NEXT: retq
1494 ; CHECK-NEXT: vpsraq %xmm1, %zmm0, %zmm0
1495 ; CHECK-NEXT: retq
1503 ; CHECK-NEXT: kmovw %edi, %k1
1504 ; CHECK-NEXT: vpsraq %xmm1, %zmm0, %zmm2 {%k1}
1505 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
1506 ; CHECK-NEXT: retq
1514 ; CHECK-NEXT: kmovw %edi, %k1
1515 ; CHECK-NEXT: vpsraq %xmm1, %zmm0, %zmm0 {%k1} {z}
1516 ; CHECK-NEXT: retq
1526 ; CHECK-NEXT: vpsllvd %zmm1, %zmm0, %zmm0
1527 ; CHECK-NEXT: retq
1535 ; CHECK-NEXT: kmovw %edi, %k1
1536 ; CHECK-NEXT: vpsllvd %zmm1, %zmm0, %zmm2 {%k1}
1537 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
1538 ; CHECK-NEXT: retq
1546 ; CHECK-NEXT: kmovw %edi, %k1
1547 ; CHECK-NEXT: vpsllvd %zmm1, %zmm0, %zmm0 {%k1} {z}
1548 ; CHECK-NEXT: retq
1558 ; CHECK-NEXT: vpsllvq %zmm1, %zmm0, %zmm0
1559 ; CHECK-NEXT: retq
1567 ; CHECK-NEXT: kmovw %edi, %k1
1568 ; CHECK-NEXT: vpsllvq %zmm1, %zmm0, %zmm2 {%k1}
1569 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
1570 ; CHECK-NEXT: retq
1578 ; CHECK-NEXT: kmovw %edi, %k1
1579 ; CHECK-NEXT: vpsllvq %zmm1, %zmm0, %zmm0 {%k1} {z}
1580 ; CHECK-NEXT: retq
1591 ; CHECK-NEXT: vpsravd %zmm1, %zmm0, %zmm0
1592 ; CHECK-NEXT: retq
1600 ; CHECK-NEXT: kmovw %edi, %k1
1601 ; CHECK-NEXT: vpsravd %zmm1, %zmm0, %zmm2 {%k1}
1602 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
1603 ; CHECK-NEXT: retq
1611 ; CHECK-NEXT: kmovw %edi, %k1
1612 ; CHECK-NEXT: vpsravd %zmm1, %zmm0, %zmm0 {%k1} {z}
1613 ; CHECK-NEXT: retq
1623 ; CHECK-NEXT: vpsravq %zmm1, %zmm0, %zmm0
1624 ; CHECK-NEXT: retq
1632 ; CHECK-NEXT: kmovw %edi, %k1
1633 ; CHECK-NEXT: vpsravq %zmm1, %zmm0, %zmm2 {%k1}
1634 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
1635 ; CHECK-NEXT: retq
1643 ; CHECK-NEXT: kmovw %edi, %k1
1644 ; CHECK-NEXT: vpsravq %zmm1, %zmm0, %zmm0 {%k1} {z}
1645 ; CHECK-NEXT: retq
1655 ; CHECK-NEXT: vpsrlvd %zmm1, %zmm0, %zmm0
1656 ; CHECK-NEXT: retq
1664 ; CHECK-NEXT: kmovw %edi, %k1
1665 ; CHECK-NEXT: vpsrlvd %zmm1, %zmm0, %zmm2 {%k1}
1666 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
1667 ; CHECK-NEXT: retq
1675 ; CHECK-NEXT: kmovw %edi, %k1
1676 ; CHECK-NEXT: vpsrlvd %zmm1, %zmm0, %zmm0 {%k1} {z}
1677 ; CHECK-NEXT: retq
1687 ; CHECK-NEXT: vpsrlvq %zmm1, %zmm0, %zmm0
1688 ; CHECK-NEXT: retq
1696 ; CHECK-NEXT: kmovw %edi, %k1
1697 ; CHECK-NEXT: vpsrlvq %zmm1, %zmm0, %zmm2 {%k1}
1698 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
1699 ; CHECK-NEXT: retq
1707 ; CHECK-NEXT: kmovw %edi, %k1
1708 ; CHECK-NEXT: vpsrlvq %zmm1, %zmm0, %zmm0 {%k1} {z}
1709 ; CHECK-NEXT: retq
1719 ; CHECK-NEXT: vpsrlvq (%rdi), %zmm0, %zmm0
1720 ; CHECK-NEXT: retq
1733 ; CHECK-NEXT: vsubps {rn-sae}, %zmm1, %zmm0, %zmm0
1734 ; CHECK-NEXT: retq
1743 ; CHECK-NEXT: vsubps {rd-sae}, %zmm1, %zmm0, %zmm0
1744 ; CHECK-NEXT: retq
1753 ; CHECK-NEXT: vsubps {ru-sae}, %zmm1, %zmm0, %zmm0
1754 ; CHECK-NEXT: retq
1763 ; CHECK-NEXT: vsubps {rz-sae}, %zmm1, %zmm0, %zmm0
1764 ; CHECK-NEXT: retq
1773 ; CHECK-NEXT: vmulps {rn-sae}, %zmm1, %zmm0, %zmm0
1774 ; CHECK-NEXT: retq
1783 ; CHECK-NEXT: vmulps {rd-sae}, %zmm1, %zmm0, %zmm0
1784 ; CHECK-NEXT: retq
1793 ; CHECK-NEXT: vmulps {ru-sae}, %zmm1, %zmm0, %zmm0
1794 ; CHECK-NEXT: retq
1803 ; CHECK-NEXT: vmulps {rz-sae}, %zmm1, %zmm0, %zmm0
1804 ; CHECK-NEXT: retq
1814 ; CHECK-NEXT: kmovw %edi, %k1
1815 ; CHECK-NEXT: vmulps {rn-sae}, %zmm1, %zmm0, %zmm0 {%k1} {z}
1816 ; CHECK-NEXT: retq
1825 ; CHECK-NEXT: kmovw %edi, %k1
1826 ; CHECK-NEXT: vmulps {rd-sae}, %zmm1, %zmm0, %zmm0 {%k1} {z}
1827 ; CHECK-NEXT: retq
1836 ; CHECK-NEXT: kmovw %edi, %k1
1837 ; CHECK-NEXT: vmulps {ru-sae}, %zmm1, %zmm0, %zmm0 {%k1} {z}
1838 ; CHECK-NEXT: retq
1847 ; CHECK-NEXT: kmovw %edi, %k1
1848 ; CHECK-NEXT: vmulps {rz-sae}, %zmm1, %zmm0, %zmm0 {%k1} {z}
1849 ; CHECK-NEXT: retq
1859 ; CHECK-NEXT: kmovw %edi, %k1
1860 ; CHECK-NEXT: vmulps {rn-sae}, %zmm1, %zmm0, %zmm2 {%k1}
1861 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
1862 ; CHECK-NEXT: retq
1871 ; CHECK-NEXT: kmovw %edi, %k1
1872 ; CHECK-NEXT: vmulps {rd-sae}, %zmm1, %zmm0, %zmm2 {%k1}
1873 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
1874 ; CHECK-NEXT: retq
1883 ; CHECK-NEXT: kmovw %edi, %k1
1884 ; CHECK-NEXT: vmulps {ru-sae}, %zmm1, %zmm0, %zmm2 {%k1}
1885 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
1886 ; CHECK-NEXT: retq
1895 ; CHECK-NEXT: kmovw %edi, %k1
1896 ; CHECK-NEXT: vmulps {rz-sae}, %zmm1, %zmm0, %zmm2 {%k1}
1897 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
1898 ; CHECK-NEXT: retq
1908 ; CHECK-NEXT: kmovw %edi, %k1
1909 ; CHECK-NEXT: vmulpd {rn-sae}, %zmm1, %zmm0, %zmm0 {%k1} {z}
1910 ; CHECK-NEXT: retq
1919 ; CHECK-NEXT: kmovw %edi, %k1
1920 ; CHECK-NEXT: vmulpd {rd-sae}, %zmm1, %zmm0, %zmm0 {%k1} {z}
1921 ; CHECK-NEXT: retq
1930 ; CHECK-NEXT: kmovw %edi, %k1
1931 ; CHECK-NEXT: vmulpd {ru-sae}, %zmm1, %zmm0, %zmm0 {%k1} {z}
1932 ; CHECK-NEXT: retq
1941 ; CHECK-NEXT: kmovw %edi, %k1
1942 ; CHECK-NEXT: vmulpd {rz-sae}, %zmm1, %zmm0, %zmm0 {%k1} {z}
1943 ; CHECK-NEXT: retq
1952 ; CHECK-NEXT: vpaddd %zmm1, %zmm0, %zmm0
1953 ; CHECK-NEXT: retq
1961 ; CHECK-NEXT: kmovw %edi, %k1
1962 ; CHECK-NEXT: vpaddd %zmm1, %zmm0, %zmm2 {%k1}
1963 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
1964 ; CHECK-NEXT: retq
1972 ; CHECK-NEXT: kmovw %edi, %k1
1973 ; CHECK-NEXT: vpaddd %zmm1, %zmm0, %zmm0 {%k1} {z}
1974 ; CHECK-NEXT: retq
1982 ; CHECK-NEXT: vpaddd (%rdi), %zmm0, %zmm0
1983 ; CHECK-NEXT: retq
1992 ; CHECK-NEXT: kmovw %esi, %k1
1993 ; CHECK-NEXT: vpaddd (%rdi), %zmm0, %zmm1 {%k1}
1994 ; CHECK-NEXT: vmovaps %zmm1, %zmm0
1995 ; CHECK-NEXT: retq
2004 ; CHECK-NEXT: kmovw %esi, %k1
2005 ; CHECK-NEXT: vpaddd (%rdi), %zmm0, %zmm0 {%k1} {z}
2006 ; CHECK-NEXT: retq
2015 ; CHECK-NEXT: vpaddd (%rdi){1to16}, %zmm0, %zmm0
2016 ; CHECK-NEXT: retq
2027 ; CHECK-NEXT: kmovw %esi, %k1
2028 ; CHECK-NEXT: vpaddd (%rdi){1to16}, %zmm0, %zmm1 {%k1}
2029 ; CHECK-NEXT: vmovaps %zmm1, %zmm0
2030 ; CHECK-NEXT: retq
2041 ; CHECK-NEXT: kmovw %esi, %k1
2042 ; CHECK-NEXT: vpaddd (%rdi){1to16}, %zmm0, %zmm0 {%k1} {z}
2043 ; CHECK-NEXT: retq
2056 ; CHECK-NEXT: vpsubd %zmm1, %zmm0, %zmm0
2057 ; CHECK-NEXT: retq
2065 ; CHECK-NEXT: kmovw %edi, %k1
2066 ; CHECK-NEXT: vpsubd %zmm1, %zmm0, %zmm2 {%k1}
2067 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
2068 ; CHECK-NEXT: retq
2076 ; CHECK-NEXT: kmovw %edi, %k1
2077 ; CHECK-NEXT: vpsubd %zmm1, %zmm0, %zmm0 {%k1} {z}
2078 ; CHECK-NEXT: retq
2086 ; CHECK-NEXT: vpsubd (%rdi), %zmm0, %zmm0
2087 ; CHECK-NEXT: retq
2096 ; CHECK-NEXT: kmovw %esi, %k1
2097 ; CHECK-NEXT: vpsubd (%rdi), %zmm0, %zmm1 {%k1}
2098 ; CHECK-NEXT: vmovaps %zmm1, %zmm0
2099 ; CHECK-NEXT: retq
2108 ; CHECK-NEXT: kmovw %esi, %k1
2109 ; CHECK-NEXT: vpsubd (%rdi), %zmm0, %zmm0 {%k1} {z}
2110 ; CHECK-NEXT: retq
2119 ; CHECK-NEXT: vpsubd (%rdi){1to16}, %zmm0, %zmm0
2120 ; CHECK-NEXT: retq
2131 ; CHECK-NEXT: kmovw %esi, %k1
2132 ; CHECK-NEXT: vpsubd (%rdi){1to16}, %zmm0, %zmm1 {%k1}
2133 ; CHECK-NEXT: vmovaps %zmm1, %zmm0
2134 ; CHECK-NEXT: retq
2145 ; CHECK-NEXT: kmovw %esi, %k1
2146 ; CHECK-NEXT: vpsubd (%rdi){1to16}, %zmm0, %zmm0 {%k1} {z}
2147 ; CHECK-NEXT: retq
2160 ; CHECK-NEXT: vpaddq %zmm1, %zmm0, %zmm0
2161 ; CHECK-NEXT: retq
2169 ; CHECK-NEXT: kmovw %edi, %k1
2170 ; CHECK-NEXT: vpaddq %zmm1, %zmm0, %zmm2 {%k1}
2171 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
2172 ; CHECK-NEXT: retq
2180 ; CHECK-NEXT: kmovw %edi, %k1
2181 ; CHECK-NEXT: vpaddq %zmm1, %zmm0, %zmm0 {%k1} {z}
2182 ; CHECK-NEXT: retq
2190 ; CHECK-NEXT: vpaddq (%rdi), %zmm0, %zmm0
2191 ; CHECK-NEXT: retq
2200 ; CHECK-NEXT: kmovw %esi, %k1
2201 ; CHECK-NEXT: vpaddq (%rdi), %zmm0, %zmm1 {%k1}
2202 ; CHECK-NEXT: vmovaps %zmm1, %zmm0
2203 ; CHECK-NEXT: retq
2212 ; CHECK-NEXT: kmovw %esi, %k1
2213 ; CHECK-NEXT: vpaddq (%rdi), %zmm0, %zmm0 {%k1} {z}
2214 ; CHECK-NEXT: retq
2223 ; CHECK-NEXT: vpaddq (%rdi){1to8}, %zmm0, %zmm0
2224 ; CHECK-NEXT: retq
2235 ; CHECK-NEXT: kmovw %esi, %k1
2236 ; CHECK-NEXT: vpaddq (%rdi){1to8}, %zmm0, %zmm1 {%k1}
2237 ; CHECK-NEXT: vmovaps %zmm1, %zmm0
2238 ; CHECK-NEXT: retq
2249 ; CHECK-NEXT: kmovw %esi, %k1
2250 ; CHECK-NEXT: vpaddq (%rdi){1to8}, %zmm0, %zmm0 {%k1} {z}
2251 ; CHECK-NEXT: retq
2264 ; CHECK-NEXT: vpsubq %zmm1, %zmm0, %zmm0
2265 ; CHECK-NEXT: retq
2273 ; CHECK-NEXT: kmovw %edi, %k1
2274 ; CHECK-NEXT: vpsubq %zmm1, %zmm0, %zmm2 {%k1}
2275 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
2276 ; CHECK-NEXT: retq
2284 ; CHECK-NEXT: kmovw %edi, %k1
2285 ; CHECK-NEXT: vpsubq %zmm1, %zmm0, %zmm0 {%k1} {z}
2286 ; CHECK-NEXT: retq
2294 ; CHECK-NEXT: vpsubq (%rdi), %zmm0, %zmm0
2295 ; CHECK-NEXT: retq
2304 ; CHECK-NEXT: kmovw %esi, %k1
2305 ; CHECK-NEXT: vpsubq (%rdi), %zmm0, %zmm1 {%k1}
2306 ; CHECK-NEXT: vmovaps %zmm1, %zmm0
2307 ; CHECK-NEXT: retq
2316 ; CHECK-NEXT: kmovw %esi, %k1
2317 ; CHECK-NEXT: vpsubq (%rdi), %zmm0, %zmm0 {%k1} {z}
2318 ; CHECK-NEXT: retq
2327 ; CHECK-NEXT: vpsubq (%rdi){1to8}, %zmm0, %zmm0
2328 ; CHECK-NEXT: retq
2339 ; CHECK-NEXT: kmovw %esi, %k1
2340 ; CHECK-NEXT: vpsubq (%rdi){1to8}, %zmm0, %zmm1 {%k1}
2341 ; CHECK-NEXT: vmovaps %zmm1, %zmm0
2342 ; CHECK-NEXT: retq
2353 ; CHECK-NEXT: kmovw %esi, %k1
2354 ; CHECK-NEXT: vpsubq (%rdi){1to8}, %zmm0, %zmm0 {%k1} {z}
2355 ; CHECK-NEXT: retq
2368 ; CHECK-NEXT: vpmuldq %zmm1, %zmm0, %zmm0
2369 ; CHECK-NEXT: retq
2377 ; CHECK-NEXT: kmovw %edi, %k1
2378 ; CHECK-NEXT: vpmuldq %zmm1, %zmm0, %zmm2 {%k1}
2379 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
2380 ; CHECK-NEXT: retq
2388 ; CHECK-NEXT: kmovw %edi, %k1
2389 ; CHECK-NEXT: vpmuldq %zmm1, %zmm0, %zmm0 {%k1} {z}
2390 ; CHECK-NEXT: retq
2398 ; CHECK-NEXT: vpmuldq (%rdi), %zmm0, %zmm0
2399 ; CHECK-NEXT: retq
2408 ; CHECK-NEXT: kmovw %esi, %k1
2409 ; CHECK-NEXT: vpmuldq (%rdi), %zmm0, %zmm1 {%k1}
2410 ; CHECK-NEXT: vmovaps %zmm1, %zmm0
2411 ; CHECK-NEXT: retq
2420 ; CHECK-NEXT: kmovw %esi, %k1
2421 ; CHECK-NEXT: vpmuldq (%rdi), %zmm0, %zmm0 {%k1} {z}
2422 ; CHECK-NEXT: retq
2431 ; CHECK-NEXT: vpmuldq (%rdi){1to8}, %zmm0, %zmm0
2432 ; CHECK-NEXT: retq
2444 ; CHECK-NEXT: kmovw %esi, %k1
2445 ; CHECK-NEXT: vpmuldq (%rdi){1to8}, %zmm0, %zmm1 {%k1}
2446 ; CHECK-NEXT: vmovaps %zmm1, %zmm0
2447 ; CHECK-NEXT: retq
2459 ; CHECK-NEXT: kmovw %esi, %k1
2460 ; CHECK-NEXT: vpmuldq (%rdi){1to8}, %zmm0, %zmm0 {%k1} {z}
2461 ; CHECK-NEXT: retq
2475 ; CHECK-NEXT: vpmuludq %zmm1, %zmm0, %zmm0
2476 ; CHECK-NEXT: retq
2484 ; CHECK-NEXT: kmovw %edi, %k1
2485 ; CHECK-NEXT: vpmuludq %zmm1, %zmm0, %zmm2 {%k1}
2486 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
2487 ; CHECK-NEXT: retq
2495 ; CHECK-NEXT: kmovw %edi, %k1
2496 ; CHECK-NEXT: vpmuludq %zmm1, %zmm0, %zmm0 {%k1} {z}
2497 ; CHECK-NEXT: retq
2505 ; CHECK-NEXT: vpmuludq (%rdi), %zmm0, %zmm0
2506 ; CHECK-NEXT: retq
2515 ; CHECK-NEXT: kmovw %esi, %k1
2516 ; CHECK-NEXT: vpmuludq (%rdi), %zmm0, %zmm1 {%k1}
2517 ; CHECK-NEXT: vmovaps %zmm1, %zmm0
2518 ; CHECK-NEXT: retq
2527 ; CHECK-NEXT: kmovw %esi, %k1
2528 ; CHECK-NEXT: vpmuludq (%rdi), %zmm0, %zmm0 {%k1} {z}
2529 ; CHECK-NEXT: retq
2538 ; CHECK-NEXT: vpmuludq (%rdi){1to8}, %zmm0, %zmm0
2539 ; CHECK-NEXT: retq
2551 ; CHECK-NEXT: kmovw %esi, %k1
2552 ; CHECK-NEXT: vpmuludq (%rdi){1to8}, %zmm0, %zmm1 {%k1}
2553 ; CHECK-NEXT: vmovaps %zmm1, %zmm0
2554 ; CHECK-NEXT: retq
2566 ; CHECK-NEXT: kmovw %esi, %k1
2567 ; CHECK-NEXT: vpmuludq (%rdi){1to8}, %zmm0, %zmm0 {%k1} {z}
2568 ; CHECK-NEXT: retq
2582 ; CHECK-NEXT: vpmulld %zmm1, %zmm0, %zmm0
2583 ; CHECK-NEXT: retq
2591 ; CHECK-NEXT: kmovw %edi, %k1
2592 ; CHECK-NEXT: vpmulld %zmm1, %zmm0, %zmm2 {%k1}
2593 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
2594 ; CHECK-NEXT: retq
2602 ; CHECK-NEXT: kmovw %edi, %k1
2603 ; CHECK-NEXT: vpmulld %zmm1, %zmm0, %zmm0 {%k1} {z}
2604 ; CHECK-NEXT: retq
2612 ; CHECK-NEXT: vpmulld (%rdi), %zmm0, %zmm0
2613 ; CHECK-NEXT: retq
2622 ; CHECK-NEXT: kmovw %esi, %k1
2623 ; CHECK-NEXT: vpmulld (%rdi), %zmm0, %zmm1 {%k1}
2624 ; CHECK-NEXT: vmovaps %zmm1, %zmm0
2625 ; CHECK-NEXT: retq
2634 ; CHECK-NEXT: kmovw %esi, %k1
2635 ; CHECK-NEXT: vpmulld (%rdi), %zmm0, %zmm0 {%k1} {z}
2636 ; CHECK-NEXT: retq
2645 ; CHECK-NEXT: vpmulld (%rdi){1to16}, %zmm0, %zmm0
2646 ; CHECK-NEXT: retq
2657 ; CHECK-NEXT: kmovw %esi, %k1
2658 ; CHECK-NEXT: vpmulld (%rdi){1to16}, %zmm0, %zmm1 {%k1}
2659 ; CHECK-NEXT: vmovaps %zmm1, %zmm0
2660 ; CHECK-NEXT: retq
2671 ; CHECK-NEXT: kmovw %esi, %k1
2672 ; CHECK-NEXT: vpmulld (%rdi){1to16}, %zmm0, %zmm0 {%k1} {z}
2673 ; CHECK-NEXT: retq
2686 ; CHECK-NEXT: kmovw %edi, %k1
2687 ; CHECK-NEXT: vaddps {rn-sae}, %zmm1, %zmm0, %zmm0 {%k1} {z}
2688 ; CHECK-NEXT: retq
2695 ; CHECK-NEXT: kmovw %edi, %k1
2696 ; CHECK-NEXT: vaddps {rd-sae}, %zmm1, %zmm0, %zmm0 {%k1} {z}
2697 ; CHECK-NEXT: retq
2704 ; CHECK-NEXT: kmovw %edi, %k1
2705 ; CHECK-NEXT: vaddps {ru-sae}, %zmm1, %zmm0, %zmm0 {%k1} {z}
2706 ; CHECK-NEXT: retq
2714 ; CHECK-NEXT: kmovw %edi, %k1
2715 ; CHECK-NEXT: vaddps {rz-sae}, %zmm1, %zmm0, %zmm0 {%k1} {z}
2716 ; CHECK-NEXT: retq
2725 ; CHECK-NEXT: kmovw %edi, %k1
2726 ; CHECK-NEXT: vaddps %zmm1, %zmm0, %zmm0 {%k1} {z}
2727 ; CHECK-NEXT: retq
2735 ; CHECK-NEXT: kmovw %edi, %k1
2736 ; CHECK-NEXT: vaddps {rn-sae}, %zmm1, %zmm0, %zmm2 {%k1}
2737 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
2738 ; CHECK-NEXT: retq
2745 ; CHECK-NEXT: kmovw %edi, %k1
2746 ; CHECK-NEXT: vaddps {rd-sae}, %zmm1, %zmm0, %zmm2 {%k1}
2747 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
2748 ; CHECK-NEXT: retq
2755 ; CHECK-NEXT: kmovw %edi, %k1
2756 ; CHECK-NEXT: vaddps {ru-sae}, %zmm1, %zmm0, %zmm2 {%k1}
2757 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
2758 ; CHECK-NEXT: retq
2766 ; CHECK-NEXT: kmovw %edi, %k1
2767 ; CHECK-NEXT: vaddps {rz-sae}, %zmm1, %zmm0, %zmm2 {%k1}
2768 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
2769 ; CHECK-NEXT: retq
2778 ; CHECK-NEXT: kmovw %edi, %k1
2779 ; CHECK-NEXT: vaddps %zmm1, %zmm0, %zmm2 {%k1}
2780 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
2781 ; CHECK-NEXT: retq
2790 ; CHECK-NEXT: vaddps {rn-sae}, %zmm1, %zmm0, %zmm0
2791 ; CHECK-NEXT: retq
2798 ; CHECK-NEXT: vaddps {rd-sae}, %zmm1, %zmm0, %zmm0
2799 ; CHECK-NEXT: retq
2806 ; CHECK-NEXT: vaddps {ru-sae}, %zmm1, %zmm0, %zmm0
2807 ; CHECK-NEXT: retq
2815 ; CHECK-NEXT: vaddps {rz-sae}, %zmm1, %zmm0, %zmm0
2816 ; CHECK-NEXT: retq
2824 ; CHECK-NEXT: vaddps %zmm1, %zmm0, %zmm0
2825 ; CHECK-NEXT: retq
2834 ; CHECK-NEXT: kmovw %edi, %k1
2835 ; CHECK-NEXT: vsubps {rn-sae}, %zmm1, %zmm0, %zmm2 {%k1}
2836 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
2837 ; CHECK-NEXT: retq
2844 ; CHECK-NEXT: kmovw %edi, %k1
2845 ; CHECK-NEXT: vsubps {rd-sae}, %zmm1, %zmm0, %zmm2 {%k1}
2846 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
2847 ; CHECK-NEXT: retq
2854 ; CHECK-NEXT: kmovw %edi, %k1
2855 ; CHECK-NEXT: vsubps {ru-sae}, %zmm1, %zmm0, %zmm2 {%k1}
2856 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
2857 ; CHECK-NEXT: retq
2865 ; CHECK-NEXT: kmovw %edi, %k1
2866 ; CHECK-NEXT: vsubps {rz-sae}, %zmm1, %zmm0, %zmm2 {%k1}
2867 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
2868 ; CHECK-NEXT: retq
2877 ; CHECK-NEXT: kmovw %edi, %k1
2878 ; CHECK-NEXT: vsubps %zmm1, %zmm0, %zmm2 {%k1}
2879 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
2880 ; CHECK-NEXT: retq
2888 ; CHECK-NEXT: vsubps {rn-sae}, %zmm1, %zmm0, %zmm0
2889 ; CHECK-NEXT: retq
2896 ; CHECK-NEXT: vsubps {rd-sae}, %zmm1, %zmm0, %zmm0
2897 ; CHECK-NEXT: retq
2904 ; CHECK-NEXT: vsubps {ru-sae}, %zmm1, %zmm0, %zmm0
2905 ; CHECK-NEXT: retq
2913 ; CHECK-NEXT: vsubps {rz-sae}, %zmm1, %zmm0, %zmm0
2914 ; CHECK-NEXT: retq
2922 ; CHECK-NEXT: vsubps %zmm1, %zmm0, %zmm0
2923 ; CHECK-NEXT: retq
2931 ; CHECK-NEXT: kmovw %edi, %k1
2932 ; CHECK-NEXT: vdivps {rn-sae}, %zmm1, %zmm0, %zmm0 {%k1} {z}
2933 ; CHECK-NEXT: retq
2940 ; CHECK-NEXT: kmovw %edi, %k1
2941 ; CHECK-NEXT: vdivps {rd-sae}, %zmm1, %zmm0, %zmm0 {%k1} {z}
2942 ; CHECK-NEXT: retq
2949 ; CHECK-NEXT: kmovw %edi, %k1
2950 ; CHECK-NEXT: vdivps {ru-sae}, %zmm1, %zmm0, %zmm0 {%k1} {z}
2951 ; CHECK-NEXT: retq
2959 ; CHECK-NEXT: kmovw %edi, %k1
2960 ; CHECK-NEXT: vdivps {rz-sae}, %zmm1, %zmm0, %zmm0 {%k1} {z}
2961 ; CHECK-NEXT: retq
2970 ; CHECK-NEXT: kmovw %edi, %k1
2971 ; CHECK-NEXT: vdivps %zmm1, %zmm0, %zmm0 {%k1} {z}
2972 ; CHECK-NEXT: retq
2980 ; CHECK-NEXT: kmovw %edi, %k1
2981 ; CHECK-NEXT: vdivps {rn-sae}, %zmm1, %zmm0, %zmm2 {%k1}
2982 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
2983 ; CHECK-NEXT: retq
2990 ; CHECK-NEXT: kmovw %edi, %k1
2991 ; CHECK-NEXT: vdivps {rd-sae}, %zmm1, %zmm0, %zmm2 {%k1}
2992 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
2993 ; CHECK-NEXT: retq
3000 ; CHECK-NEXT: kmovw %edi, %k1
3001 ; CHECK-NEXT: vdivps {ru-sae}, %zmm1, %zmm0, %zmm2 {%k1}
3002 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
3003 ; CHECK-NEXT: retq
3011 ; CHECK-NEXT: kmovw %edi, %k1
3012 ; CHECK-NEXT: vdivps {rz-sae}, %zmm1, %zmm0, %zmm2 {%k1}
3013 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
3014 ; CHECK-NEXT: retq
3023 ; CHECK-NEXT: kmovw %edi, %k1
3024 NEXT: vdivps %zmm1, %zmm0, %zmm2 {%k1}
3025 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
3026 ; CHECK-NEXT: retq
3035 ; CHECK-NEXT: vdivps {rn-sae}, %zmm1, %zmm0, %zmm0
3036 ; CHECK-NEXT: retq
3043 ; CHECK-NEXT: vdivps {rd-sae}, %zmm1, %zmm0, %zmm0
3044 ; CHECK-NEXT: retq
3051 ; CHECK-NEXT: vdivps {ru-sae}, %zmm1, %zmm0, %zmm0
3052 ; CHECK-NEXT: retq
3060 ; CHECK-NEXT: vdivps {rz-sae}, %zmm1, %zmm0, %zmm0
3061 ; CHECK-NEXT: retq
3069 ; CHECK-NEXT: vdivps %zmm1, %zmm0, %zmm0
3070 ; CHECK-NEXT: retq
3079 ; CHECK-NEXT: kmovw %edi, %k1
3080 ; CHECK-NEXT: vminps {sae}, %zmm1, %zmm0, %zmm0 {%k1} {z}
3081 ; CHECK-NEXT: retq
3089 ; CHECK-NEXT: kmovw %edi, %k1
3090 ; CHECK-NEXT: vminps %zmm1, %zmm0, %zmm0 {%k1} {z}
3091 ; CHECK-NEXT: retq
3099 ; CHECK-NEXT: kmovw %edi, %k1
3100 ; CHECK-NEXT: vminps {sae}, %zmm1, %zmm0, %zmm2 {%k1}
3101 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
3102 ; CHECK-NEXT: retq
3110 ; CHECK-NEXT: kmovw %edi, %k1
3111 ; CHECK-NEXT: vminps %zmm1, %zmm0, %zmm2 {%k1}
3112 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
3113 ; CHECK-NEXT: retq
3121 ; CHECK-NEXT: vminps {sae}, %zmm1, %zmm0, %zmm0
3122 ; CHECK-NEXT: retq
3130 ; CHECK-NEXT: vminps %zmm1, %zmm0, %zmm0
3131 ; CHECK-NEXT: retq
3140 ; CHECK-NEXT: kmovw %edi, %k1
3141 ; CHECK-NEXT: vmaxps {sae}, %zmm1, %zmm0, %zmm0 {%k1} {z}
3142 ; CHECK-NEXT: retq
3150 ; CHECK-NEXT: kmovw %edi, %k1
3151 ; CHECK-NEXT: vmaxps %zmm1, %zmm0, %zmm0 {%k1} {z}
3152 ; CHECK-NEXT: retq
3160 ; CHECK-NEXT: kmovw %edi, %k1
3161 ; CHECK-NEXT: vmaxps {sae}, %zmm1, %zmm0, %zmm2 {%k1}
3162 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
3163 ; CHECK-NEXT: retq
3171 ; CHECK-NEXT: kmovw %edi, %k1
3172 ; CHECK-NEXT: vmaxps %zmm1, %zmm0, %zmm2 {%k1}
3173 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
3174 ; CHECK-NEXT: retq
3182 ; CHECK-NEXT: vmaxps {sae}, %zmm1, %zmm0, %zmm0
3183 ; CHECK-NEXT: retq
3191 ; CHECK-NEXT: vmaxps %zmm1, %zmm0, %zmm0
3192 ; CHECK-NEXT: retq
3203 ; CHECK-NEXT: andl $1, %edi
3204 ; CHECK-NEXT: kmovw %edi, %k1
3205 ; CHECK-NEXT: vaddss {rn-sae}, %xmm1, %xmm0, %xmm2 {%k1}
3206 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
3207 ; CHECK-NEXT: retq
3215 ; CHECK-NEXT: andl $1, %edi
3216 ; CHECK-NEXT: kmovw %edi, %k1
3217 ; CHECK-NEXT: vaddss {rd-sae}, %xmm1, %xmm0, %xmm2 {%k1}
3218 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
3219 ; CHECK-NEXT: retq
3227 ; CHECK-NEXT: andl $1, %edi
3228 ; CHECK-NEXT: kmovw %edi, %k1
3229 ; CHECK-NEXT: vaddss {ru-sae}, %xmm1, %xmm0, %xmm2 {%k1}
3230 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
3231 ; CHECK-NEXT: retq
3239 ; CHECK-NEXT: andl $1, %edi
3240 ; CHECK-NEXT: kmovw %edi, %k1
3241 ; CHECK-NEXT: vaddss {rz-sae}, %xmm1, %xmm0, %xmm2 {%k1}
3242 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
3243 ; CHECK-NEXT: retq
3251 ; CHECK-NEXT: andl $1, %edi
3252 ; CHECK-NEXT: kmovw %edi, %k1
3253 ; CHECK-NEXT: vaddss %xmm1, %xmm0, %xmm2 {%k1}
3254 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
3255 ; CHECK-NEXT: retq
3263 ; CHECK-NEXT: andl $1, %edi
3264 ; CHECK-NEXT: kmovw %edi, %k1
3265 ; CHECK-NEXT: vaddss {rn-sae}, %xmm1, %xmm0, %xmm0 {%k1} {z}
3266 ; CHECK-NEXT: retq
3274 ; CHECK-NEXT: vaddss {rn-sae}, %xmm1, %xmm0, %xmm0
3275 ; CHECK-NEXT: retq
3285 ; CHECK-NEXT: andl $1, %edi
3286 ; CHECK-NEXT: kmovw %edi, %k1
3287 ; CHECK-NEXT: vaddsd {rn-sae}, %xmm1, %xmm0, %xmm2 {%k1}
3288 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
3289 ; CHECK-NEXT: retq
3297 ; CHECK-NEXT: andl $1, %edi
3298 ; CHECK-NEXT: kmovw %edi, %k1
3299 ; CHECK-NEXT: vaddsd {rd-sae}, %xmm1, %xmm0, %xmm2 {%k1}
3300 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
3301 ; CHECK-NEXT: retq
3309 ; CHECK-NEXT: andl $1, %edi
3310 ; CHECK-NEXT: kmovw %edi, %k1
3311 ; CHECK-NEXT: vaddsd {ru-sae}, %xmm1, %xmm0, %xmm2 {%k1}
3312 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
3313 ; CHECK-NEXT: retq
3321 ; CHECK-NEXT: andl $1, %edi
3322 ; CHECK-NEXT: kmovw %edi, %k1
3323 ; CHECK-NEXT: vaddsd {rz-sae}, %xmm1, %xmm0, %xmm2 {%k1}
3324 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
3325 ; CHECK-NEXT: retq
3333 ; CHECK-NEXT: andl $1, %edi
3334 ; CHECK-NEXT: kmovw %edi, %k1
3335 ; CHECK-NEXT: vaddsd %xmm1, %xmm0, %xmm2 {%k1}
3336 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
3337 ; CHECK-NEXT: retq
3345 ; CHECK-NEXT: andl $1, %edi
3346 ; CHECK-NEXT: kmovw %edi, %k1
3347 ; CHECK-NEXT: vaddsd {rn-sae}, %xmm1, %xmm0, %xmm0 {%k1} {z}
3348 ; CHECK-NEXT: retq
3356 ; CHECK-NEXT: vaddsd {rn-sae}, %xmm1, %xmm0, %xmm0
3357 ; CHECK-NEXT: retq
3367 ; CHECK-NEXT: andl $1, %edi
3368 ; CHECK-NEXT: kmovw %edi, %k1
3369 ; CHECK-NEXT: vmaxss {sae}, %xmm1, %xmm0, %xmm2 {%k1}
3370 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
3371 ; CHECK-NEXT: retq
3379 ; CHECK-NEXT: andl $1, %edi
3380 ; CHECK-NEXT: kmovw %edi, %k1
3381 ; CHECK-NEXT: vmaxss {sae}, %xmm1, %xmm0, %xmm0 {%k1} {z}
3382 ; CHECK-NEXT: retq
3390 ; CHECK-NEXT
3391 ; CHECK-NEXT: retq
3399 ; CHECK-NEXT: andl $1, %edi
3400 ; CHECK-NEXT: kmovw %edi, %k1
3401 ; CHECK-NEXT: vmaxss %xmm1, %xmm0, %xmm2 {%k1}
3402 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
3403 ; CHECK-NEXT: retq
3411 ; CHECK-NEXT: andl $1, %edi
3412 ; CHECK-NEXT: kmovw %edi, %k1
3413 ; CHECK-NEXT: vmaxss %xmm1, %xmm0, %xmm0 {%k1} {z}
3414 ; CHECK-NEXT: retq
3422 ; CHECK-NEXT: vmaxss %xmm1, %xmm0, %xmm0
3423 ; CHECK-NEXT: retq
3432 ; CHECK-NEXT: andl $1, %edi
3433 ; CHECK-NEXT: kmovw %edi, %k1
3434 ; CHECK-NEXT: vmaxsd {sae}, %xmm1, %xmm0, %xmm2 {%k1}
3435 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
3436 ; CHECK-NEXT: retq
3444 ; CHECK-NEXT: andl $1, %edi
3445 ; CHECK-NEXT: kmovw %edi, %k1
3446 ; CHECK-NEXT: vmaxsd {sae}, %xmm1, %xmm0, %xmm0 {%k1} {z}
3447 ; CHECK-NEXT: retq
3455 ; CHECK-NEXT: vmaxsd {sae}, %xmm1, %xmm0, %xmm0
3456 ; CHECK-NEXT: retq
3464 ; CHECK-NEXT: andl $1, %edi
3465 ; CHECK-NEXT: kmovw %edi, %k1
3466 ; CHECK-NEXT: vmaxsd %xmm1, %xmm0, %xmm2 {%k1}
3467 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
3468 ; CHECK-NEXT: retq
3476 ; CHECK-NEXT: andl $1, %edi
3477 ; CHECK-NEXT: kmovw %edi, %k1
3478 ; CHECK-NEXT: vmaxsd %xmm1, %xmm0, %xmm0 {%k1} {z}
3479 ; CHECK-NEXT: retq
3487 ; CHECK-NEXT: vmaxsd %xmm1, %xmm0, %xmm0
3488 ; CHECK-NEXT: retq
3496 ; CHECK-NEXT: vcvtsi2sdl %edi, {rz-sae}, %xmm0, %xmm0
3497 ; CHECK-NEXT: retq
3506 ; CHECK-NEXT: vcvtsi2sdq %rdi, {rz-sae}, %xmm0, %xmm0
3507 ; CHECK-NEXT: retq
3516 ; CHECK-NEXT: vcvtsi2ssl %edi, {rz-sae}, %xmm0, %xmm0
3517 ; CHECK-NEXT: retq
3526 ; CHECK-NEXT: vcvtsi2ssq %rdi, {rz-sae}, %xmm0, %xmm0
3527 ; CHECK-NEXT: retq
3536 ; CHECK-NEXT: vcvtusi2ssl %edi, {rd-sae}, %xmm0, %xmm0
3537 ; CHECK-NEXT: retq
3546 ; CHECK-NEXT: movl (%rdi), %eax
3547 ; CHECK-NEXT: vcvtusi2ssl %eax, {rd-sae}, %xmm0, %xmm0
3548 ; CHECK-NEXT: retq
3558 ; CHECK-NEXT: vcvtusi2ssl %edi, %xmm0, %xmm0
3559 ; CHECK-NEXT: retq
3568 ; CHECK-NEXT: vcvtusi2ssl (%rdi), %xmm0, %xmm0
3569 ; CHECK-NEXT: retq
3580 ; CHECK-NEXT: vcvtusi2ssq %rdi, {rd-sae}, %xmm0, %xmm0
3581 ; CHECK-NEXT: retq
3590 ; CHECK-NEXT: vcvtusi2ssq %rdi, %xmm0, %xmm0
3591 ; CHECK-NEXT: retq
3601 ; CHECK-NEXT: vcvtusi2sdl %edi, %xmm0, %xmm0
3602 ; CHECK-NEXT: retq
3612 ; CHECK-NEXT: vcvtusi2sdq %rdi, {rd-sae}, %xmm0, %xmm0
3613 ; CHECK-NEXT: retq
3622 ; CHECK-NEXT: vcvtusi2sdq %rdi, %xmm0, %xmm0
3623 ; CHECK-NEXT: retq
3633 ; CHECK-NEXT: vpmaxsq %zmm1, %zmm0, %zmm0
3634 ; CHECK-NEXT: retq
3644 ; CHECK-NEXT: vpminud %zmm1, %zmm0, %zmm0
3645 ; CHECK-NEXT: retq
3655 ; CHECK-NEXT: vpmaxsd %zmm1, %zmm0, %zmm0
3656 ; CHECK-NEXT: retq
3666 ; CHECK-NEXT: kmovw %edi, %k1
3667 ; CHECK-NEXT: vpmaxsd %zmm1, %zmm0, %zmm2 {%k1}
3668 ; CHECK-NEXT: vpmaxsd %zmm1, %zmm0, %zmm0
3669 ; CHECK-NEXT: vpaddd %zmm0, %zmm2, %zmm0
3670 ; CHECK-NEXT: retq
3680 ; CHECK-NEXT: kmovw %edi, %k1
3681 ; CHECK-NEXT: vpmaxsq %zmm1, %zmm0, %zmm2 {%k1}
3682 ; CHECK-NEXT: vpmaxsq %zmm1, %zmm0, %zmm0
3683 ; CHECK-NEXT: vpaddq %zmm0, %zmm2, %zmm0
3684 ; CHECK-NEXT: retq
3696 ; CHECK-NEXT: kmovw %edi, %k1
3697 ; CHECK-NEXT: vpmaxud %zmm1, %zmm0, %zmm2 {%k1}
3698 ; CHECK-NEXT: vpmaxud %zmm1, %zmm0, %zmm0
3699 ; CHECK-NEXT: vpaddd %zmm0, %zmm2, %zmm0
3700 ; CHECK-NEXT: retq
3712 ; CHECK-NEXT: kmovw %edi, %k1
3713 ; CHECK-NEXT: vpmaxuq %zmm1, %zmm0, %zmm2 {%k1}
3714 ; CHECK-NEXT: vpmaxuq %zmm1, %zmm0, %zmm0
3715 ; CHECK-NEXT: vpaddq %zmm0, %zmm2, %zmm0
3716 ; CHECK-NEXT: retq
3728 ; CHECK-NEXT: kmovw %edi, %k1
3729 ; CHECK-NEXT: vpminsd %zmm1, %zmm0, %zmm2 {%k1}
3730 ; CHECK-NEXT: vpminsd %zmm1, %zmm0, %zmm0
3731 ; CHECK-NEXT: vpaddd %zmm0, %zmm2, %zmm0
3732 ; CHECK-NEXT: retq
3744 ; CHECK-NEXT: kmovw %edi, %k1
3745 ; CHECK-NEXT: vpminsq %zmm1, %zmm0, %zmm2 {%k1}
3746 ; CHECK-NEXT: vpminsq %zmm1, %zmm0, %zmm0
3747 ; CHECK-NEXT: vpaddq %zmm0, %zmm2, %zmm0
3748 ; CHECK-NEXT: retq
3758 ; CHECK-NEXT: kmovw %edi, %k1
3759 ; CHECK-NEXT: vpminud %zmm1, %zmm0, %zmm2 {%k1}
3760 ; CHECK-NEXT: vpminud %zmm1, %zmm0, %zmm0
3761 ; CHECK-NEXT: vpaddd %zmm0, %zmm2, %zmm0
3762 ; CHECK-NEXT: retq
3774 ; CHECK-NEXT: kmovw %edi, %k1
3775 ; CHECK-NEXT: vpminuq %zmm1, %zmm0, %zmm2 {%k1}
3776 ; CHECK-NEXT: vpminuq %zmm1, %zmm0, %zmm0
3777 ; CHECK-NEXT: vpaddq %zmm0, %zmm2, %zmm0
3778 ; CHECK-NEXT: retq
3790 ; CHECK-NEXT: kmovw %esi, %k1
3791 ; CHECK-NEXT: vmovaps %zmm1, %zmm3
3792 ; CHECK-NEXT: vpermi2d (%rdi), %zmm0, %zmm3 {%k1}
3793 ; CHECK-NEXT: vpermi2d %zmm2, %zmm0, %zmm1
3794 ; CHECK-NEXT: vpaddd %zmm1, %zmm3, %zmm0
3795 ; CHECK-NEXT: retq
3808 ; CHECK-NEXT: kmovw %edi, %k1
3809 ; CHECK-NEXT: vmovaps %zmm1, %zmm3
3810 ; CHECK-NEXT: vpermi2pd %zmm2, %zmm0, %zmm3 {%k1}
3811 ; CHECK-NEXT: vpermi2pd %zmm2, %zmm0, %zmm1
3812 ; CHECK-NEXT: vaddpd %zmm1, %zmm3, %zmm0
3813 ; CHECK-NEXT: retq
3825 ; CHECK-NEXT: kmovw %edi, %k1
3826 ; CHECK-NEXT: vmovaps %zmm1, %zmm3
3827 ; CHECK-NEXT: vpermi2ps %zmm2, %zmm0, %zmm3 {%k1}
3828 ; CHECK-NEXT: vpermi2ps %zmm2, %zmm0, %zmm1
3829 ; CHECK-NEXT: vaddps %zmm1, %zmm3, %zmm0
3830 ; CHECK-NEXT: retq
3842 ; CHECK-NEXT: kmovw %edi, %k1
3843 ; CHECK-NEXT: vmovaps %zmm1, %zmm3
3844 ; CHECK-NEXT: vpermi2q %zmm2, %zmm0, %zmm3 {%k1}
3845 ; CHECK-NEXT: vpermi2q %zmm2, %zmm0, %zmm1
3846 ; CHECK-NEXT: vpaddq %zmm1, %zmm3, %zmm0
3847 ; CHECK-NEXT: retq
3859 ; CHECK-NEXT: kmovw %esi, %k1
3860 ; CHECK-NEXT: vmovaps %zmm1, %zmm2
3861 ; CHECK-NEXT: vpermt2d (%rdi), %zmm0, %zmm2 {%k1} {z}
3862 ; CHECK-NEXT: vpermt2d %zmm1, %zmm0, %zmm1
3863 ; CHECK-NEXT: vpaddd %zmm1, %zmm2, %zmm0
3864 ; CHECK-NEXT: retq
3877 ; CHECK-NEXT: kmovw %esi, %k1
3878 ; CHECK-NEXT: vmovaps %zmm1, %zmm2
3879 ; CHECK-NEXT: vpermt2pd (%rdi){1to8}, %zmm0, %zmm2 {%k1} {z}
3880 ; CHECK-NEXT: vpermt2pd %zmm1, %zmm0, %zmm1
3881 ; CHECK-NEXT: vaddpd %zmm1, %zmm2, %zmm0
3882 ; CHECK-NEXT: retq
3897 ; CHECK-NEXT: kmovw %edi, %k1
3898 ; CHECK-NEXT: vmovaps %zmm1, %zmm3
3899 ; CHECK-NEXT: vpermt2ps %zmm2, %zmm0, %zmm3 {%k1} {z}
3900 ; CHECK-NEXT: vpermt2ps %zmm2, %zmm0, %zmm1
3901 ; CHECK-NEXT: vaddps %zmm1, %zmm3, %zmm0
3902 ; CHECK-NEXT: retq
3915 ; CHECK-NEXT: kmovw %edi, %k1
3916 ; CHECK-NEXT: vmovaps %zmm1, %zmm3
3917 ; CHECK-NEXT: vpermt2q %zmm2, %zmm0, %zmm3 {%k1} {z}
3918 ; CHECK-NEXT: vpermt2q %zmm2, %zmm0, %zmm1
3919 ; CHECK-NEXT: vpaddq %zmm1, %zmm3, %zmm0
3920 ; CHECK-NEXT: retq
3932 ; CHECK-NEXT: kmovw %edi, %k1
3933 ; CHECK-NEXT: vmovaps %zmm1, %zmm3
3934 ; CHECK-NEXT: vpermt2d %zmm2, %zmm0, %zmm3 {%k1}
3935 ; CHECK-NEXT: vpermt2d %zmm2, %zmm0, %zmm1
3936 ; CHECK-NEXT: vpaddd %zmm1, %zmm3, %zmm0
3937 ; CHECK-NEXT: retq
3948 ; CHECK-NEXT: kmovw %edi, %k1
3949 ; CHECK-NEXT: vscalefpd {rz-sae}, %zmm1, %zmm0, %zmm2 {%k1}
3950 ; CHECK-NEXT: vscalefpd {rn-sae}, %zmm1, %zmm0, %zmm0
3951 ; CHECK-NEXT: vaddpd %zmm0, %zmm2, %zmm0
3952 ; CHECK-NEXT: retq
3963 ; CHECK-NEXT: kmovw %edi, %k1
3964 ; CHECK-NEXT: vscalefps {ru-sae}, %zmm1, %zmm0, %zmm2 {%k1}
3965 ; CHECK-NEXT: vscalefps {rn-sae}, %zmm1, %zmm0, %zmm0
3966 ; CHECK-NEXT: vaddps %zmm0, %zmm2, %zmm0
3967 ; CHECK-NEXT: retq
3979 ; CHECK-NEXT: kmovw %edi, %k1
3980 ; CHECK-NEXT: vpmovqb %zmm0, %xmm1 {%k1}
3981 ; CHECK-NEXT: vpmovqb %zmm0, %xmm2 {%k1} {z}
3982 ; CHECK-NEXT: vpmovqb %zmm0, %xmm0
3983 ; CHECK-NEXT: vpaddb %xmm1, %xmm0, %xmm0
3984 ; CHECK-NEXT: vpaddb %xmm2, %xmm0, %xmm0
3985 ; CHECK-NEXT: retq
3999 ; CHECK-NEXT: kmovw %esi, %k1
4000 ; CHECK-NEXT: vpmovqb %zmm0, (%rdi)
4001 ; CHECK-NEXT: vpmovqb %zmm0, (%rdi) {%k1}
4002 ; CHECK-NEXT: retq
4013 ; CHECK-NEXT: kmovw %edi, %k1
4014 ; CHECK-NEXT: vpmovsqb %zmm0, %xmm1 {%k1}
4015 ; CHECK-NEXT: vpmovsqb %zmm0, %xmm2 {%k1} {z}
4016 ; CHECK-NEXT: vpmovsqb %zmm0, %xmm0
4017 ; CHECK-NEXT: vpaddb %xmm1, %xmm0, %xmm0
4018 ; CHECK-NEXT: vpaddb %xmm2, %xmm0, %xmm0
4019 ; CHECK-NEXT: retq
4033 ; CHECK-NEXT: vpmovsqb %zmm0, (%rdi)
4034 ; CHECK-NEXT: kmovw %esi, %k1
4035 ; CHECK-NEXT: vpmovsqb %zmm0, (%rdi) {%k1}
4036 ; CHECK-NEXT: retq
4047 ; CHECK-NEXT: kmovw %edi, %k1
4048 ; CHECK-NEXT: vpmovusqb %zmm0, %xmm1 {%k1}
4049 ; CHECK-NEXT: vpmovusqb %zmm0, %xmm2 {%k1} {z}
4050 ; CHECK-NEXT: vpmovusqb %zmm0, %xmm0
4051 ; CHECK-NEXT: vpaddb %xmm1, %xmm0, %xmm0
4052 ; CHECK-NEXT: vpaddb %xmm2, %xmm0, %xmm0
4053 ; CHECK-NEXT: retq
4067 ; CHECK-NEXT: vpmovusqb %zmm0, (%rdi)
4068 ; CHECK-NEXT: kmovw %esi, %k1
4069 ; CHECK-NEXT: vpmovusqb %zmm0, (%rdi) {%k1}
4070 ; CHECK-NEXT: retq
4081 ; CHECK-NEXT: kmovw %edi, %k1
4082 ; CHECK-NEXT: vpmovqw %zmm0, %xmm1 {%k1}
4083 ; CHECK-NEXT: vpmovqw %zmm0, %xmm2 {%k1} {z}
4084 ; CHECK-NEXT: vpmovqw %zmm0, %xmm0
4085 ; CHECK-NEXT: vpaddw %xmm1, %xmm0, %xmm0
4086 ; CHECK-NEXT: vpaddw %xmm2, %xmm0, %xmm0
4087 ; CHECK-NEXT: retq
4101 ; CHECK-NEXT: kmovw %esi, %k1
4102 ; CHECK-NEXT: vpmovqw %zmm0, (%rdi)
4103 ; CHECK-NEXT: vpmovqw %zmm0, (%rdi) {%k1}
4104 ; CHECK-NEXT: retq
4115 ; CHECK-NEXT: kmovw %edi, %k1
4116 ; CHECK-NEXT: vpmovsqw %zmm0, %xmm1 {%k1}
4117 ; CHECK-NEXT: vpmovsqw %zmm0, %xmm2 {%k1} {z}
4118 ; CHECK-NEXT: vpmovsqw %zmm0, %xmm0
4119 ; CHECK-NEXT: vpaddw %xmm1, %xmm0, %xmm0
4120 ; CHECK-NEXT: vpaddw %xmm2, %xmm0, %xmm0
4121 ; CHECK-NEXT: retq
4135 ; CHECK-NEXT: vpmovsqw %zmm0, (%rdi)
4136 ; CHECK-NEXT: kmovw %esi, %k1
4137 ; CHECK-NEXT: vpmovsqw %zmm0, (%rdi) {%k1}
4138 ; CHECK-NEXT: retq
4149 ; CHECK-NEXT: kmovw %edi, %k1
4150 ; CHECK-NEXT: vpmovusqw %zmm0, %xmm1 {%k1}
4151 ; CHECK-NEXT: vpmovusqw %zmm0, %xmm2 {%k1} {z}
4152 ; CHECK-NEXT: vpmovusqw %zmm0, %xmm0
4153 ; CHECK-NEXT: vpaddw %xmm1, %xmm0, %xmm0
4154 ; CHECK-NEXT: vpaddw %xmm2, %xmm0, %xmm0
4155 ; CHECK-NEXT: retq
4169 ; CHECK-NEXT: vpmovusqw %zmm0, (%rdi)
4170 ; CHECK-NEXT: kmovw %esi, %k1
4171 ; CHECK-NEXT: vpmovusqw %zmm0, (%rdi) {%k1}
4172 ; CHECK-NEXT: retq
4183 ; CHECK-NEXT: kmovw %edi, %k1
4184 ; CHECK-NEXT: vpmovqd %zmm0, %ymm1 {%k1}
4185 ; CHECK-NEXT: vpmovqd %zmm0, %ymm2 {%k1} {z}
4186 ; CHECK-NEXT: vpmovqd %zmm0, %ymm0
4187 ; CHECK-NEXT: vpaddd %ymm1, %ymm0, %ymm0
4188 ; CHECK-NEXT: vpaddd %ymm2, %ymm0, %ymm0
4189 ; CHECK-NEXT: retq
4203 ; CHECK-NEXT: kmovw %esi, %k1
4204 ; CHECK-NEXT: vpmovqd %zmm0, (%rdi)
4205 ; CHECK-NEXT: vpmovqd %zmm0, (%rdi) {%k1}
4206 ; CHECK-NEXT: retq
4217 ; CHECK-NEXT: kmovw %edi, %k1
4218 ; CHECK-NEXT: vpmovsqd %zmm0, %ymm1 {%k1}
4219 ; CHECK-NEXT: vpmovsqd %zmm0, %ymm2 {%k1} {z}
4220 ; CHECK-NEXT: vpmovsqd %zmm0, %ymm0
4221 ; CHECK-NEXT: vpaddd %ymm1, %ymm0, %ymm0
4222 ; CHECK-NEXT: vpaddd %ymm2, %ymm0, %ymm0
4223 ; CHECK-NEXT: retq
4237 ; CHECK-NEXT: vpmovsqd %zmm0, (%rdi)
4238 ; CHECK-NEXT: kmovw %esi, %k1
4239 ; CHECK-NEXT: vpmovsqd %zmm0, (%rdi) {%k1}
4240 ; CHECK-NEXT: retq
4251 ; CHECK-NEXT: kmovw %edi, %k1
4252 ; CHECK-NEXT: vpmovusqd %zmm0, %ymm1 {%k1}
4253 ; CHECK-NEXT: vpmovusqd %zmm0, %ymm2 {%k1} {z}
4254 ; CHECK-NEXT: vpmovusqd %zmm0, %ymm0
4255 ; CHECK-NEXT: vpaddd %ymm1, %ymm0, %ymm0
4256 ; CHECK-NEXT: vpaddd %ymm2, %ymm0, %ymm0
4257 ; CHECK-NEXT: retq
4271 ; CHECK-NEXT: vpmovusqd %zmm0, (%rdi)
4272 ; CHECK-NEXT: kmovw %esi, %k1
4273 ; CHECK-NEXT: vpmovusqd %zmm0, (%rdi) {%k1}
4274 ; CHECK-NEXT: retq
4285 ; CHECK-NEXT: kmovw %edi, %k1
4286 ; CHECK-NEXT: vpmovdb %zmm0, %xmm1 {%k1}
4287 ; CHECK-NEXT: vpmovdb %zmm0, %xmm2 {%k1} {z}
4288 ; CHECK-NEXT: vpmovdb %zmm0, %xmm0
4289 ; CHECK-NEXT: vpaddb %xmm1, %xmm0, %xmm0
4290 ; CHECK-NEXT: vpaddb %xmm2, %xmm0, %xmm0
4291 ; CHECK-NEXT: retq
4305 ; CHECK-NEXT: kmovw %esi, %k1
4306 ; CHECK-NEXT: vpmovdb %zmm0, (%rdi)
4307 ; CHECK-NEXT: vpmovdb %zmm0, (%rdi) {%k1}
4308 ; CHECK-NEXT: retq
4319 ; CHECK-NEXT: kmovw %edi, %k1
4320 ; CHECK-NEXT: vpmovsdb %zmm0, %xmm1 {%k1}
4321 ; CHECK-NEXT: vpmovsdb %zmm0, %xmm2 {%k1} {z}
4322 ; CHECK-NEXT: vpmovsdb %zmm0, %xmm0
4323 ; CHECK-NEXT: vpaddb %xmm1, %xmm0, %xmm0
4324 ; CHECK-NEXT: vpaddb %xmm2, %xmm0, %xmm0
4325 ; CHECK-NEXT: retq
4339 ; CHECK-NEXT: vpmovsdb %zmm0, (%rdi)
4340 ; CHECK-NEXT: kmovw %esi, %k1
4341 ; CHECK-NEXT: vpmovsdb %zmm0, (%rdi) {%k1}
4342 ; CHECK-NEXT: retq
4353 ; CHECK-NEXT: kmovw %edi, %k1
4354 ; CHECK-NEXT: vpmovusdb %zmm0, %xmm1 {%k1}
4355 ; CHECK-NEXT: vpmovusdb %zmm0, %xmm2 {%k1} {z}
4356 ; CHECK-NEXT: vpmovusdb %zmm0, %xmm0
4357 ; CHECK-NEXT: vpaddb %xmm1, %xmm0, %xmm0
4358 ; CHECK-NEXT: vpaddb %xmm2, %xmm0, %xmm0
4359 ; CHECK-NEXT: retq
4373 ; CHECK-NEXT: vpmovusdb %zmm0, (%rdi)
4374 ; CHECK-NEXT: kmovw %esi, %k1
4375 ; CHECK-NEXT: vpmovusdb %zmm0, (%rdi) {%k1}
4376 ; CHECK-NEXT: retq
4387 ; CHECK-NEXT: kmovw %edi, %k1
4388 ; CHECK-NEXT: vpmovdw %zmm0, %ymm1 {%k1}
4389 ; CHECK-NEXT: vpmovdw %zmm0, %ymm2 {%k1} {z}
4390 ; CHECK-NEXT: vpmovdw %zmm0, %ymm0
4391 ; CHECK-NEXT: vpaddw %ymm1, %ymm0, %ymm0
4392 ; CHECK-NEXT: vpaddw %ymm2, %ymm0, %ymm0
4393 ; CHECK-NEXT: retq
4407 ; CHECK-NEXT: kmovw %esi, %k1
4408 ; CHECK-NEXT: vpmovdw %zmm0, (%rdi)
4409 ; CHECK-NEXT: vpmovdw %zmm0, (%rdi) {%k1}
4410 ; CHECK-NEXT: retq
4421 ; CHECK-NEXT: kmovw %edi, %k1
4422 ; CHECK-NEXT: vpmovsdw %zmm0, %ymm1 {%k1}
4423 ; CHECK-NEXT: vpmovsdw %zmm0, %ymm2 {%k1} {z}
4424 ; CHECK-NEXT: vpmovsdw %zmm0, %ymm0
4425 ; CHECK-NEXT: vpaddw %ymm1, %ymm0, %ymm0
4426 ; CHECK-NEXT: vpaddw %ymm2, %ymm0, %ymm0
4427 ; CHECK-NEXT: retq
4441 ; CHECK-NEXT: vpmovsdw %zmm0, (%rdi)
4442 ; CHECK-NEXT: kmovw %esi, %k1
4443 ; CHECK-NEXT: vpmovsdw %zmm0, (%rdi) {%k1}
4444 ; CHECK-NEXT: retq
4455 ; CHECK-NEXT: kmovw %edi, %k1
4456 ; CHECK-NEXT: vpmovusdw %zmm0, %ymm1 {%k1}
4457 ; CHECK-NEXT: vpmovusdw %zmm0, %ymm2 {%k1} {z}
4458 ; CHECK-NEXT: vpmovusdw %zmm0, %ymm0
4459 ; CHECK-NEXT: vpaddw %ymm1, %ymm0, %ymm0
4460 ; CHECK-NEXT: vpaddw %ymm2, %ymm0, %ymm0
4461 ; CHECK-NEXT: retq
4475 ; CHECK-NEXT: vpmovusdw %zmm0, (%rdi)
4476 ; CHECK-NEXT: kmovw %esi, %k1
4477 ; CHECK-NEXT: vpmovusdw %zmm0, (%rdi) {%k1}
4478 ; CHECK-NEXT: retq
4489 ; CHECK-NEXT: kmovw %edi, %k1
4490 ; CHECK-NEXT: vcvtdq2pd %ymm0, %zmm1 {%k1}
4491 ; CHECK-NEXT: vcvtdq2pd %ymm0, %zmm0
4492 ; CHECK-NEXT: vaddpd %zmm0, %zmm1, %zmm0
4493 ; CHECK-NEXT: retq
4505 ; CHECK-NEXT: kmovw %edi, %k1
4506 ; CHECK-NEXT: vcvtdq2ps %zmm0, %zmm1 {%k1}
4507 ; CHECK-NEXT: vcvtdq2ps {rn-sae}, %zmm0, %zmm0
4508 ; CHECK-NEXT: vaddps %zmm0, %zmm1, %zmm0
4509 ; CHECK-NEXT: retq
4521 ; CHECK-NEXT: kmovw %edi, %k1
4522 ; CHECK-NEXT: vcvtpd2dq %zmm0, %ymm1 {%k1}
4523 ; CHECK-NEXT: vcvtpd2dq {rn-sae}, %zmm0, %ymm0
4524 ; CHECK-NEXT: vpaddd %ymm0, %ymm1, %ymm0
4525 ; CHECK-NEXT: retq
4537 ; CHECK-NEXT: kmovw %edi, %k1
4538 ; CHECK-NEXT: vcvtpd2ps %zmm0, %ymm1 {%k1}
4539 ; CHECK-NEXT: vcvtpd2ps {ru-sae}, %zmm0, %ymm0
4540 ; CHECK-NEXT: vaddps %ymm0, %ymm1, %ymm0
4541 ; CHECK-NEXT: retq
4553 ; CHECK-NEXT: kmovw %edi, %k1
4554 ; CHECK-NEXT: vcvtpd2udq {ru-sae}, %zmm0, %ymm1 {%k1}
4555 ; CHECK-NEXT: vcvtpd2udq {rn-sae}, %zmm0, %ymm0
4556 ; CHECK-NEXT: vpaddd %ymm0, %ymm1, %ymm0
4557 ; CHECK-NEXT: retq
4569 ; CHECK-NEXT: kmovw %edi, %k1
4570 ; CHECK-NEXT: vcvtps2dq {ru-sae}, %zmm0, %zmm1 {%k1}
4571 ; CHECK-NEXT: vcvtps2dq {rn-sae}, %zmm0, %zmm0
4572 ; CHECK-NEXT: vpaddd %zmm0, %zmm1, %zmm0
4573 ; CHECK-NEXT: retq
4585 ; CHECK-NEXT: kmovw %edi, %k1
4586 ; CHECK-NEXT: vcvtps2pd %ymm0, %zmm1 {%k1}
4587 ; CHECK-NEXT: vcvtps2pd {sae}, %ymm0, %zmm0
4588 ; CHECK-NEXT: vaddpd %zmm0, %zmm1, %zmm0
4589 ; CHECK-NEXT: retq
4601 ; CHECK-NEXT: kmovw %edi, %k1
4602 ; CHECK-NEXT: vcvtps2udq {ru-sae}, %zmm0, %zmm1 {%k1}
4603 ; CHECK-NEXT: vcvtps2udq {rn-sae}, %zmm0, %zmm0
4604 ; CHECK-NEXT: vpaddd %zmm0, %zmm1, %zmm0
4605 ; CHECK-NEXT: retq
4617 ; CHECK-NEXT: kmovw %edi, %k1
4618 ; CHECK-NEXT: vcvttpd2dq %zmm0, %ymm1 {%k1}
4619 ; CHECK-NEXT: vcvttpd2dq {sae}, %zmm0, %ymm0
4620 ; CHECK-NEXT: vpaddd %ymm0, %ymm1, %ymm0
4621 ; CHECK-NEXT: retq
4633 ; CHECK-NEXT: kmovw %edi, %k1
4634 ; CHECK-NEXT: vcvtudq2pd %ymm0, %zmm1 {%k1}
4635 ; CHECK-NEXT: vcvtudq2pd %ymm0, %zmm0
4636 ; CHECK-NEXT: vaddpd %zmm0, %zmm1, %zmm0
4637 ; CHECK-NEXT: retq
4650 ; CHECK-NEXT: kmovw %edi, %k1
4651 ; CHECK-NEXT: vcvtudq2ps %zmm0, %zmm1 {%k1}
4652 ; CHECK-NEXT: vcvtudq2ps {rn-sae}, %zmm0, %zmm0
4653 ; CHECK-NEXT: vaddps %zmm0, %zmm1, %zmm0
4654 ; CHECK-NEXT: retq
4666 ; CHECK-NEXT: kmovw %edi, %k1
4667 ; CHECK-NEXT: vcvttpd2udq %zmm0, %ymm1 {%k1}
4668 ; CHECK-NEXT: vcvttpd2udq {sae}, %zmm0, %ymm0
4669 ; CHECK-NEXT: vpaddd %ymm0, %ymm1, %ymm0
4670 ; CHECK-NEXT: retq
4682 ; CHECK-NEXT: kmovw %edi, %k1
4683 ; CHECK-NEXT: vcvttps2dq %zmm0, %zmm1 {%k1}
4684 ; CHECK-NEXT: vcvttps2dq {sae}, %zmm0, %zmm0
4685 ; CHECK-NEXT: vpaddd %zmm0, %zmm1, %zmm0
4686 ; CHECK-NEXT: retq
4698 ; CHECK-NEXT: kmovw %edi, %k1
4699 ; CHECK-NEXT: vcvttps2udq %zmm0, %zmm1 {%k1}
4700 ; CHECK-NEXT: vcvttps2udq {sae}, %zmm0, %zmm0
4701 ; CHECK-NEXT: vpaddd %zmm0, %zmm1, %zmm0
4702 ; CHECK-NEXT: retq
4714 ; CHECK-NEXT: andl $1, %edi
4715 ; CHECK-NEXT: kmovw %edi, %k1
4716 ; CHECK-NEXT: vmovaps %zmm2, %zmm3
4717 ; CHECK-NEXT: vgetexpss %xmm1, %xmm0, %xmm3 {%k1}
4718 ; CHECK-NEXT: vgetexpss {sae}, %xmm1, %xmm0, %xmm2 {%k1}
4719 ; CHECK-NEXT: vgetexpss {sae}, %xmm1, %xmm0, %xmm4 {%k1} {z}
4720 ; CHECK-NEXT: vgetexpss {sae}, %xmm1, %xmm0, %xmm0
4721 ; CHECK-NEXT: vaddps %xmm2, %xmm3, %xmm1
4722 ; CHECK-NEXT: vaddps %xmm0, %xmm4, %xmm0
4723 ; CHECK-NEXT: vaddps %xmm0, %xmm1, %xmm0
4724 ; CHECK-NEXT: retq
4741 ; CHECK-NEXT: andl $1, %edi
4742 ; CHECK-NEXT: kmovw %edi, %k1
4743 ; CHECK-NEXT: vmovaps %zmm2, %zmm3
4744 ; CHECK-NEXT: vgetexpsd %xmm1, %xmm0, %xmm3 {%k1}
4745 ; CHECK-NEXT: vgetexpsd %xmm1, %xmm0, %xmm4
4746 ; CHECK-NEXT: vgetexpsd {sae}, %xmm1, %xmm0, %xmm2 {%k1}
4747 ; CHECK-NEXT: vgetexpsd {sae}, %xmm1, %xmm0, %xmm0 {%k1} {z}
4748 ; CHECK-NEXT: vaddpd %xmm2, %xmm3, %xmm1
4749 ; CHECK-NEXT: vaddpd %xmm4, %xmm0, %xmm0
4750 ; CHECK-NEXT: vaddpd %xmm0, %xmm1, %xmm0
4751 ; CHECK-NEXT: retq
4768 ; CHECK-NEXT: andl $1, %edi
4769 ; CHECK-NEXT: kmovw %edi, %k1
4770 ; CHECK-NEXT: vcmpnltsd {sae}, %xmm1, %xmm0, %k0 {%k1}
4771 ; CHECK-NEXT: kmovw %k0, %eax
4772 ; CHECK-NEXT: ## kill: %AL<def> %AL<kill> %AX<kill>
4773 ; CHECK-NEXT: retq
4782 ; CHECK-NEXT: vcmpunordsd {sae}, %xmm1, %xmm0, %k0
4783 ; CHECK-NEXT: vcmplesd %xmm1, %xmm0, %k1
4784 ; CHECK-NEXT: korw %k0, %k1, %k0
4785 ; CHECK-NEXT: vcmpnltsd {sae}, %xmm1, %xmm0, %k1
4786 ; CHECK-NEXT: vcmpneqsd %xmm1, %xmm0, %k2
4787 ; CHECK-NEXT: korw %k1, %k2, %k1
4788 ; CHECK-NEXT: andl $1, %edi
4789 ; CHECK-NEXT: kmovw %edi, %k2
4790 ; CHECK-NEXT: kandw %k2, %k1, %k1
4791 ; CHECK-NEXT: korw %k1, %k0, %k0
4792 ; CHECK-NEXT: kmovw %k0, %eax
4793 ; CHECK-NEXT: ## kill: %AL<def> %AL<kill> %AX<kill>
4794 ; CHECK-NEXT: retq
4812 ; CHECK-NEXT: andl $1, %edi
4813 ; CHECK-NEXT: kmovw %edi, %k1
4814 ; CHECK-NEXT: vcmpunordss %xmm1, %xmm0, %k0 {%k1}
4815 ; CHECK-NEXT: kmovw %k0, %eax
4816 ; CHECK-NEXT: ## kill: %AL<def> %AL<kill> %AX<kill>
4817 ; CHECK-NEXT: retq
4827 ; CHECK-NEXT: vcmpless %xmm1, %xmm0, %k1
4828 ; CHECK-NEXT: vcmpunordss {sae}, %xmm1, %xmm0, %k0 {%k1}
4829 ; CHECK-NEXT: andl $1, %edi
4830 ; CHECK-NEXT: kmovw %edi, %k1
4831 ; CHECK-NEXT: vcmpneqss %xmm1, %xmm0, %k2 {%k1}
4832 ; CHECK-NEXT: kmovw %k2, %ecx
4833 ; CHECK-NEXT: vcmpnltss {sae}, %xmm1, %xmm0, %k1 {%k1}
4834 ; CHECK-NEXT: kmovw %k1, %eax
4835 ; CHECK-NEXT: kmovw %k0, %edx
4836 ; CHECK-NEXT: andb %cl, %al
4837 ; CHECK-NEXT: andb %dl, %al
4838 ; CHECK-NEXT: ## kill: %AL<def> %AL<kill> %AX<kill>
4839 ; CHECK-NEXT: retq
4856 ; CHECK-NEXT: kmovw %edi, %k1
4857 ; CHECK-NEXT: vshuff32x4 {{.*#+}} zmm2 {%k1} = zmm0[8,9,10,11,4,5,6,7],zmm1[4,5,6,7,0,1,2,3]
4858 ; CHECK-NEXT: vshuff32x4 {{.*#+}} zmm0 = zmm0[8,9,10,11,4,5,6,7],zmm1[4,5,6,7,0,1,2,3]
4859 ; CHECK-NEXT: vaddps %zmm0, %zmm2, %zmm0
4860 ; CHECK-NEXT: retq
4872 ; CHECK-NEXT: kmovw %edi, %k1
4873 ; CHECK-NEXT: vshuff64x2 {{.*#+}} zmm2 {%k1} = zmm0[4,5,2,3],zmm1[2,3,0,1]
4874 ; CHECK-NEXT: vshuff64x2 {{.*#+}} zmm3 {%k1} {z} = zmm0[4,5,2,3],zmm1[2,3,0,1]
4875 ; CHECK-NEXT: vshuff64x2 {{.*#+}} zmm0 = zmm0[4,5,2,3],zmm1[2,3,0,1]
4876 ; CHECK-NEXT: vaddpd %zmm0, %zmm2, %zmm0
4877 ; CHECK-NEXT: vaddpd %zmm3, %zmm0, %zmm0
4878 ; CHECK-NEXT: retq
4893 ; CHECK-NEXT: kmovw %edi, %k1
4894 ; CHECK-NEXT: vshufi32x4 {{.*#+}} zmm2 {%k1} = zmm0[8,9,10,11,4,5,6,7],zmm1[4,5,6,7,0,1,2,3]
4895 ; CHECK-NEXT: vshufi32x4 {{.*#+}} zmm0 = zmm0[8,9,10,11,4,5,6,7],zmm1[4,5,6,7,0,1,2,3]
4896 ; CHECK-NEXT: vpaddd %zmm0, %zmm2, %zmm0
4897 ; CHECK-NEXT: retq
4909 ; CHECK-NEXT: kmovw %edi, %k1
4910 ; CHECK-NEXT: vshufi64x2 {{.*#+}} zmm2 {%k1} = zmm0[4,5,2,3],zmm1[2,3,0,1]
4911 ; CHECK-NEXT: vshufi64x2 {{.*#+}} zmm0 = zmm0[4,5,2,3],zmm1[2,3,0,1]
4912 ; CHECK-NEXT: vpaddq %zmm0, %zmm2, %zmm0
4913 ; CHECK-NEXT: retq
4925 ; CHECK-NEXT: kmovw %edi, %k1
4926 ; CHECK-NEXT: vgetmantpd $11, %zmm0, %zmm1 {%k1}
4927 ; CHECK-NEXT: vgetmantpd $11, {sae}, %zmm0, %zmm0
4928 ; CHECK-NEXT: vaddpd %zmm0, %zmm1, %zmm0
4929 ; CHECK-NEXT: retq
4941 ; CHECK-NEXT: kmovw %edi, %k1
4942 ; CHECK-NEXT: vgetmantps $11, %zmm0, %zmm1 {%k1}
4943 ; CHECK-NEXT: vgetmantps $11, {sae}, %zmm0, %zmm0
4944 ; CHECK-NEXT: vaddps %zmm0, %zmm1, %zmm0
4945 ; CHECK-NEXT: retq
4957 ; CHECK-NEXT: andl $1, %edi
4958 ; CHECK-NEXT: kmovw %edi, %k1
4959 ; CHECK-NEXT: vmovaps %zmm2, %zmm3
4960 ; CHECK-NEXT: vgetmantsd $11, %xmm1, %xmm0, %xmm3 {%k1}
4961 ; CHECK-NEXT: vgetmantsd $11, %xmm1, %xmm0, %xmm4 {%k1} {z}
4962 ; CHECK-NEXT: vgetmantsd $11, %xmm1, %xmm0, %xmm5
4963 ; CHECK-NEXT: vgetmantsd $11, {sae}, %xmm1, %xmm0, %xmm2 {%k1}
4964 ; CHECK-NEXT: vaddpd %xmm4, %xmm3, %xmm0
4965 ; CHECK-NEXT: vaddpd %xmm5, %xmm2, %xmm1
4966 ; CHECK-NEXT: vaddpd %xmm1, %xmm0, %xmm0
4967 ; CHECK-NEXT: retq
4983 ; CHECK-NEXT: andl $1, %edi
4984 ; CHECK-NEXT: kmovw %edi, %k1
4985 ; CHECK-NEXT: vgetmantss $11, %xmm1, %xmm0, %xmm2 {%k1}
4986 ; CHECK-NEXT: vgetmantss $11, %xmm1, %xmm0, %xmm3 {%k1} {z}
4987 ; CHECK-NEXT: vgetmantss $11, %xmm1, %xmm0, %xmm4
4988 ; CHECK-NEXT: vgetmantss $11, {sae}, %xmm1, %xmm0, %xmm0
4989 ; CHECK-NEXT: vaddps %xmm3, %xmm2, %xmm1
4990 ; CHECK-NEXT: vaddps %xmm4, %xmm0, %xmm0
4991 ; CHECK-NEXT: vaddps %xmm0, %xmm1, %xmm0
4992 ; CHECK-NEXT: retq
5008 ; CHECK-NEXT: kmovw %edi, %k1
5009 ; CHECK-NEXT: vshufpd {{.*#+}} zmm2 {%k1} = zmm0[0],zmm1[1],zmm0[3],zmm1[2],zmm0[5],zmm1[4],zmm0[6],zmm1[6]
5010 ; CHECK-NEXT: vshufpd {{.*#+}} zmm3 {%k1} {z} = zmm0[0],zmm1[1],zmm0[3],zmm1[2],zmm0[5],zmm1[4],zmm0[6],zmm1[6]
5011 ; CHECK-NEXT: vshufpd {{.*#+}} zmm0 = zmm0[0],zmm1[1],zmm0[3],zmm1[2],zmm0[5],zmm1[4],zmm0[6],zmm1[6]
5012 ; CHECK-NEXT: vaddpd %zmm0, %zmm2, %zmm0
5013 ; CHECK-NEXT: vaddpd %zmm3, %zmm0, %zmm0
5014 ; CHECK-NEXT: retq
5029 ; CHECK-NEXT: kmovw %edi, %k1
5030 ; CHECK-NEXT: vshufps {{.*#+}} zmm2 {%k1} = zmm0[2,1],zmm1[1,0],zmm0[6,5],zmm1[5,4],zmm0[10,9],zmm1[9,8],zmm0[14,13],zmm1[13,12]
5031 ; CHECK-NEXT: vshufps {{.*#+}} zmm0 = zmm0[2,1],zmm1[1,0],zmm0[6,5],zmm1[5,4],zmm0[10,9],zmm1[9,8],zmm0[14,13],zmm1[13,12]
5032 ; CHECK-NEXT: vaddps %zmm0, %zmm2, %zmm0
5033 ; CHECK-NEXT: retq
5045 ; CHECK-NEXT: kmovw %edi, %k1
5046 ; CHECK-NEXT: vpermilpd %zmm1, %zmm0, %zmm2 {%k1}
5047 ; CHECK-NEXT: vpermilpd %zmm1, %zmm0, %zmm3 {%k1} {z}
5048 ; CHECK-NEXT: vpermilpd %zmm1, %zmm0, %zmm0
5049 ; CHECK-NEXT: vaddpd %zmm3, %zmm2, %zmm1
5050 ; CHECK-NEXT: vaddpd %zmm1, %zmm0, %zmm0
5051 ; CHECK-NEXT: retq
5065 ; CHECK-NEXT: kmovw %edi, %k1
5066 ; CHECK-NEXT: vpermilps %zmm1, %zmm0, %zmm2 {%k1}
5067 ; CHECK-NEXT: vpermilps %zmm1, %zmm0, %zmm3 {%k1} {z}
5068 ; CHECK-NEXT: vpermilps %zmm1, %zmm0, %zmm0
5069 ; CHECK-NEXT: vaddps %zmm3, %zmm2, %zmm1
5070 ; CHECK-NEXT: vaddps %zmm1, %zmm0, %zmm0
5071 ; CHECK-NEXT: retq
5085 ; CHECK-NEXT: kmovw %edi, %k1
5086 ; CHECK-NEXT: vinsertf32x4 $1, %xmm1, %zmm0, %zmm2 {%k1}
5087 ; CHECK-NEXT: vinsertf32x4 $1, %xmm1, %zmm0, %zmm3 {%k1} {z}
5088 ; CHECK-NEXT: vinsertf32x4 $1, %xmm1, %zmm0, %zmm0
5089 ; CHECK-NEXT: vaddps %zmm0, %zmm2, %zmm0
5090 ; CHECK-NEXT: vaddps %zmm0, %zmm3, %zmm0
5091 ; CHECK-NEXT: retq
5105 ; CHECK-NEXT: kmovw %edi, %k1
5106 ; CHECK-NEXT: vinserti32x4 $1, %xmm1, %zmm0, %zmm2 {%k1}
5107 ; CHECK-NEXT: vinserti32x4 $1, %xmm1, %zmm0, %zmm3 {%k1} {z}
5108 ; CHECK-NEXT: vinserti32x4 $1, %xmm1, %zmm0, %zmm0
5109 ; CHECK-NEXT: vpaddd %zmm0, %zmm2, %zmm0
5110 ; CHECK-NEXT: vpaddd %zmm0, %zmm3, %zmm0
5111 ; CHECK-NEXT: retq
5125 ; CHECK-NEXT: kmovw %edi, %k1
5126 ; CHECK-NEXT: vinsertf64x4 $1, %ymm1, %zmm0, %zmm2 {%k1}
5127 ; CHECK-NEXT: vinsertf64x4 $1, %ymm1, %zmm0, %zmm3 {%k1} {z}
5128 ; CHECK-NEXT: vinsertf64x4 $1, %ymm1, %zmm0, %zmm0
5129 ; CHECK-NEXT: vaddpd %zmm0, %zmm2, %zmm0
5130 ; CHECK-NEXT: vaddpd %zmm0, %zmm3, %zmm0
5131 ; CHECK-NEXT: retq
5145 ; CHECK-NEXT: kmovw %edi, %k1
5146 ; CHECK-NEXT: vinserti64x4 $1, %ymm1, %zmm0, %zmm2 {%k1}
5147 ; CHECK-NEXT: vinserti64x4 $1, %ymm1, %zmm0, %zmm3 {%k1} {z}
5148 ; CHECK-NEXT: vinserti64x4 $1, %ymm1, %zmm0, %zmm0
5149 ; CHECK-NEXT: vpaddq %zmm0, %zmm2, %zmm0
5150 ; CHECK-NEXT: vpaddq %zmm0, %zmm3, %zmm0
5151 ; CHECK-NEXT: retq
5165 ; CHECK-NEXT: andl $1, %edi
5166 ; CHECK-NEXT: kmovw %edi, %k1
5167 ; CHECK-NEXT: vcvtss2sd %xmm1, %xmm0, %xmm2 {%k1}
5168 ; CHECK-NEXT: vcvtss2sd {sae}, %xmm1, %xmm0, %xmm0
5169 ; CHECK-NEXT: vaddpd %xmm0, %xmm2, %xmm0
5170 ; CHECK-NEXT: retq
5182 ; CHECK-NEXT: andl $1, %edi
5183 ; CHECK-NEXT: kmovw %edi, %k1
5184 ; CHECK-NEXT: vcvtsd2ss {rz-sae}, %xmm1, %xmm0, %xmm2 {%k1}
5185 ; CHECK-NEXT: vcvtsd2ss {rn-sae}, %xmm1, %xmm0, %xmm0
5186 ; CHECK-NEXT: vaddps %xmm0, %xmm2, %xmm0
5187 ; CHECK-NEXT: retq
5199 ; CHECK-NEXT: kmovw %edi, %k1
5200 ; CHECK-NEXT: vmovaps %zmm0, %zmm3
5201 ; CHECK-NEXT: vpternlogd $33, %zmm2, %zmm1, %zmm3 {%k1}
5202 ; CHECK-NEXT: vpternlogd $33, %zmm2, %zmm1, %zmm0
5203 ; CHECK-NEXT: vpaddd %zmm0, %zmm3, %zmm0
5204 ; CHECK-NEXT: retq
5216 ; CHECK-NEXT: kmovw %edi, %k1
5217 ; CHECK-NEXT: vmovaps %zmm0, %zmm3
5218 ; CHECK-NEXT: vpternlogd $33, %zmm2, %zmm1, %zmm3 {%k1} {z}
5219 ; CHECK-NEXT: vpternlogd $33, %zmm2, %zmm1, %zmm0
5220 ; CHECK-NEXT: vpaddd %zmm0, %zmm3, %zmm0
5221 ; CHECK-NEXT: retq
5233 ; CHECK-NEXT: kmovw %edi, %k1
5234 ; CHECK-NEXT: vmovaps %zmm0, %zmm3
5235 ; CHECK-NEXT: vpternlogq $33, %zmm2, %zmm1, %zmm3 {%k1}
5236 ; CHECK-NEXT: vpternlogq $33, %zmm2, %zmm1, %zmm0
5237 ; CHECK-NEXT: vpaddq %zmm0, %zmm3, %zmm0
5238 ; CHECK-NEXT: retq
5250 ; CHECK-NEXT: kmovw %edi, %k1
5251 ; CHECK-NEXT: vmovaps %zmm0, %zmm3
5252 ; CHECK-NEXT: vpternlogq $33, %zmm2, %zmm1, %zmm3 {%k1} {z}
5253 ; CHECK-NEXT: vpternlogq $33, %zmm2, %zmm1, %zmm0
5254 ; CHECK-NEXT: vpaddq %zmm0, %zmm3, %zmm0
5255 ; CHECK-NEXT: retq
5265 ; CHECK-NEXT: vcmpeqsd {sae}, %xmm1, %xmm0, %k0
5266 ; CHECK-NEXT: kmovw %k0, %eax
5267 ; CHECK-NEXT: retq
5275 ; CHECK-NEXT: vcmpeq_uqsd {sae}, %xmm1, %xmm0, %k0
5276 ; CHECK-NEXT: kmovw %k0, %eax
5277 ; CHECK-NEXT: retq
5285 ; CHECK-NEXT: vcmpeqsd %xmm1, %xmm0, %k0
5286 ; CHECK-NEXT: kmovw %k0, %eax
5287 ; CHECK-NEXT: retq
5295 ; CHECK-NEXT: vcmpeq_uqsd %xmm1, %xmm0, %k0
5296 ; CHECK-NEXT: kmovw %k0, %eax
5297 ; CHECK-NEXT: retq
5305 ; CHECK-NEXT: vcmpltsd {sae}, %xmm1, %xmm0, %k0
5306 ; CHECK-NEXT: kmovw %k0, %eax
5307 ; CHECK-NEXT: retq
5315 ; CHECK-NEXT: vcmpngesd {sae}, %xmm1, %xmm0, %k0
5316 ; CHECK-NEXT: kmovw %k0, %eax
5317 ; CHECK-NEXT: retq
5325 ; CHECK-NEXT: vcmpltsd %xmm1, %xmm0, %k0
5326 ; CHECK-NEXT: kmovw %k0, %eax
5327 ; CHECK-NEXT: retq
5335 ; CHECK-NEXT: vcmpngesd %xmm1, %xmm0, %k0
5336 ; CHECK-NEXT: kmovw %k0, %eax
5337 ; CHECK-NEXT: retq
5347 ; CHECK-NEXT: vcmpngess %xmm1, %xmm0, %k0
5348 ; CHECK-NEXT: kmovw %k0, %eax
5349 ; CHECK-NEXT: retq
5360 ; CHECK-NEXT: andl $1, %edi
5361 ; CHECK-NEXT: kmovw %edi, %k1
5362 ; CHECK-NEXT: vmovss %xmm1, %xmm0, %xmm2 {%k1}
5363 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
5364 ; CHECK-NEXT: retq
5372 ; CHECK-NEXT: andl $1, %edi
5373 ; CHECK-NEXT: kmovw %edi, %k1
5374 ; CHECK-NEXT: vmovss %xmm1, %xmm0, %xmm0 {%k1} {z}
5375 ; CHECK-NEXT: retq
5383 ; CHECK-NEXT: vmovss %xmm1, %xmm0, %xmm0
5384 ; CHECK-NEXT: retq
5393 ; CHECK-NEXT: vmovsd %xmm1, %xmm0, %xmm0
5394 ; CHECK-NEXT: retq
5402 ; CHECK-NEXT: andl $1, %edi
5403 ; CHECK-NEXT: kmovw %edi, %k1
5404 ; CHECK-NEXT: vmovsd %xmm1, %xmm0, %xmm0 {%k1} {z}
5405 ; CHECK-NEXT: retq
5413 ; CHECK-NEXT: andl $1, %edi
5414 ; CHECK-NEXT: kmovw %edi, %k1
5415 ; CHECK-NEXT: vmovsd %xmm1, %xmm0, %xmm2 {%k1}
5416 ; CHECK-NEXT: vmovaps %zmm2, %zmm0
5417 ; CHECK-NEXT: retq
5427 ; CHECK-NEXT: ## kill: %XMM0<def> %XMM0<kill> %ZMM0<def>
5428 ; CHECK-NEXT: kmovw %edi, %k1
5429 ; CHECK-NEXT: vshuff32x4 {{.*#+}} zmm2 {%k1} {z} = zmm0[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]
5430 ; CHECK-NEXT: vshuff32x4 {{.*#+}} zmm1 {%k1} = zmm0[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]
5431 ; CHECK-NEXT: vshuff32x4 {{.*#+}} zmm0 = zmm0[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]
5432 ; CHECK-NEXT: vaddps %zmm1, %zmm0, %zmm0
5433 ; CHECK-NEXT: vaddps %zmm0, %zmm2, %zmm0
5434 ; CHECK-NEXT: retq
5449 ; CHECK-NEXT: ## kill: %YMM0<def> %YMM0<kill> %ZMM0<def>
5450 ; CHECK-NEXT: kmovw %edi, %k1
5451 ; CHECK-NEXT: vshuff64x2 {{.*#+}} zmm2 {%k1} {z} = zmm0[0,1,2,3,0,1,2,3]
5452 ; CHECK-NEXT: vshuff64x2 {{.*#+}} zmm1 {%k1} = zmm0[0,1,2,3,0,1,2,3]
5453 ; CHECK-NEXT: vshuff64x2 {{.*#+}} zmm0 = zmm0[0,1,2,3,0,1,2,3]
5454 ; CHECK-NEXT: vaddpd %zmm1, %zmm0, %zmm0
5455 ; CHECK-NEXT: vaddpd %zmm0, %zmm2, %zmm0
5456 ; CHECK-NEXT: retq
5471 ; CHECK-NEXT: ## kill: %XMM0<def> %XMM0<kill> %ZMM0<def>
5472 ; CHECK-NEXT: kmovw %edi, %k1
5473 ; CHECK-NEXT: vshufi32x4 {{.*#+}} zmm2 {%k1} {z} = zmm0[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]
5474 ; CHECK-NEXT: vshufi32x4 {{.*#+}} zmm1 {%k1} = zmm0[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]
5475 ; CHECK-NEXT: vshufi32x4 {{.*#+}} zmm0 = zmm0[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]
5476 ; CHECK-NEXT: vpaddd %zmm1, %zmm0, %zmm0
5477 ; CHECK-NEXT: vpaddd %zmm0, %zmm2, %zmm0
5478 ; CHECK-NEXT: retq
5493 ; CHECK-NEXT: ## kill: %YMM0<def> %YMM0<kill> %ZMM0<def>
5494 ; CHECK-NEXT: kmovw %edi, %k1
5495 ; CHECK-NEXT: vshufi64x2 {{.*#+}} zmm2 {%k1} {z} = zmm0[0,1,2,3,0,1,2,3]
5496 ; CHECK-NEXT: vshufi64x2 {{.*#+}} zmm1 {%k1} = zmm0[0,1,2,3,0,1,2,3]
5497 ; CHECK-NEXT: vshufi64x2 {{.*#+}} zmm0 = zmm0[0,1,2,3,0,1,2,3]
5498 ; CHECK-NEXT: vpaddq %zmm1, %zmm0, %zmm0
5499 ; CHECK-NEXT: vpaddq %zmm0, %zmm2, %zmm0
5500 ; CHECK-NEXT: retq
5515 ; CHECK-NEXT: kmovw %esi, %k1
5516 ; CHECK-NEXT: vpsrlq $255, %zmm0, %zmm1 {%k1}
5517 ; CHECK-NEXT: vpsrlq $255, %zmm0, %zmm2 {%k1} {z}
5518 ; CHECK-NEXT: vpsrlq $255, %zmm0, %zmm0
5519 ; CHECK-NEXT: vpaddq %zmm0, %zmm1, %zmm0
5520 ; CHECK-NEXT: vpaddq %zmm2, %zmm0, %zmm0
5521 ; CHECK-NEXT: retq
5535 ; CHECK-NEXT: kmovw %esi, %k1
5536 ; CHECK-NEXT: vpsrld $255, %zmm0, %zmm1 {%k1}
5537 ; CHECK-NEXT: vpsrld $255, %zmm0, %zmm2 {%k1} {z}
5538 ; CHECK-NEXT: vpsrld $255, %zmm0, %zmm0
5539 ; CHECK-NEXT: vpaddd %zmm0, %zmm1, %zmm0
5540 ; CHECK-NEXT: vpaddd %zmm2, %zmm0, %zmm0
5541 ; CHECK-NEXT: retq
5555 ; CHECK-NEXT: kmovw %esi, %k1
5556 ; CHECK-NEXT: vpsrad $3, %zmm0, %zmm1 {%k1}
5557 ; CHECK-NEXT: vpsrad $3, %zmm0, %zmm2 {%k1} {z}
5558 ; CHECK-NEXT: vpsrad $3, %zmm0, %zmm0
5559 ; CHECK-NEXT: vpaddd %zmm2, %zmm1, %zmm1
5560 ; CHECK-NEXT: vpaddd %zmm0, %zmm1, %zmm0
5561 ; CHECK-NEXT: retq
5575 ; CHECK-NEXT: kmovw %esi, %k1
5576 ; CHECK-NEXT: vpsraq $3, %zmm0, %zmm1 {%k1}
5577 ; CHECK-NEXT: vpsraq $3, %zmm0, %zmm2 {%k1} {z}
5578 ; CHECK-NEXT: vpsraq $3, %zmm0, %zmm0
5579 ; CHECK-NEXT: vpaddq %zmm2, %zmm1, %zmm1
5580 ; CHECK-NEXT: vpaddq %zmm0, %zmm1, %zmm0
5581 ; CHECK-NEXT: retq
5595 ; CHECK-NEXT: kmovw %esi, %k1
5596 ; CHECK-NEXT: vpslld $3, %zmm0, %zmm1 {%k1}
5597 ; CHECK-NEXT: vpslld $3, %zmm0, %zmm2 {%k1} {z}
5598 ; CHECK-NEXT: vpslld $3, %zmm0, %zmm0
5599 ; CHECK-NEXT: vpaddd %zmm2, %zmm1, %zmm1
5600 ; CHECK-NEXT: vpaddd %zmm0, %zmm1, %zmm0
5601 ; CHECK-NEXT: retq
5615 ; CHECK-NEXT: kmovw %esi, %k1
5616 ; CHECK-NEXT: vpsllq $3, %zmm0, %zmm1 {%k1}
5617 ; CHECK-NEXT: vpsllq $3, %zmm0, %zmm2 {%k1} {z}
5618 ; CHECK-NEXT: vpsllq $3, %zmm0, %zmm0
5619 ; CHECK-NEXT: vpaddq %zmm2, %zmm1, %zmm1
5620 ; CHECK-NEXT: vpaddq %zmm0, %zmm1, %zmm0
5621 ; CHECK-NEXT: retq
5635 ; CHECK-NEXT: kmovw %edi, %k1
5636 ; CHECK-NEXT: vprorvd %zmm1, %zmm0, %zmm2 {%k1}
5637 ; CHECK-NEXT: vprorvd %zmm1, %zmm0, %zmm3 {%k1} {z}
5638 ; CHECK-NEXT: vprorvd %zmm1, %zmm0, %zmm0
5639 ; CHECK-NEXT: vpaddd %zmm3, %zmm2, %zmm1
5640 ; CHECK-NEXT: vpaddd %zmm0, %zmm1, %zmm0
5641 ; CHECK-NEXT: retq
5655 ; CHECK-NEXT: kmovw %edi, %k1
5656 ; CHECK-NEXT: vprorvq %zmm1, %zmm0, %zmm2 {%k1}
5657 ; CHECK-NEXT: vprorvq %zmm1, %zmm0, %zmm3 {%k1} {z}
5658 ; CHECK-NEXT: vprorvq %zmm1, %zmm0, %zmm0
5659 ; CHECK-NEXT: vpaddq %zmm3, %zmm2, %zmm1
5660 ; CHECK-NEXT: vpaddq %zmm0, %zmm1, %zmm0
5661 ; CHECK-NEXT: retq
5675 ; CHECK-NEXT: kmovw %esi, %k1
5676 ; CHECK-NEXT: vprold $3, %zmm0, %zmm1 {%k1}
5677 ; CHECK-NEXT: vprold $3, %zmm0, %zmm2 {%k1} {z}
5678 ; CHECK-NEXT: vprold $3, %zmm0, %zmm0
5679 ; CHECK-NEXT: vpaddd %zmm2, %zmm1, %zmm1
5680 ; CHECK-NEXT: vpaddd %zmm0, %zmm1, %zmm0
5681 ; CHECK-NEXT: retq
5695 ; CHECK-NEXT: kmovw %esi, %k1
5696 ; CHECK-NEXT: vprolq $3, %zmm0, %zmm1 {%k1}
5697 ; CHECK-NEXT: vprolq $3, %zmm0, %zmm2 {%k1} {z}
5698 ; CHECK-NEXT: vprolq $3, %zmm0, %zmm0
5699 ; CHECK-NEXT: vpaddq %zmm2, %zmm1, %zmm1
5700 ; CHECK-NEXT: vpaddq %zmm0, %zmm1, %zmm0
5701 ; CHECK-NEXT: retq
5715 ; CHECK-NEXT: kmovw %edi, %k1
5716 ; CHECK-NEXT: vpmovzxbd {{.*#+}} zmm1 {%k1} = xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4],zero,zero,zero,xmm0[5],zero,zero,zero,xmm0[6],zero,zero,zero,xmm0[7],zero,zero,zero,xmm0[8],zero,zero,zero,xmm0[9],zero,zero,zero,xmm0[10],zero,zero,zero,xmm0[11],zero,zero,zero,xmm0[12],zero,zero,zero,xmm0[13],zero,zero,zero,xmm0[14],zero,zero,zero,xmm0[15],zero,zero,zero
5717 ; CHECK-NEXT: vpmovzxbd {{.*#+}} zmm2 {%k1} {z} = xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4],zero,zero,zero,xmm0[5],zero,zero,zero,xmm0[6],zero,zero,zero,xmm0[7],zero,zero,zero,xmm0[8],zero,zero,zero,xmm0[9],zero,zero,zero,xmm0[10],zero,zero,zero,xmm0[11],zero,zero,zero,xmm0[12],zero,zero,zero,xmm0[13],zero,zero,zero,xmm0[14],zero,zero,zero,xmm0[15],zero,zero,zero
5718 ; CHECK-NEXT: vpmovzxbd {{.*#+}} zmm0 = xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4],zero,zero,zero,xmm0[5],zero,zero,zero,xmm0[6],zero,zero,zero,xmm0[7],zero,zero,zero,xmm0[8],zero,zero,zero,xmm0[9],zero,zero,zero,xmm0[10],zero,zero,zero,xmm0[11],zero,zero,zero,xmm0[12],zero,zero,zero,xmm0[13],zero,zero,zero,xmm0[14],zero,zero,zero,xmm0[15],zero,zero,zero
5719 ; CHECK-NEXT: vpaddd %zmm2, %zmm1, %zmm1
5720 ; CHECK-NEXT: vpaddd %zmm0, %zmm1, %zmm0
5721 ; CHECK-NEXT: retq
5735 ; CHECK-NEXT: kmovw %edi, %k1
5736 ; CHECK-NEXT: vpmovzxbq {{.*#+}} zmm1 {%k1} = xmm0[0],zero,zero,zero,zero,zero,zero,zero,xmm0[1],zero,zero,zero,zero,zero,zero,zero,xmm0[2],zero,zero,zero,zero,zero,zero,zero,xmm0[3],zero,zero,zero,zero,zero,zero,zero,xmm0[4],zero,zero,zero,zero,zero,zero,zero,xmm0[5],zero,zero,zero,zero,zero,zero,zero,xmm0[6],zero,zero,zero,zero,zero,zero,zero,xmm0[7],zero,zero,zero,zero,zero,zero,zero
5737 ; CHECK-NEXT: vpmovzxbq {{.*#+}} zmm2 {%k1} {z} = xmm0[0],zero,zero,zero,zero,zero,zero,zero,xmm0[1],zero,zero,zero,zero,zero,zero,zero,xmm0[2],zero,zero,zero,zero,zero,zero,zero,xmm0[3],zero,zero,zero,zero,zero,zero,zero,xmm0[4],zero,zero,zero,zero,zero,zero,zero,xmm0[5],zero,zero,zero,zero,zero,zero,zero,xmm0[6],zero,zero,zero,zero,zero,zero,zero,xmm0[7],zero,zero,zero,zero,zero,zero,zero
5738 ; CHECK-NEXT: vpmovzxbq {{.*#+}} zmm0 = xmm0[0],zero,zero,zero,zero,zero,zero,zero,xmm0[1],zero,zero,zero,zero,zero,zero,zero,xmm0[2],zero,zero,zero,zero,zero,zero,zero,xmm0[3],zero,zero,zero,zero,zero,zero,zero,xmm0[4],zero,zero,zero,zero,zero,zero,zero,xmm0[5],zero,zero,zero,zero,zero,zero,zero,xmm0[6],zero,zero,zero,zero,zero,zero,zero,xmm0[7],zero,zero,zero,zero,zero,zero,zero
5739 ; CHECK-NEXT: vpaddq %zmm2, %zmm1, %zmm1
5740 ; CHECK-NEXT: vpaddq %zmm0, %zmm1, %zmm0
5741 ; CHECK-NEXT: retq
5755 ; CHECK-NEXT: kmovw %edi, %k1
5756 ; CHECK-NEXT: vpmovzxdq {{.*#+}} zmm1 {%k1} = ymm0[0],zero,ymm0[1],zero,ymm0[2],zero,ymm0[3],zero,ymm0[4],zero,ymm0[5],zero,ymm0[6],zero,ymm0[7],zero
5757 ; CHECK-NEXT: vpmovzxdq {{.*#+}} zmm2 {%k1} {z} = ymm0[0],zero,ymm0[1],zero,ymm0[2],zero,ymm0[3],zero,ymm0[4],zero,ymm0[5],zero,ymm0[6],zero,ymm0[7],zero
5758 ; CHECK-NEXT: vpmovzxdq {{.*#+}} zmm0 = ymm0[0],zero,ymm0[1],zero,ymm0[2],zero,ymm0[3],zero,ymm0[4],zero,ymm0[5],zero,ymm0[6],zero,ymm0[7],zero
5759 ; CHECK-NEXT: vpaddq %zmm2, %zmm1, %zmm1
5760 ; CHECK-NEXT: vpaddq %zmm0, %zmm1, %zmm0
5761 ; CHECK-NEXT: retq
5775 ; CHECK-NEXT: kmovw %edi, %k1
5776 ; CHECK-NEXT: vpmovzxwd {{.*#+}} zmm1 {%k1} = ymm0[0],zero,ymm0[1],zero,ymm0[2],zero,ymm0[3],zero,ymm0[4],zero,ymm0[5],zero,ymm0[6],zero,ymm0[7],zero,ymm0[8],zero,ymm0[9],zero,ymm0[10],zero,ymm0[11],zero,ymm0[12],zero,ymm0[13],zero,ymm0[14],zero,ymm0[15],zero
5777 ; CHECK-NEXT: vpmovzxwd {{.*#+}} zmm2 {%k1} {z} = ymm0[0],zero,ymm0[1],zero,ymm0[2],zero,ymm0[3],zero,ymm0[4],zero,ymm0[5],zero,ymm0[6],zero,ymm0[7],zero,ymm0[8],zero,ymm0[9],zero,ymm0[10],zero,ymm0[11],zero,ymm0[12],zero,ymm0[13],zero,ymm0[14],zero,ymm0[15],zero
5778 ; CHECK-NEXT: vpmovzxwd {{.*#+}} zmm0 = ymm0[0],zero,ymm0[1],zero,ymm0[2],zero,ymm0[3],zero,ymm0[4],zero,ymm0[5],zero,ymm0[6],zero,ymm0[7],zero,ymm0[8],zero,ymm0[9],zero,ymm0[10],zero,ymm0[11],zero,ymm0[12],zero,ymm0[13],zero,ymm0[14],zero,ymm0[15],zero
5779 ; CHECK-NEXT: vpaddd %zmm2, %zmm1, %zmm1
5780 ; CHECK-NEXT: vpaddd %zmm0, %zmm1, %zmm0
5781 ; CHECK-NEXT: retq
5795 ; CHECK-NEXT: kmovw %edi, %k1
5796 ; CHECK-NEXT: vpmovzxwq {{.*#+}} zmm1 {%k1} = xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4],zero,zero,zero,xmm0[5],zero,zero,zero,xmm0[6],zero,zero,zero,xmm0[7],zero,zero,zero
5797 ; CHECK-NEXT: vpmovzxwq {{.*#+}} zmm2 {%k1} {z} = xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4],zero,zero,zero,xmm0[5],zero,zero,zero,xmm0[6],zero,zero,zero,xmm0[7],zero,zero,zero
5798 ; CHECK-NEXT: vpmovzxwq {{.*#+}} zmm0 = xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4],zero,zero,zero,xmm0[5],zero,zero,zero,xmm0[6],zero,zero,zero,xmm0[7],zero,zero,zero
5799 ; CHECK-NEXT: vpaddq %zmm2, %zmm1, %zmm1
5800 ; CHECK-NEXT: vpaddq %zmm0, %zmm1, %zmm0
5801 ; CHECK-NEXT: retq
5815 ; CHECK-NEXT: kmovw %edi, %k1
5816 ; CHECK-NEXT: vpmovsxbd %xmm0, %zmm1 {%k1}
5817 ; CHECK-NEXT: vpmovsxbd %xmm0, %zmm2 {%k1} {z}
5818 ; CHECK-NEXT: vpmovsxbd %xmm0, %zmm0
5819 ; CHECK-NEXT: vpaddd %zmm2, %zmm1, %zmm1
5820 ; CHECK-NEXT: vpaddd %zmm0, %zmm1, %zmm0
5821 ; CHECK-NEXT: retq
5835 ; CHECK-NEXT: kmovw %edi, %k1
5836 ; CHECK-NEXT: vpmovsxbq %xmm0, %zmm1 {%k1}
5837 ; CHECK-NEXT: vpmovsxbq %xmm0, %zmm2 {%k1} {z}
5838 ; CHECK-NEXT: vpmovsxbq %xmm0, %zmm0
5839 ; CHECK-NEXT: vpaddq %zmm2, %zmm1, %zmm1
5840 ; CHECK-NEXT: vpaddq %zmm0, %zmm1, %zmm0
5841 ; CHECK-NEXT: retq
5855 ; CHECK-NEXT: kmovw %edi, %k1
5856 ; CHECK-NEXT: vpmovsxdq %ymm0, %zmm1 {%k1}
5857 ; CHECK-NEXT: vpmovsxdq %ymm0, %zmm2 {%k1} {z}
5858 ; CHECK-NEXT: vpmovsxdq %ymm0, %zmm0
5859 ; CHECK-NEXT: vpaddq %zmm2, %zmm1, %zmm1
5860 ; CHECK-NEXT: vpaddq %zmm0, %zmm1, %zmm0
5861 ; CHECK-NEXT: retq
5876 ; CHECK-NEXT: kmovw %edi, %k1
5877 ; CHECK-NEXT: vpmovsxwd %ymm0, %zmm1 {%k1}
5878 ; CHECK-NEXT: vpmovsxwd %ymm0, %zmm2 {%k1} {z}
5879 ; CHECK-NEXT: vpmovsxwd %ymm0, %zmm0
5880 ; CHECK-NEXT: vpaddd %zmm2, %zmm1, %zmm1
5881 ; CHECK-NEXT: vpaddd %zmm0, %zmm1, %zmm0
5882 ; CHECK-NEXT: retq
5897 ; CHECK-NEXT: kmovw %edi, %k1
5898 ; CHECK-NEXT: vpmovsxwq %xmm0, %zmm1 {%k1}
5899 ; CHECK-NEXT: vpmovsxwq %xmm0, %zmm2 {%k1} {z}
5900 ; CHECK-NEXT: vpmovsxwq %xmm0, %zmm0
5901 ; CHECK-NEXT: vpaddq %zmm2, %zmm1, %zmm1
5902 ; CHECK-NEXT: vpaddq %zmm0, %zmm1, %zmm0
5903 ; CHECK-NEXT: retq
5917 ; CHECK-NEXT: kmovw %edi, %k1
5918 ; CHECK-NEXT: vpermpd %zmm0, %zmm1, %zmm2 {%k1}
5919 ; CHECK-NEXT: vpermpd %zmm0, %zmm1, %zmm3 {%k1} {z}
5920 ; CHECK-NEXT: vpermpd %zmm0, %zmm1, %zmm0
5921 ; CHECK-NEXT: vaddpd %zmm3, %zmm2, %zmm1
5922 ; CHECK-NEXT: vaddpd %zmm0, %zmm1, %zmm0
5923 ; CHECK-NEXT: retq
5937 ; CHECK-NEXT: kmovw %edi, %k1
5938 ; CHECK-NEXT: vpermq %zmm0, %zmm1, %zmm2 {%k1}
5939 ; CHECK-NEXT: vpermq %zmm0, %zmm1, %zmm3 {%k1} {z}
5940 ; CHECK-NEXT: vpermq %zmm0, %zmm1, %zmm0
5941 ; CHECK-NEXT: vpaddq %zmm3, %zmm2, %zmm1
5942 ; CHECK-NEXT: vpaddq %zmm0, %zmm1, %zmm0
5943 ; CHECK-NEXT: retq
5957 ; CHECK-NEXT: kmovw %edi, %k1
5958 ; CHECK-NEXT: vpermps %zmm0, %zmm1, %zmm2 {%k1}
5959 ; CHECK-NEXT: vpermps %zmm0, %zmm1, %zmm3 {%k1} {z}
5960 ; CHECK-NEXT: vpermps %zmm0, %zmm1, %zmm0
5961 ; CHECK-NEXT: vaddps %zmm3, %zmm2, %zmm1
5962 ; CHECK-NEXT: vaddps %zmm0, %zmm1, %zmm0
5963 ; CHECK-NEXT: retq
5977 ; CHECK-NEXT: kmovw %edi, %k1
5978 ; CHECK-NEXT: vpermd %zmm0, %zmm1, %zmm2 {%k1}
5979 ; CHECK-NEXT: vpermd %zmm0, %zmm1, %zmm3 {%k1} {z}
5980 ; CHECK-NEXT: vpermd %zmm0, %zmm1, %zmm0
5981 ; CHECK-NEXT: vpaddd %zmm3, %zmm2, %zmm1
5982 ; CHECK-NEXT: vpaddd %zmm0, %zmm1, %zmm0
5983 ; CHECK-NEXT: retq
5997 ; CHECK-NEXT: kmovw %edi, %k1
5998 ; CHECK-NEXT: vmovaps %zmm0, %zmm3
5999 ; CHECK-NEXT: vfixupimmpd $4, %zmm2, %zmm1, %zmm3 {%k1}
6000 ; CHECK-NEXT: vpxord %zmm4, %zmm4, %zmm4
6001 ; CHECK-NEXT: vfixupimmpd $5, %zmm2, %zmm1, %zmm4 {%k1} {z}
6002 ; CHECK-NEXT: vfixupimmpd $3, {sae}, %zmm2, %zmm1, %zmm0
6003 ; CHECK-NEXT: vaddpd %zmm4, %zmm3, %zmm1
6004 ; CHECK-NEXT: vaddpd %zmm0, %zmm1, %zmm0
6005 ; CHECK-NEXT: retq
6019 ; CHECK-NEXT: kmovw %edi, %k1
6020 ; CHECK-NEXT: vmovaps %zmm0, %zmm3
6021 ; CHECK-NEXT: vfixupimmpd $3, %zmm2, %zmm1, %zmm3 {%k1} {z}
6022 ; CHECK-NEXT: vpxord %zmm4, %zmm4, %zmm4
6023 ; CHECK-NEXT: vmovaps %zmm0, %zmm5
6024 ; CHECK-NEXT: vfixupimmpd $5, %zmm4, %zmm1, %zmm5 {%k1} {z}
6025 ; CHECK-NEXT: vfixupimmpd $2, {sae}, %zmm2, %zmm1, %zmm0
6026 ; CHECK-NEXT: vaddpd %zmm5, %zmm3, %zmm1
6027 ; CHECK-NEXT: vaddpd %zmm0, %zmm1, %zmm0
6028 ; CHECK-NEXT: retq
6042 ; CHECK-NEXT: andl $1, %edi
6043 ; CHECK-NEXT: kmovw %edi, %k1
6044 ; CHECK-NEXT: vmovaps %zmm0, %zmm3
6045 ; CHECK-NEXT: vfixupimmss $5, %xmm2, %xmm1, %xmm3 {%k1}
6046 ; CHECK-NEXT: vpxor %xmm4, %xmm4, %xmm4
6047 ; CHECK-NEXT: vmovaps %zmm0, %zmm5
6048 ; CHECK-NEXT: vfixupimmss $5, %xmm4, %xmm1, %xmm5 {%k1}
6049 ; CHECK-NEXT: vfixupimmss $5, {sae}, %xmm2, %xmm1, %xmm0
6050 NEXT: vaddps %xmm5, %xmm3, %xmm1
6051 ; CHECK-NEXT: vaddps %xmm0, %xmm1, %xmm0
6052 ; CHECK-NEXT: retq
6066 ; CHECK-NEXT: andl $1, %edi
6067 ; CHECK-NEXT: kmovw %edi, %k1
6068 ; CHECK-NEXT: vmovaps %zmm0, %zmm3
6069 ; CHECK-NEXT: vfixupimmss $5, %xmm2, %xmm1, %xmm3 {%k1} {z}
6070 ; CHECK-NEXT: vmovaps %zmm0, %zmm4
6071 ; CHECK-NEXT: vfixupimmss $5, %xmm2, %xmm1, %xmm4
6072 ; CHECK-NEXT: vpxor %xmm2, %xmm2, %xmm2
6073 ; CHECK-NEXT: vfixupimmss $5, {sae}, %xmm2, %xmm1, %xmm0 {%k1} {z}
6074 ; CHECK-NEXT: vaddps %xmm0, %xmm3, %xmm0
6075 ; CHECK-NEXT: vaddps %xmm4, %xmm0, %xmm0
6076 ; CHECK-NEXT: retq
6090 ; CHECK-NEXT: kmovw %edi, %k1
6091 ; CHECK-NEXT: vmovaps %zmm0, %zmm3
6092 ; CHECK-NEXT: vfixupimmps $5, %zmm2, %zmm1, %zmm3 {%k1}
6093 ; CHECK-NEXT: vpxord %zmm4, %zmm4, %zmm4
6094 ; CHECK-NEXT: vmovaps %zmm0, %zmm5
6095 ; CHECK-NEXT: vfixupimmps $5, %zmm4, %zmm1, %zmm5 {%k1}
6096 ; CHECK-NEXT: vfixupimmps $5, {sae}, %zmm2, %zmm1, %zmm0
6097 ; CHECK-NEXT: vaddps %zmm5, %zmm3, %zmm1
6098 ; CHECK-NEXT: vaddps %zmm0, %zmm1, %zmm0
6099 ; CHECK-NEXT: retq
6113 ; CHECK-NEXT: kmovw %edi, %k1
6114 ; CHECK-NEXT: vmovaps %zmm0, %zmm3
6115 ; CHECK-NEXT: vfixupimmps $5, %zmm2, %zmm1, %zmm3 {%k1} {z}
6116 ; CHECK-NEXT: vmovaps %zmm0, %zmm4
6117 ; CHECK-NEXT: vfixupimmps $5, %zmm2, %zmm1, %zmm4
6118 ; CHECK-NEXT: vpxord %zmm2, %zmm2, %zmm2
6119 ; CHECK-NEXT: vfixupimmps $5, {sae}, %zmm2, %zmm1, %zmm0 {%k1} {z}
6120 ; CHECK-NEXT: vaddps %zmm0, %zmm3, %zmm0
6121 ; CHECK-NEXT: vaddps %zmm4, %zmm0, %zmm0
6122 ; CHECK-NEXT: retq
6136 ; CHECK-NEXT: andl $1, %edi
6137 ; CHECK-NEXT: kmovw %edi, %k1
6138 ; CHECK-NEXT: vmovaps %zmm0, %zmm3
6139 ; CHECK-NEXT: vfixupimmsd $5, %xmm2, %xmm1, %xmm3 {%k1}
6140 ; CHECK-NEXT: vmovaps %zmm0, %zmm4
6141 ; CHECK-NEXT: vfixupimmsd $5, %xmm2, %xmm1, %xmm4
6142 ; CHECK-NEXT: vpxor %xmm2, %xmm2, %xmm2
6143 ; CHECK-NEXT: vfixupimmsd $5, {sae}, %xmm2, %xmm1, %xmm0 {%k1}
6144 ; CHECK-NEXT: vaddpd %xmm0, %xmm3, %xmm0
6145 ; CHECK-NEXT: vaddpd %xmm4, %xmm0, %xmm0
6146 ; CHECK-NEXT: retq
6160 ; CHECK-NEXT: andl $1, %edi
6161 ; CHECK-NEXT: kmovw %edi, %k1
6162 ; CHECK-NEXT: vmovaps %zmm0, %zmm3
6163 ; CHECK-NEXT: vfixupimmsd $5, %xmm2, %xmm1, %xmm3 {%k1} {z}
6164 ; CHECK-NEXT: vpxor %xmm4, %xmm4, %xmm4
6165 ; CHECK-NEXT: vmovaps %zmm0, %zmm5
6166 ; CHECK-NEXT: vfixupimmsd $5, {sae}, %xmm4, %xmm1, %xmm5 {%k1} {z}
6167 ; CHECK-NEXT: vfixupimmsd $5, {sae}, %xmm2, %xmm1, %xmm0 {%k1} {z}
6168 ; CHECK-NEXT: vaddpd %xmm5, %xmm3, %xmm1
6169 ; CHECK-NEXT: vaddpd %xmm0, %xmm1, %xmm0
6170 ; CHECK-NEXT: retq
6184 ; CHECK-NEXT: kmovw %edi, %k1
6185 ; CHECK-NEXT: vptestnmd %zmm1, %zmm0, %k0 {%k1}
6186 ; CHECK-NEXT: kmovw %k0, %ecx
6187 ; CHECK-NEXT: vptestnmd %zmm1, %zmm0, %k0
6188 ; CHECK-NEXT: kmovw %k0, %eax
6189 ; CHECK-NEXT: addl %ecx, %eax
6190 ; CHECK-NEXT: ## kill: %AX<def> %AX<kill> %EAX<kill>
6191 ; CHECK-NEXT: retq
6203 ; CHECK-NEXT: kmovw %edi, %k1
6204 ; CHECK-NEXT: vptestnmq %zmm1, %zmm0, %k0 {%k1}
6205 ; CHECK-NEXT: kmovw %k0, %ecx
6206 ; CHECK-NEXT: vptestnmq %zmm1, %zmm0, %k0
6207 ; CHECK-NEXT: kmovw %k0, %eax
6208 ; CHECK-NEXT: addb %cl, %al
6209 ; CHECK-NEXT: ## kill: %AL<def> %AL<kill> %EAX<kill>
6210 ; CHECK-NEXT: retq
6220 ; CHECK-NEXT: kmovw %esi, %k1
6221 ; CHECK-NEXT: vpbroadcastd %edi, %zmm0 {%k1}
6222 ; CHECK-NEXT: vpbroadcastd %edi, %zmm1 {%k1} {z}
6223 ; CHECK-NEXT: vpbroadcastd %edi, %zmm2
6224 ; CHECK-NEXT: vpaddd %zmm0, %zmm2, %zmm0
6225 ; CHECK-NEXT: vpaddd %zmm0, %zmm1, %zmm0
6226 ; CHECK-NEXT: retq
6240 ; CHECK-NEXT: kmovw %esi, %k1
6241 ; CHECK-NEXT: vpbroadcastq %rdi, %zmm0 {%k1}
6242 ; CHECK-NEXT: vpbroadcastq %rdi, %zmm1 {%k1} {z}
6243 ; CHECK-NEXT: vpbroadcastq %rdi, %zmm2
6244 ; CHECK-NEXT: vpaddq %zmm0, %zmm2, %zmm0
6245 ; CHECK-NEXT: vpaddq %zmm0, %zmm1, %zmm0
6246 ; CHECK-NEXT: retq
6261 ; CHECK-NEXT: andl $1, %edi
6262 ; CHECK-NEXT: kmovw %edi, %k1
6263 ; CHECK-NEXT: vmovaps %zmm0, %zmm3
6264 ; CHECK-NEXT: vfmadd132sd %xmm1, %xmm2, %xmm3 {%k1}
6265 ; CHECK-NEXT: vmovaps %zmm1, %zmm4
6266 ; CHECK-NEXT: vfmadd213sd %xmm2, %xmm0, %xmm4
6267 ; CHECK-NEXT: vmovaps %zmm0, %zmm5
6268 ; CHECK-NEXT: vfmadd132sd {rz-sae}, %xmm1, %xmm2, %xmm5 {%k1}
6269 ; CHECK-NEXT: vfmadd213sd {rz-sae}, %xmm2, %xmm0, %xmm1
6270 ; CHECK-NEXT: vaddpd %xmm3, %xmm4, %xmm0
6271 ; CHECK-NEXT: vaddpd %xmm5, %xmm1, %xmm1
6272 ; CHECK-NEXT: vaddpd %xmm1, %xmm0, %xmm0
6273 ; CHECK-NEXT: retq
6289 ; CHECK-NEXT: andl $1, %edi
6290 ; CHECK-NEXT: kmovw %edi, %k1
6291 ; CHECK-NEXT: vmovaps %zmm0, %zmm3
6292 ; CHECK-NEXT: vfmadd132ss %xmm1, %xmm2, %xmm3 {%k1}
6293 ; CHECK-NEXT: vmovaps %zmm1, %zmm4
6294 ; CHECK-NEXT: vfmadd213ss %xmm2, %xmm0, %xmm4
6295 ; CHECK-NEXT: vmovaps %zmm0, %zmm5
6296 ; CHECK-NEXT: vfmadd132ss {rz-sae}, %xmm1, %xmm2, %xmm5 {%k1}
6297 ; CHECK-NEXT: vfmadd213ss {rz-sae}, %xmm2, %xmm0, %xmm1
6298 ; CHECK-NEXT: vaddps %xmm3, %xmm4, %xmm0
6299 ; CHECK-NEXT: vaddps %xmm5, %xmm1, %xmm1
6300 ; CHECK-NEXT: vaddps %xmm1, %xmm0, %xmm0
6301 ; CHECK-NEXT: retq
6317 ; CHECK-NEXT: andl $1, %edi
6318 ; CHECK-NEXT: kmovw %edi, %k1
6319 ; CHECK-NEXT: vmovaps %zmm1, %zmm3
6320 ; CHECK-NEXT: vfmadd213sd %xmm2, %xmm0, %xmm3 {%k1} {z}
6321 ; CHECK-NEXT: vfmadd213sd {rz-sae}, %xmm2, %xmm0, %xmm1 {%k1} {z}
6322 ; CHECK-NEXT: vaddpd %xmm1, %xmm3, %xmm0
6323 ; CHECK-NEXT: retq
6335 ; CHECK-NEXT: andl $1, %edi
6336 ; CHECK-NEXT: kmovw %edi, %k1
6337 ; CHECK-NEXT: vfmadd213ss %xmm2, %xmm0, %xmm1 {%k1} {z}
6338 ; CHECK-NEXT: vmovaps %zmm1, %zmm0
6339 ; CHECK-NEXT: retq
6350 ; CHECK-NEXT: andl $1, %edi
6351 ; CHECK-NEXT: kmovw %edi, %k1
6352 ; CHECK-NEXT: vmovaps %zmm2, %zmm3
6353 ; CHECK-NEXT: vfmadd231sd %xmm1, %xmm0, %xmm3 {%k1}
6354 ; CHECK-NEXT: vmovaps %zmm1, %zmm4
6355 ; CHECK-NEXT: vfmadd213sd %xmm2, %xmm0, %xmm4
6356 ; CHECK-NEXT: vmovaps %zmm2, %zmm5
6357 ; CHECK-NEXT: vfmadd231sd {rz-sae}, %xmm1, %xmm0, %xmm5 {%k1}
6358 ; CHECK-NEXT: vfmadd213sd {rz-sae}, %xmm2, %xmm0, %xmm1
6359 ; CHECK-NEXT: vaddpd %xmm3, %xmm4, %xmm0
6360 ; CHECK-NEXT: vaddpd %xmm5, %xmm1, %xmm1
6361 ; CHECK-NEXT: vaddpd %xmm1, %xmm0, %xmm0
6362 ; CHECK-NEXT: retq
6378 ; CHECK-NEXT: andl $1, %edi
6379 ; CHECK-NEXT: kmovw %edi, %k1
6380 ; CHECK-NEXT: vmovaps %zmm2, %zmm3
6381 ; CHECK-NEXT: vfmadd231ss %xmm1, %xmm0, %xmm3 {%k1}
6382 ; CHECK-NEXT: vmovaps %zmm1, %zmm4
6383 ; CHECK-NEXT: vfmadd213ss %xmm2, %xmm0, %xmm4
6384 ; CHECK-NEXT: vmovaps %zmm2, %zmm5
6385 ; CHECK-NEXT: vfmadd231ss {rz-sae}, %xmm1, %xmm0, %xmm5 {%k1}
6386 ; CHECK-NEXT: vfmadd213ss {rz-sae}, %xmm2, %xmm0, %xmm1
6387 ; CHECK-NEXT: vaddps %xmm3, %xmm4, %xmm0
6388 ; CHECK-NEXT: vaddps %xmm5, %xmm1, %xmm1
6389 ; CHECK-NEXT: vaddps %xmm1, %xmm0, %xmm0
6390 ; CHECK-NEXT: retq
6404 ; CHECK-NEXT: andl $1, %esi
6405 ; CHECK-NEXT: kmovw %esi, %k1
6406 ; CHECK-NEXT: vfmadd231ss (%rdi), %xmm0, %xmm1 {%k1}
6407 ; CHECK-NEXT: vmovaps %zmm1, %zmm0
6408 ; CHECK-NEXT: retq
6418 ; CHECK-NEXT: andl $1, %esi
6419 ; CHECK-NEXT: kmovw %esi, %k1
6420 ; CHECK-NEXT: vfmadd132ss (%rdi), %xmm1, %xmm0 {%k1}
6421 ; CHECK-NEXT: retq
6432 ; CHECK-NEXT: kxorw %k0, %k0, %k1
6433 ; CHECK-NEXT: vfmadd213ss (%rdi), %xmm0, %xmm1 {%k1} {z}
6434 ; CHECK-NEXT: vmovaps %zmm1, %zmm0
6435 ; CHECK-NEXT: retq