src/hotspot/share/prims/whitebox.cpp
changeset 58226 408c445d04e8
parent 57876 30db6422848b
child 58375 a1eba2e37671
equal deleted inserted replaced
58225:4eebb9aadbe3 58226:408c445d04e8
   818   VMThread::execute(&op);
   818   VMThread::execute(&op);
   819   return op.result();
   819   return op.result();
   820 WB_END
   820 WB_END
   821 
   821 
   822 WB_ENTRY(void, WB_DeoptimizeAll(JNIEnv* env, jobject o))
   822 WB_ENTRY(void, WB_DeoptimizeAll(JNIEnv* env, jobject o))
   823   MutexLocker mu(Compile_lock);
       
   824   CodeCache::mark_all_nmethods_for_deoptimization();
   823   CodeCache::mark_all_nmethods_for_deoptimization();
   825   VM_Deoptimize op;
   824   Deoptimization::deoptimize_all_marked();
   826   VMThread::execute(&op);
       
   827 WB_END
   825 WB_END
   828 
   826 
   829 WB_ENTRY(jint, WB_DeoptimizeMethod(JNIEnv* env, jobject o, jobject method, jboolean is_osr))
   827 WB_ENTRY(jint, WB_DeoptimizeMethod(JNIEnv* env, jobject o, jobject method, jboolean is_osr))
   830   jmethodID jmid = reflected_method_to_jmid(thread, env, method);
   828   jmethodID jmid = reflected_method_to_jmid(thread, env, method);
   831   int result = 0;
   829   int result = 0;
   838     mh->code()->mark_for_deoptimization();
   836     mh->code()->mark_for_deoptimization();
   839     ++result;
   837     ++result;
   840   }
   838   }
   841   result += CodeCache::mark_for_deoptimization(mh());
   839   result += CodeCache::mark_for_deoptimization(mh());
   842   if (result > 0) {
   840   if (result > 0) {
   843     VM_Deoptimize op;
   841     Deoptimization::deoptimize_all_marked();
   844     VMThread::execute(&op);
       
   845   }
   842   }
   846   return result;
   843   return result;
   847 WB_END
   844 WB_END
   848 
   845 
   849 WB_ENTRY(jboolean, WB_IsMethodCompiled(JNIEnv* env, jobject o, jobject method, jboolean is_osr))
   846 WB_ENTRY(jboolean, WB_IsMethodCompiled(JNIEnv* env, jobject o, jobject method, jboolean is_osr))