RFR: 8353216: Improve VerifyMethodHandles for method handle linkers [v3]
Vladimir Ivanov
vlivanov at openjdk.org
Fri Apr 11 22:48:12 UTC 2025
> Add extra verification logic into `MethodHandle::invokeBasic/linkTo*` to ensure that holder classes are properly initialized.
>
> The patch covers x86 and aarch64 platforms.
>
> There are some differences in expectations between invocation modes.
> While `invokeStatic` assumes a clinit barrier (and `invokeBasic` just requires the holder class to be fully initialized), other invocation modes can only expect that class initialization has been initiated (due to class initialization failures and premature publication, instances of partially initialized classes can be observed).
>
> Testing: hs-tier1 - hs-tier4
Vladimir Ivanov has updated the pull request incrementally with one additional commit since the last revision:
subs -> cmp
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/23950/files
- new: https://git.openjdk.org/jdk/pull/23950/files/ef7fa5cc..3b9374c5
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=23950&range=02
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=23950&range=01-02
Stats: 3 lines in 2 files changed: 0 ins; 0 del; 3 mod
Patch: https://git.openjdk.org/jdk/pull/23950.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/23950/head:pull/23950
PR: https://git.openjdk.org/jdk/pull/23950
More information about the hotspot-dev
mailing list