RFR: 8295968: RISC-V: Rename some assembler intrinsic functions for RVV 1.0.
Zixian Cai
zcai at openjdk.org
Thu Oct 27 07:07:20 UTC 2022
On Thu, 27 Oct 2022 02:23:13 GMT, Dingli Zhang <dzhang at openjdk.org> wrote:
> Hi,
>
> Some instructions previously had old assembler notation, but were renamed in RVV1.0[1][2] to be consistent with scalar instructions. We'd better keep the name the same as the new assembler mnemonics.
>
> [1] https://github.com/riscv/riscv-v-spec/blob/v1.0/v-spec.adoc#152-vector-count-population-in-mask-vcpopm
> [2] https://github.com/riscv/riscv-v-spec/blob/v1.0/v-spec.adoc#151-vector-mask-register-logical-instructions
>
> Please take a look and have some reviews. Thanks a lot.
>
> ## Testing:
>
> - hotspot and jdk tier1 on unmatched board without new failures
Not a reviewer. The changes match the spec. But perhaps it's a good idea to still keep the old names for compatibility per the spec. See line comments.
src/hotspot/cpu/riscv/assembler_riscv.hpp line 1139:
> 1137:
> 1138: // Vector Mask
> 1139: INSN(vcpop_m, 0b1010111, 0b010, 0b10000, 0b010000);
> The assembler instruction alias `vpopc.m` is being retained for software compatibility.
src/hotspot/cpu/riscv/assembler_riscv.hpp line 1495:
> 1493: // Vector Mask-Register Logical Instructions
> 1494: INSN(vmxnor_mm, 0b1010111, 0b010, 0b1, 0b011111);
> 1495: INSN(vmorn_mm, 0b1010111, 0b010, 0b1, 0b011100);
> The old `vmandnot` and `vmornot` mnemonics can be retained as assembler aliases for compatibility.
-------------
PR: https://git.openjdk.org/jdk/pull/10878
More information about the hotspot-compiler-dev
mailing list