blob: 0def5efb1e08ce8e4595a95ab630db8a09c121df [file] [log] [blame]
// 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 --opt
/* Test deopt behaviors when the prototype has elements */
// lastIndexOf
(function () {
var array = [,];
function lastIndexOf(val) {
return array.lastIndexOf(val);
}
%PrepareFunctionForOptimization(lastIndexOf);
lastIndexOf(6); lastIndexOf(6);
%OptimizeFunctionOnNextCall(lastIndexOf);
assertEquals(lastIndexOf(6), -1);
array.__proto__.push(6);
// deopt
assertEquals(lastIndexOf(6), 0);
})();