-
Bug
-
Resolution: Fixed
-
P3
-
repo-valhalla
This issue tracks some implementation clean up issues for hidden classes in the nestmates branch.
1. rename "is_nonfindable" to "is_hidden"
2. the name of the hidden class is assigned by the VM (Klass::external_name)
The name parameter in JVM_LookupDefineClass is simply a binary name that can be used by the VM as a prefix but not guaranteed to be unique. The VM appends the name with "/" and unique id (address of the klass in the implementation) to follow the long-standing convention of Unsafe VM anonymous class.
The name of `this_class` in the CP entry should be re-examined if it should be set to a sentinel value or NULL.
3. define struct ClassLoadInfo to wire all random bits in one place (something like bootstrapInfo.hpp) (seeJDK-8230816)
4. It may be useful to augment VM logging to show other properties when a hidden class is created (e.g. weak or nest host or etc)
1. rename "is_nonfindable" to "is_hidden"
2. the name of the hidden class is assigned by the VM (Klass::external_name)
The name parameter in JVM_LookupDefineClass is simply a binary name that can be used by the VM as a prefix but not guaranteed to be unique. The VM appends the name with "/" and unique id (address of the klass in the implementation) to follow the long-standing convention of Unsafe VM anonymous class.
The name of `this_class` in the CP entry should be re-examined if it should be set to a sentinel value or NULL.
3. define struct ClassLoadInfo to wire all random bits in one place (something like bootstrapInfo.hpp) (see
4. It may be useful to augment VM logging to show other properties when a hidden class is created (e.g. weak or nest host or etc)
- relates to
-
JDK-8230816 Consolidate classData and dynamic_nest_host into a new ClassLoadInfo data structure
-
- Resolved
-
-
JDK-8205939 JVM support to replace Unsafe.defineAnonymousClass
-
- Closed
-