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