aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Kabaev <kan@FreeBSD.ORG>2003-04-24 19:15:29 +0000
committerLoren J. Rittle <ljrittle@gcc.gnu.org>2003-04-24 19:15:29 +0000
commitb746b8cb0a67a45e05da62c250a778033a1a9195 (patch)
treed4445c28a8b4bf005d30d8e62ac2e1c26972c25e
parent019238b7592361595ae19abc9f35a6665f602ed6 (diff)
downloadgcc-b746b8cb0a67a45e05da62c250a778033a1a9195.zip
gcc-b746b8cb0a67a45e05da62c250a778033a1a9195.tar.gz
gcc-b746b8cb0a67a45e05da62c250a778033a1a9195.tar.bz2
sparc.md (umulsidi3, mulsidi3): Avoid using const_umulsidi3_sp32 and const_mulsidi3_sp32 on 64bit targets where...
2003-04-24 Alexander Kabaev <kan@FreeBSD.ORG> * config/sparc/sparc.md (umulsidi3, mulsidi3): Avoid using const_umulsidi3_sp32 and const_mulsidi3_sp32 on 64bit targets where they might be not present. Use their _sp64 equivalent instead. From-SVN: r66047
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/sparc/sparc.md10
2 files changed, 15 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 9b3a1fa..1ae16b2 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2003-04-24 Alexander Kabaev <kan@FreeBSD.ORG>
+
+ * config/sparc/sparc.md (umulsidi3, mulsidi3): Avoid using
+ const_umulsidi3_sp32 and const_mulsidi3_sp32 on 64bit targets
+ where they might be not present. Use their _sp64 equivalent
+ instead.
+
Thu Apr 24 20:42:12 CEST 2003 Jan Hubicka <jh@suse.cz>
* i386.md (cvtsi2sdq): Fix typo in previous patch.
diff --git a/gcc/config/sparc/sparc.md b/gcc/config/sparc/sparc.md
index bc8c634..36b213d 100644
--- a/gcc/config/sparc/sparc.md
+++ b/gcc/config/sparc/sparc.md
@@ -5289,9 +5289,12 @@
if (TARGET_V8PLUS)
emit_insn (gen_const_mulsidi3_v8plus (operands[0], operands[1],
operands[2]));
- else
+ else if (TARGET_ARCH32)
emit_insn (gen_const_mulsidi3_sp32 (operands[0], operands[1],
operands[2]));
+ else
+ emit_insn (gen_const_mulsidi3_sp64 (operands[0], operands[1],
+ operands[2]));
DONE;
}
if (TARGET_V8PLUS)
@@ -5495,9 +5498,12 @@
if (TARGET_V8PLUS)
emit_insn (gen_const_umulsidi3_v8plus (operands[0], operands[1],
operands[2]));
- else
+ else if (TARGET_ARCH32)
emit_insn (gen_const_umulsidi3_sp32 (operands[0], operands[1],
operands[2]));
+ else
+ emit_insn (gen_const_umulsidi3_sp64 (operands[0], operands[1],
+ operands[2]));
DONE;
}
if (TARGET_V8PLUS)