Like CI, JVMCI has a mechanism for creating handles to objects during compilation (e.g. when folding the load of an initialized static final object field, the compiler can replace the load with a reference to field's object value). Unlike CI, JVMCI creates a new handle each time the compiler resolves an object value (e.g. 2 static fields referring to the same value). This puts pressure on the resource from which JVMCI handles are allocated. For example, there are more roots for a GC to scan.
This issue is to investigate making JVMCI do something more like CI. It would be a bonus if there could be some implementation sharing between CI and JVMCI in terms of handle management.
This issue is to investigate making JVMCI do something more like CI. It would be a bonus if there could be some implementation sharing between CI and JVMCI in terms of handle management.
- relates to
-
JDK-8310218 Add support for scoping of libjvmci handles
-
- Open
-