| Index: src/full-codegen/arm64/full-codegen-arm64.cc
|
| diff --git a/src/full-codegen/arm64/full-codegen-arm64.cc b/src/full-codegen/arm64/full-codegen-arm64.cc
|
| index e930a8e99019dd516ab3bd0d24dffc36c5ed66c2..5d7b51d37d41a0fe12498e7cb69e7ccc9bd46790 100644
|
| --- a/src/full-codegen/arm64/full-codegen-arm64.cc
|
| +++ b/src/full-codegen/arm64/full-codegen-arm64.cc
|
| @@ -674,7 +674,8 @@ void FullCodeGenerator::DoTest(Expression* condition,
|
| Label* fall_through) {
|
| Handle<Code> ic = ToBooleanStub::GetUninitialized(isolate());
|
| CallIC(ic, condition->test_id());
|
| - __ CompareAndSplit(result_register(), 0, ne, if_true, if_false, fall_through);
|
| + __ CompareRoot(result_register(), Heap::kTrueValueRootIndex);
|
| + Split(eq, if_true, if_false, fall_through);
|
| }
|
|
|
|
|
| @@ -4609,7 +4610,8 @@ void FullCodeGenerator::VisitYield(Yield* expr) {
|
| // The ToBooleanStub argument (result.done) is in x0.
|
| Handle<Code> bool_ic = ToBooleanStub::GetUninitialized(isolate());
|
| CallIC(bool_ic);
|
| - __ Cbz(x0, &l_try);
|
| + __ CompareRoot(result_register(), Heap::kTrueValueRootIndex);
|
| + __ B(ne, &l_try);
|
|
|
| // result.value
|
| __ Pop(load_receiver); // result
|
|
|