[jdk11u-dev] RFR: 8275330: C2: assert(n->is_Root() || n->is_Region() || n->is_Phi() || n->is_MachMerge() || def_block->dominates(block)) failed: uses must be dominated by definitions
Martin Doerr
mdoerr at openjdk.java.net
Thu Apr 7 13:26:39 UTC 2022
On Tue, 5 Apr 2022 11:58:31 GMT, Roland Westrelin <roland at openjdk.org> wrote:
> Id like to backport this because:
> - it helps for the backport of 8280799 (С2: assert(false) failed: cyclic dependency prevents range check elimination) that we've encountered with 11
> - while I can't reproduce the failure with 11, I see no reason the bug wouldn't exit in 11 as well (so not critical for 11 but nice to have)
>
> The patch doesn't apply cleanly. Part of it is due to context changes. The rest is the changes in macro.cpp and opaquenode.[ch]pp that I dropped: the reason for this group of changes was to delay removal of Opaque4 nodes but 11 doesn't have the same logic as later releases and already removes Opaque4 nodes as late as possible.
>
> I tested this with tier1 and some compile the world/fuzzer tests.
I think the Opaque4 related parts are not required for the correctness of this backport. So, it makes sense to me that you have omitted them. Rest looks good and our nightly tests have passed.
-------------
Marked as reviewed by mdoerr (Reviewer).
PR: https://git.openjdk.java.net/jdk11u-dev/pull/1002
More information about the jdk-updates-dev
mailing list