1.1 --- a/src/share/vm/memory/defNewGeneration.cpp Tue Jul 01 09:03:55 2014 +0200 1.2 +++ b/src/share/vm/memory/defNewGeneration.cpp Mon Jul 07 10:12:40 2014 +0200 1.3 @@ -613,6 +613,9 @@ 1.4 1.5 KlassScanClosure klass_scan_closure(&fsc_with_no_gc_barrier, 1.6 gch->rem_set()->klass_rem_set()); 1.7 + CLDToKlassAndOopClosure cld_scan_closure(&klass_scan_closure, 1.8 + &fsc_with_no_gc_barrier, 1.9 + false); 1.10 1.11 set_promo_failure_scan_stack_closure(&fsc_with_no_gc_barrier); 1.12 FastEvacuateFollowersClosure evacuate_followers(gch, _level, this, 1.13 @@ -622,16 +625,15 @@ 1.14 assert(gch->no_allocs_since_save_marks(0), 1.15 "save marks have not been newly set."); 1.16 1.17 - int so = SharedHeap::SO_AllClasses | SharedHeap::SO_Strings | SharedHeap::SO_ScavengeCodeCache; 1.18 - 1.19 - gch->gen_process_strong_roots(_level, 1.20 - true, // Process younger gens, if any, 1.21 - // as strong roots. 1.22 - true, // activate StrongRootsScope 1.23 - SharedHeap::ScanningOption(so), 1.24 - &fsc_with_no_gc_barrier, 1.25 - &fsc_with_gc_barrier, 1.26 - &klass_scan_closure); 1.27 + gch->gen_process_roots(_level, 1.28 + true, // Process younger gens, if any, 1.29 + // as strong roots. 1.30 + true, // activate StrongRootsScope 1.31 + SharedHeap::SO_ScavengeCodeCache, 1.32 + GenCollectedHeap::StrongAndWeakRoots, 1.33 + &fsc_with_no_gc_barrier, 1.34 + &fsc_with_gc_barrier, 1.35 + &cld_scan_closure); 1.36 1.37 // "evacuate followers". 1.38 evacuate_followers.do_void();