[lworld] RFR: 8311219: [lworld] VM option "InlineFieldMaxFlatSize" cannot work well [v4]
Xiaohong Gong
xgong at openjdk.org
Thu Sep 7 07:59:16 UTC 2023
On Thu, 7 Sep 2023 06:37:25 GMT, Jatin Bhateja <jbhateja at openjdk.org> wrote:
>> Xiaohong Gong has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains four commits:
>>
>> - Merge 'valhalla:lworld' into JDK-8311219
>> - Fix "assert(field->type()->as_inline_klass()->is_initialized()) failed: Must be"
>> - Not flatten L-descriptor value object field even it is final
>> - 8311219: [lworld] VM option "InlineFieldMaxFlatSize" cannot work well
>
> src/hotspot/share/classfile/fieldLayoutBuilder.cpp line 761:
>
>> 759: // volatile fields are currently never flatten, this could change in the future
>> 760: }
>> 761: if (!(too_big_to_flatten | too_atomic_to_flatten | too_volatile_to_flatten)) {
>
> Please also add an IR framework test to check primitive class final/non-final field flattening, given that InlineTypeNode are removed during Optimization hence such a check has to be done on post Parse IR.
The main problem for me is how to check the flatten status for an `InlineTypeNode`. Maybe we can check the decode operation generated by the field accessing (or loading) to an primitive class field. Any better idea for this?
-------------
PR Review Comment: https://git.openjdk.org/valhalla/pull/888#discussion_r1318229377
More information about the valhalla-dev
mailing list