equal
deleted
inserted
replaced
31 class G1CollectedHeap; |
31 class G1CollectedHeap; |
32 class CMTask; |
32 class CMTask; |
33 typedef GenericTaskQueue<oop> CMTaskQueue; |
33 typedef GenericTaskQueue<oop> CMTaskQueue; |
34 typedef GenericTaskQueueSet<CMTaskQueue> CMTaskQueueSet; |
34 typedef GenericTaskQueueSet<CMTaskQueue> CMTaskQueueSet; |
35 |
35 |
|
36 // Closure used by CM during concurrent reference discovery |
|
37 // and reference processing (during remarking) to determine |
|
38 // if a particular object is alive. It is primarily used |
|
39 // to determine if referents of discovered reference objects |
|
40 // are alive. An instance is also embedded into the |
|
41 // reference processor as the _is_alive_non_header field |
|
42 class G1CMIsAliveClosure: public BoolObjectClosure { |
|
43 G1CollectedHeap* _g1; |
|
44 public: |
|
45 G1CMIsAliveClosure(G1CollectedHeap* g1) : |
|
46 _g1(g1) |
|
47 {} |
|
48 |
|
49 void do_object(oop obj) { |
|
50 ShouldNotCallThis(); |
|
51 } |
|
52 bool do_object_b(oop obj); |
|
53 }; |
|
54 |
36 // A generic CM bit map. This is essentially a wrapper around the BitMap |
55 // A generic CM bit map. This is essentially a wrapper around the BitMap |
37 // class, with one bit per (1<<_shifter) HeapWords. |
56 // class, with one bit per (1<<_shifter) HeapWords. |
38 |
57 |
39 class CMBitMapRO VALUE_OBJ_CLASS_SPEC { |
58 class CMBitMapRO VALUE_OBJ_CLASS_SPEC { |
40 protected: |
59 protected: |