diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2015-06-25 17:16:15 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2015-06-25 17:16:15 +0000 |
commit | 84a98514b3d659ab6ca4b6bc624a1b7453fa0daa (patch) | |
tree | ce4faaa466bf8b43e8a1e7d3bcd62a5d44dc9e40 /gcc | |
parent | 5d6678ae80850da572b28776ef9dd19b04d5fefd (diff) | |
download | gcc-84a98514b3d659ab6ca4b6bc624a1b7453fa0daa.zip gcc-84a98514b3d659ab6ca4b6bc624a1b7453fa0daa.tar.gz gcc-84a98514b3d659ab6ca4b6bc624a1b7453fa0daa.tar.bz2 |
tree-hash-traits.h (tree_hash): New class.
gcc/
* tree-hash-traits.h (tree_hash): New class.
* except.c: Include tree-hash-traits.h.
(tree_hash_traits): Use tree_hash.
From-SVN: r224970
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/except.c | 7 | ||||
-rw-r--r-- | gcc/tree-hash-traits.h | 12 |
3 files changed, 20 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f95f2dc..6389191 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,11 @@ 2015-06-25 Richard Sandiford <richard.sandiford@arm.com> + * tree-hash-traits.h (tree_hash): New class. + * except.c: Include tree-hash-traits.h. + (tree_hash_traits): Use tree_hash. + +2015-06-25 Richard Sandiford <richard.sandiford@arm.com> + * tree-hash-traits.h (tree_ssa_name_hasher): New class. * sese.c: Include tree-hash-traits.h. (rename_map_hasher): Use tree_ssa_name_hasher. diff --git a/gcc/except.c b/gcc/except.c index ce1e31f..081b402 100644 --- a/gcc/except.c +++ b/gcc/except.c @@ -159,14 +159,11 @@ along with GCC; see the file COPYING3. If not see #include "tree-pass.h" #include "cfgloop.h" #include "builtins.h" +#include "tree-hash-traits.h" static GTY(()) int call_site_base; -struct tree_hash_traits : default_hashmap_traits -{ - static hashval_t hash (tree t) { return TREE_HASH (t); } -}; - +struct tree_hash_traits : simple_hashmap_traits <tree_hash> {}; static GTY (()) hash_map<tree, tree, tree_hash_traits> *type_to_runtime_map; /* Describe the SjLj_Function_Context structure. */ diff --git a/gcc/tree-hash-traits.h b/gcc/tree-hash-traits.h index 1f4364f..1edc49e 100644 --- a/gcc/tree-hash-traits.h +++ b/gcc/tree-hash-traits.h @@ -67,4 +67,16 @@ tree_ssa_name_hash::hash (tree t) return SSA_NAME_VERSION (t); } +/* Hasher for general trees, based on their TREE_HASH. */ +struct tree_hash : ggc_ptr_hash <tree_node> +{ + static hashval_t hash (tree); +}; + +inline hashval_t +tree_hash::hash (tree t) +{ + return TREE_HASH (t); +} + #endif |