aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Weigand <uweigand@de.ibm.com>2003-10-14 19:21:45 +0000
committerUlrich Weigand <uweigand@gcc.gnu.org>2003-10-14 19:21:45 +0000
commit553e5ce9e10dcc845a69b198bfc610eec266161c (patch)
tree365b03e31ca7248c37b0c4d6be8a795ac85c8b74
parent43aba518356cf8e4b25c0bd4075d9a0e010a706e (diff)
downloadgcc-553e5ce9e10dcc845a69b198bfc610eec266161c.zip
gcc-553e5ce9e10dcc845a69b198bfc610eec266161c.tar.gz
gcc-553e5ce9e10dcc845a69b198bfc610eec266161c.tar.bz2
s390.md ("muldf3", [...]): Do not clobber CC.
* config/s390/s390.md ("muldf3", "*muldf3", "*muldf3_ibm", "mulsf3", "*mulsf3", "*mulsf3_ibm"): Do not clobber CC. ("divdf3", "*divdf3", "*divdf3_ibm", "divsf3", "*divsf3", "*divsf3_ibm"): Likewise. From-SVN: r72488
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/s390/s390.md56
2 files changed, 27 insertions, 36 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index efae113..b16d5b0 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2003-10-14 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("muldf3", "*muldf3", "*muldf3_ibm",
+ "mulsf3", "*mulsf3", "*mulsf3_ibm"): Do not clobber CC.
+ ("divdf3", "*divdf3", "*divdf3_ibm", "divsf3", "*divsf3",
+ "*divsf3_ibm"): Likewise.
+
2003-10-14 Nathanael Nerode <neroden@gcc.gnu.org>
* config.gcc, config/m68hc11/t-m68hc11-gas: Replace uses of
diff --git a/gcc/config/s390/s390.md b/gcc/config/s390/s390.md
index aa568f8..9cdce81 100644
--- a/gcc/config/s390/s390.md
+++ b/gcc/config/s390/s390.md
@@ -4153,19 +4153,16 @@
;
(define_expand "muldf3"
- [(parallel
- [(set (match_operand:DF 0 "register_operand" "=f,f")
- (mult:DF (match_operand:DF 1 "nonimmediate_operand" "%0,0")
- (match_operand:DF 2 "general_operand" "f,R")))
- (clobber (reg:CC 33))])]
+ [(set (match_operand:DF 0 "register_operand" "=f,f")
+ (mult:DF (match_operand:DF 1 "nonimmediate_operand" "%0,0")
+ (match_operand:DF 2 "general_operand" "f,R")))]
"TARGET_HARD_FLOAT"
"")
(define_insn "*muldf3"
[(set (match_operand:DF 0 "register_operand" "=f,f")
(mult:DF (match_operand:DF 1 "nonimmediate_operand" "%0,0")
- (match_operand:DF 2 "general_operand" "f,R")))
- (clobber (reg:CC 33))]
+ (match_operand:DF 2 "general_operand" "f,R")))]
"TARGET_HARD_FLOAT && TARGET_IEEE_FLOAT"
"@
mdbr\t%0,%2
@@ -4176,8 +4173,7 @@
(define_insn "*muldf3_ibm"
[(set (match_operand:DF 0 "register_operand" "=f,f")
(mult:DF (match_operand:DF 1 "nonimmediate_operand" "%0,0")
- (match_operand:DF 2 "general_operand" "f,R")))
- (clobber (reg:CC 33))]
+ (match_operand:DF 2 "general_operand" "f,R")))]
"TARGET_HARD_FLOAT && TARGET_IBM_FLOAT"
"@
mdr\t%0,%2
@@ -4214,19 +4210,16 @@
;
(define_expand "mulsf3"
- [(parallel
- [(set (match_operand:SF 0 "register_operand" "=f,f")
- (mult:SF (match_operand:SF 1 "nonimmediate_operand" "%0,0")
- (match_operand:SF 2 "general_operand" "f,R")))
- (clobber (reg:CC 33))])]
+ [(set (match_operand:SF 0 "register_operand" "=f,f")
+ (mult:SF (match_operand:SF 1 "nonimmediate_operand" "%0,0")
+ (match_operand:SF 2 "general_operand" "f,R")))]
"TARGET_HARD_FLOAT"
"")
(define_insn "*mulsf3"
[(set (match_operand:SF 0 "register_operand" "=f,f")
(mult:SF (match_operand:SF 1 "nonimmediate_operand" "%0,0")
- (match_operand:SF 2 "general_operand" "f,R")))
- (clobber (reg:CC 33))]
+ (match_operand:SF 2 "general_operand" "f,R")))]
"TARGET_HARD_FLOAT && TARGET_IEEE_FLOAT"
"@
meebr\t%0,%2
@@ -4237,8 +4230,7 @@
(define_insn "*mulsf3_ibm"
[(set (match_operand:SF 0 "register_operand" "=f,f")
(mult:SF (match_operand:SF 1 "nonimmediate_operand" "%0,0")
- (match_operand:SF 2 "general_operand" "f,R")))
- (clobber (reg:CC 33))]
+ (match_operand:SF 2 "general_operand" "f,R")))]
"TARGET_HARD_FLOAT && TARGET_IBM_FLOAT"
"@
mer\t%0,%2
@@ -4710,19 +4702,16 @@
;
(define_expand "divdf3"
- [(parallel
- [(set (match_operand:DF 0 "register_operand" "=f,f")
- (div:DF (match_operand:DF 1 "register_operand" "0,0")
- (match_operand:DF 2 "general_operand" "f,R")))
- (clobber (reg:CC 33))])]
+ [(set (match_operand:DF 0 "register_operand" "=f,f")
+ (div:DF (match_operand:DF 1 "register_operand" "0,0")
+ (match_operand:DF 2 "general_operand" "f,R")))]
"TARGET_HARD_FLOAT"
"")
(define_insn "*divdf3"
[(set (match_operand:DF 0 "register_operand" "=f,f")
(div:DF (match_operand:DF 1 "register_operand" "0,0")
- (match_operand:DF 2 "general_operand" "f,R")))
- (clobber (reg:CC 33))]
+ (match_operand:DF 2 "general_operand" "f,R")))]
"TARGET_HARD_FLOAT && TARGET_IEEE_FLOAT"
"@
ddbr\t%0,%2
@@ -4733,8 +4722,7 @@
(define_insn "*divdf3_ibm"
[(set (match_operand:DF 0 "register_operand" "=f,f")
(div:DF (match_operand:DF 1 "register_operand" "0,0")
- (match_operand:DF 2 "general_operand" "f,R")))
- (clobber (reg:CC 33))]
+ (match_operand:DF 2 "general_operand" "f,R")))]
"TARGET_HARD_FLOAT && TARGET_IBM_FLOAT"
"@
ddr\t%0,%2
@@ -4747,19 +4735,16 @@
;
(define_expand "divsf3"
- [(parallel
- [(set (match_operand:SF 0 "register_operand" "=f,f")
- (div:SF (match_operand:SF 1 "register_operand" "0,0")
- (match_operand:SF 2 "general_operand" "f,R")))
- (clobber (reg:CC 33))])]
+ [(set (match_operand:SF 0 "register_operand" "=f,f")
+ (div:SF (match_operand:SF 1 "register_operand" "0,0")
+ (match_operand:SF 2 "general_operand" "f,R")))]
"TARGET_HARD_FLOAT"
"")
(define_insn "*divsf3"
[(set (match_operand:SF 0 "register_operand" "=f,f")
(div:SF (match_operand:SF 1 "register_operand" "0,0")
- (match_operand:SF 2 "general_operand" "f,R")))
- (clobber (reg:CC 33))]
+ (match_operand:SF 2 "general_operand" "f,R")))]
"TARGET_HARD_FLOAT && TARGET_IEEE_FLOAT"
"@
debr\t%0,%2
@@ -4770,8 +4755,7 @@
(define_insn "*divsf3"
[(set (match_operand:SF 0 "register_operand" "=f,f")
(div:SF (match_operand:SF 1 "register_operand" "0,0")
- (match_operand:SF 2 "general_operand" "f,R")))
- (clobber (reg:CC 33))]
+ (match_operand:SF 2 "general_operand" "f,R")))]
"TARGET_HARD_FLOAT && TARGET_IBM_FLOAT"
"@
der\t%0,%2