From 733b97c9f037e0688e12089dd21a3f37a9fe3433 Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Tue, 2 Mar 2004 16:34:49 -0800 Subject: [PATCH] re PR middle-end/14327 (-O0 -fdefer-pop generates wrong code) PR middle-end/14327 * stmt.c (expand_computed_goto): Do do_pending_stack_adjust before emitting the label, not after. From-SVN: r78801 --- gcc/ChangeLog | 6 ++++++ gcc/stmt.c | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index be13cd700fbf..139b25a35b5c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2004-03-02 Richard Henderson + + PR middle-end/14327 + * stmt.c (expand_computed_goto): Do do_pending_stack_adjust before + emitting the label, not after. + 2004-03-02 Danny Smith * cppinit.c (init_standard_includes): Check that sysroot diff --git a/gcc/stmt.c b/gcc/stmt.c index 89b9840c25dd..6a053006903e 100644 --- a/gcc/stmt.c +++ b/gcc/stmt.c @@ -546,9 +546,9 @@ expand_computed_goto (exp) { cfun->computed_goto_common_reg = copy_to_mode_reg (Pmode, x); cfun->computed_goto_common_label = gen_label_rtx (); - emit_label (cfun->computed_goto_common_label); do_pending_stack_adjust (); + emit_label (cfun->computed_goto_common_label); emit_indirect_jump (cfun->computed_goto_common_reg); current_function_has_computed_jump = 1; -- 2.47.2