< prev index next >

src/hotspot/share/classfile/systemDictionaryShared.cpp

Print this page

1042 
1043 void SystemDictionaryShared::remove_dumptime_info(InstanceKlass* k) {
1044   MutexLocker ml(DumpTimeTable_lock, Mutex::_no_safepoint_check_flag);
1045   DumpTimeSharedClassInfo* p = _dumptime_table->get(k);
1046   if (p == NULL) {
1047     return;
1048   }
1049   if (p->_verifier_constraints != NULL) {
1050     for (int i = 0; i < p->_verifier_constraints->length(); i++) {
1051       DumpTimeSharedClassInfo::DTConstraint constraint = p->_verifier_constraints->at(i);
1052       if (constraint._name != NULL ) {
1053         constraint._name->decrement_refcount();
1054       }
1055       if (constraint._from_name != NULL ) {
1056         constraint._from_name->decrement_refcount();
1057       }
1058     }
1059     FREE_C_HEAP_ARRAY(DTConstraint, p->_verifier_constraints);
1060     p->_verifier_constraints = NULL;
1061   }
1062   if (p->_verifier_constraint_flags != NULL) {
1063     FREE_C_HEAP_ARRAY(char, p->_verifier_constraint_flags);
1064     p->_verifier_constraint_flags = NULL;
1065   }
1066   _dumptime_table->remove(k);
1067 }
1068 
1069 bool SystemDictionaryShared::is_jfr_event_class(InstanceKlass *k) {
1070   while (k) {
1071     if (k->name()->equals("jdk/internal/event/Event")) {
1072       return true;
1073     }
1074     k = k->java_super();
1075   }
1076   return false;
1077 }
1078 
1079 void SystemDictionaryShared::warn_excluded(InstanceKlass* k, const char* reason) {
1080   ResourceMark rm;
1081   log_warning(cds)("Skipping %s: %s", k->name()->as_C_string(), reason);
1082 }
1083 
1084 bool SystemDictionaryShared::should_be_excluded(InstanceKlass* k) {
1085   if (k->class_loader_data()->is_unsafe_anonymous()) {

1042 
1043 void SystemDictionaryShared::remove_dumptime_info(InstanceKlass* k) {
1044   MutexLocker ml(DumpTimeTable_lock, Mutex::_no_safepoint_check_flag);
1045   DumpTimeSharedClassInfo* p = _dumptime_table->get(k);
1046   if (p == NULL) {
1047     return;
1048   }
1049   if (p->_verifier_constraints != NULL) {
1050     for (int i = 0; i < p->_verifier_constraints->length(); i++) {
1051       DumpTimeSharedClassInfo::DTConstraint constraint = p->_verifier_constraints->at(i);
1052       if (constraint._name != NULL ) {
1053         constraint._name->decrement_refcount();
1054       }
1055       if (constraint._from_name != NULL ) {
1056         constraint._from_name->decrement_refcount();
1057       }
1058     }
1059     FREE_C_HEAP_ARRAY(DTConstraint, p->_verifier_constraints);
1060     p->_verifier_constraints = NULL;
1061   }
1062   FREE_C_HEAP_ARRAY(char, p->_verifier_constraint_flags);
1063   p->_verifier_constraint_flags = NULL;


1064   _dumptime_table->remove(k);
1065 }
1066 
1067 bool SystemDictionaryShared::is_jfr_event_class(InstanceKlass *k) {
1068   while (k) {
1069     if (k->name()->equals("jdk/internal/event/Event")) {
1070       return true;
1071     }
1072     k = k->java_super();
1073   }
1074   return false;
1075 }
1076 
1077 void SystemDictionaryShared::warn_excluded(InstanceKlass* k, const char* reason) {
1078   ResourceMark rm;
1079   log_warning(cds)("Skipping %s: %s", k->name()->as_C_string(), reason);
1080 }
1081 
1082 bool SystemDictionaryShared::should_be_excluded(InstanceKlass* k) {
1083   if (k->class_loader_data()->is_unsafe_anonymous()) {
< prev index next >