hotspot/src/share/vm/classfile/systemDictionary.cpp
changeset 40002 156b2dbb0b54
parent 39986 416a95f29c6a
child 40013 943cf01a6b82
equal deleted inserted replaced
40001:f37246e66d2b 40002:156b2dbb0b54
   653     event.commit();
   653     event.commit();
   654   }
   654   }
   655 #endif // INCLUDE_TRACE
   655 #endif // INCLUDE_TRACE
   656 }
   656 }
   657 
   657 
       
   658 // utility function for class define event
       
   659 static void class_define_event(instanceKlassHandle k) {
       
   660 #if INCLUDE_TRACE
       
   661   EventClassDefine event(UNTIMED);
       
   662   if (event.should_commit()) {
       
   663     event.set_definedClass(k());
       
   664     oop defining_class_loader = k->class_loader();
       
   665     event.set_definingClassLoader(defining_class_loader != NULL ?
       
   666       defining_class_loader->klass() : (Klass*)NULL);
       
   667     event.commit();
       
   668   }
       
   669 #endif // INCLUDE_TRACE
       
   670 }
       
   671 
       
   672 
   658 Klass* SystemDictionary::resolve_instance_class_or_null(Symbol* name,
   673 Klass* SystemDictionary::resolve_instance_class_or_null(Symbol* name,
   659                                                         Handle class_loader,
   674                                                         Handle class_loader,
   660                                                         Handle protection_domain,
   675                                                         Handle protection_domain,
   661                                                         TRAPS) {
   676                                                         TRAPS) {
   662   assert(name != NULL && !FieldType::is_array(name) &&
   677   assert(name != NULL && !FieldType::is_array(name) &&
  1673   if (JvmtiExport::should_post_class_load()) {
  1688   if (JvmtiExport::should_post_class_load()) {
  1674       assert(THREAD->is_Java_thread(), "thread->is_Java_thread()");
  1689       assert(THREAD->is_Java_thread(), "thread->is_Java_thread()");
  1675       JvmtiExport::post_class_load((JavaThread *) THREAD, k());
  1690       JvmtiExport::post_class_load((JavaThread *) THREAD, k());
  1676 
  1691 
  1677   }
  1692   }
  1678 
       
  1679   TRACE_KLASS_DEFINITION(k, THREAD);
  1693   TRACE_KLASS_DEFINITION(k, THREAD);
  1680 
  1694   class_define_event(k);
  1681 }
  1695 }
  1682 
  1696 
  1683 // Support parallel classloading
  1697 // Support parallel classloading
  1684 // All parallel class loaders, including bootstrap classloader
  1698 // All parallel class loaders, including bootstrap classloader
  1685 // lock a placeholder entry for this class/class_loader pair
  1699 // lock a placeholder entry for this class/class_loader pair