[jdk16] RFR: 8259641: C2: assert(early->dominates(LCA)) failed: early is high enough
Christian Hagedorn
chagedorn at openjdk.java.net
Thu Jan 14 09:42:05 UTC 2021
On Thu, 14 Jan 2021 08:05:25 GMT, Roland Westrelin <roland at openjdk.org> wrote:
> For the fix of 8258393 that causes this regression, I wrote that the
> goal was:
>
> "I propose to be less conservative in anti-dependence analysis for
> Phis. For a Phi, when computing the LCA, I think it's sufficient to
> only consider region's inputs that we actually reach by following the
> memory edges and that's what I propose here."
>
> But that's not what the logic I added does. It checks whether a Phi
> input should be taken into account by checking whether it's in the
> worklist but the worklist doesn't include mem, the memory state from
> which we started.
That looks good to me!
test/hotspot/jtreg/compiler/loopopts/TestBrokenAntiDependenceWithPhi.java line 30:
> 28: *
> 29: * @run main/othervm -Xcomp -XX:CompileOnly=TestBrokenAntiDependenceWithPhi TestBrokenAntiDependenceWithPhi
> 30: *
Empty line can be removed
test/hotspot/jtreg/compiler/loopopts/TestBrokenAntiDependenceWithPhi.java line 32:
> 30: *
> 31: */
> 32:
You could move the test into the `compiler.loopopts` package.
-------------
Marked as reviewed by chagedorn (Reviewer).
PR: https://git.openjdk.java.net/jdk16/pull/121
More information about the hotspot-compiler-dev
mailing list