1.1 --- a/src/share/vm/memory/space.hpp Wed Mar 26 10:54:52 2014 +0100 1.2 +++ b/src/share/vm/memory/space.hpp Thu Mar 06 09:08:18 2014 +0100 1.3 @@ -65,31 +65,6 @@ 1.4 class CardTableRS; 1.5 class DirtyCardToOopClosure; 1.6 1.7 -// An oop closure that is circumscribed by a filtering memory region. 1.8 -class SpaceMemRegionOopsIterClosure: public ExtendedOopClosure { 1.9 - private: 1.10 - ExtendedOopClosure* _cl; 1.11 - MemRegion _mr; 1.12 - protected: 1.13 - template <class T> void do_oop_work(T* p) { 1.14 - if (_mr.contains(p)) { 1.15 - _cl->do_oop(p); 1.16 - } 1.17 - } 1.18 - public: 1.19 - SpaceMemRegionOopsIterClosure(ExtendedOopClosure* cl, MemRegion mr): 1.20 - _cl(cl), _mr(mr) {} 1.21 - virtual void do_oop(oop* p); 1.22 - virtual void do_oop(narrowOop* p); 1.23 - virtual bool do_metadata() { 1.24 - // _cl is of type ExtendedOopClosure instead of OopClosure, so that we can check this. 1.25 - assert(!_cl->do_metadata(), "I've checked all call paths, this shouldn't happen."); 1.26 - return false; 1.27 - } 1.28 - virtual void do_klass(Klass* k) { ShouldNotReachHere(); } 1.29 - virtual void do_class_loader_data(ClassLoaderData* cld) { ShouldNotReachHere(); } 1.30 -}; 1.31 - 1.32 // A Space describes a heap area. Class Space is an abstract 1.33 // base class. 1.34 // 1.35 @@ -205,11 +180,6 @@ 1.36 // applications of the closure are not included in the iteration. 1.37 virtual void oop_iterate(ExtendedOopClosure* cl); 1.38 1.39 - // Same as above, restricted to the intersection of a memory region and 1.40 - // the space. Fields in objects allocated by applications of the closure 1.41 - // are not included in the iteration. 1.42 - virtual void oop_iterate(MemRegion mr, ExtendedOopClosure* cl) = 0; 1.43 - 1.44 // Iterate over all objects in the space, calling "cl.do_object" on 1.45 // each. Objects allocated by applications of the closure are not 1.46 // included in the iteration. 1.47 @@ -584,7 +554,6 @@ 1.48 1.49 // Iteration 1.50 void oop_iterate(ExtendedOopClosure* cl); 1.51 - void oop_iterate(MemRegion mr, ExtendedOopClosure* cl); 1.52 void object_iterate(ObjectClosure* blk); 1.53 // For contiguous spaces this method will iterate safely over objects 1.54 // in the space (i.e., between bottom and top) when at a safepoint.