25 |
25 |
26 #include "gc/shenandoah/shenandoahHeap.hpp" |
26 #include "gc/shenandoah/shenandoahHeap.hpp" |
27 #include "gc/shenandoah/shenandoahHeapRegion.hpp" |
27 #include "gc/shenandoah/shenandoahHeapRegion.hpp" |
28 #include "gc/shenandoah/shenandoahMonitoringSupport.hpp" |
28 #include "gc/shenandoah/shenandoahMonitoringSupport.hpp" |
29 |
29 |
30 #define VM_STRUCTS_SHENANDOAH(nonstatic_field, volatile_nonstatic_field, static_field) \ |
30 #define VM_STRUCTS_SHENANDOAH(nonstatic_field, volatile_nonstatic_field, static_field) \ |
31 static_field(ShenandoahHeapRegion, RegionSizeBytes, size_t) \ |
31 nonstatic_field(ShenandoahHeap, _num_regions, size_t) \ |
32 nonstatic_field(ShenandoahHeap, _num_regions, size_t) \ |
32 nonstatic_field(ShenandoahHeap, _regions, ShenandoahHeapRegion**) \ |
33 volatile_nonstatic_field(ShenandoahHeap, _used, size_t) \ |
33 nonstatic_field(ShenandoahHeap, _log_min_obj_alignment_in_bytes, int) \ |
34 volatile_nonstatic_field(ShenandoahHeap, _committed, size_t) \ |
34 volatile_nonstatic_field(ShenandoahHeap, _used, size_t) \ |
|
35 volatile_nonstatic_field(ShenandoahHeap, _committed, size_t) \ |
|
36 static_field(ShenandoahHeapRegion, RegionSizeBytes, size_t) \ |
|
37 static_field(ShenandoahHeapRegion, RegionSizeBytesShift, size_t) \ |
|
38 nonstatic_field(ShenandoahHeapRegion, _state, ShenandoahHeapRegion::RegionState) \ |
|
39 nonstatic_field(ShenandoahHeapRegion, _region_number, size_t) \ |
35 |
40 |
36 #define VM_INT_CONSTANTS_SHENANDOAH(declare_constant, declare_constant_with_value) |
41 #define VM_INT_CONSTANTS_SHENANDOAH(declare_constant, declare_constant_with_value) \ |
|
42 declare_constant(ShenandoahHeapRegion::_empty_uncommitted) \ |
|
43 declare_constant(ShenandoahHeapRegion::_empty_committed) \ |
|
44 declare_constant(ShenandoahHeapRegion::_regular) \ |
|
45 declare_constant(ShenandoahHeapRegion::_humongous_start) \ |
|
46 declare_constant(ShenandoahHeapRegion::_humongous_cont) \ |
|
47 declare_constant(ShenandoahHeapRegion::_pinned_humongous_start) \ |
|
48 declare_constant(ShenandoahHeapRegion::_cset) \ |
|
49 declare_constant(ShenandoahHeapRegion::_pinned) \ |
|
50 declare_constant(ShenandoahHeapRegion::_pinned_cset) \ |
|
51 declare_constant(ShenandoahHeapRegion::_trash) \ |
37 |
52 |
38 #define VM_TYPES_SHENANDOAH(declare_type, \ |
53 #define VM_TYPES_SHENANDOAH(declare_type, \ |
39 declare_toplevel_type, \ |
54 declare_toplevel_type, \ |
40 declare_integer_type) \ |
55 declare_integer_type) \ |
41 declare_type(ShenandoahHeap, CollectedHeap) \ |
56 declare_type(ShenandoahHeap, CollectedHeap) \ |
42 declare_type(ShenandoahHeapRegion, ContiguousSpace) \ |
57 declare_type(ShenandoahHeapRegion, ContiguousSpace) \ |
43 declare_toplevel_type(ShenandoahHeap*) \ |
58 declare_toplevel_type(ShenandoahHeap*) \ |
44 declare_toplevel_type(ShenandoahHeapRegion*) \ |
59 declare_toplevel_type(ShenandoahHeapRegion*) \ |
|
60 declare_toplevel_type(ShenandoahHeapRegion::RegionState) \ |
45 |
61 |
46 #endif // SHARE_GC_SHENANDOAH_VMSTRUCTS_SHENANDOAH_HPP |
62 #endif // SHARE_GC_SHENANDOAH_VMSTRUCTS_SHENANDOAH_HPP |