Index: src/ic/x87/handler-compiler-x87.cc |
diff --git a/src/ic/x87/handler-compiler-x87.cc b/src/ic/x87/handler-compiler-x87.cc |
index 3c3f18699221e2de828c0096d07160b4770b52ae..ba6e0327be4d34673a0d044dba5e182b5662f160 100644 |
--- a/src/ic/x87/handler-compiler-x87.cc |
+++ b/src/ic/x87/handler-compiler-x87.cc |
@@ -206,6 +206,12 @@ void PropertyHandlerCompiler::GenerateApiAccessorCall( |
__ mov(data, FieldOperand(data, CallHandlerInfo::kDataOffset)); |
} |
+ if (api_call_info->fast_handler()->IsCode()) { |
+ // Just tail call into the code. |
+ __ Jump(handle(Code::cast(api_call_info->fast_handler())), |
+ RelocInfo::CODE_TARGET); |
+ return; |
+ } |
// Put api_function_address in place. |
Address function_address = v8::ToCData<Address>(api_call_info->callback()); |
__ mov(api_function_address, Immediate(function_address)); |