diff options
Diffstat (limited to 'gcc/trans-mem.c')
-rw-r--r-- | gcc/trans-mem.c | 16 |
1 files changed, 5 insertions, 11 deletions
diff --git a/gcc/trans-mem.c b/gcc/trans-mem.c index 29e5628..ded1e51 100644 --- a/gcc/trans-mem.c +++ b/gcc/trans-mem.c @@ -480,17 +480,11 @@ struct tm_wrapper_hasher : ggc_cache_hasher<tree_map *> return a->base.from == b->base.from; } - static void - handle_cache_entry (tree_map *&m) - { - extern void gt_ggc_mx (tree_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_map *> (HTAB_DELETED_ENTRY); - } + static int + keep_cache_entry (tree_map *&m) + { + return ggc_marked_p (m->base.from); + } }; static GTY((cache)) hash_table<tm_wrapper_hasher> *tm_wrap_map; |