< prev index next >
src/share/vm/gc/g1/g1ConcurrentMark.cpp
Print this page
*** 1190,1206 ****
size_t freed_bytes() { return _freed_bytes; }
const uint old_regions_removed() { return _old_regions_removed; }
const uint humongous_regions_removed() { return _humongous_regions_removed; }
bool doHeapRegion(HeapRegion *hr) {
- if (hr->is_archive()) {
- return false;
- }
_g1->reset_gc_time_stamps(hr);
hr->note_end_of_marking();
! if (hr->used() > 0 && hr->max_live_bytes() == 0 && !hr->is_young()) {
_freed_bytes += hr->used();
hr->set_containing_set(NULL);
if (hr->is_humongous()) {
_humongous_regions_removed++;
_g1->free_humongous_region(hr, _local_cleanup_list, true /* skip_remset */);
--- 1190,1203 ----
size_t freed_bytes() { return _freed_bytes; }
const uint old_regions_removed() { return _old_regions_removed; }
const uint humongous_regions_removed() { return _humongous_regions_removed; }
bool doHeapRegion(HeapRegion *hr) {
_g1->reset_gc_time_stamps(hr);
hr->note_end_of_marking();
! if (hr->used() > 0 && hr->max_live_bytes() == 0 && !hr->is_young() && !hr->is_archive()) {
_freed_bytes += hr->used();
hr->set_containing_set(NULL);
if (hr->is_humongous()) {
_humongous_regions_removed++;
_g1->free_humongous_region(hr, _local_cleanup_list, true /* skip_remset */);
< prev index next >