Mercurial > hg > truffle
diff graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/DeoptimizeNode.java @ 5105:95b8a32a7cc3
preparations to avoid endless recompilations because of not updated profiling information
author | Christian Haeubl <christian.haeubl@oracle.com> |
---|---|
date | Mon, 12 Mar 2012 18:40:05 -0700 |
parents | e808627bd16f |
children | 6766253384bf |
line wrap: on
line diff
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/DeoptimizeNode.java Fri Mar 09 13:14:54 2012 -0800 +++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/DeoptimizeNode.java Mon Mar 12 18:40:05 2012 -0700 @@ -25,26 +25,19 @@ import com.oracle.graal.graph.*; import com.oracle.graal.nodes.spi.*; import com.oracle.graal.nodes.type.*; +import com.oracle.max.cri.ri.*; @NodeInfo(shortName = "Deopt") public class DeoptimizeNode extends FixedNode implements Node.IterableNodeType, LIRLowerable { - public static enum DeoptAction { - None, // just interpret, do not invalidate nmethod - Recompile, // recompile the nmethod; need not invalidate - InvalidateReprofile, // invalidate the nmethod, reset IC, maybe recompile - InvalidateRecompile, // invalidate the nmethod, recompile (probably) - InvalidateStopCompiling, // invalidate the nmethod and do not compile + @Data private String message; + @Data private final RiDeoptAction action; + + public DeoptimizeNode() { + this(RiDeoptAction.InvalidateReprofile); } - @Data private String message; - @Data private final DeoptAction action; - - public DeoptimizeNode() { - this(DeoptAction.InvalidateReprofile); - } - - public DeoptimizeNode(DeoptAction action) { + public DeoptimizeNode(RiDeoptAction action) { super(StampFactory.illegal()); this.action = action; } @@ -57,7 +50,7 @@ return message; } - public DeoptAction action() { + public RiDeoptAction action() { return action; }