[lworld] RFR: 8375719: [lworld] Move reads of flat fields entirely to the runtime [v2]

Paul Hübner phubner at openjdk.org
Wed Jan 21 10:34:28 UTC 2026


On Wed, 21 Jan 2026 09:18:44 GMT, Joel Sikström <jsikstro at openjdk.org> wrote:

>> src/hotspot/cpu/aarch64/interp_masm_aarch64.cpp line 263:
>> 
>>> 261:   pop(obj);
>>> 262:   bind(slow_path);
>>> 263:   call_VM(obj, CAST_FROM_FN_PTR(address, InterpreterRuntime::read_flat_field),
>> 
>> In your writeup you mention `call_VM_leaf` is called, but I only see references to `call_VM` in the code yet the comments say `call_VM_leaf`. Do we/did we `call_VM_leaf` at any point?
>
> The call to `call_VM_leaf` is in the copy-path:
> 
> 
> MacroAssembler::flat_field_copy
>   BarrierSetAssembler::flat_field_copy
>     call_VM_leaf(CAST_FROM_FN_PTR(address, BarrierSetRuntime::value_copy), ...)

Makes sense, thank you for clarifying.

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

PR Review Comment: https://git.openjdk.org/valhalla/pull/1936#discussion_r2711945980


More information about the valhalla-dev mailing list