# HG changeset patch # User Thomas Wuerthinger # Date 1376682042 -7200 # Node ID ccbbb7dbca692ccb1fd6c1dcd9a52f633ff3748d # Parent 7f713aad89de1a74de9d32b8d67c36198d609f03 Make sure the created ProxyNode is of PhiType.Guard. diff -r 7f713aad89de -r ccbbb7dbca69 graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ProxyNode.java --- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ProxyNode.java Fri Aug 16 21:23:30 2013 +0200 +++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/ProxyNode.java Fri Aug 16 21:40:42 2013 +0200 @@ -103,6 +103,10 @@ } } + public static ProxyNode forGuard(ValueNode value, AbstractBeginNode exit, StructuredGraph graph) { + return graph.unique(new ProxyNode(value, exit, PhiType.Guard, null)); + } + public static ProxyNode forValue(ValueNode value, AbstractBeginNode exit, StructuredGraph graph) { return graph.unique(new ProxyNode(value, exit, PhiType.Value, null)); } diff -r 7f713aad89de -r ccbbb7dbca69 graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ConvertDeoptimizeToGuardPhase.java --- a/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ConvertDeoptimizeToGuardPhase.java Fri Aug 16 21:23:30 2013 +0200 +++ b/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ConvertDeoptimizeToGuardPhase.java Fri Aug 16 21:40:42 2013 +0200 @@ -94,7 +94,7 @@ // Rewire to the fixed guard. if (survivingSuccessor instanceof LoopExitNode) { if (proxyGuard == null) { - proxyGuard = ProxyNode.forValue(guard, survivingSuccessor, graph); + proxyGuard = ProxyNode.forGuard(guard, survivingSuccessor, graph); } n.replaceFirstInput(survivingSuccessor, proxyGuard); } else {