changeset 18375:0866598c927f

BasicObjectCloneNode is always non-null
author Tom Rodriguez <tom.rodriguez@oracle.com>
date Thu, 13 Nov 2014 18:18:18 -0800
parents 8971259db8ed
children e11768d6136e
files graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BasicObjectCloneNode.java
diffstat 1 files changed, 5 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BasicObjectCloneNode.java	Thu Nov 13 15:41:22 2014 -0800
+++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/BasicObjectCloneNode.java	Thu Nov 13 18:18:18 2014 -0800
@@ -47,7 +47,11 @@
 
     @Override
     public boolean inferStamp() {
-        return updateStamp(getObject().stamp());
+        Stamp objectStamp = getObject().stamp();
+        if (objectStamp instanceof ObjectStamp) {
+            objectStamp = objectStamp.join(StampFactory.objectNonNull());
+        }
+        return updateStamp(objectStamp);
     }
 
     public ValueNode getObject() {