src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
hs-gc-g1-mmap Cdiff src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp
src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp
Print this page
*** 163,176 ****
_recorded_survivor_tail(NULL),
_survivors_age_table(true),
_gc_overhead_perc(0.0) {
// Set up the region size and associated fields. Given that the
// policy is created before the heap, we have to set this up here,
! // so it's done as soon as possible.
! HeapRegion::setup_heap_region_size(Arguments::min_heap_size());
HeapRegionRemSet::setup_remset_size();
G1ErgoVerbose::initialize();
if (PrintAdaptiveSizePolicy) {
// Currently, we only use a single switch for all the heuristics.
--- 163,186 ----
_recorded_survivor_tail(NULL),
_survivors_age_table(true),
_gc_overhead_perc(0.0) {
+ G1Log::init();
+
// Set up the region size and associated fields. Given that the
// policy is created before the heap, we have to set this up here,
! // so it's done as soon as possible
!
! // It would have been natural to pass initial_heap_byte_size() and
! // max_heap_byte_size() to setup_heap_region_size() but those have
! // not been set up at this point since they should be aligned with
! // the region size. So, there is a circular dependency here. We base
! // the region size on the heap size, but the heap size should be
! // aligned with the region size. To get around this we use the
! // unaligned values for the heap.
! HeapRegion::setup_heap_region_size(InitialHeapSize, MaxHeapSize);
HeapRegionRemSet::setup_remset_size();
G1ErgoVerbose::initialize();
if (PrintAdaptiveSizePolicy) {
// Currently, we only use a single switch for all the heuristics.
src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File