aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorAndreas Krebbel <krebbel1@de.ibm.com>2007-05-04 16:23:08 +0000
committerAndreas Krebbel <krebbel@gcc.gnu.org>2007-05-04 16:23:08 +0000
commitb60cb710ba05d240c6f8a7ef0df41976797c82d0 (patch)
tree256cf723ef6d5c1a5048b32c58cd0c37dfb61dc8 /gcc
parentb86dee194c4e0c1d27c6a32bc2d7c1a22c1cf982 (diff)
downloadgcc-b60cb710ba05d240c6f8a7ef0df41976797c82d0.zip
gcc-b60cb710ba05d240c6f8a7ef0df41976797c82d0.tar.gz
gcc-b60cb710ba05d240c6f8a7ef0df41976797c82d0.tar.bz2
s390.md ("fix_trunc<mode>di2", [...]): Expander removed.
2007-05-04 Andreas Krebbel <krebbel1@de.ibm.com> * config/s390/s390.md ("fix_trunc<mode>di2", "fix_trunc<mode>si2"): Expander removed. ("fix_trunc<DSF:mode><GPR:mode>2"): Expander added. From-SVN: r124433
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/s390/s390.md26
2 files changed, 12 insertions, 20 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index b31ca09..86cc306 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2007-05-04 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * config/s390/s390.md ("fix_trunc<mode>di2", "fix_trunc<mode>si2"):
+ Expander removed.
+ ("fix_trunc<DSF:mode><GPR:mode>2"): Expander added.
+
2007-05-04 Bob Wilson <bob.wilson@acm.org>
* config/xtensa/xtensa.md (adddi3, adddi_carry): Delete.
diff --git a/gcc/config/s390/s390.md b/gcc/config/s390/s390.md
index 4190535..c4ce3f4 100644
--- a/gcc/config/s390/s390.md
+++ b/gcc/config/s390/s390.md
@@ -3269,14 +3269,13 @@
DONE;
})
-(define_expand "fix_trunc<mode>di2"
- [(set (match_operand:DI 0 "register_operand" "")
- (fix:DI (match_operand:DSF 1 "nonimmediate_operand" "")))]
- "TARGET_64BIT && TARGET_HARD_FLOAT"
+(define_expand "fix_trunc<DSF:mode><GPR:mode>2"
+ [(set (match_operand:GPR 0 "register_operand" "")
+ (fix:GPR (match_operand:DSF 1 "register_operand" "")))]
+ "TARGET_HARD_FLOAT"
{
- operands[1] = force_reg (<MODE>mode, operands[1]);
- emit_insn (gen_fix_trunc<mode>di2_bfp (operands[0], operands[1],
- GEN_INT (5)));
+ emit_insn (gen_fix_trunc<DSF:mode><GPR:mode>2_bfp (operands[0], operands[1],
+ GEN_INT (5)));
DONE;
})
@@ -3331,19 +3330,6 @@
"TARGET_HARD_FLOAT"
"")
-;
-; fix_trunc(df|sf)si2 instruction pattern(s).
-;
-
-(define_expand "fix_trunc<mode>si2"
- [(set (match_operand:SI 0 "register_operand" "")
- (fix:SI (match_operand:DSF 1 "nonimmediate_operand" "")))]
- "TARGET_HARD_FLOAT"
-{
- operands[1] = force_reg (<MODE>mode, operands[1]);
- emit_insn (gen_fix_trunc<mode>si2_bfp (operands[0], operands[1], GEN_INT (5)));
- DONE;
-})
;
; float(si|di)(tf|df|sf|td|dd)2 instruction pattern(s).