]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Makefile.in (GTFILES): Remove tree-ssa-propagate.c.
authorRichard Biener <rguenther@suse.de>
Fri, 9 May 2014 07:49:18 +0000 (07:49 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Fri, 9 May 2014 07:49:18 +0000 (07:49 +0000)
2014-05-09  Richard Biener  <rguenther@suse.de>

* Makefile.in (GTFILES): Remove tree-ssa-propagate.c.
* tree-ssa-propagate.c: Do not include gt-tree-ssa-propagate.h.
(interesting_ssa_edges, varying_ssa_edges): Move out of GC space.
(add_ssa_edge, process_ssa_edge_worklist, ssa_prop_init,
ssa_propagate): Adjust.

From-SVN: r210261

gcc/ChangeLog
gcc/Makefile.in
gcc/tree-ssa-propagate.c

index 0b27fc823e0a900c8b0f254c76aa2a41cf5384cf..879bd55a4f3145cf2e18e4330f563be62f9873c0 100644 (file)
@@ -1,3 +1,11 @@
+2014-05-09  Richard Biener  <rguenther@suse.de>
+
+       * Makefile.in (GTFILES): Remove tree-ssa-propagate.c.
+       * tree-ssa-propagate.c: Do not include gt-tree-ssa-propagate.h.
+       (interesting_ssa_edges, varying_ssa_edges): Move out of GC space.
+       (add_ssa_edge, process_ssa_edge_worklist, ssa_prop_init,
+       ssa_propagate): Adjust.
+
 2014-05-08  Jeff Law  <law@redhat.com>
 
        PR tree-optimization/61009
index fd8c2c5b3eae3e80bd9bd72b246ceb4077a730e0..5492e81ad560ef30b68c54f2d621d07177e1394a 100644 (file)
@@ -2272,7 +2272,6 @@ GTFILES = $(CPP_ID_DATA_H) $(srcdir)/input.h $(srcdir)/coretypes.h \
   $(srcdir)/omp-low.c \
   $(srcdir)/targhooks.c $(out_file) $(srcdir)/passes.c $(srcdir)/cgraphunit.c \
   $(srcdir)/cgraphclones.c \
-  $(srcdir)/tree-ssa-propagate.c \
   $(srcdir)/tree-phinodes.c \
   $(srcdir)/tree-ssa-alias.h \
   $(srcdir)/tree-ssanames.h \
index 59e46dc6420b46b45e04e569740b7997714f451f..4e76d97e63974d18b6b8b3f19a922c04998ede6a 100644 (file)
@@ -153,7 +153,7 @@ static sbitmap bb_in_list;
    definition has changed.  SSA edges are def-use edges in the SSA
    web.  For each D-U edge, we store the target statement or PHI node
    U.  */
-static GTY(()) vec<gimple, va_gc> *interesting_ssa_edges;
+static vec<gimple> interesting_ssa_edges;
 
 /* Identical to INTERESTING_SSA_EDGES.  For performance reasons, the
    list of SSA edges is split into two.  One contains all SSA edges
@@ -169,7 +169,7 @@ static GTY(()) vec<gimple, va_gc> *interesting_ssa_edges;
    don't use a separate worklist for VARYING edges, we end up with
    situations where lattice values move from
    UNDEFINED->INTERESTING->VARYING instead of UNDEFINED->VARYING.  */
-static GTY(()) vec<gimple, va_gc> *varying_ssa_edges;
+static vec<gimple> varying_ssa_edges;
 
 
 /* Return true if the block worklist empty.  */
@@ -271,9 +271,9 @@ add_ssa_edge (tree var, bool is_varying)
        {
          gimple_set_plf (use_stmt, STMT_IN_SSA_EDGE_WORKLIST, true);
          if (is_varying)
-           vec_safe_push (varying_ssa_edges, use_stmt);
+           varying_ssa_edges.safe_push (use_stmt);
          else
-           vec_safe_push (interesting_ssa_edges, use_stmt);
+           interesting_ssa_edges.safe_push (use_stmt);
        }
     }
 }
@@ -369,15 +369,15 @@ simulate_stmt (gimple stmt)
    SSA edge is added to it in simulate_stmt.  */
 
 static void
-process_ssa_edge_worklist (vec<gimple, va_gc> **worklist)
+process_ssa_edge_worklist (vec<gimple*worklist)
 {
   /* Drain the entire worklist.  */
-  while ((*worklist)->length () > 0)
+  while (worklist->length () > 0)
     {
       basic_block bb;
 
       /* Pull the statement to simulate off the worklist.  */
-      gimple stmt = (*worklist)->pop ();
+      gimple stmt = worklist->pop ();
 
       /* If this statement was already visited by simulate_block, then
         we don't need to visit it again here.  */
@@ -492,8 +492,8 @@ ssa_prop_init (void)
   basic_block bb;
 
   /* Worklists of SSA edges.  */
-  vec_alloc (interesting_ssa_edges, 20);
-  vec_alloc (varying_ssa_edges, 20);
+  interesting_ssa_edges.create (20);
+  varying_ssa_edges.create (20);
 
   executable_blocks = sbitmap_alloc (last_basic_block_for_fn (cfun));
   bitmap_clear (executable_blocks);
@@ -535,8 +535,8 @@ ssa_prop_init (void)
 static void
 ssa_prop_fini (void)
 {
-  vec_free (interesting_ssa_edges);
-  vec_free (varying_ssa_edges);
+  interesting_ssa_edges.release ();
+  varying_ssa_edges.release ();
   cfg_blocks.release ();
   sbitmap_free (bb_in_list);
   sbitmap_free (executable_blocks);
@@ -859,8 +859,8 @@ ssa_propagate (ssa_prop_visit_stmt_fn visit_stmt,
 
   /* Iterate until the worklists are empty.  */
   while (!cfg_blocks_empty_p ()
-        || interesting_ssa_edges->length () > 0
-        || varying_ssa_edges->length () > 0)
+        || interesting_ssa_edges.length () > 0
+        || varying_ssa_edges.length () > 0)
     {
       if (!cfg_blocks_empty_p ())
        {
@@ -1464,5 +1464,3 @@ propagate_tree_value_into_stmt (gimple_stmt_iterator *gsi, tree val)
   else
     gcc_unreachable ();
 }
-
-#include "gt-tree-ssa-propagate.h"