581 (!res->isHumongous() && |
581 (!res->isHumongous() && |
582 (!zero_filled || |
582 (!zero_filled || |
583 res->zero_fill_state() == HeapRegion::Allocated)), |
583 res->zero_fill_state() == HeapRegion::Allocated)), |
584 "Non-young alloc Regions must be zero filled (and non-H)"); |
584 "Non-young alloc Regions must be zero filled (and non-H)"); |
585 |
585 |
586 if (G1PrintRegions) { |
586 if (G1PrintHeapRegions) { |
587 if (res != NULL) { |
587 if (res != NULL) { |
588 gclog_or_tty->print_cr("new alloc region %d:["PTR_FORMAT", "PTR_FORMAT"], " |
588 gclog_or_tty->print_cr("new alloc region %d:["PTR_FORMAT", "PTR_FORMAT"], " |
589 "top "PTR_FORMAT, |
589 "top "PTR_FORMAT, |
590 res->hrs_index(), res->bottom(), res->end(), res->top()); |
590 res->hrs_index(), res->bottom(), res->end(), res->top()); |
591 } |
591 } |
2475 g1_policy()->print_tracing_info(); |
2475 g1_policy()->print_tracing_info(); |
2476 } |
2476 } |
2477 if (G1SummarizeRSetStats) { |
2477 if (G1SummarizeRSetStats) { |
2478 g1_rem_set()->print_summary_info(); |
2478 g1_rem_set()->print_summary_info(); |
2479 } |
2479 } |
2480 if (G1SummarizeConcurrentMark) { |
2480 if (G1SummarizeConcMark) { |
2481 concurrent_mark()->print_summary_info(); |
2481 concurrent_mark()->print_summary_info(); |
2482 } |
2482 } |
2483 if (G1SummarizeZFStats) { |
2483 if (G1SummarizeZFStats) { |
2484 ConcurrentZFThread::print_summary_info(); |
2484 ConcurrentZFThread::print_summary_info(); |
2485 } |
2485 } |
3478 preserve_mark_if_necessary(old, m); |
3478 preserve_mark_if_necessary(old, m); |
3479 |
3479 |
3480 HeapRegion* r = heap_region_containing(old); |
3480 HeapRegion* r = heap_region_containing(old); |
3481 if (!r->evacuation_failed()) { |
3481 if (!r->evacuation_failed()) { |
3482 r->set_evacuation_failed(true); |
3482 r->set_evacuation_failed(true); |
3483 if (G1PrintRegions) { |
3483 if (G1PrintHeapRegions) { |
3484 gclog_or_tty->print("evacuation failed in heap region "PTR_FORMAT" " |
3484 gclog_or_tty->print("evacuation failed in heap region "PTR_FORMAT" " |
3485 "["PTR_FORMAT","PTR_FORMAT")\n", |
3485 "["PTR_FORMAT","PTR_FORMAT")\n", |
3486 r, r->bottom(), r->end()); |
3486 r, r->bottom(), r->end()); |
3487 } |
3487 } |
3488 } |
3488 } |
4000 double elapsed_ms = (os::elapsedTime()-start)*1000.0; |
4000 double elapsed_ms = (os::elapsedTime()-start)*1000.0; |
4001 double term_ms = pss.term_time()*1000.0; |
4001 double term_ms = pss.term_time()*1000.0; |
4002 _g1h->g1_policy()->record_obj_copy_time(i, elapsed_ms-term_ms); |
4002 _g1h->g1_policy()->record_obj_copy_time(i, elapsed_ms-term_ms); |
4003 _g1h->g1_policy()->record_termination_time(i, term_ms); |
4003 _g1h->g1_policy()->record_termination_time(i, term_ms); |
4004 } |
4004 } |
4005 if (G1UseSurvivorSpaces) { |
4005 _g1h->g1_policy()->record_thread_age_table(pss.age_table()); |
4006 _g1h->g1_policy()->record_thread_age_table(pss.age_table()); |
|
4007 } |
|
4008 _g1h->update_surviving_young_words(pss.surviving_young_words()+1); |
4006 _g1h->update_surviving_young_words(pss.surviving_young_words()+1); |
4009 |
4007 |
4010 // Clean up any par-expanded rem sets. |
4008 // Clean up any par-expanded rem sets. |
4011 HeapRegionRemSet::par_cleanup(); |
4009 HeapRegionRemSet::par_cleanup(); |
4012 |
4010 |