aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Krebbel <krebbel1@de.ibm.com>2007-04-12 12:07:24 +0000
committerAndreas Krebbel <krebbel@gcc.gnu.org>2007-04-12 12:07:24 +0000
commitbf259a7704ef5c4bb152674ee2fe03c56a71a25c (patch)
treee34279c5fbb49662c63562ea42bcb3f3411319b0
parent95764818247765a24047c276777839ec8875a595 (diff)
downloadgcc-bf259a7704ef5c4bb152674ee2fe03c56a71a25c.zip
gcc-bf259a7704ef5c4bb152674ee2fe03c56a71a25c.tar.gz
gcc-bf259a7704ef5c4bb152674ee2fe03c56a71a25c.tar.bz2
s390.md ("trunctddd2"): Use TDmode for the target of ldxtr.
2007-04-12 Andreas Krebbel <krebbel1@de.ibm.com> * config/s390/s390.md ("trunctddd2"): Use TDmode for the target of ldxtr. From-SVN: r123741
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/s390/s390.md9
2 files changed, 10 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7349b77..4af158b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2007-04-12 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * config/s390/s390.md ("trunctddd2"): Use TDmode for the target of
+ ldxtr.
+
2007-04-12 Douglas Gregor <doug.gregor@gmail.com>
PR c++/31078
diff --git a/gcc/config/s390/s390.md b/gcc/config/s390/s390.md
index bfbb598..8642af7 100644
--- a/gcc/config/s390/s390.md
+++ b/gcc/config/s390/s390.md
@@ -3560,11 +3560,12 @@
(define_insn "trunctddd2"
[(set (match_operand:DD 0 "register_operand" "=f")
- (float_truncate:DD (match_operand:TD 1 "register_operand" "f")))]
+ (float_truncate:DD (match_operand:TD 1 "register_operand" "f")))
+ (clobber (match_scratch:TD 2 "=f"))]
"TARGET_HARD_FLOAT && TARGET_HARD_DFP"
- "ldxtr\t%0,0,%1,0"
- [(set_attr "op_type" "RRF")
- (set_attr "type" "fsimptf")])
+ "ldxtr\t%2,0,%1,0\;ldr\t%0,%2"
+ [(set_attr "length" "6")
+ (set_attr "type" "ftrunctf")])
(define_insn "truncddsd2"
[(set (match_operand:SD 0 "register_operand" "=f")