aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJim Wilson <wilson@gcc.gnu.org>1993-01-14 11:23:09 -0800
committerJim Wilson <wilson@gcc.gnu.org>1993-01-14 11:23:09 -0800
commit8d2f437448007e2a41b957590a1468e0246b58d5 (patch)
tree0ab61ce84d07176ab98ab7cf7413beea3219a7b8
parent5b485d2c39f2090470aab982739cb0cc71bbeb58 (diff)
downloadgcc-8d2f437448007e2a41b957590a1468e0246b58d5.zip
gcc-8d2f437448007e2a41b957590a1468e0246b58d5.tar.gz
gcc-8d2f437448007e2a41b957590a1468e0246b58d5.tar.bz2
(muldf+1, muldf+2): Add patterns for fsmuld and fdmulq.
From-SVN: r3237
-rw-r--r--gcc/config/sparc/sparc.md16
1 files changed, 16 insertions, 0 deletions
diff --git a/gcc/config/sparc/sparc.md b/gcc/config/sparc/sparc.md
index 9b2ea3e..92714ab 100644
--- a/gcc/config/sparc/sparc.md
+++ b/gcc/config/sparc/sparc.md
@@ -2361,6 +2361,22 @@
"fmuls %1,%2,%0"
[(set_attr "type" "fpmul")])
+(define_insn ""
+ [(set (match_operand:DF 0 "register_operand" "=f")
+ (mult:DF (float_extend:DF (match_operand:SF 1 "register_operand" "f"))
+ (float_extend:DF (match_operand:SF 2 "register_operand" "f"))))]
+ "TARGET_V8 && TARGET_FPU"
+ "fsmuld %1,%2,%0"
+ [(set_attr "type" "fpmul")])
+
+(define_insn ""
+ [(set (match_operand:TF 0 "register_operand" "=f")
+ (mult:TF (float_extend:TF (match_operand:DF 1 "register_operand" "f"))
+ (float_extend:TF (match_operand:DF 2 "register_operand" "f"))))]
+ "TARGET_V8 && TARGET_FPU"
+ "fdmulq %1,%2,%0"
+ [(set_attr "type" "fpmul")])
+
(define_insn "divtf3"
[(set (match_operand:TF 0 "register_operand" "=f")
(div:TF (match_operand:TF 1 "register_operand" "f")