aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJim Wilson <wilson@cygnus.com>1997-09-03 01:27:01 +0000
committerJim Wilson <wilson@gcc.gnu.org>1997-09-02 18:27:01 -0700
commit8cf02b4799fa89c878665578eefb58929039a9c2 (patch)
treed0f39d5f68b827e3b14e81aefc3e60d17b8aa1e3
parent49dad301f07d216d8c780eea5eefdc26d43aed0b (diff)
downloadgcc-8cf02b4799fa89c878665578eefb58929039a9c2.zip
gcc-8cf02b4799fa89c878665578eefb58929039a9c2.tar.gz
gcc-8cf02b4799fa89c878665578eefb58929039a9c2.tar.bz2
Fix alpha-linux -mieee bug reported by H.J. Lu.
* alpha.md (floatdisf2-1): New pattern. From-SVN: r15045
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/config/alpha/alpha.md8
2 files changed, 12 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 90c5ec6..b1404ea 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+Tue Sep 2 18:09:39 1997 Jim Wilson <wilson@cygnus.com>
+
+ * alpha.md (floatdisf2-1): New pattern.
+
Tue Sep 2 18:41:55 1997 Jeffrey A Law (law@cygnus.com)
* mn10200.h (INITIALIZE_TRAMPOLINE): PC relative instructions
diff --git a/gcc/config/alpha/alpha.md b/gcc/config/alpha/alpha.md
index a1d3b2b..ce45183 100644
--- a/gcc/config/alpha/alpha.md
+++ b/gcc/config/alpha/alpha.md
@@ -1517,6 +1517,14 @@
"cvt%-qc %R1,%0"
[(set_attr "type" "fadd")])
+(define_insn ""
+ [(set (match_operand:SF 0 "register_operand" "=&f")
+ (float:SF (match_operand:DI 1 "register_operand" "f")))]
+ "TARGET_FP && alpha_tp == ALPHA_TP_INSN"
+ "cvtq%,%+%& %1,%0"
+ [(set_attr "type" "fadd")
+ (set_attr "trap" "yes")])
+
(define_insn "floatdisf2"
[(set (match_operand:SF 0 "register_operand" "=f")
(float:SF (match_operand:DI 1 "register_operand" "f")))]