RFR: 8339643: Port JEP 404 to RISC-V

Kelvin Nilsen kdnilsen at openjdk.org
Thu Sep 12 23:56:17 UTC 2024


On Fri, 6 Sep 2024 11:18:35 GMT, Fei Yang <fyang at openjdk.org> wrote:

> The riscv64 implementation of [JDK-8337511](https://bugs.openjdk.org/browse/JDK-8337511) Implement JEP-404: Generational Shenandoah (Experimental).
> This is mainly adapted from the changes in aarch64.
> 
> Testing
> - [x] Gtest (release & fastdebug)
> - [x] hotspot_gc_shenandoah (release & fastdebug)

src/hotspot/cpu/riscv/gc/shenandoah/shenandoahBarrierSetAssembler_riscv.cpp line 579:

> 577:   __ bind(L_loop);
> 578:   __ add(tmp, start, count);
> 579:   __ sb(zr, Address(tmp));

Do we want to condition behavior on UseCondCardMark?  Other architectures are considering this.

src/hotspot/share/gc/shenandoah/mode/shenandoahGenerationalMode.cpp line 36:

> 34: 
> 35: #if !(defined AARCH64 || defined AMD64 || defined IA32 || defined PPC64 || RISCV64)
> 36:   vm_exit_during_initialization("Shenandoah Generational GC is not supported on this platform.");

Should RISCV64 use the same style of macro test as the other architectures?  "|| defined RISCV64"

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

PR Review Comment: https://git.openjdk.org/shenandoah/pull/493#discussion_r1757726254
PR Review Comment: https://git.openjdk.org/shenandoah/pull/493#discussion_r1757710192


More information about the shenandoah-dev mailing list