RFR: 8322770: Implement C2 VectorizedHashCode on AArch64 [v20]

Andrew Haley aph at openjdk.org
Fri Sep 27 17:38:42 UTC 2024


On Fri, 27 Sep 2024 17:25:21 GMT, Mikhail Ablakatov <duke at openjdk.org> wrote:

>> I have no problem at all with what class Assembler provides. However, when the result looks like this, even a "normal" assembler programmer would suggest macros rather than copy-and-paste:
>> 
>> 
>>      assert(is_subword_type(eltype), "subword type expected");
>>       if (is_signed_subword_type(eltype)) {
>>         __ saddwv(vmul3, vmul3, Assembler::T4S, vdata3, Assembler::T4H);
>>         __ saddwv(vmul2, vmul2, Assembler::T4S, vdata2, Assembler::T4H);
>>         __ saddwv(vmul1, vmul1, Assembler::T4S, vdata1, Assembler::T4H);
>>         __ saddwv(vmul0, vmul0, Assembler::T4S, vdata0, Assembler::T4H);
>>       } else {
>>         __ uaddwv(vmul3, vmul3, Assembler::T4S, vdata3, Assembler::T4H);
>>         __ uaddwv(vmul2, vmul2, Assembler::T4S, vdata2, Assembler::T4H);
>>         __ uaddwv(vmul1, vmul1, Assembler::T4S, vdata1, Assembler::T4H);
>>         __ uaddwv(vmul0, vmul0, Assembler::T4S, vdata0, Assembler::T4H);
>>       }
>
> Would it be possible to integrate this as is? The code was approved twice before, even though it had the same constructs.

OK. It's a fairly minor style thing, something to remember for the future.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/18487#discussion_r1778946881


More information about the hotspot-dev mailing list