--- old/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp 2015-04-21 13:44:52.083339330 +0200 +++ new/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp 2015-04-21 13:44:51.943334627 +0200 @@ -933,25 +933,6 @@ virtual bool do_object_b(oop p); }; - class KeepAliveClosure: public OopClosure { - private: - ParCompactionManager* _compaction_manager; - protected: - template inline void do_oop_work(T* p); - public: - KeepAliveClosure(ParCompactionManager* cm) : _compaction_manager(cm) { } - virtual void do_oop(oop* p); - virtual void do_oop(narrowOop* p); - }; - - class FollowStackClosure: public VoidClosure { - private: - ParCompactionManager* _compaction_manager; - public: - FollowStackClosure(ParCompactionManager* cm) : _compaction_manager(cm) { } - virtual void do_void(); - }; - class AdjustPointerClosure: public ExtendedOopClosure { public: template void do_oop_nv(T* p); @@ -967,7 +948,6 @@ void do_klass(Klass* klass); }; - friend class KeepAliveClosure; friend class FollowStackClosure; friend class AdjustPointerClosure; friend class AdjustKlassClosure; @@ -1142,30 +1122,6 @@ static void reset_millis_since_last_gc(); public: - class MarkAndPushClosure: public ExtendedOopClosure { - private: - ParCompactionManager* _compaction_manager; - public: - MarkAndPushClosure(ParCompactionManager* cm) : _compaction_manager(cm) { } - - template void do_oop_nv(T* p); - virtual void do_oop(oop* p); - virtual void do_oop(narrowOop* p); - - // This closure provides its own oop verification code. - debug_only(virtual bool should_verify_oops() { return false; }) - }; - - // The one and only place to start following the classes. - // Should only be applied to the ClassLoaderData klasses list. - class FollowKlassClosure : public KlassClosure { - private: - MarkAndPushClosure* _mark_and_push_closure; - public: - FollowKlassClosure(MarkAndPushClosure* mark_and_push_closure) : - _mark_and_push_closure(mark_and_push_closure) { } - void do_klass(Klass* klass); - }; PSParallelCompact(); @@ -1200,12 +1156,8 @@ // Marking support static inline bool mark_obj(oop obj); static inline bool is_marked(oop obj); - // Check mark and maybe push on marking stack - template static inline void mark_and_push(ParCompactionManager* cm, - T* p); - template static inline void adjust_pointer(T* p); - static inline void follow_klass(ParCompactionManager* cm, Klass* klass); + template static inline void adjust_pointer(T* p); static void follow_class_loader(ParCompactionManager* cm, ClassLoaderData* klass); @@ -1337,11 +1289,6 @@ return mark_bitmap()->is_marked(obj); } -template -inline void PSParallelCompact::KeepAliveClosure::do_oop_work(T* p) { - mark_and_push(_compaction_manager, p); -} - inline bool PSParallelCompact::print_phases() { return _print_phases; }