--- old/src/hotspot/share/gc/g1/g1BarrierSet.hpp 2018-04-10 12:59:16.606993765 +0200 +++ new/src/hotspot/share/gc/g1/g1BarrierSet.hpp 2018-04-10 12:59:16.433986269 +0200 @@ -25,6 +25,8 @@ #ifndef SHARE_VM_GC_G1_G1BARRIERSET_HPP #define SHARE_VM_GC_G1_G1BARRIERSET_HPP +#include "gc/g1/dirtyCardQueue.hpp" +#include "gc/g1/satbMarkQueue.hpp" #include "gc/shared/cardTableBarrierSet.hpp" class DirtyCardQueueSet; @@ -37,7 +39,8 @@ class G1BarrierSet: public CardTableBarrierSet { friend class VMStructs; private: - DirtyCardQueueSet& _dcqs; + static SATBMarkQueueSet _satb_mark_queue_set; + static DirtyCardQueueSet _dirty_card_queue_set; public: G1BarrierSet(G1CardTable* table); @@ -74,6 +77,14 @@ virtual void on_thread_attach(JavaThread* thread); virtual void on_thread_detach(JavaThread* thread); + static SATBMarkQueueSet& satb_mark_queue_set() { + return _satb_mark_queue_set; + } + + static DirtyCardQueueSet& dirty_card_queue_set() { + return _dirty_card_queue_set; + } + // Callbacks for runtime accesses. template class AccessBarrier: public ModRefBarrierSet::AccessBarrier {