[lworld+vector] RFR: 8314980: [lworld+vector] consider scalarization conditions during ciMultiField creation. [v3]

Xiaohong Gong xgong at openjdk.org
Wed Aug 30 01:30:32 UTC 2023


On Tue, 29 Aug 2023 09:42:14 GMT, Jatin Bhateja <jbhateja at openjdk.org> wrote:

>> Patch adds a new API _ciEnv::is_multifield_scalarized_, to scalarize multifield (ciField[s]) in case target vector cannot accommodate multifield bundle size, else it creates a hierarchical structure ciMultiField and expose entire multifield bundle as one field to C2 compiler.
>> 
>> This cleans up special handling done in C2 compiler, ci field query APIs and object reconstruction handling  at SafePoint.
>> 
>> Please review and share your feedback.
>> 
>> Best Regards,
>> Jatin
>
> Jatin Bhateja has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Restricting population of multifield bundle size and setting _is_multifield_base to only ciMultifield objects.

src/hotspot/share/ci/ciField.cpp line 94:

> 92:   _is_multifield = false;
> 93:   _is_multifield_base = false;
> 94:   _is_transiant_multifield_base = false;

Why do we still need `_is_multifield_base` in `ciField` ?

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

PR Review Comment: https://git.openjdk.org/valhalla/pull/918#discussion_r1309506468



More information about the valhalla-dev mailing list