aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Henderson <rth@cygnus.com>1999-04-17 17:10:06 -0700
committerRichard Henderson <rth@gcc.gnu.org>1999-04-17 17:10:06 -0700
commit6fab83fdbf9f9e5d7abe8ac60d881dc206d3e63c (patch)
tree60bd23b79740165238a1802bb3995680340abf2d
parent5d02b6c26134b170071255fad492963561dfbd50 (diff)
downloadgcc-6fab83fdbf9f9e5d7abe8ac60d881dc206d3e63c.zip
gcc-6fab83fdbf9f9e5d7abe8ac60d881dc206d3e63c.tar.gz
gcc-6fab83fdbf9f9e5d7abe8ac60d881dc206d3e63c.tar.bz2
alpha.h (GO_IF_LEGITIMATE_SIMPLE_ADDRESS): Correct last change -- make sure FP_BASE_P registers are only used with an integer.
* alpha.h (GO_IF_LEGITIMATE_SIMPLE_ADDRESS): Correct last change -- make sure FP_BASE_P registers are only used with an integer. From-SVN: r26531
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/alpha/alpha.h29
2 files changed, 20 insertions, 14 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6c2b370..8a0c13d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+Sun Apr 18 00:08:45 1999 Richard Henderson <rth@cygnus.com>
+
+ * alpha.h (GO_IF_LEGITIMATE_SIMPLE_ADDRESS): Correct last change --
+ make sure FP_BASE_P registers are only used with an integer.
+
Sat Apr 17 22:54:17 1999 Richard Henderson <rth@cygnus.com>
* alpha.h (REG_OK_FP_BASE_P): New macro.
diff --git a/gcc/config/alpha/alpha.h b/gcc/config/alpha/alpha.h
index 2026ca9..e676faf 100644
--- a/gcc/config/alpha/alpha.h
+++ b/gcc/config/alpha/alpha.h
@@ -1426,20 +1426,21 @@ extern void alpha_init_expanders ();
First define the basic valid address. */
-#define GO_IF_LEGITIMATE_SIMPLE_ADDRESS(MODE, X, ADDR) \
-{ if (REG_P (X) && REG_OK_FOR_BASE_P (X)) \
- goto ADDR; \
- if (CONSTANT_ADDRESS_P (X)) \
- goto ADDR; \
- if (GET_CODE (X) == PLUS \
- && REG_P (XEXP (X, 0))) \
- { \
- if (REG_OK_FP_BASE_P (XEXP (X, 0))) \
- goto ADDR; \
- if (REG_OK_FOR_BASE_P (XEXP (X, 0)) \
- && CONSTANT_ADDRESS_P (XEXP (X, 1))) \
- goto ADDR; \
- } \
+#define GO_IF_LEGITIMATE_SIMPLE_ADDRESS(MODE, X, ADDR) \
+{ if (REG_P (X) && REG_OK_FOR_BASE_P (X)) \
+ goto ADDR; \
+ if (CONSTANT_ADDRESS_P (X)) \
+ goto ADDR; \
+ if (GET_CODE (X) == PLUS \
+ && REG_P (XEXP (X, 0))) \
+ { \
+ if (REG_OK_FP_BASE_P (XEXP (X, 0)) \
+ && GET_CODE (XEXP (X, 1)) == CONST_INT) \
+ goto ADDR; \
+ if (REG_OK_FOR_BASE_P (XEXP (X, 0)) \
+ && CONSTANT_ADDRESS_P (XEXP (X, 1))) \
+ goto ADDR; \
+ } \
}
/* Now accept the simple address, or, for DImode only, an AND of a simple