--- old/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.inline.hpp 2015-04-21 13:44:52.343348064 +0200 +++ new/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.inline.hpp 2015-04-21 13:44:52.203343362 +0200 @@ -32,32 +32,6 @@ #include "oops/klass.hpp" #include "oops/oop.inline.hpp" -template -inline void PSParallelCompact::mark_and_push(ParCompactionManager* cm, T* p) { - T heap_oop = oopDesc::load_heap_oop(p); - if (!oopDesc::is_null(heap_oop)) { - oop obj = oopDesc::decode_heap_oop_not_null(heap_oop); - assert(ParallelScavengeHeap::heap()->is_in(obj), "should be in heap"); - - if (mark_bitmap()->is_unmarked(obj) && mark_obj(obj)) { - cm->push(obj); - } - } -} - -template -inline void PSParallelCompact::MarkAndPushClosure::do_oop_nv(T* p) { - mark_and_push(_compaction_manager, p); -} - -inline void PSParallelCompact::MarkAndPushClosure::do_oop(oop* p) { do_oop_nv(p); } -inline void PSParallelCompact::MarkAndPushClosure::do_oop(narrowOop* p) { do_oop_nv(p); } - -inline void PSParallelCompact::follow_klass(ParCompactionManager* cm, Klass* klass) { - oop holder = klass->klass_holder(); - mark_and_push(cm, &holder); -} - template inline void PSParallelCompact::adjust_pointer(T* p) { T heap_oop = oopDesc::load_heap_oop(p);