Details
Description
Code root processing dominates concurrent class unloading and ShenandoahNMethodUnlinkClosure::do_nmethod() does the heavy lifting.
But the implementation is not optimal, it calls general purpose ShenandoahNMethod::heal_nmethod() and can not be inlined.
But the implementation is not optimal, it calls general purpose ShenandoahNMethod::heal_nmethod() and can not be inlined.