Chromium Code Reviews| Index: src/hydrogen.h |
| diff --git a/src/hydrogen.h b/src/hydrogen.h |
| index 6dea1a6807479cc66e6970d070b1e51361626c7f..3f2841d3a3f47997a4b33cdcfb66ecf66ea29962 100644 |
| --- a/src/hydrogen.h |
| +++ b/src/hydrogen.h |
| @@ -1183,6 +1183,11 @@ class HOptimizedGraphBuilder: public HGraphBuilder, public AstVisitor { |
| static const int kUnlimitedMaxInlinedNodes = 10000; |
| static const int kUnlimitedMaxInlinedNodesCumulative = 10000; |
| + // Maximum depth and total number of elements and properties for literal |
| + // graphs to be considered for fast deep-copying. |
| + static const int kMaxLiteralDepth = 3; |
|
Michael Starzinger
2013/04/03 09:23:23
We should name this "kMaxFastLiteralDepth" and "kM
Hannes Payer (out of office)
2013/04/08 11:03:00
Done.
|
| + static const int kMaxLiteralProperties = 8; |
| + |
| // Simple accessors. |
| void set_function_state(FunctionState* state) { function_state_ = state; } |
| @@ -1453,6 +1458,19 @@ class HOptimizedGraphBuilder: public HGraphBuilder, public AstVisitor { |
| HInstruction* BuildThisFunction(); |
| + HInstruction* BuildFastLiteral(HValue* context, |
| + Handle<JSObject> boilerplate_object, |
| + int size, |
| + AllocationSiteMode mode, |
| + BailoutId id); |
| + |
| + void BuildEmitDeepCopy(Handle<JSObject> object, |
| + HInstruction* result, |
| + HInstruction* source, |
| + int* offset, |
| + AllocationSiteMode mode, |
| + BailoutId id); |
| + |
| void AddCheckPrototypeMaps(Handle<JSObject> holder, |
| Handle<Map> receiver_map); |