< prev index next >

src/share/vm/gc/g1/vmStructs_g1.hpp

Print this page




  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_G1_VMSTRUCTS_G1_HPP
  26 #define SHARE_VM_GC_G1_VMSTRUCTS_G1_HPP
  27 
  28 #include "gc/g1/g1CollectedHeap.hpp"
  29 #include "gc/g1/heapRegion.hpp"
  30 #include "gc/g1/heapRegionManager.hpp"
  31 #include "utilities/macros.hpp"
  32 
  33 #define VM_STRUCTS_G1(nonstatic_field, static_field)                          \
  34                                                                               \
  35   static_field(HeapRegion, GrainBytes,        size_t)                         \
  36   static_field(HeapRegion, LogOfHRGrainBytes, int)                            \
  37                                                                               \
  38   nonstatic_field(G1OffsetTableContigSpace, _top,       HeapWord* volatile)   \
  39                                                                               \
  40   nonstatic_field(G1HeapRegionTable, _base,             address)              \
  41   nonstatic_field(G1HeapRegionTable, _length,           size_t)               \
  42   nonstatic_field(G1HeapRegionTable, _biased_base,      address)              \
  43   nonstatic_field(G1HeapRegionTable, _bias,             size_t)               \
  44   nonstatic_field(G1HeapRegionTable, _shift_by,         uint)                 \
  45                                                                               \
  46   nonstatic_field(HeapRegionManager, _regions,          G1HeapRegionTable)    \
  47   nonstatic_field(HeapRegionManager, _num_committed,    uint)                 \
  48                                                                               \
  49   nonstatic_field(G1CollectedHeap, _summary_bytes_used, size_t)               \
  50   nonstatic_field(G1CollectedHeap, _hrm,                HeapRegionManager)    \
  51   nonstatic_field(G1CollectedHeap, _g1mm,               G1MonitoringSupport*) \
  52   nonstatic_field(G1CollectedHeap, _old_set,            HeapRegionSetBase)    \
  53   nonstatic_field(G1CollectedHeap, _humongous_set,      HeapRegionSetBase)    \
  54                                                                               \
  55   nonstatic_field(G1MonitoringSupport, _eden_committed,     size_t)           \
  56   nonstatic_field(G1MonitoringSupport, _eden_used,          size_t)           \
  57   nonstatic_field(G1MonitoringSupport, _survivor_committed, size_t)           \
  58   nonstatic_field(G1MonitoringSupport, _survivor_used,      size_t)           \


  79                                                                               \
  80   JVMCI_ONLY(                                                                 \
  81     declare_constant_with_value(                                              \
  82       "satbMarkQueueBufferOffset",                                            \
  83       in_bytes(SATBMarkQueue::byte_offset_of_buf()))                          \
  84     declare_constant_with_value(                                              \
  85       "satbMarkQueueIndexOffset",                                             \
  86       in_bytes(SATBMarkQueue::byte_offset_of_index()))                        \
  87     declare_constant_with_value(                                              \
  88       "satbMarkQueueActiveOffset",                                            \
  89       in_bytes(SATBMarkQueue::byte_offset_of_active()))                       \
  90     ) /* JVMCI_ONLY */                                                        \
  91 
  92 
  93 #define VM_TYPES_G1(declare_type, declare_toplevel_type)                      \
  94                                                                               \
  95   declare_toplevel_type(G1HeapRegionTable)                                    \
  96                                                                               \
  97   declare_type(G1CollectedHeap, CollectedHeap)                                \
  98                                                                               \
  99   declare_type(G1OffsetTableContigSpace, CompactibleSpace)                    \
 100   declare_type(HeapRegion, G1OffsetTableContigSpace)                          \
 101   declare_toplevel_type(HeapRegionManager)                                    \
 102   declare_toplevel_type(HeapRegionSetBase)                                    \
 103   declare_toplevel_type(G1MonitoringSupport)                                  \
 104   declare_toplevel_type(PtrQueue)                                             \
 105                                                                               \
 106   declare_toplevel_type(G1CollectedHeap*)                                     \
 107   declare_toplevel_type(HeapRegion*)                                          \
 108   declare_toplevel_type(G1MonitoringSupport*)                                 \
 109 
 110 #endif // SHARE_VM_GC_G1_VMSTRUCTS_G1_HPP


  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_G1_VMSTRUCTS_G1_HPP
  26 #define SHARE_VM_GC_G1_VMSTRUCTS_G1_HPP
  27 
  28 #include "gc/g1/g1CollectedHeap.hpp"
  29 #include "gc/g1/heapRegion.hpp"
  30 #include "gc/g1/heapRegionManager.hpp"
  31 #include "utilities/macros.hpp"
  32 
  33 #define VM_STRUCTS_G1(nonstatic_field, static_field)                          \
  34                                                                               \
  35   static_field(HeapRegion, GrainBytes,        size_t)                         \
  36   static_field(HeapRegion, LogOfHRGrainBytes, int)                            \
  37                                                                               \
  38   nonstatic_field(G1ContiguousSpace, _top,              HeapWord* volatile)   \
  39                                                                               \
  40   nonstatic_field(G1HeapRegionTable, _base,             address)              \
  41   nonstatic_field(G1HeapRegionTable, _length,           size_t)               \
  42   nonstatic_field(G1HeapRegionTable, _biased_base,      address)              \
  43   nonstatic_field(G1HeapRegionTable, _bias,             size_t)               \
  44   nonstatic_field(G1HeapRegionTable, _shift_by,         uint)                 \
  45                                                                               \
  46   nonstatic_field(HeapRegionManager, _regions,          G1HeapRegionTable)    \
  47   nonstatic_field(HeapRegionManager, _num_committed,    uint)                 \
  48                                                                               \
  49   nonstatic_field(G1CollectedHeap, _summary_bytes_used, size_t)               \
  50   nonstatic_field(G1CollectedHeap, _hrm,                HeapRegionManager)    \
  51   nonstatic_field(G1CollectedHeap, _g1mm,               G1MonitoringSupport*) \
  52   nonstatic_field(G1CollectedHeap, _old_set,            HeapRegionSetBase)    \
  53   nonstatic_field(G1CollectedHeap, _humongous_set,      HeapRegionSetBase)    \
  54                                                                               \
  55   nonstatic_field(G1MonitoringSupport, _eden_committed,     size_t)           \
  56   nonstatic_field(G1MonitoringSupport, _eden_used,          size_t)           \
  57   nonstatic_field(G1MonitoringSupport, _survivor_committed, size_t)           \
  58   nonstatic_field(G1MonitoringSupport, _survivor_used,      size_t)           \


  79                                                                               \
  80   JVMCI_ONLY(                                                                 \
  81     declare_constant_with_value(                                              \
  82       "satbMarkQueueBufferOffset",                                            \
  83       in_bytes(SATBMarkQueue::byte_offset_of_buf()))                          \
  84     declare_constant_with_value(                                              \
  85       "satbMarkQueueIndexOffset",                                             \
  86       in_bytes(SATBMarkQueue::byte_offset_of_index()))                        \
  87     declare_constant_with_value(                                              \
  88       "satbMarkQueueActiveOffset",                                            \
  89       in_bytes(SATBMarkQueue::byte_offset_of_active()))                       \
  90     ) /* JVMCI_ONLY */                                                        \
  91 
  92 
  93 #define VM_TYPES_G1(declare_type, declare_toplevel_type)                      \
  94                                                                               \
  95   declare_toplevel_type(G1HeapRegionTable)                                    \
  96                                                                               \
  97   declare_type(G1CollectedHeap, CollectedHeap)                                \
  98                                                                               \
  99   declare_type(G1ContiguousSpace, CompactibleSpace)                           \
 100   declare_type(HeapRegion, G1ContiguousSpace)                                 \
 101   declare_toplevel_type(HeapRegionManager)                                    \
 102   declare_toplevel_type(HeapRegionSetBase)                                    \
 103   declare_toplevel_type(G1MonitoringSupport)                                  \
 104   declare_toplevel_type(PtrQueue)                                             \
 105                                                                               \
 106   declare_toplevel_type(G1CollectedHeap*)                                     \
 107   declare_toplevel_type(HeapRegion*)                                          \
 108   declare_toplevel_type(G1MonitoringSupport*)                                 \
 109 
 110 #endif // SHARE_VM_GC_G1_VMSTRUCTS_G1_HPP
< prev index next >