RFR: 8352620: C2: rename MemNode::memory_type() to MemNode::value_basic_type()
Roberto Castañeda Lozano
rcastanedalo at openjdk.org
Fri Apr 11 13:26:39 UTC 2025
On Thu, 3 Apr 2025 21:06:17 GMT, Saranya Natarajan <duke at openjdk.org> wrote:
> Description: The current name MemNode::memory_type() is misleading because the returned type is a property of the value that is loaded/stored, not the memory that is accessed. Usually, the two of them match, but for mismatched memory accesses (arising e.g. from using Unsafe or memory segments) they might differ, e.g. one might store a value of type 'short' into an array of elements of type 'long'. The proposal was to rename MemNode::memory_type() to MemNode::value_basic_type() to clarify these cases.
>
> Solution: Replaced all occurrence of MemNode::memory_type() with MemNode::value_basic_type()
src/hotspot/share/opto/escape.cpp line 2822:
> 2820: Node* value = nullptr;
> 2821: if (ini != nullptr) {
> 2822: // StoreP::memory_type() == T_ADDRESS
The value of this comment is debatable, but I think it is best to not remove it in this RFE (just rename `memory_type` to `value_basic_type`), to preserve the original scope of the RFE.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/24427#discussion_r2039560349
More information about the hotspot-compiler-dev
mailing list