< prev index next >
src/share/vm/gc/shenandoah/vm_operations_shenandoah.cpp
Print this page
rev 14453 : Remove secondary marking bitmap.
@@ -46,11 +46,13 @@
// Calculate workers for initial marking
uint nworkers = ShenandoahWorkerPolicy::calc_workers_for_init_marking();
ShenandoahWorkerScope scope(workers, nworkers);
- assert(sh->is_next_bitmap_clear(), "need clear marking bitmap");
+ assert(sh->is_bitmap_clear(), "need clear marking bitmap");
+
+ sh->set_bitmap_valid(false);
sh->start_concurrent_marking();
}
void VM_ShenandoahFullGC::doit() {
@@ -84,10 +86,11 @@
ShenandoahWorkerScope scope(workers, n_workers);
if (! sh->cancelled_concgc()) {
GCTraceTime(Info, gc) time("Pause Final Mark", sh->gc_timer(), GCCause::_no_gc, true);
sh->concurrentMark()->finish_mark_from_roots();
+ sh->set_bitmap_valid(true);
sh->stop_concurrent_marking();
{
ShenandoahGCPhase prepare_evac(ShenandoahPhaseTimings::prepare_evac);
sh->prepare_for_concurrent_evacuation();
< prev index next >