< prev index next > src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.inline.hpp
Print this page
_vm_roots.oops_do<T>(oops, worker_id);
}
template <typename IsAlive, typename KeepAlive>
void ShenandoahRootUpdater::roots_do(uint worker_id, IsAlive* is_alive, KeepAlive* keep_alive) {
- NMethodToOopClosure update_nmethods(keep_alive, NMethodToOopClosure::FixRelocations);
- ShenandoahNMethodAndDisarmClosure nmethods_and_disarm_Cl(keep_alive);
+ NMethodToOopClosure nmethods_cl(keep_alive, NMethodToOopClosure::FixRelocations);
CLDToOopClosure clds(keep_alive, ClassLoaderData::_claim_strong);
// Process light-weight/limited parallel roots then
_vm_roots.oops_do(keep_alive, worker_id);
_weak_roots.weak_oops_do<IsAlive, KeepAlive>(is_alive, keep_alive, worker_id);
_cld_roots.cld_do(&clds, worker_id);
// Process heavy-weight/fully parallel roots the last
- _code_roots.nmethods_do(&nmethods_and_disarm_Cl, worker_id);
+ _code_roots.nmethods_do(&nmethods_cl, worker_id);
_thread_roots.oops_do(keep_alive, nullptr, worker_id);
}
#endif // SHARE_GC_SHENANDOAH_SHENANDOAHROOTPROCESSOR_INLINE_HPP
< prev index next >