Index: src/ia32/full-codegen-ia32.cc |
diff --git a/src/ia32/full-codegen-ia32.cc b/src/ia32/full-codegen-ia32.cc |
index bfdc7bb6614a771fee5d5052a1fba47bc776dae1..01ad35b75dac70ac868561dd9b810d7c96ebe7ad 100644 |
--- a/src/ia32/full-codegen-ia32.cc |
+++ b/src/ia32/full-codegen-ia32.cc |
@@ -1619,7 +1619,8 @@ void FullCodeGenerator::VisitObjectLiteral(ObjectLiteral* expr) { |
? ObjectLiteral::kHasFunction |
: ObjectLiteral::kNoFlags; |
int properties_count = constant_properties->length() / 2; |
- if (expr->may_store_doubles() || expr->depth() > 1 || Serializer::enabled() || |
+ if (expr->may_store_doubles() || expr->depth() > 1 || |
+ Serializer::enabled(isolate()) || |
flags != ObjectLiteral::kFastElements || |
properties_count > FastCloneShallowObjectStub::kMaximumClonedProperties) { |
__ mov(edi, Operand(ebp, JavaScriptFrameConstants::kFunctionOffset)); |
@@ -1774,7 +1775,7 @@ void FullCodeGenerator::VisitArrayLiteral(ArrayLiteral* expr) { |
allocation_site_mode, |
length); |
__ CallStub(&stub); |
- } else if (expr->depth() > 1 || Serializer::enabled() || |
+ } else if (expr->depth() > 1 || Serializer::enabled(isolate()) || |
length > FastCloneShallowArrayStub::kMaximumClonedLength) { |
__ mov(ebx, Operand(ebp, JavaScriptFrameConstants::kFunctionOffset)); |
__ push(FieldOperand(ebx, JSFunction::kLiteralsOffset)); |