Mercurial > hg > graal-jvmci-8
diff src/share/vm/memory/referenceProcessor.hpp @ 4014:bf2d2b8b1726
7095243: Disambiguate ReferenceProcessor::_discoveredSoftRefs
Summary: Add a new, separate, pointer to the base of the array of discovered reference lists and use this new pointer in places where we iterate over the entire array.
Reviewed-by: ysr, brutisso
author | johnc |
---|---|
date | Mon, 17 Oct 2011 09:57:41 -0700 |
parents | d1bdeef3e3e2 |
children | 441e946dc1af |
line wrap: on
line diff
--- a/src/share/vm/memory/referenceProcessor.hpp Fri Oct 14 11:12:24 2011 -0400 +++ b/src/share/vm/memory/referenceProcessor.hpp Mon Oct 17 09:57:41 2011 -0700 @@ -255,7 +255,11 @@ int _num_q; // The maximum MT'ness degree of the queues below int _max_num_q; - // Arrays of lists of oops, one per thread + + // Master array of discovered oops + DiscoveredList* _discovered_refs; + + // Arrays of lists of oops, one per thread (pointers into master array above) DiscoveredList* _discoveredSoftRefs; DiscoveredList* _discoveredWeakRefs; DiscoveredList* _discoveredFinalRefs; @@ -267,7 +271,8 @@ int num_q() { return _num_q; } int max_num_q() { return _max_num_q; } void set_active_mt_degree(int v) { _num_q = v; } - DiscoveredList* discovered_soft_refs() { return _discoveredSoftRefs; } + + DiscoveredList* discovered_refs() { return _discovered_refs; } ReferencePolicy* setup_policy(bool always_clear) { _current_soft_ref_policy = always_clear ? @@ -411,6 +416,7 @@ // constructor ReferenceProcessor(): _span((HeapWord*)NULL, (HeapWord*)NULL), + _discovered_refs(NULL), _discoveredSoftRefs(NULL), _discoveredWeakRefs(NULL), _discoveredFinalRefs(NULL), _discoveredPhantomRefs(NULL), _discovering_refs(false),