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