RFR: 8374435: assert(addp->is_AddP()) failed: must be AddP during EA with -XX:-UseCompressedOops [v2]

Quan Anh Mai qamai at openjdk.org
Tue Jan 13 08:38:43 UTC 2026


> Hi,
> 
> This PR fixes the assert in `ConnectionGraph::get_addp_base` during escape analysis. The issue here is that, after splitting a `Load` through a `Phi`, we try to adjust the `ConnectionGraph` as the split creates new nodes. As we visit each input of `data_phi`, we fail to take into consideration the possibility that the input can be folded to a `Load` but not from an `AddP`. This is the case for `Object::getClass`, as we load the `OopHandle` from the `Klass` object, then load the class mirror from that `OopHandle`.
> 
> Since we are loading from raw memory, the base is not a scalar replaceable Java object. Similar to the case below, we are done processing this input.
> 
> Please take a look and leave your reviews, thanks a lot.

Quan Anh Mai has updated the pull request incrementally with one additional commit since the last revision:

  rename test file

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/29177/files
  - new: https://git.openjdk.org/jdk/pull/29177/files/06145038..ab7a2454

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=29177&range=01
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=29177&range=00-01

  Stats: 3 lines in 1 file changed: 0 ins; 0 del; 3 mod
  Patch: https://git.openjdk.org/jdk/pull/29177.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/29177/head:pull/29177

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


More information about the hotspot-compiler-dev mailing list