Index: src/ia32/full-codegen-ia32.cc |
diff --git a/src/ia32/full-codegen-ia32.cc b/src/ia32/full-codegen-ia32.cc |
index 88dad86da8379d1b09526661876cf8286bc33a31..aa1af8e3ffd1e77384543bb85a312f703e535647 100644 |
--- a/src/ia32/full-codegen-ia32.cc |
+++ b/src/ia32/full-codegen-ia32.cc |
@@ -1739,7 +1739,7 @@ void FullCodeGenerator::VisitArrayLiteral(ArrayLiteral* expr) { |
allocation_site_mode = DONT_TRACK_ALLOCATION_SITE; |
} |
- if (expr->depth() > 1) { |
+ if (expr->depth() > 1 || length > JSObject::kInitialMaxFastElementArray) { |
__ mov(ebx, Operand(ebp, JavaScriptFrameConstants::kFunctionOffset)); |
__ push(FieldOperand(ebx, JSFunction::kLiteralsOffset)); |
__ push(Immediate(Smi::FromInt(expr->literal_index()))); |