v8/test/mjsunit/regress/regress-v8-12194.js
Jakob Linke 6904a8120b [cleanup] Remove --stress-opt remnants
.. mostly mentions in mjsunit `Flags:` lines and in comments.

Bug: v8:10386
Change-Id: If79dfdc448d0a3f19883ef1f816e77e750cb4061
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3865964
Commit-Queue: Jakob Linke <jgruber@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/main@{#82852}
2022-08-31 08:37:44 +00:00

75 lines
1.5 KiB
JavaScript

// 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 --turbofan --no-always-turbofan
// Flags: --deopt-every-n-times=0 --no-force-slow-path
(function TestSliceWithoutParams() {
let array = [0, 1, 2];
function f() {
let array2 = array.slice();
array2[1] = array2[0];
}
%PrepareFunctionForOptimization(f);
f();
%OptimizeFunctionOnNextCall(f);
f();
// Assert that the function was not deoptimized.
assertOptimized(f);
})();
(function TestSliceWithStartZero() {
let array = [0, 1, 2];
function f() {
let array2 = array.slice(0);
array2[1] = array2[0];
}
%PrepareFunctionForOptimization(f);
f();
%OptimizeFunctionOnNextCall(f);
f();
// Assert that the function was not deoptimized.
assertOptimized(f);
})();
(function TestSliceWithStartNonZero() {
let array = [0, 1, 2];
function f() {
let array2 = array.slice(1);
array2[1] = array2[0];
}
%PrepareFunctionForOptimization(f);
f();
%OptimizeFunctionOnNextCall(f);
f();
// Assert that the function was not deoptimized.
assertOptimized(f);
})();
(function TestSliceWithStartZeroEndNonUndefined() {
let array = [0, 1, 2];
function f() {
let array2 = array.slice(0, 1);
array2[1] = array2[0];
}
%PrepareFunctionForOptimization(f);
f();
%OptimizeFunctionOnNextCall(f);
f();
// Assert that the function was not deoptimized.
assertOptimized(f);
})();