[riscv-port] RFR: 8281632: riscv: Improve interpreter stack banging
yadongwang at openjdk.java.net
Tue Feb 22 12:39:25 UTC 2022
On Tue, 22 Feb 2022 06:41:20 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:
>> With reference to https://bugs.openjdk.java.net/browse/JDK-8072070, there is the same issue on the riscv platform.
>> Every time we enter a method in interpreter, we bang a lot of stack ahead for shadow zone checks. I believe this could be made significantly better, e.g. by checking how far away we are from the stack_overflow_limit.
>> Hotspot/jdk tier1 passed on unmatched, and all jtreg cases were tested on Qemu without new failures.
>> Performed the performance regression test in SPECjvm2008 sunflow, and achieved 17% improvement in the interpreter-only mode.
> src/hotspot/cpu/riscv/templateInterpreterGenerator_riscv.cpp line 910:
>> 908: __ stop("shadow zone safe limit is not initialized");
>> 909: __ bind(L_good_limit);
>> 910: #endif
> The x86 patch also verifies `shadow_zone_growth_watermark()`, do you want to do the same?
Yes, I missed the logic.
More information about the riscv-port-dev