src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp
changeset 54981 0b56fc0448ec
parent 54956 43340a79840d
child 55076 785a12e0f89b
equal deleted inserted replaced
54980:e2c952c7ff20 54981:0b56fc0448ec
  1503   // get unmarked objects in the roots.
  1503   // get unmarked objects in the roots.
  1504 
  1504 
  1505   if (!cancelled_gc()) {
  1505   if (!cancelled_gc()) {
  1506     concurrent_mark()->finish_mark_from_roots(/* full_gc = */ false);
  1506     concurrent_mark()->finish_mark_from_roots(/* full_gc = */ false);
  1507 
  1507 
  1508     // Degen may be caused by failed evacuation of roots
  1508     if (has_forwarded_objects()) {
  1509     if (is_degenerated_gc_in_progress() && has_forwarded_objects()) {
  1509       // Degen may be caused by failed evacuation of roots
  1510       concurrent_mark()->update_roots(ShenandoahPhaseTimings::degen_gc_update_roots);
  1510       if (is_degenerated_gc_in_progress()) {
  1511     }
  1511         concurrent_mark()->update_roots(ShenandoahPhaseTimings::degen_gc_update_roots);
       
  1512       } else {
       
  1513         concurrent_mark()->update_thread_roots(ShenandoahPhaseTimings::update_roots);
       
  1514       }
       
  1515    }
  1512 
  1516 
  1513     if (ShenandoahVerify) {
  1517     if (ShenandoahVerify) {
  1514       verifier()->verify_roots_no_forwarded();
  1518       verifier()->verify_roots_no_forwarded();
  1515     }
  1519     }
  1516 
  1520