aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>1999-12-08 16:28:00 +0100
committerDavid S. Miller <davem@gcc.gnu.org>1999-12-08 07:28:00 -0800
commitdd4be5a186c6a6ddac94995f26d9af1c50043da4 (patch)
treec32e95e8a9e94afb89fbcfaab2f4017c39f595a0
parent1f0e6e286ada5c9c54bdae7545025249f7d9c259 (diff)
downloadgcc-dd4be5a186c6a6ddac94995f26d9af1c50043da4.zip
gcc-dd4be5a186c6a6ddac94995f26d9af1c50043da4.tar.gz
gcc-dd4be5a186c6a6ddac94995f26d9af1c50043da4.tar.bz2
sparc.h (SPARC_SETHI_P): Don't look at topmost 32 bits if TARGET_ARCH32.
* config/sparc/sparc.h (SPARC_SETHI_P): Don't look at topmost 32 bits if TARGET_ARCH32. From-SVN: r30833
-rw-r--r--gcc/ChangeLog3
-rw-r--r--gcc/config/sparc/sparc.h3
2 files changed, 5 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 44abe5f..b66687d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -3,6 +3,9 @@
* config/sparc/sparc.c (ultra_cmove_results_ready_p,
ultra_fpmode_conflict_exists, ultra_flush_pipeline): Typo fix.
+ * config/sparc/sparc.h (SPARC_SETHI_P): Don't look at topmost 32 bits
+ if TARGET_ARCH32.
+
1999-12-08 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
* config/sparc/sol2-64.h: Same as sol2-sld-64.h, except that
diff --git a/gcc/config/sparc/sparc.h b/gcc/config/sparc/sparc.h
index c051c78..1a44547 100644
--- a/gcc/config/sparc/sparc.h
+++ b/gcc/config/sparc/sparc.h
@@ -1440,7 +1440,8 @@ extern char leaf_reg_remap[];
/* 13 bit immediate, considering only the low 32 bits */
#define SMALL_INT32(X) (SPARC_SIMM13_P ((int)INTVAL (X) & 0xffffffff))
#define SPARC_SETHI_P(X) \
-(((unsigned HOST_WIDE_INT) (X) & ~(unsigned HOST_WIDE_INT) 0xfffffc00) == 0)
+(((unsigned HOST_WIDE_INT) (X) & \
+ (TARGET_ARCH64 ? ~(unsigned HOST_WIDE_INT) 0xfffffc00 : 0x3ff)) == 0)
#define CONST_OK_FOR_LETTER_P(VALUE, C) \
((C) == 'I' ? SPARC_SIMM13_P (VALUE) \