| Index: test/unittests/compiler/js-typed-lowering-unittest.cc
|
| diff --git a/test/unittests/compiler/js-typed-lowering-unittest.cc b/test/unittests/compiler/js-typed-lowering-unittest.cc
|
| index e4ea4a581f6b3e937ed8cbd8fa5043db5749d2ae..322d0cb5e7b7a89fa77038f16253f6e2c1294061 100644
|
| --- a/test/unittests/compiler/js-typed-lowering-unittest.cc
|
| +++ b/test/unittests/compiler/js-typed-lowering-unittest.cc
|
| @@ -12,6 +12,10 @@
|
| #include "test/unittests/compiler/compiler-test-utils.h"
|
| #include "test/unittests/compiler/graph-unittest.h"
|
| #include "test/unittests/compiler/node-test-utils.h"
|
| +#include "testing/gmock-support.h"
|
| +
|
| +using testing::BitEq;
|
| +
|
|
|
| namespace v8 {
|
| namespace internal {
|
| @@ -135,7 +139,7 @@ TEST_F(JSTypedLoweringTest, JSToBooleanWithOrderedNumber) {
|
| Reduce(graph()->NewNode(javascript()->ToBoolean(), input, context));
|
| ASSERT_TRUE(r.Changed());
|
| EXPECT_THAT(r.replacement(),
|
| - IsBooleanNot(IsNumberEqual(input, IsNumberConstant(0))));
|
| + IsBooleanNot(IsNumberEqual(input, IsNumberConstant(BitEq(0.0)))));
|
| }
|
|
|
|
|
| @@ -150,7 +154,7 @@ TEST_F(JSTypedLoweringTest, JSToBooleanWithString) {
|
| IsBooleanNot(IsNumberEqual(
|
| IsLoadField(AccessBuilder::ForStringLength(), input,
|
| graph()->start(), graph()->start()),
|
| - IsNumberConstant(0))));
|
| + IsNumberConstant(BitEq(0.0)))));
|
| }
|
|
|
|
|
| @@ -165,10 +169,10 @@ TEST_F(JSTypedLoweringTest, JSToBooleanWithPhi) {
|
| graph()->NewNode(common()->Phi(kMachAnyTagged, 2), p0, p1, control),
|
| context));
|
| ASSERT_TRUE(r.Changed());
|
| - EXPECT_THAT(
|
| - r.replacement(),
|
| - IsPhi(kMachAnyTagged,
|
| - IsBooleanNot(IsNumberEqual(p0, IsNumberConstant(0))), p1, control));
|
| + EXPECT_THAT(r.replacement(),
|
| + IsPhi(kMachAnyTagged, IsBooleanNot(IsNumberEqual(
|
| + p0, IsNumberConstant(BitEq(0.0)))),
|
| + p1, control));
|
| }
|
|
|
|
|
| @@ -184,9 +188,10 @@ TEST_F(JSTypedLoweringTest, JSToBooleanWithSelect) {
|
| p1, p2),
|
| context));
|
| ASSERT_TRUE(r.Changed());
|
| - EXPECT_THAT(r.replacement(),
|
| - IsSelect(kMachAnyTagged, p0, IsTrueConstant(),
|
| - IsBooleanNot(IsNumberEqual(p2, IsNumberConstant(0)))));
|
| + EXPECT_THAT(
|
| + r.replacement(),
|
| + IsSelect(kMachAnyTagged, p0, IsTrueConstant(),
|
| + IsBooleanNot(IsNumberEqual(p2, IsNumberConstant(BitEq(0.0))))));
|
| }
|
|
|
|
|
| @@ -202,7 +207,7 @@ TEST_F(JSTypedLoweringTest, JSToNumberWithPlainPrimitive) {
|
| Reduction r = Reduce(graph()->NewNode(javascript()->ToNumber(), input,
|
| context, effect, control));
|
| ASSERT_TRUE(r.Changed());
|
| - EXPECT_THAT(r.replacement(), IsToNumber(input, IsNumberConstant(0),
|
| + EXPECT_THAT(r.replacement(), IsToNumber(input, IsNumberConstant(BitEq(0.0)),
|
| graph()->start(), control));
|
| }
|
|
|
| @@ -235,12 +240,13 @@ TEST_F(JSTypedLoweringTest, JSShiftLeftWithSigned32AndConstant) {
|
| Node* const context = UndefinedConstant();
|
| Node* const effect = graph()->start();
|
| Node* const control = graph()->start();
|
| - TRACED_FORRANGE(int32_t, rhs, 0, 31) {
|
| + TRACED_FORRANGE(double, rhs, 0, 31) {
|
| Reduction r =
|
| Reduce(graph()->NewNode(javascript()->ShiftLeft(), lhs,
|
| NumberConstant(rhs), context, effect, control));
|
| ASSERT_TRUE(r.Changed());
|
| - EXPECT_THAT(r.replacement(), IsWord32Shl(lhs, IsNumberConstant(rhs)));
|
| + EXPECT_THAT(r.replacement(),
|
| + IsWord32Shl(lhs, IsNumberConstant(BitEq(rhs))));
|
| }
|
| }
|
|
|
| @@ -268,12 +274,13 @@ TEST_F(JSTypedLoweringTest, JSShiftRightWithSigned32AndConstant) {
|
| Node* const context = UndefinedConstant();
|
| Node* const effect = graph()->start();
|
| Node* const control = graph()->start();
|
| - TRACED_FORRANGE(int32_t, rhs, 0, 31) {
|
| + TRACED_FORRANGE(double, rhs, 0, 31) {
|
| Reduction r =
|
| Reduce(graph()->NewNode(javascript()->ShiftRight(), lhs,
|
| NumberConstant(rhs), context, effect, control));
|
| ASSERT_TRUE(r.Changed());
|
| - EXPECT_THAT(r.replacement(), IsWord32Sar(lhs, IsNumberConstant(rhs)));
|
| + EXPECT_THAT(r.replacement(),
|
| + IsWord32Sar(lhs, IsNumberConstant(BitEq(rhs))));
|
| }
|
| }
|
|
|
| @@ -301,12 +308,13 @@ TEST_F(JSTypedLoweringTest, JSShiftRightLogicalWithUnsigned32AndConstant) {
|
| Node* const context = UndefinedConstant();
|
| Node* const effect = graph()->start();
|
| Node* const control = graph()->start();
|
| - TRACED_FORRANGE(int32_t, rhs, 0, 31) {
|
| + TRACED_FORRANGE(double, rhs, 0, 31) {
|
| Reduction r =
|
| Reduce(graph()->NewNode(javascript()->ShiftRightLogical(), lhs,
|
| NumberConstant(rhs), context, effect, control));
|
| ASSERT_TRUE(r.Changed());
|
| - EXPECT_THAT(r.replacement(), IsWord32Shr(lhs, IsNumberConstant(rhs)));
|
| + EXPECT_THAT(r.replacement(),
|
| + IsWord32Shr(lhs, IsNumberConstant(BitEq(rhs))));
|
| }
|
| }
|
|
|
|
|