< prev index next >
src/share/vm/gc/parallel/psMarkSweepDecorator.cpp
Print this page
rev 12851 : 8138737: Remove oop_ms_adjust_pointers and use oop_iterate instead
Reviewed-by:
rev 12852 : [mq]: 8138737-remove-oop-ms-adjust-kbarrett-rev1
*** 282,292 ****
// 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)->oop_iterate_size(&MarkSweep::adjust_pointer_closure);
q += size;
}
if (_first_dead == t) {
q = t;
--- 282,292 ----
// 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;
*** 302,312 ****
// 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)->oop_iterate_size(&MarkSweep::adjust_pointer_closure);
debug_only(prev_q = q);
q += size;
} else {
debug_only(prev_q = q);
// The first dead object is no longer an object. At that memory address,
--- 302,312 ----
// 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 {
debug_only(prev_q = q);
// The first dead object is no longer an object. At that memory address,
< prev index next >