8176472: Lazily create ModuleEntryTable

Moved the unnamed module out of the ModuleEntryTable and into the ClassLoaderData so that the MET can be lazily created only when other modules are present. Also a smaller PackageTable size.

Reviewed-by: gtriantafill, hseigel, lfoltan, coleenp
This commit is contained in:
Rachel Protacio 2017-04-18 13:19:42 -04:00
parent 2327609d91
commit ca72444bf9
9 changed files with 112 additions and 57 deletions

View file

@ -2863,7 +2863,7 @@ ModuleEntry* java_lang_reflect_Module::module_entry(oop module, TRAPS) {
oop loader = java_lang_reflect_Module::loader(module);
Handle h_loader = Handle(THREAD, loader);
ClassLoaderData* loader_cld = SystemDictionary::register_loader(h_loader, CHECK_NULL);
return loader_cld->modules()->unnamed_module();
return loader_cld->unnamed_module();
}
return module_entry;
}