aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/mips/mips.h
diff options
context:
space:
mode:
authorStan Cox <scox@cygnus.com>1999-09-23 01:03:13 +0000
committerStan Cox <scox@gcc.gnu.org>1999-09-23 01:03:13 +0000
commit8da665d583ad51bbba86a5e135dfc33d4b764455 (patch)
treefe8507a33bd2c739d2aa1c9a1223244ba551d964 /gcc/config/mips/mips.h
parentf38b27c7cb8392960f06b54303830e51704f8c6e (diff)
downloadgcc-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.h4
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; \
} \
} \