RFR: 8339910: RISC-V: crc32 intrinsic with carry-less multiplication [v3]
Hamlin Li
mli at openjdk.org
Tue Dec 3 13:51:38 UTC 2024
On Tue, 3 Dec 2024 13:37:41 GMT, Hamlin Li <mli at openjdk.org> wrote:
>> src/hotspot/cpu/riscv/macroAssembler_riscv.cpp line 2048:
>>
>>> 2046: const int64_t single_table_size = 256;
>>> 2047: const int64_t table_num = 8; // 4 for scalar, 4 for plain vector
>>> 2048: const ExternalAddress table_addr = StubRoutines::crc_table_addr();
>>
>> Wouldn't it be easier and clearer to have a dedicated table?
>
> Make sense to me, I'll fix it later.
If we do it as you suggested, we could either add new api in shared class `StubRoutines` or we add and use something like StubRoutines::riscv::vclmul_crc_table() directly, but seems either ways are not good enough, and I see other platforms are using the similar pattern as the current patch.
So maybe we should keep it as it is now?
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/22475#discussion_r1867753596
More information about the hotspot-dev
mailing list