diff graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnboxNode.java @ 20826:a4aa2116cfe0

Support node canonicalization when not all usages of a node are known yet
author Christian Wimmer <christian.wimmer@oracle.com>
date Wed, 08 Apr 2015 22:07:50 -0700
parents a7ee2e1f0d4e
children 48c1ebd24120
line wrap: on
line diff
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnboxNode.java	Wed Apr 08 22:05:40 2015 -0700
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/UnboxNode.java	Wed Apr 08 22:07:50 2015 -0700
@@ -79,7 +79,7 @@
 
     @Override
     public ValueNode canonical(CanonicalizerTool tool, ValueNode forValue) {
-        if (hasNoUsages() && StampTool.isPointerNonNull(forValue)) {
+        if (tool.allUsagesAvailable() && hasNoUsages() && StampTool.isPointerNonNull(forValue)) {
             return null;
         }
         ValueNode synonym = findSynonym(tool.getMetaAccess(), tool.getConstantReflection(), forValue, boxingKind);