• Home
  • Raw
  • Download

Lines Matching refs:AVX512VL

3 …c < %s -mtriple=i686-apple-darwin -mattr=avx512vl,aes,pclmul | FileCheck %s --check-prefix=AVX512VL
11 ; AVX512VL-LABEL: test_x86_aesni_aesdec:
12 ; AVX512VL: ## BB#0:
13 ; AVX512VL-NEXT: vaesdec %xmm1, %xmm0, %xmm0
14 ; AVX512VL-NEXT: retl
27 ; AVX512VL-LABEL: test_x86_aesni_aesdeclast:
28 ; AVX512VL: ## BB#0:
29 ; AVX512VL-NEXT: vaesdeclast %xmm1, %xmm0, %xmm0
30 ; AVX512VL-NEXT: retl
43 ; AVX512VL-LABEL: test_x86_aesni_aesenc:
44 ; AVX512VL: ## BB#0:
45 ; AVX512VL-NEXT: vaesenc %xmm1, %xmm0, %xmm0
46 ; AVX512VL-NEXT: retl
59 ; AVX512VL-LABEL: test_x86_aesni_aesenclast:
60 ; AVX512VL: ## BB#0:
61 ; AVX512VL-NEXT: vaesenclast %xmm1, %xmm0, %xmm0
62 ; AVX512VL-NEXT: retl
75 ; AVX512VL-LABEL: test_x86_aesni_aesimc:
76 ; AVX512VL: ## BB#0:
77 ; AVX512VL-NEXT: vaesimc %xmm0, %xmm0
78 ; AVX512VL-NEXT: retl
91 ; AVX512VL-LABEL: test_x86_aesni_aeskeygenassist:
92 ; AVX512VL: ## BB#0:
93 ; AVX512VL-NEXT: vaeskeygenassist $7, %xmm0, %xmm0
94 ; AVX512VL-NEXT: retl
107 ; AVX512VL-LABEL: test_x86_sse2_add_sd:
108 ; AVX512VL: ## BB#0:
109 ; AVX512VL-NEXT: vaddsd %xmm1, %xmm0, %xmm0
110 ; AVX512VL-NEXT: retl
123 ; AVX512VL-LABEL: test_x86_sse2_cmp_pd:
124 ; AVX512VL: ## BB#0:
125 ; AVX512VL-NEXT: vcmpordpd %xmm1, %xmm0, %xmm0
126 ; AVX512VL-NEXT: retl
139 ; AVX512VL-LABEL: test_x86_sse2_cmp_sd:
140 ; AVX512VL: ## BB#0:
141 ; AVX512VL-NEXT: vcmpordsd %xmm1, %xmm0, %xmm0
142 ; AVX512VL-NEXT: retl
159 ; AVX512VL-LABEL: test_x86_sse2_comieq_sd:
160 ; AVX512VL: ## BB#0:
161 ; AVX512VL-NEXT: vcomisd %xmm1, %xmm0
162 ; AVX512VL-NEXT: setnp %al
163 ; AVX512VL-NEXT: sete %cl
164 ; AVX512VL-NEXT: andb %al, %cl
165 ; AVX512VL-NEXT: movzbl %cl, %eax
166 ; AVX512VL-NEXT: retl
181 ; AVX512VL-LABEL: test_x86_sse2_comige_sd:
182 ; AVX512VL: ## BB#0:
183 ; AVX512VL-NEXT: xorl %eax, %eax
184 ; AVX512VL-NEXT: vcomisd %xmm1, %xmm0
185 ; AVX512VL-NEXT: setae %al
186 ; AVX512VL-NEXT: retl
201 ; AVX512VL-LABEL: test_x86_sse2_comigt_sd:
202 ; AVX512VL: ## BB#0:
203 ; AVX512VL-NEXT: xorl %eax, %eax
204 ; AVX512VL-NEXT: vcomisd %xmm1, %xmm0
205 ; AVX512VL-NEXT: seta %al
206 ; AVX512VL-NEXT: retl
221 ; AVX512VL-LABEL: test_x86_sse2_comile_sd:
222 ; AVX512VL: ## BB#0:
223 ; AVX512VL-NEXT: xorl %eax, %eax
224 ; AVX512VL-NEXT: vcomisd %xmm0, %xmm1
225 ; AVX512VL-NEXT: setae %al
226 ; AVX512VL-NEXT: retl
241 ; AVX512VL-LABEL: test_x86_sse2_comilt_sd:
242 ; AVX512VL: ## BB#0:
243 ; AVX512VL-NEXT: xorl %eax, %eax
244 ; AVX512VL-NEXT: vcomisd %xmm0, %xmm1
245 ; AVX512VL-NEXT: seta %al
246 ; AVX512VL-NEXT: retl
263 ; AVX512VL-LABEL: test_x86_sse2_comineq_sd:
264 ; AVX512VL: ## BB#0:
265 ; AVX512VL-NEXT: vcomisd %xmm1, %xmm0
266 ; AVX512VL-NEXT: setp %al
267 ; AVX512VL-NEXT: setne %cl
268 ; AVX512VL-NEXT: orb %al, %cl
269 ; AVX512VL-NEXT: movzbl %cl, %eax
270 ; AVX512VL-NEXT: retl
283 ; AVX512VL-LABEL: test_x86_sse2_cvtdq2ps:
284 ; AVX512VL: ## BB#0:
285 ; AVX512VL-NEXT: vcvtdq2ps %xmm0, %xmm0
286 ; AVX512VL-NEXT: retl
299 ; AVX512VL-LABEL: test_x86_sse2_cvtpd2dq:
300 ; AVX512VL: ## BB#0:
301 ; AVX512VL-NEXT: vcvtpd2dq %xmm0, %xmm0
302 ; AVX512VL-NEXT: retl
315 ; AVX512VL-LABEL: test_x86_sse2_cvtpd2ps:
316 ; AVX512VL: ## BB#0:
317 ; AVX512VL-NEXT: vcvtpd2ps %xmm0, %xmm0
318 ; AVX512VL-NEXT: retl
331 ; AVX512VL-LABEL: test_x86_sse2_cvtps2dq:
332 ; AVX512VL: ## BB#0:
333 ; AVX512VL-NEXT: vcvtps2dq %xmm0, %xmm0
334 ; AVX512VL-NEXT: retl
347 ; AVX512VL-LABEL: test_x86_sse2_cvtsd2si:
348 ; AVX512VL: ## BB#0:
349 ; AVX512VL-NEXT: vcvtsd2si %xmm0, %eax
350 ; AVX512VL-NEXT: retl
363 ; AVX512VL-LABEL: test_x86_sse2_cvtsd2ss:
364 ; AVX512VL: ## BB#0:
365 ; AVX512VL-NEXT: vcvtsd2ss %xmm1, %xmm0, %xmm0
366 ; AVX512VL-NEXT: retl
379 ; AVX512VL-LABEL: test_x86_sse2_cvtsi2sd:
380 ; AVX512VL: ## BB#0:
381 ; AVX512VL-NEXT: vcvtsi2sdl {{[0-9]+}}(%esp), %xmm0, %xmm0
382 ; AVX512VL-NEXT: retl
395 ; AVX512VL-LABEL: test_x86_sse2_cvtss2sd:
396 ; AVX512VL: ## BB#0:
397 ; AVX512VL-NEXT: vcvtss2sd %xmm1, %xmm0, %xmm0
398 ; AVX512VL-NEXT: retl
411 ; AVX512VL-LABEL: test_x86_sse2_cvttpd2dq:
412 ; AVX512VL: ## BB#0:
413 ; AVX512VL-NEXT: vcvttpd2dq %xmm0, %xmm0
414 ; AVX512VL-NEXT: retl
427 ; AVX512VL-LABEL: test_x86_sse2_cvttps2dq:
428 ; AVX512VL: ## BB#0:
429 ; AVX512VL-NEXT: vcvttps2dq %xmm0, %xmm0
430 ; AVX512VL-NEXT: retl
443 ; AVX512VL-LABEL: test_x86_sse2_cvttsd2si:
444 ; AVX512VL: ## BB#0:
445 ; AVX512VL-NEXT: vcvttsd2si %xmm0, %eax
446 ; AVX512VL-NEXT: retl
459 ; AVX512VL-LABEL: test_x86_sse2_div_sd:
460 ; AVX512VL: ## BB#0:
461 ; AVX512VL-NEXT: vdivsd %xmm1, %xmm0, %xmm0
462 ; AVX512VL-NEXT: retl
476 ; AVX512VL-LABEL: test_x86_sse2_max_pd:
477 ; AVX512VL: ## BB#0:
478 ; AVX512VL-NEXT: vmaxpd %xmm1, %xmm0, %xmm0
479 ; AVX512VL-NEXT: retl
492 ; AVX512VL-LABEL: test_x86_sse2_max_sd:
493 ; AVX512VL: ## BB#0:
494 ; AVX512VL-NEXT: vmaxsd %xmm1, %xmm0, %xmm0
495 ; AVX512VL-NEXT: retl
508 ; AVX512VL-LABEL: test_x86_sse2_min_pd:
509 ; AVX512VL: ## BB#0:
510 ; AVX512VL-NEXT: vminpd %xmm1, %xmm0, %xmm0
511 ; AVX512VL-NEXT: retl
524 ; AVX512VL-LABEL: test_x86_sse2_min_sd:
525 ; AVX512VL: ## BB#0:
526 ; AVX512VL-NEXT: vminsd %xmm1, %xmm0, %xmm0
527 ; AVX512VL-NEXT: retl
540 ; AVX512VL-LABEL: test_x86_sse2_movmsk_pd:
541 ; AVX512VL: ## BB#0:
542 ; AVX512VL-NEXT: vmovmskpd %xmm0, %eax
543 ; AVX512VL-NEXT: retl
558 ; AVX512VL-LABEL: test_x86_sse2_mul_sd:
559 ; AVX512VL: ## BB#0:
560 ; AVX512VL-NEXT: vmulsd %xmm1, %xmm0, %xmm0
561 ; AVX512VL-NEXT: retl
574 ; AVX512VL-LABEL: test_x86_sse2_packssdw_128:
575 ; AVX512VL: ## BB#0:
576 ; AVX512VL-NEXT: vpackssdw %xmm1, %xmm0, %xmm0
577 ; AVX512VL-NEXT: retl
590 ; AVX512VL-LABEL: test_x86_sse2_packsswb_128:
591 ; AVX512VL: ## BB#0:
592 ; AVX512VL-NEXT: vpacksswb %xmm1, %xmm0, %xmm0
593 ; AVX512VL-NEXT: retl
606 ; AVX512VL-LABEL: test_x86_sse2_packuswb_128:
607 ; AVX512VL: ## BB#0:
608 ; AVX512VL-NEXT: vpackuswb %xmm1, %xmm0, %xmm0
609 ; AVX512VL-NEXT: retl
622 ; AVX512VL-LABEL: test_x86_sse2_padds_b:
623 ; AVX512VL: ## BB#0:
624 ; AVX512VL-NEXT: vpaddsb %xmm1, %xmm0, %xmm0
625 ; AVX512VL-NEXT: retl
638 ; AVX512VL-LABEL: test_x86_sse2_padds_w:
639 ; AVX512VL: ## BB#0:
640 ; AVX512VL-NEXT: vpaddsw %xmm1, %xmm0, %xmm0
641 ; AVX512VL-NEXT: retl
654 ; AVX512VL-LABEL: test_x86_sse2_paddus_b:
655 ; AVX512VL: ## BB#0:
656 ; AVX512VL-NEXT: vpaddusb %xmm1, %xmm0, %xmm0
657 ; AVX512VL-NEXT: retl
670 ; AVX512VL-LABEL: test_x86_sse2_paddus_w:
671 ; AVX512VL: ## BB#0:
672 ; AVX512VL-NEXT: vpaddusw %xmm1, %xmm0, %xmm0
673 ; AVX512VL-NEXT: retl
686 ; AVX512VL-LABEL: test_x86_sse2_pavg_b:
687 ; AVX512VL: ## BB#0:
688 ; AVX512VL-NEXT: vpavgb %xmm1, %xmm0, %xmm0
689 ; AVX512VL-NEXT: retl
702 ; AVX512VL-LABEL: test_x86_sse2_pavg_w:
703 ; AVX512VL: ## BB#0:
704 ; AVX512VL-NEXT: vpavgw %xmm1, %xmm0, %xmm0
705 ; AVX512VL-NEXT: retl
718 ; AVX512VL-LABEL: test_x86_sse2_pmadd_wd:
719 ; AVX512VL: ## BB#0:
720 ; AVX512VL-NEXT: vpmaddwd %xmm1, %xmm0, %xmm0
721 ; AVX512VL-NEXT: retl
734 ; AVX512VL-LABEL: test_x86_sse2_pmaxs_w:
735 ; AVX512VL: ## BB#0:
736 ; AVX512VL-NEXT: vpmaxsw %xmm1, %xmm0, %xmm0
737 ; AVX512VL-NEXT: retl
750 ; AVX512VL-LABEL: test_x86_sse2_pmaxu_b:
751 ; AVX512VL: ## BB#0:
752 ; AVX512VL-NEXT: vpmaxub %xmm1, %xmm0, %xmm0
753 ; AVX512VL-NEXT: retl
766 ; AVX512VL-LABEL: test_x86_sse2_pmins_w:
767 ; AVX512VL: ## BB#0:
768 ; AVX512VL-NEXT: vpminsw %xmm1, %xmm0, %xmm0
769 ; AVX512VL-NEXT: retl
782 ; AVX512VL-LABEL: test_x86_sse2_pminu_b:
783 ; AVX512VL: ## BB#0:
784 ; AVX512VL-NEXT: vpminub %xmm1, %xmm0, %xmm0
785 ; AVX512VL-NEXT: retl
798 ; AVX512VL-LABEL: test_x86_sse2_pmovmskb_128:
799 ; AVX512VL: ## BB#0:
800 ; AVX512VL-NEXT: vpmovmskb %xmm0, %eax
801 ; AVX512VL-NEXT: retl
814 ; AVX512VL-LABEL: test_x86_sse2_pmulh_w:
815 ; AVX512VL: ## BB#0:
816 ; AVX512VL-NEXT: vpmulhw %xmm1, %xmm0, %xmm0
817 ; AVX512VL-NEXT: retl
830 ; AVX512VL-LABEL: test_x86_sse2_pmulhu_w:
831 ; AVX512VL: ## BB#0:
832 ; AVX512VL-NEXT: vpmulhuw %xmm1, %xmm0, %xmm0
833 ; AVX512VL-NEXT: retl
846 ; AVX512VL-LABEL: test_x86_sse2_pmulu_dq:
847 ; AVX512VL: ## BB#0:
848 ; AVX512VL-NEXT: vpmuludq %xmm1, %xmm0, %xmm0
849 ; AVX512VL-NEXT: retl
862 ; AVX512VL-LABEL: test_x86_sse2_psad_bw:
863 ; AVX512VL: ## BB#0:
864 ; AVX512VL-NEXT: vpsadbw %xmm1, %xmm0, %xmm0
865 ; AVX512VL-NEXT: retl
878 ; AVX512VL-LABEL: test_x86_sse2_psll_d:
879 ; AVX512VL: ## BB#0:
880 ; AVX512VL-NEXT: vpslld %xmm1, %xmm0, %xmm0
881 ; AVX512VL-NEXT: retl
894 ; AVX512VL-LABEL: test_x86_sse2_psll_q:
895 ; AVX512VL: ## BB#0:
896 ; AVX512VL-NEXT: vpsllq %xmm1, %xmm0, %xmm0
897 ; AVX512VL-NEXT: retl
910 ; AVX512VL-LABEL: test_x86_sse2_psll_w:
911 ; AVX512VL: ## BB#0:
912 ; AVX512VL-NEXT: vpsllw %xmm1, %xmm0, %xmm0
913 ; AVX512VL-NEXT: retl
926 ; AVX512VL-LABEL: test_x86_sse2_pslli_d:
927 ; AVX512VL: ## BB#0:
928 ; AVX512VL-NEXT: vpslld $7, %xmm0, %xmm0
929 ; AVX512VL-NEXT: retl
942 ; AVX512VL-LABEL: test_x86_sse2_pslli_q:
943 ; AVX512VL: ## BB#0:
944 ; AVX512VL-NEXT: vpsllq $7, %xmm0, %xmm0
945 ; AVX512VL-NEXT: retl
958 ; AVX512VL-LABEL: test_x86_sse2_pslli_w:
959 ; AVX512VL: ## BB#0:
960 ; AVX512VL-NEXT: vpsllw $7, %xmm0, %xmm0
961 ; AVX512VL-NEXT: retl
974 ; AVX512VL-LABEL: test_x86_sse2_psra_d:
975 ; AVX512VL: ## BB#0:
976 ; AVX512VL-NEXT: vpsrad %xmm1, %xmm0, %xmm0
977 ; AVX512VL-NEXT: retl
990 ; AVX512VL-LABEL: test_x86_sse2_psra_w:
991 ; AVX512VL: ## BB#0:
992 ; AVX512VL-NEXT: vpsraw %xmm1, %xmm0, %xmm0
993 ; AVX512VL-NEXT: retl
1006 ; AVX512VL-LABEL: test_x86_sse2_psrai_d:
1007 ; AVX512VL: ## BB#0:
1008 ; AVX512VL-NEXT: vpsrad $7, %xmm0, %xmm0
1009 ; AVX512VL-NEXT: retl
1022 ; AVX512VL-LABEL: test_x86_sse2_psrai_w:
1023 ; AVX512VL: ## BB#0:
1024 ; AVX512VL-NEXT: vpsraw $7, %xmm0, %xmm0
1025 ; AVX512VL-NEXT: retl
1038 ; AVX512VL-LABEL: test_x86_sse2_psrl_d:
1039 ; AVX512VL: ## BB#0:
1040 ; AVX512VL-NEXT: vpsrld %xmm1, %xmm0, %xmm0
1041 ; AVX512VL-NEXT: retl
1054 ; AVX512VL-LABEL: test_x86_sse2_psrl_q:
1055 ; AVX512VL: ## BB#0:
1056 ; AVX512VL-NEXT: vpsrlq %xmm1, %xmm0, %xmm0
1057 ; AVX512VL-NEXT: retl
1070 ; AVX512VL-LABEL: test_x86_sse2_psrl_w:
1071 ; AVX512VL: ## BB#0:
1072 ; AVX512VL-NEXT: vpsrlw %xmm1, %xmm0, %xmm0
1073 ; AVX512VL-NEXT: retl
1086 ; AVX512VL-LABEL: test_x86_sse2_psrli_d:
1087 ; AVX512VL: ## BB#0:
1088 ; AVX512VL-NEXT: vpsrld $7, %xmm0, %xmm0
1089 ; AVX512VL-NEXT: retl
1102 ; AVX512VL-LABEL: test_x86_sse2_psrli_q:
1103 ; AVX512VL: ## BB#0:
1104 ; AVX512VL-NEXT: vpsrlq $7, %xmm0, %xmm0
1105 ; AVX512VL-NEXT: retl
1118 ; AVX512VL-LABEL: test_x86_sse2_psrli_w:
1119 ; AVX512VL: ## BB#0:
1120 ; AVX512VL-NEXT: vpsrlw $7, %xmm0, %xmm0
1121 ; AVX512VL-NEXT: retl
1134 ; AVX512VL-LABEL: test_x86_sse2_psubs_b:
1135 ; AVX512VL: ## BB#0:
1136 ; AVX512VL-NEXT: vpsubsb %xmm1, %xmm0, %xmm0
1137 ; AVX512VL-NEXT: retl
1150 ; AVX512VL-LABEL: test_x86_sse2_psubs_w:
1151 ; AVX512VL: ## BB#0:
1152 ; AVX512VL-NEXT: vpsubsw %xmm1, %xmm0, %xmm0
1153 ; AVX512VL-NEXT: retl
1166 ; AVX512VL-LABEL: test_x86_sse2_psubus_b:
1167 ; AVX512VL: ## BB#0:
1168 ; AVX512VL-NEXT: vpsubusb %xmm1, %xmm0, %xmm0
1169 ; AVX512VL-NEXT: retl
1182 ; AVX512VL-LABEL: test_x86_sse2_psubus_w:
1183 ; AVX512VL: ## BB#0:
1184 ; AVX512VL-NEXT: vpsubusw %xmm1, %xmm0, %xmm0
1185 ; AVX512VL-NEXT: retl
1198 ; AVX512VL-LABEL: test_x86_sse2_sqrt_pd:
1199 ; AVX512VL: ## BB#0:
1200 ; AVX512VL-NEXT: vsqrtpd %xmm0, %xmm0
1201 ; AVX512VL-NEXT: retl
1214 ; AVX512VL-LABEL: test_x86_sse2_sqrt_sd:
1215 ; AVX512VL: ## BB#0:
1216 ; AVX512VL-NEXT: vsqrtsd %xmm0, %xmm0, %xmm0
1217 ; AVX512VL-NEXT: retl
1230 ; AVX512VL-LABEL: test_x86_sse2_sub_sd:
1231 ; AVX512VL: ## BB#0:
1232 ; AVX512VL-NEXT: vsubsd %xmm1, %xmm0, %xmm0
1233 ; AVX512VL-NEXT: retl
1250 ; AVX512VL-LABEL: test_x86_sse2_ucomieq_sd:
1251 ; AVX512VL: ## BB#0:
1252 ; AVX512VL-NEXT: vucomisd %xmm1, %xmm0
1253 ; AVX512VL-NEXT: setnp %al
1254 ; AVX512VL-NEXT: sete %cl
1255 ; AVX512VL-NEXT: andb %al, %cl
1256 ; AVX512VL-NEXT: movzbl %cl, %eax
1257 ; AVX512VL-NEXT: retl
1272 ; AVX512VL-LABEL: test_x86_sse2_ucomige_sd:
1273 ; AVX512VL: ## BB#0:
1274 ; AVX512VL-NEXT: xorl %eax, %eax
1275 ; AVX512VL-NEXT: vucomisd %xmm1, %xmm0
1276 ; AVX512VL-NEXT: setae %al
1277 ; AVX512VL-NEXT: retl
1292 ; AVX512VL-LABEL: test_x86_sse2_ucomigt_sd:
1293 ; AVX512VL: ## BB#0:
1294 ; AVX512VL-NEXT: xorl %eax, %eax
1295 ; AVX512VL-NEXT: vucomisd %xmm1, %xmm0
1296 ; AVX512VL-NEXT: seta %al
1297 ; AVX512VL-NEXT: retl
1312 ; AVX512VL-LABEL: test_x86_sse2_ucomile_sd:
1313 ; AVX512VL: ## BB#0:
1314 ; AVX512VL-NEXT: xorl %eax, %eax
1315 ; AVX512VL-NEXT: vucomisd %xmm0, %xmm1
1316 ; AVX512VL-NEXT: setae %al
1317 ; AVX512VL-NEXT: retl
1332 ; AVX512VL-LABEL: test_x86_sse2_ucomilt_sd:
1333 ; AVX512VL: ## BB#0:
1334 ; AVX512VL-NEXT: xorl %eax, %eax
1335 ; AVX512VL-NEXT: vucomisd %xmm0, %xmm1
1336 ; AVX512VL-NEXT: seta %al
1337 ; AVX512VL-NEXT: retl
1354 ; AVX512VL-LABEL: test_x86_sse2_ucomineq_sd:
1355 ; AVX512VL: ## BB#0:
1356 ; AVX512VL-NEXT: vucomisd %xmm1, %xmm0
1357 ; AVX512VL-NEXT: setp %al
1358 ; AVX512VL-NEXT: setne %cl
1359 ; AVX512VL-NEXT: orb %al, %cl
1360 ; AVX512VL-NEXT: movzbl %cl, %eax
1361 ; AVX512VL-NEXT: retl
1374 ; AVX512VL-LABEL: test_x86_sse3_addsub_pd:
1375 ; AVX512VL: ## BB#0:
1376 ; AVX512VL-NEXT: vaddsubpd %xmm1, %xmm0, %xmm0
1377 ; AVX512VL-NEXT: retl
1390 ; AVX512VL-LABEL: test_x86_sse3_addsub_ps:
1391 ; AVX512VL: ## BB#0:
1392 ; AVX512VL-NEXT: vaddsubps %xmm1, %xmm0, %xmm0
1393 ; AVX512VL-NEXT: retl
1406 ; AVX512VL-LABEL: test_x86_sse3_hadd_pd:
1407 ; AVX512VL: ## BB#0:
1408 ; AVX512VL-NEXT: vhaddpd %xmm1, %xmm0, %xmm0
1409 ; AVX512VL-NEXT: retl
1422 ; AVX512VL-LABEL: test_x86_sse3_hadd_ps:
1423 ; AVX512VL: ## BB#0:
1424 ; AVX512VL-NEXT: vhaddps %xmm1, %xmm0, %xmm0
1425 ; AVX512VL-NEXT: retl
1438 ; AVX512VL-LABEL: test_x86_sse3_hsub_pd:
1439 ; AVX512VL: ## BB#0:
1440 ; AVX512VL-NEXT: vhsubpd %xmm1, %xmm0, %xmm0
1441 ; AVX512VL-NEXT: retl
1454 ; AVX512VL-LABEL: test_x86_sse3_hsub_ps:
1455 ; AVX512VL: ## BB#0:
1456 ; AVX512VL-NEXT: vhsubps %xmm1, %xmm0, %xmm0
1457 ; AVX512VL-NEXT: retl
1471 ; AVX512VL-LABEL: test_x86_sse3_ldu_dq:
1472 ; AVX512VL: ## BB#0:
1473 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
1474 ; AVX512VL-NEXT: vlddqu (%eax), %xmm0
1475 ; AVX512VL-NEXT: retl
1488 ; AVX512VL-LABEL: test_x86_sse41_blendvpd:
1489 ; AVX512VL: ## BB#0:
1490 ; AVX512VL-NEXT: vblendvpd %xmm2, %xmm1, %xmm0, %xmm0
1491 ; AVX512VL-NEXT: retl
1504 ; AVX512VL-LABEL: test_x86_sse41_blendvps:
1505 ; AVX512VL: ## BB#0:
1506 ; AVX512VL-NEXT: vblendvps %xmm2, %xmm1, %xmm0, %xmm0
1507 ; AVX512VL-NEXT: retl
1520 ; AVX512VL-LABEL: test_x86_sse41_dppd:
1521 ; AVX512VL: ## BB#0:
1522 ; AVX512VL-NEXT: vdppd $7, %xmm1, %xmm0, %xmm0
1523 ; AVX512VL-NEXT: retl
1536 ; AVX512VL-LABEL: test_x86_sse41_dpps:
1537 ; AVX512VL: ## BB#0:
1538 ; AVX512VL-NEXT: vdpps $7, %xmm1, %xmm0, %xmm0
1539 ; AVX512VL-NEXT: retl
1552 ; AVX512VL-LABEL: test_x86_sse41_insertps:
1553 ; AVX512VL: ## BB#0:
1554 ; AVX512VL-NEXT: vinsertps {{.*#+}} xmm0 = zero,xmm1[0],zero,xmm0[3]
1555 ; AVX512VL-NEXT: retl
1569 ; AVX512VL-LABEL: test_x86_sse41_mpsadbw:
1570 ; AVX512VL: ## BB#0:
1571 ; AVX512VL-NEXT: vmpsadbw $7, %xmm1, %xmm0, %xmm0
1572 ; AVX512VL-NEXT: retl
1585 ; AVX512VL-LABEL: test_x86_sse41_packusdw:
1586 ; AVX512VL: ## BB#0:
1587 ; AVX512VL-NEXT: vpackusdw %xmm1, %xmm0, %xmm0
1588 ; AVX512VL-NEXT: retl
1601 ; AVX512VL-LABEL: test_x86_sse41_pblendvb:
1602 ; AVX512VL: ## BB#0:
1603 ; AVX512VL-NEXT: vpblendvb %xmm2, %xmm1, %xmm0, %xmm0
1604 ; AVX512VL-NEXT: retl
1617 ; AVX512VL-LABEL: test_x86_sse41_phminposuw:
1618 ; AVX512VL: ## BB#0:
1619 ; AVX512VL-NEXT: vphminposuw %xmm0, %xmm0
1620 ; AVX512VL-NEXT: retl
1633 ; AVX512VL-LABEL: test_x86_sse41_pmaxsb:
1634 ; AVX512VL: ## BB#0:
1635 ; AVX512VL-NEXT: vpmaxsb %xmm1, %xmm0, %xmm0
1636 ; AVX512VL-NEXT: retl
1649 ; AVX512VL-LABEL: test_x86_sse41_pmaxsd:
1650 ; AVX512VL: ## BB#0:
1651 ; AVX512VL-NEXT: vpmaxsd %xmm1, %xmm0, %xmm0
1652 ; AVX512VL-NEXT: retl
1665 ; AVX512VL-LABEL: test_x86_sse41_pmaxud:
1666 ; AVX512VL: ## BB#0:
1667 ; AVX512VL-NEXT: vpmaxud %xmm1, %xmm0, %xmm0
1668 ; AVX512VL-NEXT: retl
1681 ; AVX512VL-LABEL: test_x86_sse41_pmaxuw:
1682 ; AVX512VL: ## BB#0:
1683 ; AVX512VL-NEXT: vpmaxuw %xmm1, %xmm0, %xmm0
1684 ; AVX512VL-NEXT: retl
1697 ; AVX512VL-LABEL: test_x86_sse41_pminsb:
1698 ; AVX512VL: ## BB#0:
1699 ; AVX512VL-NEXT: vpminsb %xmm1, %xmm0, %xmm0
1700 ; AVX512VL-NEXT: retl
1713 ; AVX512VL-LABEL: test_x86_sse41_pminsd:
1714 ; AVX512VL: ## BB#0:
1715 ; AVX512VL-NEXT: vpminsd %xmm1, %xmm0, %xmm0
1716 ; AVX512VL-NEXT: retl
1729 ; AVX512VL-LABEL: test_x86_sse41_pminud:
1730 ; AVX512VL: ## BB#0:
1731 ; AVX512VL-NEXT: vpminud %xmm1, %xmm0, %xmm0
1732 ; AVX512VL-NEXT: retl
1745 ; AVX512VL-LABEL: test_x86_sse41_pminuw:
1746 ; AVX512VL: ## BB#0:
1747 ; AVX512VL-NEXT: vpminuw %xmm1, %xmm0, %xmm0
1748 ; AVX512VL-NEXT: retl
1761 ; AVX512VL-LABEL: test_x86_sse41_pmuldq:
1762 ; AVX512VL: ## BB#0:
1763 ; AVX512VL-NEXT: vpmuldq %xmm1, %xmm0, %xmm0
1764 ; AVX512VL-NEXT: retl
1779 ; AVX512VL-LABEL: test_x86_sse41_ptestc:
1780 ; AVX512VL: ## BB#0:
1781 ; AVX512VL-NEXT: vptest %xmm1, %xmm0
1782 ; AVX512VL-NEXT: sbbl %eax, %eax
1783 ; AVX512VL-NEXT: andl $1, %eax
1784 ; AVX512VL-NEXT: retl
1799 ; AVX512VL-LABEL: test_x86_sse41_ptestnzc:
1800 ; AVX512VL: ## BB#0:
1801 ; AVX512VL-NEXT: xorl %eax, %eax
1802 ; AVX512VL-NEXT: vptest %xmm1, %xmm0
1803 ; AVX512VL-NEXT: seta %al
1804 ; AVX512VL-NEXT: retl
1819 ; AVX512VL-LABEL: test_x86_sse41_ptestz:
1820 ; AVX512VL: ## BB#0:
1821 ; AVX512VL-NEXT: xorl %eax, %eax
1822 ; AVX512VL-NEXT: vptest %xmm1, %xmm0
1823 ; AVX512VL-NEXT: sete %al
1824 ; AVX512VL-NEXT: retl
1837 ; AVX512VL-LABEL: test_x86_sse41_round_pd:
1838 ; AVX512VL: ## BB#0:
1839 ; AVX512VL-NEXT: vroundpd $7, %xmm0, %xmm0
1840 ; AVX512VL-NEXT: retl
1853 ; AVX512VL-LABEL: test_x86_sse41_round_ps:
1854 ; AVX512VL: ## BB#0:
1855 ; AVX512VL-NEXT: vroundps $7, %xmm0, %xmm0
1856 ; AVX512VL-NEXT: retl
1869 ; AVX512VL-LABEL: test_x86_sse41_round_sd:
1870 ; AVX512VL: ## BB#0:
1871 ; AVX512VL-NEXT: vroundsd $7, %xmm1, %xmm0, %xmm0
1872 ; AVX512VL-NEXT: retl
1885 ; AVX512VL-LABEL: test_x86_sse41_round_ss:
1886 ; AVX512VL: ## BB#0:
1887 ; AVX512VL-NEXT: vroundss $7, %xmm1, %xmm0, %xmm0
1888 ; AVX512VL-NEXT: retl
1904 ; AVX512VL-LABEL: test_x86_sse42_pcmpestri128:
1905 ; AVX512VL: ## BB#0:
1906 ; AVX512VL-NEXT: movl $7, %eax
1907 ; AVX512VL-NEXT: movl $7, %edx
1908 ; AVX512VL-NEXT: vpcmpestri $7, %xmm1, %xmm0
1909 ; AVX512VL-NEXT: movl %ecx, %eax
1910 ; AVX512VL-NEXT: retl
1929 ; AVX512VL-LABEL: test_x86_sse42_pcmpestri128_load:
1930 ; AVX512VL: ## BB#0:
1931 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %ecx
1932 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
1933 ; AVX512VL-NEXT: vmovdqa64 (%eax), %xmm0
1934 ; AVX512VL-NEXT: movl $7, %eax
1935 ; AVX512VL-NEXT: movl $7, %edx
1936 ; AVX512VL-NEXT: vpcmpestri $7, (%ecx), %xmm0
1937 ; AVX512VL-NEXT: movl %ecx, %eax
1938 ; AVX512VL-NEXT: retl
1959 ; AVX512VL-LABEL: test_x86_sse42_pcmpestria128:
1960 ; AVX512VL: ## BB#0:
1961 ; AVX512VL-NEXT: pushl %ebx
1962 ; AVX512VL-NEXT: movl $7, %eax
1963 ; AVX512VL-NEXT: movl $7, %edx
1964 ; AVX512VL-NEXT: xorl %ebx, %ebx
1965 ; AVX512VL-NEXT: vpcmpestri $7, %xmm1, %xmm0
1966 ; AVX512VL-NEXT: seta %bl
1967 ; AVX512VL-NEXT: movl %ebx, %eax
1968 ; AVX512VL-NEXT: popl %ebx
1969 ; AVX512VL-NEXT: retl
1986 ; AVX512VL-LABEL: test_x86_sse42_pcmpestric128:
1987 ; AVX512VL: ## BB#0:
1988 ; AVX512VL-NEXT: movl $7, %eax
1989 ; AVX512VL-NEXT: movl $7, %edx
1990 ; AVX512VL-NEXT: vpcmpestri $7, %xmm1, %xmm0
1991 ; AVX512VL-NEXT: sbbl %eax, %eax
1992 ; AVX512VL-NEXT: andl $1, %eax
1993 ; AVX512VL-NEXT: retl
2013 ; AVX512VL-LABEL: test_x86_sse42_pcmpestrio128:
2014 ; AVX512VL: ## BB#0:
2015 ; AVX512VL-NEXT: pushl %ebx
2016 ; AVX512VL-NEXT: movl $7, %eax
2017 ; AVX512VL-NEXT: movl $7, %edx
2018 ; AVX512VL-NEXT: xorl %ebx, %ebx
2019 ; AVX512VL-NEXT: vpcmpestri $7, %xmm1, %xmm0
2020 ; AVX512VL-NEXT: seto %bl
2021 ; AVX512VL-NEXT: movl %ebx, %eax
2022 ; AVX512VL-NEXT: popl %ebx
2023 ; AVX512VL-NEXT: retl
2043 ; AVX512VL-LABEL: test_x86_sse42_pcmpestris128:
2044 ; AVX512VL: ## BB#0:
2045 ; AVX512VL-NEXT: pushl %ebx
2046 ; AVX512VL-NEXT: movl $7, %eax
2047 ; AVX512VL-NEXT: movl $7, %edx
2048 ; AVX512VL-NEXT: xorl %ebx, %ebx
2049 ; AVX512VL-NEXT: vpcmpestri $7, %xmm1, %xmm0
2050 ; AVX512VL-NEXT: sets %bl
2051 ; AVX512VL-NEXT: movl %ebx, %eax
2052 ; AVX512VL-NEXT: popl %ebx
2053 ; AVX512VL-NEXT: retl
2073 ; AVX512VL-LABEL: test_x86_sse42_pcmpestriz128:
2074 ; AVX512VL: ## BB#0:
2075 ; AVX512VL-NEXT: pushl %ebx
2076 ; AVX512VL-NEXT: movl $7, %eax
2077 ; AVX512VL-NEXT: movl $7, %edx
2078 ; AVX512VL-NEXT: xorl %ebx, %ebx
2079 ; AVX512VL-NEXT: vpcmpestri $7, %xmm1, %xmm0
2080 ; AVX512VL-NEXT: sete %bl
2081 ; AVX512VL-NEXT: movl %ebx, %eax
2082 ; AVX512VL-NEXT: popl %ebx
2083 ; AVX512VL-NEXT: retl
2098 ; AVX512VL-LABEL: test_x86_sse42_pcmpestrm128:
2099 ; AVX512VL: ## BB#0:
2100 ; AVX512VL-NEXT: movl $7, %eax
2101 ; AVX512VL-NEXT: movl $7, %edx
2102 ; AVX512VL-NEXT: vpcmpestrm $7, %xmm1, %xmm0
2103 ; AVX512VL-NEXT: retl
2119 ; AVX512VL-LABEL: test_x86_sse42_pcmpestrm128_load:
2120 ; AVX512VL: ## BB#0:
2121 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %ecx
2122 ; AVX512VL-NEXT: movl $7, %eax
2123 ; AVX512VL-NEXT: movl $7, %edx
2124 ; AVX512VL-NEXT: vpcmpestrm $7, (%ecx), %xmm0
2125 ; AVX512VL-NEXT: retl
2139 ; AVX512VL-LABEL: test_x86_sse42_pcmpistri128:
2140 ; AVX512VL: ## BB#0:
2141 ; AVX512VL-NEXT: vpcmpistri $7, %xmm1, %xmm0
2142 ; AVX512VL-NEXT: movl %ecx, %eax
2143 ; AVX512VL-NEXT: retl
2160 ; AVX512VL-LABEL: test_x86_sse42_pcmpistri128_load:
2161 ; AVX512VL: ## BB#0:
2162 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
2163 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %ecx
2164 ; AVX512VL-NEXT: vmovdqa64 (%ecx), %xmm0
2165 ; AVX512VL-NEXT: vpcmpistri $7, (%eax), %xmm0
2166 ; AVX512VL-NEXT: movl %ecx, %eax
2167 ; AVX512VL-NEXT: retl
2183 ; AVX512VL-LABEL: test_x86_sse42_pcmpistria128:
2184 ; AVX512VL: ## BB#0:
2185 ; AVX512VL-NEXT: xorl %eax, %eax
2186 ; AVX512VL-NEXT: vpcmpistri $7, %xmm1, %xmm0
2187 ; AVX512VL-NEXT: seta %al
2188 ; AVX512VL-NEXT: retl
2203 ; AVX512VL-LABEL: test_x86_sse42_pcmpistric128:
2204 ; AVX512VL: ## BB#0:
2205 ; AVX512VL-NEXT: vpcmpistri $7, %xmm1, %xmm0
2206 ; AVX512VL-NEXT: sbbl %eax, %eax
2207 ; AVX512VL-NEXT: andl $1, %eax
2208 ; AVX512VL-NEXT: retl
2223 ; AVX512VL-LABEL: test_x86_sse42_pcmpistrio128:
2224 ; AVX512VL: ## BB#0:
2225 ; AVX512VL-NEXT: xorl %eax, %eax
2226 ; AVX512VL-NEXT: vpcmpistri $7, %xmm1, %xmm0
2227 ; AVX512VL-NEXT: seto %al
2228 ; AVX512VL-NEXT: retl
2243 ; AVX512VL-LABEL: test_x86_sse42_pcmpistris128:
2244 ; AVX512VL: ## BB#0:
2245 ; AVX512VL-NEXT: xorl %eax, %eax
2246 ; AVX512VL-NEXT: vpcmpistri $7, %xmm1, %xmm0
2247 ; AVX512VL-NEXT: sets %al
2248 ; AVX512VL-NEXT: retl
2263 ; AVX512VL-LABEL: test_x86_sse42_pcmpistriz128:
2264 ; AVX512VL: ## BB#0:
2265 ; AVX512VL-NEXT: xorl %eax, %eax
2266 ; AVX512VL-NEXT: vpcmpistri $7, %xmm1, %xmm0
2267 ; AVX512VL-NEXT: sete %al
2268 ; AVX512VL-NEXT: retl
2281 ; AVX512VL-LABEL: test_x86_sse42_pcmpistrm128:
2282 ; AVX512VL: ## BB#0:
2283 ; AVX512VL-NEXT: vpcmpistrm $7, %xmm1, %xmm0
2284 ; AVX512VL-NEXT: retl
2298 ; AVX512VL-LABEL: test_x86_sse42_pcmpistrm128_load:
2299 ; AVX512VL: ## BB#0:
2300 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
2301 ; AVX512VL-NEXT: vpcmpistrm $7, (%eax), %xmm0
2302 ; AVX512VL-NEXT: retl
2315 ; AVX512VL-LABEL: test_x86_sse_add_ss:
2316 ; AVX512VL: ## BB#0:
2317 ; AVX512VL-NEXT: vaddss %xmm1, %xmm0, %xmm0
2318 ; AVX512VL-NEXT: retl
2331 ; AVX512VL-LABEL: test_x86_sse_cmp_ps:
2332 ; AVX512VL: ## BB#0:
2333 ; AVX512VL-NEXT: vcmpordps %xmm1, %xmm0, %xmm0
2334 ; AVX512VL-NEXT: retl
2347 ; AVX512VL-LABEL: test_x86_sse_cmp_ss:
2348 ; AVX512VL: ## BB#0:
2349 ; AVX512VL-NEXT: vcmpordss %xmm1, %xmm0, %xmm0
2350 ; AVX512VL-NEXT: retl
2367 ; AVX512VL-LABEL: test_x86_sse_comieq_ss:
2368 ; AVX512VL: ## BB#0:
2369 ; AVX512VL-NEXT: vcomiss %xmm1, %xmm0
2370 ; AVX512VL-NEXT: setnp %al
2371 ; AVX512VL-NEXT: sete %cl
2372 ; AVX512VL-NEXT: andb %al, %cl
2373 ; AVX512VL-NEXT: movzbl %cl, %eax
2374 ; AVX512VL-NEXT: retl
2389 ; AVX512VL-LABEL: test_x86_sse_comige_ss:
2390 ; AVX512VL: ## BB#0:
2391 ; AVX512VL-NEXT: xorl %eax, %eax
2392 ; AVX512VL-NEXT: vcomiss %xmm1, %xmm0
2393 ; AVX512VL-NEXT: setae %al
2394 ; AVX512VL-NEXT: retl
2409 ; AVX512VL-LABEL: test_x86_sse_comigt_ss:
2410 ; AVX512VL: ## BB#0:
2411 ; AVX512VL-NEXT: xorl %eax, %eax
2412 ; AVX512VL-NEXT: vcomiss %xmm1, %xmm0
2413 ; AVX512VL-NEXT: seta %al
2414 ; AVX512VL-NEXT: retl
2429 ; AVX512VL-LABEL: test_x86_sse_comile_ss:
2430 ; AVX512VL: ## BB#0:
2431 ; AVX512VL-NEXT: xorl %eax, %eax
2432 ; AVX512VL-NEXT: vcomiss %xmm0, %xmm1
2433 ; AVX512VL-NEXT: setae %al
2434 ; AVX512VL-NEXT: retl
2449 ; AVX512VL-LABEL: test_x86_sse_comilt_ss:
2450 ; AVX512VL: ## BB#0:
2451 ; AVX512VL-NEXT: xorl %eax, %eax
2452 ; AVX512VL-NEXT: vcomiss %xmm0, %xmm1
2453 ; AVX512VL-NEXT: seta %al
2454 ; AVX512VL-NEXT: retl
2471 ; AVX512VL-LABEL: test_x86_sse_comineq_ss:
2472 ; AVX512VL: ## BB#0:
2473 ; AVX512VL-NEXT: vcomiss %xmm1, %xmm0
2474 ; AVX512VL-NEXT: setp %al
2475 ; AVX512VL-NEXT: setne %cl
2476 ; AVX512VL-NEXT: orb %al, %cl
2477 ; AVX512VL-NEXT: movzbl %cl, %eax
2478 ; AVX512VL-NEXT: retl
2492 ; AVX512VL-LABEL: test_x86_sse_cvtsi2ss:
2493 ; AVX512VL: ## BB#0:
2494 ; AVX512VL-NEXT: movl $7, %eax
2495 ; AVX512VL-NEXT: vcvtsi2ssl %eax, %xmm0, %xmm0
2496 ; AVX512VL-NEXT: retl
2509 ; AVX512VL-LABEL: test_x86_sse_cvtss2si:
2510 ; AVX512VL: ## BB#0:
2511 ; AVX512VL-NEXT: vcvtss2si %xmm0, %eax
2512 ; AVX512VL-NEXT: retl
2525 ; AVX512VL-LABEL: test_x86_sse_cvttss2si:
2526 ; AVX512VL: ## BB#0:
2527 ; AVX512VL-NEXT: vcvttss2si %xmm0, %eax
2528 ; AVX512VL-NEXT: retl
2541 ; AVX512VL-LABEL: test_x86_sse_div_ss:
2542 ; AVX512VL: ## BB#0:
2543 ; AVX512VL-NEXT: vdivss %xmm1, %xmm0, %xmm0
2544 ; AVX512VL-NEXT: retl
2558 ; AVX512VL-LABEL: test_x86_sse_ldmxcsr:
2559 ; AVX512VL: ## BB#0:
2560 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
2561 ; AVX512VL-NEXT: vldmxcsr (%eax)
2562 ; AVX512VL-NEXT: retl
2576 ; AVX512VL-LABEL: test_x86_sse_max_ps:
2577 ; AVX512VL: ## BB#0:
2578 ; AVX512VL-NEXT: vmaxps %xmm1, %xmm0, %xmm0
2579 ; AVX512VL-NEXT: retl
2592 ; AVX512VL-LABEL: test_x86_sse_max_ss:
2593 ; AVX512VL: ## BB#0:
2594 ; AVX512VL-NEXT: vmaxss %xmm1, %xmm0, %xmm0
2595 ; AVX512VL-NEXT: retl
2608 ; AVX512VL-LABEL: test_x86_sse_min_ps:
2609 ; AVX512VL: ## BB#0:
2610 ; AVX512VL-NEXT: vminps %xmm1, %xmm0, %xmm0
2611 ; AVX512VL-NEXT: retl
2624 ; AVX512VL-LABEL: test_x86_sse_min_ss:
2625 ; AVX512VL: ## BB#0:
2626 ; AVX512VL-NEXT: vminss %xmm1, %xmm0, %xmm0
2627 ; AVX512VL-NEXT: retl
2640 ; AVX512VL-LABEL: test_x86_sse_movmsk_ps:
2641 ; AVX512VL: ## BB#0:
2642 ; AVX512VL-NEXT: vmovmskps %xmm0, %eax
2643 ; AVX512VL-NEXT: retl
2657 ; AVX512VL-LABEL: test_x86_sse_mul_ss:
2658 ; AVX512VL: ## BB#0:
2659 ; AVX512VL-NEXT: vmulss %xmm1, %xmm0, %xmm0
2660 ; AVX512VL-NEXT: retl
2673 ; AVX512VL-LABEL: test_x86_sse_rcp_ps:
2674 ; AVX512VL: ## BB#0:
2675 ; AVX512VL-NEXT: vrcp14ps %xmm0, %xmm0
2676 ; AVX512VL-NEXT: retl
2689 ; AVX512VL-LABEL: test_x86_sse_rcp_ss:
2690 ; AVX512VL: ## BB#0:
2691 ; AVX512VL-NEXT: vrcpss %xmm0, %xmm0, %xmm0
2692 ; AVX512VL-NEXT: retl
2705 ; AVX512VL-LABEL: test_x86_sse_rsqrt_ps:
2706 ; AVX512VL: ## BB#0:
2707 ; AVX512VL-NEXT: vrsqrt14ps %xmm0, %xmm0
2708 ; AVX512VL-NEXT: retl
2721 ; AVX512VL-LABEL: test_x86_sse_rsqrt_ss:
2722 ; AVX512VL: ## BB#0:
2723 ; AVX512VL-NEXT: vrsqrtss %xmm0, %xmm0, %xmm0
2724 ; AVX512VL-NEXT: retl
2737 ; AVX512VL-LABEL: test_x86_sse_sqrt_ps:
2738 ; AVX512VL: ## BB#0:
2739 ; AVX512VL-NEXT: vsqrtps %xmm0, %xmm0
2740 ; AVX512VL-NEXT: retl
2753 ; AVX512VL-LABEL: test_x86_sse_sqrt_ss:
2754 ; AVX512VL: ## BB#0:
2755 ; AVX512VL-NEXT: vsqrtss %xmm0, %xmm0, %xmm0
2756 ; AVX512VL-NEXT: retl
2770 ; AVX512VL-LABEL: test_x86_sse_stmxcsr:
2771 ; AVX512VL: ## BB#0:
2772 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
2773 ; AVX512VL-NEXT: vstmxcsr (%eax)
2774 ; AVX512VL-NEXT: retl
2787 ; AVX512VL-LABEL: test_x86_sse_sub_ss:
2788 ; AVX512VL: ## BB#0:
2789 ; AVX512VL-NEXT: vsubss %xmm1, %xmm0, %xmm0
2790 ; AVX512VL-NEXT: retl
2807 ; AVX512VL-LABEL: test_x86_sse_ucomieq_ss:
2808 ; AVX512VL: ## BB#0:
2809 ; AVX512VL-NEXT: vucomiss %xmm1, %xmm0
2810 ; AVX512VL-NEXT: setnp %al
2811 ; AVX512VL-NEXT: sete %cl
2812 ; AVX512VL-NEXT: andb %al, %cl
2813 ; AVX512VL-NEXT: movzbl %cl, %eax
2814 ; AVX512VL-NEXT: retl
2829 ; AVX512VL-LABEL: test_x86_sse_ucomige_ss:
2830 ; AVX512VL: ## BB#0:
2831 ; AVX512VL-NEXT: xorl %eax, %eax
2832 ; AVX512VL-NEXT: vucomiss %xmm1, %xmm0
2833 ; AVX512VL-NEXT: setae %al
2834 ; AVX512VL-NEXT: retl
2849 ; AVX512VL-LABEL: test_x86_sse_ucomigt_ss:
2850 ; AVX512VL: ## BB#0:
2851 ; AVX512VL-NEXT: xorl %eax, %eax
2852 ; AVX512VL-NEXT: vucomiss %xmm1, %xmm0
2853 ; AVX512VL-NEXT: seta %al
2854 ; AVX512VL-NEXT: retl
2869 ; AVX512VL-LABEL: test_x86_sse_ucomile_ss:
2870 ; AVX512VL: ## BB#0:
2871 ; AVX512VL-NEXT: xorl %eax, %eax
2872 ; AVX512VL-NEXT: vucomiss %xmm0, %xmm1
2873 ; AVX512VL-NEXT: setae %al
2874 ; AVX512VL-NEXT: retl
2889 ; AVX512VL-LABEL: test_x86_sse_ucomilt_ss:
2890 ; AVX512VL: ## BB#0:
2891 ; AVX512VL-NEXT: xorl %eax, %eax
2892 ; AVX512VL-NEXT: vucomiss %xmm0, %xmm1
2893 ; AVX512VL-NEXT: seta %al
2894 ; AVX512VL-NEXT: retl
2911 ; AVX512VL-LABEL: test_x86_sse_ucomineq_ss:
2912 ; AVX512VL: ## BB#0:
2913 ; AVX512VL-NEXT: vucomiss %xmm1, %xmm0
2914 ; AVX512VL-NEXT: setp %al
2915 ; AVX512VL-NEXT: setne %cl
2916 ; AVX512VL-NEXT: orb %al, %cl
2917 ; AVX512VL-NEXT: movzbl %cl, %eax
2918 ; AVX512VL-NEXT: retl
2931 ; AVX512VL-LABEL: test_x86_ssse3_pabs_b_128:
2932 ; AVX512VL: ## BB#0:
2933 ; AVX512VL-NEXT: vpabsb %xmm0, %xmm0
2934 ; AVX512VL-NEXT: retl
2947 ; AVX512VL-LABEL: test_x86_ssse3_pabs_d_128:
2948 ; AVX512VL: ## BB#0:
2949 ; AVX512VL-NEXT: vpabsd %xmm0, %xmm0
2950 ; AVX512VL-NEXT: retl
2963 ; AVX512VL-LABEL: test_x86_ssse3_pabs_w_128:
2964 ; AVX512VL: ## BB#0:
2965 ; AVX512VL-NEXT: vpabsw %xmm0, %xmm0
2966 ; AVX512VL-NEXT: retl
2979 ; AVX512VL-LABEL: test_x86_ssse3_phadd_d_128:
2980 ; AVX512VL: ## BB#0:
2981 ; AVX512VL-NEXT: vphaddd %xmm1, %xmm0, %xmm0
2982 ; AVX512VL-NEXT: retl
2995 ; AVX512VL-LABEL: test_x86_ssse3_phadd_sw_128:
2996 ; AVX512VL: ## BB#0:
2997 ; AVX512VL-NEXT: vphaddsw %xmm1, %xmm0, %xmm0
2998 ; AVX512VL-NEXT: retl
3011 ; AVX512VL-LABEL: test_x86_ssse3_phadd_w_128:
3012 ; AVX512VL: ## BB#0:
3013 ; AVX512VL-NEXT: vphaddw %xmm1, %xmm0, %xmm0
3014 ; AVX512VL-NEXT: retl
3027 ; AVX512VL-LABEL: test_x86_ssse3_phsub_d_128:
3028 ; AVX512VL: ## BB#0:
3029 ; AVX512VL-NEXT: vphsubd %xmm1, %xmm0, %xmm0
3030 ; AVX512VL-NEXT: retl
3043 ; AVX512VL-LABEL: test_x86_ssse3_phsub_sw_128:
3044 ; AVX512VL: ## BB#0:
3045 ; AVX512VL-NEXT: vphsubsw %xmm1, %xmm0, %xmm0
3046 ; AVX512VL-NEXT: retl
3059 ; AVX512VL-LABEL: test_x86_ssse3_phsub_w_128:
3060 ; AVX512VL: ## BB#0:
3061 ; AVX512VL-NEXT: vphsubw %xmm1, %xmm0, %xmm0
3062 ; AVX512VL-NEXT: retl
3075 ; AVX512VL-LABEL: test_x86_ssse3_pmadd_ub_sw_128:
3076 ; AVX512VL: ## BB#0:
3077 ; AVX512VL-NEXT: vpmaddubsw %xmm1, %xmm0, %xmm0
3078 ; AVX512VL-NEXT: retl
3091 ; AVX512VL-LABEL: test_x86_ssse3_pmul_hr_sw_128:
3092 ; AVX512VL: ## BB#0:
3093 ; AVX512VL-NEXT: vpmulhrsw %xmm1, %xmm0, %xmm0
3094 ; AVX512VL-NEXT: retl
3107 ; AVX512VL-LABEL: test_x86_ssse3_pshuf_b_128:
3108 ; AVX512VL: ## BB#0:
3109 ; AVX512VL-NEXT: vpshufb %xmm1, %xmm0, %xmm0
3110 ; AVX512VL-NEXT: retl
3123 ; AVX512VL-LABEL: test_x86_ssse3_psign_b_128:
3124 ; AVX512VL: ## BB#0:
3125 ; AVX512VL-NEXT: vpsignb %xmm1, %xmm0, %xmm0
3126 ; AVX512VL-NEXT: retl
3139 ; AVX512VL-LABEL: test_x86_ssse3_psign_d_128:
3140 ; AVX512VL: ## BB#0:
3141 ; AVX512VL-NEXT: vpsignd %xmm1, %xmm0, %xmm0
3142 ; AVX512VL-NEXT: retl
3155 ; AVX512VL-LABEL: test_x86_ssse3_psign_w_128:
3156 ; AVX512VL: ## BB#0:
3157 ; AVX512VL-NEXT: vpsignw %xmm1, %xmm0, %xmm0
3158 ; AVX512VL-NEXT: retl
3171 ; AVX512VL-LABEL: test_x86_avx_addsub_pd_256:
3172 ; AVX512VL: ## BB#0:
3173 ; AVX512VL-NEXT: vaddsubpd %ymm1, %ymm0, %ymm0
3174 ; AVX512VL-NEXT: retl
3187 ; AVX512VL-LABEL: test_x86_avx_addsub_ps_256:
3188 ; AVX512VL: ## BB#0:
3189 ; AVX512VL-NEXT: vaddsubps %ymm1, %ymm0, %ymm0
3190 ; AVX512VL-NEXT: retl
3203 ; AVX512VL-LABEL: test_x86_avx_blendv_pd_256:
3204 ; AVX512VL: ## BB#0:
3205 ; AVX512VL-NEXT: vblendvpd %ymm2, %ymm1, %ymm0, %ymm0
3206 ; AVX512VL-NEXT: retl
3219 ; AVX512VL-LABEL: test_x86_avx_blendv_ps_256:
3220 ; AVX512VL: ## BB#0:
3221 ; AVX512VL-NEXT: vblendvps %ymm2, %ymm1, %ymm0, %ymm0
3222 ; AVX512VL-NEXT: retl
3235 ; AVX512VL-LABEL: test_x86_avx_cmp_pd_256:
3236 ; AVX512VL: ## BB#0:
3237 ; AVX512VL-NEXT: vcmpordpd %ymm1, %ymm0, %ymm0
3238 ; AVX512VL-NEXT: retl
3251 ; AVX512VL-LABEL: test_x86_avx_cmp_ps_256:
3252 ; AVX512VL: ## BB#0:
3253 ; AVX512VL-NEXT: vcmpordps %ymm1, %ymm0, %ymm0
3254 ; AVX512VL-NEXT: retl
3296 ; AVX512VL-LABEL: test_x86_avx_cmp_ps_256_pseudo_op:
3297 ; AVX512VL: ## BB#0:
3298 ; AVX512VL-NEXT: vcmpeqps %ymm1, %ymm0, %ymm1
3299 ; AVX512VL-NEXT: vcmpltps %ymm1, %ymm0, %ymm1
3300 ; AVX512VL-NEXT: vcmpleps %ymm1, %ymm0, %ymm1
3301 ; AVX512VL-NEXT: vcmpunordps %ymm1, %ymm0, %ymm1
3302 ; AVX512VL-NEXT: vcmpneqps %ymm1, %ymm0, %ymm1
3303 ; AVX512VL-NEXT: vcmpnltps %ymm1, %ymm0, %ymm1
3304 ; AVX512VL-NEXT: vcmpnleps %ymm1, %ymm0, %ymm1
3305 ; AVX512VL-NEXT: vcmpordps %ymm1, %ymm0, %ymm1
3306 ; AVX512VL-NEXT: vcmpeq_uqps %ymm1, %ymm0, %ymm1
3307 ; AVX512VL-NEXT: vcmpngeps %ymm1, %ymm0, %ymm1
3308 ; AVX512VL-NEXT: vcmpngtps %ymm1, %ymm0, %ymm1
3309 ; AVX512VL-NEXT: vcmpfalseps %ymm1, %ymm0, %ymm1
3310 ; AVX512VL-NEXT: vcmpneq_oqps %ymm1, %ymm0, %ymm1
3311 ; AVX512VL-NEXT: vcmpgeps %ymm1, %ymm0, %ymm1
3312 ; AVX512VL-NEXT: vcmpgtps %ymm1, %ymm0, %ymm1
3313 ; AVX512VL-NEXT: vcmptrueps %ymm1, %ymm0, %ymm1
3314 ; AVX512VL-NEXT: vcmpeq_osps %ymm1, %ymm0, %ymm1
3315 ; AVX512VL-NEXT: vcmplt_oqps %ymm1, %ymm0, %ymm1
3316 ; AVX512VL-NEXT: vcmple_oqps %ymm1, %ymm0, %ymm1
3317 ; AVX512VL-NEXT: vcmpunord_sps %ymm1, %ymm0, %ymm1
3318 ; AVX512VL-NEXT: vcmpneq_usps %ymm1, %ymm0, %ymm1
3319 ; AVX512VL-NEXT: vcmpnlt_uqps %ymm1, %ymm0, %ymm1
3320 ; AVX512VL-NEXT: vcmpnle_uqps %ymm1, %ymm0, %ymm1
3321 ; AVX512VL-NEXT: vcmpord_sps %ymm1, %ymm0, %ymm1
3322 ; AVX512VL-NEXT: vcmpeq_usps %ymm1, %ymm0, %ymm1
3323 ; AVX512VL-NEXT: vcmpnge_uqps %ymm1, %ymm0, %ymm1
3324 ; AVX512VL-NEXT: vcmpngt_uqps %ymm1, %ymm0, %ymm1
3325 ; AVX512VL-NEXT: vcmpfalse_osps %ymm1, %ymm0, %ymm1
3326 ; AVX512VL-NEXT: vcmpneq_osps %ymm1, %ymm0, %ymm1
3327 ; AVX512VL-NEXT: vcmpge_oqps %ymm1, %ymm0, %ymm1
3328 ; AVX512VL-NEXT: vcmpgt_oqps %ymm1, %ymm0, %ymm1
3329 ; AVX512VL-NEXT: vcmptrue_usps %ymm1, %ymm0, %ymm0
3330 ; AVX512VL-NEXT: retl
3375 ; AVX512VL-LABEL: test_x86_avx_cvt_pd2_ps_256:
3376 ; AVX512VL: ## BB#0:
3377 ; AVX512VL-NEXT: vcvtpd2psy %ymm0, %xmm0
3378 ; AVX512VL-NEXT: retl
3392 ; AVX512VL-LABEL: test_x86_avx_cvt_pd2dq_256:
3393 ; AVX512VL: ## BB#0:
3394 ; AVX512VL-NEXT: vcvtpd2dqy %ymm0, %xmm0
3395 ; AVX512VL-NEXT: retl
3408 ; AVX512VL-LABEL: test_x86_avx_cvt_ps2dq_256:
3409 ; AVX512VL: ## BB#0:
3410 ; AVX512VL-NEXT: vcvtps2dq %ymm0, %ymm0
3411 ; AVX512VL-NEXT: retl
3424 ; AVX512VL-LABEL: test_x86_avx_cvtdq2_ps_256:
3425 ; AVX512VL: ## BB#0:
3426 ; AVX512VL-NEXT: vcvtdq2ps %ymm0, %ymm0
3427 ; AVX512VL-NEXT: retl
3440 ; AVX512VL-LABEL: test_x86_avx_dp_ps_256:
3441 ; AVX512VL: ## BB#0:
3442 ; AVX512VL-NEXT: vdpps $7, %ymm1, %ymm0, %ymm0
3443 ; AVX512VL-NEXT: retl
3456 ; AVX512VL-LABEL: test_x86_avx_hadd_pd_256:
3457 ; AVX512VL: ## BB#0:
3458 ; AVX512VL-NEXT: vhaddpd %ymm1, %ymm0, %ymm0
3459 ; AVX512VL-NEXT: retl
3472 ; AVX512VL-LABEL: test_x86_avx_hadd_ps_256:
3473 ; AVX512VL: ## BB#0:
3474 ; AVX512VL-NEXT: vhaddps %ymm1, %ymm0, %ymm0
3475 ; AVX512VL-NEXT: retl
3488 ; AVX512VL-LABEL: test_x86_avx_hsub_pd_256:
3489 ; AVX512VL: ## BB#0:
3490 ; AVX512VL-NEXT: vhsubpd %ymm1, %ymm0, %ymm0
3491 ; AVX512VL-NEXT: retl
3504 ; AVX512VL-LABEL: test_x86_avx_hsub_ps_256:
3505 ; AVX512VL: ## BB#0:
3506 ; AVX512VL-NEXT: vhsubps %ymm1, %ymm0, %ymm0
3507 ; AVX512VL-NEXT: retl
3521 ; AVX512VL-LABEL: test_x86_avx_ldu_dq_256:
3522 ; AVX512VL: ## BB#0:
3523 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
3524 ; AVX512VL-NEXT: vlddqu (%eax), %ymm0
3525 ; AVX512VL-NEXT: retl
3539 ; AVX512VL-LABEL: test_x86_avx_maskload_pd:
3540 ; AVX512VL: ## BB#0:
3541 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
3542 ; AVX512VL-NEXT: vmaskmovpd (%eax), %xmm0, %xmm0
3543 ; AVX512VL-NEXT: retl
3557 ; AVX512VL-LABEL: test_x86_avx_maskload_pd_256:
3558 ; AVX512VL: ## BB#0:
3559 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
3560 ; AVX512VL-NEXT: vmaskmovpd (%eax), %ymm0, %ymm0
3561 ; AVX512VL-NEXT: retl
3575 ; AVX512VL-LABEL: test_x86_avx_maskload_ps:
3576 ; AVX512VL: ## BB#0:
3577 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
3578 ; AVX512VL-NEXT: vmaskmovps (%eax), %xmm0, %xmm0
3579 ; AVX512VL-NEXT: retl
3593 ; AVX512VL-LABEL: test_x86_avx_maskload_ps_256:
3594 ; AVX512VL: ## BB#0:
3595 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
3596 ; AVX512VL-NEXT: vmaskmovps (%eax), %ymm0, %ymm0
3597 ; AVX512VL-NEXT: retl
3611 ; AVX512VL-LABEL: test_x86_avx_maskstore_pd:
3612 ; AVX512VL: ## BB#0:
3613 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
3614 ; AVX512VL-NEXT: vmaskmovpd %xmm1, %xmm0, (%eax)
3615 ; AVX512VL-NEXT: retl
3630 ; AVX512VL-LABEL: test_x86_avx_maskstore_pd_256:
3631 ; AVX512VL: ## BB#0:
3632 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
3633 ; AVX512VL-NEXT: vmaskmovpd %ymm1, %ymm0, (%eax)
3634 ; AVX512VL-NEXT: retl
3648 ; AVX512VL-LABEL: test_x86_avx_maskstore_ps:
3649 ; AVX512VL: ## BB#0:
3650 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
3651 ; AVX512VL-NEXT: vmaskmovps %xmm1, %xmm0, (%eax)
3652 ; AVX512VL-NEXT: retl
3667 ; AVX512VL-LABEL: test_x86_avx_maskstore_ps_256:
3668 ; AVX512VL: ## BB#0:
3669 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
3670 ; AVX512VL-NEXT: vmaskmovps %ymm1, %ymm0, (%eax)
3671 ; AVX512VL-NEXT: retl
3684 ; AVX512VL-LABEL: test_x86_avx_max_pd_256:
3685 ; AVX512VL: ## BB#0:
3686 ; AVX512VL-NEXT: vmaxpd %ymm1, %ymm0, %ymm0
3687 ; AVX512VL-NEXT: retl
3700 ; AVX512VL-LABEL: test_x86_avx_max_ps_256:
3701 ; AVX512VL: ## BB#0:
3702 ; AVX512VL-NEXT: vmaxps %ymm1, %ymm0, %ymm0
3703 ; AVX512VL-NEXT: retl
3716 ; AVX512VL-LABEL: test_x86_avx_min_pd_256:
3717 ; AVX512VL: ## BB#0:
3718 ; AVX512VL-NEXT: vminpd %ymm1, %ymm0, %ymm0
3719 ; AVX512VL-NEXT: retl
3732 ; AVX512VL-LABEL: test_x86_avx_min_ps_256:
3733 ; AVX512VL: ## BB#0:
3734 ; AVX512VL-NEXT: vminps %ymm1, %ymm0, %ymm0
3735 ; AVX512VL-NEXT: retl
3749 ; AVX512VL-LABEL: test_x86_avx_movmsk_pd_256:
3750 ; AVX512VL: ## BB#0:
3751 ; AVX512VL-NEXT: vmovmskpd %ymm0, %eax
3752 ; AVX512VL-NEXT: retl
3766 ; AVX512VL-LABEL: test_x86_avx_movmsk_ps_256:
3767 ; AVX512VL: ## BB#0:
3768 ; AVX512VL-NEXT: vmovmskps %ymm0, %eax
3769 ; AVX512VL-NEXT: retl
3790 ; AVX512VL-LABEL: test_x86_avx_ptestc_256:
3791 ; AVX512VL: ## BB#0:
3792 ; AVX512VL-NEXT: vptest %ymm1, %ymm0
3793 ; AVX512VL-NEXT: sbbl %eax, %eax
3794 ; AVX512VL-NEXT: andl $1, %eax
3795 ; AVX512VL-NEXT: retl
3811 ; AVX512VL-LABEL: test_x86_avx_ptestnzc_256:
3812 ; AVX512VL: ## BB#0:
3813 ; AVX512VL-NEXT: xorl %eax, %eax
3814 ; AVX512VL-NEXT: vptest %ymm1, %ymm0
3815 ; AVX512VL-NEXT: seta %al
3816 ; AVX512VL-NEXT: retl
3832 ; AVX512VL-LABEL: test_x86_avx_ptestz_256:
3833 ; AVX512VL: ## BB#0:
3834 ; AVX512VL-NEXT: xorl %eax, %eax
3835 ; AVX512VL-NEXT: vptest %ymm1, %ymm0
3836 ; AVX512VL-NEXT: sete %al
3837 ; AVX512VL-NEXT: retl
3850 ; AVX512VL-LABEL: test_x86_avx_rcp_ps_256:
3851 ; AVX512VL: ## BB#0:
3852 ; AVX512VL-NEXT: vrcp14ps %ymm0, %ymm0
3853 ; AVX512VL-NEXT: retl
3866 ; AVX512VL-LABEL: test_x86_avx_round_pd_256:
3867 ; AVX512VL: ## BB#0:
3868 ; AVX512VL-NEXT: vroundpd $7, %ymm0, %ymm0
3869 ; AVX512VL-NEXT: retl
3882 ; AVX512VL-LABEL: test_x86_avx_round_ps_256:
3883 ; AVX512VL: ## BB#0:
3884 ; AVX512VL-NEXT: vroundps $7, %ymm0, %ymm0
3885 ; AVX512VL-NEXT: retl
3898 ; AVX512VL-LABEL: test_x86_avx_rsqrt_ps_256:
3899 ; AVX512VL: ## BB#0:
3900 ; AVX512VL-NEXT: vrsqrt14ps %ymm0, %ymm0
3901 ; AVX512VL-NEXT: retl
3914 ; AVX512VL-LABEL: test_x86_avx_sqrt_pd_256:
3915 ; AVX512VL: ## BB#0:
3916 ; AVX512VL-NEXT: vsqrtpd %ymm0, %ymm0
3917 ; AVX512VL-NEXT: retl
3930 ; AVX512VL-LABEL: test_x86_avx_sqrt_ps_256:
3931 ; AVX512VL: ## BB#0:
3932 ; AVX512VL-NEXT: vsqrtps %ymm0, %ymm0
3933 ; AVX512VL-NEXT: retl
3947 ; AVX512VL-LABEL: test_x86_avx_vbroadcastf128_pd_256:
3948 ; AVX512VL: ## BB#0:
3949 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
3950 ; AVX512VL-NEXT: vbroadcastf128 {{.*#+}} ymm0 = mem[0,1,0,1]
3951 ; AVX512VL-NEXT: retl
3965 ; AVX512VL-LABEL: test_x86_avx_vbroadcastf128_ps_256:
3966 ; AVX512VL: ## BB#0:
3967 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
3968 ; AVX512VL-NEXT: vbroadcastf128 {{.*#+}} ymm0 = mem[0,1,0,1]
3969 ; AVX512VL-NEXT: retl
3982 ; AVX512VL-LABEL: test_x86_avx_vperm2f128_pd_256:
3983 ; AVX512VL: ## BB#0:
3984 ; AVX512VL-NEXT: vperm2f128 {{.*#+}} ymm0 = ymm1[2,3],ymm0[0,1]
3985 ; AVX512VL-NEXT: retl
3998 ; AVX512VL-LABEL: test_x86_avx_vperm2f128_ps_256:
3999 ; AVX512VL: ## BB#0:
4000 ; AVX512VL-NEXT: vperm2f128 {{.*#+}} ymm0 = ymm1[2,3],ymm0[0,1]
4001 ; AVX512VL-NEXT: retl
4014 ; AVX512VL-LABEL: test_x86_avx_vperm2f128_si_256:
4015 ; AVX512VL: ## BB#0:
4016 ; AVX512VL-NEXT: vperm2f128 {{.*#+}} ymm0 = ymm1[2,3],ymm0[0,1]
4017 ; AVX512VL-NEXT: retl
4030 ; AVX512VL-LABEL: test_x86_avx_vpermilvar_pd:
4031 ; AVX512VL: ## BB#0:
4032 ; AVX512VL-NEXT: vpermilpd %xmm1, %xmm0, %xmm0
4033 ; AVX512VL-NEXT: retl
4046 ; AVX512VL-LABEL: test_x86_avx_vpermilvar_pd_256:
4047 ; AVX512VL: ## BB#0:
4048 ; AVX512VL-NEXT: vpermilpd %ymm1, %ymm0, %ymm0
4049 ; AVX512VL-NEXT: retl
4061 ; AVX512VL-LABEL: test_x86_avx_vpermilvar_pd_256_2:
4062 ; AVX512VL: ## BB#0:
4063 ; AVX512VL-NEXT: vpermilpd {{.*#+}} ymm0 = ymm0[1,0,2,3]
4064 ; AVX512VL-NEXT: retl
4075 ; AVX512VL-LABEL: test_x86_avx_vpermilvar_ps:
4076 ; AVX512VL: ## BB#0:
4077 ; AVX512VL-NEXT: vpermilps %xmm1, %xmm0, %xmm0
4078 ; AVX512VL-NEXT: retl
4089 ; AVX512VL-LABEL: test_x86_avx_vpermilvar_ps_load:
4090 ; AVX512VL: ## BB#0:
4091 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
4092 ; AVX512VL-NEXT: vpermilps (%eax), %xmm0, %xmm0
4093 ; AVX512VL-NEXT: retl
4107 ; AVX512VL-LABEL: test_x86_avx_vpermilvar_ps_256:
4108 ; AVX512VL: ## BB#0:
4109 ; AVX512VL-NEXT: vpermilps %ymm1, %ymm0, %ymm0
4110 ; AVX512VL-NEXT: retl
4125 ; AVX512VL-LABEL: test_x86_avx_vtestc_pd:
4126 ; AVX512VL: ## BB#0:
4127 ; AVX512VL-NEXT: vtestpd %xmm1, %xmm0
4128 ; AVX512VL-NEXT: sbbl %eax, %eax
4129 ; AVX512VL-NEXT: andl $1, %eax
4130 ; AVX512VL-NEXT: retl
4146 ; AVX512VL-LABEL: test_x86_avx_vtestc_pd_256:
4147 ; AVX512VL: ## BB#0:
4148 ; AVX512VL-NEXT: vtestpd %ymm1, %ymm0
4149 ; AVX512VL-NEXT: sbbl %eax, %eax
4150 ; AVX512VL-NEXT: andl $1, %eax
4151 ; AVX512VL-NEXT: retl
4166 ; AVX512VL-LABEL: test_x86_avx_vtestc_ps:
4167 ; AVX512VL: ## BB#0:
4168 ; AVX512VL-NEXT: vtestps %xmm1, %xmm0
4169 ; AVX512VL-NEXT: sbbl %eax, %eax
4170 ; AVX512VL-NEXT: andl $1, %eax
4171 ; AVX512VL-NEXT: retl
4187 ; AVX512VL-LABEL: test_x86_avx_vtestc_ps_256:
4188 ; AVX512VL: ## BB#0:
4189 ; AVX512VL-NEXT: vtestps %ymm1, %ymm0
4190 ; AVX512VL-NEXT: sbbl %eax, %eax
4191 ; AVX512VL-NEXT: andl $1, %eax
4192 ; AVX512VL-NEXT: retl
4207 ; AVX512VL-LABEL: test_x86_avx_vtestnzc_pd:
4208 ; AVX512VL: ## BB#0:
4209 ; AVX512VL-NEXT: xorl %eax, %eax
4210 ; AVX512VL-NEXT: vtestpd %xmm1, %xmm0
4211 ; AVX512VL-NEXT: seta %al
4212 ; AVX512VL-NEXT: retl
4228 ; AVX512VL-LABEL: test_x86_avx_vtestnzc_pd_256:
4229 ; AVX512VL: ## BB#0:
4230 ; AVX512VL-NEXT: xorl %eax, %eax
4231 ; AVX512VL-NEXT: vtestpd %ymm1, %ymm0
4232 ; AVX512VL-NEXT: seta %al
4233 ; AVX512VL-NEXT: retl
4248 ; AVX512VL-LABEL: test_x86_avx_vtestnzc_ps:
4249 ; AVX512VL: ## BB#0:
4250 ; AVX512VL-NEXT: xorl %eax, %eax
4251 ; AVX512VL-NEXT: vtestps %xmm1, %xmm0
4252 ; AVX512VL-NEXT: seta %al
4253 ; AVX512VL-NEXT: retl
4269 ; AVX512VL-LABEL: test_x86_avx_vtestnzc_ps_256:
4270 ; AVX512VL: ## BB#0:
4271 ; AVX512VL-NEXT: xorl %eax, %eax
4272 ; AVX512VL-NEXT: vtestps %ymm1, %ymm0
4273 ; AVX512VL-NEXT: seta %al
4274 ; AVX512VL-NEXT: retl
4289 ; AVX512VL-LABEL: test_x86_avx_vtestz_pd:
4290 ; AVX512VL: ## BB#0:
4291 ; AVX512VL-NEXT: xorl %eax, %eax
4292 ; AVX512VL-NEXT: vtestpd %xmm1, %xmm0
4293 ; AVX512VL-NEXT: sete %al
4294 ; AVX512VL-NEXT: retl
4310 ; AVX512VL-LABEL: test_x86_avx_vtestz_pd_256:
4311 ; AVX512VL: ## BB#0:
4312 ; AVX512VL-NEXT: xorl %eax, %eax
4313 ; AVX512VL-NEXT: vtestpd %ymm1, %ymm0
4314 ; AVX512VL-NEXT: sete %al
4315 ; AVX512VL-NEXT: retl
4330 ; AVX512VL-LABEL: test_x86_avx_vtestz_ps:
4331 ; AVX512VL: ## BB#0:
4332 ; AVX512VL-NEXT: xorl %eax, %eax
4333 ; AVX512VL-NEXT: vtestps %xmm1, %xmm0
4334 ; AVX512VL-NEXT: sete %al
4335 ; AVX512VL-NEXT: retl
4351 ; AVX512VL-LABEL: test_x86_avx_vtestz_ps_256:
4352 ; AVX512VL: ## BB#0:
4353 ; AVX512VL-NEXT: xorl %eax, %eax
4354 ; AVX512VL-NEXT: vtestps %ymm1, %ymm0
4355 ; AVX512VL-NEXT: sete %al
4356 ; AVX512VL-NEXT: retl
4369 ; AVX512VL-LABEL: test_x86_avx_vzeroall:
4370 ; AVX512VL: ## BB#0:
4371 ; AVX512VL-NEXT: vzeroall
4372 ; AVX512VL-NEXT: retl
4385 ; AVX512VL-LABEL: test_x86_avx_vzeroupper:
4386 ; AVX512VL: ## BB#0:
4387 ; AVX512VL-NEXT: vzeroupper
4388 ; AVX512VL-NEXT: retl
4406 ; AVX512VL-LABEL: monitor:
4407 ; AVX512VL: ## BB#0:
4408 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %edx
4409 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %ecx
4410 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
4411 ; AVX512VL-NEXT: leal (%eax), %eax
4412 ; AVX512VL-NEXT: monitor
4413 ; AVX512VL-NEXT: retl
4427 ; AVX512VL-LABEL: mwait:
4428 ; AVX512VL: ## BB#0:
4429 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %ecx
4430 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
4431 ; AVX512VL-NEXT: mwait
4432 ; AVX512VL-NEXT: retl
4444 ; AVX512VL-LABEL: sfence:
4445 ; AVX512VL: ## BB#0:
4446 ; AVX512VL-NEXT: sfence
4447 ; AVX512VL-NEXT: retl
4459 ; AVX512VL-LABEL: lfence:
4460 ; AVX512VL: ## BB#0:
4461 ; AVX512VL-NEXT: lfence
4462 ; AVX512VL-NEXT: retl
4474 ; AVX512VL-LABEL: mfence:
4475 ; AVX512VL: ## BB#0:
4476 ; AVX512VL-NEXT: mfence
4477 ; AVX512VL-NEXT: retl
4490 ; AVX512VL-LABEL: clflush:
4491 ; AVX512VL: ## BB#0:
4492 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
4493 ; AVX512VL-NEXT: clflush (%eax)
4494 ; AVX512VL-NEXT: retl
4507 ; AVX512VL-LABEL: crc32_32_8:
4508 ; AVX512VL: ## BB#0:
4509 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
4510 ; AVX512VL-NEXT: crc32b {{[0-9]+}}(%esp), %eax
4511 ; AVX512VL-NEXT: retl
4524 ; AVX512VL-LABEL: crc32_32_16:
4525 ; AVX512VL: ## BB#0:
4526 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
4527 ; AVX512VL-NEXT: crc32w {{[0-9]+}}(%esp), %eax
4528 ; AVX512VL-NEXT: retl
4541 ; AVX512VL-LABEL: crc32_32_32:
4542 ; AVX512VL: ## BB#0:
4543 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
4544 ; AVX512VL-NEXT: crc32l {{[0-9]+}}(%esp), %eax
4545 ; AVX512VL-NEXT: retl
4560 ; AVX512VL-LABEL: movnt_dq:
4561 ; AVX512VL: ## BB#0:
4562 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
4563 ; AVX512VL-NEXT: vpaddq LCPI254_0, %xmm0, %xmm0
4564 ; AVX512VL-NEXT: vmovntdq %ymm0, (%eax)
4565 ; AVX512VL-NEXT: retl
4581 ; AVX512VL-LABEL: movnt_ps:
4582 ; AVX512VL: ## BB#0:
4583 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
4584 ; AVX512VL-NEXT: vmovntps %ymm0, (%eax)
4585 ; AVX512VL-NEXT: retl
4602 ; AVX512VL-LABEL: movnt_pd:
4603 ; AVX512VL: ## BB#0:
4604 ; AVX512VL-NEXT: movl {{[0-9]+}}(%esp), %eax
4605 ; AVX512VL-NEXT: vpxord %ymm1, %ymm1, %ymm1
4606 ; AVX512VL-NEXT: vaddpd %ymm1, %ymm0, %ymm0
4607 ; AVX512VL-NEXT: vmovntpd %ymm0, (%eax)
4608 ; AVX512VL-NEXT: retl
4623 ; AVX512VL-LABEL: test_x86_pclmulqdq:
4624 ; AVX512VL: ## BB#0:
4625 ; AVX512VL-NEXT: vpclmulqdq $0, %xmm1, %xmm0, %xmm0
4626 ; AVX512VL-NEXT: retl