aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Henderson <rth@cygnus.com>2000-08-11 15:25:22 -0700
committerRichard Henderson <rth@gcc.gnu.org>2000-08-11 15:25:22 -0700
commitdcf6e6746d750dd8bf123341fff16fa33a7ca203 (patch)
treed5b445a79b7bc51b8eed16eb0e5dad95dcda4957 /gcc
parent85804ec662d8eeeae29d4e3191a4e07bf9aba5c8 (diff)
downloadgcc-dcf6e6746d750dd8bf123341fff16fa33a7ca203.zip
gcc-dcf6e6746d750dd8bf123341fff16fa33a7ca203.tar.gz
gcc-dcf6e6746d750dd8bf123341fff16fa33a7ca203.tar.bz2
* config/ia64/ia64.h (PROMOTE_MODE): Only extend to SImode.
From-SVN: r35646
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/config/ia64/ia64.h7
2 files changed, 6 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index c804c89..066519f 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2000-08-11 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.h (PROMOTE_MODE): Only extend to SImode.
+
2000-08-11 Mark Elbrecht <snowball3@bigfoot.com>
* gcc.texi (The Configuration File): Document
diff --git a/gcc/config/ia64/ia64.h b/gcc/config/ia64/ia64.h
index 23a27b8..1191330 100644
--- a/gcc/config/ia64/ia64.h
+++ b/gcc/config/ia64/ia64.h
@@ -300,15 +300,12 @@ extern const char *ia64_fixed_range_string;
/* A macro to update MODE and UNSIGNEDP when an object whose type is TYPE and
which has the specified mode and signedness is to be stored in a register.
This macro is only called when TYPE is a scalar type. */
-
-/* ??? Maybe sign-extend 32 bit values like the alpha? Or maybe zero-extend
- because we only have zero-extending loads? */
#define PROMOTE_MODE(MODE,UNSIGNEDP,TYPE) \
do \
{ \
if (GET_MODE_CLASS (MODE) == MODE_INT \
- && GET_MODE_SIZE (MODE) < UNITS_PER_WORD) \
- (MODE) = DImode; \
+ && GET_MODE_SIZE (MODE) < 4) \
+ (MODE) = SImode; \
} \
while (0)