aboutsummaryrefslogtreecommitdiff
path: root/gcc/cfglayout.c
diff options
context:
space:
mode:
authorSteven Bosscher <stevenb@suse.de>2004-08-19 00:32:41 +0000
committerSteven Bosscher <stevenb@suse.de>2004-08-19 00:32:41 +0000
commit346d11aa622496e2e96fd029449311a3c9720223 (patch)
tree78ce9f32b952d51f37e0689307e730753fca369a /gcc/cfglayout.c
parentde1ae87dd39e6424fcab8c3c2da7b81e95a3617e (diff)
* basic-block.h (struct edge_def): Remove crossing_edge.
(EDGE_CROSSING): New define. (EDGE_ALL_FLAGS): Update. * bb-reorder.c (find_traces_1_round, better_edge_p, find_rarely_executed_basic_blocks_and_cr, fix_up_fall_thru_edges, find_jump_block, fix_crossing_conditional_branches, fix_crossing_unconditional_branches, add_reg_crossing_jump_notes): Replace all occurences of crossing_edge with an edge flag check or set/reset. * cfgcleanup.c (try_simplify_condjump, try_forward_edges, try_crossjump_bb): Likewise. * cfglayout.c (fixup_reorder_chain): Likewise. * cfgrtl.c (force_nonfallthru_and_redirect, commit_one_edge_insertion): Likewise. * Makefile.in (cfganal.o): Depend on TIMEVAR_H. * tree-flow.h (compute_dominance_frontiers): Move prototype... * basic-block.h: ...here. * tree-cfg.c (compute_dominance_frontiers_1, compute_dominance_frontiers): Move from here... * cfganal.c: ...to here. Include timevar.h. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@86228 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cfglayout.c')
-rw-r--r--gcc/cfglayout.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/cfglayout.c b/gcc/cfglayout.c
index 0cf7d8e5131..e99ed6484da 100644
--- a/gcc/cfglayout.c
+++ b/gcc/cfglayout.c
@@ -723,7 +723,8 @@ fixup_reorder_chain (void)
/* If the "jumping" edge is a crossing edge, and the fall
through edge is non-crossing, leave things as they are. */
- else if (e_taken->crossing_edge && !e_fall->crossing_edge)
+ else if ((e_taken->flags & EDGE_CROSSING)
+ && !(e_fall->flags & EDGE_CROSSING))
continue;
/* Otherwise we can try to invert the jump. This will
@@ -814,7 +815,7 @@ fixup_reorder_chain (void)
}
if (JUMP_P (BB_END (bb))
&& !any_condjump_p (BB_END (bb))
- && bb->succ->crossing_edge )
+ && (bb->succ->flags & EDGE_CROSSING))
REG_NOTES (BB_END (bb)) = gen_rtx_EXPR_LIST
(REG_CROSSING_JUMP, NULL_RTX, REG_NOTES (BB_END (bb)));
}