3434#include " gc/serial/defNewGeneration.hpp"
3535#include " gc/serial/genMarkSweep.hpp"
3636#include " gc/serial/markSweep.hpp"
37+ #include " gc/serial/tenuredGeneration.hpp"
3738#include " gc/shared/cardTableBarrierSet.hpp"
3839#include " gc/shared/collectedHeap.inline.hpp"
3940#include " gc/shared/collectorCounters.hpp"
4748#include " gc/shared/gcVMOperations.hpp"
4849#include " gc/shared/genArguments.hpp"
4950#include " gc/shared/genCollectedHeap.hpp"
50- #include " gc/shared/generationSpec.hpp"
5151#include " gc/shared/locationPrinter.inline.hpp"
5252#include " gc/shared/oopStorage.inline.hpp"
5353#include " gc/shared/oopStorageParState.inline.hpp"
@@ -85,14 +85,6 @@ GenCollectedHeap::GenCollectedHeap(Generation::Name young,
8585 CollectedHeap(),
8686 _young_gen(nullptr ),
8787 _old_gen(nullptr ),
88- _young_gen_spec(new GenerationSpec(young,
89- NewSize,
90- MaxNewSize,
91- GenAlignment)),
92- _old_gen_spec(new GenerationSpec(old,
93- OldSize,
94- MaxOldSize,
95- GenAlignment)),
9688 _rem_set(nullptr ),
9789 _soft_ref_policy(),
9890 _gc_policy_counters(new GCPolicyCounters(policy_counters_name, 2 , 2 )),
@@ -115,8 +107,8 @@ jint GenCollectedHeap::initialize() {
115107
116108 initialize_reserved_region (heap_rs);
117109
118- ReservedSpace young_rs = heap_rs.first_part (_young_gen_spec-> max_size () );
119- ReservedSpace old_rs = heap_rs.last_part (_young_gen_spec-> max_size () );
110+ ReservedSpace young_rs = heap_rs.first_part (MaxNewSize );
111+ ReservedSpace old_rs = heap_rs.last_part (MaxNewSize );
120112
121113 _rem_set = create_rem_set (heap_rs.region ());
122114 _rem_set->initialize (young_rs.base (), old_rs.base ());
@@ -125,8 +117,8 @@ jint GenCollectedHeap::initialize() {
125117 bs->initialize ();
126118 BarrierSet::set_barrier_set (bs);
127119
128- _young_gen = _young_gen_spec-> init (young_rs, rem_set () );
129- _old_gen = _old_gen_spec-> init (old_rs, rem_set ());
120+ _young_gen = new DefNewGeneration (young_rs, NewSize, MinNewSize, MaxNewSize );
121+ _old_gen = new TenuredGeneration (old_rs, OldSize, MinOldSize, MaxOldSize , rem_set ());
130122
131123 GCInitLogger::print ();
132124
@@ -143,8 +135,8 @@ ReservedHeapSpace GenCollectedHeap::allocate(size_t alignment) {
143135 assert (alignment % pageSize == 0 , " Must be" );
144136
145137 // Check for overflow.
146- size_t total_reserved = _young_gen_spec-> max_size () + _old_gen_spec-> max_size () ;
147- if (total_reserved < _young_gen_spec-> max_size () ) {
138+ size_t total_reserved = MaxNewSize + MaxOldSize ;
139+ if (total_reserved < MaxNewSize ) {
148140 vm_exit_during_initialization (" The size of the object heap + VM data exceeds "
149141 " the maximum representable size" );
150142 }
@@ -199,14 +191,6 @@ PreGenGCValues GenCollectedHeap::get_pre_gc_values() const {
199191 old_gen ()->capacity ());
200192}
201193
202- GenerationSpec* GenCollectedHeap::young_gen_spec () const {
203- return _young_gen_spec;
204- }
205-
206- GenerationSpec* GenCollectedHeap::old_gen_spec () const {
207- return _old_gen_spec;
208- }
209-
210194size_t GenCollectedHeap::capacity () const {
211195 return _young_gen->capacity () + _old_gen->capacity ();
212196}
0 commit comments