revert: tree-cfg.c (mark_used_vars): New function.
2005-12-20 Richard Guenther <rguenther@suse.de> Revert 2005-12-02 Richard Guenther <rguenther@suse.de> * tree-cfg.c (mark_used_vars): New function. (dump_function_to_file): Dump only used VAR_DECLs. * gcc.dg/tree-ssa/20031106-6.c: Remove XFAIL. From-SVN: r108852
This commit is contained in:
parent
68d04c6749
commit
bd989e4c10
@ -1,3 +1,11 @@
|
||||
2005-12-20 Richard Guenther <rguenther@suse.de>
|
||||
|
||||
Revert
|
||||
2005-12-02 Richard Guenther <rguenther@suse.de>
|
||||
|
||||
* tree-cfg.c (mark_used_vars): New function.
|
||||
(dump_function_to_file): Dump only used VAR_DECLs.
|
||||
|
||||
2005-12-19 Roger Sayle <roger@eyesopen.com>
|
||||
|
||||
* combine.c (try_combine): Improve splitting of binary operators
|
||||
|
@ -1,3 +1,10 @@
|
||||
2005-12-20 Richard Guenther <rguenther@suse.de>
|
||||
|
||||
Revert
|
||||
2005-12-02 Richard Guenther <rguenther@suse.de>
|
||||
|
||||
* gcc.dg/tree-ssa/20031106-6.c: Remove XFAIL.
|
||||
|
||||
2005-12-20 Mark Mitchell <mark@codesourcery.com>
|
||||
|
||||
PR c++/21228
|
||||
|
@ -25,5 +25,5 @@ struct s foo (struct s r)
|
||||
|
||||
/* There should be no references to any of "temp_struct*"
|
||||
temporaries. */
|
||||
/* { dg-final { scan-tree-dump-times "temp_struct" 0 "optimized" } } */
|
||||
/* { dg-final { scan-tree-dump-times "temp_struct" 0 "optimized" { xfail *-*-* } } } */
|
||||
/* { dg-final { cleanup-tree-dump "optimized" } } */
|
||||
|
@ -4428,26 +4428,6 @@ tree_duplicate_sese_region (edge entry, edge exit,
|
||||
}
|
||||
|
||||
|
||||
static tree
|
||||
mark_used_vars (tree *tp, int *walk_subtrees, void *used_vars_)
|
||||
{
|
||||
bitmap *used_vars = (bitmap *)used_vars_;
|
||||
|
||||
if (walk_subtrees
|
||||
&& IS_TYPE_OR_DECL_P (*tp))
|
||||
*walk_subtrees = 0;
|
||||
|
||||
if (!SSA_VAR_P (*tp))
|
||||
return NULL_TREE;
|
||||
|
||||
if (TREE_CODE (*tp) == SSA_NAME)
|
||||
bitmap_set_bit (*used_vars, DECL_UID (SSA_NAME_VAR (*tp)));
|
||||
else
|
||||
bitmap_set_bit (*used_vars, DECL_UID (*tp));
|
||||
|
||||
return NULL_TREE;
|
||||
}
|
||||
|
||||
/* Dump FUNCTION_DECL FN to file FILE using FLAGS (see TDF_* in tree.h) */
|
||||
|
||||
void
|
||||
@ -4482,47 +4462,18 @@ dump_function_to_file (tree fn, FILE *file, int flags)
|
||||
BIND_EXPRs, so display them separately. */
|
||||
if (cfun && cfun->decl == fn && cfun->unexpanded_var_list)
|
||||
{
|
||||
bitmap used_vars = BITMAP_ALLOC (NULL);
|
||||
ignore_topmost_bind = true;
|
||||
|
||||
/* Record vars we'll use dumping the functions tree. */
|
||||
if (cfun->cfg && basic_block_info)
|
||||
{
|
||||
FOR_EACH_BB (bb)
|
||||
{
|
||||
block_stmt_iterator bsi;
|
||||
for (bsi = bsi_start (bb); !bsi_end_p (bsi); bsi_next (&bsi))
|
||||
walk_tree (bsi_stmt_ptr (bsi), mark_used_vars,
|
||||
&used_vars, NULL);
|
||||
}
|
||||
for (vars = cfun->unexpanded_var_list; vars;
|
||||
vars = TREE_CHAIN (vars))
|
||||
{
|
||||
var = TREE_VALUE (vars);
|
||||
if (TREE_CODE (var) == VAR_DECL
|
||||
&& DECL_INITIAL (var)
|
||||
&& bitmap_bit_p (used_vars, DECL_UID (var)))
|
||||
walk_tree (&DECL_INITIAL (var), mark_used_vars,
|
||||
&used_vars, NULL);
|
||||
}
|
||||
}
|
||||
|
||||
/* Dump used vars. */
|
||||
fprintf (file, "{\n");
|
||||
for (vars = cfun->unexpanded_var_list; vars; vars = TREE_CHAIN (vars))
|
||||
{
|
||||
var = TREE_VALUE (vars);
|
||||
if (cfun->cfg && basic_block_info
|
||||
&& !bitmap_bit_p (used_vars, DECL_UID (var)))
|
||||
continue;
|
||||
|
||||
print_generic_decl (file, var, flags);
|
||||
fprintf (file, "\n");
|
||||
|
||||
any_var = true;
|
||||
}
|
||||
|
||||
BITMAP_FREE (used_vars);
|
||||
}
|
||||
|
||||
if (cfun && cfun->decl == fn && cfun->cfg && basic_block_info)
|
||||
|
Loading…
Reference in New Issue
Block a user