# HG changeset patch # User Doug Simon # Date 1421675215 -3600 # Node ID ec7dcd2104677e40a63dfbf9bf705168a44bda88 # Parent d0f34a3055cfb07e05a185d260bb2b69215c71c2 made Graph.cachedLeafNodes stable across VM executions to support replay compilation diff -r d0f34a3055cf -r ec7dcd210467 graal/com.oracle.graal.graph/src/com/oracle/graal/graph/Graph.java --- a/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/Graph.java Mon Jan 19 14:46:21 2015 +0100 +++ b/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/Graph.java Mon Jan 19 14:46:55 2015 +0100 @@ -750,6 +750,12 @@ @SuppressWarnings("unused") private void postDeserialization() { recomputeIterableNodeLists(); + + // CacheEntry.hashCode() is not stable across VM executions so + // the cachedLeafNodes map needs to be re-created. + HashMap entries = new LinkedHashMap<>(cachedLeafNodes); + cachedLeafNodes.clear(); + cachedLeafNodes.putAll(entries); } /**