[lworld] RFR: 8378650: [lworld] Make decision to not flatten static fields explicit in FieldLayoutBuilder

Frederic Parain fparain at openjdk.org
Wed Feb 25 17:41:54 UTC 2026


On Wed, 25 Feb 2026 09:43:17 GMT, Axel Boldt-Christmas <aboldtch at openjdk.org> wrote:

> The function `field_layout_selection` which is used to decide how layout the fields of class does not handle the static fields case explicitly. 
> 
> Right now it depends on a subtle interaction with parsing and preloading classes where we have a short circuit for static field which means we do not add an InlineLayoutInfo for the static fields, which in turn makes the `field_layout_selection` think that this field is not a known value class and ends up using a reference. 
> 
> This is both hard to understand and might cause bugs in the future. I suggest we add and explicit return LayoutKind::REFERENCE; when the field is static in `field_layout_selection`.

Looks good to me.
Thank you for this clarification of the logic.

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

Marked as reviewed by fparain (Committer).

PR Review: https://git.openjdk.org/valhalla/pull/2160#pullrequestreview-3855768524


More information about the valhalla-dev mailing list