hotspot/src/share/vm/classfile/javaClasses.cpp
changeset 13293 c2b4f191c489
parent 13091 e2c2f5de7e6a
child 13391 30245956af37
equal deleted inserted replaced
13292:587bb173cf43 13293:c2b4f191c489
  2735 void java_lang_invoke_CallSite::compute_offsets() {
  2735 void java_lang_invoke_CallSite::compute_offsets() {
  2736   if (!EnableInvokeDynamic)  return;
  2736   if (!EnableInvokeDynamic)  return;
  2737   klassOop k = SystemDictionary::CallSite_klass();
  2737   klassOop k = SystemDictionary::CallSite_klass();
  2738   if (k != NULL) {
  2738   if (k != NULL) {
  2739     compute_offset(_target_offset, k, vmSymbols::target_name(), vmSymbols::java_lang_invoke_MethodHandle_signature());
  2739     compute_offset(_target_offset, k, vmSymbols::target_name(), vmSymbols::java_lang_invoke_MethodHandle_signature());
  2740   }
       
  2741 
       
  2742   // Disallow compilation of CallSite.setTargetNormal and CallSite.setTargetVolatile
       
  2743   // (For C2:  keep this until we have throttling logic for uncommon traps.)
       
  2744   if (k != NULL) {
       
  2745     instanceKlass* ik = instanceKlass::cast(k);
       
  2746     methodOop m_normal   = ik->lookup_method(vmSymbols::setTargetNormal_name(),   vmSymbols::setTarget_signature());
       
  2747     methodOop m_volatile = ik->lookup_method(vmSymbols::setTargetVolatile_name(), vmSymbols::setTarget_signature());
       
  2748     guarantee(m_normal != NULL && m_volatile != NULL, "must exist");
       
  2749     m_normal->set_not_compilable_quietly();
       
  2750     m_volatile->set_not_compilable_quietly();
       
  2751   }
  2740   }
  2752 }
  2741 }
  2753 
  2742 
  2754 
  2743 
  2755 // Support for java_security_AccessControlContext
  2744 // Support for java_security_AccessControlContext