< prev index next >

src/hotspot/share/gc/shenandoah/shenandoahHeap.hpp

Print this page
@@ -59,10 +59,11 @@
  class ShenandoahFullGC;
  class ShenandoahMonitoringSupport;
  class ShenandoahPacer;
  class ShenandoahReferenceProcessor;
  class ShenandoahVerifier;
+ class SlidingForwarding;
  class ShenandoahWorkerThreads;
  class VMStructs;
  
  // Used for buffering per-region liveness data.
  // Needed since ShenandoahHeapRegion uses atomics to update liveness.

@@ -225,10 +226,11 @@
    MemRegion _heap_region;
    bool      _heap_region_special;
    size_t    _num_regions;
    ShenandoahHeapRegion** _regions;
    ShenandoahRegionIterator _update_refs_iterator;
+   SlidingForwarding* _forwarding;
  
  public:
  
    inline HeapWord* base() const { return _heap_region.start(); }
  

@@ -241,10 +243,12 @@
    inline ShenandoahHeapRegion* const get_region(size_t region_idx) const;
  
    void heap_region_iterate(ShenandoahHeapRegionClosure* blk) const;
    void parallel_heap_region_iterate(ShenandoahHeapRegionClosure* blk) const;
  
+   SlidingForwarding* forwarding() const { return _forwarding; }
+ 
  // ---------- GC state machinery
  //
  // GC state describes the important parts of collector state, that may be
  // used to make barrier selection decisions in the native and generated code.
  // Multiple bits can be set at once.
< prev index next >