summaryrefslogtreecommitdiff
path: root/deps/v8/test/mjsunit/regress/regress-crbug-729573-2.js
blob: 16910a3a3d8f2b0c5d32537d921a10276170af54 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// Copyright 2017 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

function bar(x) {
  "use strict";
  return this + x;
}

function foo(f) {
  var a = bar.bind(42, 1);
  return f() ? 0 : a;
};
%PrepareFunctionForOptimization(foo);
function t() {
  return true;
}

assertEquals(0, foo(t));
assertEquals(0, foo(t));
%OptimizeFunctionOnNextCall(foo);
var a = foo(_ => false);
assertEquals(43, a());