summaryrefslogtreecommitdiffstats
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/calls.c2
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index ad2001ec1aa..3e9a2d0d1e1 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2006-09-20 Josh Conner <jconner@apple.com>
+
+ PR middle-end/25505
+ * calls.c (expand_call): Allow reuse of structure return stack
+ temp.
+
2006-09-20 Paul Brook <paul@codesourcery.com>
* config/arm/unwind-arm.c (selfrel_offset31): Clear top bit for
diff --git a/gcc/calls.c b/gcc/calls.c
index 7c71eed0502..b6f57df78c1 100644
--- a/gcc/calls.c
+++ b/gcc/calls.c
@@ -1985,7 +1985,7 @@ expand_call (tree exp, rtx target, int ignore)
/* For variable-sized objects, we must be called with a target
specified. If we were to allocate space on the stack here,
we would have no way of knowing when to free it. */
- rtx d = assign_temp (TREE_TYPE (exp), 1, 1, 1);
+ rtx d = assign_temp (TREE_TYPE (exp), 0, 1, 1);
mark_temp_addr_taken (d);
structure_value_addr = XEXP (d, 0);
OpenPOWER on IntegriCloud