This was broken some time ago by a refactor.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
349423003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21995
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
--- /dev/null
+// Copyright 2014 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Flags: --allow-natives-syntax --crankshaft
+
+function f() {};
+f();
+f();
+%OptimizeFunctionOnNextCall(f);
+f();
+assertOptimized(f);
+assertThrows(function() { assertUnoptimized(f); });
+%DeoptimizeFunction(f);
+assertUnoptimized(f);
+assertThrows(function() { assertOptimized(f); });
+quit(); // Prevent stress runs.
} catch (e) {
throw new Error("natives syntax not allowed");
}
- } else {
- OptimizationStatusImpl(fun, sync_opt);
}
+ return OptimizationStatusImpl(fun, sync_opt);
}
assertUnoptimized = function assertUnoptimized(fun, sync_opt, name_opt) {