On Thu, 19 Jan 2023 03:45:43 GMT, Xiaohong Gong <[email protected]> wrote:
>> src/jdk.incubator.vector/share/classes/jdk/incubator/vector/AbstractMask.java
>> line 219:
>>
>>> 217: @ForceInline
>>> 218: public VectorMask<E> indexInRange(int offset, int limit) {
>>> 219: if (offset < 0) {
>>
>> These fast-paths penalise every usage of `VectorMask::indexInRange`,
>> especially the common use case of tail processing an array. So I don't think
>> it is needed, the user can implement it themselves if their use cases find
>> it beneficial. Thanks.
>
> This "offset < 0" path can be optimized out by compiler if the "offset >= 0"
> in the common cases (i.e. normal loop with no tail loop).
Yes but I don't think it is common enough to deserve special treatment. A fast
path should be common for this branch otherwise we are regressing the common
path for the corner cases.
-------------
PR: https://git.openjdk.org/jdk/pull/12064