[vectorIntrinsics+mask] RFR: 8272745: VectorAPI: Vector/Mask type cleanup for masked vector intrinsics

Paul Sandoz psandoz at openjdk.java.net
Wed Sep 1 22:14:47 UTC 2021


On Wed, 1 Sep 2021 01:26:11 GMT, Eric Liu <eliu at openjdk.org> wrote:

> Some of the VectorAPIs were inconsistent with their intrinsic
> declarations, and some of the type arguments were not precise enough as
> well. E.g., The return type of "unaryOp" should be a subtype of "Vector"
> instead of an all-purpose "Object" [1][2].
> 
> The imprecise declarations and type arguments would not effect the
> correctness but bring bad readability and make the code hard to
> maintain. This patch is a cleanup for those mismatched declarations of
> VectorAPIs.
> 
> [1] https://github.com/openjdk/panama-vector/blob/vectorIntrinsics%2Bmask/src/java.base/share/classes/jdk/internal/vm/vector/VectorSupport.java#L269
> [2] https://github.com/openjdk/panama-vector/blob/vectorIntrinsics%2Bmask/src/hotspot/share/classfile/vmIntrinsics.hpp#L812

That's a good start. As I looked more deeply i figured it was worth doing a more thorough cleanup for readability and maintainability.

So I did some changes on top of your PR, see the following patch which should apply cleanly to your PR:

  https://gist.github.com/PaulSandoz/329e0e61b6d0ed5f4d6b5ddc03fa9105 

(Sorry i did not clone your branch and issue a PR to that, let me know if that is more preferable.)

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

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


More information about the panama-dev mailing list