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

Mikhail Ablakatov mablakatov at openjdk.org
Thu Oct 30 15:41:40 UTC 2025


On Thu, 30 Oct 2025 00:16:54 GMT, Dean Long <dlong at openjdk.org> wrote:

>> 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?

Perhaps we should check if the callee method can be statically bound here using `op->method()->can_be_statically_bound()`?

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

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


More information about the hotspot-dev mailing list