diff options
author | Kazu Hirata <kazu@cs.umass.edu> | 2004-11-04 22:07:39 +0000 |
---|---|---|
committer | Kazu Hirata <kazu@gcc.gnu.org> | 2004-11-04 22:07:39 +0000 |
commit | 65f4323d84b08d9d0ff450d6e6432abf0a4fa3fb (patch) | |
tree | 30f1b96da58dd9b0620f5c8de78c367da5fc1076 /gcc/tree-cfg.c | |
parent | d48b4987af16e1aa3fce96eccb867ed31b1c74dc (diff) | |
download | gcc-65f4323d84b08d9d0ff450d6e6432abf0a4fa3fb.zip gcc-65f4323d84b08d9d0ff450d6e6432abf0a4fa3fb.tar.gz gcc-65f4323d84b08d9d0ff450d6e6432abf0a4fa3fb.tar.bz2 |
tree-cfg.c (find_taken_edge): Reject VAL begin NULL.
* tree-cfg.c (find_taken_edge): Reject VAL begin NULL.
* tree-ssa-ccp.c (visit_cond_stmt): Don't call find_taken_edge
with VAL being NULL.
From-SVN: r90083
Diffstat (limited to 'gcc/tree-cfg.c')
-rw-r--r-- | gcc/tree-cfg.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c index 3c8a505..67b96a5 100644 --- a/gcc/tree-cfg.c +++ b/gcc/tree-cfg.c @@ -1954,15 +1954,16 @@ find_taken_edge (basic_block bb, tree val) gcc_assert (stmt); gcc_assert (is_ctrl_stmt (stmt)); + gcc_assert (val); /* If VAL is a predicate of the form N RELOP N, where N is an SSA_NAME, we can usually determine its truth value. */ - if (val && COMPARISON_CLASS_P (val)) + if (COMPARISON_CLASS_P (val)) val = fold (val); /* If VAL is not a constant, we can't determine which edge might be taken. */ - if (val == NULL || !really_constant_p (val)) + if (!really_constant_p (val)) return NULL; if (TREE_CODE (stmt) == COND_EXPR) |