< prev index next >
src/hotspot/share/gc/g1/g1OopClosures.hpp
Print this page
rev 52281 : [mq]: 8212911-unify-reference-handling-during-gc
@@ -41,11 +41,11 @@
class G1ScanClosureBase : public BasicOopIterateClosure {
protected:
G1CollectedHeap* _g1h;
G1ParScanThreadState* _par_scan_state;
- HeapRegion* _from;
+ bool _from_is_young;
G1ScanClosureBase(G1CollectedHeap* g1h, G1ParScanThreadState* par_scan_state);
~G1ScanClosureBase() { }
template <class T>
@@ -54,24 +54,21 @@
template <class T>
inline void handle_non_cset_obj_common(InCSetState const state, T* p, oop const obj);
public:
virtual ReferenceIterationMode reference_iteration_mode() { return DO_FIELDS; }
- void set_region(HeapRegion* from) { _from = from; }
+ void set_from_is_young(bool from_is_young) { _from_is_young = from_is_young; }
inline void trim_queue_partially();
};
// Used during the Update RS phase to refine remaining cards in the DCQ during garbage collection.
-class G1ScanObjsDuringUpdateRSClosure: public G1ScanClosureBase {
- uint _worker_i;
-
+class G1ScanObjsDuringUpdateRSClosure : public G1ScanClosureBase {
public:
G1ScanObjsDuringUpdateRSClosure(G1CollectedHeap* g1h,
- G1ParScanThreadState* pss,
- uint worker_i) :
- G1ScanClosureBase(g1h, pss), _worker_i(worker_i) { }
+ G1ParScanThreadState* pss) :
+ G1ScanClosureBase(g1h, pss) { }
template <class T> void do_oop_work(T* p);
virtual void do_oop(narrowOop* p) { do_oop_work(p); }
virtual void do_oop(oop* p) { do_oop_work(p); }
};
< prev index next >