RFR: 8309254: Implement fast-path for ASCII-compatible CharsetEncoders on RISC-V

Fei Yang fyang at openjdk.org
Thu Jun 1 06:51:04 UTC 2023


On Thu, 1 Jun 2023 05:45:14 GMT, Dingli Zhang <dzhang at openjdk.org> wrote:

> [JDK-8274242](https://bugs.openjdk.org/browse/JDK-8274242) propose to extend the x86 ISO-8859-1 encoding intrinsic to work 
> also for ASCII-compatible encodings, which helps speeding up various 
> CharsetEncoders. Implementing a similar intrinsic should be considered on 
> RISC-V as well.
> 
> The instruct log with -XX:+PrintOptoAssembly output looks like:
> 
> 06e +   Encode ISO array R12, R11, R13 -> R10 # KILL R12, R11, R13, R7, V0-V3
> 
> 
> ## Testing:
> qemu w/ UseRVV:
> - [x] Tier1 tests (release)
> - [x] Tier2 tests (release)
> - [x] Tier3 tests (release)
> - [x] test/hotspot/jtreg/compiler/intrinsics/string/TestEncodeIntrinsics.java

src/hotspot/cpu/riscv/riscv_v.ad line 2847:

> 2845:          TEMP v0, TEMP v1, TEMP v2, TEMP v3, TEMP tmp);
> 2846: 
> 2847:   format %{ "Encode ISO array $src, $dst, $len -> $result # KILL $src, $dst, $len, $tmp, V0-V3"%}

Nit: missing space on LHS of `%}`

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

PR Review Comment: https://git.openjdk.org/jdk/pull/14256#discussion_r1212667154


More information about the hotspot-compiler-dev mailing list