[vectorIntrinsics+mask] RFR: 8266621: Add masking support for unary/ternary vector intrinsics

Xiaohong Gong xgong at openjdk.java.net
Thu May 13 06:59:09 UTC 2021


On Tue, 11 May 2021 15:50:18 GMT, Paul Sandoz <psandoz at openjdk.org> wrote:

>> Similar with [1], this patch adds the masking support for `unary/ternary` vector intrinsics. It adds the mask information to the original intrinsic methods which are called both by masked and non-masked unary/ternary operations. For non-masked operations, the mask class and value are set to null.
>> 
>> Also change to use the `"binaryMaskedOp"` for vector mask logical operations instead of` "binaryOp"`. So that all the original nary intrinsics and hotspot implementation can be removed.
>> 
>> Note that this patch only contains the Vector API java implementation and the hotspot intrinsics changes. No compiler mid-end and backend implementations are included.
>> 
>> [1] https://bugs.openjdk.java.net/browse/JDK-8264563
>
> Java changes look good.

Since all the `naryOp ` are totally replaced with `naryMaskedOp` (e.g. `binaryOp -> binaryMaskedOp`), does it make sense that we still use the name `naryOp` for both masked and non-masked operations? @PaulSandoz which do you think is better `binaryOp` or `binaryMaskedOp` ?

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

PR: https://git.openjdk.java.net/panama-vector/pull/80


More information about the panama-dev mailing list