src/hotspot/share/gc/cms/cmsHeap.cpp
changeset 50297 580744d900c8
parent 50033 000c697c81db
child 50445 bd6b78feb6a3
equal deleted inserted replaced
50296:75681fe34e32 50297:580744d900c8
     1 /*
     1 /*
     2  * Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.
     7  * published by the Free Software Foundation.
   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   MarkingCodeBlobClosure mark_code_closure(root_closure, !CodeBlobToOopClosure::FixRelocations);
   224   MarkingCodeBlobClosure mark_code_closure(root_closure, !CodeBlobToOopClosure::FixRelocations);
   225   OopsInGenClosure* weak_roots = only_strong_roots ? NULL : root_closure;
       
   226   CLDClosure* weak_cld_closure = only_strong_roots ? NULL : cld_closure;
   225   CLDClosure* weak_cld_closure = only_strong_roots ? NULL : cld_closure;
   227 
   226 
   228   process_roots(scope, so, root_closure, weak_roots, cld_closure, weak_cld_closure, &mark_code_closure);
   227   process_roots(scope, so, root_closure, cld_closure, weak_cld_closure, &mark_code_closure);
   229   if (!only_strong_roots) {
   228   if (!only_strong_roots) {
   230     process_string_table_roots(scope, root_closure);
   229     process_string_table_roots(scope, root_closure);
   231   }
   230   }
   232 
   231 
   233   if (young_gen_as_roots &&
   232   if (young_gen_as_roots &&