RFR: 8360000: RISC-V: implement aot

Hamlin Li mli at openjdk.org
Wed Jul 2 17:19:57 UTC 2025


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

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

Commit messages:
 - clean
 - revert
 - stop
 - clean
 - clean
 - fix stop
 - fix C1 guarantee(code_offset() - offset <= exception_handler_size(), overflow);
 - Merge branch 'aot-riscv' of https://github.com/Hamlin-Li/jdk into aot-riscv
 - Merge branch 'master' into aot-riscv
 - fix assert(is_instance(java_string)
 - ... and 3 more: https://git.openjdk.org/jdk/compare/9d060574...b70493e2

Changes: https://git.openjdk.org/jdk/pull/26101/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=26101&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8360000
  Stats: 107 lines in 7 files changed: 93 ins; 1 del; 13 mod
  Patch: https://git.openjdk.org/jdk/pull/26101.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/26101/head:pull/26101

PR: https://git.openjdk.org/jdk/pull/26101


More information about the hotspot-dev mailing list