[jdk11u-dev] RFR: 8284358: Unreachable loop is not removed from C2 IR, leading to a broken graph

Goetz Lindenmaier goetz at openjdk.org
Tue Oct 11 15:38:05 UTC 2022


I backport this for parity with 11.0.18-oracle.

I had to resolve this.
The only reason for this I spotted is the difference
in this comment:
// Eagerly replace phis with top to avoid regionless phis.

I added include vectset.hpp.

The new code needs set_req_X with argument PhaseGVN.
I added 
  void set_req_X( uint i, Node *n, PhaseGVN *igvn );
  to node.hpp and the implementation to phaseX.cpp.

I added an arena to the VectorSet constructor.

Flag StressIGVN is not available in 11.
I removed it from the test and reduced the
test cases accordingly.
Test passes with and without the fix.

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

Commit messages:
 - Backport 95497772e7207b5752e6ecace4a6686df2b45227

Changes: https://git.openjdk.org/jdk11u-dev/pull/1443/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk11u-dev&pr=1443&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8284358
  Stats: 294 lines in 4 files changed: 255 ins; 3 del; 36 mod
  Patch: https://git.openjdk.org/jdk11u-dev/pull/1443.diff
  Fetch: git fetch https://git.openjdk.org/jdk11u-dev pull/1443/head:pull/1443

PR: https://git.openjdk.org/jdk11u-dev/pull/1443


More information about the jdk-updates-dev mailing list