equal
deleted
inserted
replaced
1 /* |
1 /* |
2 * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 2014, 2018, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * |
4 * |
5 * This code is free software; you can redistribute it and/or modify it |
5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as |
6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. |
7 * published by the Free Software Foundation. |
23 */ |
23 */ |
24 |
24 |
25 #ifndef SHARE_VM_GC_G1_G1PAGEBASEDVIRTUALSPACE_HPP |
25 #ifndef SHARE_VM_GC_G1_G1PAGEBASEDVIRTUALSPACE_HPP |
26 #define SHARE_VM_GC_G1_G1PAGEBASEDVIRTUALSPACE_HPP |
26 #define SHARE_VM_GC_G1_G1PAGEBASEDVIRTUALSPACE_HPP |
27 |
27 |
28 #include "memory/allocation.hpp" |
|
29 #include "memory/memRegion.hpp" |
28 #include "memory/memRegion.hpp" |
30 #include "memory/virtualspace.hpp" |
29 #include "memory/virtualspace.hpp" |
31 #include "utilities/align.hpp" |
30 #include "utilities/align.hpp" |
32 #include "utilities/bitMap.hpp" |
31 #include "utilities/bitMap.hpp" |
33 |
32 |
43 // of the reservation passed may be rounded up to this page size. Any fragment |
42 // of the reservation passed may be rounded up to this page size. Any fragment |
44 // (less than the page size) of the actual size at the tail of the request will |
43 // (less than the page size) of the actual size at the tail of the request will |
45 // be committed using OS small pages. |
44 // be committed using OS small pages. |
46 // The implementation gives an error when trying to commit or uncommit pages that |
45 // The implementation gives an error when trying to commit or uncommit pages that |
47 // have already been committed or uncommitted. |
46 // have already been committed or uncommitted. |
48 class G1PageBasedVirtualSpace VALUE_OBJ_CLASS_SPEC { |
47 class G1PageBasedVirtualSpace { |
49 friend class VMStructs; |
48 friend class VMStructs; |
50 private: |
49 private: |
51 // Reserved area addresses. |
50 // Reserved area addresses. |
52 char* _low_boundary; |
51 char* _low_boundary; |
53 char* _high_boundary; |
52 char* _high_boundary; |