| Index: src/compiler/js-create-lowering.cc
|
| diff --git a/src/compiler/js-create-lowering.cc b/src/compiler/js-create-lowering.cc
|
| index 4161453f4fc7ab2c0cf50b331f8db689b40a7156..e8c72eb172bccdd78ad4f94855ce23e25fcffe33 100644
|
| --- a/src/compiler/js-create-lowering.cc
|
| +++ b/src/compiler/js-create-lowering.cc
|
| @@ -198,9 +198,13 @@ bool IsFastLiteral(Handle<JSObject> boilerplate, int max_depth,
|
| }
|
|
|
| // Maximum depth and total number of elements and properties for literal
|
| -// graphs to be considered for fast deep-copying.
|
| +// graphs to be considered for fast deep-copying. The limit is chosen to
|
| +// match the maximum number of inobject properties, to ensure that the
|
| +// performance of using object literals is not worse than using constructor
|
| +// functions, see crbug.com/v8/6211 for details.
|
| const int kMaxFastLiteralDepth = 3;
|
| -const int kMaxFastLiteralProperties = 8;
|
| +const int kMaxFastLiteralProperties =
|
| + (JSObject::kMaxInstanceSize - JSObject::kHeaderSize) >> kPointerSizeLog2;
|
|
|
| } // namespace
|
|
|
|
|