| Index: src/ia32/stub-cache-ia32.cc
|
| diff --git a/src/ia32/stub-cache-ia32.cc b/src/ia32/stub-cache-ia32.cc
|
| index c0f40883e47836b160df1ca349537ebd6f2ff689..f00eac6d122f9840f6248d1859ca0828e51241c6 100644
|
| --- a/src/ia32/stub-cache-ia32.cc
|
| +++ b/src/ia32/stub-cache-ia32.cc
|
| @@ -1223,7 +1223,7 @@ Object* CallStubCompiler::CompileCallConstant(Object* object,
|
| // -- ...
|
| // -- esp[(argc + 1) * 4] : receiver
|
| // -----------------------------------
|
| - Label miss;
|
| + Label miss_in_smi_check;
|
|
|
| // Get the receiver from the stack.
|
| const int argc = arguments().immediate();
|
| @@ -1232,7 +1232,7 @@ Object* CallStubCompiler::CompileCallConstant(Object* object,
|
| // Check that the receiver isn't a smi.
|
| if (check != NUMBER_CHECK) {
|
| __ test(edx, Immediate(kSmiTagMask));
|
| - __ j(zero, &miss, not_taken);
|
| + __ j(zero, &miss_in_smi_check, not_taken);
|
| }
|
|
|
| // Make sure that it's okay not to patch the on stack receiver
|
| @@ -1241,6 +1241,7 @@ Object* CallStubCompiler::CompileCallConstant(Object* object,
|
|
|
| CallOptimization optimization(function);
|
| int depth = kInvalidProtoDepth;
|
| + Label miss;
|
|
|
| switch (check) {
|
| case RECEIVER_MAP_CHECK:
|
| @@ -1359,6 +1360,7 @@ Object* CallStubCompiler::CompileCallConstant(Object* object,
|
| if (depth != kInvalidProtoDepth) {
|
| FreeSpaceForFastApiCall(masm(), eax);
|
| }
|
| + __ bind(&miss_in_smi_check);
|
| Handle<Code> ic = ComputeCallMiss(arguments().immediate());
|
| __ jmp(ic, RelocInfo::CODE_TARGET);
|
|
|
|
|