Mercurial > hg > graal-jvmci-8
diff src/share/vm/gc_implementation/g1/g1OopClosures.hpp @ 3983:811ec3d0833b
7097053: G1: assert(da ? referent->is_oop() : referent->is_oop_or_null()) failed: referenceProcessor.cpp:1054
Summary: During remembered set scanning, the reference processor could discover a reference object whose referent was in the process of being copied and so may not be completely initialized. Do not perform reference discovery during remembered set scanning.
Reviewed-by: tonyp, ysr
author | johnc |
---|---|
date | Mon, 03 Oct 2011 12:49:53 -0700 |
parents | 4dfb2df418f2 |
children | 2ace1c4ee8da |
line wrap: on
line diff
--- a/src/share/vm/gc_implementation/g1/g1OopClosures.hpp Wed Sep 28 10:36:31 2011 -0700 +++ b/src/share/vm/gc_implementation/g1/g1OopClosures.hpp Mon Oct 03 12:49:53 2011 -0700 @@ -61,13 +61,8 @@ class G1ParPushHeapRSClosure : public G1ParClosureSuper { public: G1ParPushHeapRSClosure(G1CollectedHeap* g1, - G1ParScanThreadState* par_scan_state, - ReferenceProcessor* rp) : - G1ParClosureSuper(g1, par_scan_state) - { - assert(_ref_processor == NULL, "sanity"); - _ref_processor = rp; - } + G1ParScanThreadState* par_scan_state): + G1ParClosureSuper(g1, par_scan_state) { } template <class T> void do_oop_nv(T* p); virtual void do_oop(oop* p) { do_oop_nv(p); } @@ -190,13 +185,8 @@ public: FilterIntoCSClosure( DirtyCardToOopClosure* dcto_cl, G1CollectedHeap* g1, - OopClosure* oc, - ReferenceProcessor* rp) : - _dcto_cl(dcto_cl), _g1(g1), _oc(oc) - { - assert(_ref_processor == NULL, "sanity"); - _ref_processor = rp; - } + OopClosure* oc) : + _dcto_cl(dcto_cl), _g1(g1), _oc(oc) { } template <class T> void do_oop_nv(T* p); virtual void do_oop(oop* p) { do_oop_nv(p); }