OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_COMPILER_AST_GRAPH_BUILDER_H_ | 5 #ifndef V8_COMPILER_AST_GRAPH_BUILDER_H_ |
6 #define V8_COMPILER_AST_GRAPH_BUILDER_H_ | 6 #define V8_COMPILER_AST_GRAPH_BUILDER_H_ |
7 | 7 |
8 #include "src/ast/ast.h" | 8 #include "src/ast/ast.h" |
9 #include "src/compiler/compiler-source-position-table.h" | 9 #include "src/compiler/compiler-source-position-table.h" |
10 #include "src/compiler/js-graph.h" | 10 #include "src/compiler/js-graph.h" |
(...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
241 | 241 |
242 // Computes local variable liveness and replaces dead variables in | 242 // Computes local variable liveness and replaces dead variables in |
243 // frame states with the undefined values. | 243 // frame states with the undefined values. |
244 void ClearNonLiveSlotsInFrameStates(); | 244 void ClearNonLiveSlotsInFrameStates(); |
245 | 245 |
246 Node** EnsureInputBufferSize(int size); | 246 Node** EnsureInputBufferSize(int size); |
247 | 247 |
248 // Named and keyed loads require a VectorSlotPair for successful lowering. | 248 // Named and keyed loads require a VectorSlotPair for successful lowering. |
249 VectorSlotPair CreateVectorSlotPair(FeedbackVectorSlot slot) const; | 249 VectorSlotPair CreateVectorSlotPair(FeedbackVectorSlot slot) const; |
250 | 250 |
251 // Computes the frequency for JSCallFunction and JSConstruct nodes. | 251 // Computes the frequency for JSCall and JSConstruct nodes. |
252 float ComputeCallFrequency(FeedbackVectorSlot slot) const; | 252 float ComputeCallFrequency(FeedbackVectorSlot slot) const; |
253 | 253 |
254 // =========================================================================== | 254 // =========================================================================== |
255 // The following build methods all generate graph fragments and return one | 255 // The following build methods all generate graph fragments and return one |
256 // resulting node. The operand stack height remains the same, variables and | 256 // resulting node. The operand stack height remains the same, variables and |
257 // other dependencies tracked by the environment might be mutated though. | 257 // other dependencies tracked by the environment might be mutated though. |
258 | 258 |
259 // Builders to create local function, script and block contexts. | 259 // Builders to create local function, script and block contexts. |
260 Node* BuildLocalActivationContext(Node* context); | 260 Node* BuildLocalActivationContext(Node* context); |
261 Node* BuildLocalFunctionContext(Scope* scope); | 261 Node* BuildLocalFunctionContext(Scope* scope); |
(...skipping 323 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
585 private: | 585 private: |
586 SourcePositionTable* const source_positions_; | 586 SourcePositionTable* const source_positions_; |
587 SourcePosition const start_position_; | 587 SourcePosition const start_position_; |
588 }; | 588 }; |
589 | 589 |
590 } // namespace compiler | 590 } // namespace compiler |
591 } // namespace internal | 591 } // namespace internal |
592 } // namespace v8 | 592 } // namespace v8 |
593 | 593 |
594 #endif // V8_COMPILER_AST_GRAPH_BUILDER_H_ | 594 #endif // V8_COMPILER_AST_GRAPH_BUILDER_H_ |
OLD | NEW |