RFR: 8359359: AArch64: share trampolines between static calls to the same method [v2]
Mikhail Ablakatov
mablakatov at openjdk.org
Fri Jul 25 16:56:57 UTC 2025
On Thu, 24 Jul 2025 21:42:21 GMT, Evgeny Astigeevich <eastigeevich at openjdk.org> wrote:
>> Mikhail Ablakatov has updated the pull request incrementally with two additional commits since the last revision:
>>
>> - Lift the vm.opt.TieredCompilation == null requirement from the tests
>> - Combine the two shared trampoline request hash tables
>
> src/hotspot/share/asm/codeBuffer.hpp line 550:
>
>> 548: typedef Pair<TrampolineCallKind, address> SharedTrampolineRequestKey;
>> 549: typedef ResizeableResourceHashtable<SharedTrampolineRequestKey, Offsets, AnyObj::C_HEAP,
>> 550: mtCompiler>
>
> You can keep using `address` as a key. I don't think `ciMethod*` can be a runtime call target. If we keep using `address` as a key we don't need to define a hash function.
> A type of a call can be stored as data with offset.
Thank you for a suggestion! I think it works just as fine as the current version does but reduces the footprint of the patch significantly. Hopefully this should make it easier to review the PR. I'll submit an update next week.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/25954#discussion_r2231604632
More information about the hotspot-dev
mailing list