RFR: 8345156: C2: Add bailouts next to a few asserts
Vladimir Kozlov
kvn at openjdk.org
Mon Dec 2 19:41:39 UTC 2024
On Mon, 2 Dec 2024 13:07:57 GMT, Daniel Skantz <duke at openjdk.org> wrote:
> This patch associates product bailouts with a few existing debug asserts. The criteria are that there have been product bugs associated with failing these asserts in the past, and that there are not too many callers to the method where the compilation is now cancelled or any measurable impact on compilation time.
>
> Testing: T1-T4 and extra testing. Tested compilation time with -XX:+CITime on performance benchmarks and the effect was not measurable.
How you found places where to add `failing()` check?
To be useful it should be preceded by a failure recording.
src/hotspot/share/opto/block.cpp line 1359:
> 1357: if (n->needs_anti_dependence_check()) {
> 1358: verify_anti_dependences(block, n);
> 1359: if (C->failing()) {
I don't see where `record_failure()` is called from `verify_anti_dependences()`.
src/hotspot/share/opto/gcm.cpp line 1535:
> 1533: // defs in new LCA block.
> 1534: LCA = insert_anti_dependences(LCA, self);
> 1535: if (C->failing()) {
Same here. I don't see where `record_failure()` is called from `insert_anti_dependences()`.
And there are a lot of assets there.
-------------
PR Review: https://git.openjdk.org/jdk/pull/22482#pullrequestreview-2473737363
PR Review Comment: https://git.openjdk.org/jdk/pull/22482#discussion_r1866499303
PR Review Comment: https://git.openjdk.org/jdk/pull/22482#discussion_r1866500091
More information about the hotspot-compiler-dev
mailing list