// Copyright 2018 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 empty() {} | |
function baz(expected, found) { | |
var start = ""; | |
found.length, start + 'x'; | |
if (expected.length === found.length) { | |
for (var i = 0; i < expected.length; ++i) { | |
empty(found[i]); | |
} | |
} | |
} | |
baz([1], new class A extends Array {}()); | |
(function () { | |
"use strict"; | |
function bar() { | |
baz([1, 2], arguments); | |
} | |
function foo() { | |
bar(2147483648, -[]); | |
}; | |
%PrepareFunctionForOptimization(foo); | |
foo(); | |
foo(); | |
%OptimizeFunctionOnNextCall(foo); | |
foo(); | |
})(); |