< prev index next >

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

Print this page
@@ -56,19 +56,20 @@
  //
  
  class ShenandoahMarkRefsSuperClosure : public ShenandoahSuperClosure {
  private:
    ShenandoahObjToScanQueue* _queue;
+   ShenandoahObjToScanQueue* _old_queue;
    ShenandoahMarkingContext* const _mark_context;
    bool _weak;
  
  protected:
    template <class T, ShenandoahGenerationType GENERATION>
    void work(T *p);
  
  public:
-   inline ShenandoahMarkRefsSuperClosure(ShenandoahObjToScanQueue* q, ShenandoahReferenceProcessor* rp);
+   inline ShenandoahMarkRefsSuperClosure(ShenandoahObjToScanQueue* q, ShenandoahReferenceProcessor* rp, ShenandoahObjToScanQueue* old_q);
  
    bool is_weak() const {
      return _weak;
    }
  

@@ -87,12 +88,12 @@
  private:
    template <class T>
    inline void do_oop_work(T* p)     { work<T, GENERATION>(p); }
  
  public:
-   ShenandoahMarkRefsClosure(ShenandoahObjToScanQueue* q, ShenandoahReferenceProcessor* rp) :
-           ShenandoahMarkRefsSuperClosure(q, rp) {};
+   ShenandoahMarkRefsClosure(ShenandoahObjToScanQueue* q, ShenandoahReferenceProcessor* rp, ShenandoahObjToScanQueue* old_q) :
+           ShenandoahMarkRefsSuperClosure(q, rp, old_q) {};
  
    virtual void do_oop(narrowOop* p) { do_oop_work(p); }
    virtual void do_oop(oop* p)       { do_oop_work(p); }
  };
  

@@ -189,11 +190,11 @@
  private:
    template <class T>
    inline void work(T* p);
  
  public:
-   ShenandoahMarkUpdateRefsClosure(ShenandoahObjToScanQueue* q, ShenandoahReferenceProcessor* rp);
+   ShenandoahMarkUpdateRefsClosure(ShenandoahObjToScanQueue* q, ShenandoahReferenceProcessor* rp, ShenandoahObjToScanQueue* old_q);
  
    virtual void do_oop(narrowOop* p) { work(p); }
    virtual void do_oop(oop* p)       { work(p); }
  };
  
< prev index next >