RFR: 8355638: Allow -Xlog:aot to be used as an alias for -Xlog:cds when using AOT cache [v3]

Vladimir Kozlov kvn at openjdk.org
Thu May 8 01:24:59 UTC 2025


On Wed, 7 May 2025 18:13:41 GMT, Ioi Lam <iklam at openjdk.org> wrote:

>> *Specification:*
>> 
>> When the JVM is started with any of the following options: AOTCache, AOTCacheOutput, AOTConfiguration, AOTMode:
>> 
>> - Any `-Xlog` options that starts with the `aot` tag should also match any `LogTagSets` whose first tag is `LogTag::_cds`
>> - When printing a `LogTagSet` whose first tag is `LogTag::_cds`, if its `tags` decoration is to be printed, then the first tag in the decoration should be printed as `aot`.
>> 
>> *Examples:*
>> 
>> Control case -- this is an example of an old "cds" log. The decoration should be printed as "cds" to be backwards compatible
>> 
>> $ java -Xshare:auto -Xlog:cds --version | grep trying
>> [0.003s][info][cds] trying to map /jdk3/bld/vox/images/jdk/lib/server/classes.jsa
>> 
>> 
>> "aot" can be used to select the "cds" log, but the log will be printed with "aot" as its decoration
>> 
>> $ java -XX:AOTMode=auto -Xlog:aot --version | grep trying
>> [0.015s][info][aot] trying to map /jdk3/bld/vox/images/jdk/lib/server/classes.jsa
>> 
>> 
>> When using new -XX:AOT flags, even if you specify -Xlog:cds, the output will use "aot" decoration
>> 
>> $ java -XX:AOTMode=auto -Xlog:cds --version | grep tryi
>> [0.004s][info][aot] trying to map /jdk3/bld/vox/images/jdk/lib/server/classes.jsa
>> 
>> 
>> When using new -XX:AOT flags, error messages should be logged with "aot" decoration even when no -Xlog flags are specified
>> 
>> $ java -XX:AOTMode=auto -XX:AOTCache=nofile.aot --version
>> [0.009s][error][aot] An error has occurred while processing the AOT cache. Run with -Xlog:aot for details.
>> [0.009s][error][aot] Loading AOT cache failed: nofile.aot
>> java 25-internal 2025-09-16
>> Java(TM) SE Runtime Environment (build 25-internal-adhoc.iklam.vox)
>> Java HotSpot(TM) 64-Bit Server VM (build 25-internal-adhoc.iklam.vox, mixed mode)
>
> Ioi Lam has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 14 additional commits since the last revision:
> 
>  - cds+aot+load -> aot+load
>  - Merge branch 'master' into 8355638-xlog-aot-as-alias-for-xlog-cds
>  - @jdksjolen comment
>  - Fixed comment
>  - clean up of existing UL logs for cds
>  - Fixed test cases
>  - Merge branch 'master' into 8355638-xlog-aot-as-alias-for-xlog-cds
>  - Much more simplification
>  - Much simplified
>  - More tightening .... but this may be the wrong approach
>  - ... and 4 more: https://git.openjdk.org/jdk/compare/1bfc597d...b772b3d4

I found typo UL ouput in filemap.cpp: [arrow_klass_pointer_bits](https://github.com/openjdk/jdk/blob/master/src/hotspot/share/cds/filemap.cpp#L1513)

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

Changes requested by kvn (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/24895#pullrequestreview-2823587951


More information about the hotspot-runtime-dev mailing list