RFR: 8347499: C2: Make `PhaseIdealLoop` eliminate more redundant safepoints in loops [v7]

Roland Westrelin roland at openjdk.org
Mon Oct 27 15:01:11 UTC 2025


On Mon, 27 Oct 2025 14:41:38 GMT, Roland Westrelin <roland at openjdk.org> wrote:

>> Qizheng Xing has updated the pull request incrementally with two additional commits since the last revision:
>> 
>>  - Update microbench
>>  - Add IR tests for nested loops
>
> Looks good to me.

> One question I have, maybe @rwestrel can weight in here too: how does all of this play with `LongCountedLoops`? I suppose they decay to int loops at some point...

Right. But that's only guaranteed if there's a safepoint right above the exit condition of the long counted loop. I don't think that change makes a difference there given, for `LongCountedLoop`s, `IdealLoopTree::remove_safepoints()` is called with `keep_one = true`.

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

PR Comment: https://git.openjdk.org/jdk/pull/23057#issuecomment-3451720944


More information about the hotspot-compiler-dev mailing list