On Tue, 27 Jul 2021 02:52:13 GMT, Eric Liu wrote:
>> @sviswa7, SLP flow will either have a constant 8bit shift value or a
>> variable shift present in vector, this also include broadcasted non-constant
>> shift value or a shift value beyond 8 bit.
>
> It would be better comment here, since the
On Mon, 26 Jul 2021 18:56:01 GMT, Jatin Bhateja wrote:
>> @jatin-bhateja This question is still pending.
>
> @sviswa7, SLP flow will either have a constant 8bit shift value or a variable
> shift present in vector. So non constant scalar case will not be hit through
> this route.
It would be
On Mon, 26 Jul 2021 17:19:07 GMT, Sandhya Viswanathan
wrote:
>> And'ing with shift_mask is already done on Java API side implementation
>> before making a call to intrinsic rountine.
>
> @jatin-bhateja This question is still pending.
@sviswa7, SLP flow will either have a constant 8bit shift
On Mon, 26 Jul 2021 17:19:07 GMT, Sandhya Viswanathan
wrote:
>> And'ing with shift_mask is already done on Java API side implementation
>> before making a call to intrinsic rountine.
>
> @jatin-bhateja This question is still pending.
Other than VectorAPI , SLP also infers vector rotates
On Sun, 18 Jul 2021 20:22:18 GMT, Jatin Bhateja wrote:
>> src/hotspot/share/opto/vectornode.cpp line 1180:
>>
>>> 1178: cnt = cnt->in(1);
>>> 1179: }
>>> 1180: shiftRCnt = cnt;
>>
>> Why do we remove the And with mask here?
>
> And'ing with shift_mask is already done on Java API
On Fri, 16 Jul 2021 00:52:21 GMT, Sandhya Viswanathan
wrote:
>> Jatin Bhateja has updated the pull request with a new target base due to a
>> merge or a rebase. The pull request now contains 15 commits:
>>
>> - 8266054: Incorporating styling changes based on reviews.
>> - Merge branch
On Thu, 15 Jul 2021 08:34:42 GMT, Jatin Bhateja wrote:
>> Current VectorAPI Java side implementation expresses rotateLeft and
>> rotateRight operation using following operations:-
>>
>> vec1 = lanewise(VectorOperators.LSHL, n)
>> vec2 = lanewise(VectorOperators.LSHR, n)
>> res =
> Current VectorAPI Java side implementation expresses rotateLeft and
> rotateRight operation using following operations:-
>
> vec1 = lanewise(VectorOperators.LSHL, n)
> vec2 = lanewise(VectorOperators.LSHR, n)
> res = lanewise(VectorOperations.OR, vec1 , vec2)
>
> This patch moves