RFR: 8280541: remove self-recursion of ConnectionGraph::find_inst_mem()

Xin Liu xliu at openjdk.java.net
Mon Jan 24 23:14:56 UTC 2022


This is a follow-up task of JDK-8276219.

ConnectionGraph::find_inst_mem() contains a self-recursion for MergeMemNode.
It drills into one input of mergenode and tries to locate the memory node
which has the exact alias_idx. Once it returns, the result will be same from
recursion. Therefore, it's not necessary to use recursion in this case. We can
reset the initial state of this function and respin.

We can use a collection to remember all MergeMem Nodes and update them after then. 

This patch also makes a cleanup in MergeMemNode::memory_at(). C is not in use in
that function.

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

Commit messages:
 - 8280541: remove self-recursion of ConnectionGraph::find_inst_mem()

Changes: https://git.openjdk.java.net/jdk/pull/7204/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=7204&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8280541
  Stats: 34 lines in 2 files changed: 19 ins; 8 del; 7 mod
  Patch: https://git.openjdk.java.net/jdk/pull/7204.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/7204/head:pull/7204

PR: https://git.openjdk.java.net/jdk/pull/7204


More information about the hotspot-compiler-dev mailing list