aboutsummaryrefslogtreecommitdiff
path: root/deps/v8/test/mjsunit/compiler/regress-9087.js
blob: ccb885aeb2743b66881373362d4efe20281d3bc1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// Copyright 2019 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 constructor() {}
const obj = Object.create(constructor.prototype);

for (let i = 0; i < 1020; ++i) {
  constructor.prototype["x" + i] = 42;
}

function foo() {
  return obj instanceof constructor;
};
%PrepareFunctionForOptimization(foo);
assertTrue(foo());
assertTrue(foo());
%OptimizeFunctionOnNextCall(foo);
assertTrue(foo());