re PR testsuite/21967 (gcc.dg/tree-ssa/loop-2.c and gcc.dg/tree-ssa/loop-4.c fail)

PR testsuite/21967
	* tree-ssa-live.c (mark_all_vars_used_1): Ignore variables in
	TMR_ORIGINAL.

From-SVN: r101462
This commit is contained in:
Zdenek Dvorak 2005-06-30 13:06:32 +02:00 committed by Zdenek Dvorak
parent c9b3f81751
commit 89632019a9
2 changed files with 18 additions and 0 deletions

View File

@ -1,3 +1,9 @@
2005-06-30 Zdenek Dvorak <dvorakz@suse.cz>
PR testsuite/21967
* tree-ssa-live.c (mark_all_vars_used_1): Ignore variables in
TMR_ORIGINAL.
2005-06-30 Bernd Schmidt <bernd.schmidt@analog.com>
* config/bfin/bfin.md (addv2hi3, subv2hi3, sminv2hi3, smaxv2hi3,

View File

@ -286,6 +286,7 @@ change_partition_var (var_map map, tree var, int part)
map->partition_to_var[map->compact_to_partition[part]] = var;
}
static inline void mark_all_vars_used (tree *);
/* Helper function for mark_all_vars_used, called via walk_tree. */
@ -295,6 +296,17 @@ mark_all_vars_used_1 (tree *tp, int *walk_subtrees,
{
tree t = *tp;
/* Ignore TREE_ORIGINAL for TARGET_MEM_REFS, as well as other
fields that do not contain vars. */
if (TREE_CODE (t) == TARGET_MEM_REF)
{
mark_all_vars_used (&TMR_SYMBOL (t));
mark_all_vars_used (&TMR_BASE (t));
mark_all_vars_used (&TMR_INDEX (t));
*walk_subtrees = 0;
return NULL;
}
/* Only need to mark VAR_DECLS; parameters and return results are not
eliminated as unused. */
if (TREE_CODE (t) == VAR_DECL)