Index: test/mjsunit/shared-function-tier-up-ignition.js |
diff --git a/test/mjsunit/shared-function-tier-up-ignition.js b/test/mjsunit/shared-function-tier-up-ignition.js |
index 607c2e1e04b14352cfea23faeb50ba22813ba130..1c2e2f43dd674e8de167e746c08df7f266151a91 100644 |
--- a/test/mjsunit/shared-function-tier-up-ignition.js |
+++ b/test/mjsunit/shared-function-tier-up-ignition.js |
@@ -13,29 +13,36 @@ |
} |
sum += f(i); |
- if (%GetOptimizationStatus(f) == 3 || %GetOptimizationStatus(f) == 4) { |
+ var opt_status = %GetOptimizationStatus(f); |
+ if ((opt_status & V8OptimizationStatus.kAlwaysOptimize) || |
+ (opt_status & V8OptimizationStatus.kNeverOptimize)) { |
// If we are always or never optimizing f, just exit, this test is useless. |
return; |
} |
if (i == 1) { |
// f must be interpreted code. |
- assertEquals(8, %GetOptimizationStatus(f)); |
+ assertFalse((opt_status & V8OptimizationStatus.kOptimized) !== 0); |
+ assertTrue((opt_status & V8OptimizationStatus.kInterpreted) !== 0); |
// Allow it to run twice (i = 0, 1), then tier-up to baseline. |
%BaselineFunctionOnNextCall(f); |
} else if (i == 2) { |
// Tier-up at i = 2 should only go up to baseline. |
- assertEquals(2, %GetOptimizationStatus(f)); |
+ assertFalse((opt_status & V8OptimizationStatus.kOptimized) !== 0); |
+ assertFalse((opt_status & V8OptimizationStatus.kInterpreted) !== 0); |
+ |
} else if (i == 3) { |
// Now f must be baseline code. |
- assertEquals(2, %GetOptimizationStatus(f)); |
+ assertFalse((opt_status & V8OptimizationStatus.kOptimized) !== 0); |
+ assertFalse((opt_status & V8OptimizationStatus.kInterpreted) !== 0); |
// Run two more times (i = 2, 3), then tier-up to optimized. |
%OptimizeFunctionOnNextCall(f); |
} else if (i == 4) { |
// Tier-up at i = 4 should now go up to crankshaft. |
- assertEquals(1, %GetOptimizationStatus(f)); |
+ assertTrue((opt_status & V8OptimizationStatus.kOptimized) !== 0); |
+ assertFalse((opt_status & V8OptimizationStatus.kTurboFanned) !== 0); |
} |
} |
})() |