< prev index next > src/hotspot/share/gc/shenandoah/shenandoahAsserts.cpp
Print this page
*
*/
#include "gc/shenandoah/shenandoahAsserts.hpp"
! #include "gc/shenandoah/shenandoahForwarding.hpp"
#include "gc/shenandoah/shenandoahHeap.inline.hpp"
#include "gc/shenandoah/shenandoahHeapRegionSet.inline.hpp"
#include "gc/shenandoah/shenandoahMarkingContext.inline.hpp"
#include "gc/shenandoah/shenandoahUtils.hpp"
#include "memory/resourceArea.hpp"
*
*/
#include "gc/shenandoah/shenandoahAsserts.hpp"
! #include "gc/shenandoah/shenandoahForwarding.inline.hpp"
#include "gc/shenandoah/shenandoahHeap.inline.hpp"
#include "gc/shenandoah/shenandoahHeapRegionSet.inline.hpp"
#include "gc/shenandoah/shenandoahMarkingContext.inline.hpp"
#include "gc/shenandoah/shenandoahUtils.hpp"
#include "memory/resourceArea.hpp"
return false;
}
if (UseCompactObjectHeaders) { // look in forwardee
markWord mark = obj->mark();
! if (mark.is_marked()) {
oop fwd = cast_to_oop(mark.clear_lock_bits().to_pointer());
if (!os::is_readable_pointer(fwd)) {
return false;
}
mark = fwd->mark();
return false;
}
if (UseCompactObjectHeaders) { // look in forwardee
markWord mark = obj->mark();
! if (ShenandoahForwarding::has_forwardee(mark)) {
oop fwd = cast_to_oop(mark.clear_lock_bits().to_pointer());
if (!os::is_readable_pointer(fwd)) {
return false;
}
mark = fwd->mark();
< prev index next >