changeset 5863:0428e0b46c63

Use HashSet in FloatingReadPhase instead of IdentityHashMap since Nodes use identity .equals and .hashCode
author Gilles Duboscq <duboscq@ssw.jku.at>
date Thu, 19 Jul 2012 13:28:16 +0200
parents 32a7714ac0c5
children 59f209dd356b
files graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/phases/FloatingReadPhase.java
diffstat 1 files changed, 4 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/phases/FloatingReadPhase.java	Thu Jul 19 00:56:40 2012 +0200
+++ b/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/phases/FloatingReadPhase.java	Thu Jul 19 13:28:16 2012 +0200
@@ -91,19 +91,19 @@
                 }
             }
 
-            IdentityHashMap<Object, Object> keys = new IdentityHashMap<>();
+            Set<Object> keys = new HashSet<>();
             for (Object key : lastMemorySnapshot.keySet()) {
-                keys.put(key, key);
+                keys.add(key);
             }
             for (MemoryMap other : withStates) {
                 assert other.loops.size() == loops.size();
                 assert other.loops.size() < 1 || other.loops.peek().loopBegin == loops.peek().loopBegin;
                 for (Object key : other.lastMemorySnapshot.keySet()) {
-                    keys.put(key, key);
+                    keys.add(key);
                 }
             }
 
-            for (Object key : keys.keySet()) {
+            for (Object key : keys) {
                 ValueNode merged = lastMemorySnapshot.get(key);
                 if (merged == null) {
                     merged = lastMemorySnapshot.get(LocationNode.ANY_LOCATION);