src/hotspot/share/gc/cms/cmsHeap.cpp
changeset 50445 bd6b78feb6a3
parent 50297 580744d900c8
child 51598 c88019b32bc4
equal deleted inserted replaced
50444:db65921e9a9b 50445:bd6b78feb6a3
   218 void CMSHeap::cms_process_roots(StrongRootsScope* scope,
   218 void CMSHeap::cms_process_roots(StrongRootsScope* scope,
   219                                 bool young_gen_as_roots,
   219                                 bool young_gen_as_roots,
   220                                 ScanningOption so,
   220                                 ScanningOption so,
   221                                 bool only_strong_roots,
   221                                 bool only_strong_roots,
   222                                 OopsInGenClosure* root_closure,
   222                                 OopsInGenClosure* root_closure,
   223                                 CLDClosure* cld_closure) {
   223                                 CLDClosure* cld_closure,
       
   224                                 OopStorage::ParState<false, false>* par_state_string) {
   224   MarkingCodeBlobClosure mark_code_closure(root_closure, !CodeBlobToOopClosure::FixRelocations);
   225   MarkingCodeBlobClosure mark_code_closure(root_closure, !CodeBlobToOopClosure::FixRelocations);
   225   CLDClosure* weak_cld_closure = only_strong_roots ? NULL : cld_closure;
   226   CLDClosure* weak_cld_closure = only_strong_roots ? NULL : cld_closure;
   226 
   227 
   227   process_roots(scope, so, root_closure, cld_closure, weak_cld_closure, &mark_code_closure);
   228   process_roots(scope, so, root_closure, cld_closure, weak_cld_closure, &mark_code_closure);
   228   if (!only_strong_roots) {
   229   if (!only_strong_roots) {
   229     process_string_table_roots(scope, root_closure);
   230     process_string_table_roots(scope, root_closure, par_state_string);
   230   }
   231   }
   231 
   232 
   232   if (young_gen_as_roots &&
   233   if (young_gen_as_roots &&
   233       !_process_strong_tasks->is_task_claimed(GCH_PS_younger_gens)) {
   234       !_process_strong_tasks->is_task_claimed(GCH_PS_younger_gens)) {
   234     root_closure->set_generation(young_gen());
   235     root_closure->set_generation(young_gen());