| Index: src/ia32/lithium-codegen-ia32.cc
|
| ===================================================================
|
| --- src/ia32/lithium-codegen-ia32.cc (revision 6041)
|
| +++ src/ia32/lithium-codegen-ia32.cc (working copy)
|
| @@ -1699,9 +1699,8 @@
|
|
|
|
|
| void LCodeGen::DoInstanceOf(LInstanceOf* instr) {
|
| - InstanceofStub stub;
|
| - __ push(ToOperand(instr->left()));
|
| - __ push(ToOperand(instr->right()));
|
| + // Object and function are in fixed registers eax and edx.
|
| + InstanceofStub stub(InstanceofStub::kArgsInRegisters);
|
| CallCode(stub.GetCode(), RelocInfo::CODE_TARGET, instr);
|
|
|
| NearLabel true_value, done;
|
| @@ -1719,9 +1718,7 @@
|
| int true_block = chunk_->LookupDestination(instr->true_block_id());
|
| int false_block = chunk_->LookupDestination(instr->false_block_id());
|
|
|
| - InstanceofStub stub;
|
| - __ push(ToOperand(instr->left()));
|
| - __ push(ToOperand(instr->right()));
|
| + InstanceofStub stub(InstanceofStub::kArgsInRegisters);
|
| CallCode(stub.GetCode(), RelocInfo::CODE_TARGET, instr);
|
| __ test(eax, Operand(eax));
|
| EmitBranch(true_block, false_block, zero);
|
|
|