diff options
author | Stan Cox <scox@cygnus.com> | 1999-09-23 01:03:13 +0000 |
---|---|---|
committer | Stan Cox <scox@gcc.gnu.org> | 1999-09-23 01:03:13 +0000 |
commit | 8da665d583ad51bbba86a5e135dfc33d4b764455 (patch) | |
tree | fe8507a33bd2c739d2aa1c9a1223244ba551d964 /gcc/config/mips/mips.h | |
parent | f38b27c7cb8392960f06b54303830e51704f8c6e (diff) | |
download | gcc-8da665d583ad51bbba86a5e135dfc33d4b764455.zip gcc-8da665d583ad51bbba86a5e135dfc33d4b764455.tar.gz gcc-8da665d583ad51bbba86a5e135dfc33d4b764455.tar.bz2 |
mips.h (GO_IF_LEGITIMATE_ADDRESS): Don't accept large register offsets; let LEGITIMIZE_ADDRESS load it into a register.
* mips.h (GO_IF_LEGITIMATE_ADDRESS): Don't accept large
register offsets; let LEGITIMIZE_ADDRESS load it into a register.
(LEGITIMIZE_ADDRESS): Use plus_constant to avoid (plus (reg) (const_int 0))
* mips.md (call_internal3c): New pattern for -mips16 -mlong-calls.
From-SVN: r29608
Diffstat (limited to 'gcc/config/mips/mips.h')
-rw-r--r-- | gcc/config/mips/mips.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/config/mips/mips.h b/gcc/config/mips/mips.h index 59476db..61a1dfe 100644 --- a/gcc/config/mips/mips.h +++ b/gcc/config/mips/mips.h @@ -2966,6 +2966,7 @@ extern struct rtx_def *mips_va_arg (); && (!TARGET_EMBEDDED_PIC \ || code1 != CONST \ || GET_CODE (XEXP (xplus1, 0)) != MINUS) \ + && ! (code1 == CONST_INT && ! SMALL_INT (xplus1)) \ && !TARGET_MIPS16) \ goto ADDR; \ } \ @@ -3125,8 +3126,7 @@ extern struct rtx_def *mips_va_arg (); ptr_reg, \ gen_rtx_PLUS (Pmode, xplus0, int_reg))); \ \ - X = gen_rtx_PLUS (Pmode, ptr_reg, \ - GEN_INT (INTVAL (xplus1) & 0x7fff)); \ + X = plus_constant (ptr_reg, INTVAL (xplus1) & 0x7fff); \ goto WIN; \ } \ } \ |