< prev index next >

src/hotspot/share/classfile/classLoaderData.inline.hpp

Print this page




  23  */
  24 
  25 #include "classfile/classLoaderData.hpp"
  26 #include "classfile/javaClasses.hpp"
  27 #include "oops/oop.inline.hpp"
  28 
  29 inline ClassLoaderData* ClassLoaderData::class_loader_data_or_null(oop loader) {
  30   if (loader == NULL) {
  31     return ClassLoaderData::the_null_class_loader_data();
  32   }
  33   return java_lang_ClassLoader::loader_data(loader);
  34 }
  35 
  36 inline ClassLoaderData* ClassLoaderData::class_loader_data(oop loader) {
  37   ClassLoaderData* loader_data = class_loader_data_or_null(loader);
  38   assert(loader_data != NULL, "Must be");
  39   return loader_data;
  40 }
  41 
  42 
  43 inline ClassLoaderData *ClassLoaderDataGraph::find_or_create(Handle loader, TRAPS) {
  44   guarantee(loader() != NULL && oopDesc::is_oop(loader()), "Loader must be oop");
  45   // Gets the class loader data out of the java/lang/ClassLoader object, if non-null
  46   // it's already in the loader_data, so no need to add
  47   ClassLoaderData* loader_data= java_lang_ClassLoader::loader_data(loader());
  48   if (loader_data) {
  49      return loader_data;
  50   }
  51   return ClassLoaderDataGraph::add(loader, false, THREAD);
  52 }
  53 
  54 size_t ClassLoaderDataGraph::num_instance_classes() {
  55   return _num_instance_classes;
  56 }
  57 
  58 size_t ClassLoaderDataGraph::num_array_classes() {
  59   return _num_array_classes;
  60 }
  61 
  62 void ClassLoaderDataGraph::inc_instance_classes(size_t count) {
  63   Atomic::add(count, &_num_instance_classes);
  64 }
  65 
  66 void ClassLoaderDataGraph::dec_instance_classes(size_t count) {
  67   assert(count <= _num_instance_classes, "Sanity");
  68   Atomic::sub(count, &_num_instance_classes);
  69 }
  70 
  71 void ClassLoaderDataGraph::inc_array_classes(size_t count) {


  23  */
  24 
  25 #include "classfile/classLoaderData.hpp"
  26 #include "classfile/javaClasses.hpp"
  27 #include "oops/oop.inline.hpp"
  28 
  29 inline ClassLoaderData* ClassLoaderData::class_loader_data_or_null(oop loader) {
  30   if (loader == NULL) {
  31     return ClassLoaderData::the_null_class_loader_data();
  32   }
  33   return java_lang_ClassLoader::loader_data(loader);
  34 }
  35 
  36 inline ClassLoaderData* ClassLoaderData::class_loader_data(oop loader) {
  37   ClassLoaderData* loader_data = class_loader_data_or_null(loader);
  38   assert(loader_data != NULL, "Must be");
  39   return loader_data;
  40 }
  41 
  42 
  43 inline ClassLoaderData *ClassLoaderDataGraph::find_or_create(Handle loader) {
  44   guarantee(loader() != NULL && oopDesc::is_oop(loader()), "Loader must be oop");
  45   // Gets the class loader data out of the java/lang/ClassLoader object, if non-null
  46   // it's already in the loader_data, so no need to add
  47   ClassLoaderData* loader_data= java_lang_ClassLoader::loader_data(loader());
  48   if (loader_data) {
  49      return loader_data;
  50   }
  51   return ClassLoaderDataGraph::add(loader, false);
  52 }
  53 
  54 size_t ClassLoaderDataGraph::num_instance_classes() {
  55   return _num_instance_classes;
  56 }
  57 
  58 size_t ClassLoaderDataGraph::num_array_classes() {
  59   return _num_array_classes;
  60 }
  61 
  62 void ClassLoaderDataGraph::inc_instance_classes(size_t count) {
  63   Atomic::add(count, &_num_instance_classes);
  64 }
  65 
  66 void ClassLoaderDataGraph::dec_instance_classes(size_t count) {
  67   assert(count <= _num_instance_classes, "Sanity");
  68   Atomic::sub(count, &_num_instance_classes);
  69 }
  70 
  71 void ClassLoaderDataGraph::inc_array_classes(size_t count) {
< prev index next >