src/share/vm/memory/genMarkSweep.cpp
Print this page
@@ -205,17 +205,18 @@
follow_root_closure.set_orig_generation(gch->get_gen(level));
// Need new claim bits before marking starts.
ClassLoaderDataGraph::clear_claimed_marks();
- gch->gen_process_strong_roots(level,
+ gch->gen_process_roots(level,
false, // Younger gens are not roots.
true, // activate StrongRootsScope
- SharedHeap::SO_SystemClasses,
+ SharedHeap::SO_None,
+ GenCollectedHeap::StrongRootsOnly,
&follow_root_closure,
&follow_root_closure,
- &follow_klass_closure);
+ &follow_cld_closure);
// Process reference objects found during marking
{
ref_processor()->setup_policy(clear_all_softrefs);
const ReferenceProcessorStats& stats =
@@ -289,17 +290,18 @@
// use OopsInGenClosure constructor which takes a generation,
// as the Universe has not been created when the static constructors
// are run.
adjust_pointer_closure.set_orig_generation(gch->get_gen(level));
- gch->gen_process_strong_roots(level,
+ gch->gen_process_roots(level,
false, // Younger gens are not roots.
true, // activate StrongRootsScope
- SharedHeap::SO_AllClasses | SharedHeap::SO_Strings | SharedHeap::SO_AllCodeCache,
+ SharedHeap::SO_AllCodeCache,
+ GenCollectedHeap::StrongAndWeakRoots,
&adjust_pointer_closure,
&adjust_pointer_closure,
- &adjust_klass_closure);
+ &adjust_cld_closure);
gch->gen_process_weak_roots(&adjust_pointer_closure);
adjust_marks();
GenAdjustPointersClosure blk;