On Fri, 16 Dec 2022 22:58:23 GMT, Sandhya Viswanathan 
<sviswanat...@openjdk.org> wrote:

>> Claes Redestad has updated the pull request incrementally with one 
>> additional commit since the last revision:
>> 
>>   Missing & 0xff in StringLatin1::hashCode
>
> src/hotspot/cpu/x86/vm_version_x86.cpp line 1671:
> 
>> 1669:   }
>> 1670:   if (UseAVX >= 2) {
>> 1671:     FLAG_SET_ERGO_IF_DEFAULT(UseVectorizedHashCodeIntrinsic, true);
> 
> This could be just FLAG_SET_DEFAULT instead of FLAG_SET_ERGO_IF_DEFAULT.

Right, it seems HW-dependent intrinsics in generally doesn't mark that they've 
been enabled ergonomically, rather just make it on "by default" when support is 
available.

> src/java.base/share/classes/java/lang/StringUTF16.java line 418:
> 
>> 416:             return 0;
>> 417:         } else {
>> 418:             return ArraysSupport.vectorizedHashCode(value, 
>> ArraysSupport.UTF16);
> 
> Special case for 1 missing here.

Intentionally left out. Array length is always even for `UTF16` arrays, but we 
could add a case for `2` that'd return `getChar(bytes, 0)` but I didn't see 
much of a win when I tested this.

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

PR: https://git.openjdk.org/jdk/pull/10847

Reply via email to