equal
deleted
inserted
replaced
39 |
39 |
40 class UpdateRSetDeferred : public OopsInHeapRegionClosure { |
40 class UpdateRSetDeferred : public OopsInHeapRegionClosure { |
41 private: |
41 private: |
42 G1CollectedHeap* _g1; |
42 G1CollectedHeap* _g1; |
43 DirtyCardQueue *_dcq; |
43 DirtyCardQueue *_dcq; |
44 CardTableModRefBS* _ct_bs; |
44 G1SATBCardTableModRefBS* _ct_bs; |
45 |
45 |
46 public: |
46 public: |
47 UpdateRSetDeferred(G1CollectedHeap* g1, DirtyCardQueue* dcq) : |
47 UpdateRSetDeferred(G1CollectedHeap* g1, DirtyCardQueue* dcq) : |
48 _g1(g1), _ct_bs((CardTableModRefBS*)_g1->barrier_set()), _dcq(dcq) {} |
48 _g1(g1), _ct_bs(_g1->g1_barrier_set()), _dcq(dcq) {} |
49 |
49 |
50 virtual void do_oop(narrowOop* p) { do_oop_work(p); } |
50 virtual void do_oop(narrowOop* p) { do_oop_work(p); } |
51 virtual void do_oop( oop* p) { do_oop_work(p); } |
51 virtual void do_oop( oop* p) { do_oop_work(p); } |
52 template <class T> void do_oop_work(T* p) { |
52 template <class T> void do_oop_work(T* p) { |
53 assert(_from->is_in_reserved(p), "paranoia"); |
53 assert(_from->is_in_reserved(p), "paranoia"); |