RFR: 8329331: Intrinsify Unsafe::setMemory [v11]
Scott Gibbons
sgibbons at openjdk.org
Thu Apr 11 21:00:45 UTC 2024
On Thu, 11 Apr 2024 20:08:18 GMT, Sandhya Viswanathan <sviswanathan at openjdk.org> wrote:
>> Scott Gibbons has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Fix whitespace error.
>
> src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp line 8343:
>
>> 8341: UnsafeCopyMemory::create_table(8);
>> 8342: }
>> 8343:
>
> Did you mean to initialize UnsafeSetMemory::_table here instead?
Yes. Good catch.
> src/hotspot/cpu/x86/stubGenerator_x86_64_arraycopy.cpp line 155:
>
>> 153: StubRoutines::_arrayof_jint_fill = generate_fill(T_INT, true, "arrayof_jint_fill");
>> 154:
>> 155: // #ifdef _LP64
>
> We could remove the #ifdef _LP64, #endif commented pair.
Done.
> src/hotspot/cpu/x86/stubGenerator_x86_64_arraycopy.cpp line 735:
>
>> 733:
>> 734: if (MaxVectorSize == 64) {
>> 735: UnsafeCopyMemoryMark ucmm(this, !is_oop && !aligned, false, ucme_exit_pc);
>
> This is not related to Unsafe::setMemory?
No. Reviewing the code I saw this as a potential error, as `arraycopy_avx3_large` could cause a SIGBUS which wouldn't be caught. It conforms to the other instances of copy in the code. I think it was missed by the original developer.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/18555#discussion_r1561687577
PR Review Comment: https://git.openjdk.org/jdk/pull/18555#discussion_r1561688018
PR Review Comment: https://git.openjdk.org/jdk/pull/18555#discussion_r1561695561
More information about the core-libs-dev
mailing list