RFR: 8305093: Linker cache should not take layout names into account
Jorn Vernee
jvernee at openjdk.org
Fri Apr 21 00:45:57 UTC 2023
Strip names from the function descriptors used in linkage requests. The names are not important for classification, and this will allow the cached MethodHandle/UpcallStubFactory to be shared across linkage request with the same structure, but with layouts that have different names.
I also have another implementation that avoids copying all the layouts, and instead re-implemented equals and hashCode in the LinkRequest wrapper: https://github.com/openjdk/jdk/compare/pr/13079...JornVernee:jdk:NoNameCache But, this seems too complex. Linking code is not very performance sensitive, so I instead went with a simpler approach in this patch.
-------------
Depends on: https://git.openjdk.org/jdk/pull/13079
Commit messages:
- re-add spuriously removed blank line
- stripNames based caching
Changes: https://git.openjdk.org/jdk/pull/13562/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=13562&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8305093
Stats: 93 lines in 2 files changed: 88 ins; 1 del; 4 mod
Patch: https://git.openjdk.org/jdk/pull/13562.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/13562/head:pull/13562
PR: https://git.openjdk.org/jdk/pull/13562
More information about the core-libs-dev
mailing list