changeset 13602:58a41595d5d9

fix canonicalization of DynamicNewInstanceNode
author Bernhard Urban <bernhard.urban@jku.at>
date Fri, 10 Jan 2014 15:25:55 +0100
parents fd522e725ee5
children aaaeef103625
files graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/DynamicNewInstanceNode.java
diffstat 1 files changed, 3 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/DynamicNewInstanceNode.java	Fri Jan 10 14:29:07 2014 +0100
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/DynamicNewInstanceNode.java	Fri Jan 10 15:25:55 2014 +0100
@@ -28,7 +28,7 @@
 import com.oracle.graal.nodes.*;
 import com.oracle.graal.nodes.type.*;
 
-public class DynamicNewInstanceNode extends AbstractNewObjectNode {
+public class DynamicNewInstanceNode extends AbstractNewObjectNode implements Canonicalizable {
 
     @Input private ValueNode clazz;
 
@@ -45,11 +45,11 @@
                 Class staticClass = (Class) clazzConstant.asObject();
                 ResolvedJavaType type = tool.getMetaAccess().lookupJavaType(staticClass);
                 if (type.isInitialized()) {
-                    return new NewInstanceNode(type, fillContents());
+                    return graph().add(new NewInstanceNode(type, fillContents()));
                 }
             }
         }
-        return super.canonical(tool);
+        return this;
     }
 
     public ValueNode getInstanceType() {