[jdk16] RFR: 8259641: C2: assert(early->dominates(LCA)) failed: early is high enough

Roland Westrelin roland at openjdk.java.net
Thu Jan 14 08:25:18 UTC 2021


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.

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

Commit messages:
 - whitespaces
 - test & fix

Changes: https://git.openjdk.java.net/jdk16/pull/121/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk16&pr=121&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8259641
  Stats: 96 lines in 2 files changed: 95 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jdk16/pull/121.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk16 pull/121/head:pull/121

PR: https://git.openjdk.java.net/jdk16/pull/121


More information about the hotspot-compiler-dev mailing list