| Index: src/x64/stub-cache-x64.cc
 | 
| ===================================================================
 | 
| --- src/x64/stub-cache-x64.cc	(revision 4791)
 | 
| +++ src/x64/stub-cache-x64.cc	(working copy)
 | 
| @@ -695,6 +695,12 @@
 | 
|  
 | 
|  #define __ ACCESS_MASM((masm()))
 | 
|  
 | 
| +void CallStubCompiler::GenerateMissBranch() {
 | 
| +  Handle<Code> ic = ComputeCallMiss(arguments().immediate(), kind_);
 | 
| +  __ Jump(ic, RelocInfo::CODE_TARGET);
 | 
| +}
 | 
| +
 | 
| +
 | 
|  Object* CallStubCompiler::CompileCallConstant(Object* object,
 | 
|                                                JSObject* holder,
 | 
|                                                JSFunction* function,
 | 
| @@ -845,8 +851,7 @@
 | 
|  
 | 
|    // Handle call cache miss.
 | 
|    __ bind(&miss_in_smi_check);
 | 
| -  Handle<Code> ic = ComputeCallMiss(arguments().immediate());
 | 
| -  __ Jump(ic, RelocInfo::CODE_TARGET);
 | 
| +  GenerateMissBranch();
 | 
|  
 | 
|    // Return the generated code.
 | 
|    return GetCode(function);
 | 
| @@ -897,8 +902,7 @@
 | 
|  
 | 
|    // Handle call cache miss.
 | 
|    __ bind(&miss);
 | 
| -  Handle<Code> ic = ComputeCallMiss(arguments().immediate());
 | 
| -  __ Jump(ic, RelocInfo::CODE_TARGET);
 | 
| +  GenerateMissBranch();
 | 
|  
 | 
|    // Return the generated code.
 | 
|    return GetCode(FIELD, name);
 | 
| @@ -1052,8 +1056,7 @@
 | 
|  
 | 
|    __ bind(&miss);
 | 
|  
 | 
| -  Handle<Code> ic = ComputeCallMiss(arguments().immediate());
 | 
| -  __ jmp(ic, RelocInfo::CODE_TARGET);
 | 
| +  GenerateMissBranch();
 | 
|  
 | 
|    // Return the generated code.
 | 
|    return GetCode(function);
 | 
| @@ -1137,8 +1140,7 @@
 | 
|                                 1);
 | 
|    __ bind(&miss);
 | 
|  
 | 
| -  Handle<Code> ic = ComputeCallMiss(arguments().immediate());
 | 
| -  __ jmp(ic, RelocInfo::CODE_TARGET);
 | 
| +  GenerateMissBranch();
 | 
|  
 | 
|    // Return the generated code.
 | 
|    return GetCode(function);
 | 
| @@ -1221,8 +1223,7 @@
 | 
|  
 | 
|    // Handle load cache miss.
 | 
|    __ bind(&miss);
 | 
| -  Handle<Code> ic = ComputeCallMiss(argc);
 | 
| -  __ Jump(ic, RelocInfo::CODE_TARGET);
 | 
| +  GenerateMissBranch();
 | 
|  
 | 
|    // Return the generated code.
 | 
|    return GetCode(INTERCEPTOR, name);
 | 
| @@ -1305,8 +1306,7 @@
 | 
|    // Handle call cache miss.
 | 
|    __ bind(&miss);
 | 
|    __ IncrementCounter(&Counters::call_global_inline_miss, 1);
 | 
| -  Handle<Code> ic = ComputeCallMiss(arguments().immediate());
 | 
| -  __ Jump(ic, RelocInfo::CODE_TARGET);
 | 
| +  GenerateMissBranch();
 | 
|  
 | 
|    // Return the generated code.
 | 
|    return GetCode(NORMAL, name);
 | 
| 
 |