comparison graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/ConvertDeoptimizeToGuardPhase.java @ 11396:a268b0de65d6

Add some javadoc for GuardLoweringPhase, ConvertDeoptimizeToGuardPhase and DeoptimizeNode
author Gilles Duboscq <duboscq@ssw.jku.at>
date Thu, 22 Aug 2013 15:22:26 +0200
parents ccbbb7dbca69
children 2c3ca4b71965
comparison
equal deleted inserted replaced
11395:a8e618fd8868 11396:a268b0de65d6
28 import com.oracle.graal.graph.*; 28 import com.oracle.graal.graph.*;
29 import com.oracle.graal.nodes.*; 29 import com.oracle.graal.nodes.*;
30 import com.oracle.graal.nodes.util.*; 30 import com.oracle.graal.nodes.util.*;
31 import com.oracle.graal.phases.*; 31 import com.oracle.graal.phases.*;
32 32
33 /**
34 * This phase will find branches which always end with a {@link DeoptimizeNode} and replace their
35 * {@link ControlSplitNode ControlSplitNodes} with {@link FixedGuardNode FixedGuardNodes}.
36 *
37 * This is currently only done for branches that start from a {@link IfNode}. If it encounters a
38 * branch starting at an other kind of {@link ControlSplitNode}, it will only bring the
39 * {@link DeoptimizeNode} as close to the {@link ControlSplitNode} as possible.
40 *
41 */
33 public class ConvertDeoptimizeToGuardPhase extends Phase { 42 public class ConvertDeoptimizeToGuardPhase extends Phase {
34 43
35 private static AbstractBeginNode findBeginNode(Node startNode) { 44 private static AbstractBeginNode findBeginNode(Node startNode) {
36 Node n = startNode; 45 Node n = startNode;
37 while (true) { 46 while (true) {