RFR: JDK-8292561: Make "ReplayCompiles" a diagnostic product switch
Thomas Stuefe
stuefe at openjdk.org
Fri Aug 19 08:21:09 UTC 2022
See discussion: https://mail.openjdk.org/pipermail/hotspot-compiler-dev/2022-August/057988.html
Making ReplayCompiles a (diagnostic) runtime switch can help when facing problems with shipped release VMs:
- Investigate the effects of compiler errors in shipped VMs to estimate the bug impact
- Investigate if a given build is affected by a compiler bug
Making the option product increases libjvm.so text size by 54kb (Linux x64). No measurable runtime overhead.
Tests: Almost all tests in compiler/ciReplay generate replay files by inducing a crash with `-XX:CICrashAt`. That won't work in release builds. I added a simple test that checks that invalid replay files are correctly refused, and that test can also be done on a release VM. So we at least have a test for release that checks argument parsing.
(Note: I have https://github.com/openjdk/jdk/pull/9891 open, which could in the future serve as an alternative to CICrashAt by limiting the compiler arena).
-------------
Commit messages:
- Provide basic test for release
- make ReplayCompilers available in release
Changes: https://git.openjdk.org/jdk/pull/9935/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=9935&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8292561
Stats: 92 lines in 10 files changed: 72 ins; 17 del; 3 mod
Patch: https://git.openjdk.org/jdk/pull/9935.diff
Fetch: git fetch https://git.openjdk.org/jdk pull/9935/head:pull/9935
PR: https://git.openjdk.org/jdk/pull/9935
More information about the hotspot-compiler-dev
mailing list