< 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 >