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
This commit is contained in:
Kazu Hirata 2004-10-28 02:56:50 +00:00 committed by Kazu Hirata
parent 425834072e
commit 269da1e916
2 changed files with 6 additions and 11 deletions

View File

@ -1,3 +1,8 @@
2004-10-28 Kazu Hirata <kazu@cs.umass.edu>
* tree-ssa-dce.c (mark_stmt_if_obviously_necessary)
<COND_EXPR>: Use EDGE_COUNT instead of GOTO_DESTINATION.
2004-10-28 Joseph S. Myers <jsm@polyomino.org.uk>
* doc/contrib.texi, doc/cpp.texi, doc/cppopts.texi,

View File

@ -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: