regress-1196185.js 874 Bytes
Newer Older
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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
// Copyright 2021 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 --disable-in-process-stack-traces
// Flags: --gc-interval=500 --stress-compaction

class X {}
function rando() {}

let named;
function foo(input) {
  var b;
  rando(), {
    blah: function () { b = b(); },
  };

  for (var i = 0; i < 10; i++) {
    var r = rando();
    var broom;

    try {
      input[r];
      named();
    } catch (e) {}

    try {
       broom = __v_859.exports.main;
    } catch (e) {}

    try {
      for (var j = 0; j < 10; j++) {
         broom();
      }
    } catch (e) {}
  }
}

function testfunc() {
  for (var i = 0; i < 10; i++) {
    %PrepareFunctionForOptimization(foo);
    %OptimizeFunctionOnNextCall(foo);
    foo();
  }
}
testfunc();