C1 has rudimentary conditional expression elimination and graph 
canonicalization. However, those optimizations on If nodes currently fold 
substitutability checks to pointer comparisons loosing value object semantics 
for acmp. This PR fixes this.

Testing:
 - [x] tier1,tier2,tier3,valhalla-comp-stress with `--enable-preview`

A lot of credit for this PR goes to @TobiHartmann who developed the inital fix.

---------
- [x] I confirm that I make this contribution in accordance with the [OpenJDK 
Interim AI Policy](https://openjdk.org/legal/ai).

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

Commit messages:
 - Fix JDK-8384871

Changes: https://git.openjdk.org/valhalla/pull/2500/files
  Webrev: https://webrevs.openjdk.org/?repo=valhalla&pr=2500&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8384871
  Stats: 96 lines in 3 files changed: 93 ins; 0 del; 3 mod
  Patch: https://git.openjdk.org/valhalla/pull/2500.diff
  Fetch: git fetch https://git.openjdk.org/valhalla.git pull/2500/head:pull/2500

PR: https://git.openjdk.org/valhalla/pull/2500

Reply via email to