diff -r ae2e53e379cb -r 80b27dc96ca3 src/hotspot/share/runtime/thread.cpp --- a/src/hotspot/share/runtime/thread.cpp Mon Jun 24 16:51:23 2019 -0400 +++ b/src/hotspot/share/runtime/thread.cpp Mon Jun 24 22:38:17 2019 -0400 @@ -2903,17 +2903,18 @@ #endif // PRODUCT -void JavaThread::deoptimize_marked_methods(bool in_handshake) { +void JavaThread::deoptimized_wrt_marked_nmethods() { if (!has_last_Java_frame()) return; // BiasedLocking needs an updated RegisterMap for the revoke monitors pass StackFrameStream fst(this, UseBiasedLocking); for (; !fst.is_done(); fst.next()) { if (fst.current()->should_be_deoptimized()) { - Deoptimization::deoptimize(this, *fst.current(), fst.register_map(), in_handshake); + Deoptimization::deoptimize(this, *fst.current(), fst.register_map()); } } } + // If the caller is a NamedThread, then remember, in the current scope, // the given JavaThread in its _processed_thread field. class RememberProcessedThread: public StackObj { @@ -4652,6 +4653,13 @@ threads_do(&handles_closure); } +void Threads::deoptimized_wrt_marked_nmethods() { + ALL_JAVA_THREADS(p) { + p->deoptimized_wrt_marked_nmethods(); + } +} + + // Get count Java threads that are waiting to enter the specified monitor. GrowableArray* Threads::get_pending_threads(ThreadsList * t_list, int count,