]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
haifa-sched.c (init_before_recovery): Do not set EDGE_CAN_FALLTHRU.
authorSteven Bosscher <steven@gcc.gnu.org>
Mon, 16 Jul 2012 11:50:29 +0000 (11:50 +0000)
committerSteven Bosscher <steven@gcc.gnu.org>
Mon, 16 Jul 2012 11:50:29 +0000 (11:50 +0000)
* haifa-sched.c (init_before_recovery): Do not set EDGE_CAN_FALLTHRU.
* cfgrtl.c (force_nonfallthru_and_redirect): Likewise.

From-SVN: r189523

gcc/ChangeLog
gcc/cfgrtl.c
gcc/haifa-sched.c

index 985bbdc5b9ace17d7af35846576941745a2b2da5..6c6ecff72cd8cd3c2c1da43eb9e31d621e2699b4 100644 (file)
@@ -1,5 +1,16 @@
 2012-07-16  Steven Bosscher  <steven@gcc.gnu.org>
 
+       * haifa-sched.c (init_before_recovery): Do not set EDGE_CAN_FALLTHRU.
+       * cfgrtl.c (force_nonfallthru_and_redirect): Likewise.
+
+       * function.c (stack_protect_epilogue): Use expand_call to expand
+       targetm.stack_protect_fail.
+       * stmt.c (expand_expr_stmt): Remove now-unused function.
+       * tree.h (expand_expr_stmt): Remove prototype.
+       * doc/tm.texi.in (TARGET_STACK_PROTECT_FAIL): Document that this
+       hook must return a CALL_EXPR.
+       * doc/tm.texi: Regenerate.
+
        * emit-rtl.c (emit_label_before): Do not allow the same label
         to be emitted twice.
        (emit_label_after): Likewise.
index 595975194ddf72380ae15e8b23218adb8169e857..34e8bd45b81916a8baecb8b3dabf36a0155cb72e 100644 (file)
@@ -1365,8 +1365,8 @@ force_nonfallthru_and_redirect (edge e, basic_block target, rtx jump_label)
         one and create separate abnormal edge to original destination.
         This allows bb-reorder to make such edge non-fallthru.  */
       gcc_assert (e->dest == target);
-      abnormal_edge_flags = e->flags & ~(EDGE_FALLTHRU | EDGE_CAN_FALLTHRU);
-      e->flags &= EDGE_FALLTHRU | EDGE_CAN_FALLTHRU;
+      abnormal_edge_flags = e->flags & ~EDGE_FALLTHRU;
+      e->flags &= EDGE_FALLTHRU;
     }
   else
     {
index dcfac6aa336e7b4dab37cf2269b9879f61c698d4..9cd0070998a0f4a8decf66819f7327583532dd1a 100644 (file)
@@ -7194,8 +7194,7 @@ init_before_recovery (basic_block *before_recovery_ptr)
 
       redirect_edge_succ (e, single);
       make_single_succ_edge (single, empty, 0);
-      make_single_succ_edge (empty, EXIT_BLOCK_PTR,
-                            EDGE_FALLTHRU | EDGE_CAN_FALLTHRU);
+      make_single_succ_edge (empty, EXIT_BLOCK_PTR, EDGE_FALLTHRU);
 
       label = block_label (empty);
       x = emit_jump_insn_after (gen_jump (label), BB_END (single));