revert: tree-cfg.c (mark_used_vars): New function.
authorRichard Guenther <rguenther@suse.de>
Tue, 20 Dec 2005 14:35:29 +0000 (14:35 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Tue, 20 Dec 2005 14:35:29 +0000 (14:35 +0000)
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

gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/tree-ssa/20031106-6.c
gcc/tree-cfg.c

index b489083..2c9a807 100644 (file)
@@ -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
index 7073aec..adcf8a0 100644 (file)
@@ -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
index 8708fe1..6d15c7b 100644 (file)
@@ -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" } } */
index d2e688e..37d041a 100644 (file)
@@ -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)