summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2006-10-22 09:28:01 +0000
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2006-10-22 09:28:01 +0000
commite30d194ba07f4aa7c7d2e1733241d85d80c4313d (patch)
tree37c3221fefa94316a867501bc602ecd8852a7aaf
parent4e8e57b0ce67551ca61b7883e73586ba805f0a61 (diff)
downloadppe42-gcc-e30d194ba07f4aa7c7d2e1733241d85d80c4313d.tar.gz
ppe42-gcc-e30d194ba07f4aa7c7d2e1733241d85d80c4313d.zip
gcc/
* config/mips/mips.c (mips_split_const): Don't accept bare PLUS expressions. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@117950 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/mips/mips.c9
2 files changed, 10 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 8f2f384c936..d5eaf5b3696 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2006-10-22 Richard Sandiford <richard@codesourcery.com>
+
+ * config/mips/mips.c (mips_split_const): Don't accept bare PLUS
+ expressions.
+
2006-10-21 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.md (UNSPEC_LDQQU): Renamed to ...
diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c
index 26ea020d0b8..05498c2c21d 100644
--- a/gcc/config/mips/mips.c
+++ b/gcc/config/mips/mips.c
@@ -1282,12 +1282,13 @@ mips_split_const (rtx x, rtx *base, HOST_WIDE_INT *offset)
*offset = 0;
if (GET_CODE (x) == CONST)
- x = XEXP (x, 0);
-
- if (GET_CODE (x) == PLUS && GET_CODE (XEXP (x, 1)) == CONST_INT)
{
- *offset += INTVAL (XEXP (x, 1));
x = XEXP (x, 0);
+ if (GET_CODE (x) == PLUS && GET_CODE (XEXP (x, 1)) == CONST_INT)
+ {
+ *offset += INTVAL (XEXP (x, 1));
+ x = XEXP (x, 0);
+ }
}
*base = x;
}
OpenPOWER on IntegriCloud