changeset 21767:8c7e103521ef

Fix too conservative anchoring of PiNode in CheckCastNode lowering.
author Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
date Sun, 07 Jun 2015 16:16:10 +0200
parents bb72c486714a
children e9100cc156a9
files graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/CheckCastNode.java
diffstat 1 files changed, 1 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/CheckCastNode.java	Sun Jun 07 01:08:35 2015 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/java/CheckCastNode.java	Sun Jun 07 16:16:10 2015 +0200
@@ -155,7 +155,7 @@
         }
         GuardingNode guard = tool.createGuard(next(), condition, forStoreCheck ? ArrayStoreException : ClassCastException, InvalidateReprofile, false);
         ValueAnchorNode valueAnchor = graph().add(new ValueAnchorNode((ValueNode) guard));
-        PiNode piNode = graph().unique(new PiNode(theValue, newStamp, valueAnchor));
+        PiNode piNode = graph().unique(new PiNode(theValue, newStamp, (ValueNode) guard));
         this.replaceAtUsages(piNode);
         graph().replaceFixedWithFixed(this, valueAnchor);