diff graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java @ 5160:6e385457d6fc

Add a RiDeoptAction to Guards and FixedGuards
author Gilles Duboscq <duboscq@ssw.jku.at>
date Mon, 26 Mar 2012 15:47:49 +0200
parents ab038e0d6b43
children 591f8231aa82
line wrap: on
line diff
--- a/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java	Fri Mar 23 12:13:04 2012 -0700
+++ b/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java	Mon Mar 26 15:47:49 2012 +0200
@@ -749,7 +749,7 @@
     }
 
     @Override
-    public void emitGuardCheck(BooleanNode comp, RiDeoptReason deoptReason, long leafGraphId) {
+    public void emitGuardCheck(BooleanNode comp, RiDeoptReason deoptReason, RiDeoptAction action, long leafGraphId) {
         if (comp instanceof NullCheckNode && !((NullCheckNode) comp).expectedNull) {
             emitNullCheckGuard((NullCheckNode) comp, leafGraphId);
         } else if (comp instanceof ConstantNode && comp.asConstant().asBoolean()) {
@@ -758,7 +758,7 @@
         } else {
             // Fall back to a normal branch.
             LIRDebugInfo info = state(leafGraphId);
-            LabelRef stubEntry = createDeoptStub(RiDeoptAction.InvalidateReprofile, deoptReason, info, comp);
+            LabelRef stubEntry = createDeoptStub(action, deoptReason, info, comp);
             emitBranch(comp, null, stubEntry, info);
         }
     }