X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=blobdiff_plain;f=gcc%2Fbuiltins.c;h=c63d812d90fa3e53c2fd79cc40f6cd33435dc67d;hp=bdb29cea67d48c66b7588652acc5eb42d8a184d0;hb=101a5a9d8b3cf45d5c8b0754ea9b9df3d41b149b;hpb=a455468e9f5a16d5b354df6f7f4e3a7571c772cf diff --git a/gcc/builtins.c b/gcc/builtins.c index bdb29cea67d..c63d812d90f 100644 --- a/gcc/builtins.c +++ b/gcc/builtins.c @@ -639,10 +639,11 @@ expand_builtin_setjmp (tree arglist, rtx target) expand_builtin_setjmp_setup (buf_addr, next_lab); - /* Set TARGET to zero and branch to the continue label. */ + /* Set TARGET to zero and branch to the continue label. Use emit_jump to + ensure that pending stack adjustments are flushed. */ emit_move_insn (target, const0_rtx); - emit_jump_insn (gen_jump (cont_lab)); - emit_barrier (); + emit_jump (cont_lab); + emit_label (next_lab); expand_builtin_setjmp_receiver (next_lab);