hotspot/src/share/vm/prims/whitebox.cpp
changeset 27434 b4b185d05bb5
parent 27417 576e2b527e1c
child 27450 603dbcf4f547
child 27469 34008cfb8994
child 27684 e0391b2bf625
equal deleted inserted replaced
27433:b276c91c1264 27434:b4b185d05bb5
   384   jmethodID jmid = reflected_method_to_jmid(thread, env, method);
   384   jmethodID jmid = reflected_method_to_jmid(thread, env, method);
   385   int result = 0;
   385   int result = 0;
   386   CHECK_JNI_EXCEPTION_(env, result);
   386   CHECK_JNI_EXCEPTION_(env, result);
   387   MutexLockerEx mu(Compile_lock);
   387   MutexLockerEx mu(Compile_lock);
   388   methodHandle mh(THREAD, Method::checked_resolve_jmethod_id(jmid));
   388   methodHandle mh(THREAD, Method::checked_resolve_jmethod_id(jmid));
   389   nmethod* code;
       
   390   if (is_osr) {
   389   if (is_osr) {
   391     int bci = InvocationEntryBci;
   390     result += mh->mark_osr_nmethods();
   392     while ((code = mh->lookup_osr_nmethod_for(bci, CompLevel_none, false)) != NULL) {
   391   } else if (mh->code() != NULL) {
   393       code->mark_for_deoptimization();
   392     mh->code()->mark_for_deoptimization();
   394       ++result;
       
   395       bci = code->osr_entry_bci() + 1;
       
   396     }
       
   397   } else {
       
   398     code = mh->code();
       
   399   }
       
   400   if (code != NULL) {
       
   401     code->mark_for_deoptimization();
       
   402     ++result;
   393     ++result;
   403   }
   394   }
   404   result += CodeCache::mark_for_deoptimization(mh());
   395   result += CodeCache::mark_for_deoptimization(mh());
   405   if (result > 0) {
   396   if (result > 0) {
   406     VM_Deoptimize op;
   397     VM_Deoptimize op;