Chromium Code Reviews| Index: src/compiler/ast-graph-builder.h |
| diff --git a/src/compiler/ast-graph-builder.h b/src/compiler/ast-graph-builder.h |
| index 28fbd580b0307e64825e7f956efdb9407e66e07a..031c599f5eaa2248402652d5a3a1898371f964f1 100644 |
| --- a/src/compiler/ast-graph-builder.h |
| +++ b/src/compiler/ast-graph-builder.h |
| @@ -20,6 +20,7 @@ class Graph; |
| class LoopAssignmentAnalysis; |
| class LoopBuilder; |
| class Node; |
| +class StateValuesCache; |
| // The AstGraphBuilder produces a high-level IR graph, based on an |
| // underlying AST. The produced graph can either be compiled into a |
| @@ -97,6 +98,9 @@ class AstGraphBuilder : public AstVisitor { |
| // Result of loop assignment analysis performed before graph creation. |
| LoopAssignmentAnalysis* loop_assignment_analysis_; |
| + // Cache for StateValues nodes for frame states. |
| + StateValuesCache* state_values_cache_; |
|
Benedikt Meurer
2015/03/16 10:18:33
Just embed the object at this pointer. There's no
Jarin
2015/03/16 10:26:33
Except that I do not need to include the header if
Benedikt Meurer
2015/03/16 10:33:35
"If it would otherwise make sense to use a type as
|
| + |
| // Growth increment for the temporary buffer used to construct input lists to |
| // new nodes. |
| static const int kInputBufferSizeIncrement = 64; |
| @@ -490,6 +494,7 @@ class AstGraphBuilder::Environment : public ZoneObject { |
| explicit Environment(const Environment* copy); |
| Environment* Copy() { return new (zone()) Environment(this); } |
| void UpdateStateValues(Node** state_values, int offset, int count); |
| + void UpdateStateValuesWithCache(Node** state_values, int offset, int count); |
| Zone* zone() const { return builder_->local_zone(); } |
| Graph* graph() const { return builder_->graph(); } |
| AstGraphBuilder* builder() const { return builder_; } |