[riscv-port] RFR: 8281967: riscv: Intrinsify bigIntegerLeftShift [v3]

Fei Yang fyang at openjdk.java.net
Tue Mar 1 03:34:37 UTC 2022


On Tue, 1 Mar 2022 01:53:19 GMT, Taiping Guo <tguo at openjdk.org> wrote:

>> BigInteger intrinsic: bigIntegerLeftShift intrinsic is missed in current vm. It should be implemented.
>> Since that there is no hardware that supports rvv1.0 for now, I used `test/jdk/java/math/BigInteger/ModPow.java` testcase to compare the number of instructions executed with and without intrinsic. The number of instructions executed for the method `shiftLeftImplWorker` compiled by C2 without intrinsic is about 9.2x ( vlen=256 ) that of version with intrinsic.
>> 
>> Full jtreg tests on qemu are passed without new failures.
>
> Taiping Guo has updated the pull request incrementally with one additional commit since the last revision:
> 
>   fix typo

Changes requested by fyang (Lead).

src/hotspot/cpu/riscv/stubGenerator_riscv.cpp line 3773:

> 3771:     }
> 3772: 
> 3773:     if (UseRVV) {

I think we need another option to control this, maybe UseRVVForBigIntegerShiftIntrinsics. So that users can still control whether to enable this intrinsic when RVV is there.

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

PR: https://git.openjdk.java.net/riscv-port/pull/61


More information about the riscv-port-dev mailing list