Upload Kmake

This commit is contained in:
Gorochu
2026-05-26 23:36:42 -07:00
parent ba051b2f74
commit 555ec72358
41615 changed files with 13344630 additions and 1 deletions

View File

@ -0,0 +1,40 @@
// 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 --turbolev --turbofan
function f64_abs(n) {
let v = n + 3.125;
return Math.abs(v);
}
%PrepareFunctionForOptimization(f64_abs);
assertEquals(20.625, f64_abs(17.5));
assertEquals(3.375, f64_abs(-6.5));
%OptimizeFunctionOnNextCall(f64_abs);
assertEquals(20.625, f64_abs(17.5));
assertEquals(3.375, f64_abs(-6.5));
assertOptimized(f64_abs);
function i32_abs(n) {
let v = n * 10 - 28;
return Math.abs(v);
}
%PrepareFunctionForOptimization(i32_abs);
assertEquals(8, i32_abs(2));
assertEquals(22, i32_abs(5));
%OptimizeFunctionOnNextCall(i32_abs);
assertEquals(8, i32_abs(2));
assertEquals(22, i32_abs(5));
assertOptimized(i32_abs);
// Triggering a deopt in `i32_abs` by calling it with a value that will lead
// doing Int32Abs on min_int, which overflows because the result is not
// representable as an int32.
let min_int = -0x80000000;
let val_for_deopt = ((min_int + 28) / 10) & 0xffffffff;
assertTrue(%IsSmi(val_for_deopt));
assertEquals(-min_int, i32_abs(val_for_deopt));