RFR: 8322726: C2: Unloaded signature class kills argument value
Vladimir Ivanov
vlivanov at openjdk.org
Fri Apr 26 16:55:12 UTC 2024
For MethodHandle linkers all arguments are casted to signature classes when target method is known.
It causes problems when target method signature contains unloaded classes: when loaded class meets unloaded class it turns into a TOP. It effectively kills argument values which correspond to unloaded signature types.
Proposed fix avoids casts when signature class is unloaded.
Testing: hs-tier1 - hs-tier4
-------------
Commit messages:
- Remove UseNewCode
- Test & fix
Changes: https://git.openjdk.org/jdk/pull/18973/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=18973&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8322726
Stats: 181 lines in 5 files changed: 168 ins; 0 del; 13 mod
Patch: https://git.openjdk.org/jdk/pull/18973.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/18973/head:pull/18973
PR: https://git.openjdk.org/jdk/pull/18973
More information about the hotspot-compiler-dev
mailing list