remove val_ssa_equiv_hash_traits
authorTrevor Saunders <tbsaunde+gcc@tbsaunde.org>
Tue, 24 Nov 2015 11:46:18 +0000 (11:46 +0000)
committerTrevor Saunders <tbsaunde@gcc.gnu.org>
Tue, 24 Nov 2015 11:46:18 +0000 (11:46 +0000)
gcc/ChangeLog:

2015-11-24  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* tree-ssa-uncprop.c (struct val_ssa_equiv_hash_traits): Remove.
(val_ssa_equiv_hash_traits::remove): Likewise.
(pass_uncprop::execute): Adjust.

From-SVN: r230802

gcc/ChangeLog
gcc/tree-ssa-uncprop.c

index 452f724765fb3ffe9d4763095f9b5dd8b5a77641..cea194b0b830d5fed40b6c2687526e7bd110a7ab 100644 (file)
@@ -1,3 +1,9 @@
+2015-11-24  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
+
+       * tree-ssa-uncprop.c (struct val_ssa_equiv_hash_traits): Remove.
+       (val_ssa_equiv_hash_traits::remove): Likewise.
+       (pass_uncprop::execute): Adjust.
+
 2015-11-24  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
 
        * hash-map-traits.h (simple_hashmap_traits ::remove): call
index 23b4ca2a008ffb0330b2b9a6459a868f90524a20..a60184e31fe191557128535e9fcd4728d335c449 100644 (file)
@@ -275,27 +275,10 @@ struct equiv_hash_elt
   vec<tree> equivalences;
 };
 
-/* Value to ssa name equivalence hashtable helpers.  */
-
-struct val_ssa_equiv_hash_traits : simple_hashmap_traits <tree_operand_hash,
-                                                         vec<tree> >
-{
-  template<typename T> static inline void remove (T &);
-};
-
-/* Free an instance of equiv_hash_elt.  */
-
-template<typename T>
-inline void
-val_ssa_equiv_hash_traits::remove (T &elt)
-{
-  elt.m_value.release ();
-}
-
 /* Global hash table implementing a mapping from invariant values
    to a list of SSA_NAMEs which have the same value.  We might be
    able to reuse tree-vn for this code.  */
-static hash_map<tree, vec<tree>, val_ssa_equiv_hash_traits> *val_ssa_equiv;
+static hash_map<tree, auto_vec<tree> > *val_ssa_equiv;
 
 static void uncprop_into_successor_phis (basic_block);
 
@@ -518,8 +501,7 @@ pass_uncprop::execute (function *fun)
   associate_equivalences_with_edges ();
 
   /* Create our global data structures.  */
-  val_ssa_equiv
-    = new hash_map<tree, vec<tree>, val_ssa_equiv_hash_traits> (1024);
+  val_ssa_equiv = new hash_map<tree, auto_vec<tree> > (1024);
 
   /* We're going to do a dominator walk, so ensure that we have
      dominance information.  */