# HG changeset patch # User Miguel Garcia # Date 1399649594 -7200 # Node ID 4d5b1e7a4d9368ed29b623d1074e1c8ec0e34cc6 # Parent 56ab99b480af487f2404536a7c422347a26758bf [single-pass-iter] early pruning of state map, visit a whole method diff -r 56ab99b480af -r 4d5b1e7a4d93 graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ConditionalEliminationPhase.java --- a/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ConditionalEliminationPhase.java Fri May 09 16:50:27 2014 +0200 +++ b/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ConditionalEliminationPhase.java Fri May 09 17:33:14 2014 +0200 @@ -337,7 +337,7 @@ private final LogicNode trueConstant; private final LogicNode falseConstant; - public ConditionalElimination(FixedNode start, State initialState) { + public ConditionalElimination(StartNode start, State initialState) { super(start, initialState); trueConstant = LogicConstantNode.tautology(graph); falseConstant = LogicConstantNode.contradiction(graph); diff -r 56ab99b480af -r 4d5b1e7a4d93 graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ValueAnchorCleanupPhase.java --- a/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ValueAnchorCleanupPhase.java Fri May 09 16:50:27 2014 +0200 +++ b/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ValueAnchorCleanupPhase.java Fri May 09 17:33:14 2014 +0200 @@ -65,7 +65,7 @@ private static class CleanupValueAnchorsClosure extends SinglePassNodeIterator { - public CleanupValueAnchorsClosure(FixedNode start) { + public CleanupValueAnchorsClosure(StartNode start) { super(start, new State()); } diff -r 56ab99b480af -r 4d5b1e7a4d93 graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/cfs/BaseReduction.java --- a/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/cfs/BaseReduction.java Fri May 09 16:50:27 2014 +0200 +++ b/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/cfs/BaseReduction.java Fri May 09 17:33:14 2014 +0200 @@ -195,7 +195,7 @@ protected final PostponedDeopts postponedDeopts = new PostponedDeopts(); - protected BaseReduction(FixedNode start, State initialState, PhaseContext context) { + protected BaseReduction(StartNode start, State initialState, PhaseContext context) { super(start, initialState); graph = start.graph(); trueConstant = LogicConstantNode.tautology(graph); diff -r 56ab99b480af -r 4d5b1e7a4d93 graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/cfs/CheckCastReduction.java --- a/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/cfs/CheckCastReduction.java Fri May 09 16:50:27 2014 +0200 +++ b/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/cfs/CheckCastReduction.java Fri May 09 17:33:14 2014 +0200 @@ -50,7 +50,7 @@ */ public abstract class CheckCastReduction extends GuardingPiReduction { - public CheckCastReduction(FixedNode start, State initialState, PhaseContext context) { + public CheckCastReduction(StartNode start, State initialState, PhaseContext context) { super(start, initialState, context); } diff -r 56ab99b480af -r 4d5b1e7a4d93 graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/cfs/FixedGuardReduction.java --- a/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/cfs/FixedGuardReduction.java Fri May 09 16:50:27 2014 +0200 +++ b/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/cfs/FixedGuardReduction.java Fri May 09 17:33:14 2014 +0200 @@ -41,7 +41,7 @@ */ public abstract class FixedGuardReduction extends CheckCastReduction { - public FixedGuardReduction(FixedNode start, State initialState, PhaseContext context) { + public FixedGuardReduction(StartNode start, State initialState, PhaseContext context) { super(start, initialState, context); } diff -r 56ab99b480af -r 4d5b1e7a4d93 graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/cfs/FlowSensitiveReduction.java --- a/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/cfs/FlowSensitiveReduction.java Fri May 09 16:50:27 2014 +0200 +++ b/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/cfs/FlowSensitiveReduction.java Fri May 09 17:33:14 2014 +0200 @@ -98,7 +98,7 @@ */ public class FlowSensitiveReduction extends FixedGuardReduction { - public FlowSensitiveReduction(FixedNode start, State initialState, PhaseContext context) { + public FlowSensitiveReduction(StartNode start, State initialState, PhaseContext context) { super(start, initialState, context); } diff -r 56ab99b480af -r 4d5b1e7a4d93 graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/cfs/GuardingPiReduction.java --- a/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/cfs/GuardingPiReduction.java Fri May 09 16:50:27 2014 +0200 +++ b/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/cfs/GuardingPiReduction.java Fri May 09 17:33:14 2014 +0200 @@ -47,7 +47,7 @@ */ public abstract class GuardingPiReduction extends BaseReduction { - public GuardingPiReduction(FixedNode start, State initialState, PhaseContext context) { + public GuardingPiReduction(StartNode start, State initialState, PhaseContext context) { super(start, initialState, context); } diff -r 56ab99b480af -r 4d5b1e7a4d93 graal/com.oracle.graal.phases/src/com/oracle/graal/phases/graph/SinglePassNodeIterator.java --- a/graal/com.oracle.graal.phases/src/com/oracle/graal/phases/graph/SinglePassNodeIterator.java Fri May 09 16:50:27 2014 +0200 +++ b/graal/com.oracle.graal.phases/src/com/oracle/graal/phases/graph/SinglePassNodeIterator.java Fri May 09 17:33:14 2014 +0200 @@ -29,10 +29,9 @@ import com.oracle.graal.nodes.*; /** - * A SinglePassNodeIterator iterates the fixed nodes of the graph in post order starting from a - * specified fixed node. Unlike in iterative dataflow analysis, a single pass is performed, which - * allows keeping a smaller working set of pending {@link MergeableState}. This iteration scheme - * requires: + * A SinglePassNodeIterator iterates the fixed nodes of the graph in post order starting from its + * start node. Unlike in iterative dataflow analysis, a single pass is performed, which allows + * keeping a smaller working set of pending {@link MergeableState}. This iteration scheme requires: *