/
githubmirror
/
node
Обзор
Документация
Войти
/
githubmirror
/
node
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
deps/v8/test/mjsunit/compiler/string-from-code-point.js
36 строк
1 KB
Michaël Zasso
deps: update V8 to 14.1.146.11
04 окт 2025, 19:47
Не верифицирован
04 окт 2025, 19:47
7772a2d
Код
Авторство
О чём код?
// 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 --turbofan // Test that String.fromCodePoint() properly identifies zeros. (function() { function foo(x) { return String.fromCodePoint(x); } %PrepareFunctionForOptimization(foo); assertEquals("\u0000", foo(0)); assertEquals("\u0000", foo(-0)); %OptimizeFunctionOnNextCall(foo); assertEquals("\u0000", foo(0)); assertEquals("\u0000", foo(-0)); assertOptimized(foo); // Prepare foo to be re-optimized, ensuring it's bytecode / feedback vector // doesn't get flushed after deoptimization. %PrepareFunctionForOptimization(foo); // Now passing anything outside the valid code point // range should invalidate the optimized code. assertThrows(_ => foo(-1)); assertUnoptimized(foo); // And TurboFan should not inline the builtin anymore // from now on (aka no deoptimization loop). %OptimizeFunctionOnNextCall(foo); assertEquals("\u0000", foo(0)); assertEquals("\u0000", foo(-0)); assertThrows(_ => foo(-1)); assertOptimized(foo); })();