| Index: src/ia32/stub-cache-ia32.cc
|
| ===================================================================
|
| --- src/ia32/stub-cache-ia32.cc (revision 5176)
|
| +++ src/ia32/stub-cache-ia32.cc (working copy)
|
| @@ -1287,11 +1287,9 @@
|
| }
|
|
|
|
|
| -Object* CallStubCompiler::GenerateMissBranch() {
|
| - Object* obj = StubCache::ComputeCallMiss(arguments().immediate(), kind_);
|
| - if (obj->IsFailure()) return obj;
|
| - __ jmp(Handle<Code>(Code::cast(obj)), RelocInfo::CODE_TARGET);
|
| - return obj;
|
| +void CallStubCompiler::GenerateMissBranch() {
|
| + Handle<Code> ic = ComputeCallMiss(arguments().immediate(), kind_);
|
| + __ jmp(ic, RelocInfo::CODE_TARGET);
|
| }
|
|
|
|
|
| @@ -1342,8 +1340,7 @@
|
|
|
| // Handle call cache miss.
|
| __ bind(&miss);
|
| - Object* obj = GenerateMissBranch();
|
| - if (obj->IsFailure()) return obj;
|
| + GenerateMissBranch();
|
|
|
| // Return the generated code.
|
| return GetCode(FIELD, name);
|
| @@ -1490,8 +1487,7 @@
|
| }
|
|
|
| __ bind(&miss);
|
| - Object* obj = GenerateMissBranch();
|
| - if (obj->IsFailure()) return obj;
|
| + GenerateMissBranch();
|
|
|
| // Return the generated code.
|
| return GetCode(function);
|
| @@ -1574,8 +1570,7 @@
|
| 1);
|
|
|
| __ bind(&miss);
|
| - Object* obj = GenerateMissBranch();
|
| - if (obj->IsFailure()) return obj;
|
| + GenerateMissBranch();
|
|
|
| // Return the generated code.
|
| return GetCode(function);
|
| @@ -1638,9 +1633,9 @@
|
| __ ret((argc + 1) * kPointerSize);
|
|
|
| __ bind(&miss);
|
| - Object* obj = GenerateMissBranch();
|
| - if (obj->IsFailure()) return obj;
|
|
|
| + GenerateMissBranch();
|
| +
|
| // Return the generated code.
|
| return GetCode(function);
|
| }
|
| @@ -1705,9 +1700,10 @@
|
| __ ret((argc + 1) * kPointerSize);
|
|
|
| __ bind(&miss);
|
| - Object* obj = GenerateMissBranch();
|
| - if (obj->IsFailure()) return obj;
|
| + // Restore function name in ecx.
|
|
|
| + GenerateMissBranch();
|
| +
|
| // Return the generated code.
|
| return GetCode(function);
|
| }
|
| @@ -1860,8 +1856,7 @@
|
| FreeSpaceForFastApiCall(masm(), eax);
|
| }
|
| __ bind(&miss_in_smi_check);
|
| - Object* obj = GenerateMissBranch();
|
| - if (obj->IsFailure()) return obj;
|
| + GenerateMissBranch();
|
|
|
| // Return the generated code.
|
| return GetCode(function);
|
| @@ -1925,8 +1920,7 @@
|
|
|
| // Handle load cache miss.
|
| __ bind(&miss);
|
| - Object* obj = GenerateMissBranch();
|
| - if (obj->IsFailure()) return obj;
|
| + GenerateMissBranch();
|
|
|
| // Return the generated code.
|
| return GetCode(INTERCEPTOR, name);
|
| @@ -2011,8 +2005,7 @@
|
| // Handle call cache miss.
|
| __ bind(&miss);
|
| __ IncrementCounter(&Counters::call_global_inline_miss, 1);
|
| - Object* obj = GenerateMissBranch();
|
| - if (obj->IsFailure()) return obj;
|
| + GenerateMissBranch();
|
|
|
| // Return the generated code.
|
| return GetCode(NORMAL, name);
|
|
|