[master] Integrated: Load Klass* from header in interpreter (x86)
Roman Kennke
rkennke at openjdk.java.net
Tue Oct 12 14:18:12 UTC 2021
On Mon, 27 Sep 2021 10:55:56 GMT, Roman Kennke <rkennke at openjdk.org> wrote:
> This implements loading the compressed Klass* from the object header, instead of the Klass* field in the x86 interpreter. It does the fast-path (unlocked object) in assembly, and calls into the runtime to deal with locked objects.
>
> This is a proof-of-concept. It is not entirely clear if we can even call into runtime from a couple of places where load_klass() is called, especially in C2, C1 and some stubs. OTOH, we may end up not having to do any of this if we come up with a way to avoid displaced headers altogether.
>
> Testing:
> - [x] tier1 (x86_32,x86_64)
> - [x] tier2 (x86_32,x86_64)
> - [x] hotspot_gc (x86_32,x86_64)
This pull request has now been integrated.
Changeset: dc8fd0f1
Author: Roman Kennke <rkennke at openjdk.org>
URL: https://git.openjdk.java.net/lilliput/commit/dc8fd0f1ea7f1b652ecf93b789ed03b559619c2b
Stats: 76 lines in 8 files changed: 58 ins; 5 del; 13 mod
Load Klass* from header in interpreter (x86)
Reviewed-by: shade
-------------
PR: https://git.openjdk.java.net/lilliput/pull/15
More information about the lilliput-dev
mailing list