diff options
author | Andreas Krebbel <krebbel1@de.ibm.com> | 2007-05-04 16:23:08 +0000 |
---|---|---|
committer | Andreas Krebbel <krebbel@gcc.gnu.org> | 2007-05-04 16:23:08 +0000 |
commit | b60cb710ba05d240c6f8a7ef0df41976797c82d0 (patch) | |
tree | 256cf723ef6d5c1a5048b32c58cd0c37dfb61dc8 /gcc | |
parent | b86dee194c4e0c1d27c6a32bc2d7c1a22c1cf982 (diff) | |
download | gcc-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/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/s390/s390.md | 26 |
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). |