[lworld+vector] RFR: 8304310: Initial compilers and runtime handling for multifield backed vectors. [v5]

Jatin Bhateja jbhateja at openjdk.org
Fri Apr 7 00:33:11 UTC 2023


On Tue, 21 Mar 2023 08:50:57 GMT, Xiaohong Gong <xgong at openjdk.org> wrote:

>> Jatin Bhateja has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Cleanup vector box expansion handling to leverage existing InlineTypeNode storage and flow merging routines.
>
> src/hotspot/share/opto/vector.cpp line 401:
> 
>> 399:                                                      buffer_adr_type,
>> 400:                                                      value,
>> 401:                                                      num_elem));
> 
> Can we simply call `InlineTypeNode::buffer()` here?

Logic is now simplified, vector box IR also comply with the composition of concrete vector class which is a value type encapsulating primitive type payload.
![image](https://user-images.githubusercontent.com/59989778/230422964-80eb40cc-0162-4de2-9c61-e5a42495fd1e.png)

This allows direct usage of InlineTypeNode::store routine which does a recursive field traversal to store scalarized fields into buffer.

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

PR Review Comment: https://git.openjdk.org/valhalla/pull/833#discussion_r1160351999



More information about the valhalla-dev mailing list