// Copyright 2016 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 umin(a, b) { a = a >>> 0; b = b >>> 0; return Math.min(a, b); } %PrepareFunctionForOptimization(umin); umin(1, 1); umin(2, 2); %OptimizeFunctionOnNextCall(umin); assertEquals(1, umin(1, 2)); assertEquals(1, umin(2, 1)); assertEquals(0, umin(0, 4294967295)); assertEquals(0, umin(4294967295, 0)); assertEquals(4294967294, umin(-1, -2)); assertEquals(1234, umin(-2, 1234)); function umax(a, b) { a = a >>> 0; b = b >>> 0; return Math.max(a, b); } %PrepareFunctionForOptimization(umax); umax(1, 1); umax(2, 2); %OptimizeFunctionOnNextCall(umax); assertEquals(2, umax(1, 2)); assertEquals(2, umax(2, 1)); assertEquals(4294967295, umax(0, 4294967295)); assertEquals(4294967295, umax(4294967295, 0)); assertEquals(4294967295, umax(-1, -2)); assertEquals(4294967294, umax(-2, 1234));