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`. ------------- Commit messages: - 8378650: [lworld] Make decision to not flatten static fields explicit in FieldLayoutBuilder Changes: https://git.openjdk.org/valhalla/pull/2160/files Webrev: https://webrevs.openjdk.org/?repo=valhalla&pr=2160&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8378650 Stats: 10 lines in 1 file changed: 10 ins; 0 del; 0 mod Patch: https://git.openjdk.org/valhalla/pull/2160.diff Fetch: git fetch https://git.openjdk.org/valhalla.git pull/2160/head:pull/2160 PR: https://git.openjdk.org/valhalla/pull/2160
