| Index: src/x64/stub-cache-x64.cc
 | 
| ===================================================================
 | 
| --- src/x64/stub-cache-x64.cc	(revision 5185)
 | 
| +++ src/x64/stub-cache-x64.cc	(working copy)
 | 
| @@ -820,9 +820,11 @@
 | 
|  }
 | 
|  
 | 
|  
 | 
| -void CallStubCompiler::GenerateMissBranch() {
 | 
| -  Handle<Code> ic = ComputeCallMiss(arguments().immediate(), kind_);
 | 
| -  __ Jump(ic, RelocInfo::CODE_TARGET);
 | 
| +Object* CallStubCompiler::GenerateMissBranch() {
 | 
| +  Object* obj = StubCache::ComputeCallMiss(arguments().immediate(), kind_);
 | 
| +  if (obj->IsFailure()) return obj;
 | 
| +  __ Jump(Handle<Code>(Code::cast(obj)), RelocInfo::CODE_TARGET);
 | 
| +  return obj;
 | 
|  }
 | 
|  
 | 
|  
 | 
| @@ -975,7 +977,8 @@
 | 
|  
 | 
|    // Handle call cache miss.
 | 
|    __ bind(&miss_in_smi_check);
 | 
| -  GenerateMissBranch();
 | 
| +  Object* obj = GenerateMissBranch();
 | 
| +  if (obj->IsFailure()) return obj;
 | 
|  
 | 
|    // Return the generated code.
 | 
|    return GetCode(function);
 | 
| @@ -1029,7 +1032,8 @@
 | 
|  
 | 
|    // Handle call cache miss.
 | 
|    __ bind(&miss);
 | 
| -  GenerateMissBranch();
 | 
| +  Object* obj = GenerateMissBranch();
 | 
| +  if (obj->IsFailure()) return obj;
 | 
|  
 | 
|    // Return the generated code.
 | 
|    return GetCode(FIELD, name);
 | 
| @@ -1186,9 +1190,9 @@
 | 
|    }
 | 
|  
 | 
|    __ bind(&miss);
 | 
| +  Object* obj = GenerateMissBranch();
 | 
| +  if (obj->IsFailure()) return obj;
 | 
|  
 | 
| -  GenerateMissBranch();
 | 
| -
 | 
|    // Return the generated code.
 | 
|    return GetCode(function);
 | 
|  }
 | 
| @@ -1270,9 +1274,9 @@
 | 
|                                 argc + 1,
 | 
|                                 1);
 | 
|    __ bind(&miss);
 | 
| +  Object* obj = GenerateMissBranch();
 | 
| +  if (obj->IsFailure()) return obj;
 | 
|  
 | 
| -  GenerateMissBranch();
 | 
| -
 | 
|    // Return the generated code.
 | 
|    return GetCode(function);
 | 
|  }
 | 
| @@ -1357,7 +1361,8 @@
 | 
|  
 | 
|    // Handle load cache miss.
 | 
|    __ bind(&miss);
 | 
| -  GenerateMissBranch();
 | 
| +  Object* obj = GenerateMissBranch();
 | 
| +  if (obj->IsFailure()) return obj;
 | 
|  
 | 
|    // Return the generated code.
 | 
|    return GetCode(INTERCEPTOR, name);
 | 
| @@ -1442,7 +1447,8 @@
 | 
|    // Handle call cache miss.
 | 
|    __ bind(&miss);
 | 
|    __ IncrementCounter(&Counters::call_global_inline_miss, 1);
 | 
| -  GenerateMissBranch();
 | 
| +  Object* obj = GenerateMissBranch();
 | 
| +  if (obj->IsFailure()) return obj;
 | 
|  
 | 
|    // Return the generated code.
 | 
|    return GetCode(NORMAL, name);
 | 
| 
 |