hotspot/src/share/vm/code/codeCache.cpp
changeset 30296 95baefac8485
parent 29358 e0b62d177679
child 30590 14f7f48c1377
child 30603 a8754858a7fc
equal deleted inserted replaced
30226:5f1a3a275862 30296:95baefac8485
  1065   // want dependents on the call site class only not all classes in
  1065   // want dependents on the call site class only not all classes in
  1066   // the ContextStream.
  1066   // the ContextStream.
  1067   int marked = 0;
  1067   int marked = 0;
  1068   {
  1068   {
  1069     MutexLockerEx mu(CodeCache_lock, Mutex::_no_safepoint_check_flag);
  1069     MutexLockerEx mu(CodeCache_lock, Mutex::_no_safepoint_check_flag);
  1070     InstanceKlass* call_site_klass = InstanceKlass::cast(call_site->klass());
  1070     InstanceKlass* ctxk = MethodHandles::get_call_site_context(call_site());
  1071     marked = call_site_klass->mark_dependent_nmethods(changes);
  1071     if (ctxk == NULL) {
       
  1072       return; // No dependencies to invalidate yet.
       
  1073     }
       
  1074     marked = ctxk->mark_dependent_nmethods(changes);
  1072   }
  1075   }
  1073   if (marked > 0) {
  1076   if (marked > 0) {
  1074     // At least one nmethod has been marked for deoptimization
  1077     // At least one nmethod has been marked for deoptimization
  1075     VM_Deoptimize op;
  1078     VM_Deoptimize op;
  1076     VMThread::execute(&op);
  1079     VMThread::execute(&op);