[master] RFR: Fix loading Klass* in C1 on AArch64

Andrew Haley aph at openjdk.java.net
Fri Jan 21 14:50:31 UTC 2022


On Tue, 18 Jan 2022 08:44:25 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> PR #20 was not quite correct on AArch64:
> - We cannot push/pop r0 in the code stub, because we must not mess with SP there, otherwise the argument passing does not work.
> - We should use far_call() and not far_jump(), so that the return comes back into the stub, and not to the continuation (or whereever LR points to).
> 
> Testing:
>  - [x] tier1
>  - [x] tier2
>  - [x] tier3

This doesn't look right. There's no point saving anything in res, because it may well just get clobbered by `Runtime1::load_klass_id`. Like Aleksey, I can't see why forcing res into `r0` won't work.

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

PR: https://git.openjdk.java.net/lilliput/pull/34


More information about the lilliput-dev mailing list