(expand_call): In last change, preserve the temp slot.
authorRichard Stallman <rms@gnu.org>
Sun, 20 Jun 1993 22:21:49 +0000 (22:21 +0000)
committerRichard Stallman <rms@gnu.org>
Sun, 20 Jun 1993 22:21:49 +0000 (22:21 +0000)
From-SVN: r4705

gcc/calls.c

index 03dbdfb..dc867ae 100644 (file)
@@ -1845,9 +1845,14 @@ expand_call (exp, target, ignore)
             not specified.  This calling sequence is only used on
             a few machines and TARGET is usually nonzero.  */
          if (TYPE_MODE (TREE_TYPE (exp)) == BLKmode)
-           target = assign_stack_temp (BLKmode,
-                                       int_size_in_bytes (TREE_TYPE (exp)),
-                                       1);
+           {
+             target = assign_stack_temp (BLKmode,
+                                         int_size_in_bytes (TREE_TYPE (exp)),
+                                         0);
+
+             /* Save this temp slot around the pop below.  */
+             preserve_temp_slots (target);
+           }
          else
            target = gen_reg_rtx (TYPE_MODE (TREE_TYPE (exp)));
        }