Integrated: 8375055: C2: Better dead loop detection printout
Aleksey Shipilev
shade at openjdk.org
Wed Jan 14 07:25:30 UTC 2026
On Tue, 13 Jan 2026 08:37:16 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:
> Chasing the maddeningly intermittent CTW failure. When C2 fails dead loop verification checks, it prints:
>
>
> # Internal Error (/home/shipilev/shipilev-jdk/src/hotspot/share/opto/phaseX.cpp:784), pid=64465, tid=917
> # assert(no_dead_loop) failed: dead loop detected
>
>
> It also dumps the bad node graph to tty. This is not really convenient in automated testing and/or driver tests like CTW. With this fix, we now print:
>
>
> # Internal Error (/home/shade/trunks/jdk/src/hotspot/share/opto/phaseX.cpp:776), pid=973305, tid=973372
> # fatal error: Dead loop detected, node references itself: CastPP
>
>
> ...which allows to have more clues where things may go wrong, and allows to classify the failures better as well.
>
> Additional testing:
> - [x] Ad-hoc crashes with selected seeds
> - [x] Linux x86_64 server fastdebug, `hotspot_compiler`
> - [x] Linux x86_64 server fastdebug, `applications/ctw/modules`
This pull request has now been integrated.
Changeset: 1b6c2bdd
Author: Aleksey Shipilev <shade at openjdk.org>
URL: https://git.openjdk.org/jdk/commit/1b6c2bdd7b57891ed35e3c067871d2c0bf282824
Stats: 30 lines in 1 file changed: 12 ins; 2 del; 16 mod
8375055: C2: Better dead loop detection printout
Reviewed-by: chagedorn, qamai
-------------
PR: https://git.openjdk.org/jdk/pull/29185
More information about the hotspot-compiler-dev
mailing list