RFR: 8359359: AArch64: share trampolines between static calls to the same method [v6]
Dean Long
dlong at openjdk.org
Thu Oct 30 00:20:06 UTC 2025
On Wed, 29 Oct 2025 17:58:30 GMT, Mikhail Ablakatov <mablakatov at openjdk.org> wrote:
>> Thank you @dean-long
>>
>> @mikabl-arm , it looks like we should allow `nullptr` for `callee` at the time of trampoline requested. We don't have `ciMethod`. Getting some kind of it might involve linking. In case of `gen_continuation_enter()` we don't save much vs adding complexity to Hotspot.
>
> Even though we still allow `nullptr` for `callee`, while working on this I found a couple of spots in C1 that might benefit from passing an actual `callee` to `trampoline_call()`, see https://github.com/openjdk/jdk/pull/25954/commits/e3ad440bcce5b4f38649ad804b9e0afdc97f36ee.
Are you sure this is OK in LIR_Assembler::call()? Calls of type lir_dynamic_call use relocInfo::static_call_type, but can't they resolve to different targets depending on the call site info? I don't think op->method() is unique for invokedynamic calls. @iwanowww what do you think?
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/25954#discussion_r2476051048
More information about the hotspot-dev
mailing list