RFR: 8359359: AArch64: share trampolines between static calls to the same method [v7]

Mikhail Ablakatov mablakatov at openjdk.org
Thu Nov 6 17:59:43 UTC 2025


On Thu, 30 Oct 2025 13:11:27 GMT, Evgeny Astigeevich <eastigeevich at openjdk.org> wrote:

>> Mikhail Ablakatov has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 15 commits:
>> 
>>  - share static call trampolines generated by C1 as well
>>  - assert callee is nullptr for runtime calls
>>  - assert that call sites offsets aren't missing
>>  - cleanup: rephrase comments in macroAssembler_aarch64.hpp
>>  - Merge commit 'fd29677479797956e0d205b5ce6e7cb9ad407bd1' into 8359359
>>  - Merge commit '41520998aa8808452ee384b213b2a77c7bad668d'
>>  - remove implementation-dependent logic from emit_shared_trampolines()
>>  - cleanup: update copyright headers
>>  - Make the value type of the dictionary a struct instead of Pair typedef
>>  - Remove share_rc_trampoline_for and share_sc_trampoline_for
>>  - ... and 5 more: https://git.openjdk.org/jdk/compare/fd296774...e3ad440b
>
> src/hotspot/cpu/aarch64/c1_CodeStubs_aarch64.cpp line 336:
> 
>> 334:   Address resolve(SharedRuntime::get_resolve_static_call_stub(),
>> 335:                   relocInfo::static_call_type);
>> 336:   address call = __ trampoline_call(resolve, info()->method());
> 
> This does not save any space because it is one call in the stub.

reverted, please see https://github.com/openjdk/jdk/pull/25954/commits/a5c665520088ca7a3f282b684bb58701733af83e

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/25954#discussion_r2500160541


More information about the hotspot-dev mailing list