RFR: 8374969: Incorrect results of LoadStoreNode::adr_type and SCMemProj::adr_type

Quan Anh Mai qamai at openjdk.org
Mon Jan 12 08:24:38 UTC 2026


On Mon, 12 Jan 2026 07:23:27 GMT, Manuel Hässig <mhaessig at openjdk.org> wrote:

>> Hi,
>> 
>> This is extracted from #28570 
>> 
>> This PR fixes the return value of `LoadStoreNode::adr_type` and `SCMemProj::adr_type`. For the former, it is trivial that we can do what `MemNode` does. And for the latter, the implementation of `ProjNode::adr_type` is adequate.
>> 
>> Please kindly review, thanks a lot.
>
> src/hotspot/share/opto/memnode.cpp line 3923:
> 
>> 3921:   init_req(MemNode::ValueIn, val);
>> 3922:   init_class_id(Class_LoadStore);
>> 3923:   DEBUG_ONLY(_adr_type = at; adr_type();)
> 
> Why make this debug only? AFAICT lots of non-debug code uses `adr_type()`?

Similar to `MemNode`, `LoadStoreNode::_adr_type` is for verification only, the `adr_type` is computed from the bottom type of the address input. Please see `LoadStoreNode::adr_type` and `MemNode::adr_type`.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/29154#discussion_r2681245393


More information about the hotspot-compiler-dev mailing list