On Mon, 15 Jan 2024 14:36:38 GMT, Emanuel Peter <[email protected]> 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