diff options
author | tbsaunde <tbsaunde@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-11-20 15:10:11 +0000 |
---|---|---|
committer | tbsaunde <tbsaunde@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-11-20 15:10:11 +0000 |
commit | f863a58699d3bfadf18c502e1ee4488e7ebfdd15 (patch) | |
tree | fa770de679e7f22bf1d98fb9ad84e84a0d60cfa0 /gcc/ggc-common.c | |
parent | 2cafda86f9b27c172bc7c237581d9275b0e0ddfd (diff) | |
download | gcc-f863a58699d3bfadf18c502e1ee4488e7ebfdd15.tar.gz |
implement a replacement for if_marked
gcc/ChangeLog:
2014-11-20 Trevor Saunders <tsaunders@mozilla.com>
* doc/gty.texi: Document the new cache gty attribute.
* gengtype.c (finish_cache_funcs): New function.
(write_roots): Call gt_clear_cache on global variables with the cache
gty attribute.
* ggc-common.c (ggc_mark_roots): Call gt_clear_caches.
* ggc.h (gt_clear_caches): New declaration.
* hash-table.h (struct ggc_cache_hasher): New hasher for caches in gc
memory.
(gt_cleare_cache): New function.
* emit-rtl.c, rtl.h, tree.c: Use hash_table instead of htab.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217866 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ggc-common.c')
-rw-r--r-- | gcc/ggc-common.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/ggc-common.c b/gcc/ggc-common.c index 32440b4f66c..06f70c2f353 100644 --- a/gcc/ggc-common.c +++ b/gcc/ggc-common.c @@ -162,6 +162,8 @@ ggc_mark_roots (void) for (ct = gt_ggc_cache_rtab; *ct; ct++) ggc_scan_cache_tab (*ct); + gt_clear_caches (); + FOR_EACH_VEC_ELT (extra_cache_vec, i, ctp) ggc_scan_cache_tab (ctp); |