< prev index next > src/hotspot/share/gc/g1/g1FullGCOopClosures.inline.hpp
Print this page
#include "gc/g1/g1Allocator.inline.hpp"
#include "gc/g1/g1ConcurrentMarkBitMap.inline.hpp"
#include "gc/g1/g1FullCollector.inline.hpp"
#include "gc/g1/g1FullGCMarker.inline.hpp"
#include "gc/g1/g1HeapRegionRemSet.inline.hpp"
+ #include "gc/shared/slidingForwarding.inline.hpp"
#include "memory/iterator.inline.hpp"
#include "memory/universe.hpp"
#include "oops/access.inline.hpp"
#include "oops/compressedOops.inline.hpp"
#include "oops/oop.inline.hpp"
// We never forward objects in non-compacting regions so there is no need to
// process them further.
return;
}
! if (obj->is_forwarded()) {
! oop forwardee = obj->forwardee();
// Forwarded, just update.
assert(G1CollectedHeap::heap()->is_in_reserved(forwardee), "should be in object space");
RawAccess<IS_NOT_NULL>::oop_store(p, forwardee);
}
// We never forward objects in non-compacting regions so there is no need to
// process them further.
return;
}
! if (SlidingForwarding::is_forwarded(obj)) {
! oop forwardee = SlidingForwarding::forwardee(obj);
// Forwarded, just update.
assert(G1CollectedHeap::heap()->is_in_reserved(forwardee), "should be in object space");
RawAccess<IS_NOT_NULL>::oop_store(p, forwardee);
}
< prev index next >