mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-28 15:24:43 +02:00
8178349: Cache builtin class loader constraints to avoid re-initializing itable/vtable for shared classes
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
This commit is contained in:
parent
eaf3306e44
commit
832272da71
18 changed files with 851 additions and 88 deletions
|
@ -285,6 +285,9 @@ public:
|
|||
TRAPS) NOT_CDS_RETURN;
|
||||
static void set_class_has_failed_verification(InstanceKlass* ik) NOT_CDS_RETURN;
|
||||
static bool has_class_failed_verification(InstanceKlass* ik) NOT_CDS_RETURN_(false);
|
||||
static bool check_linking_constraints(InstanceKlass* klass, TRAPS) NOT_CDS_RETURN_(false);
|
||||
static void record_linking_constraint(Symbol* name, InstanceKlass* klass,
|
||||
Handle loader1, Handle loader2, TRAPS) NOT_CDS_RETURN;
|
||||
static bool is_builtin(InstanceKlass* k) {
|
||||
return (k->shared_classpath_index() != UNREGISTERED_INDEX);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue