< prev index next >

src/hotspot/share/gc/g1/g1FullGCAdjustTask.cpp

Print this page
*** 93,11 ***
    Ticks start = Ticks::now();
    ResourceMark rm;
  
    // Adjust preserved marks first since they are not balanced.
    G1FullGCMarker* marker = collector()->marker(worker_id);
!   marker->preserved_stack()->adjust_during_full_gc();
  
    // Adjust the weak roots.
    if (!Atomic::cmpxchg(&_references_done, false, true)) {
      G1CollectedHeap::heap()->ref_processor_stw()->weak_oops_do(&_adjust);
    }
--- 93,12 ---
    Ticks start = Ticks::now();
    ResourceMark rm;
  
    // Adjust preserved marks first since they are not balanced.
    G1FullGCMarker* marker = collector()->marker(worker_id);
!   const SlidingForwarding* const forwarding = G1CollectedHeap::heap()->forwarding();
+   marker->preserved_stack()->adjust_during_full_gc(forwarding);
  
    // Adjust the weak roots.
    if (!Atomic::cmpxchg(&_references_done, false, true)) {
      G1CollectedHeap::heap()->ref_processor_stw()->weak_oops_do(&_adjust);
    }
< prev index next >