Upstream version 7.36.149.0
[platform/framework/web/crosswalk.git] / src / v8 / test / mjsunit / regress / regress-lazy-deopt-inlining2.js
1 // Copyright 2014 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 // Flags: --allow-natives-syntax
6
7 "use strict";
8 function f1(d) {
9   return 1 + f2(1, f3(d), d);
10 }
11
12 function f2(v0, v1, v2) { return v1; }
13
14 function f3(d) {
15   if (d) %DeoptimizeFunction(f1);
16   return 2;
17 }
18
19 %NeverOptimizeFunction(f3);
20
21 f1(false);
22 f1(false);
23 %OptimizeFunctionOnNextCall(f1);
24 assertEquals(3, f1(true));