On Thu, 9 Mar 2023 06:39:47 GMT, Feilong Jiang <fji...@openjdk.org> wrote:
>> @vnkozlov Yes, this is true. The only other existing port of this code is >> RISCV. However, to fix that port properly, someone needs to repeat the >> experiment on RISCV in order to figure out what the base size and the size >> per argument should be. >> >> I don't have access to a RISCV machine, so I figured I would file a followup >> issue for the RISCV maintainers to fix separately. >> >> @feilongjiang Could you comment on this? If you could figure out the needed >> sizes for RISCV I could add the needed changes to this patch. Otherwise I >> could file a followup issue if that seems more convenient. TIA > >> @feilongjiang Could you comment on this? If you could figure out the needed >> sizes for RISCV I could add the needed changes to this patch. Otherwise I >> could file a followup issue if that seems more convenient. TIA > > Yes, I will take a look to find out the needed size for RISCV. > > Update: > When disabling RVC (compressed instructions) on fastdebug build, > `LogCompilation` reveals that downcall stub base will cost ~200 bytes, 256 > looks good enough. But for upcall stubs, we need ~1700 bytes when Shenandoah > GC is enabled, so 2048 would be a safe base size. `jdk_foreign` on RISC-V > board are all passed (release & fastdebug) with the fix of #12950. > > Here is the patch: > [riscv.txt](https://github.com/openjdk/jdk/files/10938297/riscv.txt) @feilongjiang Thanks! I've added the riscv changes. ------------- PR: https://git.openjdk.org/jdk/pull/12908