Revert "Refactoring and enhancement to FMA combine."

This reverts commit r234513. It was failing on the bots.

llvm-svn: 234518
diff --git a/llvm/test/CodeGen/PowerPC/fma-assoc.ll b/llvm/test/CodeGen/PowerPC/fma-assoc.ll
index 363d7b7..dc1316e 100644
--- a/llvm/test/CodeGen/PowerPC/fma-assoc.ll
+++ b/llvm/test/CodeGen/PowerPC/fma-assoc.ll
@@ -77,159 +77,3 @@
 ; CHECK-VSX-NEXT: blr
 }
 
-define double @test_FMADD_ASSOC_EXT1(float %A, float %B, double %C,
-                                 double %D, double %E) {
-	%F = fmul float %A, %B         ; <float> [#uses=1]
-	%G = fpext float %F to double   ; <double> [#uses=1]
-	%H = fmul double %C, %D         ; <double> [#uses=1]
-	%I = fadd double %H, %G         ; <double> [#uses=1]
-	%J = fadd double %I, %E         ; <double> [#uses=1]
-	ret double %J
-; CHECK-LABEL: test_FMADD_ASSOC_EXT1:
-; CHECK: fmadd
-; CHECK-NEXT: fmadd
-; CHECK-NEXT: blr
-
-; CHECK-VSX-LABEL: test_FMADD_ASSOC_EXT1:
-; CHECK-VSX: xsmaddmdp
-; CHECK-VSX-NEXT: xsmaddadp
-; CHECK-VSX-NEXT: blr
-}
-
-define double @test_FMADD_ASSOC_EXT2(float %A, float %B, float %C,
-                                 float %D, double %E) {
-	%F = fmul float %A, %B         ; <float> [#uses=1]
-	%G = fmul float %C, %D         ; <float> [#uses=1]
-	%H = fadd float %F, %G         ; <float> [#uses=1]
-	%I = fpext float %H to double   ; <double> [#uses=1]
-	%J = fadd double %I, %E         ; <double> [#uses=1]
-	ret double %J
-; CHECK-LABEL: test_FMADD_ASSOC_EXT2:
-; CHECK: fmadd
-; CHECK-NEXT: fmadd
-; CHECK-NEXT: blr
-
-; CHECK-VSX-LABEL: test_FMADD_ASSOC_EXT2:
-; CHECK-VSX: xsmaddmdp
-; CHECK-VSX-NEXT: xsmaddadp
-; CHECK-VSX-NEXT: fmr
-; CHECK-VSX-NEXT: blr
-}
-
-define double @test_FMADD_ASSOC_EXT3(float %A, float %B, double %C,
-                                 double %D, double %E) {
-	%F = fmul float %A, %B          ; <float> [#uses=1]
-	%G = fpext float %F to double   ; <double> [#uses=1]
-	%H = fmul double %C, %D         ; <double> [#uses=1]
-	%I = fadd double %H, %G         ; <double> [#uses=1]
-	%J = fadd double %E, %I         ; <double> [#uses=1]
-	ret double %J
-; CHECK-LABEL: test_FMADD_ASSOC_EXT3:
-; CHECK: fmadd
-; CHECK-NEXT: fmadd
-; CHECK-NEXT: blr
-
-; CHECK-VSX-LABEL: test_FMADD_ASSOC_EXT3:
-; CHECK-VSX: xsmaddmdp
-; CHECK-VSX-NEXT: xsmaddadp
-; CHECK-VSX-NEXT: blr
-}
-
-define double @test_FMADD_ASSOC_EXT4(float %A, float %B, float %C,
-                                 float %D, double %E) {
-	%F = fmul float %A, %B          ; <float> [#uses=1]
-	%G = fmul float %C, %D          ; <float> [#uses=1]
-	%H = fadd float %F, %G          ; <float> [#uses=1]
-	%I = fpext float %H to double   ; <double> [#uses=1]
-	%J = fadd double %E, %I         ; <double> [#uses=1]
-	ret double %J
-; CHECK-LABEL: test_FMADD_ASSOC_EXT4:
-; CHECK: fmadd
-; CHECK-NEXT: fmadd
-; CHECK-NEXT: blr
-
-; CHECK-VSX-LABEL: test_FMADD_ASSOC_EXT4:
-; CHECK-VSX: xsmaddmdp
-; CHECK-VSX-NEXT: xsmaddadp
-; CHECK-VSX-NEXT: fmr
-; CHECK-VSX-NEXT: blr
-}
-
-define double @test_FMSUB_ASSOC_EXT1(float %A, float %B, double %C,
-                                 double %D, double %E) {
-	%F = fmul float %A, %B          ; <float> [#uses=1]
-	%G = fpext float %F to double   ; <double> [#uses=1]
-	%H = fmul double %C, %D         ; <double> [#uses=1]
-	%I = fadd double %H, %G         ; <double> [#uses=1]
-	%J = fsub double %I, %E         ; <double> [#uses=1]
-	ret double %J
-; CHECK-LABEL: test_FMSUB_ASSOC_EXT1:
-; CHECK: fmsub
-; CHECK-NEXT: fmadd
-; CHECK-NEXT: blr
-
-; CHECK-VSX-LABEL: test_FMSUB_ASSOC_EXT1:
-; CHECK-VSX: xsmsubmdp
-; CHECK-VSX-NEXT: xsmaddadp
-; CHECK-VSX-NEXT: blr
-}
-
-define double @test_FMSUB_ASSOC_EXT2(float %A, float %B, float %C,
-                                 float %D, double %E) {
-	%F = fmul float %A, %B          ; <float> [#uses=1]
-	%G = fmul float %C, %D          ; <float> [#uses=1]
-	%H = fadd float %F, %G          ; <float> [#uses=1]
-	%I = fpext float %H to double   ; <double> [#uses=1]
-	%J = fsub double %I, %E         ; <double> [#uses=1]
-	ret double %J
-; CHECK-LABEL: test_FMSUB_ASSOC_EXT2:
-; CHECK: fmsub
-; CHECK-NEXT: fmadd
-; CHECK-NEXT: blr
-
-; CHECK-VSX-LABEL: test_FMSUB_ASSOC_EXT2:
-; CHECK-VSX: xsmsubmdp
-; CHECK-VSX-NEXT: xsmaddadp
-; CHECK-VSX-NEXT: fmr
-; CHECK-VSX-NEXT: blr
-}
-
-define double @test_FMSUB_ASSOC_EXT3(float %A, float %B, double %C,
-                                 double %D, double %E) {
-	%F = fmul float %A, %B          ; <float> [#uses=1]
-	%G = fpext float %F to double   ; <double> [#uses=1]
-	%H = fmul double %C, %D         ; <double> [#uses=1]
-	%I = fadd double %H, %G         ; <double> [#uses=1]
-	%J = fsub double %E, %I         ; <double> [#uses=1]
-	ret double %J
-; CHECK-LABEL: test_FMSUB_ASSOC_EXT3:
-; CHECK: fnmsub
-; CHECK-NEXT: fnmsub
-; CHECK-NEXT: blr
-
-; CHECK-VSX-LABEL: test_FMSUB_ASSOC_EXT3:
-; CHECK-VSX: xsnmsubmdp
-; CHECK-VSX-NEXT: xsnmsubadp
-; CHECK-VSX-NEXT: fmr
-; CHECK-VSX-NEXT: blr
-}
-
-define double @test_FMSUB_ASSOC_EXT4(float %A, float %B, float %C,
-                                 float %D, double %E) {
-	%F = fmul float %A, %B          ; <float> [#uses=1]
-	%G = fmul float %C, %D          ; <float> [#uses=1]
-	%H = fadd float %F, %G          ; <float> [#uses=1]
-	%I = fpext float %H to double   ; <double> [#uses=1]
-	%J = fsub double %E, %I         ; <double> [#uses=1]
-	ret double %J
-; CHECK-LABEL: test_FMSUB_ASSOC_EXT4:
-; CHECK: fnmsub
-; CHECK-NEXT: fnmsub
-; CHECK-NEXT: blr
-
-; CHECK-VSX-LABEL: test_FMSUB_ASSOC_EXT4:
-; CHECK-VSX: xsnmsubmdp
-; CHECK-VSX-NEXT: xsnmsubadp
-; CHECK-VSX-NEXT: fmr
-; CHECK-VSX-NEXT: blr
-}
\ No newline at end of file
diff --git a/llvm/test/CodeGen/PowerPC/fma-ext.ll b/llvm/test/CodeGen/PowerPC/fma-ext.ll
index 9ab32a6..56825ce 100644
--- a/llvm/test/CodeGen/PowerPC/fma-ext.ll
+++ b/llvm/test/CodeGen/PowerPC/fma-ext.ll
@@ -65,11 +65,13 @@
     %G = fsub double %F, %C         ; <double> [#uses=1]
     ret double %G
 ; CHECK-LABEL: test_FMSUB_EXT3:
-; CHECK: fnmadd
+; CHECK: fneg
+; CHECK-NEXT: fmsub
 ; CHECK-NEXT: blr
                                 
 ; CHECK-VSX-LABEL: test_FMSUB_EXT3:
-; CHECK-VSX: xsnmaddmdp
+; CHECK-VSX: xsnegdp
+; CHECK-VSX-NEXT: xsmsubmdp
 ; CHECK-VSX-NEXT: blr
 }
     
@@ -80,10 +82,12 @@
     %G = fsub double %F, %C         ; <double> [#uses=1]
     ret double %G
 ; CHECK-LABEL: test_FMSUB_EXT4:
-; CHECK: fnmadd
+; CHECK: fneg
+; CHECK-NEXT: fmsub
 ; CHECK-NEXT: blr
                                 
 ; CHECK-VSX-LABEL: test_FMSUB_EXT4:
-; CHECK-VSX: xsnmaddmdp
+; CHECK-VSX: xsnegdp
+; CHECK-VSX-NEXT: xsmsubmdp
 ; CHECK-VSX-NEXT: blr
-}  
+}  
\ No newline at end of file