26 #include "code/nmethod.hpp"
27 #include "gc/g1/g1BlockOffsetTable.inline.hpp"
28 #include "gc/g1/g1CollectedHeap.inline.hpp"
29 #include "gc/g1/g1HeapRegionTraceType.hpp"
30 #include "gc/g1/g1OopClosures.inline.hpp"
31 #include "gc/g1/heapRegion.inline.hpp"
32 #include "gc/g1/heapRegionBounds.inline.hpp"
33 #include "gc/g1/heapRegionManager.inline.hpp"
34 #include "gc/g1/heapRegionRemSet.hpp"
35 #include "gc/g1/heapRegionTracer.hpp"
36 #include "gc/shared/genOopClosures.inline.hpp"
37 #include "gc/shared/space.inline.hpp"
38 #include "logging/log.hpp"
39 #include "logging/logStream.hpp"
40 #include "memory/iterator.hpp"
41 #include "memory/resourceArea.hpp"
42 #include "oops/access.inline.hpp"
43 #include "oops/compressedOops.inline.hpp"
44 #include "oops/oop.inline.hpp"
45 #include "runtime/atomic.hpp"
46 #include "runtime/orderAccess.inline.hpp"
47 #include "utilities/growableArray.hpp"
48
49 int HeapRegion::LogOfHRGrainBytes = 0;
50 int HeapRegion::LogOfHRGrainWords = 0;
51 size_t HeapRegion::GrainBytes = 0;
52 size_t HeapRegion::GrainWords = 0;
53 size_t HeapRegion::CardsPerRegion = 0;
54
55 size_t HeapRegion::max_region_size() {
56 return HeapRegionBounds::max_size();
57 }
58
59 size_t HeapRegion::min_region_size_in_words() {
60 return HeapRegionBounds::min_size() >> LogHeapWordSize;
61 }
62
63 void HeapRegion::setup_heap_region_size(size_t initial_heap_size, size_t max_heap_size) {
64 size_t region_size = G1HeapRegionSize;
65 if (FLAG_IS_DEFAULT(G1HeapRegionSize)) {
66 size_t average_heap_size = (initial_heap_size + max_heap_size) / 2;
|
26 #include "code/nmethod.hpp"
27 #include "gc/g1/g1BlockOffsetTable.inline.hpp"
28 #include "gc/g1/g1CollectedHeap.inline.hpp"
29 #include "gc/g1/g1HeapRegionTraceType.hpp"
30 #include "gc/g1/g1OopClosures.inline.hpp"
31 #include "gc/g1/heapRegion.inline.hpp"
32 #include "gc/g1/heapRegionBounds.inline.hpp"
33 #include "gc/g1/heapRegionManager.inline.hpp"
34 #include "gc/g1/heapRegionRemSet.hpp"
35 #include "gc/g1/heapRegionTracer.hpp"
36 #include "gc/shared/genOopClosures.inline.hpp"
37 #include "gc/shared/space.inline.hpp"
38 #include "logging/log.hpp"
39 #include "logging/logStream.hpp"
40 #include "memory/iterator.hpp"
41 #include "memory/resourceArea.hpp"
42 #include "oops/access.inline.hpp"
43 #include "oops/compressedOops.inline.hpp"
44 #include "oops/oop.inline.hpp"
45 #include "runtime/atomic.hpp"
46 #include "runtime/orderAccess.hpp"
47 #include "utilities/growableArray.hpp"
48
49 int HeapRegion::LogOfHRGrainBytes = 0;
50 int HeapRegion::LogOfHRGrainWords = 0;
51 size_t HeapRegion::GrainBytes = 0;
52 size_t HeapRegion::GrainWords = 0;
53 size_t HeapRegion::CardsPerRegion = 0;
54
55 size_t HeapRegion::max_region_size() {
56 return HeapRegionBounds::max_size();
57 }
58
59 size_t HeapRegion::min_region_size_in_words() {
60 return HeapRegionBounds::min_size() >> LogHeapWordSize;
61 }
62
63 void HeapRegion::setup_heap_region_size(size_t initial_heap_size, size_t max_heap_size) {
64 size_t region_size = G1HeapRegionSize;
65 if (FLAG_IS_DEFAULT(G1HeapRegionSize)) {
66 size_t average_heap_size = (initial_heap_size + max_heap_size) / 2;
|