diff graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/InstanceOfNode.java @ 19717:70d565f6e127

Convert API for tryFold from Boolean return value to TriState return value.
author Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
date Mon, 09 Mar 2015 14:14:02 +0100
parents 055a095424a7
children d30a0545ddc2
line wrap: on
line diff
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/InstanceOfNode.java	Mon Mar 09 12:32:48 2015 +0100
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/InstanceOfNode.java	Mon Mar 09 14:14:02 2015 +0100
@@ -171,11 +171,11 @@
     }
 
     @Override
-    public Boolean tryFold(Stamp valueStamp) {
+    public TriState tryFold(Stamp valueStamp) {
         if (valueStamp instanceof ObjectStamp) {
             ObjectStamp objectStamp = (ObjectStamp) valueStamp;
             if (objectStamp.alwaysNull()) {
-                return false;
+                return TriState.FALSE;
             }
 
             ResolvedJavaType objectType = objectStamp.type();
@@ -183,15 +183,15 @@
                 ResolvedJavaType instanceofType = type;
                 if (instanceofType.isAssignableFrom(objectType)) {
                     if (objectStamp.nonNull()) {
-                        return true;
+                        return TriState.TRUE;
                     }
                 } else {
                     if (objectStamp.isExactType()) {
-                        return false;
+                        return TriState.FALSE;
                     } else {
                         boolean superType = objectType.isAssignableFrom(instanceofType);
                         if (!superType && !objectType.isInterface() && !instanceofType.isInterface()) {
-                            return false;
+                            return TriState.FALSE;
                         }
                     }
                 }