< prev index next >

src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp

Print this page

        

*** 818,838 **** PSParallelCompact::IsAliveClosure PSParallelCompact::_is_alive_closure; bool PSParallelCompact::IsAliveClosure::do_object_b(oop p) { return mark_bitmap()->is_marked(p); } - void PSParallelCompact::KeepAliveClosure::do_oop(oop* p) { PSParallelCompact::KeepAliveClosure::do_oop_work(p); } - void PSParallelCompact::KeepAliveClosure::do_oop(narrowOop* p) { PSParallelCompact::KeepAliveClosure::do_oop_work(p); } - PSParallelCompact::AdjustPointerClosure PSParallelCompact::_adjust_pointer_closure; PSParallelCompact::AdjustKlassClosure PSParallelCompact::_adjust_klass_closure; - void PSParallelCompact::FollowStackClosure::do_void() { _compaction_manager->follow_marking_stacks(); } - - void PSParallelCompact::FollowKlassClosure::do_klass(Klass* klass) { - klass->oops_do(_mark_and_push_closure); - } void PSParallelCompact::AdjustKlassClosure::do_klass(Klass* klass) { klass->oops_do(&PSParallelCompact::_adjust_pointer_closure); } void PSParallelCompact::post_initialize() { --- 818,830 ----
*** 2348,2359 **** uint parallel_gc_threads = heap->gc_task_manager()->workers(); uint active_gc_threads = heap->gc_task_manager()->active_workers(); TaskQueueSetSuper* qset = ParCompactionManager::region_array(); ParallelTaskTerminator terminator(active_gc_threads, qset); ! PSParallelCompact::MarkAndPushClosure mark_and_push_closure(cm); ! PSParallelCompact::FollowStackClosure follow_stack_closure(cm); // Need new claim bits before marking starts. ClassLoaderDataGraph::clear_claimed_marks(); { --- 2340,2351 ---- uint parallel_gc_threads = heap->gc_task_manager()->workers(); uint active_gc_threads = heap->gc_task_manager()->active_workers(); TaskQueueSetSuper* qset = ParCompactionManager::region_array(); ParallelTaskTerminator terminator(active_gc_threads, qset); ! ParCompactionManager::MarkAndPushClosure mark_and_push_closure(cm); ! ParCompactionManager::FollowStackClosure follow_stack_closure(cm); // Need new claim bits before marking starts. ClassLoaderDataGraph::clear_claimed_marks(); {
*** 2425,2436 **** _gc_tracer.report_object_count_after_gc(is_alive_closure()); } void PSParallelCompact::follow_class_loader(ParCompactionManager* cm, ClassLoaderData* cld) { ! PSParallelCompact::MarkAndPushClosure mark_and_push_closure(cm); ! PSParallelCompact::FollowKlassClosure follow_klass_closure(&mark_and_push_closure); cld->oops_do(&mark_and_push_closure, &follow_klass_closure, true); } // This should be moved to the shared markSweep code! --- 2417,2428 ---- _gc_tracer.report_object_count_after_gc(is_alive_closure()); } void PSParallelCompact::follow_class_loader(ParCompactionManager* cm, ClassLoaderData* cld) { ! ParCompactionManager::MarkAndPushClosure mark_and_push_closure(cm); ! ParCompactionManager::FollowKlassClosure follow_klass_closure(&mark_and_push_closure); cld->oops_do(&mark_and_push_closure, &follow_klass_closure, true); } // This should be moved to the shared markSweep code!
< prev index next >