RFR: 8280901: MethodHandle::linkToNative stub is missing w/ -Xint

Maurizio Cimadamore mcimadamore at openjdk.java.net
Mon Feb 14 14:20:09 UTC 2022


On Mon, 14 Feb 2022 13:40:32 GMT, Vladimir Ivanov <vlivanov at openjdk.org> wrote:

> MethodHandle::linkToNative linker doesn't have a dedicated stub for interpreter. A stub for compiled code is shared and it is invoked through i2c stub when accessed from interpreter. In interpreter-only mode, stubs for compiled code are not generated and linkToNative ends up in a broken state where `Method::_from_interpreted_entry` points to `i2c` stub while `Method::_from_compiled_entry` points to `c2i` stub.
> 
> Proposed fix unconditionally generates a stub for `MethodHandle::linkToNative` case irrespective whether it is a interpreter-only mode or not. 
> 
> Testing: test/jdk/java/foreign/ w/ -Xint

Thanks for the fix - maybe consider adding some extra test combinations in TestMatrix (this test is not automated, so it's not run by build and test infra).

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

PR: https://git.openjdk.java.net/jdk/pull/7459


More information about the hotspot-dev mailing list