v8/test/mjsunit/compiler/regress-5129.js
bmeurer 488d6e5f84 [turbofan] x - y < 0 is not equivalent to x < y.
We cannot change x - y < 0 to x < y, because it would only be safe if
x - y cannot overflow, which we don't know in general.

R=jarin@chromium.org
BUG=v8:5129

Review-Url: https://codereview.chromium.org/2090493002
Cr-Commit-Position: refs/heads/master@{#37164}
2016-06-22 05:38:36 +00:00

16 lines
360 B
JavaScript

// 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 foo($a,$b) {
$a = $a|0;
$b = $b|0;
var $sub = $a - $b;
return ($sub|0) < 0;
}
%OptimizeFunctionOnNextCall(foo);
assertTrue(foo(0x7fffffff,-1));