• Home
  • Raw
  • Download

Lines Matching refs:FMA4

3 …=x86_64-unknown-unknown -mattr=+avx,+fma4,+fma -fp-contract=fast | FileCheck %s --check-prefix=FMA4
4 …riple=x86_64-unknown-unknown -mattr=+avx,+fma4 -fp-contract=fast | FileCheck %s --check-prefix=FMA4
18 ; FMA4-LABEL: test_16f32_fmadd:
19 ; FMA4: # BB#0:
20 ; FMA4-NEXT: vfmaddps %ymm4, %ymm2, %ymm0, %ymm0
21 ; FMA4-NEXT: vfmaddps %ymm5, %ymm3, %ymm1, %ymm1
22 ; FMA4-NEXT: retq
40 ; FMA4-LABEL: test_8f64_fmadd:
41 ; FMA4: # BB#0:
42 ; FMA4-NEXT: vfmaddpd %ymm4, %ymm2, %ymm0, %ymm0
43 ; FMA4-NEXT: vfmaddpd %ymm5, %ymm3, %ymm1, %ymm1
44 ; FMA4-NEXT: retq
66 ; FMA4-LABEL: test_16f32_fmsub:
67 ; FMA4: # BB#0:
68 ; FMA4-NEXT: vfmsubps %ymm4, %ymm2, %ymm0, %ymm0
69 ; FMA4-NEXT: vfmsubps %ymm5, %ymm3, %ymm1, %ymm1
70 ; FMA4-NEXT: retq
88 ; FMA4-LABEL: test_8f64_fmsub:
89 ; FMA4: # BB#0:
90 ; FMA4-NEXT: vfmsubpd %ymm4, %ymm2, %ymm0, %ymm0
91 ; FMA4-NEXT: vfmsubpd %ymm5, %ymm3, %ymm1, %ymm1
92 ; FMA4-NEXT: retq
114 ; FMA4-LABEL: test_16f32_fnmadd:
115 ; FMA4: # BB#0:
116 ; FMA4-NEXT: vfnmaddps %ymm4, %ymm2, %ymm0, %ymm0
117 ; FMA4-NEXT: vfnmaddps %ymm5, %ymm3, %ymm1, %ymm1
118 ; FMA4-NEXT: retq
136 ; FMA4-LABEL: test_8f64_fnmadd:
137 ; FMA4: # BB#0:
138 ; FMA4-NEXT: vfnmaddpd %ymm4, %ymm2, %ymm0, %ymm0
139 ; FMA4-NEXT: vfnmaddpd %ymm5, %ymm3, %ymm1, %ymm1
140 ; FMA4-NEXT: retq
162 ; FMA4-LABEL: test_16f32_fnmsub:
163 ; FMA4: # BB#0:
164 ; FMA4-NEXT: vfnmsubps %ymm4, %ymm2, %ymm0, %ymm0
165 ; FMA4-NEXT: vfnmsubps %ymm5, %ymm3, %ymm1, %ymm1
166 ; FMA4-NEXT: retq
185 ; FMA4-LABEL: test_8f64_fnmsub:
186 ; FMA4: # BB#0:
187 ; FMA4-NEXT: vfnmsubpd %ymm4, %ymm2, %ymm0, %ymm0
188 ; FMA4-NEXT: vfnmsubpd %ymm5, %ymm3, %ymm1, %ymm1
189 ; FMA4-NEXT: retq
212 ; FMA4-LABEL: test_16f32_fmadd_load:
213 ; FMA4: # BB#0:
214 ; FMA4-NEXT: vfmaddps %ymm2, (%rdi), %ymm0, %ymm0
215 ; FMA4-NEXT: vfmaddps %ymm3, 32(%rdi), %ymm1, %ymm1
216 ; FMA4-NEXT: retq
237 ; FMA4-LABEL: test_8f64_fmsub_load:
238 ; FMA4: # BB#0:
239 ; FMA4-NEXT: vfmsubpd %ymm2, (%rdi), %ymm0, %ymm0
240 ; FMA4-NEXT: vfmsubpd %ymm3, 32(%rdi), %ymm1, %ymm1
241 ; FMA4-NEXT: retq
266 ; FMA4-LABEL: test_v16f32_mul_add_x_one_y:
267 ; FMA4: # BB#0:
268 ; FMA4-NEXT: vfmaddps %ymm2, %ymm2, %ymm0, %ymm0
269 ; FMA4-NEXT: vfmaddps %ymm3, %ymm3, %ymm1, %ymm1
270 ; FMA4-NEXT: retq
288 ; FMA4-LABEL: test_v8f64_mul_y_add_x_one:
289 ; FMA4: # BB#0:
290 ; FMA4-NEXT: vfmaddpd %ymm2, %ymm2, %ymm0, %ymm0
291 ; FMA4-NEXT: vfmaddpd %ymm3, %ymm3, %ymm1, %ymm1
292 ; FMA4-NEXT: retq
310 ; FMA4-LABEL: test_v16f32_mul_add_x_negone_y:
311 ; FMA4: # BB#0:
312 ; FMA4-NEXT: vfmsubps %ymm2, %ymm2, %ymm0, %ymm0
313 ; FMA4-NEXT: vfmsubps %ymm3, %ymm3, %ymm1, %ymm1
314 ; FMA4-NEXT: retq
332 ; FMA4-LABEL: test_v8f64_mul_y_add_x_negone:
333 ; FMA4: # BB#0:
334 ; FMA4-NEXT: vfmsubpd %ymm2, %ymm2, %ymm0, %ymm0
335 ; FMA4-NEXT: vfmsubpd %ymm3, %ymm3, %ymm1, %ymm1
336 ; FMA4-NEXT: retq
354 ; FMA4-LABEL: test_v16f32_mul_sub_one_x_y:
355 ; FMA4: # BB#0:
356 ; FMA4-NEXT: vfnmaddps %ymm2, %ymm2, %ymm0, %ymm0
357 ; FMA4-NEXT: vfnmaddps %ymm3, %ymm3, %ymm1, %ymm1
358 ; FMA4-NEXT: retq
376 ; FMA4-LABEL: test_v8f64_mul_y_sub_one_x:
377 ; FMA4: # BB#0:
378 ; FMA4-NEXT: vfnmaddpd %ymm2, %ymm2, %ymm0, %ymm0
379 ; FMA4-NEXT: vfnmaddpd %ymm3, %ymm3, %ymm1, %ymm1
380 ; FMA4-NEXT: retq
398 ; FMA4-LABEL: test_v16f32_mul_sub_negone_x_y:
399 ; FMA4: # BB#0:
400 ; FMA4-NEXT: vfnmsubps %ymm2, %ymm2, %ymm0, %ymm0
401 ; FMA4-NEXT: vfnmsubps %ymm3, %ymm3, %ymm1, %ymm1
402 ; FMA4-NEXT: retq
420 ; FMA4-LABEL: test_v8f64_mul_y_sub_negone_x:
421 ; FMA4: # BB#0:
422 ; FMA4-NEXT: vfnmsubpd %ymm2, %ymm2, %ymm0, %ymm0
423 ; FMA4-NEXT: vfnmsubpd %ymm3, %ymm3, %ymm1, %ymm1
424 ; FMA4-NEXT: retq
442 ; FMA4-LABEL: test_v16f32_mul_sub_x_one_y:
443 ; FMA4: # BB#0:
444 ; FMA4-NEXT: vfmsubps %ymm2, %ymm2, %ymm0, %ymm0
445 ; FMA4-NEXT: vfmsubps %ymm3, %ymm3, %ymm1, %ymm1
446 ; FMA4-NEXT: retq
464 ; FMA4-LABEL: test_v8f64_mul_y_sub_x_one:
465 ; FMA4: # BB#0:
466 ; FMA4-NEXT: vfmsubpd %ymm2, %ymm2, %ymm0, %ymm0
467 ; FMA4-NEXT: vfmsubpd %ymm3, %ymm3, %ymm1, %ymm1
468 ; FMA4-NEXT: retq
486 ; FMA4-LABEL: test_v16f32_mul_sub_x_negone_y:
487 ; FMA4: # BB#0:
488 ; FMA4-NEXT: vfmaddps %ymm2, %ymm2, %ymm0, %ymm0
489 ; FMA4-NEXT: vfmaddps %ymm3, %ymm3, %ymm1, %ymm1
490 ; FMA4-NEXT: retq
508 ; FMA4-LABEL: test_v8f64_mul_y_sub_x_negone:
509 ; FMA4: # BB#0:
510 ; FMA4-NEXT: vfmaddpd %ymm2, %ymm2, %ymm0, %ymm0
511 ; FMA4-NEXT: vfmaddpd %ymm3, %ymm3, %ymm1, %ymm1
512 ; FMA4-NEXT: retq
536 ; FMA4-LABEL: test_v16f32_interp:
537 ; FMA4: # BB#0:
538 ; FMA4-NEXT: vfnmaddps %ymm3, %ymm3, %ymm5, %ymm3
539 ; FMA4-NEXT: vfnmaddps %ymm2, %ymm2, %ymm4, %ymm2
540 ; FMA4-NEXT: vfmaddps %ymm2, %ymm4, %ymm0, %ymm0
541 ; FMA4-NEXT: vfmaddps %ymm3, %ymm5, %ymm1, %ymm1
542 ; FMA4-NEXT: retq
566 ; FMA4-LABEL: test_v8f64_interp:
567 ; FMA4: # BB#0:
568 ; FMA4-NEXT: vfnmaddpd %ymm3, %ymm3, %ymm5, %ymm3
569 ; FMA4-NEXT: vfnmaddpd %ymm2, %ymm2, %ymm4, %ymm2
570 ; FMA4-NEXT: vfmaddpd %ymm2, %ymm4, %ymm0, %ymm0
571 ; FMA4-NEXT: vfmaddpd %ymm3, %ymm5, %ymm1, %ymm1
572 ; FMA4-NEXT: retq
598 ; FMA4-LABEL: test_v16f32_fneg_fmadd:
599 ; FMA4: # BB#0:
600 ; FMA4-NEXT: vfnmsubps %ymm4, %ymm2, %ymm0, %ymm0
601 ; FMA4-NEXT: vfnmsubps %ymm5, %ymm3, %ymm1, %ymm1
602 ; FMA4-NEXT: retq
621 ; FMA4-LABEL: test_v8f64_fneg_fmsub:
622 ; FMA4: # BB#0:
623 ; FMA4-NEXT: vfnmaddpd %ymm4, %ymm2, %ymm0, %ymm0
624 ; FMA4-NEXT: vfnmaddpd %ymm5, %ymm3, %ymm1, %ymm1
625 ; FMA4-NEXT: retq
644 ; FMA4-LABEL: test_v16f32_fneg_fnmadd:
645 ; FMA4: # BB#0:
646 ; FMA4-NEXT: vfmsubps %ymm4, %ymm2, %ymm0, %ymm0
647 ; FMA4-NEXT: vfmsubps %ymm5, %ymm3, %ymm1, %ymm1
648 ; FMA4-NEXT: retq
668 ; FMA4-LABEL: test_v8f64_fneg_fnmsub:
669 ; FMA4: # BB#0:
670 ; FMA4-NEXT: vfmaddpd %ymm4, %ymm2, %ymm0, %ymm0
671 ; FMA4-NEXT: vfmaddpd %ymm5, %ymm3, %ymm1, %ymm1
672 ; FMA4-NEXT: retq
696 ; FMA4-LABEL: test_v16f32_fma_x_c1_fmul_x_c2:
697 ; FMA4: # BB#0:
698 ; FMA4-NEXT: vmulps {{.*}}(%rip), %ymm0, %ymm0
699 ; FMA4-NEXT: vmulps {{.*}}(%rip), %ymm1, %ymm1
700 ; FMA4-NEXT: retq
723 ; FMA4-LABEL: test_v16f32_fma_fmul_x_c1_c2_y:
724 ; FMA4: # BB#0:
725 ; FMA4-NEXT: vfmaddps %ymm2, {{.*}}(%rip), %ymm0, %ymm0
726 ; FMA4-NEXT: vfmaddps %ymm3, {{.*}}(%rip), %ymm1, %ymm1
727 ; FMA4-NEXT: retq
750 ; FMA4-LABEL: test_v16f32_fneg_fmul:
751 ; FMA4: # BB#0:
752 ; FMA4-NEXT: vxorps %ymm4, %ymm4, %ymm4
753 ; FMA4-NEXT: vfnmsubps %ymm4, %ymm2, %ymm0, %ymm0
754 ; FMA4-NEXT: vfnmsubps %ymm4, %ymm3, %ymm1, %ymm1
755 ; FMA4-NEXT: retq
775 ; FMA4-LABEL: test_v8f64_fneg_fmul:
776 ; FMA4: # BB#0:
777 ; FMA4-NEXT: vxorpd %ymm4, %ymm4, %ymm4
778 ; FMA4-NEXT: vfnmsubpd %ymm4, %ymm2, %ymm0, %ymm0
779 ; FMA4-NEXT: vfnmsubpd %ymm4, %ymm3, %ymm1, %ymm1
780 ; FMA4-NEXT: retq
802 ; FMA4-LABEL: test_v8f64_fneg_fmul_no_nsz:
803 ; FMA4: # BB#0:
804 ; FMA4-NEXT: vmulpd %ymm3, %ymm1, %ymm1
805 ; FMA4-NEXT: vmulpd %ymm2, %ymm0, %ymm0
806 ; FMA4-NEXT: vmovapd {{.*#+}} ymm2 = [9223372036854775808,9223372036854775808,922337203685477580…
807 ; FMA4-NEXT: vxorpd %ymm2, %ymm0, %ymm0
808 ; FMA4-NEXT: vxorpd %ymm2, %ymm1, %ymm1
809 ; FMA4-NEXT: retq