summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorgeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>2003-10-14 15:01:14 +0000
committergeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>2003-10-14 15:01:14 +0000
commit6466828164ed08665520389a25128b147b05624d (patch)
tree14952ee66d2232a0326f5f6208e2b1a0063faa99 /gcc
parented1ce9ced799411a6b9b792d2d8b1b05ba180e7a (diff)
downloadgcc-6466828164ed08665520389a25128b147b05624d.tar.gz
* config/darwin.c (machopic_indirect_data_reference): Use a scratch
register when generating indirect address. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@72473 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/darwin.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 64553324e29..e5d1b3f6222 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2003-10-14 Geoffrey Keating <geoffk@apple.com>
+
+ * config/darwin.c (machopic_indirect_data_reference): Use a scratch
+ register when generating indirect address.
+
2003-10-14 Richard Earnshaw <rearnsha@arm.com>
* arm.c (arm_addimm_operand): MODE arguemnt is unused.
diff --git a/gcc/config/darwin.c b/gcc/config/darwin.c
index a548d310697..66c3829ed94 100644
--- a/gcc/config/darwin.c
+++ b/gcc/config/darwin.c
@@ -470,7 +470,7 @@ machopic_indirect_data_reference (rtx orig, rtx reg)
#endif
#if defined (TARGET_TOC) /* i.e., PowerPC */
- rtx hi_sum_reg = reg;
+ rtx hi_sum_reg = (no_new_pseudos ? reg : gen_reg_rtx (Pmode));
if (reg == NULL)
abort ();