Index: src/ia32/stub-cache-ia32.cc |
diff --git a/src/ia32/stub-cache-ia32.cc b/src/ia32/stub-cache-ia32.cc |
index 924a4897499388fafb4ef0630b5d183401f056e9..3379ff00fdd5b4db01865c5472b7b133a3f78ee7 100644 |
--- a/src/ia32/stub-cache-ia32.cc |
+++ b/src/ia32/stub-cache-ia32.cc |
@@ -1924,7 +1924,7 @@ MaybeObject* CallStubCompiler::CompileMathFloorCall(Object* object, |
// Check if the argument is a heap number and load its value into xmm0. |
Label slow; |
- __ CheckMap(eax, factory()->heap_number_map(), &slow, true); |
+ __ CheckMap(eax, factory()->heap_number_map(), &slow, DONT_DO_SMI_CHECK); |
__ movdbl(xmm0, FieldOperand(eax, HeapNumber::kValueOffset)); |
// Check if the argument is strictly positive. Note this also |
@@ -2068,7 +2068,7 @@ MaybeObject* CallStubCompiler::CompileMathAbsCall(Object* object, |
// Check if the argument is a heap number and load its exponent and |
// sign into ebx. |
__ bind(¬_smi); |
- __ CheckMap(eax, factory()->heap_number_map(), &slow, true); |
+ __ CheckMap(eax, factory()->heap_number_map(), &slow, DONT_DO_SMI_CHECK); |
__ mov(ebx, FieldOperand(eax, HeapNumber::kExponentOffset)); |
// Check the sign of the argument. If the argument is positive, |
@@ -3322,7 +3322,7 @@ MaybeObject* ExternalArrayStubCompiler::CompileKeyedLoadStub( |
__ j(not_zero, &slow); |
// Check that the map matches. |
- __ CheckMap(edx, Handle<Map>(receiver->map()), &slow, false); |
+ __ CheckMap(edx, Handle<Map>(receiver->map()), &slow, DO_SMI_CHECK); |
__ mov(ebx, FieldOperand(edx, JSObject::kElementsOffset)); |
// eax: key, known to be a smi. |
@@ -3476,7 +3476,7 @@ MaybeObject* ExternalArrayStubCompiler::CompileKeyedStoreStub( |
__ j(zero, &slow); |
// Check that the map matches. |
- __ CheckMap(edx, Handle<Map>(receiver->map()), &slow, false); |
+ __ CheckMap(edx, Handle<Map>(receiver->map()), &slow, DO_SMI_CHECK); |
// Check that the key is a smi. |
__ test(ecx, Immediate(kSmiTagMask)); |