RFR: 8280469: C2: CHA support for interface calls when inlining through method handle linker [v2]
    Vladimir Ivanov 
    vlivanov at openjdk.org
       
    Mon Nov  3 18:38:16 UTC 2025
    
    
  
On Fri, 31 Oct 2025 22:33:30 GMT, Chen Liang <liach at openjdk.org> wrote:
> I wonder if the test verifies the declared_interface for the new monomorphic target
There are test cases which depend on `contextClass()` which is equivalent to `declared_interface` in corresponding VM code.
> src/hotspot/share/opto/doCall.cpp line 345:
> 
>> 343:       if (orig_callee->intrinsic_id() == vmIntrinsics::_linkToInterface) {
>> 344:         // MemberName doesn't keep symbolic information once resolution is over, but
>> 345:         // resolved method holder can be used as a conservative approximation.
> 
> Is "symbolic information" the referenced interface and the "resolved method holder" the declaring interface? I think including "referenced" vs "declared" would be more clear.
Indeed, the terminology is inconsistent (even across hotspot code base). Runtime code uses "resolved class" (REFC) and "declaring class" (DECC) while, as you can see here, "declared class" means REFC in compiler code.
I rewrote the comment trying to make it clearer.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/28094#issuecomment-3481956676
PR Review Comment: https://git.openjdk.org/jdk/pull/28094#discussion_r2487478970
    
    
More information about the hotspot-compiler-dev
mailing list