Lines Matching refs:AVX512
4 …e=i686-unknown-unknown -mattr=+avx512f -mattr=+avx512vl -O3 | FileCheck %s --check-prefix=AVX512-32
5 …x86_64-unknown-unknown -mattr=+avx512f -mattr=+avx512vl -O3 | FileCheck %s --check-prefix=AVX512-64
28 ; AVX512-32-LABEL: test_v8f32_oeq_q:
29 ; AVX512-32: # %bb.0:
30 ; AVX512-32-NEXT: pushl %ebp
31 ; AVX512-32-NEXT: movl %esp, %ebp
32 ; AVX512-32-NEXT: andl $-32, %esp
33 ; AVX512-32-NEXT: subl $32, %esp
34 ; AVX512-32-NEXT: vcmpeqps 8(%ebp), %ymm2, %k1
35 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
36 ; AVX512-32-NEXT: movl %ebp, %esp
37 ; AVX512-32-NEXT: popl %ebp
38 ; AVX512-32-NEXT: retl
40 ; AVX512-64-LABEL: test_v8f32_oeq_q:
41 ; AVX512-64: # %bb.0:
42 ; AVX512-64-NEXT: vcmpeqps %ymm3, %ymm2, %k1
43 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
44 ; AVX512-64-NEXT: retq
98 ; AVX512-32-LABEL: test_v8f32_ogt_q:
99 ; AVX512-32: # %bb.0:
100 ; AVX512-32-NEXT: pushl %ebp
101 ; AVX512-32-NEXT: movl %esp, %ebp
102 ; AVX512-32-NEXT: andl $-32, %esp
103 ; AVX512-32-NEXT: subl $32, %esp
104 ; AVX512-32-NEXT: vcmpgt_oqps 8(%ebp), %ymm2, %k1
105 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
106 ; AVX512-32-NEXT: movl %ebp, %esp
107 ; AVX512-32-NEXT: popl %ebp
108 ; AVX512-32-NEXT: retl
110 ; AVX512-64-LABEL: test_v8f32_ogt_q:
111 ; AVX512-64: # %bb.0:
112 ; AVX512-64-NEXT: vcmplt_oqps %ymm2, %ymm3, %k1
113 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
114 ; AVX512-64-NEXT: retq
169 ; AVX512-32-LABEL: test_v8f32_oge_q:
170 ; AVX512-32: # %bb.0:
171 ; AVX512-32-NEXT: pushl %ebp
172 ; AVX512-32-NEXT: movl %esp, %ebp
173 ; AVX512-32-NEXT: andl $-32, %esp
174 ; AVX512-32-NEXT: subl $32, %esp
175 ; AVX512-32-NEXT: vcmpge_oqps 8(%ebp), %ymm2, %k1
176 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
177 ; AVX512-32-NEXT: movl %ebp, %esp
178 ; AVX512-32-NEXT: popl %ebp
179 ; AVX512-32-NEXT: retl
181 ; AVX512-64-LABEL: test_v8f32_oge_q:
182 ; AVX512-64: # %bb.0:
183 ; AVX512-64-NEXT: vcmple_oqps %ymm2, %ymm3, %k1
184 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
185 ; AVX512-64-NEXT: retq
239 ; AVX512-32-LABEL: test_v8f32_olt_q:
240 ; AVX512-32: # %bb.0:
241 ; AVX512-32-NEXT: pushl %ebp
242 ; AVX512-32-NEXT: movl %esp, %ebp
243 ; AVX512-32-NEXT: andl $-32, %esp
244 ; AVX512-32-NEXT: subl $32, %esp
245 ; AVX512-32-NEXT: vcmplt_oqps 8(%ebp), %ymm2, %k1
246 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
247 ; AVX512-32-NEXT: movl %ebp, %esp
248 ; AVX512-32-NEXT: popl %ebp
249 ; AVX512-32-NEXT: retl
251 ; AVX512-64-LABEL: test_v8f32_olt_q:
252 ; AVX512-64: # %bb.0:
253 ; AVX512-64-NEXT: vcmplt_oqps %ymm3, %ymm2, %k1
254 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
255 ; AVX512-64-NEXT: retq
308 ; AVX512-32-LABEL: test_v8f32_ole_q:
309 ; AVX512-32: # %bb.0:
310 ; AVX512-32-NEXT: pushl %ebp
311 ; AVX512-32-NEXT: movl %esp, %ebp
312 ; AVX512-32-NEXT: andl $-32, %esp
313 ; AVX512-32-NEXT: subl $32, %esp
314 ; AVX512-32-NEXT: vcmple_oqps 8(%ebp), %ymm2, %k1
315 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
316 ; AVX512-32-NEXT: movl %ebp, %esp
317 ; AVX512-32-NEXT: popl %ebp
318 ; AVX512-32-NEXT: retl
320 ; AVX512-64-LABEL: test_v8f32_ole_q:
321 ; AVX512-64: # %bb.0:
322 ; AVX512-64-NEXT: vcmple_oqps %ymm3, %ymm2, %k1
323 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
324 ; AVX512-64-NEXT: retq
377 ; AVX512-32-LABEL: test_v8f32_one_q:
378 ; AVX512-32: # %bb.0:
379 ; AVX512-32-NEXT: pushl %ebp
380 ; AVX512-32-NEXT: movl %esp, %ebp
381 ; AVX512-32-NEXT: andl $-32, %esp
382 ; AVX512-32-NEXT: subl $32, %esp
383 ; AVX512-32-NEXT: vcmpneq_oqps 8(%ebp), %ymm2, %k1
384 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
385 ; AVX512-32-NEXT: movl %ebp, %esp
386 ; AVX512-32-NEXT: popl %ebp
387 ; AVX512-32-NEXT: retl
389 ; AVX512-64-LABEL: test_v8f32_one_q:
390 ; AVX512-64: # %bb.0:
391 ; AVX512-64-NEXT: vcmpneq_oqps %ymm3, %ymm2, %k1
392 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
393 ; AVX512-64-NEXT: retq
446 ; AVX512-32-LABEL: test_v8f32_ord_q:
447 ; AVX512-32: # %bb.0:
448 ; AVX512-32-NEXT: pushl %ebp
449 ; AVX512-32-NEXT: movl %esp, %ebp
450 ; AVX512-32-NEXT: andl $-32, %esp
451 ; AVX512-32-NEXT: subl $32, %esp
452 ; AVX512-32-NEXT: vcmpordps 8(%ebp), %ymm2, %k1
453 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
454 ; AVX512-32-NEXT: movl %ebp, %esp
455 ; AVX512-32-NEXT: popl %ebp
456 ; AVX512-32-NEXT: retl
458 ; AVX512-64-LABEL: test_v8f32_ord_q:
459 ; AVX512-64: # %bb.0:
460 ; AVX512-64-NEXT: vcmpordps %ymm3, %ymm2, %k1
461 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
462 ; AVX512-64-NEXT: retq
515 ; AVX512-32-LABEL: test_v8f32_ueq_q:
516 ; AVX512-32: # %bb.0:
517 ; AVX512-32-NEXT: pushl %ebp
518 ; AVX512-32-NEXT: movl %esp, %ebp
519 ; AVX512-32-NEXT: andl $-32, %esp
520 ; AVX512-32-NEXT: subl $32, %esp
521 ; AVX512-32-NEXT: vcmpeq_uqps 8(%ebp), %ymm2, %k1
522 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
523 ; AVX512-32-NEXT: movl %ebp, %esp
524 ; AVX512-32-NEXT: popl %ebp
525 ; AVX512-32-NEXT: retl
527 ; AVX512-64-LABEL: test_v8f32_ueq_q:
528 ; AVX512-64: # %bb.0:
529 ; AVX512-64-NEXT: vcmpeq_uqps %ymm3, %ymm2, %k1
530 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
531 ; AVX512-64-NEXT: retq
584 ; AVX512-32-LABEL: test_v8f32_ugt_q:
585 ; AVX512-32: # %bb.0:
586 ; AVX512-32-NEXT: pushl %ebp
587 ; AVX512-32-NEXT: movl %esp, %ebp
588 ; AVX512-32-NEXT: andl $-32, %esp
589 ; AVX512-32-NEXT: subl $32, %esp
590 ; AVX512-32-NEXT: vcmpnle_uqps 8(%ebp), %ymm2, %k1
591 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
592 ; AVX512-32-NEXT: movl %ebp, %esp
593 ; AVX512-32-NEXT: popl %ebp
594 ; AVX512-32-NEXT: retl
596 ; AVX512-64-LABEL: test_v8f32_ugt_q:
597 ; AVX512-64: # %bb.0:
598 ; AVX512-64-NEXT: vcmpnle_uqps %ymm3, %ymm2, %k1
599 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
600 ; AVX512-64-NEXT: retq
653 ; AVX512-32-LABEL: test_v8f32_uge_q:
654 ; AVX512-32: # %bb.0:
655 ; AVX512-32-NEXT: pushl %ebp
656 ; AVX512-32-NEXT: movl %esp, %ebp
657 ; AVX512-32-NEXT: andl $-32, %esp
658 ; AVX512-32-NEXT: subl $32, %esp
659 ; AVX512-32-NEXT: vcmpnlt_uqps 8(%ebp), %ymm2, %k1
660 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
661 ; AVX512-32-NEXT: movl %ebp, %esp
662 ; AVX512-32-NEXT: popl %ebp
663 ; AVX512-32-NEXT: retl
665 ; AVX512-64-LABEL: test_v8f32_uge_q:
666 ; AVX512-64: # %bb.0:
667 ; AVX512-64-NEXT: vcmpnlt_uqps %ymm3, %ymm2, %k1
668 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
669 ; AVX512-64-NEXT: retq
723 ; AVX512-32-LABEL: test_v8f32_ult_q:
724 ; AVX512-32: # %bb.0:
725 ; AVX512-32-NEXT: pushl %ebp
726 ; AVX512-32-NEXT: movl %esp, %ebp
727 ; AVX512-32-NEXT: andl $-32, %esp
728 ; AVX512-32-NEXT: subl $32, %esp
729 ; AVX512-32-NEXT: vcmpnge_uqps 8(%ebp), %ymm2, %k1
730 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
731 ; AVX512-32-NEXT: movl %ebp, %esp
732 ; AVX512-32-NEXT: popl %ebp
733 ; AVX512-32-NEXT: retl
735 ; AVX512-64-LABEL: test_v8f32_ult_q:
736 ; AVX512-64: # %bb.0:
737 ; AVX512-64-NEXT: vcmpnle_uqps %ymm2, %ymm3, %k1
738 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
739 ; AVX512-64-NEXT: retq
794 ; AVX512-32-LABEL: test_v8f32_ule_q:
795 ; AVX512-32: # %bb.0:
796 ; AVX512-32-NEXT: pushl %ebp
797 ; AVX512-32-NEXT: movl %esp, %ebp
798 ; AVX512-32-NEXT: andl $-32, %esp
799 ; AVX512-32-NEXT: subl $32, %esp
800 ; AVX512-32-NEXT: vcmpngt_uqps 8(%ebp), %ymm2, %k1
801 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
802 ; AVX512-32-NEXT: movl %ebp, %esp
803 ; AVX512-32-NEXT: popl %ebp
804 ; AVX512-32-NEXT: retl
806 ; AVX512-64-LABEL: test_v8f32_ule_q:
807 ; AVX512-64: # %bb.0:
808 ; AVX512-64-NEXT: vcmpnlt_uqps %ymm2, %ymm3, %k1
809 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
810 ; AVX512-64-NEXT: retq
864 ; AVX512-32-LABEL: test_v8f32_une_q:
865 ; AVX512-32: # %bb.0:
866 ; AVX512-32-NEXT: pushl %ebp
867 ; AVX512-32-NEXT: movl %esp, %ebp
868 ; AVX512-32-NEXT: andl $-32, %esp
869 ; AVX512-32-NEXT: subl $32, %esp
870 ; AVX512-32-NEXT: vcmpneqps 8(%ebp), %ymm2, %k1
871 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
872 ; AVX512-32-NEXT: movl %ebp, %esp
873 ; AVX512-32-NEXT: popl %ebp
874 ; AVX512-32-NEXT: retl
876 ; AVX512-64-LABEL: test_v8f32_une_q:
877 ; AVX512-64: # %bb.0:
878 ; AVX512-64-NEXT: vcmpneqps %ymm3, %ymm2, %k1
879 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
880 ; AVX512-64-NEXT: retq
933 ; AVX512-32-LABEL: test_v8f32_uno_q:
934 ; AVX512-32: # %bb.0:
935 ; AVX512-32-NEXT: pushl %ebp
936 ; AVX512-32-NEXT: movl %esp, %ebp
937 ; AVX512-32-NEXT: andl $-32, %esp
938 ; AVX512-32-NEXT: subl $32, %esp
939 ; AVX512-32-NEXT: vcmpunordps 8(%ebp), %ymm2, %k1
940 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
941 ; AVX512-32-NEXT: movl %ebp, %esp
942 ; AVX512-32-NEXT: popl %ebp
943 ; AVX512-32-NEXT: retl
945 ; AVX512-64-LABEL: test_v8f32_uno_q:
946 ; AVX512-64: # %bb.0:
947 ; AVX512-64-NEXT: vcmpunordps %ymm3, %ymm2, %k1
948 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
949 ; AVX512-64-NEXT: retq
1002 ; AVX512-32-LABEL: test_v4f64_oeq_q:
1003 ; AVX512-32: # %bb.0:
1004 ; AVX512-32-NEXT: pushl %ebp
1005 ; AVX512-32-NEXT: movl %esp, %ebp
1006 ; AVX512-32-NEXT: andl $-32, %esp
1007 ; AVX512-32-NEXT: subl $32, %esp
1008 ; AVX512-32-NEXT: vcmpeqpd 8(%ebp), %ymm2, %k1
1009 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1010 ; AVX512-32-NEXT: movl %ebp, %esp
1011 ; AVX512-32-NEXT: popl %ebp
1012 ; AVX512-32-NEXT: retl
1014 ; AVX512-64-LABEL: test_v4f64_oeq_q:
1015 ; AVX512-64: # %bb.0:
1016 ; AVX512-64-NEXT: vcmpeqpd %ymm3, %ymm2, %k1
1017 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1018 ; AVX512-64-NEXT: retq
1072 ; AVX512-32-LABEL: test_v4f64_ogt_q:
1073 ; AVX512-32: # %bb.0:
1074 ; AVX512-32-NEXT: pushl %ebp
1075 ; AVX512-32-NEXT: movl %esp, %ebp
1076 ; AVX512-32-NEXT: andl $-32, %esp
1077 ; AVX512-32-NEXT: subl $32, %esp
1078 ; AVX512-32-NEXT: vcmpgt_oqpd 8(%ebp), %ymm2, %k1
1079 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1080 ; AVX512-32-NEXT: movl %ebp, %esp
1081 ; AVX512-32-NEXT: popl %ebp
1082 ; AVX512-32-NEXT: retl
1084 ; AVX512-64-LABEL: test_v4f64_ogt_q:
1085 ; AVX512-64: # %bb.0:
1086 ; AVX512-64-NEXT: vcmplt_oqpd %ymm2, %ymm3, %k1
1087 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1088 ; AVX512-64-NEXT: retq
1143 ; AVX512-32-LABEL: test_v4f64_oge_q:
1144 ; AVX512-32: # %bb.0:
1145 ; AVX512-32-NEXT: pushl %ebp
1146 ; AVX512-32-NEXT: movl %esp, %ebp
1147 ; AVX512-32-NEXT: andl $-32, %esp
1148 ; AVX512-32-NEXT: subl $32, %esp
1149 ; AVX512-32-NEXT: vcmpge_oqpd 8(%ebp), %ymm2, %k1
1150 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1151 ; AVX512-32-NEXT: movl %ebp, %esp
1152 ; AVX512-32-NEXT: popl %ebp
1153 ; AVX512-32-NEXT: retl
1155 ; AVX512-64-LABEL: test_v4f64_oge_q:
1156 ; AVX512-64: # %bb.0:
1157 ; AVX512-64-NEXT: vcmple_oqpd %ymm2, %ymm3, %k1
1158 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1159 ; AVX512-64-NEXT: retq
1213 ; AVX512-32-LABEL: test_v4f64_olt_q:
1214 ; AVX512-32: # %bb.0:
1215 ; AVX512-32-NEXT: pushl %ebp
1216 ; AVX512-32-NEXT: movl %esp, %ebp
1217 ; AVX512-32-NEXT: andl $-32, %esp
1218 ; AVX512-32-NEXT: subl $32, %esp
1219 ; AVX512-32-NEXT: vcmplt_oqpd 8(%ebp), %ymm2, %k1
1220 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1221 ; AVX512-32-NEXT: movl %ebp, %esp
1222 ; AVX512-32-NEXT: popl %ebp
1223 ; AVX512-32-NEXT: retl
1225 ; AVX512-64-LABEL: test_v4f64_olt_q:
1226 ; AVX512-64: # %bb.0:
1227 ; AVX512-64-NEXT: vcmplt_oqpd %ymm3, %ymm2, %k1
1228 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1229 ; AVX512-64-NEXT: retq
1282 ; AVX512-32-LABEL: test_v4f64_ole_q:
1283 ; AVX512-32: # %bb.0:
1284 ; AVX512-32-NEXT: pushl %ebp
1285 ; AVX512-32-NEXT: movl %esp, %ebp
1286 ; AVX512-32-NEXT: andl $-32, %esp
1287 ; AVX512-32-NEXT: subl $32, %esp
1288 ; AVX512-32-NEXT: vcmple_oqpd 8(%ebp), %ymm2, %k1
1289 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1290 ; AVX512-32-NEXT: movl %ebp, %esp
1291 ; AVX512-32-NEXT: popl %ebp
1292 ; AVX512-32-NEXT: retl
1294 ; AVX512-64-LABEL: test_v4f64_ole_q:
1295 ; AVX512-64: # %bb.0:
1296 ; AVX512-64-NEXT: vcmple_oqpd %ymm3, %ymm2, %k1
1297 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1298 ; AVX512-64-NEXT: retq
1351 ; AVX512-32-LABEL: test_v4f64_one_q:
1352 ; AVX512-32: # %bb.0:
1353 ; AVX512-32-NEXT: pushl %ebp
1354 ; AVX512-32-NEXT: movl %esp, %ebp
1355 ; AVX512-32-NEXT: andl $-32, %esp
1356 ; AVX512-32-NEXT: subl $32, %esp
1357 ; AVX512-32-NEXT: vcmpneq_oqpd 8(%ebp), %ymm2, %k1
1358 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1359 ; AVX512-32-NEXT: movl %ebp, %esp
1360 ; AVX512-32-NEXT: popl %ebp
1361 ; AVX512-32-NEXT: retl
1363 ; AVX512-64-LABEL: test_v4f64_one_q:
1364 ; AVX512-64: # %bb.0:
1365 ; AVX512-64-NEXT: vcmpneq_oqpd %ymm3, %ymm2, %k1
1366 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1367 ; AVX512-64-NEXT: retq
1420 ; AVX512-32-LABEL: test_v4f64_ord_q:
1421 ; AVX512-32: # %bb.0:
1422 ; AVX512-32-NEXT: pushl %ebp
1423 ; AVX512-32-NEXT: movl %esp, %ebp
1424 ; AVX512-32-NEXT: andl $-32, %esp
1425 ; AVX512-32-NEXT: subl $32, %esp
1426 ; AVX512-32-NEXT: vcmpordpd 8(%ebp), %ymm2, %k1
1427 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1428 ; AVX512-32-NEXT: movl %ebp, %esp
1429 ; AVX512-32-NEXT: popl %ebp
1430 ; AVX512-32-NEXT: retl
1432 ; AVX512-64-LABEL: test_v4f64_ord_q:
1433 ; AVX512-64: # %bb.0:
1434 ; AVX512-64-NEXT: vcmpordpd %ymm3, %ymm2, %k1
1435 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1436 ; AVX512-64-NEXT: retq
1489 ; AVX512-32-LABEL: test_v4f64_ueq_q:
1490 ; AVX512-32: # %bb.0:
1491 ; AVX512-32-NEXT: pushl %ebp
1492 ; AVX512-32-NEXT: movl %esp, %ebp
1493 ; AVX512-32-NEXT: andl $-32, %esp
1494 ; AVX512-32-NEXT: subl $32, %esp
1495 ; AVX512-32-NEXT: vcmpeq_uqpd 8(%ebp), %ymm2, %k1
1496 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1497 ; AVX512-32-NEXT: movl %ebp, %esp
1498 ; AVX512-32-NEXT: popl %ebp
1499 ; AVX512-32-NEXT: retl
1501 ; AVX512-64-LABEL: test_v4f64_ueq_q:
1502 ; AVX512-64: # %bb.0:
1503 ; AVX512-64-NEXT: vcmpeq_uqpd %ymm3, %ymm2, %k1
1504 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1505 ; AVX512-64-NEXT: retq
1558 ; AVX512-32-LABEL: test_v4f64_ugt_q:
1559 ; AVX512-32: # %bb.0:
1560 ; AVX512-32-NEXT: pushl %ebp
1561 ; AVX512-32-NEXT: movl %esp, %ebp
1562 ; AVX512-32-NEXT: andl $-32, %esp
1563 ; AVX512-32-NEXT: subl $32, %esp
1564 ; AVX512-32-NEXT: vcmpnle_uqpd 8(%ebp), %ymm2, %k1
1565 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1566 ; AVX512-32-NEXT: movl %ebp, %esp
1567 ; AVX512-32-NEXT: popl %ebp
1568 ; AVX512-32-NEXT: retl
1570 ; AVX512-64-LABEL: test_v4f64_ugt_q:
1571 ; AVX512-64: # %bb.0:
1572 ; AVX512-64-NEXT: vcmpnle_uqpd %ymm3, %ymm2, %k1
1573 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1574 ; AVX512-64-NEXT: retq
1627 ; AVX512-32-LABEL: test_v4f64_uge_q:
1628 ; AVX512-32: # %bb.0:
1629 ; AVX512-32-NEXT: pushl %ebp
1630 ; AVX512-32-NEXT: movl %esp, %ebp
1631 ; AVX512-32-NEXT: andl $-32, %esp
1632 ; AVX512-32-NEXT: subl $32, %esp
1633 ; AVX512-32-NEXT: vcmpnlt_uqpd 8(%ebp), %ymm2, %k1
1634 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1635 ; AVX512-32-NEXT: movl %ebp, %esp
1636 ; AVX512-32-NEXT: popl %ebp
1637 ; AVX512-32-NEXT: retl
1639 ; AVX512-64-LABEL: test_v4f64_uge_q:
1640 ; AVX512-64: # %bb.0:
1641 ; AVX512-64-NEXT: vcmpnlt_uqpd %ymm3, %ymm2, %k1
1642 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1643 ; AVX512-64-NEXT: retq
1697 ; AVX512-32-LABEL: test_v4f64_ult_q:
1698 ; AVX512-32: # %bb.0:
1699 ; AVX512-32-NEXT: pushl %ebp
1700 ; AVX512-32-NEXT: movl %esp, %ebp
1701 ; AVX512-32-NEXT: andl $-32, %esp
1702 ; AVX512-32-NEXT: subl $32, %esp
1703 ; AVX512-32-NEXT: vcmpnge_uqpd 8(%ebp), %ymm2, %k1
1704 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1705 ; AVX512-32-NEXT: movl %ebp, %esp
1706 ; AVX512-32-NEXT: popl %ebp
1707 ; AVX512-32-NEXT: retl
1709 ; AVX512-64-LABEL: test_v4f64_ult_q:
1710 ; AVX512-64: # %bb.0:
1711 ; AVX512-64-NEXT: vcmpnle_uqpd %ymm2, %ymm3, %k1
1712 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1713 ; AVX512-64-NEXT: retq
1768 ; AVX512-32-LABEL: test_v4f64_ule_q:
1769 ; AVX512-32: # %bb.0:
1770 ; AVX512-32-NEXT: pushl %ebp
1771 ; AVX512-32-NEXT: movl %esp, %ebp
1772 ; AVX512-32-NEXT: andl $-32, %esp
1773 ; AVX512-32-NEXT: subl $32, %esp
1774 ; AVX512-32-NEXT: vcmpngt_uqpd 8(%ebp), %ymm2, %k1
1775 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1776 ; AVX512-32-NEXT: movl %ebp, %esp
1777 ; AVX512-32-NEXT: popl %ebp
1778 ; AVX512-32-NEXT: retl
1780 ; AVX512-64-LABEL: test_v4f64_ule_q:
1781 ; AVX512-64: # %bb.0:
1782 ; AVX512-64-NEXT: vcmpnlt_uqpd %ymm2, %ymm3, %k1
1783 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1784 ; AVX512-64-NEXT: retq
1838 ; AVX512-32-LABEL: test_v4f64_une_q:
1839 ; AVX512-32: # %bb.0:
1840 ; AVX512-32-NEXT: pushl %ebp
1841 ; AVX512-32-NEXT: movl %esp, %ebp
1842 ; AVX512-32-NEXT: andl $-32, %esp
1843 ; AVX512-32-NEXT: subl $32, %esp
1844 ; AVX512-32-NEXT: vcmpneqpd 8(%ebp), %ymm2, %k1
1845 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1846 ; AVX512-32-NEXT: movl %ebp, %esp
1847 ; AVX512-32-NEXT: popl %ebp
1848 ; AVX512-32-NEXT: retl
1850 ; AVX512-64-LABEL: test_v4f64_une_q:
1851 ; AVX512-64: # %bb.0:
1852 ; AVX512-64-NEXT: vcmpneqpd %ymm3, %ymm2, %k1
1853 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1854 ; AVX512-64-NEXT: retq
1907 ; AVX512-32-LABEL: test_v4f64_uno_q:
1908 ; AVX512-32: # %bb.0:
1909 ; AVX512-32-NEXT: pushl %ebp
1910 ; AVX512-32-NEXT: movl %esp, %ebp
1911 ; AVX512-32-NEXT: andl $-32, %esp
1912 ; AVX512-32-NEXT: subl $32, %esp
1913 ; AVX512-32-NEXT: vcmpunordpd 8(%ebp), %ymm2, %k1
1914 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1915 ; AVX512-32-NEXT: movl %ebp, %esp
1916 ; AVX512-32-NEXT: popl %ebp
1917 ; AVX512-32-NEXT: retl
1919 ; AVX512-64-LABEL: test_v4f64_uno_q:
1920 ; AVX512-64: # %bb.0:
1921 ; AVX512-64-NEXT: vcmpunordpd %ymm3, %ymm2, %k1
1922 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
1923 ; AVX512-64-NEXT: retq
1976 ; AVX512-32-LABEL: test_v8f32_oeq_s:
1977 ; AVX512-32: # %bb.0:
1978 ; AVX512-32-NEXT: pushl %ebp
1979 ; AVX512-32-NEXT: movl %esp, %ebp
1980 ; AVX512-32-NEXT: andl $-32, %esp
1981 ; AVX512-32-NEXT: subl $32, %esp
1982 ; AVX512-32-NEXT: vcmpeq_osps 8(%ebp), %ymm2, %k1
1983 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
1984 ; AVX512-32-NEXT: movl %ebp, %esp
1985 ; AVX512-32-NEXT: popl %ebp
1986 ; AVX512-32-NEXT: retl
1988 ; AVX512-64-LABEL: test_v8f32_oeq_s:
1989 ; AVX512-64: # %bb.0:
1990 ; AVX512-64-NEXT: vcmpeq_osps %ymm3, %ymm2, %k1
1991 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
1992 ; AVX512-64-NEXT: retq
2046 ; AVX512-32-LABEL: test_v8f32_ogt_s:
2047 ; AVX512-32: # %bb.0:
2048 ; AVX512-32-NEXT: pushl %ebp
2049 ; AVX512-32-NEXT: movl %esp, %ebp
2050 ; AVX512-32-NEXT: andl $-32, %esp
2051 ; AVX512-32-NEXT: subl $32, %esp
2052 ; AVX512-32-NEXT: vcmpgtps 8(%ebp), %ymm2, %k1
2053 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2054 ; AVX512-32-NEXT: movl %ebp, %esp
2055 ; AVX512-32-NEXT: popl %ebp
2056 ; AVX512-32-NEXT: retl
2058 ; AVX512-64-LABEL: test_v8f32_ogt_s:
2059 ; AVX512-64: # %bb.0:
2060 ; AVX512-64-NEXT: vcmpltps %ymm2, %ymm3, %k1
2061 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2062 ; AVX512-64-NEXT: retq
2117 ; AVX512-32-LABEL: test_v8f32_oge_s:
2118 ; AVX512-32: # %bb.0:
2119 ; AVX512-32-NEXT: pushl %ebp
2120 ; AVX512-32-NEXT: movl %esp, %ebp
2121 ; AVX512-32-NEXT: andl $-32, %esp
2122 ; AVX512-32-NEXT: subl $32, %esp
2123 ; AVX512-32-NEXT: vcmpgeps 8(%ebp), %ymm2, %k1
2124 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2125 ; AVX512-32-NEXT: movl %ebp, %esp
2126 ; AVX512-32-NEXT: popl %ebp
2127 ; AVX512-32-NEXT: retl
2129 ; AVX512-64-LABEL: test_v8f32_oge_s:
2130 ; AVX512-64: # %bb.0:
2131 ; AVX512-64-NEXT: vcmpleps %ymm2, %ymm3, %k1
2132 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2133 ; AVX512-64-NEXT: retq
2187 ; AVX512-32-LABEL: test_v8f32_olt_s:
2188 ; AVX512-32: # %bb.0:
2189 ; AVX512-32-NEXT: pushl %ebp
2190 ; AVX512-32-NEXT: movl %esp, %ebp
2191 ; AVX512-32-NEXT: andl $-32, %esp
2192 ; AVX512-32-NEXT: subl $32, %esp
2193 ; AVX512-32-NEXT: vcmpltps 8(%ebp), %ymm2, %k1
2194 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2195 ; AVX512-32-NEXT: movl %ebp, %esp
2196 ; AVX512-32-NEXT: popl %ebp
2197 ; AVX512-32-NEXT: retl
2199 ; AVX512-64-LABEL: test_v8f32_olt_s:
2200 ; AVX512-64: # %bb.0:
2201 ; AVX512-64-NEXT: vcmpltps %ymm3, %ymm2, %k1
2202 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2203 ; AVX512-64-NEXT: retq
2256 ; AVX512-32-LABEL: test_v8f32_ole_s:
2257 ; AVX512-32: # %bb.0:
2258 ; AVX512-32-NEXT: pushl %ebp
2259 ; AVX512-32-NEXT: movl %esp, %ebp
2260 ; AVX512-32-NEXT: andl $-32, %esp
2261 ; AVX512-32-NEXT: subl $32, %esp
2262 ; AVX512-32-NEXT: vcmpleps 8(%ebp), %ymm2, %k1
2263 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2264 ; AVX512-32-NEXT: movl %ebp, %esp
2265 ; AVX512-32-NEXT: popl %ebp
2266 ; AVX512-32-NEXT: retl
2268 ; AVX512-64-LABEL: test_v8f32_ole_s:
2269 ; AVX512-64: # %bb.0:
2270 ; AVX512-64-NEXT: vcmpleps %ymm3, %ymm2, %k1
2271 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2272 ; AVX512-64-NEXT: retq
2325 ; AVX512-32-LABEL: test_v8f32_one_s:
2326 ; AVX512-32: # %bb.0:
2327 ; AVX512-32-NEXT: pushl %ebp
2328 ; AVX512-32-NEXT: movl %esp, %ebp
2329 ; AVX512-32-NEXT: andl $-32, %esp
2330 ; AVX512-32-NEXT: subl $32, %esp
2331 ; AVX512-32-NEXT: vcmpneq_osps 8(%ebp), %ymm2, %k1
2332 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2333 ; AVX512-32-NEXT: movl %ebp, %esp
2334 ; AVX512-32-NEXT: popl %ebp
2335 ; AVX512-32-NEXT: retl
2337 ; AVX512-64-LABEL: test_v8f32_one_s:
2338 ; AVX512-64: # %bb.0:
2339 ; AVX512-64-NEXT: vcmpneq_osps %ymm3, %ymm2, %k1
2340 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2341 ; AVX512-64-NEXT: retq
2394 ; AVX512-32-LABEL: test_v8f32_ord_s:
2395 ; AVX512-32: # %bb.0:
2396 ; AVX512-32-NEXT: pushl %ebp
2397 ; AVX512-32-NEXT: movl %esp, %ebp
2398 ; AVX512-32-NEXT: andl $-32, %esp
2399 ; AVX512-32-NEXT: subl $32, %esp
2400 ; AVX512-32-NEXT: vcmpord_sps 8(%ebp), %ymm2, %k1
2401 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2402 ; AVX512-32-NEXT: movl %ebp, %esp
2403 ; AVX512-32-NEXT: popl %ebp
2404 ; AVX512-32-NEXT: retl
2406 ; AVX512-64-LABEL: test_v8f32_ord_s:
2407 ; AVX512-64: # %bb.0:
2408 ; AVX512-64-NEXT: vcmpord_sps %ymm3, %ymm2, %k1
2409 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2410 ; AVX512-64-NEXT: retq
2463 ; AVX512-32-LABEL: test_v8f32_ueq_s:
2464 ; AVX512-32: # %bb.0:
2465 ; AVX512-32-NEXT: pushl %ebp
2466 ; AVX512-32-NEXT: movl %esp, %ebp
2467 ; AVX512-32-NEXT: andl $-32, %esp
2468 ; AVX512-32-NEXT: subl $32, %esp
2469 ; AVX512-32-NEXT: vcmpeq_usps 8(%ebp), %ymm2, %k1
2470 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2471 ; AVX512-32-NEXT: movl %ebp, %esp
2472 ; AVX512-32-NEXT: popl %ebp
2473 ; AVX512-32-NEXT: retl
2475 ; AVX512-64-LABEL: test_v8f32_ueq_s:
2476 ; AVX512-64: # %bb.0:
2477 ; AVX512-64-NEXT: vcmpeq_usps %ymm3, %ymm2, %k1
2478 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2479 ; AVX512-64-NEXT: retq
2532 ; AVX512-32-LABEL: test_v8f32_ugt_s:
2533 ; AVX512-32: # %bb.0:
2534 ; AVX512-32-NEXT: pushl %ebp
2535 ; AVX512-32-NEXT: movl %esp, %ebp
2536 ; AVX512-32-NEXT: andl $-32, %esp
2537 ; AVX512-32-NEXT: subl $32, %esp
2538 ; AVX512-32-NEXT: vcmpnleps 8(%ebp), %ymm2, %k1
2539 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2540 ; AVX512-32-NEXT: movl %ebp, %esp
2541 ; AVX512-32-NEXT: popl %ebp
2542 ; AVX512-32-NEXT: retl
2544 ; AVX512-64-LABEL: test_v8f32_ugt_s:
2545 ; AVX512-64: # %bb.0:
2546 ; AVX512-64-NEXT: vcmpnleps %ymm3, %ymm2, %k1
2547 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2548 ; AVX512-64-NEXT: retq
2601 ; AVX512-32-LABEL: test_v8f32_uge_s:
2602 ; AVX512-32: # %bb.0:
2603 ; AVX512-32-NEXT: pushl %ebp
2604 ; AVX512-32-NEXT: movl %esp, %ebp
2605 ; AVX512-32-NEXT: andl $-32, %esp
2606 ; AVX512-32-NEXT: subl $32, %esp
2607 ; AVX512-32-NEXT: vcmpnltps 8(%ebp), %ymm2, %k1
2608 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2609 ; AVX512-32-NEXT: movl %ebp, %esp
2610 ; AVX512-32-NEXT: popl %ebp
2611 ; AVX512-32-NEXT: retl
2613 ; AVX512-64-LABEL: test_v8f32_uge_s:
2614 ; AVX512-64: # %bb.0:
2615 ; AVX512-64-NEXT: vcmpnltps %ymm3, %ymm2, %k1
2616 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2617 ; AVX512-64-NEXT: retq
2671 ; AVX512-32-LABEL: test_v8f32_ult_s:
2672 ; AVX512-32: # %bb.0:
2673 ; AVX512-32-NEXT: pushl %ebp
2674 ; AVX512-32-NEXT: movl %esp, %ebp
2675 ; AVX512-32-NEXT: andl $-32, %esp
2676 ; AVX512-32-NEXT: subl $32, %esp
2677 ; AVX512-32-NEXT: vcmpngeps 8(%ebp), %ymm2, %k1
2678 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2679 ; AVX512-32-NEXT: movl %ebp, %esp
2680 ; AVX512-32-NEXT: popl %ebp
2681 ; AVX512-32-NEXT: retl
2683 ; AVX512-64-LABEL: test_v8f32_ult_s:
2684 ; AVX512-64: # %bb.0:
2685 ; AVX512-64-NEXT: vcmpnleps %ymm2, %ymm3, %k1
2686 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2687 ; AVX512-64-NEXT: retq
2742 ; AVX512-32-LABEL: test_v8f32_ule_s:
2743 ; AVX512-32: # %bb.0:
2744 ; AVX512-32-NEXT: pushl %ebp
2745 ; AVX512-32-NEXT: movl %esp, %ebp
2746 ; AVX512-32-NEXT: andl $-32, %esp
2747 ; AVX512-32-NEXT: subl $32, %esp
2748 ; AVX512-32-NEXT: vcmpngtps 8(%ebp), %ymm2, %k1
2749 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2750 ; AVX512-32-NEXT: movl %ebp, %esp
2751 ; AVX512-32-NEXT: popl %ebp
2752 ; AVX512-32-NEXT: retl
2754 ; AVX512-64-LABEL: test_v8f32_ule_s:
2755 ; AVX512-64: # %bb.0:
2756 ; AVX512-64-NEXT: vcmpnltps %ymm2, %ymm3, %k1
2757 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2758 ; AVX512-64-NEXT: retq
2812 ; AVX512-32-LABEL: test_v8f32_une_s:
2813 ; AVX512-32: # %bb.0:
2814 ; AVX512-32-NEXT: pushl %ebp
2815 ; AVX512-32-NEXT: movl %esp, %ebp
2816 ; AVX512-32-NEXT: andl $-32, %esp
2817 ; AVX512-32-NEXT: subl $32, %esp
2818 ; AVX512-32-NEXT: vcmpneq_usps 8(%ebp), %ymm2, %k1
2819 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2820 ; AVX512-32-NEXT: movl %ebp, %esp
2821 ; AVX512-32-NEXT: popl %ebp
2822 ; AVX512-32-NEXT: retl
2824 ; AVX512-64-LABEL: test_v8f32_une_s:
2825 ; AVX512-64: # %bb.0:
2826 ; AVX512-64-NEXT: vcmpneq_usps %ymm3, %ymm2, %k1
2827 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2828 ; AVX512-64-NEXT: retq
2881 ; AVX512-32-LABEL: test_v8f32_uno_s:
2882 ; AVX512-32: # %bb.0:
2883 ; AVX512-32-NEXT: pushl %ebp
2884 ; AVX512-32-NEXT: movl %esp, %ebp
2885 ; AVX512-32-NEXT: andl $-32, %esp
2886 ; AVX512-32-NEXT: subl $32, %esp
2887 ; AVX512-32-NEXT: vcmpunord_sps 8(%ebp), %ymm2, %k1
2888 ; AVX512-32-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2889 ; AVX512-32-NEXT: movl %ebp, %esp
2890 ; AVX512-32-NEXT: popl %ebp
2891 ; AVX512-32-NEXT: retl
2893 ; AVX512-64-LABEL: test_v8f32_uno_s:
2894 ; AVX512-64: # %bb.0:
2895 ; AVX512-64-NEXT: vcmpunord_sps %ymm3, %ymm2, %k1
2896 ; AVX512-64-NEXT: vpblendmd %ymm0, %ymm1, %ymm0 {%k1}
2897 ; AVX512-64-NEXT: retq
2950 ; AVX512-32-LABEL: test_v4f64_oeq_s:
2951 ; AVX512-32: # %bb.0:
2952 ; AVX512-32-NEXT: pushl %ebp
2953 ; AVX512-32-NEXT: movl %esp, %ebp
2954 ; AVX512-32-NEXT: andl $-32, %esp
2955 ; AVX512-32-NEXT: subl $32, %esp
2956 ; AVX512-32-NEXT: vcmpeq_ospd 8(%ebp), %ymm2, %k1
2957 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
2958 ; AVX512-32-NEXT: movl %ebp, %esp
2959 ; AVX512-32-NEXT: popl %ebp
2960 ; AVX512-32-NEXT: retl
2962 ; AVX512-64-LABEL: test_v4f64_oeq_s:
2963 ; AVX512-64: # %bb.0:
2964 ; AVX512-64-NEXT: vcmpeq_ospd %ymm3, %ymm2, %k1
2965 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
2966 ; AVX512-64-NEXT: retq
3020 ; AVX512-32-LABEL: test_v4f64_ogt_s:
3021 ; AVX512-32: # %bb.0:
3022 ; AVX512-32-NEXT: pushl %ebp
3023 ; AVX512-32-NEXT: movl %esp, %ebp
3024 ; AVX512-32-NEXT: andl $-32, %esp
3025 ; AVX512-32-NEXT: subl $32, %esp
3026 ; AVX512-32-NEXT: vcmpgtpd 8(%ebp), %ymm2, %k1
3027 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3028 ; AVX512-32-NEXT: movl %ebp, %esp
3029 ; AVX512-32-NEXT: popl %ebp
3030 ; AVX512-32-NEXT: retl
3032 ; AVX512-64-LABEL: test_v4f64_ogt_s:
3033 ; AVX512-64: # %bb.0:
3034 ; AVX512-64-NEXT: vcmpltpd %ymm2, %ymm3, %k1
3035 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3036 ; AVX512-64-NEXT: retq
3091 ; AVX512-32-LABEL: test_v4f64_oge_s:
3092 ; AVX512-32: # %bb.0:
3093 ; AVX512-32-NEXT: pushl %ebp
3094 ; AVX512-32-NEXT: movl %esp, %ebp
3095 ; AVX512-32-NEXT: andl $-32, %esp
3096 ; AVX512-32-NEXT: subl $32, %esp
3097 ; AVX512-32-NEXT: vcmpgepd 8(%ebp), %ymm2, %k1
3098 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3099 ; AVX512-32-NEXT: movl %ebp, %esp
3100 ; AVX512-32-NEXT: popl %ebp
3101 ; AVX512-32-NEXT: retl
3103 ; AVX512-64-LABEL: test_v4f64_oge_s:
3104 ; AVX512-64: # %bb.0:
3105 ; AVX512-64-NEXT: vcmplepd %ymm2, %ymm3, %k1
3106 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3107 ; AVX512-64-NEXT: retq
3161 ; AVX512-32-LABEL: test_v4f64_olt_s:
3162 ; AVX512-32: # %bb.0:
3163 ; AVX512-32-NEXT: pushl %ebp
3164 ; AVX512-32-NEXT: movl %esp, %ebp
3165 ; AVX512-32-NEXT: andl $-32, %esp
3166 ; AVX512-32-NEXT: subl $32, %esp
3167 ; AVX512-32-NEXT: vcmpltpd 8(%ebp), %ymm2, %k1
3168 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3169 ; AVX512-32-NEXT: movl %ebp, %esp
3170 ; AVX512-32-NEXT: popl %ebp
3171 ; AVX512-32-NEXT: retl
3173 ; AVX512-64-LABEL: test_v4f64_olt_s:
3174 ; AVX512-64: # %bb.0:
3175 ; AVX512-64-NEXT: vcmpltpd %ymm3, %ymm2, %k1
3176 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3177 ; AVX512-64-NEXT: retq
3230 ; AVX512-32-LABEL: test_v4f64_ole_s:
3231 ; AVX512-32: # %bb.0:
3232 ; AVX512-32-NEXT: pushl %ebp
3233 ; AVX512-32-NEXT: movl %esp, %ebp
3234 ; AVX512-32-NEXT: andl $-32, %esp
3235 ; AVX512-32-NEXT: subl $32, %esp
3236 ; AVX512-32-NEXT: vcmplepd 8(%ebp), %ymm2, %k1
3237 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3238 ; AVX512-32-NEXT: movl %ebp, %esp
3239 ; AVX512-32-NEXT: popl %ebp
3240 ; AVX512-32-NEXT: retl
3242 ; AVX512-64-LABEL: test_v4f64_ole_s:
3243 ; AVX512-64: # %bb.0:
3244 ; AVX512-64-NEXT: vcmplepd %ymm3, %ymm2, %k1
3245 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3246 ; AVX512-64-NEXT: retq
3299 ; AVX512-32-LABEL: test_v4f64_one_s:
3300 ; AVX512-32: # %bb.0:
3301 ; AVX512-32-NEXT: pushl %ebp
3302 ; AVX512-32-NEXT: movl %esp, %ebp
3303 ; AVX512-32-NEXT: andl $-32, %esp
3304 ; AVX512-32-NEXT: subl $32, %esp
3305 ; AVX512-32-NEXT: vcmpneq_ospd 8(%ebp), %ymm2, %k1
3306 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3307 ; AVX512-32-NEXT: movl %ebp, %esp
3308 ; AVX512-32-NEXT: popl %ebp
3309 ; AVX512-32-NEXT: retl
3311 ; AVX512-64-LABEL: test_v4f64_one_s:
3312 ; AVX512-64: # %bb.0:
3313 ; AVX512-64-NEXT: vcmpneq_ospd %ymm3, %ymm2, %k1
3314 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3315 ; AVX512-64-NEXT: retq
3368 ; AVX512-32-LABEL: test_v4f64_ord_s:
3369 ; AVX512-32: # %bb.0:
3370 ; AVX512-32-NEXT: pushl %ebp
3371 ; AVX512-32-NEXT: movl %esp, %ebp
3372 ; AVX512-32-NEXT: andl $-32, %esp
3373 ; AVX512-32-NEXT: subl $32, %esp
3374 ; AVX512-32-NEXT: vcmpord_spd 8(%ebp), %ymm2, %k1
3375 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3376 ; AVX512-32-NEXT: movl %ebp, %esp
3377 ; AVX512-32-NEXT: popl %ebp
3378 ; AVX512-32-NEXT: retl
3380 ; AVX512-64-LABEL: test_v4f64_ord_s:
3381 ; AVX512-64: # %bb.0:
3382 ; AVX512-64-NEXT: vcmpord_spd %ymm3, %ymm2, %k1
3383 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3384 ; AVX512-64-NEXT: retq
3437 ; AVX512-32-LABEL: test_v4f64_ueq_s:
3438 ; AVX512-32: # %bb.0:
3439 ; AVX512-32-NEXT: pushl %ebp
3440 ; AVX512-32-NEXT: movl %esp, %ebp
3441 ; AVX512-32-NEXT: andl $-32, %esp
3442 ; AVX512-32-NEXT: subl $32, %esp
3443 ; AVX512-32-NEXT: vcmpeq_uspd 8(%ebp), %ymm2, %k1
3444 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3445 ; AVX512-32-NEXT: movl %ebp, %esp
3446 ; AVX512-32-NEXT: popl %ebp
3447 ; AVX512-32-NEXT: retl
3449 ; AVX512-64-LABEL: test_v4f64_ueq_s:
3450 ; AVX512-64: # %bb.0:
3451 ; AVX512-64-NEXT: vcmpeq_uspd %ymm3, %ymm2, %k1
3452 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3453 ; AVX512-64-NEXT: retq
3506 ; AVX512-32-LABEL: test_v4f64_ugt_s:
3507 ; AVX512-32: # %bb.0:
3508 ; AVX512-32-NEXT: pushl %ebp
3509 ; AVX512-32-NEXT: movl %esp, %ebp
3510 ; AVX512-32-NEXT: andl $-32, %esp
3511 ; AVX512-32-NEXT: subl $32, %esp
3512 ; AVX512-32-NEXT: vcmpnlepd 8(%ebp), %ymm2, %k1
3513 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3514 ; AVX512-32-NEXT: movl %ebp, %esp
3515 ; AVX512-32-NEXT: popl %ebp
3516 ; AVX512-32-NEXT: retl
3518 ; AVX512-64-LABEL: test_v4f64_ugt_s:
3519 ; AVX512-64: # %bb.0:
3520 ; AVX512-64-NEXT: vcmpnlepd %ymm3, %ymm2, %k1
3521 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3522 ; AVX512-64-NEXT: retq
3575 ; AVX512-32-LABEL: test_v4f64_uge_s:
3576 ; AVX512-32: # %bb.0:
3577 ; AVX512-32-NEXT: pushl %ebp
3578 ; AVX512-32-NEXT: movl %esp, %ebp
3579 ; AVX512-32-NEXT: andl $-32, %esp
3580 ; AVX512-32-NEXT: subl $32, %esp
3581 ; AVX512-32-NEXT: vcmpnltpd 8(%ebp), %ymm2, %k1
3582 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3583 ; AVX512-32-NEXT: movl %ebp, %esp
3584 ; AVX512-32-NEXT: popl %ebp
3585 ; AVX512-32-NEXT: retl
3587 ; AVX512-64-LABEL: test_v4f64_uge_s:
3588 ; AVX512-64: # %bb.0:
3589 ; AVX512-64-NEXT: vcmpnltpd %ymm3, %ymm2, %k1
3590 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3591 ; AVX512-64-NEXT: retq
3645 ; AVX512-32-LABEL: test_v4f64_ult_s:
3646 ; AVX512-32: # %bb.0:
3647 ; AVX512-32-NEXT: pushl %ebp
3648 ; AVX512-32-NEXT: movl %esp, %ebp
3649 ; AVX512-32-NEXT: andl $-32, %esp
3650 ; AVX512-32-NEXT: subl $32, %esp
3651 ; AVX512-32-NEXT: vcmpngepd 8(%ebp), %ymm2, %k1
3652 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3653 ; AVX512-32-NEXT: movl %ebp, %esp
3654 ; AVX512-32-NEXT: popl %ebp
3655 ; AVX512-32-NEXT: retl
3657 ; AVX512-64-LABEL: test_v4f64_ult_s:
3658 ; AVX512-64: # %bb.0:
3659 ; AVX512-64-NEXT: vcmpnlepd %ymm2, %ymm3, %k1
3660 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3661 ; AVX512-64-NEXT: retq
3716 ; AVX512-32-LABEL: test_v4f64_ule_s:
3717 ; AVX512-32: # %bb.0:
3718 ; AVX512-32-NEXT: pushl %ebp
3719 ; AVX512-32-NEXT: movl %esp, %ebp
3720 ; AVX512-32-NEXT: andl $-32, %esp
3721 ; AVX512-32-NEXT: subl $32, %esp
3722 ; AVX512-32-NEXT: vcmpngtpd 8(%ebp), %ymm2, %k1
3723 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3724 ; AVX512-32-NEXT: movl %ebp, %esp
3725 ; AVX512-32-NEXT: popl %ebp
3726 ; AVX512-32-NEXT: retl
3728 ; AVX512-64-LABEL: test_v4f64_ule_s:
3729 ; AVX512-64: # %bb.0:
3730 ; AVX512-64-NEXT: vcmpnltpd %ymm2, %ymm3, %k1
3731 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3732 ; AVX512-64-NEXT: retq
3786 ; AVX512-32-LABEL: test_v4f64_une_s:
3787 ; AVX512-32: # %bb.0:
3788 ; AVX512-32-NEXT: pushl %ebp
3789 ; AVX512-32-NEXT: movl %esp, %ebp
3790 ; AVX512-32-NEXT: andl $-32, %esp
3791 ; AVX512-32-NEXT: subl $32, %esp
3792 ; AVX512-32-NEXT: vcmpneq_uspd 8(%ebp), %ymm2, %k1
3793 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3794 ; AVX512-32-NEXT: movl %ebp, %esp
3795 ; AVX512-32-NEXT: popl %ebp
3796 ; AVX512-32-NEXT: retl
3798 ; AVX512-64-LABEL: test_v4f64_une_s:
3799 ; AVX512-64: # %bb.0:
3800 ; AVX512-64-NEXT: vcmpneq_uspd %ymm3, %ymm2, %k1
3801 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3802 ; AVX512-64-NEXT: retq
3855 ; AVX512-32-LABEL: test_v4f64_uno_s:
3856 ; AVX512-32: # %bb.0:
3857 ; AVX512-32-NEXT: pushl %ebp
3858 ; AVX512-32-NEXT: movl %esp, %ebp
3859 ; AVX512-32-NEXT: andl $-32, %esp
3860 ; AVX512-32-NEXT: subl $32, %esp
3861 ; AVX512-32-NEXT: vcmpunord_spd 8(%ebp), %ymm2, %k1
3862 ; AVX512-32-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3863 ; AVX512-32-NEXT: movl %ebp, %esp
3864 ; AVX512-32-NEXT: popl %ebp
3865 ; AVX512-32-NEXT: retl
3867 ; AVX512-64-LABEL: test_v4f64_uno_s:
3868 ; AVX512-64: # %bb.0:
3869 ; AVX512-64-NEXT: vcmpunord_spd %ymm3, %ymm2, %k1
3870 ; AVX512-64-NEXT: vpblendmq %ymm0, %ymm1, %ymm0 {%k1}
3871 ; AVX512-64-NEXT: retq