Mercurial > hg > graal-compiler
annotate src/share/vm/gc_implementation/g1/vmStructs_g1.hpp @ 20276:1526a938e670
8047818: G1 HeapRegions can no longer be ContiguousSpaces
Summary: Change parent of G1OffsetTableContigSpace to CompactibleSpace, reimplement missing functionality
Reviewed-by: stefank, jmasa, tschatzl
author | mgerdin |
---|---|
date | Thu, 26 Jun 2014 11:36:58 +0200 |
parents | 58fc1b1523dc |
children | 6701abbc4441 |
rev | line source |
---|---|
3972 | 1 /* |
17467
55fb97c4c58d
8029233: Update copyright year to match last edit in jdk8 hotspot repository for 2013
mikael
parents:
12305
diff
changeset
|
2 * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved. |
3972 | 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * | |
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 | |
7 * published by the Free Software Foundation. | |
8 * | |
9 * This code is distributed in the hope that it will be useful, but WITHOUT | |
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
12 * version 2 for more details (a copy is included in the LICENSE file that | |
13 * accompanied this code). | |
14 * | |
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 #ifndef SHARE_VM_GC_IMPLEMENTATION_G1_VMSTRUCTS_G1_HPP | |
26 #define SHARE_VM_GC_IMPLEMENTATION_G1_VMSTRUCTS_G1_HPP | |
27 | |
28 #include "gc_implementation/g1/heapRegion.hpp" | |
29 #include "gc_implementation/g1/heapRegionSeq.inline.hpp" | |
30 #include "gc_implementation/g1/g1CollectedHeap.inline.hpp" | |
31 | |
32 #define VM_STRUCTS_G1(nonstatic_field, static_field) \ | |
33 \ | |
12258
69f26e8e09f9
8024760: add more types, fields and constants to VMStructs
twisti
parents:
6010
diff
changeset
|
34 static_field(HeapRegion, GrainBytes, size_t) \ |
69f26e8e09f9
8024760: add more types, fields and constants to VMStructs
twisti
parents:
6010
diff
changeset
|
35 static_field(HeapRegion, LogOfHRGrainBytes, int) \ |
3972 | 36 \ |
20276
1526a938e670
8047818: G1 HeapRegions can no longer be ContiguousSpaces
mgerdin
parents:
17736
diff
changeset
|
37 nonstatic_field(G1OffsetTableContigSpace, _top, HeapWord*) \ |
1526a938e670
8047818: G1 HeapRegions can no longer be ContiguousSpaces
mgerdin
parents:
17736
diff
changeset
|
38 \ |
12305
a19bea467577
7163191: G1: introduce a "heap spanning table" abstraction
tschatzl
parents:
12258
diff
changeset
|
39 nonstatic_field(G1HeapRegionTable, _base, address) \ |
a19bea467577
7163191: G1: introduce a "heap spanning table" abstraction
tschatzl
parents:
12258
diff
changeset
|
40 nonstatic_field(G1HeapRegionTable, _length, size_t) \ |
a19bea467577
7163191: G1: introduce a "heap spanning table" abstraction
tschatzl
parents:
12258
diff
changeset
|
41 nonstatic_field(G1HeapRegionTable, _biased_base, address) \ |
a19bea467577
7163191: G1: introduce a "heap spanning table" abstraction
tschatzl
parents:
12258
diff
changeset
|
42 nonstatic_field(G1HeapRegionTable, _bias, size_t) \ |
a19bea467577
7163191: G1: introduce a "heap spanning table" abstraction
tschatzl
parents:
12258
diff
changeset
|
43 nonstatic_field(G1HeapRegionTable, _shift_by, uint) \ |
a19bea467577
7163191: G1: introduce a "heap spanning table" abstraction
tschatzl
parents:
12258
diff
changeset
|
44 \ |
a19bea467577
7163191: G1: introduce a "heap spanning table" abstraction
tschatzl
parents:
12258
diff
changeset
|
45 nonstatic_field(HeapRegionSeq, _regions, G1HeapRegionTable) \ |
a19bea467577
7163191: G1: introduce a "heap spanning table" abstraction
tschatzl
parents:
12258
diff
changeset
|
46 nonstatic_field(HeapRegionSeq, _committed_length, uint) \ |
3972 | 47 \ |
48 nonstatic_field(G1CollectedHeap, _hrs, HeapRegionSeq) \ | |
49 nonstatic_field(G1CollectedHeap, _g1_committed, MemRegion) \ | |
50 nonstatic_field(G1CollectedHeap, _summary_bytes_used, size_t) \ | |
3984
81aa07130d30
7097048: G1: extend the G1 SA changes to print per-heap space information
tonyp
parents:
3972
diff
changeset
|
51 nonstatic_field(G1CollectedHeap, _g1mm, G1MonitoringSupport*) \ |
4830
0b3d1ec6eaee
7097586: G1: improve the per-space output when using jmap -heap
tonyp
parents:
3986
diff
changeset
|
52 nonstatic_field(G1CollectedHeap, _old_set, HeapRegionSetBase) \ |
0b3d1ec6eaee
7097586: G1: improve the per-space output when using jmap -heap
tonyp
parents:
3986
diff
changeset
|
53 nonstatic_field(G1CollectedHeap, _humongous_set, HeapRegionSetBase) \ |
3984
81aa07130d30
7097048: G1: extend the G1 SA changes to print per-heap space information
tonyp
parents:
3972
diff
changeset
|
54 \ |
81aa07130d30
7097048: G1: extend the G1 SA changes to print per-heap space information
tonyp
parents:
3972
diff
changeset
|
55 nonstatic_field(G1MonitoringSupport, _eden_committed, size_t) \ |
81aa07130d30
7097048: G1: extend the G1 SA changes to print per-heap space information
tonyp
parents:
3972
diff
changeset
|
56 nonstatic_field(G1MonitoringSupport, _eden_used, size_t) \ |
81aa07130d30
7097048: G1: extend the G1 SA changes to print per-heap space information
tonyp
parents:
3972
diff
changeset
|
57 nonstatic_field(G1MonitoringSupport, _survivor_committed, size_t) \ |
81aa07130d30
7097048: G1: extend the G1 SA changes to print per-heap space information
tonyp
parents:
3972
diff
changeset
|
58 nonstatic_field(G1MonitoringSupport, _survivor_used, size_t) \ |
81aa07130d30
7097048: G1: extend the G1 SA changes to print per-heap space information
tonyp
parents:
3972
diff
changeset
|
59 nonstatic_field(G1MonitoringSupport, _old_committed, size_t) \ |
81aa07130d30
7097048: G1: extend the G1 SA changes to print per-heap space information
tonyp
parents:
3972
diff
changeset
|
60 nonstatic_field(G1MonitoringSupport, _old_used, size_t) \ |
4830
0b3d1ec6eaee
7097586: G1: improve the per-space output when using jmap -heap
tonyp
parents:
3986
diff
changeset
|
61 \ |
17736
58fc1b1523dc
8034079: G1: Refactor the HeapRegionSet hierarchy
brutisso
parents:
17467
diff
changeset
|
62 nonstatic_field(HeapRegionSetBase, _count, HeapRegionSetCount) \ |
58fc1b1523dc
8034079: G1: Refactor the HeapRegionSet hierarchy
brutisso
parents:
17467
diff
changeset
|
63 \ |
58fc1b1523dc
8034079: G1: Refactor the HeapRegionSet hierarchy
brutisso
parents:
17467
diff
changeset
|
64 nonstatic_field(HeapRegionSetCount, _length, uint) \ |
58fc1b1523dc
8034079: G1: Refactor the HeapRegionSet hierarchy
brutisso
parents:
17467
diff
changeset
|
65 nonstatic_field(HeapRegionSetCount, _capacity, size_t) \ |
3972 | 66 |
67 | |
68 #define VM_TYPES_G1(declare_type, declare_toplevel_type) \ | |
69 \ | |
12305
a19bea467577
7163191: G1: introduce a "heap spanning table" abstraction
tschatzl
parents:
12258
diff
changeset
|
70 declare_toplevel_type(G1HeapRegionTable) \ |
a19bea467577
7163191: G1: introduce a "heap spanning table" abstraction
tschatzl
parents:
12258
diff
changeset
|
71 \ |
3972 | 72 declare_type(G1CollectedHeap, SharedHeap) \ |
73 \ | |
20276
1526a938e670
8047818: G1 HeapRegions can no longer be ContiguousSpaces
mgerdin
parents:
17736
diff
changeset
|
74 declare_type(G1OffsetTableContigSpace, CompactibleSpace) \ |
1526a938e670
8047818: G1 HeapRegions can no longer be ContiguousSpaces
mgerdin
parents:
17736
diff
changeset
|
75 declare_type(HeapRegion, G1OffsetTableContigSpace) \ |
3972 | 76 declare_toplevel_type(HeapRegionSeq) \ |
4830
0b3d1ec6eaee
7097586: G1: improve the per-space output when using jmap -heap
tonyp
parents:
3986
diff
changeset
|
77 declare_toplevel_type(HeapRegionSetBase) \ |
17736
58fc1b1523dc
8034079: G1: Refactor the HeapRegionSet hierarchy
brutisso
parents:
17467
diff
changeset
|
78 declare_toplevel_type(HeapRegionSetCount) \ |
3984
81aa07130d30
7097048: G1: extend the G1 SA changes to print per-heap space information
tonyp
parents:
3972
diff
changeset
|
79 declare_toplevel_type(G1MonitoringSupport) \ |
3972 | 80 \ |
81 declare_toplevel_type(G1CollectedHeap*) \ | |
82 declare_toplevel_type(HeapRegion*) \ | |
3984
81aa07130d30
7097048: G1: extend the G1 SA changes to print per-heap space information
tonyp
parents:
3972
diff
changeset
|
83 declare_toplevel_type(G1MonitoringSupport*) \ |
81aa07130d30
7097048: G1: extend the G1 SA changes to print per-heap space information
tonyp
parents:
3972
diff
changeset
|
84 |
3972 | 85 |
86 #endif // SHARE_VM_GC_IMPLEMENTATION_G1_VMSTRUCTS_G1_HPP |