Index: src/arm/lithium-codegen-arm.cc |
diff --git a/src/arm/lithium-codegen-arm.cc b/src/arm/lithium-codegen-arm.cc |
index 533d32c747427cb9ee3a9aad1d3fb54af98c3b62..83bcf55363d71e55e021ef2033021c47b3a898c6 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); |
} |