hotspot/src/share/vm/gc/cms/parNewGeneration.cpp
changeset 38198 8144ec8f789e
parent 38033 996ce936543f
child 40096 246c62cd9180
equal deleted inserted replaced
38197:d51ca2fac8d6 38198:8144ec8f789e
   474     AgeTable *local_table = par_scan_state.age_table();
   474     AgeTable *local_table = par_scan_state.age_table();
   475     _young_gen.age_table()->merge(local_table);
   475     _young_gen.age_table()->merge(local_table);
   476 
   476 
   477     // Inform old gen that we're done.
   477     // Inform old gen that we're done.
   478     _old_gen.par_promote_alloc_done(i);
   478     _old_gen.par_promote_alloc_done(i);
   479     _old_gen.par_oop_since_save_marks_iterate_done(i);
       
   480   }
   479   }
   481 
   480 
   482   if (UseConcMarkSweepGC) {
   481   if (UseConcMarkSweepGC) {
   483     // We need to call this even when ResizeOldPLAB is disabled
   482     // We need to call this even when ResizeOldPLAB is disabled
   484     // so as to avoid breaking some asserts. While we may be able
   483     // so as to avoid breaking some asserts. While we may be able
   617 
   616 
   618   par_scan_state.end_strong_roots();
   617   par_scan_state.end_strong_roots();
   619 
   618 
   620   // "evacuate followers".
   619   // "evacuate followers".
   621   par_scan_state.evacuate_followers_closure().do_void();
   620   par_scan_state.evacuate_followers_closure().do_void();
       
   621 
       
   622   // This will collapse this worker's promoted object list that's
       
   623   // created during the main ParNew parallel phase of ParNew. This has
       
   624   // to be called after all workers have finished promoting objects
       
   625   // and scanning promoted objects. It should be safe calling it from
       
   626   // here, given that we can only reach here after all thread have
       
   627   // offered termination, i.e., after there is no more work to be
       
   628   // done. It will also disable promotion tracking for the rest of
       
   629   // this GC as it's not necessary to be on during reference processing.
       
   630   _old_gen->par_oop_since_save_marks_iterate_done((int) worker_id);
   622 }
   631 }
   623 
   632 
   624 ParNewGeneration::ParNewGeneration(ReservedSpace rs, size_t initial_byte_size)
   633 ParNewGeneration::ParNewGeneration(ReservedSpace rs, size_t initial_byte_size)
   625   : DefNewGeneration(rs, initial_byte_size, "PCopy"),
   634   : DefNewGeneration(rs, initial_byte_size, "PCopy"),
   626   _overflow_list(NULL),
   635   _overflow_list(NULL),