RFR: 8373524: C2: no reachable node should have no use

Roland Westrelin roland at openjdk.org
Tue Dec 16 10:10:52 UTC 2025


The failure occurs because `PhiNode::Ideal` uses `set_req` to update
an input of a `Phi`. That causes the previous input to be disconnected
but because of the use of `set_req`, the previous input that has no
use is not enqueued for `igvn` to be reclaimed. The fix is to use
`set_req_X` instead. I replaced uses of `set_req` with `set_req_X` in
`PhiNode::Ideal` where I thought it made sense.

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

Commit messages:
 - more
 - test
 - more
 - more
 - fix

Changes: https://git.openjdk.org/jdk/pull/28841/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=28841&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8373524
  Stats: 91 lines in 2 files changed: 88 ins; 0 del; 3 mod
  Patch: https://git.openjdk.org/jdk/pull/28841.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/28841/head:pull/28841

PR: https://git.openjdk.org/jdk/pull/28841


More information about the hotspot-compiler-dev mailing list