src/share/vm/gc_implementation/g1/concurrentMark.hpp

changeset 7830
b7c8142a9e0b
parent 7829
24c446b2460d
child 7833
0f8f1250fed5
equal deleted inserted replaced
7829:24c446b2460d 7830:b7c8142a9e0b
1110 1110
1111 // Test whether objAddr might have already been passed over by the 1111 // Test whether objAddr might have already been passed over by the
1112 // mark bitmap scan, and so needs to be pushed onto the mark stack. 1112 // mark bitmap scan, and so needs to be pushed onto the mark stack.
1113 bool is_below_finger(HeapWord* objAddr, HeapWord* global_finger) const; 1113 bool is_below_finger(HeapWord* objAddr, HeapWord* global_finger) const;
1114 1114
1115 template<bool scan> void process_grey_object(oop obj);
1116
1115 public: 1117 public:
1116 // It resets the task; it should be called right at the beginning of 1118 // It resets the task; it should be called right at the beginning of
1117 // a marking phase. 1119 // a marking phase.
1118 void reset(CMBitMap* _nextMarkBitMap); 1120 void reset(CMBitMap* _nextMarkBitMap);
1119 // it clears all the fields that correspond to a claimed region. 1121 // it clears all the fields that correspond to a claimed region.
1162 // It grays the object by marking it and, if necessary, pushing it 1164 // It grays the object by marking it and, if necessary, pushing it
1163 // on the local queue 1165 // on the local queue
1164 inline void deal_with_reference(oop obj); 1166 inline void deal_with_reference(oop obj);
1165 1167
1166 // It scans an object and visits its children. 1168 // It scans an object and visits its children.
1167 void scan_object(oop obj); 1169 void scan_object(oop obj) { process_grey_object<true>(obj); }
1168 1170
1169 // It pushes an object on the local queue. 1171 // It pushes an object on the local queue.
1170 inline void push(oop obj); 1172 inline void push(oop obj);
1171 1173
1172 // These two move entries to/from the global stack. 1174 // These two move entries to/from the global stack.

mercurial