comparison src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp @ 4099:7913e93dca52

7112997: Remove obsolete code ResetObjectsClosure and VerifyUpdateClosure Summary: Remove obsolete code. Reviewed-by: brutisso, ysr, jcoomes
author jmasa
date Tue, 22 Nov 2011 14:59:34 -0800
parents eda9eb483d29
children ab4422d0ed59
comparison
equal deleted inserted replaced
4098:ea640b5e949a 4099:7913e93dca52
830 virtual void do_oop(narrowOop* p); 830 virtual void do_oop(narrowOop* p);
831 // do not walk from thread stacks to the code cache on this phase 831 // do not walk from thread stacks to the code cache on this phase
832 virtual void do_code_blob(CodeBlob* cb) const { } 832 virtual void do_code_blob(CodeBlob* cb) const { }
833 }; 833 };
834 834
835 // Closure for verifying update of pointers. Does not
836 // have any side effects.
837 class VerifyUpdateClosure: public ParMarkBitMapClosure {
838 const MutableSpace* _space; // Is this ever used?
839
840 public:
841 VerifyUpdateClosure(ParCompactionManager* cm, const MutableSpace* sp) :
842 ParMarkBitMapClosure(PSParallelCompact::mark_bitmap(), cm), _space(sp)
843 { }
844
845 virtual IterationStatus do_addr(HeapWord* addr, size_t words);
846
847 const MutableSpace* space() { return _space; }
848 };
849
850 // Closure for updating objects altered for debug checking
851 class ResetObjectsClosure: public ParMarkBitMapClosure {
852 public:
853 ResetObjectsClosure(ParCompactionManager* cm):
854 ParMarkBitMapClosure(PSParallelCompact::mark_bitmap(), cm)
855 { }
856
857 virtual IterationStatus do_addr(HeapWord* addr, size_t words);
858 };
859
860 friend class KeepAliveClosure; 835 friend class KeepAliveClosure;
861 friend class FollowStackClosure; 836 friend class FollowStackClosure;
862 friend class AdjustPointerClosure; 837 friend class AdjustPointerClosure;
863 friend class FollowRootClosure; 838 friend class FollowRootClosure;
864 friend class instanceKlassKlass; 839 friend class instanceKlassKlass;
1180 fill_region(cm, region); 1155 fill_region(cm, region);
1181 } 1156 }
1182 1157
1183 // Update the deferred objects in the space. 1158 // Update the deferred objects in the space.
1184 static void update_deferred_objects(ParCompactionManager* cm, SpaceId id); 1159 static void update_deferred_objects(ParCompactionManager* cm, SpaceId id);
1185
1186 // Mark pointer and follow contents.
1187 template <class T>
1188 static inline void mark_and_follow(ParCompactionManager* cm, T* p);
1189 1160
1190 static ParMarkBitMap* mark_bitmap() { return &_mark_bitmap; } 1161 static ParMarkBitMap* mark_bitmap() { return &_mark_bitmap; }
1191 static ParallelCompactData& summary_data() { return _summary_data; } 1162 static ParallelCompactData& summary_data() { return _summary_data; }
1192 1163
1193 static inline void adjust_pointer(oop* p) { adjust_pointer(p, false); } 1164 static inline void adjust_pointer(oop* p) { adjust_pointer(p, false); }
1281 } 1252 }
1282 cm->follow_marking_stacks(); 1253 cm->follow_marking_stacks();
1283 } 1254 }
1284 1255
1285 template <class T> 1256 template <class T>
1286 inline void PSParallelCompact::mark_and_follow(ParCompactionManager* cm,
1287 T* p) {
1288 T heap_oop = oopDesc::load_heap_oop(p);
1289 if (!oopDesc::is_null(heap_oop)) {
1290 oop obj = oopDesc::decode_heap_oop_not_null(heap_oop);
1291 if (mark_bitmap()->is_unmarked(obj)) {
1292 if (mark_obj(obj)) {
1293 obj->follow_contents(cm);
1294 }
1295 }
1296 }
1297 }
1298
1299 template <class T>
1300 inline void PSParallelCompact::mark_and_push(ParCompactionManager* cm, T* p) { 1257 inline void PSParallelCompact::mark_and_push(ParCompactionManager* cm, T* p) {
1301 T heap_oop = oopDesc::load_heap_oop(p); 1258 T heap_oop = oopDesc::load_heap_oop(p);
1302 if (!oopDesc::is_null(heap_oop)) { 1259 if (!oopDesc::is_null(heap_oop)) {
1303 oop obj = oopDesc::decode_heap_oop_not_null(heap_oop); 1260 oop obj = oopDesc::decode_heap_oop_not_null(heap_oop);
1304 if (mark_bitmap()->is_unmarked(obj) && mark_obj(obj)) { 1261 if (mark_bitmap()->is_unmarked(obj) && mark_obj(obj)) {