diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2015-06-25 17:05:47 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2015-06-25 17:05:47 +0000 |
commit | 08ec27543d91cff797fc8dd0a8eb47cda2c843f7 (patch) | |
tree | ca64d02be9c4087e4dadaeef0f61260ee7abcc17 /gcc/ada | |
parent | f11c37791e904dac9f2b24bc8222c39221596eed (diff) | |
download | gcc-08ec27543d91cff797fc8dd0a8eb47cda2c843f7.zip gcc-08ec27543d91cff797fc8dd0a8eb47cda2c843f7.tar.gz gcc-08ec27543d91cff797fc8dd0a8eb47cda2c843f7.tar.bz2 |
decl.c (value_annotation_hasher::handle_cache_entry): Delete.
gcc/ada/
* gcc-interface/decl.c (value_annotation_hasher::handle_cache_entry):
Delete.
(value_annotation_hasher::keep_cache_entry): New function.
* gcc-interface/utils.c (pad_type_hasher::handle_cache_entry):
Delete.
(pad_type_hasher::keep_cache_entry): New function.
gcc/
* hash-table.h (hash_table): Add gt_cleare_cache as a friend.
(gt_cleare_cache): Check here for deleted and empty entries.
Replace handle_cache_entry with a call to keep_cache_entry.
* hash-traits.h (ggc_cache_hasher::handle_cache_entry): Delete.
(ggc_cache_hasher::keep_cache_entry): New function.
* trans-mem.c (tm_wrapper_hasher::handle_cache_entry): Delete.
(tm_wrapper_hasher::keep_cache_entry): New function.
* tree.h (tree_decl_map_cache_hasher::handle_cache_entry): Delete.
(tree_vec_map_cache_hasher::keep_cache_entry): New function.
* tree.c (type_cache_hasher::handle_cache_entry): Delete.
(type_cache_hasher::keep_cache_entry): New function.
(tree_vec_map_cache_hasher::handle_cache_entry): Delete.
(tree_vec_map_cache_hasher::keep_cache_entry): New function.
* ubsan.c (tree_type_map_cache_hasher::handle_cache_entry): Delete.
(tree_type_map_cache_hasher::keep_cache_entry): New function.
* varasm.c (tm_clone_hasher::handle_cache_entry): Delete.
(tm_clone_hasher::keep_cache_entry): New function.
* config/i386/i386.c (dllimport_hasher::handle_cache_entry): Delete.
(dllimport_hasher::keep_cache_entry): New function.
From-SVN: r224954
Diffstat (limited to 'gcc/ada')
-rw-r--r-- | gcc/ada/ChangeLog | 9 | ||||
-rw-r--r-- | gcc/ada/gcc-interface/decl.c | 12 | ||||
-rw-r--r-- | gcc/ada/gcc-interface/utils.c | 14 |
3 files changed, 16 insertions, 19 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 09d1ef9..e4fc125 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,12 @@ +2015-06-25 Richard Sandiford <richard.sandiford@arm.com> + + * gcc-interface/decl.c (value_annotation_hasher::handle_cache_entry): + Delete. + (value_annotation_hasher::keep_cache_entry): New function. + * gcc-interface/utils.c (pad_type_hasher::handle_cache_entry): + Delete. + (pad_type_hasher::keep_cache_entry): New function. + 2015-06-25 Andrew MacLeod <amacleod@redhat.com> * gcc-interface/misc.c: Include calls.h not function.h. diff --git a/gcc/ada/gcc-interface/decl.c b/gcc/ada/gcc-interface/decl.c index af2d11e..7511c56 100644 --- a/gcc/ada/gcc-interface/decl.c +++ b/gcc/ada/gcc-interface/decl.c @@ -148,16 +148,10 @@ struct value_annotation_hasher : ggc_cache_hasher<tree_int_map *> return a->base.from == b->base.from; } - static void - handle_cache_entry (tree_int_map *&m) + static int + keep_cache_entry (tree_int_map *&m) { - extern void gt_ggc_mx (tree_int_map *&); - if (m == HTAB_EMPTY_ENTRY || m == HTAB_DELETED_ENTRY) - return; - else if (ggc_marked_p (m->base.from)) - gt_ggc_mx (m); - else - m = static_cast<tree_int_map *> (HTAB_DELETED_ENTRY); + return ggc_marked_p (m->base.from); } }; diff --git a/gcc/ada/gcc-interface/utils.c b/gcc/ada/gcc-interface/utils.c index fbdf473..6044600 100644 --- a/gcc/ada/gcc-interface/utils.c +++ b/gcc/ada/gcc-interface/utils.c @@ -241,7 +241,7 @@ struct pad_type_hasher : ggc_cache_hasher<pad_type_hash *> { static inline hashval_t hash (pad_type_hash *t) { return t->hash; } static bool equal (pad_type_hash *a, pad_type_hash *b); - static void handle_cache_entry (pad_type_hash *&); + static int keep_cache_entry (pad_type_hash *&); }; static GTY ((cache)) @@ -1168,16 +1168,10 @@ make_type_from_size (tree type, tree size_tree, bool for_biased) /* See if the data pointed to by the hash table slot is marked. */ -void -pad_type_hasher::handle_cache_entry (pad_type_hash *&t) +int +pad_type_hasher::keep_cache_entry (pad_type_hash *&t) { - extern void gt_ggc_mx (pad_type_hash *&); - if (t == HTAB_EMPTY_ENTRY || t == HTAB_DELETED_ENTRY) - return; - else if (ggc_marked_p (t->type)) - gt_ggc_mx (t); - else - t = static_cast<pad_type_hash *> (HTAB_DELETED_ENTRY); + return ggc_marked_p (t->type); } /* Return true iff the padded types are equivalent. */ |