RFR: 8358572: C1 hits "need debug information" assert with -XX:-DeoptC1

Manuel Hässig mhaessig at openjdk.org
Tue Jun 24 07:03:32 UTC 2025


On Thu, 19 Jun 2025 14:53:50 GMT, Manuel Hässig <mhaessig at openjdk.org> wrote:

> The debug flag `DeoptC1` is required to be true for dependency recording by an assert, but not all uses of dependency recording in C1 are guarded with `if (DeoptC1)`. Hence, running `java -XX:-DeoptC1 -version`fails at the aforementioned assert.
> 
> This error has been present unconditionally in debug builds since dependency recording was enabled outside of JVMTI in [JDK-8324241]([https://bugs.openjdk.org/browse/JDK-8324241) and at least since JDK7 with JVMTI. Because this issue was discovered by searching for crashes of `java -version` plus some other flag, which indicates this flag has not been used in at least one year since every invocation with `-XX:-DeoptC1`crashes. Further, `DeoptC1` is only used for guarding dependency recording in three places. Thus, this PR removes the `DeoptC1` flag.
> 
> This was tested with:
>  - [ ] [Github Actions](https://github.com/mhaessig/jdk/actions/runs/15760179189)
>  - [x] tier1, tier2 plus Oracle internal testing on Oracle supported platforms

Thank you for your reviews!

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

PR Comment: https://git.openjdk.org/jdk/pull/25900#issuecomment-2999067741


More information about the hotspot-compiler-dev mailing list