src/share/vm/gc_implementation/parallelScavenge/adjoiningGenerations.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hotspot Sdiff src/share/vm/gc_implementation/parallelScavenge

src/share/vm/gc_implementation/parallelScavenge/adjoiningGenerations.cpp

Print this page
rev 6347 : 8042298: Remove the names gen0 and gen1 from the GC code
Summary: Renamed gen0 and gen1 to young and old throughout the GC code.
Reviewed-by:


  18  *
  19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20  * or visit www.oracle.com if you need additional information or have any
  21  * questions.
  22  *
  23  */
  24 
  25 #include "precompiled.hpp"
  26 #include "gc_implementation/parallelScavenge/adjoiningGenerations.hpp"
  27 #include "gc_implementation/parallelScavenge/adjoiningVirtualSpaces.hpp"
  28 #include "gc_implementation/parallelScavenge/generationSizer.hpp"
  29 #include "gc_implementation/parallelScavenge/parallelScavengeHeap.hpp"
  30 
  31 // If boundary moving is being used, create the young gen and old
  32 // gen with ASPSYoungGen and ASPSOldGen, respectively.  Revert to
  33 // the old behavior otherwise (with PSYoungGen and PSOldGen).
  34 
  35 AdjoiningGenerations::AdjoiningGenerations(ReservedSpace old_young_rs,
  36                                            GenerationSizer* policy,
  37                                            size_t alignment) :
  38   _virtual_spaces(old_young_rs, policy->min_gen1_size(),
  39                   policy->min_gen0_size(), alignment) {
  40   size_t init_low_byte_size = policy->initial_gen1_size();
  41   size_t min_low_byte_size = policy->min_gen1_size();
  42   size_t max_low_byte_size = policy->max_gen1_size();
  43   size_t init_high_byte_size = policy->initial_gen0_size();
  44   size_t min_high_byte_size = policy->min_gen0_size();
  45   size_t max_high_byte_size = policy->max_gen0_size();
  46 
  47   assert(min_low_byte_size <= init_low_byte_size &&
  48          init_low_byte_size <= max_low_byte_size, "Parameter check");
  49   assert(min_high_byte_size <= init_high_byte_size &&
  50          init_high_byte_size <= max_high_byte_size, "Parameter check");
  51   // Create the generations differently based on the option to
  52   // move the boundary.
  53   if (UseAdaptiveGCBoundary) {
  54     // Initialize the adjoining virtual spaces.  Then pass the
  55     // a virtual to each generation for initialization of the
  56     // generation.
  57 
  58     // Does the actual creation of the virtual spaces
  59     _virtual_spaces.initialize(max_low_byte_size,
  60                                init_low_byte_size,
  61                                init_high_byte_size);
  62 
  63     // Place the young gen at the high end.  Passes in the virtual space.
  64     _young_gen = new ASPSYoungGen(_virtual_spaces.high(),
  65                                   _virtual_spaces.high()->committed_size(),




  18  *
  19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20  * or visit www.oracle.com if you need additional information or have any
  21  * questions.
  22  *
  23  */
  24 
  25 #include "precompiled.hpp"
  26 #include "gc_implementation/parallelScavenge/adjoiningGenerations.hpp"
  27 #include "gc_implementation/parallelScavenge/adjoiningVirtualSpaces.hpp"
  28 #include "gc_implementation/parallelScavenge/generationSizer.hpp"
  29 #include "gc_implementation/parallelScavenge/parallelScavengeHeap.hpp"
  30 
  31 // If boundary moving is being used, create the young gen and old
  32 // gen with ASPSYoungGen and ASPSOldGen, respectively.  Revert to
  33 // the old behavior otherwise (with PSYoungGen and PSOldGen).
  34 
  35 AdjoiningGenerations::AdjoiningGenerations(ReservedSpace old_young_rs,
  36                                            GenerationSizer* policy,
  37                                            size_t alignment) :
  38   _virtual_spaces(old_young_rs, policy->min_old_size(),
  39                   policy->min_young_size(), alignment) {
  40   size_t init_low_byte_size = policy->initial_old_size();
  41   size_t min_low_byte_size = policy->min_old_size();
  42   size_t max_low_byte_size = policy->max_old_size();
  43   size_t init_high_byte_size = policy->initial_young_size();
  44   size_t min_high_byte_size = policy->min_young_size();
  45   size_t max_high_byte_size = policy->max_young_size();
  46 
  47   assert(min_low_byte_size <= init_low_byte_size &&
  48          init_low_byte_size <= max_low_byte_size, "Parameter check");
  49   assert(min_high_byte_size <= init_high_byte_size &&
  50          init_high_byte_size <= max_high_byte_size, "Parameter check");
  51   // Create the generations differently based on the option to
  52   // move the boundary.
  53   if (UseAdaptiveGCBoundary) {
  54     // Initialize the adjoining virtual spaces.  Then pass the
  55     // a virtual to each generation for initialization of the
  56     // generation.
  57 
  58     // Does the actual creation of the virtual spaces
  59     _virtual_spaces.initialize(max_low_byte_size,
  60                                init_low_byte_size,
  61                                init_high_byte_size);
  62 
  63     // Place the young gen at the high end.  Passes in the virtual space.
  64     _young_gen = new ASPSYoungGen(_virtual_spaces.high(),
  65                                   _virtual_spaces.high()->committed_size(),


src/share/vm/gc_implementation/parallelScavenge/adjoiningGenerations.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File