On Tue, 26 Nov 2024 18:15:47 GMT, Quan Anh Mai <qa...@openjdk.org> wrote:

>> src/jdk.incubator.vector/share/classes/jdk/incubator/vector/AbstractVector.java
>>  line 228:
>> 
>>> 226:         }
>>> 227: 
>>> 228:         AbstractVector<?> iota = vspecies().asIntegral().iota();
>> 
>> I suspect the non-power of two code is more efficient. (Even better if the 
>> MUL could be transformed to a shift for power of two values.)
>> 
>> Separately, it makes me wonder if we should revisit the shuffle factories if 
>> it is now much more efficient to construct a shuffle from a vector.
>
> `shuffleFromOp` is a slow path op so I don't think it is. Additionally, our 
> vector multiplication is against a scalar, too. So we can optimize it if 
> `step` is a constant.

I incorrectly read `!=` as `==` :-) as that is the more common pattern used in 
the code base, so i was thinking the power of two code path was using 
`shuffleFromOp`. Could you invert the check to be more consistent?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/21042#discussion_r1872048156

Reply via email to