< prev index next >

src/share/vm/gc/shenandoah/shenandoahBarrierSet.cpp

Print this page
rev 13125 : imported patch update-refs.patch

*** 22,31 **** --- 22,32 ---- */ #include "precompiled.hpp" #include "gc/g1/g1SATBCardTableModRefBS.hpp" #include "gc/shenandoah/shenandoahBarrierSet.hpp" + #include "gc/shenandoah/shenandoahCollectorPolicy.hpp" #include "gc/shenandoah/shenandoahConnectionMatrix.inline.hpp" #include "gc/shenandoah/shenandoahHeap.inline.hpp" #include "runtime/interfaceSupport.hpp" class UpdateRefsForOopClosure: public ExtendedOopClosure {
*** 185,195 **** Unimplemented(); return false; } bool ShenandoahBarrierSet::need_update_refs_barrier() { ! return UseShenandoahMatrix || (_heap->concurrent_mark_in_progress() && _heap->need_update_refs()); } void ShenandoahBarrierSet::write_ref_array_work(MemRegion r) { ShouldNotReachHere(); } --- 186,203 ---- Unimplemented(); return false; } bool ShenandoahBarrierSet::need_update_refs_barrier() { ! if (UseShenandoahMatrix) { ! return true; ! } ! if (_heap->shenandoahPolicy()->update_refs_early()) { ! return _heap->is_update_refs_in_progress(); ! } else { ! return _heap->concurrent_mark_in_progress() && _heap->need_update_refs(); ! } } void ShenandoahBarrierSet::write_ref_array_work(MemRegion r) { ShouldNotReachHere(); }
< prev index next >