< prev index next >

src/hotspot/share/gc/g1/heapRegion.inline.hpp

Print this page
rev 57223 : imported patch 8225484-changes-to-survivor-calculation

*** 391,410 **** } inline void HeapRegion::install_surv_rate_group(G1SurvRateGroup* surv_rate_group) { assert(surv_rate_group != NULL, "pre-condition"); assert(!has_surv_rate_group(), "pre-condition"); ! assert(is_young(), "pre-condition"); _surv_rate_group = surv_rate_group; _age_index = surv_rate_group->next_age_index(); } inline void HeapRegion::uninstall_surv_rate_group() { if (has_surv_rate_group()) { assert(has_valid_age_in_surv_rate(), "pre-condition"); ! assert(is_young(), "pre-condition"); _surv_rate_group = NULL; _age_index = G1SurvRateGroup::InvalidAgeIndex; } else { assert(!has_valid_age_in_surv_rate(), "pre-condition"); --- 391,410 ---- } inline void HeapRegion::install_surv_rate_group(G1SurvRateGroup* surv_rate_group) { assert(surv_rate_group != NULL, "pre-condition"); assert(!has_surv_rate_group(), "pre-condition"); ! assert(is_eden(), "pre-condition"); _surv_rate_group = surv_rate_group; _age_index = surv_rate_group->next_age_index(); } inline void HeapRegion::uninstall_surv_rate_group() { if (has_surv_rate_group()) { assert(has_valid_age_in_surv_rate(), "pre-condition"); ! assert(is_eden(), "pre-condition"); _surv_rate_group = NULL; _age_index = G1SurvRateGroup::InvalidAgeIndex; } else { assert(!has_valid_age_in_surv_rate(), "pre-condition");
*** 413,421 **** inline void HeapRegion::record_surv_words_in_group(size_t words_survived) { assert(has_surv_rate_group(), "pre-condition"); assert(has_valid_age_in_surv_rate(), "pre-condition"); int age_in_group = age_in_surv_rate_group(); ! _surv_rate_group->record_surviving_words(age_in_group, words_survived); } #endif // SHARE_GC_G1_HEAPREGION_INLINE_HPP --- 413,426 ---- inline void HeapRegion::record_surv_words_in_group(size_t words_survived) { assert(has_surv_rate_group(), "pre-condition"); assert(has_valid_age_in_surv_rate(), "pre-condition"); int age_in_group = age_in_surv_rate_group(); ! assert(used() >= _survivor_bytes, "should not be"); ! double surv_rate = (double)(words_survived * HeapWordSize) / (used() - _survivor_bytes); ! if (UseNewCode) ! log_debug(gc)("region %u type %s rate %1.2f survived " SIZE_FORMAT " used " SIZE_FORMAT " survivor_bytes " SIZE_FORMAT, ! hrm_index(), get_short_type_str(), surv_rate, words_survived * HeapWordSize, used(), _survivor_bytes); ! _surv_rate_group->record_surviving_words(age_in_group, surv_rate); } #endif // SHARE_GC_G1_HEAPREGION_INLINE_HPP
< prev index next >