[15] RFR 8247246: Add explicit ResolvedJavaType.link and expose presence of default methods
Tom Rodriguez
tom.rodriguez at oracle.com
Tue Jun 23 20:46:23 UTC 2020
http://cr.openjdk.java.net/~never/8247246/webrev
https://bugs.openjdk.java.net/browse/JDK-8247246
This adds a couple operations the JVMCI that are necessary for
interacting with classes that aren't linked. ResolvedJavaType.link
explicitly attempts linking if the current class isn't linked.
ResolvedJavaType.getDeclaredMethods and getDeclaredConstructors both
force linking as part of their implementation though this is more
historical than necessary though there is code which relies on this
behavioiur to force linking. Additionally there's currently no way of
identifying class and interface which default other than by visiting all
the methods of the clases, so hasDefaultMethods and
declaresDefaultMethods have been added to expose this without forcing
linking. Mach5 testing is clean and includes unit tests which exercise
the new API.
More information about the hotspot-compiler-dev
mailing list