24 #ifndef SHARE_VM_GC_EPSILON_COLLECTEDHEAP_HPP |
24 #ifndef SHARE_VM_GC_EPSILON_COLLECTEDHEAP_HPP |
25 #define SHARE_VM_GC_EPSILON_COLLECTEDHEAP_HPP |
25 #define SHARE_VM_GC_EPSILON_COLLECTEDHEAP_HPP |
26 |
26 |
27 #include "gc/shared/collectedHeap.hpp" |
27 #include "gc/shared/collectedHeap.hpp" |
28 #include "gc/shared/space.hpp" |
28 #include "gc/shared/space.hpp" |
|
29 #include "services/memoryManager.hpp" |
29 #include "gc/epsilon/epsilonCollectorPolicy.hpp" |
30 #include "gc/epsilon/epsilonCollectorPolicy.hpp" |
30 #include "gc/epsilon/epsilonMonitoringSupport.hpp" |
31 #include "gc/epsilon/epsilonMonitoringSupport.hpp" |
31 #include "gc/epsilon/epsilonBarrierSet.hpp" |
32 #include "gc/epsilon/epsilonBarrierSet.hpp" |
32 #include "gc/epsilon/epsilon_globals.hpp" |
33 #include "gc/epsilon/epsilon_globals.hpp" |
33 |
34 |
34 class EpsilonHeap : public CollectedHeap { |
35 class EpsilonHeap : public CollectedHeap { |
35 private: |
36 private: |
36 EpsilonCollectorPolicy* _policy; |
37 EpsilonCollectorPolicy* _policy; |
37 EpsilonMonitoringSupport* _monitoring_support; |
38 EpsilonMonitoringSupport* _monitoring_support; |
|
39 MemoryPool* _pool; |
|
40 GCMemoryManager _memory_manager; |
38 ContiguousSpace* _space; |
41 ContiguousSpace* _space; |
39 VirtualSpace _virtual_space; |
42 VirtualSpace _virtual_space; |
40 size_t _max_tlab_size; |
43 size_t _max_tlab_size; |
41 size_t _last_counter_update; |
44 size_t _last_counter_update; |
42 public: |
45 public: |
43 EpsilonHeap(EpsilonCollectorPolicy* p) : _policy(p) {}; |
46 EpsilonHeap(EpsilonCollectorPolicy* p) : |
|
47 _policy(p), |
|
48 _memory_manager("Epsilon Heap", "") {}; |
44 |
49 |
45 virtual Name kind() const { |
50 virtual Name kind() const { |
46 return CollectedHeap::EpsilonHeap; |
51 return CollectedHeap::EpsilonHeap; |
47 } |
52 } |
48 |
53 |