expr.c (expand_expr): When compiling LABELED_BLOCK_EXPR...
authorPer Bothner <per@bothner.com>
Wed, 2 May 2001 02:04:27 +0000 (19:04 -0700)
committerPer Bothner <bothner@gcc.gnu.org>
Wed, 2 May 2001 02:04:27 +0000 (19:04 -0700)
* expr.c (expand_expr):  When compiling LABELED_BLOCK_EXPR,
call do_pending_stack_adjust before emiting label.

From-SVN: r41753

gcc/ChangeLog
gcc/expr.c

index 95cb78c0be2caead491f9d29ea8f433f6d9182d6..dcb64e537b454c8cfb7cd1d623f0c9c49023ee59 100644 (file)
@@ -1,3 +1,8 @@
+2001-05-01  Per Bothner  <per@bothner.com>
+
+       * expr.c (expand_expr):  When compiling LABELED_BLOCK_EXPR,
+       call do_pending_stack_adjust before emiting label.
+
 2001-05-01  Mark Mitchell  <mark@codesourcery.com>
 
        * extend.texi: Fix typo.
index 2ad473c3abd5cd6f34a51ca521692032a38c5fa4..0ef52f5d9ce6bb6240ec20f161ff7ec7bb05cad5 100644 (file)
@@ -6603,6 +6603,8 @@ expand_expr (exp, target, tmode, modifier)
     case LABELED_BLOCK_EXPR:
       if (LABELED_BLOCK_BODY (exp))
        expand_expr_stmt (LABELED_BLOCK_BODY (exp));
+      /* Should perhaps use expand_label, but this is simpler and safer. */
+      do_pending_stack_adjust ();
       emit_label (label_rtx (LABELED_BLOCK_LABEL (exp)));
       return const0_rtx;