/
githubmirror
/
node
Обзор
Документация
Войти
/
githubmirror
/
node
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
deps/v8/test/mjsunit/compiler/math-max.js
40 строк
1 KB
Ujjwal Sharma
deps: update V8 to 7.4.288.13
28 мар 2019, 23:36
28 мар 2019, 23:36
f579e11
Код
Авторство
О чём код?
// 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 // Test the case where TurboFan can statically rule out -0 from the // Math.max type. (function() { function foo(x) { // Arrange x such that TurboFan infers type [-inf, inf] \/ MinusZero. x = +x; x = Math.round(x); return Object.is(-0, Math.max(1, x)) } %PrepareFunctionForOptimization(foo); assertFalse(foo(-0)); assertFalse(foo(-1)); %OptimizeFunctionOnNextCall(foo); assertFalse(foo(-0)); assertFalse(foo(-1)); })(); // Test the case where -0 is ruled out because it's strictly less than +0. (function() { function foo(x) { // Arrange x such that TurboFan infers type [-inf, inf] \/ MinusZero. x = +x; x = Math.round(x); return Object.is(-0, Math.max(0, x)) } %PrepareFunctionForOptimization(foo); assertFalse(foo(-0)); assertFalse(foo(-1)); %OptimizeFunctionOnNextCall(foo); assertFalse(foo(-0)); assertFalse(foo(-1)); })();