diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2015-06-25 17:15:44 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2015-06-25 17:15:44 +0000 |
commit | d6a818c59e002f76f237ad305bf4b73a415dcb3c (patch) | |
tree | eb230717d9cde4170f937a1e9235ca357475e5be /gcc/tree-ssa-uncprop.c | |
parent | 4ef7b52a932fffd5a43c26183515dcafc735c9a2 (diff) | |
download | gcc-d6a818c59e002f76f237ad305bf4b73a415dcb3c.zip gcc-d6a818c59e002f76f237ad305bf4b73a415dcb3c.tar.gz gcc-d6a818c59e002f76f237ad305bf4b73a415dcb3c.tar.bz2 |
tree-hash-traits.h: New file.
gcc/
* tree-hash-traits.h: New file.
(tree_operand_hash): New class.
* sanopt.c: Include tree-hash-traits.h.
(sanopt_tree_map_traits): Use tree_operand_hash.
* tree-if-conv.c: Include tree-hash-traits.h.
(phi_args_hash_traits): Use tree_operand_hash.
* tree-ssa-uncprop.c: Include tree-hash-traits.h.
(val_ssa_equiv_hash_traits): Use tree_operand_hash.
From-SVN: r224967
Diffstat (limited to 'gcc/tree-ssa-uncprop.c')
-rw-r--r-- | gcc/tree-ssa-uncprop.c | 17 |
1 files changed, 2 insertions, 15 deletions
diff --git a/gcc/tree-ssa-uncprop.c b/gcc/tree-ssa-uncprop.c index 4e7730d..cf03a54 100644 --- a/gcc/tree-ssa-uncprop.c +++ b/gcc/tree-ssa-uncprop.c @@ -47,6 +47,7 @@ along with GCC; see the file COPYING3. If not see #include "domwalk.h" #include "tree-pass.h" #include "tree-ssa-propagate.h" +#include "tree-hash-traits.h" /* The basic structure describing an equivalency created by traversing an edge. Traversing the edge effectively means that we can assume @@ -291,25 +292,11 @@ struct equiv_hash_elt /* Value to ssa name equivalence hashtable helpers. */ -struct val_ssa_equiv_hash_traits : default_hashmap_traits +struct val_ssa_equiv_hash_traits : simple_hashmap_traits <tree_operand_hash> { - static inline hashval_t hash (tree); - static inline bool equal_keys (tree, tree); template<typename T> static inline void remove (T &); }; -inline hashval_t -val_ssa_equiv_hash_traits::hash (tree value) -{ - return iterative_hash_expr (value, 0); -} - -inline bool -val_ssa_equiv_hash_traits::equal_keys (tree value1, tree value2) -{ - return operand_equal_p (value1, value2, 0); -} - /* Free an instance of equiv_hash_elt. */ template<typename T> |