< prev index next >

src/hotspot/share/runtime/deoptimization.cpp

Print this page
rev 47287 : Port 09.17.Thread_SMR_logging_update from JDK9 to JDK10
rev 47289 : eosterlund, stefank CR - refactor code into threadSMR.cpp and threadSMR.hpp
rev 47292 : stefank, coleenp CR - refactor most JavaThreadIterator usage to use JavaThreadIteratorWithHandle.

*** 1302,1315 **** return; } assert(SafepointSynchronize::is_at_safepoint(), "must only be called from safepoint"); GrowableArray<Handle>* objects_to_revoke = new GrowableArray<Handle>(); ! { ! ThreadsListHandle tlh; ! JavaThreadIterator jti(tlh.list()); ! for (JavaThread* jt = jti.first(); jt != NULL; jt = jti.next()) { if (jt->has_last_Java_frame()) { StackFrameStream sfs(jt, true); while (!sfs.is_done()) { frame* cur = sfs.current(); if (cb->contains(cur->pc())) { --- 1302,1312 ---- return; } assert(SafepointSynchronize::is_at_safepoint(), "must only be called from safepoint"); GrowableArray<Handle>* objects_to_revoke = new GrowableArray<Handle>(); ! for (JavaThreadIteratorWithHandle jtiwh; JavaThread *jt = jtiwh.next(); ) { if (jt->has_last_Java_frame()) { StackFrameStream sfs(jt, true); while (!sfs.is_done()) { frame* cur = sfs.current(); if (cb->contains(cur->pc())) {
*** 1323,1333 **** collect_monitors(cvf, objects_to_revoke); } sfs.next(); } } - } } BiasedLocking::revoke_at_safepoint(objects_to_revoke); } --- 1320,1329 ----
< prev index next >