< prev index next >
src/hotspot/share/gc/g1/g1BarrierSet.hpp
Print this page
*** 23,32 ****
--- 23,34 ----
*/
#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;
class CardTable;
class G1CardTable;
*** 35,45 ****
// snapshot-at-the-beginning marking.
class G1BarrierSet: public CardTableBarrierSet {
friend class VMStructs;
private:
! DirtyCardQueueSet& _dcqs;
public:
G1BarrierSet(G1CardTable* table);
~G1BarrierSet() { }
--- 37,48 ----
// snapshot-at-the-beginning marking.
class G1BarrierSet: public CardTableBarrierSet {
friend class VMStructs;
private:
! static SATBMarkQueueSet _satb_mark_queue_set;
! static DirtyCardQueueSet _dirty_card_queue_set;
public:
G1BarrierSet(G1CardTable* table);
~G1BarrierSet() { }
*** 72,81 ****
--- 75,92 ----
void write_ref_field_post_slow(volatile jbyte* byte);
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 <DecoratorSet decorators, typename BarrierSetT = G1BarrierSet>
class AccessBarrier: public ModRefBarrierSet::AccessBarrier<decorators, BarrierSetT> {
typedef ModRefBarrierSet::AccessBarrier<decorators, BarrierSetT> ModRef;
typedef BarrierSet::AccessBarrier<decorators, BarrierSetT> Raw;
< prev index next >