| Index: src/arm/lithium-codegen-arm.cc
|
| ===================================================================
|
| --- src/arm/lithium-codegen-arm.cc (revision 8444)
|
| +++ src/arm/lithium-codegen-arm.cc (working copy)
|
| @@ -1796,13 +1796,13 @@
|
|
|
| Condition LCodeGen::EmitIsObject(Register input,
|
| Register temp1,
|
| - Register temp2,
|
| Label* is_not_object,
|
| Label* is_object) {
|
| + Register temp2 = scratch0();
|
| __ JumpIfSmi(input, is_not_object);
|
|
|
| - __ LoadRoot(temp1, Heap::kNullValueRootIndex);
|
| - __ cmp(input, temp1);
|
| + __ LoadRoot(temp2, Heap::kNullValueRootIndex);
|
| + __ cmp(input, temp2);
|
| __ b(eq, is_object);
|
|
|
| // Load map.
|
| @@ -1824,10 +1824,9 @@
|
| void LCodeGen::DoIsObject(LIsObject* instr) {
|
| Register reg = ToRegister(instr->InputAt(0));
|
| Register result = ToRegister(instr->result());
|
| - Register temp = scratch0();
|
| Label is_false, is_true, done;
|
|
|
| - Condition true_cond = EmitIsObject(reg, result, temp, &is_false, &is_true);
|
| + Condition true_cond = EmitIsObject(reg, result, &is_false, &is_true);
|
| __ b(true_cond, &is_true);
|
|
|
| __ bind(&is_false);
|
| @@ -1852,7 +1851,7 @@
|
| Label* false_label = chunk_->GetAssemblyLabel(false_block);
|
|
|
| Condition true_cond =
|
| - EmitIsObject(reg, temp1, temp2, false_label, true_label);
|
| + EmitIsObject(reg, temp1, false_label, true_label);
|
|
|
| EmitBranch(true_block, false_block, true_cond);
|
| }
|
|
|