Chromium Code Reviews| Index: test/mjsunit/assert-opt-and-deopt.js |
| diff --git a/test/mjsunit/assert-opt-and-deopt.js b/test/mjsunit/assert-opt-and-deopt.js |
| index 19502f3354c5c5a2c85b1ca8cb93d64561693b31..82b8245609d8e4b25420875df3a9f843be78a2ac 100644 |
| --- a/test/mjsunit/assert-opt-and-deopt.js |
| +++ b/test/mjsunit/assert-opt-and-deopt.js |
| @@ -49,10 +49,13 @@ function OptTracker() { |
| * @enum {int} |
| */ |
| OptTracker.OptimizationState = { |
| - YES: 1, |
| - NO: 2, |
| - ALWAYS: 3, |
| - NEVER: 4 |
| + kIsFunction: 1 << 0, |
|
Michael Starzinger
2017/01/26 12:24:52
suggestion: Could we map these to the existing con
Igor Sheludko
2017/01/26 14:12:31
Given that this file already uses stuff from mjsun
|
| + kNeverOptimize: 1 << 1, |
| + kAlwaysOptimize: 1 << 2, |
| + kMaybeDeopted: 1 << 3, |
| + kOptimized: 1 << 4, |
| + kTurboFanned: 1 << 5, |
| + kInterpreted: 1 << 6 |
| }; |
| /** |
| @@ -94,12 +97,11 @@ OptTracker.prototype.AssertIsOptimized = function(func, expect_optimized) { |
| if (this.DisableAsserts_(func)) { |
| return; |
| } |
| - var raw_optimized = %GetOptimizationStatus(func); |
| - if (expect_optimized) { |
| - assertEquals(OptTracker.OptimizationState.YES, raw_optimized); |
| - } else { |
| - assertEquals(OptTracker.OptimizationState.NO, raw_optimized); |
| - } |
| + var opt_status = %GetOptimizationStatus(func); |
| + assertTrue((opt_status & OptTracker.OptimizationState.kIsFunction) !== 0); |
| + assertEquals( |
| + expect_optimized, |
| + (opt_status & OptTracker.OptimizationState.kOptimized) !== 0); |
| } |
| /** |
| @@ -119,7 +121,8 @@ OptTracker.prototype.GetOptCount_ = function(func) { |
| */ |
| OptTracker.prototype.GetDeoptCount_ = function(func) { |
| var count = this.GetOptCount_(func); |
| - if (%GetOptimizationStatus(func) == OptTracker.OptimizationState.YES) { |
| + var opt_status = %GetOptimizationStatus(func); |
| + if ((opt_status & OptTracker.OptimizationState.kOptimized) !== 0) { |
| count -= 1; |
| } |
| return count; |
| @@ -129,15 +132,9 @@ OptTracker.prototype.GetDeoptCount_ = function(func) { |
| * @private |
| */ |
| OptTracker.prototype.DisableAsserts_ = function(func) { |
| - switch(%GetOptimizationStatus(func)) { |
| - case OptTracker.OptimizationState.YES: |
| - case OptTracker.OptimizationState.NO: |
| - return false; |
| - case OptTracker.OptimizationState.ALWAYS: |
| - case OptTracker.OptimizationState.NEVER: |
| - return true; |
| - } |
| - return true; |
| + var opt_status = %GetOptimizationStatus(func); |
| + return (opt_status & OptTracker.OptimizationState.kAlwaysOptimize) !== 0 || |
| + (opt_status & OptTracker.OptimizationState.kNeverOptimize) !== 0; |
| } |
| // (End of class OptTracker.) |