< prev index next >
src/share/vm/gc_implementation/parallelScavenge/psMarkSweepDecorator.cpp
Print this page
*** 301,311 ****
// use is_gc_marked for the traversal.
HeapWord* end = _first_dead;
while (q < end) {
// point all the oops to the new location
! size_t size = oop(q)->adjust_pointers();
q += size;
}
if (_first_dead == t) {
q = t;
--- 301,311 ----
// use is_gc_marked for the traversal.
HeapWord* end = _first_dead;
while (q < end) {
// point all the oops to the new location
! size_t size = MarkSweep::adjust_pointers(oop(q));
q += size;
}
if (_first_dead == t) {
q = t;
*** 322,332 ****
// prefetch beyond q
Prefetch::write(q, interval);
if (oop(q)->is_gc_marked()) {
// q is alive
// point all the oops to the new location
! size_t size = oop(q)->adjust_pointers();
debug_only(prev_q = q);
q += size;
} else {
// q is not a live object, so its mark should point at the next
// live object
--- 322,332 ----
// prefetch beyond q
Prefetch::write(q, interval);
if (oop(q)->is_gc_marked()) {
// q is alive
// point all the oops to the new location
! size_t size = MarkSweep::adjust_pointers(oop(q));
debug_only(prev_q = q);
q += size;
} else {
// q is not a live object, so its mark should point at the next
// live object
< prev index next >