RFR: 8369258: C2: enable ReassociateInvariants for all loop types [v2]

Quan Anh Mai qamai at openjdk.org
Wed Oct 15 09:42:31 UTC 2025


On Mon, 13 Oct 2025 14:48:40 GMT, Roland Westrelin <roland at openjdk.org> wrote:

>> Currently ReassociateInvariants is only enabled for int counted
>> loops. I noticed, enabling it for long counted loops helps RCE. It
>> also seems like something that would help any loop. I propose enabling
>> it for all inner loops.
>
> Roland Westrelin has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains four additional commits since the last revision:
> 
>  - review
>  - Merge branch 'master' into JDK-8369258
>  - test fixes
>  - test and fix

Marked as reviewed by qamai (Committer).

test/hotspot/jtreg/compiler/loopopts/TestReassociateInvariants.java line 63:

> 61:     @IR(failOn = { IRNode.COUNTED_LOOP, IRNode.LONG_COUNTED_LOOP })
> 62:     @IR(counts = { IRNode.LOOP, "1" })
> 63:     @Arguments(values = { Argument.NUMBER_42, Argument.NUMBER_42 })

What are we verifying here, should this fail on some kind of range check?

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

PR Review: https://git.openjdk.org/jdk/pull/27666#pullrequestreview-3339386891
PR Review Comment: https://git.openjdk.org/jdk/pull/27666#discussion_r2431866113


More information about the hotspot-compiler-dev mailing list