< prev index next >
src/hotspot/share/gc/shenandoah/shenandoahRuntime.cpp
Print this page
rev 54386 : 8221766: Load-reference barriers for Shenandoah
*** 53,64 ****
// store the original value that was in the field reference
assert(ShenandoahThreadLocalData::satb_mark_queue(thread).is_active(), "Shouldn't be here otherwise");
ShenandoahThreadLocalData::satb_mark_queue(thread).enqueue_known_active(orig);
JRT_END
! JRT_LEAF(oopDesc*, ShenandoahRuntime::write_barrier_JRT(oopDesc* src))
! oop result = ShenandoahBarrierSet::barrier_set()->write_barrier_mutator(src);
return (oopDesc*) result;
JRT_END
// Shenandoah clone barrier: makes sure that references point to to-space
// in cloned objects.
--- 53,64 ----
// store the original value that was in the field reference
assert(ShenandoahThreadLocalData::satb_mark_queue(thread).is_active(), "Shouldn't be here otherwise");
ShenandoahThreadLocalData::satb_mark_queue(thread).enqueue_known_active(orig);
JRT_END
! JRT_LEAF(oopDesc*, ShenandoahRuntime::load_reference_barrier_JRT(oopDesc* src))
! oop result = ShenandoahBarrierSet::barrier_set()->load_reference_barrier_mutator(src);
return (oopDesc*) result;
JRT_END
// Shenandoah clone barrier: makes sure that references point to to-space
// in cloned objects.
< prev index next >