[jdk18] RFR: 8275830: C2: Receiver downcast is missing when inlining through method handle linkers [v2]

Vladimir Ivanov vlivanov at openjdk.java.net
Tue Jan 4 12:38:18 UTC 2022


On Mon, 3 Jan 2022 20:12:49 GMT, Vladimir Ivanov <vlivanov at openjdk.org> wrote:

>> JDK-8268405 introduced receiver downcasts when inlining through virtual calls
>> when CHA reveals a unique target method under an abstract or default method.
>> But it handled only cases when invocation is performed using
>> `invokevirtual`/`invokeinterface` bytecodes and completely omitted `invokedynamic` and
>> `MethodHandles` cases. 
>> 
>> The fix covers missing cases by checking whether invocation happens through 
>> corresponding method handle linkers (`MethodHandle.linkToVirtual`/`MethodHandle.linkToInterface`).
>> 
>> Testing: hs-tier1 - hs-tier4
>
> Vladimir Ivanov has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Fix copyright year

Thanks for the reviews, Vladimir and Dean.

-------------

PR: https://git.openjdk.java.net/jdk18/pull/77


More information about the hotspot-compiler-dev mailing list