RFR: 8318650: Optimized subword gather for x86 targets. [v7]
Jatin Bhateja
jbhateja at openjdk.org
Fri Nov 17 05:21:32 UTC 2023
On Thu, 16 Nov 2023 04:07:21 GMT, Xiaohong Gong <xgong at openjdk.org> wrote:
>> Jatin Bhateja has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Fix incorrect comment
>
> src/jdk.incubator.vector/share/classes/jdk/incubator/vector/ByteVector.java line 3073:
>
>> 3071: .add(offset);
>> 3072: vix = VectorIntrinsics.checkIndex(vix, a.length);
>> 3073: }
>
> This has finished the boundary checks for the index array. But the drawback is it also generates the index vectors (I mean the load instructions), which may be duplicated with intrinsification on some hardwares like SVE (sve gatter instructions need the index vectors as well), because you passed the index address and offset to compiler. So for SVE, we will need double load instructions than what it actually needs.
Will GVN not be able to share the matching loads to avoid duplicity.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/16354#discussion_r1396715885
More information about the core-libs-dev
mailing list