aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/config/m68k/m68k.md14
1 files changed, 14 insertions, 0 deletions
diff --git a/gcc/config/m68k/m68k.md b/gcc/config/m68k/m68k.md
index 154eb29..69b9b43 100644
--- a/gcc/config/m68k/m68k.md
+++ b/gcc/config/m68k/m68k.md
@@ -3138,6 +3138,20 @@
return \"f%&neg%.d %f1,%0\";
}")
+;; Sqrt instruction for the 68881
+
+(define_insn "sqrtdf2"
+ [(set (match_operand:DF 0 "general_operand" "=f")
+ (sqrt:DF (match_operand:DF 1 "general_operand" "fm")))]
+ "TARGET_68881"
+ "*
+{
+ if (FP_REG_P (operands[1]))
+ return \"fsqrt%.x %1,%0\";
+ else
+ return \"fsqrt%.d %1,%0\";
+}")
+
;; Absolute value instructions
(define_expand "abssf2"