8185717: Make ModuleEntry->module() return an oop not a jobject

Change ModuleEntry::module() to return an oop and add a ModuleEntry::module_handle() that returns a jobject

Reviewed-by: shade, coleenp, lfoltan
This commit is contained in:
Harold Seigel 2017-08-08 09:53:52 -04:00
parent 2787fd2cd7
commit 1a92a2ad53
9 changed files with 22 additions and 19 deletions

View file

@ -799,15 +799,15 @@ void java_lang_Class::set_mirror_module_field(Klass* k, Handle mirror, Handle mo
// If java.base was already defined then patch this particular class with java.base.
if (javabase_was_defined) {
ModuleEntry *javabase_entry = ModuleEntryTable::javabase_moduleEntry();
assert(javabase_entry != NULL && javabase_entry->module() != NULL,
assert(javabase_entry != NULL && javabase_entry->module_handle() != NULL,
"Setting class module field, " JAVA_BASE_NAME " should be defined");
Handle javabase_handle(THREAD, JNIHandles::resolve(javabase_entry->module()));
Handle javabase_handle(THREAD, javabase_entry->module());
set_module(mirror(), javabase_handle());
}
} else {
assert(Universe::is_module_initialized() ||
(ModuleEntryTable::javabase_defined() &&
(module() == JNIHandles::resolve(ModuleEntryTable::javabase_moduleEntry()->module()))),
(module() == ModuleEntryTable::javabase_moduleEntry()->module())),
"Incorrect java.lang.Module specification while creating mirror");
set_module(mirror(), module());
}