29da5460fc
The ARM64 instruction selector can generate code like this negs w0, w1 b.vs deopt but then reference the old value of w0 in the frame state, which will obviously lead to wrong results. R=jarin@chromium.org BUG=v8:5158 Review-Url: https://codereview.chromium.org/2103793002 Cr-Commit-Position: refs/heads/master@{#37322}
17 lines
366 B
JavaScript
17 lines
366 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(x) {
|
|
x = +x;
|
|
return (x > 0) ? x : 0 - x;
|
|
}
|
|
|
|
foo(1);
|
|
foo(-1);
|
|
foo(0);
|
|
%OptimizeFunctionOnNextCall(foo);
|
|
assertEquals(2147483648, foo(-2147483648));
|