[master] Integrated: 8301562: [Lilliput] Runtime flag to enable Lilliput

Roman Kennke rkennke at openjdk.org
Fri Mar 10 09:14:59 UTC 2023


On Thu, 2 Feb 2023 13:04:27 GMT, Roman Kennke <rkennke at openjdk.org> wrote:

> This change introduces an experimental runtime flag -XX:[+/-]UseCompactObjectHeaders which can be used to disable Lilliput. The flag guards all the relevant places that directly affect the object layout and the accesses to Klass* etc. The change also restores the previous behaviour when -UseCompactObjectHeaders is selected.
> 
> One special difficulty is that CDS archives that are generated with compact object headers cannot currently be read with old-style headers, and vice versa. I work around this by disabling CDS when UseCompactObjectHeaders is set to non-default. This makes a few tests fail, but should otherwise be harmless. (In theory, we could implement parsing archives and loading objects with the correct header layout, but ... life's too short ;-) )
> 
> Testing:
>  - [x] tier1 (x86_64, x86_32, aarch64) +UseCompactObjectHeaders
>  - [x] tier2 (x86_64, x86_32, aarch64) +UseCompactObjectHeaders
>  - [x] tier1 (x86_64, x86_32, aarch64) -UseCompactObjectHeaders
>  - [x] tier2 (x86_64, x86_32, aarch64) -UseCompactObjectHeaders

This pull request has now been integrated.

Changeset: b47e3bbb
Author:    Roman Kennke <rkennke at openjdk.org>
URL:       https://git.openjdk.org/lilliput/commit/b47e3bbbd7d7dff01831a6ad5aa852306f69fd4b
Stats:     929 lines in 60 files changed: 614 ins; 46 del; 269 mod

8301562: [Lilliput] Runtime flag to enable Lilliput

Co-authored-by: Thomas Stuefe <stuefe at openjdk.org>
Reviewed-by: stuefe

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

PR: https://git.openjdk.org/lilliput/pull/70


More information about the lilliput-dev mailing list