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

Xiaohong Gong xgong at openjdk.java.net
Mon May 17 02:24:27 UTC 2021

On Fri, 14 May 2021 16:40:47 GMT, Vladimir Ivanov <vlivanov at openjdk.org> wrote:

> Overall, looks good.

Thanks for your review!

> * On naming: while browsing the patch and seeing `Masked` I constantly think about non-Masked counterpart. What about reusing `unaryOp`/`binaryOp`/`ternaryOp` names for the merged intrinsic?

Yeah, totally agree. I also pointed out the naming issue above (see: https://github.com/openjdk/panama-vector/pull/80#issuecomment-840358060). And I agree with what @PaulSandoz's comment about it: "lets get the code in the branch and iterate. It's easy to revisit naming decisions like this later.". Does this make sense to you?

> Can you remind me what happens for SVML stubs when mask != NULL? Does the JVM reject the intrinsification? I believe the stubs don't support masked operation mode.

It will generate the vector blend mode like before. Currently the compiler only checks whether the predicated mode is supported for normal operations `(sopc != 0)`. For SVML ops, the `use_predicate` is false which means it generates `"VectorBlend"` pattern like before.


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

More information about the panama-dev mailing list