Files
Kmake/deps/v8/test/mjsunit/maglev/regress-375330032.js
2026-05-26 23:36:42 -07:00

27 lines
618 B
JavaScript

// Copyright 2024 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 --maglev
function foo(arg) {
try {
let v = 0n;
for (let i = 0; i < arg, true; ++i) {
3n + v; // This will throw on the 2nd iteration because {v} won't be a
// BigInt anymore.
v = arg;
arg = i;
}
} catch(e) {
return 42;
}
return 17;
}
%PrepareFunctionForOptimization(foo);
assertEquals(42, foo(3));
%OptimizeMaglevOnNextCall(foo);
assertEquals(42, foo(3));