hg: jdk/jdk: 8178349: Cache builtin class loader constraints to avoid re-initializing itable/vtable for shared classes

yumin.qi at oracle.com yumin.qi at oracle.com
Fri May 1 18:00:14 UTC 2020


Changeset: c196e3ff6b63
Author:    minqi
Date:      2020-05-01 10:58 -0700
URL:       https://hg.openjdk.java.net/jdk/jdk/rev/c196e3ff6b63

8178349: Cache builtin class loader constraints to avoid re-initializing itable/vtable for shared classes
Summary: Record loader constraints for built-in class which is loaded by app loader or platform loader in shared archive in dump time.  When the class loaded from shared archive at runtime, directly check loader constraints using the saved info so avoid lengthy relayout i/v-table at class link stage.
Reviewed-by: iklam, ccheung

! src/hotspot/share/classfile/loaderConstraints.hpp
! src/hotspot/share/classfile/systemDictionary.cpp
! src/hotspot/share/classfile/systemDictionary.hpp
! src/hotspot/share/classfile/systemDictionaryShared.cpp
! src/hotspot/share/classfile/systemDictionaryShared.hpp
! src/hotspot/share/interpreter/linkResolver.cpp
! src/hotspot/share/oops/instanceKlass.cpp
! src/hotspot/share/oops/klassVtable.cpp
! src/hotspot/share/runtime/handles.hpp
! src/hotspot/share/runtime/mutexLocker.cpp
! test/hotspot/jtreg/TEST.groups
+ test/hotspot/jtreg/runtime/cds/appcds/loaderConstraints/DynamicLoaderConstraintsTest.java
+ test/hotspot/jtreg/runtime/cds/appcds/loaderConstraints/LoaderConstraintsApp.java
+ test/hotspot/jtreg/runtime/cds/appcds/loaderConstraints/LoaderConstraintsTest.java
+ test/hotspot/jtreg/runtime/cds/appcds/loaderConstraints/MyClassLoader.java
+ test/hotspot/jtreg/runtime/cds/appcds/loaderConstraints/MyHttpHandler.java
+ test/hotspot/jtreg/runtime/cds/appcds/loaderConstraints/MyHttpHandlerB.java
+ test/hotspot/jtreg/runtime/cds/appcds/loaderConstraints/MyHttpHandlerC.java



More information about the jdk-changes mailing list