[master] RFR: Load Klass* from header, C2 implementation [v4]
Aleksey Shipilev
shade at openjdk.java.net
Fri Feb 11 07:16:45 UTC 2022
On Wed, 9 Feb 2022 17:05:06 GMT, Roman Kennke <rkennke at openjdk.org> wrote:
>> src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp line 3716:
>>
>>> 3714:
>>> 3715: bind(slow);
>>> 3716: enter();
>>
>> Why `enter()` and `leave()` are removed? I thought those manage the frame pointer to allow stack walk? IOW, it is not enough to just save the `lr`, we also need to manage `rfp`?
>
> enter() saves/restores lr and rfp, and then overrides rfp with current sp. leave() reverts that. C2 doesn't seem to like messing with rfp, but we still need to preserve lr at this point, so that subroutine calls can find their way back. The stub does its own enter/leave around the slow-path call.
OK.
-------------
PR: https://git.openjdk.java.net/lilliput/pull/29
More information about the lilliput-dev
mailing list