On Mon, 12 May 2025 21:17:10 GMT, Ioi Lam <ik...@openjdk.org> wrote: >> This is the implementation of the draft [JEP: Ahead-of-time Command Line >> Ergonomics](https://bugs.openjdk.org/browse/JDK-8350022) >> >> - Implemented new flag `AOTCacheOutput`, which can be used to create an AOT >> cache using the "one-command workflow" >> - Added processing of the `JAVA_AOT_OPTIONS` environment variable that can >> supply extra VM options when creating an AOT cache >> - Added `%p` substitution for `AOTCache`, `AOTCacheOutput`, and >> `AOTConfiguration` options >> >> Please see the [JEP](https://bugs.openjdk.org/browse/JDK-8350022) and >> [CSR](https://bugs.openjdk.org/browse/JDK-8356010) for detailed >> specification. >> >> Examples: >> >> >> # Create an AOT cache with a single command: >> $ java -cp HelloWorld.jar -XX:AOTMode=record -XX:AOTCacheOutput=foo.aot >> HelloWorld >> Hello World >> Temporary AOTConfiguration recorded: foo.aot.config >> Launching child process /usr/bin/java to assemble AOT cache foo.aot using >> configuration foo.aot.config >> Picked up JAVA_TOOL_OPTIONS: -Djava.class.path=HelloWorld.jar >> -XX:AOTCacheOutput=foo.aot -XX:AOTConfiguration=foo.aot.config >> -XX:AOTMode=create >> Reading AOTConfiguration foo.aot.config and writing AOTCache foo.aot >> AOTCache creation is complete: foo.aot 10240000 bytes >> >> # Create logging file for the AOT cache assembly phase >> $ export AOT_TOOL_COMMAND=-Xlog:cds:file=log.txt >> $ java -cp HelloWorld.jar -XX:AOTMode=record -XX:AOTCacheOutput=foo.aot >> HelloWorld >> >> >> Note: the child process is launched with Java API because the HotSpot native >> APIs are not sufficient (no way to set env vars for child process). > > Ioi Lam has updated the pull request with a new target base due to a merge or > a rebase. The pull request now contains 14 commits: > > - Merge branch 'master' into 8355798-implement-leyden-ergo-jep-8350022 > - Update java man page > - Use one-step training by default in AOT testing > - Implemented JTREG=AOT_JDK=(onestep|twostep); default is onestep > - @ashu-mehra comments; renamed test to JavaAOTOptionsEnvVar.java > - @vnkozlov comments > - AOT_TOOL_OPTIONS -> JAVA_AOT_OPTIONS > - Remove %t restriction > - Added %p substitution; clean up > - Merge branch 'master' into 8355798-implement-leyden-ergo-jep-8350022 > - ... and 4 more: https://git.openjdk.org/jdk/compare/45dfc2c6...b044953e
This change in functionality for the `JTREG=AOT_JDK` makefile argument should probably be mentioned somewhere in `doc/testing.md`. ------------- PR Review: https://git.openjdk.org/jdk/pull/24942#pullrequestreview-2834697107