| Index: test/mjsunit/regress/regress-234101.js
|
| diff --git a/test/mjsunit/regress/regress-2499.js b/test/mjsunit/regress/regress-234101.js
|
| similarity index 80%
|
| copy from test/mjsunit/regress/regress-2499.js
|
| copy to test/mjsunit/regress/regress-234101.js
|
| index 52aad874db6fcdc89f5ee1ae4db45304e64b0e77..74228dfabe532efdce2d2cd31736959eaff4349b 100644
|
| --- a/test/mjsunit/regress/regress-2499.js
|
| +++ b/test/mjsunit/regress/regress-234101.js
|
| @@ -27,14 +27,16 @@
|
|
|
| // Flags: --allow-natives-syntax
|
|
|
| -function foo(word, nBits) {
|
| - return (word[1] >>> nBits) | (word[0] << (32 - nBits));
|
| -}
|
| +// Currently, the gap resolver doesn't handle moves from a ConstantOperand to a
|
| +// DoubleRegister, but these kind of moves appeared when HConstant::EmitAtUses
|
| +// was changed to allow special double values (-0, NaN, hole). So we should
|
| +// either enhance the gap resolver or make sure that such moves don't happen.
|
|
|
| -word = [0x1001, 0];
|
| +function foo(x) {
|
| + return (x ? NaN : 0.2) + 0.1;
|
| +}
|
|
|
| -var expected = foo(word, 1);
|
| -foo(word, 1);
|
| +foo(false);
|
| +foo(false);
|
| %OptimizeFunctionOnNextCall(foo);
|
| -var optimized = foo(word, 1);
|
| -assertEquals(expected, optimized)
|
| +foo(false);
|
|
|