[lworld+vector] RFR: 8311675: [lworld+vector] Max Species support.
Jatin Bhateja
jbhateja at openjdk.org
Mon Oct 9 02:46:11 UTC 2023
On Sun, 8 Oct 2023 01:03:24 GMT, Xiaohong Gong <xgong at openjdk.org> wrote:
> An alternative is trying to passing the type info to the `MultiField` annotation, so that the `_class_name` is not needed, and so does to the method `VectorSupport::get_max_multifield_count()`. We can use "max_vector_size(bt)" directly.
Thanks @XiaohongGong , you mean pass explicit vector lane type to multifiled annotation like @multifield(-1, long.class). Please consider following points
- We will still need explicit VectorPayload class definitions for mask/shuffule max payloads for different vector types.
- Mask/Shuffle backing storage field type is common for all kinds of vector i.e. byte for shuffle and Boolean for mask.
- We can save on complexity of extending the annotation semantics for max species by doing an efficient vmSymbolID lookup.
- In future if we refactor shuffle lanes to match the lane types of corresponding vector then additional element type in multifield will be redundant as the backing field type will itself be different for max shuffle payloads.
-------------
PR Review Comment: https://git.openjdk.org/valhalla/pull/931#discussion_r1349827199
More information about the valhalla-dev
mailing list