RFR: 8373343: C2: verify AddP base input only set for heap addresses

Dean Long dlong at openjdk.org
Fri Dec 12 23:47:50 UTC 2025


On Thu, 11 Dec 2025 15:31:55 GMT, Roland Westrelin <roland at openjdk.org> wrote:

> The base input of `AddP` is expected to only be set for heap accesses
> but I noticed some inconsistencies so I added an assert in the `AddP`
> constructor and fixed issues that it caught. AFAFICT, the
> inconsistencies shouldn't create issues.

src/hotspot/share/opto/memnode.cpp line 4126:

> 4124:     Node* base = dest;
> 4125:     if (phase->type(dest)->isa_oopptr() == nullptr) {
> 4126:       base = phase->C->top();

How is this possible?  Aren't all arrays in the heap?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/28769#discussion_r2615860774


More information about the hotspot-compiler-dev mailing list