RFR: 8333366: C2: CmpU3Nodes are not pushed back to worklist in PhaseCCP leading to non-fixpoint assertion failure
Tobias Hartmann
thartmann at openjdk.org
Mon Jun 3 05:34:01 UTC 2024
On Fri, 31 May 2024 17:34:41 GMT, Christian Hagedorn <chagedorn at openjdk.org> wrote:
> The current code to push uses back to the worklist during CCP handles `CmpU` nodes but misses `CmpU3` nodes. This leads to an assertion failure that we have not reached a fixpoint.
>
> The fix is straight forward to add a case for `CmpU3` at the case where we already handle `CmpU` nodes such that they can be added back to the worklist like `CmpU` nodes during CCP.
>
> This was found during the analysis of [JDK-8332920](https://bugs.openjdk.org/browse/JDK-8332920) by trying to simplify the regression test (thanks to @TobiHartmann!). To properly add regression tests for JDK-8332920 and avoid hitting this bug here with some flag combination, we should fix this first. I will soon propose a PR for JDK-8332920 as well.
>
> Thanks,
> Christian
Looks good to me too. I assume you verified that the test does not trigger JDK-8332920 with some VM flag combination in the CI?
-------------
Marked as reviewed by thartmann (Reviewer).
PR Review: https://git.openjdk.org/jdk/pull/19504#pullrequestreview-2092821848
More information about the hotspot-compiler-dev
mailing list