nodejs/deps/v8/test/mjsunit/regress/regress-1320641.js
Joyee Cheung 4a2e9bacab deps: V8: cherry-pick 9f4b7699f68e
Original commit message:

    Fix mistake in the skip branch of test/mjsunit/regress-1320641.js

    It was doing a `string.test(regex)` which was wrong. It's supposed
    to be `regex.test(string)`. It wasn't caught in the CI because
    the skip path is not normally taken in the V8 CI.

    Change-Id: Id1bdab5bbc41968bba8adc1cb3664e8f95fb5d72
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4697855
    Commit-Queue: Joyee Cheung <joyee@igalia.com>
    Reviewed-by: Nico Hartmann <nicohartmann@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#89044}

Refs: 9f4b7699f6
PR-URL: https://github.com/nodejs/node/pull/48830
Refs: c1a54d5ffc
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Debadree Chatterjee <debadree333@gmail.com>
2023-07-20 19:50:21 +00:00

29 lines
661 B
JavaScript

// Copyright 2023 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 foo(){
const xs = new Uint16Array(3775336418);
return xs[-981886074];
}
var skip = false;
try {
new Uint16Array(3775336418);
} catch (e) {
if (/Array buffer allocation failed/.test(e.message)) {
skip = true; // We don't have enough memory, just skip the test.
}
}
if (!skip) {
%PrepareFunctionForOptimization(foo);
foo();
assertEquals(undefined, foo());
%OptimizeFunctionOnNextCall(foo);
assertEquals(undefined, foo());
}