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;
     }