aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJ"orn Rennecke <amylaar@redhat.co.uk>2000-10-05 18:07:28 +0000
committerJoern Rennecke <amylaar@gcc.gnu.org>2000-10-05 19:07:28 +0100
commit43d75418889fe7c7e28e5d0687fa83609e5c3e75 (patch)
tree4a670a13a86a494af80f63afcd181428ad56cde0 /gcc
parente389897bcd904611f78753b05a512e73ddaf15e7 (diff)
downloadgcc-43d75418889fe7c7e28e5d0687fa83609e5c3e75.zip
gcc-43d75418889fe7c7e28e5d0687fa83609e5c3e75.tar.gz
gcc-43d75418889fe7c7e28e5d0687fa83609e5c3e75.tar.bz2
(convert_move): Use zero_extendpsisi2 to do an unsigned extension from PSImode to SImode.
* (convert_move): Use zero_extendpsisi2 to do an unsigned extension from PSImode to SImode. From-SVN: r36729
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/expr.c9
2 files changed, 13 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 2b01059..4438b3d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+Thu Oct 5 19:04:18 2000 J"orn Rennecke <amylaar@redhat.co.uk>
+
+ * (convert_move): Use zero_extendpsisi2 to do an unsigned extension
+ from PSImode to SImode.
+
2000-10-05 Jakub Jelinek <jakub@redhat.com>
* emit-rtl.c (gen_lowpart_common) [REAL_ARITHMETICS]: Fix conversion
diff --git a/gcc/expr.c b/gcc/expr.c
index 0185922..ee68dff 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -1005,12 +1005,19 @@ convert_move (to, from, unsignedp)
else
{
#ifdef HAVE_extendpsisi2
- if (HAVE_extendpsisi2)
+ if (! unsignedp && HAVE_extendpsisi2)
{
emit_unop_insn (CODE_FOR_extendpsisi2, to, from, UNKNOWN);
return;
}
#endif /* HAVE_extendpsisi2 */
+#ifdef HAVE_zero_extendpsisi2
+ if (unsignedp && HAVE_zero_extendpsisi2)
+ {
+ emit_unop_insn (CODE_FOR_zero_extendpsisi2, to, from, UNKNOWN);
+ return;
+ }
+#endif /* HAVE_zero_extendpsisi2 */
abort ();
}
}