RFR: 8343380: C2: assert(iff->in(1)->is_OpaqueNotNull()) failed: must be OpaqueNotNull

Christian Hagedorn chagedorn at openjdk.org
Thu Oct 31 12:33:01 UTC 2024


The assert added in [JDK-8342043](https://bugs.openjdk.org/browse/JDK-8342043) turns out to be strong as shown with the test cases. I was unsure about that in the first place when I added it here:

https://github.com/openjdk/jdk/pull/21608#discussion_r1808732859

The assert was more of a best guess and just an additional guarantee that does not provide any benefit. I've found two cases where we have once an `OuterStripMinedLoopEnd` node and once a `ParsePredicate` in `ConnectionGraph::can_reduce_check_users()` which trigger the assert. How we end up with such a graph is explained in the comments at the test cases. 

I don't think it's worth to tweak the assert as we simply bail out afterwards anyway. I therefore propose to simply get rid of the assert again.

Thanks,
Christian

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

Commit messages:
 - 8343380: C2: assert(iff->in(1)->is_OpaqueNotNull()) failed: must be OpaqueNotNull

Changes: https://git.openjdk.org/jdk/pull/21805/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21805&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8343380
  Stats: 111 lines in 2 files changed: 108 ins; 2 del; 1 mod
  Patch: https://git.openjdk.org/jdk/pull/21805.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/21805/head:pull/21805

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


More information about the hotspot-compiler-dev mailing list