< prev index next >

src/share/vm/gc/shenandoah/shenandoahOopClosures.inline.hpp

Print this page
rev 13131 : Improve inlining of the root scanning closure in partial GC.

@@ -24,10 +24,11 @@
 #ifndef SHARE_VM_GC_SHENANDOAH_SHENANDOAHOOPCLOSURES_INLINE_HPP
 #define SHARE_VM_GC_SHENANDOAH_SHENANDOAHOOPCLOSURES_INLINE_HPP
 
 #include "gc/shenandoah/shenandoahHeap.inline.hpp"
 #include "gc/shenandoah/shenandoahConcurrentMark.inline.hpp"
+#include "gc/shenandoah/shenandoahPartialGC.inline.hpp"
 
 template<class T, UpdateRefsMode UPDATE_REFS, bool UPDATE_MATRIX>
 inline void ShenandoahMarkRefsSuperClosure::work(T *p) {
   ShenandoahConcurrentMark::mark_through_ref<T, UPDATE_REFS, UPDATE_MATRIX>(p, _heap, _queue, _conn_matrix);
 }

@@ -38,6 +39,11 @@
   if (! oopDesc::is_null(obj)) {
     _heap->connection_matrix()->set_connected(p, obj);
   }
 }
 
+template <class T>
+inline void PartialEvacuateUpdateHeapClosure::do_oop_nv(T* p) {
+  _partial_gc->process_oop<T, true>(p, _thread, _queue);
+}
+
 #endif // SHARE_VM_GC_SHENANDOAH_SHENANDOAHOOPCLOSURES_INLINE_HPP
< prev index next >