< prev index next >

src/share/vm/gc_implementation/parallelScavenge/psCompactionManager.inline.hpp

Print this page

        

*** 25,34 **** --- 25,36 ---- #ifndef SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PSCOMPACTIONMANAGER_INLINE_HPP #define SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PSCOMPACTIONMANAGER_INLINE_HPP #include "gc_implementation/parallelScavenge/psCompactionManager.hpp" #include "gc_implementation/parallelScavenge/psParallelCompact.hpp" + #include "oops/objArrayKlass.inline.hpp" + #include "oops/oop.pcgc.inline.hpp" void ParCompactionManager::push_objarray(oop obj, size_t index) { ObjArrayTask task(obj, index); assert(task.is_valid(), "bad ObjArrayTask");
*** 44,49 **** --- 46,64 ---- assert(region_ptr->_pushed++ == 0, "should only be pushed once"); #endif region_stack()->push(index); } + inline void ParCompactionManager::follow_contents(oop obj) { + obj->follow_contents(this); + } + + inline void ParCompactionManager::follow_contents(objArrayOop obj, int index) { + ObjArrayKlass* k = (ObjArrayKlass*)obj->klass(); + k->oop_follow_contents(obj, index); + } + + inline void ParCompactionManager::update_contents(oop obj) { + obj->update_contents(this); + } + #endif // SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PSCOMPACTIONMANAGER_INLINE_HPP
< prev index next >