src/share/vm/memory/genCollectedHeap.cpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
*** old/src/share/vm/memory/genCollectedHeap.cpp Fri Oct 17 15:43:22 2014
--- new/src/share/vm/memory/genCollectedHeap.cpp Fri Oct 17 15:43:22 2014
*** 83,95 ****
--- 83,92 ----
}
jint GenCollectedHeap::initialize() {
CollectedHeap::pre_initialize();
int i;
_n_gens = gen_policy()->number_of_generations();
// While there are no constraints in the GC code that HeapWordSize
// be any particular value, there are multiple other areas in the
// system which believe this to be true (e.g. oop->object_size in some
// cases incorrectly returns the size in wordSize units rather than
// HeapWordSize).
*** 161,172 ****
--- 158,168 ----
}
assert(total_reserved % alignment == 0,
err_msg("Gen size; total_reserved=" SIZE_FORMAT ", alignment="
SIZE_FORMAT, total_reserved, alignment));
! int n_covered_regions = gen_policy()->young_gen_spec()->n_covered_regions() +
gen_policy()->old_gen_spec()->n_covered_regions();
! int n_covered_regions = 2; // Young + Old
// Needed until the cardtable is fixed to have the right number
// of covered regions.
n_covered_regions += 2;
*** 210,220 ****
--- 206,216 ----
return _young_gen->used() + _old_gen->used();
}
// Save the "used_region" for generations level and lower.
void GenCollectedHeap::save_used_regions(int level) {
! assert(level < _n_gens, "Illegal level parameter");
! assert(level < _gen_policy->number_of_generations(), "Illegal level parameter");
if (level == 1) {
_old_gen->save_used_region();
}
_young_gen->save_used_region();
}
*** 760,770 ****
--- 756,766 ----
}
}
#endif // INCLUDE_ALL_GCS
void GenCollectedHeap::do_full_collection(bool clear_all_soft_refs) {
! do_full_collection(clear_all_soft_refs, _n_gens - 1);
! do_full_collection(clear_all_soft_refs, _gen_policy->number_of_generations() - 1);
}
void GenCollectedHeap::do_full_collection(bool clear_all_soft_refs,
int max_level) {
int local_max_level;
*** 1024,1036 ****
--- 1020,1030 ----
assert(_gch != NULL, "Uninitialized access to GenCollectedHeap::heap()");
assert(_gch->kind() == CollectedHeap::GenCollectedHeap, "not a generational heap");
return _gch;
}
void GenCollectedHeap::prepare_for_compaction() {
guarantee(_n_gens = 2, "Wrong number of generations");
// Start by compacting into same gen.
CompactPoint cp(_old_gen);
_old_gen->prepare_for_compaction(&cp);
_young_gen->prepare_for_compaction(&cp);
}
src/share/vm/memory/genCollectedHeap.cpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File