< prev index next >

src/hotspot/share/runtime/deoptimization.cpp

Print this page
rev 54838 : [mq]: 8221734-v2
rev 54839 : [mq]: 8221734-v3

@@ -1292,11 +1292,11 @@
     cvf = compiledVFrame::cast(cvf->sender());
   }
   collect_monitors(cvf, objects_to_revoke);
 }
 
-void Deoptimization::inflate_monitors(JavaThread* thread, frame fr, RegisterMap* map) {
+void Deoptimization::revoke_safepoint(JavaThread* thread, frame fr, RegisterMap* map) {
   if (!UseBiasedLocking) {
     return;
   }
   GrowableArray<Handle>* objects_to_revoke = new GrowableArray<Handle>();
   get_monitors_from_stack(objects_to_revoke, thread, fr, map);

@@ -1306,11 +1306,11 @@
   } else {
     BiasedLocking::revoke(objects_to_revoke);
   }
 }
 
-void Deoptimization::inflate_monitors_handshake(JavaThread* thread, frame fr, RegisterMap* map) {
+void Deoptimization::revoke_handshake(JavaThread* thread, frame fr, RegisterMap* map) {
   if (!UseBiasedLocking) {
     return;
   }
   GrowableArray<Handle>* objects_to_revoke = new GrowableArray<Handle>();
   get_monitors_from_stack(objects_to_revoke, thread, fr, map);

@@ -1318,13 +1318,12 @@
   int len = objects_to_revoke->length();
   for (int i = 0; i < len; i++) {
     oop obj = (objects_to_revoke->at(i))();
     markOop mark = obj->mark();
     assert(!mark->has_bias_pattern() || mark->biased_locker() == thread, "Can't revoke");
-    BiasedLocking::revoke_and_rebias_in_handshake(objects_to_revoke->at(i), thread);
+    BiasedLocking::revoke_own_locks_in_handshake(objects_to_revoke->at(i), thread);
     assert(!obj->mark()->has_bias_pattern(), "biases should be revoked by now");
-    ObjectSynchronizer::inflate(thread, obj, ObjectSynchronizer::inflate_cause_vm_internal);
   }
 }
 
 
 void Deoptimization::deoptimize_single_frame(JavaThread* thread, frame fr, Deoptimization::DeoptReason reason) {

@@ -1372,13 +1371,13 @@
   }
   ResourceMark rm;
   DeoptimizationMarker dm;
   if (UseBiasedLocking) {
     if (in_handshake) {
-      inflate_monitors_handshake(thread, fr, map);
+      revoke_handshake(thread, fr, map);
     } else {
-      inflate_monitors(thread, fr, map);
+      revoke_safepoint(thread, fr, map);
     }
   }
   deoptimize_single_frame(thread, fr, reason);
 
 }

@@ -1540,11 +1539,11 @@
 
   {
     ResourceMark rm;
 
     // Revoke biases of any monitors in the frame to ensure we can migrate them
-    fix_monitors(thread, fr, &reg_map);
+    revoke_biases_of_monitors(thread, fr, &reg_map);
 
     DeoptReason reason = trap_request_reason(trap_request);
     DeoptAction action = trap_request_action(trap_request);
 #if INCLUDE_JVMCI
     int debug_id = trap_request_debug_id(trap_request);
< prev index next >