RFR: 8318650: Optimized subword gather for x86 targets. [v10]
Jatin Bhateja
jbhateja at openjdk.org
Tue Jan 16 06:11:27 UTC 2024
On Mon, 15 Jan 2024 14:36:38 GMT, Emanuel Peter <epeter at openjdk.org> wrote:
>> src/hotspot/cpu/x86/c2_MacroAssembler_x86.cpp line 1776:
>>
>>> 1774: for (int i = 0; i < 4; i++) {
>>> 1775: movl(rtmp, Address(idx_base, i * 4));
>>> 1776: addl(rtmp, offset);
>>
>> Can the `offset` not be added to `idx_base` before the loop?
>
> Or would that require too many registers?
> Can the `offset` not be added to `idx_base` before the loop?
Offset needs to be added to each index element, please refer to API specification for details.
https://docs.oracle.com/en/java/javase/21/docs/api/jdk.incubator.vector/jdk/incubator/vector/ShortVector.html#fromArray(jdk.incubator.vector.VectorSpecies,short[],int,int[],int)
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/16354#discussion_r1452964002
More information about the hotspot-compiler-dev
mailing list