RFR: 8350864: C2: verify structural invariants of the Ideal graph [v3]

Marc Chevalier mchevalier at openjdk.org
Thu Sep 4 11:36:46 UTC 2025


On Mon, 25 Aug 2025 14:43:26 GMT, Emanuel Peter <epeter at openjdk.org> wrote:

>> src/hotspot/share/opto/graphInvariants.cpp line 469:
>> 
>>> 467:     assert(counted_loop != nullptr, "sanity");
>>> 468:     if (is_long) {
>>> 469:       if (counted_loop->is_CountedLoopEnd()) {
>> 
>> Sounds like head/tail confusion here. Call it `counted_loop_end`.
>
> Also: I would invert the check to `!counted_loop_end->is_LongCountedLoopEnd()`. Because you expect it to be a long end here. Subjective.

If you want. I don't think it's perfect because then the message might be less accurate: I don't know that
> A CountedLoopEnd is the backedge of a LongCountedLoop.

I rather know that
> The backedge of a LongCountedLoop is not a LongCountedLoopEnd

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

PR Review Comment: https://git.openjdk.org/jdk/pull/26362#discussion_r2321755027


More information about the hotspot-compiler-dev mailing list