diff options
author | Richard Biener <rguenther@suse.de> | 2018-04-28 07:05:27 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2018-04-28 07:05:27 +0000 |
commit | 782e47649004a0fbc97d0a8d8817577923a5e619 (patch) | |
tree | bc1d3f9a4dbf7b8d4e4547d72128355009b2d84a /gcc | |
parent | 5c2cab46561c26daf25039c43c086ffa9e4e67a7 (diff) | |
download | gcc-782e47649004a0fbc97d0a8d8817577923a5e619.zip gcc-782e47649004a0fbc97d0a8d8817577923a5e619.tar.gz gcc-782e47649004a0fbc97d0a8d8817577923a5e619.tar.bz2 |
tree-cfg.c (verify_gimple_phi): Take a gphi * argument.
2018-04-28 Richard Biener <rguenther@suse.de>
* tree-cfg.c (verify_gimple_phi): Take a gphi * argument.
(verify_gimple_in_cfg): Rename visited_stmts to visited_throwing_stmts
to reflect use. Only add interesting stmts.
From-SVN: r259738
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/tree-cfg.c | 14 |
2 files changed, 12 insertions, 8 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8513d2d..edc952c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2018-04-28 Richard Biener <rguenther@suse.de> + + * tree-cfg.c (verify_gimple_phi): Take a gphi * argument. + (verify_gimple_in_cfg): Rename visited_stmts to visited_throwing_stmts + to reflect use. Only add interesting stmts. + 2018-04-27 Martin Jambor <mjambor@suse.cz> PR ipa/85549 diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c index 34ab248..8726a53 100644 --- a/gcc/tree-cfg.c +++ b/gcc/tree-cfg.c @@ -5055,7 +5055,7 @@ verify_gimple_stmt (gimple *stmt) and false otherwise. */ static bool -verify_gimple_phi (gimple *phi) +verify_gimple_phi (gphi *phi) { bool err = false; unsigned i; @@ -5374,7 +5374,7 @@ verify_gimple_in_cfg (struct function *fn, bool verify_nothrow) timevar_push (TV_TREE_STMT_VERIFY); hash_set<void *> visited; - hash_set<gimple *> visited_stmts; + hash_set<gimple *> visited_throwing_stmts; /* Collect all BLOCKs referenced by the BLOCK tree of FN. */ hash_set<tree> blocks; @@ -5396,8 +5396,6 @@ verify_gimple_in_cfg (struct function *fn, bool verify_nothrow) bool err2 = false; unsigned i; - visited_stmts.add (phi); - if (gimple_bb (phi) != bb) { error ("gimple_bb (phi) is set to a wrong basic block"); @@ -5453,8 +5451,6 @@ verify_gimple_in_cfg (struct function *fn, bool verify_nothrow) tree addr; int lp_nr; - visited_stmts.add (stmt); - if (gimple_bb (stmt) != bb) { error ("gimple_bb (stmt) is set to a wrong basic block"); @@ -5504,6 +5500,8 @@ verify_gimple_in_cfg (struct function *fn, bool verify_nothrow) that they cannot throw, that we update other data structures to match. */ lp_nr = lookup_stmt_eh_lp (stmt); + if (lp_nr != 0) + visited_throwing_stmts.add (stmt); if (lp_nr > 0) { if (!stmt_could_throw_p (stmt)) @@ -5527,11 +5525,11 @@ verify_gimple_in_cfg (struct function *fn, bool verify_nothrow) } } - eh_error_found = false; hash_map<gimple *, int> *eh_table = get_eh_throw_stmt_table (cfun); + eh_error_found = false; if (eh_table) eh_table->traverse<hash_set<gimple *> *, verify_eh_throw_stmt_node> - (&visited_stmts); + (&visited_throwing_stmts); if (err || eh_error_found) internal_error ("verify_gimple failed"); |