RFR: 8253920: Share method trampolines in CDS dynamic archive
Calvin Cheung
ccheung at openjdk.java.net
Mon Oct 26 18:21:22 UTC 2020
This patch is to allow sharing of the same method trampoline for archived Methods with the same AdapterHandleEntry when using CDS dynamic archive.
Running javac on HelloWorld with CDS dynamic archive, the number of calls to SharedRuntime::generate_trampoline() is reduced to 406 times vs 12601 times without the patch.
In terms of saving on instructions and time (on linux-x64):
instr delta = -2807662 -0.1369%
time delta = -6.860 ms -1.8798%
It passed tiers 1,2,3,4 testing.
-------------
Commit messages:
- 8253920: Share method trampolines in CDS dynamic archive
Changes: https://git.openjdk.java.net/jdk/pull/868/files
Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=868&range=00
Issue: https://bugs.openjdk.java.net/browse/JDK-8253920
Stats: 225 lines in 8 files changed: 126 ins; 90 del; 9 mod
Patch: https://git.openjdk.java.net/jdk/pull/868.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/868/head:pull/868
PR: https://git.openjdk.java.net/jdk/pull/868
More information about the hotspot-runtime-dev
mailing list