< prev index next >

src/hotspot/share/gc/shenandoah/shenandoahCodeRoots.cpp

Print this page
rev 59304 : 8245124: Shenandoah: optimize code root evacuation/update during concurrent class unloading

*** 24,33 **** --- 24,34 ---- #include "precompiled.hpp" #include "code/codeCache.hpp" #include "code/icBuffer.hpp" #include "code/nmethod.hpp" + #include "gc/shenandoah/shenandoahClosures.inline.hpp" #include "gc/shenandoah/shenandoahCodeRoots.hpp" #include "gc/shenandoah/shenandoahEvacOOMHandler.hpp" #include "gc/shenandoah/shenandoahHeap.inline.hpp" #include "gc/shenandoah/shenandoahNMethod.inline.hpp" #include "gc/shenandoah/shenandoahUtils.hpp"
*** 270,280 **** ShenandoahReentrantLocker locker(nm_data->lock()); // Heal oops and disarm if (_bs->is_armed(nm)) { ! ShenandoahNMethod::heal_nmethod(nm); _bs->disarm(nm); } // Clear compiled ICs and exception caches if (!nm->unload_nmethod_caches(_unloading_occurred)) { --- 271,282 ---- ShenandoahReentrantLocker locker(nm_data->lock()); // Heal oops and disarm if (_bs->is_armed(nm)) { ! ShenandoahEvacOOMScope oom_evac_scope; ! ShenandoahNMethod::heal_nmethod_metadata(nm_data); _bs->disarm(nm); } // Clear compiled ICs and exception caches if (!nm->unload_nmethod_caches(_unloading_occurred)) {
< prev index next >