< prev index next >

src/hotspot/share/gc/cms/cmsHeap.cpp

Print this page
rev 50285 : 8195097: Make it possible to process StringTable outside safepoint
Reviewed-by:

*** 218,235 **** void CMSHeap::cms_process_roots(StrongRootsScope* scope, bool young_gen_as_roots, ScanningOption so, bool only_strong_roots, OopsInGenClosure* root_closure, ! CLDClosure* cld_closure) { MarkingCodeBlobClosure mark_code_closure(root_closure, !CodeBlobToOopClosure::FixRelocations); OopsInGenClosure* weak_roots = only_strong_roots ? NULL : root_closure; CLDClosure* weak_cld_closure = only_strong_roots ? NULL : cld_closure; process_roots(scope, so, root_closure, weak_roots, cld_closure, weak_cld_closure, &mark_code_closure); if (!only_strong_roots) { ! process_string_table_roots(scope, root_closure); } if (young_gen_as_roots && !_process_strong_tasks->is_task_claimed(GCH_PS_younger_gens)) { root_closure->set_generation(young_gen()); --- 218,236 ---- void CMSHeap::cms_process_roots(StrongRootsScope* scope, bool young_gen_as_roots, ScanningOption so, bool only_strong_roots, OopsInGenClosure* root_closure, ! CLDClosure* cld_closure, ! OopStorage::ParState<false, false>* par_state_string) { MarkingCodeBlobClosure mark_code_closure(root_closure, !CodeBlobToOopClosure::FixRelocations); OopsInGenClosure* weak_roots = only_strong_roots ? NULL : root_closure; CLDClosure* weak_cld_closure = only_strong_roots ? NULL : cld_closure; process_roots(scope, so, root_closure, weak_roots, cld_closure, weak_cld_closure, &mark_code_closure); if (!only_strong_roots) { ! process_string_table_roots(scope, root_closure, par_state_string); } if (young_gen_as_roots && !_process_strong_tasks->is_task_claimed(GCH_PS_younger_gens)) { root_closure->set_generation(young_gen());
< prev index next >