[jdk17] RFR: 8268293: VectorAPI cast operation on mask and shuffle is broken [v4]

Sandhya Viswanathan sviswanathan at openjdk.java.net
Mon Jun 21 19:01:30 UTC 2021


On Fri, 18 Jun 2021 07:35:44 GMT, Jatin Bhateja <jbhateja at openjdk.org> wrote:

>> This is looking much better.
>> 
>> The data providers don't need to provide a list of illegal and illegal as arguments to the test. Instead, you can have two data providers one providing the array of array of arguments for legal species, and the other for illegal. 
>> 
>> (A data provider returns Object[][] providing the array of arguments. The length of the outer array is the number of tests to run, so the test itself does not need to loop over the test cases.)
>> 
>> Then, have two corresponding tests, that get supplied with a **single** src and target species like for the other conversion tests.
>> 
>> Then, tests can call a *kernel* that performs the looping, again copying the pattern of the existing tests.
>> 
>> It might be easier to first modify the data providers, then when that is working develop the kernel.
>
> Hi @PaulSandoz , Thanks for the suggestions, patch has been updated accordingly. There is also another issue around limited intrinsification of mask casting operation as VectorSupport.convert is called only when BITSIZE of src/dst species exactly match which is an added constraint. I will be creating a separate RFE to fix that along with compiler side changes since we can generate optimal code for AVX512 mask casting operations.

@jatin-bhateja The patch looks good to me.

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

PR: https://git.openjdk.java.net/jdk17/pull/39


More information about the hotspot-compiler-dev mailing list