diff options
author | Richard Henderson <rth@cygnus.com> | 1999-04-17 17:10:06 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 1999-04-17 17:10:06 -0700 |
commit | 6fab83fdbf9f9e5d7abe8ac60d881dc206d3e63c (patch) | |
tree | 60bd23b79740165238a1802bb3995680340abf2d | |
parent | 5d02b6c26134b170071255fad492963561dfbd50 (diff) | |
download | gcc-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/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/alpha/alpha.h | 29 |
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 |