diff -r 0828a0f6676b -r 2f2af62dfac7 src/hotspot/share/classfile/systemDictionary.cpp --- a/src/hotspot/share/classfile/systemDictionary.cpp Fri Jun 22 17:49:21 2018 -0700 +++ b/src/hotspot/share/classfile/systemDictionary.cpp Sat Jun 23 01:32:41 2018 -0400 @@ -245,10 +245,6 @@ // Forwards to resolve_instance_class_or_null Klass* SystemDictionary::resolve_or_null(Symbol* class_name, Handle class_loader, Handle protection_domain, TRAPS) { - assert(THREAD->can_call_java(), - "can not load classes with compiler thread: class=%s, classloader=%s", - class_name->as_C_string(), - class_loader.is_null() ? "null" : class_loader->klass()->name()->as_C_string()); if (FieldType::is_array(class_name)) { return resolve_array_class_or_null(class_name, class_loader, protection_domain, THREAD); } else if (FieldType::is_obj(class_name)) { @@ -692,6 +688,10 @@ PlaceholderEntry* placeholder; Symbol* superclassname = NULL; + assert(THREAD->can_call_java(), + "can not load classes with compiler thread: class=%s, classloader=%s", + name->as_C_string(), + class_loader.is_null() ? "null" : class_loader->klass()->name()->as_C_string()); { MutexLocker mu(SystemDictionary_lock, THREAD); InstanceKlass* check = find_class(d_hash, name, dictionary);