< prev index next >

src/share/vm/gc/cms/concurrentMarkSweepGeneration.cpp

Print this page

        

*** 2412,2428 **** gch->rem_set()->prepare_for_younger_refs_iterate(false); // Not parallel. { StrongRootsScope srs(1); ! gch->gen_process_roots(&srs, ! GenCollectedHeap::OldGen, true, // young gen as roots GenCollectedHeap::ScanningOption(roots_scanning_options()), should_unload_classes(), &notOlder, - NULL, NULL); } // Now mark from the roots MarkFromRootsClosure markFromRootsClosure(this, _span, --- 2412,2426 ---- gch->rem_set()->prepare_for_younger_refs_iterate(false); // Not parallel. { StrongRootsScope srs(1); ! gch->old_process_roots(&srs, true, // young gen as roots GenCollectedHeap::ScanningOption(roots_scanning_options()), should_unload_classes(), &notOlder, NULL); } // Now mark from the roots MarkFromRootsClosure markFromRootsClosure(this, _span,
*** 2484,2500 **** gch->rem_set()->prepare_for_younger_refs_iterate(false); // Not parallel. { StrongRootsScope srs(1); ! gch->gen_process_roots(&srs, ! GenCollectedHeap::OldGen, true, // young gen as roots GenCollectedHeap::ScanningOption(roots_scanning_options()), should_unload_classes(), &notOlder, - NULL, &cld_closure); } // Now mark from the roots MarkFromRootsVerifyClosure markFromRootsClosure(this, _span, --- 2482,2496 ---- gch->rem_set()->prepare_for_younger_refs_iterate(false); // Not parallel. { StrongRootsScope srs(1); ! gch->old_process_roots(&srs, true, // young gen as roots GenCollectedHeap::ScanningOption(roots_scanning_options()), should_unload_classes(), &notOlder, &cld_closure); } // Now mark from the roots MarkFromRootsVerifyClosure markFromRootsClosure(this, _span,
*** 2537,2549 **** #define CMS_SINCE_SAVE_MARKS_DEFN(OopClosureType, nv_suffix) \ \ void ConcurrentMarkSweepGeneration:: \ oop_since_save_marks_iterate##nv_suffix(OopClosureType* cl) { \ ! cl->set_generation(this); \ cmsSpace()->oop_since_save_marks_iterate##nv_suffix(cl); \ - cl->reset_generation(); \ save_marks(); \ } ALL_SINCE_SAVE_MARKS_CLOSURES(CMS_SINCE_SAVE_MARKS_DEFN) --- 2533,2544 ---- #define CMS_SINCE_SAVE_MARKS_DEFN(OopClosureType, nv_suffix) \ \ void ConcurrentMarkSweepGeneration:: \ oop_since_save_marks_iterate##nv_suffix(OopClosureType* cl) { \ ! cl->assert_generation(this); \ cmsSpace()->oop_since_save_marks_iterate##nv_suffix(cl); \ save_marks(); \ } ALL_SINCE_SAVE_MARKS_CLOSURES(CMS_SINCE_SAVE_MARKS_DEFN)
*** 3005,3021 **** CLDToOopClosure cld_closure(&notOlder, true); gch->rem_set()->prepare_for_younger_refs_iterate(false); // Not parallel. StrongRootsScope srs(1); ! gch->gen_process_roots(&srs, ! GenCollectedHeap::OldGen, true, // young gen as roots GenCollectedHeap::ScanningOption(roots_scanning_options()), should_unload_classes(), &notOlder, - NULL, &cld_closure); } } // Clear mod-union table; it will be dirtied in the prologue of --- 3000,3014 ---- CLDToOopClosure cld_closure(&notOlder, true); gch->rem_set()->prepare_for_younger_refs_iterate(false); // Not parallel. StrongRootsScope srs(1); ! gch->old_process_roots(&srs, true, // young gen as roots GenCollectedHeap::ScanningOption(roots_scanning_options()), should_unload_classes(), &notOlder, &cld_closure); } } // Clear mod-union table; it will be dirtied in the prologue of
*** 4434,4450 **** _timer.reset(); _timer.start(); CLDToOopClosure cld_closure(&par_mri_cl, true); ! gch->gen_process_roots(_strong_roots_scope, ! GenCollectedHeap::OldGen, false, // yg was scanned above GenCollectedHeap::ScanningOption(_collector->CMSCollector::roots_scanning_options()), _collector->should_unload_classes(), &par_mri_cl, - NULL, &cld_closure); assert(_collector->should_unload_classes() || (_collector->CMSCollector::roots_scanning_options() & GenCollectedHeap::SO_AllCodeCache), "if we didn't scan the code cache, we have to be ready to drop nmethods with expired weak oops"); _timer.stop(); --- 4427,4441 ---- _timer.reset(); _timer.start(); CLDToOopClosure cld_closure(&par_mri_cl, true); ! gch->old_process_roots(_strong_roots_scope, false, // yg was scanned above GenCollectedHeap::ScanningOption(_collector->CMSCollector::roots_scanning_options()), _collector->should_unload_classes(), &par_mri_cl, &cld_closure); assert(_collector->should_unload_classes() || (_collector->CMSCollector::roots_scanning_options() & GenCollectedHeap::SO_AllCodeCache), "if we didn't scan the code cache, we have to be ready to drop nmethods with expired weak oops"); _timer.stop();
*** 4573,4589 **** } // ---------- remaining roots -------------- _timer.reset(); _timer.start(); ! gch->gen_process_roots(_strong_roots_scope, ! GenCollectedHeap::OldGen, false, // yg was scanned above GenCollectedHeap::ScanningOption(_collector->CMSCollector::roots_scanning_options()), _collector->should_unload_classes(), &par_mrias_cl, - NULL, NULL); // The dirty klasses will be handled below assert(_collector->should_unload_classes() || (_collector->CMSCollector::roots_scanning_options() & GenCollectedHeap::SO_AllCodeCache), "if we didn't scan the code cache, we have to be ready to drop nmethods with expired weak oops"); --- 4564,4578 ---- } // ---------- remaining roots -------------- _timer.reset(); _timer.start(); ! gch->old_process_roots(_strong_roots_scope, false, // yg was scanned above GenCollectedHeap::ScanningOption(_collector->CMSCollector::roots_scanning_options()), _collector->should_unload_classes(), &par_mrias_cl, NULL); // The dirty klasses will be handled below assert(_collector->should_unload_classes() || (_collector->CMSCollector::roots_scanning_options() & GenCollectedHeap::SO_AllCodeCache), "if we didn't scan the code cache, we have to be ready to drop nmethods with expired weak oops");
*** 5154,5170 **** verify_work_stacks_empty(); gch->rem_set()->prepare_for_younger_refs_iterate(false); // Not parallel. StrongRootsScope srs(1); ! gch->gen_process_roots(&srs, ! GenCollectedHeap::OldGen, true, // young gen as roots GenCollectedHeap::ScanningOption(roots_scanning_options()), should_unload_classes(), &mrias_cl, - NULL, NULL); // The dirty klasses will be handled below assert(should_unload_classes() || (roots_scanning_options() & GenCollectedHeap::SO_AllCodeCache), "if we didn't scan the code cache, we have to be ready to drop nmethods with expired weak oops"); --- 5143,5157 ---- verify_work_stacks_empty(); gch->rem_set()->prepare_for_younger_refs_iterate(false); // Not parallel. StrongRootsScope srs(1); ! gch->old_process_roots(&srs, true, // young gen as roots GenCollectedHeap::ScanningOption(roots_scanning_options()), should_unload_classes(), &mrias_cl, NULL); // The dirty klasses will be handled below assert(should_unload_classes() || (roots_scanning_options() & GenCollectedHeap::SO_AllCodeCache), "if we didn't scan the code cache, we have to be ready to drop nmethods with expired weak oops");
< prev index next >