• Home
  • Raw
  • Download

Lines Matching refs:SSE

1 ; RUN: llc -mcpu=x86-64 -mattr=+sse2 < %s | FileCheck --check-prefix=SSE --check-prefix=SSE2 %s
2 ; RUN: llc -mcpu=x86-64 -mattr=+sse4.1 < %s | FileCheck --check-prefix=SSE --check-prefix=SSE41 %s
8 ; instructions immediately after SSE scalar fp instructions
12 ; SSE-LABEL: test_add_ss:
13 ; SSE: # BB#0:
14 ; SSE-NEXT: addss %xmm1, %xmm0
15 ; SSE-NEXT: retq
29 ; SSE-LABEL: test_sub_ss:
30 ; SSE: # BB#0:
31 ; SSE-NEXT: subss %xmm1, %xmm0
32 ; SSE-NEXT: retq
46 ; SSE-LABEL: test_mul_ss:
47 ; SSE: # BB#0:
48 ; SSE-NEXT: mulss %xmm1, %xmm0
49 ; SSE-NEXT: retq
63 ; SSE-LABEL: test_div_ss:
64 ; SSE: # BB#0:
65 ; SSE-NEXT: divss %xmm1, %xmm0
66 ; SSE-NEXT: retq
80 ; SSE-LABEL: test_add_sd:
81 ; SSE: # BB#0:
82 ; SSE-NEXT: addsd %xmm1, %xmm0
83 ; SSE-NEXT: retq
97 ; SSE-LABEL: test_sub_sd:
98 ; SSE: # BB#0:
99 ; SSE-NEXT: subsd %xmm1, %xmm0
100 ; SSE-NEXT: retq
114 ; SSE-LABEL: test_mul_sd:
115 ; SSE: # BB#0:
116 ; SSE-NEXT: mulsd %xmm1, %xmm0
117 ; SSE-NEXT: retq
131 ; SSE-LABEL: test_div_sd:
132 ; SSE: # BB#0:
133 ; SSE-NEXT: divsd %xmm1, %xmm0
134 ; SSE-NEXT: retq
148 ; SSE-LABEL: test2_add_ss:
149 ; SSE: # BB#0:
150 ; SSE-NEXT: addss %xmm0, %xmm1
151 ; SSE-NEXT: movaps %xmm1, %xmm0
152 ; SSE-NEXT: retq
166 ; SSE-LABEL: test2_sub_ss:
167 ; SSE: # BB#0:
168 ; SSE-NEXT: subss %xmm0, %xmm1
169 ; SSE-NEXT: movaps %xmm1, %xmm0
170 ; SSE-NEXT: retq
184 ; SSE-LABEL: test2_mul_ss:
185 ; SSE: # BB#0:
186 ; SSE-NEXT: mulss %xmm0, %xmm1
187 ; SSE-NEXT: movaps %xmm1, %xmm0
188 ; SSE-NEXT: retq
202 ; SSE-LABEL: test2_div_ss:
203 ; SSE: # BB#0:
204 ; SSE-NEXT: divss %xmm0, %xmm1
205 ; SSE-NEXT: movaps %xmm1, %xmm0
206 ; SSE-NEXT: retq
220 ; SSE-LABEL: test2_add_sd:
221 ; SSE: # BB#0:
222 ; SSE-NEXT: addsd %xmm0, %xmm1
223 ; SSE-NEXT: movaps %xmm1, %xmm0
224 ; SSE-NEXT: retq
238 ; SSE-LABEL: test2_sub_sd:
239 ; SSE: # BB#0:
240 ; SSE-NEXT: subsd %xmm0, %xmm1
241 ; SSE-NEXT: movaps %xmm1, %xmm0
242 ; SSE-NEXT: retq
256 ; SSE-LABEL: test2_mul_sd:
257 ; SSE: # BB#0:
258 ; SSE-NEXT: mulsd %xmm0, %xmm1
259 ; SSE-NEXT: movaps %xmm1, %xmm0
260 ; SSE-NEXT: retq
274 ; SSE-LABEL: test2_div_sd:
275 ; SSE: # BB#0:
276 ; SSE-NEXT: divsd %xmm0, %xmm1
277 ; SSE-NEXT: movaps %xmm1, %xmm0
278 ; SSE-NEXT: retq
292 ; SSE-LABEL: test_multiple_add_ss:
293 ; SSE: # BB#0:
294 ; SSE-NEXT: addss %xmm0, %xmm1
295 ; SSE-NEXT: addss %xmm1, %xmm0
296 ; SSE-NEXT: retq
312 ; SSE-LABEL: test_multiple_sub_ss:
313 ; SSE: # BB#0:
314 ; SSE-NEXT: movaps %xmm0, %xmm2
315 ; SSE-NEXT: subss %xmm1, %xmm2
316 ; SSE-NEXT: subss %xmm2, %xmm0
317 ; SSE-NEXT: retq
333 ; SSE-LABEL: test_multiple_mul_ss:
334 ; SSE: # BB#0:
335 ; SSE-NEXT: mulss %xmm0, %xmm1
336 ; SSE-NEXT: mulss %xmm1, %xmm0
337 ; SSE-NEXT: retq
353 ; SSE-LABEL: test_multiple_div_ss:
354 ; SSE: # BB#0:
355 ; SSE-NEXT: movaps %xmm0, %xmm2
356 ; SSE-NEXT: divss %xmm1, %xmm2
357 ; SSE-NEXT: divss %xmm2, %xmm0
358 ; SSE-NEXT: retq
377 ; SSE-LABEL: blend_add_ss:
378 ; SSE: # BB#0:
379 ; SSE-NEXT: addss %xmm1, %xmm0
380 ; SSE-NEXT: retq
395 ; SSE-LABEL: blend_sub_ss:
396 ; SSE: # BB#0:
397 ; SSE-NEXT: subss %xmm1, %xmm0
398 ; SSE-NEXT: retq
413 ; SSE-LABEL: blend_mul_ss:
414 ; SSE: # BB#0:
415 ; SSE-NEXT: mulss %xmm1, %xmm0
416 ; SSE-NEXT: retq
431 ; SSE-LABEL: blend_div_ss:
432 ; SSE: # BB#0:
433 ; SSE-NEXT: divss %xmm1, %xmm0
434 ; SSE-NEXT: retq
449 ; SSE-LABEL: blend_add_sd:
450 ; SSE: # BB#0:
451 ; SSE-NEXT: addsd %xmm1, %xmm0
452 ; SSE-NEXT: retq
467 ; SSE-LABEL: blend_sub_sd:
468 ; SSE: # BB#0:
469 ; SSE-NEXT: subsd %xmm1, %xmm0
470 ; SSE-NEXT: retq
485 ; SSE-LABEL: blend_mul_sd:
486 ; SSE: # BB#0:
487 ; SSE-NEXT: mulsd %xmm1, %xmm0
488 ; SSE-NEXT: retq
503 ; SSE-LABEL: blend_div_sd:
504 ; SSE: # BB#0:
505 ; SSE-NEXT: divsd %xmm1, %xmm0
506 ; SSE-NEXT: retq
520 ; Ensure that the backend selects SSE/AVX scalar fp instructions
524 ; SSE-LABEL: insert_test_add_ss:
525 ; SSE: # BB#0:
526 ; SSE-NEXT: addss %xmm1, %xmm0
527 ; SSE-NEXT: retq
539 ; SSE-LABEL: insert_test_sub_ss:
540 ; SSE: # BB#0:
541 ; SSE-NEXT: subss %xmm1, %xmm0
542 ; SSE-NEXT: retq
554 ; SSE-LABEL: insert_test_mul_ss:
555 ; SSE: # BB#0:
556 ; SSE-NEXT: mulss %xmm1, %xmm0
557 ; SSE-NEXT: retq
569 ; SSE-LABEL: insert_test_div_ss:
570 ; SSE: # BB#0:
571 ; SSE-NEXT: divss %xmm1, %xmm0
572 ; SSE-NEXT: retq
584 ; SSE-LABEL: insert_test_add_sd:
585 ; SSE: # BB#0:
586 ; SSE-NEXT: addsd %xmm1, %xmm0
587 ; SSE-NEXT: retq
599 ; SSE-LABEL: insert_test_sub_sd:
600 ; SSE: # BB#0:
601 ; SSE-NEXT: subsd %xmm1, %xmm0
602 ; SSE-NEXT: retq
614 ; SSE-LABEL: insert_test_mul_sd:
615 ; SSE: # BB#0:
616 ; SSE-NEXT: mulsd %xmm1, %xmm0
617 ; SSE-NEXT: retq
629 ; SSE-LABEL: insert_test_div_sd:
630 ; SSE: # BB#0:
631 ; SSE-NEXT: divsd %xmm1, %xmm0
632 ; SSE-NEXT: retq
644 ; SSE-LABEL: insert_test2_add_ss:
645 ; SSE: # BB#0:
646 ; SSE-NEXT: addss %xmm0, %xmm1
647 ; SSE-NEXT: movaps %xmm1, %xmm0
648 ; SSE-NEXT: retq
660 ; SSE-LABEL: insert_test2_sub_ss:
661 ; SSE: # BB#0:
662 ; SSE-NEXT: subss %xmm0, %xmm1
663 ; SSE-NEXT: movaps %xmm1, %xmm0
664 ; SSE-NEXT: retq
676 ; SSE-LABEL: insert_test2_mul_ss:
677 ; SSE: # BB#0:
678 ; SSE-NEXT: mulss %xmm0, %xmm1
679 ; SSE-NEXT: movaps %xmm1, %xmm0
680 ; SSE-NEXT: retq
692 ; SSE-LABEL: insert_test2_div_ss:
693 ; SSE: # BB#0:
694 ; SSE-NEXT: divss %xmm0, %xmm1
695 ; SSE-NEXT: movaps %xmm1, %xmm0
696 ; SSE-NEXT: retq
708 ; SSE-LABEL: insert_test2_add_sd:
709 ; SSE: # BB#0:
710 ; SSE-NEXT: addsd %xmm0, %xmm1
711 ; SSE-NEXT: movaps %xmm1, %xmm0
712 ; SSE-NEXT: retq
724 ; SSE-LABEL: insert_test2_sub_sd:
725 ; SSE: # BB#0:
726 ; SSE-NEXT: subsd %xmm0, %xmm1
727 ; SSE-NEXT: movaps %xmm1, %xmm0
728 ; SSE-NEXT: retq
740 ; SSE-LABEL: insert_test2_mul_sd:
741 ; SSE: # BB#0:
742 ; SSE-NEXT: mulsd %xmm0, %xmm1
743 ; SSE-NEXT: movaps %xmm1, %xmm0
744 ; SSE-NEXT: retq
756 ; SSE-LABEL: insert_test2_div_sd:
757 ; SSE: # BB#0:
758 ; SSE-NEXT: divsd %xmm0, %xmm1
759 ; SSE-NEXT: movaps %xmm1, %xmm0
760 ; SSE-NEXT: retq
772 ; SSE-LABEL: insert_test3_add_ss:
773 ; SSE: # BB#0:
774 ; SSE-NEXT: addss %xmm1, %xmm0
775 ; SSE-NEXT: retq
787 ; SSE-LABEL: insert_test3_sub_ss:
788 ; SSE: # BB#0:
789 ; SSE-NEXT: subss %xmm1, %xmm0
790 ; SSE-NEXT: retq
802 ; SSE-LABEL: insert_test3_mul_ss:
803 ; SSE: # BB#0:
804 ; SSE-NEXT: mulss %xmm1, %xmm0
805 ; SSE-NEXT: retq
817 ; SSE-LABEL: insert_test3_div_ss:
818 ; SSE: # BB#0:
819 ; SSE-NEXT: divss %xmm1, %xmm0
820 ; SSE-NEXT: retq
832 ; SSE-LABEL: insert_test3_add_sd:
833 ; SSE: # BB#0:
834 ; SSE-NEXT: addsd %xmm1, %xmm0
835 ; SSE-NEXT: retq
847 ; SSE-LABEL: insert_test3_sub_sd:
848 ; SSE: # BB#0:
849 ; SSE-NEXT: subsd %xmm1, %xmm0
850 ; SSE-NEXT: retq
862 ; SSE-LABEL: insert_test3_mul_sd:
863 ; SSE: # BB#0:
864 ; SSE-NEXT: mulsd %xmm1, %xmm0
865 ; SSE-NEXT: retq
877 ; SSE-LABEL: insert_test3_div_sd:
878 ; SSE: # BB#0:
879 ; SSE-NEXT: divsd %xmm1, %xmm0
880 ; SSE-NEXT: retq
892 ; SSE-LABEL: insert_test4_add_ss:
893 ; SSE: # BB#0:
894 ; SSE-NEXT: addss %xmm0, %xmm1
895 ; SSE-NEXT: movaps %xmm1, %xmm0
896 ; SSE-NEXT: retq
908 ; SSE-LABEL: insert_test4_sub_ss:
909 ; SSE: # BB#0:
910 ; SSE-NEXT: subss %xmm0, %xmm1
911 ; SSE-NEXT: movaps %xmm1, %xmm0
912 ; SSE-NEXT: retq
924 ; SSE-LABEL: insert_test4_mul_ss:
925 ; SSE: # BB#0:
926 ; SSE-NEXT: mulss %xmm0, %xmm1
927 ; SSE-NEXT: movaps %xmm1, %xmm0
928 ; SSE-NEXT: retq
940 ; SSE-LABEL: insert_test4_div_ss:
941 ; SSE: # BB#0:
942 ; SSE-NEXT: divss %xmm0, %xmm1
943 ; SSE-NEXT: movaps %xmm1, %xmm0
944 ; SSE-NEXT: retq
956 ; SSE-LABEL: insert_test4_add_sd:
957 ; SSE: # BB#0:
958 ; SSE-NEXT: addsd %xmm0, %xmm1
959 ; SSE-NEXT: movaps %xmm1, %xmm0
960 ; SSE-NEXT: retq
972 ; SSE-LABEL: insert_test4_sub_sd:
973 ; SSE: # BB#0:
974 ; SSE-NEXT: subsd %xmm0, %xmm1
975 ; SSE-NEXT: movaps %xmm1, %xmm0
976 ; SSE-NEXT: retq
988 ; SSE-LABEL: insert_test4_mul_sd:
989 ; SSE: # BB#0:
990 ; SSE-NEXT: mulsd %xmm0, %xmm1
991 ; SSE-NEXT: movaps %xmm1, %xmm0
992 ; SSE-NEXT: retq
1004 ; SSE-LABEL: insert_test4_div_sd:
1005 ; SSE: # BB#0:
1006 ; SSE-NEXT: divsd %xmm0, %xmm1
1007 ; SSE-NEXT: movaps %xmm1, %xmm0
1008 ; SSE-NEXT: retq