[code-reflection] Integrated: Make downcall method handles for ORT API functions static
Maurizio Cimadamore
mcimadamore at openjdk.org
Tue Feb 18 19:28:30 UTC 2025
On Tue, 18 Feb 2025 15:15:26 GMT, Maurizio Cimadamore <mcimadamore at openjdk.org> wrote:
> This PR tweaks the method handles in `OnnxRuntime` to be static and final.
> The trick is to use a so called "virtual" downcall handle -- a downcall handle that takes its input address as an extra parameter.
> Then, we can just adapt such a method handle to fetch the target function address from the incoming `runtimeAddress` parameter.
> This way, all the method handles modelling functions in the ORT API can be made static, which unlocks better C2 optimizations.
>
> Clients of such method handles have to be tweaked to pass in the additional leading `runtimeAddress` parameter.
This pull request has now been integrated.
Changeset: 90be8529
Author: Maurizio Cimadamore <mcimadamore at openjdk.org>
URL: https://git.openjdk.org/babylon/commit/90be85293126f550c8672adc706ff58d0c6309d3
Stats: 72 lines in 1 file changed: 28 ins; 15 del; 29 mod
Make downcall method handles for ORT API functions static
Reviewed-by: asotona
-------------
PR: https://git.openjdk.org/babylon/pull/322
More information about the babylon-dev
mailing list