8214307 [lworld][C1] Access to flattened fields does not support nested flattened fields

Tobias Hartmann tobias.hartmann at oracle.com
Tue Nov 27 09:23:45 UTC 2018


Hi Ioi,

On 27.11.18 08:40, Ioi Lam wrote:
> BTW, looks like we have a similar issues here as well (ciInstanceKlass::compute_nonstatic_fields_impl):
> http://hg.openjdk.java.net/valhalla/valhalla/file/448c8cd077c9/src/hotspot/share/ci/ciInstanceKlass.cpp#l494
> It just expands nested flattened fields by one level.

I don't think that's true. That code iterates over the fields of a flattened value klass by using
nof_nonstatic_fields() and nonstatic_field_at() which contains the flattened fields of that klass as
well:
http://hg.openjdk.java.net/valhalla/valhalla/file/448c8cd077c9/src/hotspot/share/ci/ciInstanceKlass.cpp#l530

That code is heavily used by C2, hopefully we would have noticed if it's incorrect.

Best regards,
Tobias


More information about the valhalla-dev mailing list