< prev index next >

src/hotspot/share/gc/shared/referenceProcessor.hpp

Print this page
rev 49831 : imported patch 8201492-properly-implement-non-contiguous-reference-processing
rev 49834 : [mq]: 8202021-cleanup-referenceprocessor
rev 49835 : [mq]: 8202021-stefanj-review

@@ -76,15 +76,17 @@
 class DiscoveredListIterator {
 private:
   DiscoveredList&    _refs_list;
   HeapWord*          _prev_discovered_addr;
   oop                _prev_discovered;
-  oop                _ref;
-  HeapWord*          _discovered_addr;
+  oop                _current_discovered;
+  HeapWord*          _current_discovered_addr;
   oop                _next_discovered;
+
   HeapWord*          _referent_addr;
   oop                _referent;
+
   OopClosure*        _keep_alive;
   BoolObjectClosure* _is_alive;
 
   DEBUG_ONLY(
   oop                _first_seen; // cyclic linked list check

@@ -99,14 +101,14 @@
   inline DiscoveredListIterator(DiscoveredList&    refs_list,
                                 OopClosure*        keep_alive,
                                 BoolObjectClosure* is_alive);
 
   // End Of List.
-  inline bool has_next() const { return _ref != NULL; }
+  inline bool has_next() const { return _current_discovered != NULL; }
 
   // Get oop to the Reference object.
-  inline oop obj() const { return _ref; }
+  inline oop obj() const { return _current_discovered; }
 
   // Get oop to the referent object.
   inline oop referent() const { return _referent; }
 
   // Returns true if referent is alive.

@@ -121,12 +123,12 @@
   // discovery concurrently, or interleaved, with mutator execution.
   void load_ptrs(DEBUG_ONLY(bool allow_null_referent));
 
   // Move to the next discovered reference.
   inline void next() {
-    _prev_discovered_addr = _discovered_addr;
-    _prev_discovered = _ref;
+    _prev_discovered_addr = _current_discovered_addr;
+    _prev_discovered = _current_discovered;
     move_to_next();
   }
 
   // Remove the current reference from the list
   void remove();

@@ -148,17 +150,17 @@
   inline size_t processed() const { return _processed; }
   inline size_t removed() const   { return _removed; }
   )
 
   inline void move_to_next() {
-    if (_ref == _next_discovered) {
+    if (_current_discovered == _next_discovered) {
       // End of the list.
-      _ref = NULL;
+      _current_discovered = NULL;
     } else {
-      _ref = _next_discovered;
+      _current_discovered = _next_discovered;
     }
-    assert(_ref != _first_seen, "cyclic ref_list found");
+    assert(_current_discovered != _first_seen, "cyclic ref_list found");
     NOT_PRODUCT(_processed++);
   }
 };
 
 class ReferenceProcessor : public CHeapObj<mtGC> {
< prev index next >