Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(699)

Unified Diff: src/hydrogen.h

Issue 12880017: Build fast literals in hydrogen. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 7 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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);
« no previous file with comments | « src/arm/lithium-codegen-arm.cc ('k') | src/hydrogen.cc » ('j') | src/hydrogen.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698