15 * You should have received a copy of the GNU General Public License version
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
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/parallel/adjoiningGenerations.hpp"
27 #include "gc/parallel/adjoiningGenerationsForHeteroHeap.hpp"
28 #include "gc/parallel/adjoiningVirtualSpaces.hpp"
29 #include "gc/parallel/parallelScavengeHeap.hpp"
30 #include "gc/parallel/parallelArguments.hpp"
31 #include "gc/shared/genArguments.hpp"
32 #include "logging/log.hpp"
33 #include "logging/logStream.hpp"
34 #include "memory/resourceArea.hpp"
35 #include "utilities/align.hpp"
36 #include "utilities/ostream.hpp"
37
38 // If boundary moving is being used, create the young gen and old
39 // gen with ASPSYoungGen and ASPSOldGen, respectively. Revert to
40 // the old behavior otherwise (with PSYoungGen and PSOldGen).
41
42 AdjoiningGenerations::AdjoiningGenerations(ReservedSpace old_young_rs) :
43 _virtual_spaces(new AdjoiningVirtualSpaces(old_young_rs, MinOldSize,
44 MinNewSize, GenAlignment)) {
45 size_t init_low_byte_size = OldSize;
46 size_t min_low_byte_size = MinOldSize;
47 size_t max_low_byte_size = MaxOldSize;
48 size_t init_high_byte_size = NewSize;
49 size_t min_high_byte_size = MinNewSize;
50 size_t max_high_byte_size = MaxNewSize;
51
52 assert(min_low_byte_size <= init_low_byte_size &&
53 init_low_byte_size <= max_low_byte_size, "Parameter check");
54 assert(min_high_byte_size <= init_high_byte_size &&
|
15 * You should have received a copy of the GNU General Public License version
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
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/parallel/adjoiningGenerations.hpp"
27 #include "gc/parallel/adjoiningGenerationsForHeteroHeap.hpp"
28 #include "gc/parallel/adjoiningVirtualSpaces.hpp"
29 #include "gc/parallel/parallelScavengeHeap.hpp"
30 #include "gc/parallel/parallelArguments.hpp"
31 #include "gc/shared/genArguments.hpp"
32 #include "logging/log.hpp"
33 #include "logging/logStream.hpp"
34 #include "memory/resourceArea.hpp"
35 #include "runtime/mutexLocker.inline.hpp"
36 #include "utilities/align.hpp"
37 #include "utilities/ostream.hpp"
38
39 // If boundary moving is being used, create the young gen and old
40 // gen with ASPSYoungGen and ASPSOldGen, respectively. Revert to
41 // the old behavior otherwise (with PSYoungGen and PSOldGen).
42
43 AdjoiningGenerations::AdjoiningGenerations(ReservedSpace old_young_rs) :
44 _virtual_spaces(new AdjoiningVirtualSpaces(old_young_rs, MinOldSize,
45 MinNewSize, GenAlignment)) {
46 size_t init_low_byte_size = OldSize;
47 size_t min_low_byte_size = MinOldSize;
48 size_t max_low_byte_size = MaxOldSize;
49 size_t init_high_byte_size = NewSize;
50 size_t min_high_byte_size = MinNewSize;
51 size_t max_high_byte_size = MaxNewSize;
52
53 assert(min_low_byte_size <= init_low_byte_size &&
54 init_low_byte_size <= max_low_byte_size, "Parameter check");
55 assert(min_high_byte_size <= init_high_byte_size &&
|