# HG changeset patch # User Gilles Duboscq # Date 1363363063 -3600 # Node ID 1774e72a60b3b3f2ea77244e9ea755c6165f92e2 # Parent fa64b845d7f146c845bc62750c9bdb01d3137027 Guards with different anchors should be commoned out in the lowering phase diff -r fa64b845d7f1 -r 1774e72a60b3 graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/LoweringPhase.java --- a/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/LoweringPhase.java Fri Mar 15 02:18:46 2013 +0100 +++ b/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/LoweringPhase.java Fri Mar 15 16:57:43 2013 +0100 @@ -83,7 +83,7 @@ public ValueNode createGuard(LogicNode condition, DeoptimizationReason deoptReason, DeoptimizationAction action, boolean negated) { if (GraalOptions.OptEliminateGuards) { for (Node usage : condition.usages()) { - if (!activeGuards.isNew(usage) && activeGuards.isMarked(usage) && ((GuardNode) usage).negated() == negated && ((GuardNode) usage).dependencies().contains(guardAnchor)) { + if (!activeGuards.isNew(usage) && activeGuards.isMarked(usage) && ((GuardNode) usage).negated() == negated) { return (GuardNode) usage; } }