Index: test/cctest/compiler/test-js-typed-lowering.cc |
diff --git a/test/cctest/compiler/test-js-typed-lowering.cc b/test/cctest/compiler/test-js-typed-lowering.cc |
index 92fdb6e874948fe5dce46b25086973095a75b157..5bef8aee00466fc2dd5e31f3fa34372d711544e3 100644 |
--- a/test/cctest/compiler/test-js-typed-lowering.cc |
+++ b/test/cctest/compiler/test-js-typed-lowering.cc |
@@ -690,14 +690,14 @@ TEST_WITH_STRONG(MixedComparison1) { |
{ |
Node* cmp = R.Binop(R.javascript.LessThan(language_mode), p0, p1); |
Node* r = R.reduce(cmp); |
- |
- if (!types[i]->Maybe(Type::String()) || |
- !types[j]->Maybe(Type::String())) { |
- if (types[i]->Is(Type::String()) && types[j]->Is(Type::String())) { |
- R.CheckPureBinop(R.simplified.StringLessThan(), r); |
- } else { |
- R.CheckPureBinop(R.simplified.NumberLessThan(), r); |
- } |
+ if (types[i]->Is(Type::String()) && types[j]->Is(Type::String())) { |
+ R.CheckPureBinop(R.simplified.StringLessThan(), r); |
+ } else if ((types[i]->Is(Type::Number()) && |
+ types[j]->Is(Type::Number())) || |
+ (!is_strong(language_mode) && |
+ (!types[i]->Maybe(Type::String()) || |
+ !types[j]->Maybe(Type::String())))) { |
+ R.CheckPureBinop(R.simplified.NumberLessThan(), r); |
} else { |
CHECK_EQ(cmp, r); // No reduction of mixed types. |
} |