RFR: 8339910: RISC-V: crc32 intrinsic with carry-less multiplication [v3]

Ludovic Henry luhenry at openjdk.org
Tue Dec 3 12:51:43 UTC 2024


On Mon, 2 Dec 2024 13:54:18 GMT, Hamlin Li <mli at openjdk.org> wrote:

>> Hi,
>> Can you review this patch to implement CRC32 with `vclmul` (Zvbc)?
>> Thanks!
>> 
>> 
>> ## Test
>> test/hotspot/jtreg/compiler/intrinsics/zip/TestCRC32.java, 
>> test/jdk/java/util/zip/TestCRC32.java
>
> Hamlin Li has updated the pull request incrementally with one additional commit since the last revision:
> 
>   add some background description

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?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/22475#discussion_r1867667506


More information about the hotspot-dev mailing list