Index: src/arm/lithium-codegen-arm.cc |
diff --git a/src/arm/lithium-codegen-arm.cc b/src/arm/lithium-codegen-arm.cc |
index 90899430c25283f83710ae6c38ec50a2d5c9beab..dfc48917da603daf2091d57ee19b19fee6fee572 100644 |
--- a/src/arm/lithium-codegen-arm.cc |
+++ b/src/arm/lithium-codegen-arm.cc |
@@ -1337,7 +1337,14 @@ void LCodeGen::DoCmpMapAndBranch(LCmpMapAndBranch* instr) { |
void LCodeGen::DoInstanceOf(LInstanceOf* instr) { |
- Abort("DoInstanceOf unimplemented."); |
+ // We expect object and function in registers r1 and r0. |
+ InstanceofStub stub(InstanceofStub::kArgsInRegisters); |
+ CallCode(stub.GetCode(), RelocInfo::CODE_TARGET, instr); |
+ |
+ Label true_value, done; |
+ __ tst(r0, r0); |
+ __ mov(r0, Operand(Factory::false_value()), LeaveCC, eq); |
+ __ mov(r0, Operand(Factory::true_value()), LeaveCC, ne); |
} |