2006-09-20 Josh Conner <jconner@apple.com>
authorjconner <jconner@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 20 Sep 2006 18:57:46 +0000 (18:57 +0000)
committerjconner <jconner@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 20 Sep 2006 18:57:46 +0000 (18:57 +0000)
PR middle-end/25505
* calls.c (expand_call): Allow reuse of structure return stack
temp.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@117091 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/calls.c

index ad2001e..3e9a2d0 100644 (file)
@@ -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
index 7c71eed..b6f57df 100644 (file)
@@ -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);