aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2010-03-10 08:51:17 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2010-03-10 08:51:17 +0100
commitff4f03c3b276a936ca6eb0778f48f22072aa928a (patch)
tree3df078d8e8ff43ad56384c5b357b7015d940037a /gcc
parent9473ebb111f8b269cc90efc36dce8c4796bd094e (diff)
downloadgcc-ff4f03c3b276a936ca6eb0778f48f22072aa928a.zip
gcc-ff4f03c3b276a936ca6eb0778f48f22072aa928a.tar.gz
gcc-ff4f03c3b276a936ca6eb0778f48f22072aa928a.tar.bz2
re PR bootstrap/43287 (Bootstrap fails at stage 1 on powerpc-apple-darwin9)
PR bootstrap/43287 * config/rs6000/rs6000.c (rs6000_delegitimize_address): Handle UNSPEC_MACHOPIC_OFFSET. From-SVN: r157334
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/rs6000/rs6000.c10
2 files changed, 16 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 20e0b72..ae224ca 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2010-03-10 Jakub Jelinek <jakub@redhat.com>
+
+ PR bootstrap/43287
+ * config/rs6000/rs6000.c (rs6000_delegitimize_address): Handle
+ UNSPEC_MACHOPIC_OFFSET.
+
2010-03-09 Andreas Schwab <schwab@linux-m68k.org>
PR target/43294
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index 7bcc086..8285065 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -5298,6 +5298,16 @@ rs6000_delegitimize_address (rtx orig_x)
return orig_x;
}
+ if (TARGET_MACHO
+ && GET_CODE (orig_x) == LO_SUM
+ && GET_CODE (XEXP (x, 1)) == CONST)
+ {
+ y = XEXP (XEXP (x, 1), 0);
+ if (GET_CODE (y) == UNSPEC
+ && XINT (y, 1) == UNSPEC_MACHOPIC_OFFSET)
+ return XVECEXP (y, 0, 0);
+ }
+
return orig_x;
}