< prev index next >

src/share/vm/gc/g1/g1OopClosures.hpp

Print this page
rev 8819 : imported patch 8040162-avoid-reallocating-plab-allocators

*** 59,68 **** --- 59,69 ---- G1ParClosureSuper(G1CollectedHeap* g1); G1ParClosureSuper(G1CollectedHeap* g1, G1ParScanThreadState* par_scan_state); bool apply_to_weak_ref_discovered_field() { return true; } void set_par_scan_thread_state(G1ParScanThreadState* par_scan_state); + void set_ref_processor(ReferenceProcessor* ref_processor) { _ref_processor = ref_processor; } }; class G1ParPushHeapRSClosure : public G1ParClosureSuper { public: G1ParPushHeapRSClosure(G1CollectedHeap* g1,
*** 74,88 **** virtual void do_oop(narrowOop* p) { do_oop_nv(p); } }; class G1ParScanClosure : public G1ParClosureSuper { public: ! G1ParScanClosure(G1CollectedHeap* g1, ReferenceProcessor* rp) : ! G1ParClosureSuper(g1) { ! assert(_ref_processor == NULL, "sanity"); ! _ref_processor = rp; ! } template <class T> void do_oop_nv(T* p); virtual void do_oop(oop* p) { do_oop_nv(p); } virtual void do_oop(narrowOop* p) { do_oop_nv(p); } }; --- 75,85 ---- virtual void do_oop(narrowOop* p) { do_oop_nv(p); } }; class G1ParScanClosure : public G1ParClosureSuper { public: ! G1ParScanClosure(G1CollectedHeap* g1) : G1ParClosureSuper(g1) { } template <class T> void do_oop_nv(T* p); virtual void do_oop(oop* p) { do_oop_nv(p); } virtual void do_oop(narrowOop* p) { do_oop_nv(p); } };
*** 102,111 **** --- 99,109 ---- // objects pointed to by roots that have been forwarded during a // GC. It is MT-safe. void mark_forwarded_object(oop from_obj, oop to_obj); public: G1ParCopyHelper(G1CollectedHeap* g1, G1ParScanThreadState* par_scan_state); + G1ParCopyHelper(G1CollectedHeap* g1); void set_scanned_klass(Klass* k) { _scanned_klass = k; } template <class T> void do_klass_barrier(T* p, oop new_obj); };
*** 130,139 **** --- 128,141 ---- ReferenceProcessor* rp) : G1ParCopyHelper(g1, par_scan_state) { assert(_ref_processor == NULL, "sanity"); } + G1ParCopyClosure(G1CollectedHeap* g1) : G1ParCopyHelper(g1) { + assert(_ref_processor == NULL, "sanity"); + } + template <class T> void do_oop_nv(T* p) { do_oop_work(p); } virtual void do_oop(oop* p) { do_oop_nv(p); } virtual void do_oop(narrowOop* p) { do_oop_nv(p); } G1CollectedHeap* g1() { return _g1; };
< prev index next >