@@ -620,11 +620,8 @@ define float @fadd_fneg_commute0(float %x, float %y, float %z) {
620
620
621
621
define float @fadd_reduce_sqr_sum_varA (float %a , float %b ) {
622
622
; CHECK-LABEL: @fadd_reduce_sqr_sum_varA(
623
- ; CHECK-NEXT: [[A_SQ:%.*]] = fmul float [[A:%.*]], [[A]]
624
- ; CHECK-NEXT: [[TWO_A:%.*]] = fmul float [[A]], 2.000000e+00
625
- ; CHECK-NEXT: [[TWO_A_PLUS_B:%.*]] = fadd float [[TWO_A]], [[B:%.*]]
626
- ; CHECK-NEXT: [[MUL:%.*]] = fmul float [[TWO_A_PLUS_B]], [[B]]
627
- ; CHECK-NEXT: [[ADD:%.*]] = fadd reassoc nsz float [[MUL]], [[A_SQ]]
623
+ ; CHECK-NEXT: [[TMP1:%.*]] = fadd reassoc nsz float [[A:%.*]], [[B:%.*]]
624
+ ; CHECK-NEXT: [[ADD:%.*]] = fmul reassoc nsz float [[TMP1]], [[TMP1]]
628
625
; CHECK-NEXT: ret float [[ADD]]
629
626
;
630
627
%a_sq = fmul float %a , %a
@@ -637,11 +634,8 @@ define float @fadd_reduce_sqr_sum_varA(float %a, float %b) {
637
634
638
635
define float @fadd_reduce_sqr_sum_varA_order2 (float %a , float %b ) {
639
636
; CHECK-LABEL: @fadd_reduce_sqr_sum_varA_order2(
640
- ; CHECK-NEXT: [[A_SQ:%.*]] = fmul float [[A:%.*]], [[A]]
641
- ; CHECK-NEXT: [[TWO_A:%.*]] = fmul float [[A]], 2.000000e+00
642
- ; CHECK-NEXT: [[TWO_A_PLUS_B:%.*]] = fadd float [[TWO_A]], [[B:%.*]]
643
- ; CHECK-NEXT: [[MUL:%.*]] = fmul float [[TWO_A_PLUS_B]], [[B]]
644
- ; CHECK-NEXT: [[ADD:%.*]] = fadd reassoc nsz float [[A_SQ]], [[MUL]]
637
+ ; CHECK-NEXT: [[TMP1:%.*]] = fadd reassoc nsz float [[A:%.*]], [[B:%.*]]
638
+ ; CHECK-NEXT: [[ADD:%.*]] = fmul reassoc nsz float [[TMP1]], [[TMP1]]
645
639
; CHECK-NEXT: ret float [[ADD]]
646
640
;
647
641
%a_sq = fmul float %a , %a
@@ -654,11 +648,8 @@ define float @fadd_reduce_sqr_sum_varA_order2(float %a, float %b) {
654
648
655
649
define float @fadd_reduce_sqr_sum_varA_order3 (float %a , float %b ) {
656
650
; CHECK-LABEL: @fadd_reduce_sqr_sum_varA_order3(
657
- ; CHECK-NEXT: [[A_SQ:%.*]] = fmul float [[A:%.*]], [[A]]
658
- ; CHECK-NEXT: [[TWO_A:%.*]] = fmul float [[A]], 2.000000e+00
659
- ; CHECK-NEXT: [[TWO_A_PLUS_B:%.*]] = fadd float [[TWO_A]], [[B:%.*]]
660
- ; CHECK-NEXT: [[MUL:%.*]] = fmul float [[TWO_A_PLUS_B]], [[B]]
661
- ; CHECK-NEXT: [[ADD:%.*]] = fadd reassoc nsz float [[MUL]], [[A_SQ]]
651
+ ; CHECK-NEXT: [[TMP1:%.*]] = fadd reassoc nsz float [[A:%.*]], [[B:%.*]]
652
+ ; CHECK-NEXT: [[ADD:%.*]] = fmul reassoc nsz float [[TMP1]], [[TMP1]]
662
653
; CHECK-NEXT: ret float [[ADD]]
663
654
;
664
655
%a_sq = fmul float %a , %a
@@ -671,11 +662,8 @@ define float @fadd_reduce_sqr_sum_varA_order3(float %a, float %b) {
671
662
672
663
define float @fadd_reduce_sqr_sum_varA_order4 (float %a , float %b ) {
673
664
; CHECK-LABEL: @fadd_reduce_sqr_sum_varA_order4(
674
- ; CHECK-NEXT: [[A_SQ:%.*]] = fmul float [[A:%.*]], [[A]]
675
- ; CHECK-NEXT: [[TWO_A:%.*]] = fmul float [[A]], 2.000000e+00
676
- ; CHECK-NEXT: [[TWO_A_PLUS_B:%.*]] = fadd float [[TWO_A]], [[B:%.*]]
677
- ; CHECK-NEXT: [[MUL:%.*]] = fmul float [[TWO_A_PLUS_B]], [[B]]
678
- ; CHECK-NEXT: [[ADD:%.*]] = fadd reassoc nsz float [[MUL]], [[A_SQ]]
665
+ ; CHECK-NEXT: [[TMP1:%.*]] = fadd reassoc nsz float [[A:%.*]], [[B:%.*]]
666
+ ; CHECK-NEXT: [[ADD:%.*]] = fmul reassoc nsz float [[TMP1]], [[TMP1]]
679
667
; CHECK-NEXT: ret float [[ADD]]
680
668
;
681
669
%a_sq = fmul float %a , %a
@@ -688,11 +676,8 @@ define float @fadd_reduce_sqr_sum_varA_order4(float %a, float %b) {
688
676
689
677
define float @fadd_reduce_sqr_sum_varA_order5 (float %a , float %b ) {
690
678
; CHECK-LABEL: @fadd_reduce_sqr_sum_varA_order5(
691
- ; CHECK-NEXT: [[A_SQ:%.*]] = fmul float [[A:%.*]], [[A]]
692
- ; CHECK-NEXT: [[TWO_A:%.*]] = fmul float [[A]], 2.000000e+00
693
- ; CHECK-NEXT: [[TWO_A_PLUS_B:%.*]] = fadd float [[TWO_A]], [[B:%.*]]
694
- ; CHECK-NEXT: [[MUL:%.*]] = fmul float [[TWO_A_PLUS_B]], [[B]]
695
- ; CHECK-NEXT: [[ADD:%.*]] = fadd reassoc nsz float [[MUL]], [[A_SQ]]
679
+ ; CHECK-NEXT: [[TMP1:%.*]] = fadd reassoc nsz float [[A:%.*]], [[B:%.*]]
680
+ ; CHECK-NEXT: [[ADD:%.*]] = fmul reassoc nsz float [[TMP1]], [[TMP1]]
696
681
; CHECK-NEXT: ret float [[ADD]]
697
682
;
698
683
%a_sq = fmul float %a , %a
@@ -705,12 +690,8 @@ define float @fadd_reduce_sqr_sum_varA_order5(float %a, float %b) {
705
690
706
691
define float @fadd_reduce_sqr_sum_varB (float %a , float %b ) {
707
692
; CHECK-LABEL: @fadd_reduce_sqr_sum_varB(
708
- ; CHECK-NEXT: [[A_B:%.*]] = fmul float [[A:%.*]], [[B:%.*]]
709
- ; CHECK-NEXT: [[A_B_2:%.*]] = fmul float [[A_B]], 2.000000e+00
710
- ; CHECK-NEXT: [[A_SQ:%.*]] = fmul float [[A]], [[A]]
711
- ; CHECK-NEXT: [[B_SQ:%.*]] = fmul float [[B]], [[B]]
712
- ; CHECK-NEXT: [[A_SQ_B_SQ:%.*]] = fadd float [[A_SQ]], [[B_SQ]]
713
- ; CHECK-NEXT: [[ADD:%.*]] = fadd reassoc nsz float [[A_B_2]], [[A_SQ_B_SQ]]
693
+ ; CHECK-NEXT: [[TMP1:%.*]] = fadd reassoc nsz float [[A:%.*]], [[B:%.*]]
694
+ ; CHECK-NEXT: [[ADD:%.*]] = fmul reassoc nsz float [[TMP1]], [[TMP1]]
714
695
; CHECK-NEXT: ret float [[ADD]]
715
696
;
716
697
%a_b = fmul float %a , %b
@@ -724,12 +705,8 @@ define float @fadd_reduce_sqr_sum_varB(float %a, float %b) {
724
705
725
706
define float @fadd_reduce_sqr_sum_varB_order1 (float %a , float %b ) {
726
707
; CHECK-LABEL: @fadd_reduce_sqr_sum_varB_order1(
727
- ; CHECK-NEXT: [[A_B:%.*]] = fmul float [[A:%.*]], [[B:%.*]]
728
- ; CHECK-NEXT: [[A_B_2:%.*]] = fmul float [[A_B]], 2.000000e+00
729
- ; CHECK-NEXT: [[A_SQ:%.*]] = fmul float [[A]], [[A]]
730
- ; CHECK-NEXT: [[B_SQ:%.*]] = fmul float [[B]], [[B]]
731
- ; CHECK-NEXT: [[A_SQ_B_SQ:%.*]] = fadd float [[A_SQ]], [[B_SQ]]
732
- ; CHECK-NEXT: [[ADD:%.*]] = fadd reassoc nsz float [[A_SQ_B_SQ]], [[A_B_2]]
708
+ ; CHECK-NEXT: [[TMP1:%.*]] = fadd reassoc nsz float [[A:%.*]], [[B:%.*]]
709
+ ; CHECK-NEXT: [[ADD:%.*]] = fmul reassoc nsz float [[TMP1]], [[TMP1]]
733
710
; CHECK-NEXT: ret float [[ADD]]
734
711
;
735
712
%a_b = fmul float %a , %b
@@ -743,12 +720,8 @@ define float @fadd_reduce_sqr_sum_varB_order1(float %a, float %b) {
743
720
744
721
define float @fadd_reduce_sqr_sum_varB_order2 (float %a , float %b ) {
745
722
; CHECK-LABEL: @fadd_reduce_sqr_sum_varB_order2(
746
- ; CHECK-NEXT: [[A_B:%.*]] = fmul float [[A:%.*]], [[B:%.*]]
747
- ; CHECK-NEXT: [[A_B_2:%.*]] = fmul float [[A_B]], 2.000000e+00
748
- ; CHECK-NEXT: [[A_SQ:%.*]] = fmul float [[A]], [[A]]
749
- ; CHECK-NEXT: [[B_SQ:%.*]] = fmul float [[B]], [[B]]
750
- ; CHECK-NEXT: [[A_SQ_B_SQ:%.*]] = fadd float [[B_SQ]], [[A_SQ]]
751
- ; CHECK-NEXT: [[ADD:%.*]] = fadd reassoc nsz float [[A_B_2]], [[A_SQ_B_SQ]]
723
+ ; CHECK-NEXT: [[TMP1:%.*]] = fadd reassoc nsz float [[A:%.*]], [[B:%.*]]
724
+ ; CHECK-NEXT: [[ADD:%.*]] = fmul reassoc nsz float [[TMP1]], [[TMP1]]
752
725
; CHECK-NEXT: ret float [[ADD]]
753
726
;
754
727
%a_b = fmul float %a , %b
@@ -762,12 +735,8 @@ define float @fadd_reduce_sqr_sum_varB_order2(float %a, float %b) {
762
735
763
736
define float @fadd_reduce_sqr_sum_varB_order3 (float %a , float %b ) {
764
737
; CHECK-LABEL: @fadd_reduce_sqr_sum_varB_order3(
765
- ; CHECK-NEXT: [[A_B:%.*]] = fmul float [[B:%.*]], [[A:%.*]]
766
- ; CHECK-NEXT: [[A_B_2:%.*]] = fmul float [[A_B]], 2.000000e+00
767
- ; CHECK-NEXT: [[A_SQ:%.*]] = fmul float [[A]], [[A]]
768
- ; CHECK-NEXT: [[B_SQ:%.*]] = fmul float [[B]], [[B]]
769
- ; CHECK-NEXT: [[A_SQ_B_SQ:%.*]] = fadd float [[A_SQ]], [[B_SQ]]
770
- ; CHECK-NEXT: [[ADD:%.*]] = fadd reassoc nsz float [[A_B_2]], [[A_SQ_B_SQ]]
738
+ ; CHECK-NEXT: [[TMP1:%.*]] = fadd reassoc nsz float [[B:%.*]], [[A:%.*]]
739
+ ; CHECK-NEXT: [[ADD:%.*]] = fmul reassoc nsz float [[TMP1]], [[TMP1]]
771
740
; CHECK-NEXT: ret float [[ADD]]
772
741
;
773
742
%a_b = fmul float %b , %a
@@ -781,12 +750,8 @@ define float @fadd_reduce_sqr_sum_varB_order3(float %a, float %b) {
781
750
782
751
define float @fadd_reduce_sqr_sum_varB2 (float %a , float %b ) {
783
752
; CHECK-LABEL: @fadd_reduce_sqr_sum_varB2(
784
- ; CHECK-NEXT: [[A_2:%.*]] = fmul float [[A:%.*]], 2.000000e+00
785
- ; CHECK-NEXT: [[A_B_2:%.*]] = fmul float [[A_2]], [[B:%.*]]
786
- ; CHECK-NEXT: [[A_SQ:%.*]] = fmul float [[A]], [[A]]
787
- ; CHECK-NEXT: [[B_SQ:%.*]] = fmul float [[B]], [[B]]
788
- ; CHECK-NEXT: [[A_SQ_B_SQ:%.*]] = fadd float [[A_SQ]], [[B_SQ]]
789
- ; CHECK-NEXT: [[ADD:%.*]] = fadd reassoc nsz float [[A_B_2]], [[A_SQ_B_SQ]]
753
+ ; CHECK-NEXT: [[TMP1:%.*]] = fadd reassoc nsz float [[A:%.*]], [[B:%.*]]
754
+ ; CHECK-NEXT: [[ADD:%.*]] = fmul reassoc nsz float [[TMP1]], [[TMP1]]
790
755
; CHECK-NEXT: ret float [[ADD]]
791
756
;
792
757
%a_2 = fmul float %a , 2 .0
@@ -800,12 +765,8 @@ define float @fadd_reduce_sqr_sum_varB2(float %a, float %b) {
800
765
801
766
define float @fadd_reduce_sqr_sum_varB2_order1 (float %a , float %b ) {
802
767
; CHECK-LABEL: @fadd_reduce_sqr_sum_varB2_order1(
803
- ; CHECK-NEXT: [[A_2:%.*]] = fmul float [[A:%.*]], 2.000000e+00
804
- ; CHECK-NEXT: [[A_B_2:%.*]] = fmul float [[A_2]], [[B:%.*]]
805
- ; CHECK-NEXT: [[A_SQ:%.*]] = fmul float [[A]], [[A]]
806
- ; CHECK-NEXT: [[B_SQ:%.*]] = fmul float [[B]], [[B]]
807
- ; CHECK-NEXT: [[A_SQ_B_SQ:%.*]] = fadd float [[A_SQ]], [[B_SQ]]
808
- ; CHECK-NEXT: [[ADD:%.*]] = fadd reassoc nsz float [[A_SQ_B_SQ]], [[A_B_2]]
768
+ ; CHECK-NEXT: [[TMP1:%.*]] = fadd reassoc nsz float [[A:%.*]], [[B:%.*]]
769
+ ; CHECK-NEXT: [[ADD:%.*]] = fmul reassoc nsz float [[TMP1]], [[TMP1]]
809
770
; CHECK-NEXT: ret float [[ADD]]
810
771
;
811
772
%a_2 = fmul float %a , 2 .0
@@ -819,12 +780,8 @@ define float @fadd_reduce_sqr_sum_varB2_order1(float %a, float %b) {
819
780
820
781
define float @fadd_reduce_sqr_sum_varB2_order2 (float %a , float %b ) {
821
782
; CHECK-LABEL: @fadd_reduce_sqr_sum_varB2_order2(
822
- ; CHECK-NEXT: [[A_2:%.*]] = fmul float [[A:%.*]], 2.000000e+00
823
- ; CHECK-NEXT: [[A_B_2:%.*]] = fmul float [[A_2]], [[B:%.*]]
824
- ; CHECK-NEXT: [[A_SQ:%.*]] = fmul float [[A]], [[A]]
825
- ; CHECK-NEXT: [[B_SQ:%.*]] = fmul float [[B]], [[B]]
826
- ; CHECK-NEXT: [[A_SQ_B_SQ:%.*]] = fadd float [[A_SQ]], [[B_SQ]]
827
- ; CHECK-NEXT: [[ADD:%.*]] = fadd reassoc nsz float [[A_B_2]], [[A_SQ_B_SQ]]
783
+ ; CHECK-NEXT: [[TMP1:%.*]] = fadd reassoc nsz float [[A:%.*]], [[B:%.*]]
784
+ ; CHECK-NEXT: [[ADD:%.*]] = fmul reassoc nsz float [[TMP1]], [[TMP1]]
828
785
; CHECK-NEXT: ret float [[ADD]]
829
786
;
830
787
%a_2 = fmul float %a , 2 .0
@@ -838,12 +795,8 @@ define float @fadd_reduce_sqr_sum_varB2_order2(float %a, float %b) {
838
795
839
796
define float @fadd_reduce_sqr_sum_varB2_order3 (float %a , float %b ) {
840
797
; CHECK-LABEL: @fadd_reduce_sqr_sum_varB2_order3(
841
- ; CHECK-NEXT: [[A_2:%.*]] = fmul float [[A:%.*]], 2.000000e+00
842
- ; CHECK-NEXT: [[A_B_2:%.*]] = fmul float [[A_2]], [[B:%.*]]
843
- ; CHECK-NEXT: [[A_SQ:%.*]] = fmul float [[A]], [[A]]
844
- ; CHECK-NEXT: [[B_SQ:%.*]] = fmul float [[B]], [[B]]
845
- ; CHECK-NEXT: [[A_SQ_B_SQ:%.*]] = fadd float [[A_SQ]], [[B_SQ]]
846
- ; CHECK-NEXT: [[ADD:%.*]] = fadd reassoc nsz float [[A_B_2]], [[A_SQ_B_SQ]]
798
+ ; CHECK-NEXT: [[TMP1:%.*]] = fadd reassoc nsz float [[A:%.*]], [[B:%.*]]
799
+ ; CHECK-NEXT: [[ADD:%.*]] = fmul reassoc nsz float [[TMP1]], [[TMP1]]
847
800
; CHECK-NEXT: ret float [[ADD]]
848
801
;
849
802
%a_2 = fmul float 2 .0 , %a
0 commit comments