RFR: 8309634: Resolve CONSTANT_MethodRef at CDS dump time
Matias Saavedra Silva
matsaave at openjdk.org
Tue Jun 25 18:02:18 UTC 2024
On Mon, 24 Jun 2024 17:21:18 GMT, Ioi Lam <iklam at openjdk.org> wrote:
> Resolve `CONSTANT_MethodRef` entries during CDS dump time to improve start-up performance.
>
> - This PR uses the same framework introduced in #19355 and just added handling for methods.
> - Support for getstatic/putstatic/invokestatic will be done separately in [JDK-8334898](https://bugs.openjdk.org/browse/JDK-8334898)
Looks good! I have one consideration but otherwise I approve.
src/hotspot/share/interpreter/interpreterRuntime.cpp line 930:
> 928: CallInfo call_info;
> 929: switch (bytecode) {
> 930: case Bytecodes::_invokevirtual: LinkResolver::cds_resolve_virtual_call (call_info, link_info, CHECK); break;
I think the the `cds_resolve_xyz_call()` methods might be unnecessary. You can just call the existing methods from LinkResolver besides `resolve_virtual_call`
src/hotspot/share/oops/cpCache.cpp line 454:
> 452:
> 453: // Just for safety -- this should not happen, but do not archive if we ever see this.
> 454: resolved &= !(rme->is_resolved(Bytecodes::_invokehandle) ||
Don't forget to fix the whitespace problem here
-------------
Marked as reviewed by matsaave (Reviewer).
PR Review: https://git.openjdk.org/jdk/pull/19866#pullrequestreview-2136680123
PR Review Comment: https://git.openjdk.org/jdk/pull/19866#discussion_r1653181970
PR Review Comment: https://git.openjdk.org/jdk/pull/19866#discussion_r1651570587
More information about the hotspot-dev
mailing list