aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-dce.c
diff options
context:
space:
mode:
authorKazu Hirata <kazu@cs.umass.edu>2004-10-28 02:56:50 +0000
committerKazu Hirata <kazu@gcc.gnu.org>2004-10-28 02:56:50 +0000
commit269da1e916910bcac1ddb8d82fba86eb5d0fc419 (patch)
tree1074891cf9cb826c113cc1053ac87841b2391ec8 /gcc/tree-ssa-dce.c
parent425834072ea3ccf0da56e91e31260c1e240dd050 (diff)
tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Use EDGE_COUNT instead of GOTO_DESTINATION.
* tree-ssa-dce.c (mark_stmt_if_obviously_necessary) <COND_EXPR>: Use EDGE_COUNT instead of GOTO_DESTINATION. From-SVN: r89729
Diffstat (limited to 'gcc/tree-ssa-dce.c')
-rw-r--r--gcc/tree-ssa-dce.c12
1 files changed, 1 insertions, 11 deletions
diff --git a/gcc/tree-ssa-dce.c b/gcc/tree-ssa-dce.c
index 563a99bf37e..47038ad3152 100644
--- a/gcc/tree-ssa-dce.c
+++ b/gcc/tree-ssa-dce.c
@@ -330,17 +330,7 @@ mark_stmt_if_obviously_necessary (tree stmt, bool aggressive)
return;
case COND_EXPR:
- if (GOTO_DESTINATION (COND_EXPR_THEN (stmt))
- == GOTO_DESTINATION (COND_EXPR_ELSE (stmt)))
- {
- /* A COND_EXPR is obviously dead if the target labels are the same.
- We cannot kill the statement at this point, so to prevent the
- statement from being marked necessary, we replace the condition
- with a constant. The stmt is killed later on in cfg_cleanup. */
- COND_EXPR_COND (stmt) = integer_zero_node;
- modify_stmt (stmt);
- return;
- }
+ gcc_assert (EDGE_COUNT (bb_for_stmt (stmt)->succs) == 2);
/* Fall through. */
case SWITCH_EXPR: