703 if (is_empty()) return; |
703 if (is_empty()) return; |
704 WaterMark bm = bottom_mark(); |
704 WaterMark bm = bottom_mark(); |
705 object_iterate_from(bm, blk); |
705 object_iterate_from(bm, blk); |
706 } |
706 } |
707 |
707 |
|
708 // For a continguous space object_iterate() and safe_object_iterate() |
|
709 // are the same. |
|
710 void ContiguousSpace::safe_object_iterate(ObjectClosure* blk) { |
|
711 object_iterate(blk); |
|
712 } |
|
713 |
708 void ContiguousSpace::object_iterate_from(WaterMark mark, ObjectClosure* blk) { |
714 void ContiguousSpace::object_iterate_from(WaterMark mark, ObjectClosure* blk) { |
709 assert(mark.space() == this, "Mark does not match space"); |
715 assert(mark.space() == this, "Mark does not match space"); |
710 HeapWord* p = mark.point(); |
716 HeapWord* p = mark.point(); |
711 while (p < top()) { |
717 while (p < top()) { |
712 blk->do_object(oop(p)); |
718 blk->do_object(oop(p)); |