tree-cfg.c (verify_node_sharing_1): Split out from ...
2013-01-11 Richard Biener <rguenther@suse.de> * tree-cfg.c (verify_node_sharing_1): Split out from ... (verify_node_sharing): ... here. (verify_gimple_in_cfg): Use verify_node_sharing_1 for walk_tree. From-SVN: r195107
This commit is contained in:
parent
cb24ba82a5
commit
980d081296
2 changed files with 20 additions and 5 deletions
|
@ -1,3 +1,9 @@
|
|||
2013-01-11 Richard Biener <rguenther@suse.de>
|
||||
|
||||
* tree-cfg.c (verify_node_sharing_1): Split out from ...
|
||||
(verify_node_sharing): ... here.
|
||||
(verify_gimple_in_cfg): Use verify_node_sharing_1 for walk_tree.
|
||||
|
||||
2013-01-11 Eric Botcazou <ebotcazou@adacore.com>
|
||||
|
||||
* configure.ac (Tree checking): Set TREECHECKING to yes if enabled.
|
||||
|
|
|
@ -4462,13 +4462,12 @@ tree_node_can_be_shared (tree t)
|
|||
return false;
|
||||
}
|
||||
|
||||
/* Called via walk_gimple_stmt. Verify tree sharing. */
|
||||
/* Called via walk_tree. Verify tree sharing. */
|
||||
|
||||
static tree
|
||||
verify_node_sharing (tree *tp, int *walk_subtrees, void *data)
|
||||
verify_node_sharing_1 (tree *tp, int *walk_subtrees, void *data)
|
||||
{
|
||||
struct walk_stmt_info *wi = (struct walk_stmt_info *) data;
|
||||
struct pointer_set_t *visited = (struct pointer_set_t *) wi->info;
|
||||
struct pointer_set_t *visited = (struct pointer_set_t *) data;
|
||||
|
||||
if (tree_node_can_be_shared (*tp))
|
||||
{
|
||||
|
@ -4482,6 +4481,15 @@ verify_node_sharing (tree *tp, int *walk_subtrees, void *data)
|
|||
return NULL;
|
||||
}
|
||||
|
||||
/* Called via walk_gimple_stmt. Verify tree sharing. */
|
||||
|
||||
static tree
|
||||
verify_node_sharing (tree *tp, int *walk_subtrees, void *data)
|
||||
{
|
||||
struct walk_stmt_info *wi = (struct walk_stmt_info *) data;
|
||||
return verify_node_sharing_1 (tp, walk_subtrees, wi->info);
|
||||
}
|
||||
|
||||
static bool eh_error_found;
|
||||
static int
|
||||
verify_eh_throw_stmt_node (void **slot, void *data)
|
||||
|
@ -4534,7 +4542,8 @@ verify_gimple_in_cfg (struct function *fn)
|
|||
for (i = 0; i < gimple_phi_num_args (phi); i++)
|
||||
{
|
||||
tree arg = gimple_phi_arg_def (phi, i);
|
||||
tree addr = walk_tree (&arg, verify_node_sharing, visited, NULL);
|
||||
tree addr = walk_tree (&arg, verify_node_sharing_1,
|
||||
visited, NULL);
|
||||
if (addr)
|
||||
{
|
||||
error ("incorrect sharing of tree nodes");
|
||||
|
|
Loading…
Add table
Reference in a new issue