Index: src/full-codegen/arm/full-codegen-arm.cc |
diff --git a/src/full-codegen/arm/full-codegen-arm.cc b/src/full-codegen/arm/full-codegen-arm.cc |
index 131f0da758b27d87dd6fc22a31ee841e06cc2c8d..d4ca4e6bd68f4483b20c687a987c2d759ee4d332 100644 |
--- a/src/full-codegen/arm/full-codegen-arm.cc |
+++ b/src/full-codegen/arm/full-codegen-arm.cc |
@@ -671,8 +671,8 @@ void FullCodeGenerator::DoTest(Expression* condition, |
Label* fall_through) { |
Handle<Code> ic = ToBooleanStub::GetUninitialized(isolate()); |
CallIC(ic, condition->test_id()); |
- __ tst(result_register(), result_register()); |
- Split(ne, if_true, if_false, fall_through); |
+ __ CompareRoot(result_register(), Heap::kTrueValueRootIndex); |
+ Split(eq, if_true, if_false, fall_through); |
} |
@@ -2066,8 +2066,8 @@ void FullCodeGenerator::VisitYield(Yield* expr) { |
CallLoadIC(NOT_INSIDE_TYPEOF); // r0=result.done |
Handle<Code> bool_ic = ToBooleanStub::GetUninitialized(isolate()); |
CallIC(bool_ic); |
- __ cmp(r0, Operand(0)); |
- __ b(eq, &l_try); |
+ __ CompareRoot(result_register(), Heap::kTrueValueRootIndex); |
+ __ b(ne, &l_try); |
// result.value |
__ pop(load_receiver); // result |