v8/test/mjsunit/compiler/regress-1126771.js

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

46 lines
1.2 KiB
JavaScript
Raw Normal View History

// Copyright 2020 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
let __callGC;
(function () {
__callGC = function() {};
})();
var __v_5 = {};
var __v_9 = {x: {}};
function main() {
function __f_6() { this.elms = new Array(); }
__f_6.prototype.size = function () { return this.elms.length; };
function __f_7() { this.v = new __f_6(); }
__f_7.prototype.add = function (__v_25) { this.v.elms.push(__v_25); };
__f_7.prototype.size = function () { return this.v.size(); };
__f_7.prototype.execute = function () {
for (var __v_28 = 0; __v_28 < this.size(); __v_28++) {
delete __v_9[__v_9, 538276];
__callGC();
}
};
var __v_22 = new __f_7();
for (var __v_23 = 0; __v_23 < 10; __v_23++) {
try {
if (__v_5 != null && typeof __v_5 == "object") {
try {
Object.defineProperty(__v_5, 807285, {get: function() {}});
} catch (e) {}
}
__v_22.add();
} catch (e) {}
}
__v_22.execute();
}
%PrepareFunctionForOptimization(main);
main();
main();
%OptimizeFunctionOnNextCall(main);
main();