RFR: 8353786: Migrate Vector API math library support to FFM API [v5]
Xiaohong Gong
xgong at openjdk.org
Fri Apr 18 01:48:51 UTC 2025
On Thu, 17 Apr 2025 18:08:21 GMT, Vladimir Ivanov <vlivanov at openjdk.org> wrote:
>> Please see the `addr` definition code in https://github.com/openjdk/jdk/blob/master/src/hotspot/share/opto/vectorIntrinsics.cpp#L1877 . If queried `addr` returns `nullptr` for 256-bit vectors, and the arch supports scalable vector, then the `addr` will be assigned to the scalable ones.
>
> Ah, ok. Thanks for the pointer. I aligned lookup logic with existing behavior.
>
> I'd like to double-check one things: is it fine to use scalable vector variants for fixed-sized vector shapes of smaller size without any explicit masking/stripping of upper vector part?
Yes, it's fine for lanewise oeprations. For others like cross-lanes, stores and other operations, we will generate a predicate to strip the upper vector part. The op list that need the masking are listed here: https://github.com/openjdk/jdk/blob/master/src/hotspot/cpu/aarch64/aarch64_vector.ad#L280
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/24462#discussion_r2049872110
More information about the core-libs-dev
mailing list