RFR: 8360000: RISC-V: implement aot [v5]

Fei Yang fyang at openjdk.org
Tue Jul 15 02:47:40 UTC 2025


On Mon, 14 Jul 2025 11:46:22 GMT, Hamlin Li <mli at openjdk.org> wrote:

>> Hi,
>> Can you help to review this patch?
>> 
>> https://openjdk.org/jeps/483 introduced aot (class loading/linking) and subsequent prs introduced more features related to it, like preserve adapters(c2i/i2c) and runtime blobs in AOT code cache.
>> 
>> Riscv should support these features and resolve relative issues.
>> 
>> ## Test
>> 
>> ### jtreg
>> 
>> run tier1/2/3 and hotspot_cds tests, no new failure found compared to master jdk. 
>> 
>> ### Performance
>> 
>> perf command to run the simplest Hello world java program:
>> * (perf stat -r 100 ${JAVA_HOME}/bin/java -XX:AOTCache=$AOT_CACHE -cp $CLASS_PATH Hello > /dev/null) 2>&1 | grep elapsed
>> 
>> perf data:
>> * (with patch): 0.181730 +- 0.000296 seconds time elapsed ( +- 0.16% )
>> * (without patch): 0.196627 +- 0.000227 seconds time elapsed ( +- 0.12% )
>> 
>> Thanks
>
> Hamlin Li has updated the pull request incrementally with one additional commit since the last revision:
> 
>   minor

The updated changes seems fine to me. But I am not an AOT expert.
I agree with @adinn that it might be more reasonable & safer to implement this in the Leyden premain branch. I see the Leyden people are upstreaming work regularly. Especially, this enables existing AOT tests which might break if we cannot sync in time with latest work in that branch which may involve more tweaks on the CPU side and bring more AOT tests.

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

Marked as reviewed by fyang (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/26101#pullrequestreview-3018329436


More information about the hotspot-dev mailing list