| 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);
|
|
|