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/v8.h" | 8 #include "src/v8.h" |
9 | 9 |
10 #include "src/ast.h" | 10 #include "src/ast.h" |
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
200 // Builder to create a receiver check for sloppy mode. | 200 // Builder to create a receiver check for sloppy mode. |
201 Node* BuildPatchReceiverToGlobalProxy(Node* receiver); | 201 Node* BuildPatchReceiverToGlobalProxy(Node* receiver); |
202 | 202 |
203 // Builders to create local function and block contexts. | 203 // Builders to create local function and block contexts. |
204 Node* BuildLocalFunctionContext(Node* context, Node* closure); | 204 Node* BuildLocalFunctionContext(Node* context, Node* closure); |
205 Node* BuildLocalBlockContext(Scope* scope); | 205 Node* BuildLocalBlockContext(Scope* scope); |
206 | 206 |
207 // Builder to create an arguments object if it is used. | 207 // Builder to create an arguments object if it is used. |
208 Node* BuildArgumentsObject(Variable* arguments); | 208 Node* BuildArgumentsObject(Variable* arguments); |
209 | 209 |
| 210 // Builder to create an array of rest parameters if used |
| 211 Node* BuildRestArgumentsArray(Variable* rest, int index); |
| 212 |
210 // Builders for variable load and assignment. | 213 // Builders for variable load and assignment. |
211 Node* BuildVariableAssignment(Variable* var, Node* value, Token::Value op, | 214 Node* BuildVariableAssignment(Variable* var, Node* value, Token::Value op, |
212 BailoutId bailout_id, | 215 BailoutId bailout_id, |
213 OutputFrameStateCombine state_combine = | 216 OutputFrameStateCombine state_combine = |
214 OutputFrameStateCombine::Ignore()); | 217 OutputFrameStateCombine::Ignore()); |
215 Node* BuildVariableDelete(Variable* var, BailoutId bailout_id, | 218 Node* BuildVariableDelete(Variable* var, BailoutId bailout_id, |
216 OutputFrameStateCombine state_combine); | 219 OutputFrameStateCombine state_combine); |
217 Node* BuildVariableLoad(Variable* var, BailoutId bailout_id, | 220 Node* BuildVariableLoad(Variable* var, BailoutId bailout_id, |
218 const VectorSlotPair& feedback, | 221 const VectorSlotPair& feedback, |
219 ContextualMode mode = CONTEXTUAL); | 222 ContextualMode mode = CONTEXTUAL); |
(...skipping 232 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
452 | 455 |
453 // Prepare environment to be used as loop header. | 456 // Prepare environment to be used as loop header. |
454 void PrepareForLoop(BitVector* assigned, bool is_osr = false); | 457 void PrepareForLoop(BitVector* assigned, bool is_osr = false); |
455 }; | 458 }; |
456 | 459 |
457 } // namespace compiler | 460 } // namespace compiler |
458 } // namespace internal | 461 } // namespace internal |
459 } // namespace v8 | 462 } // namespace v8 |
460 | 463 |
461 #endif // V8_COMPILER_AST_GRAPH_BUILDER_H_ | 464 #endif // V8_COMPILER_AST_GRAPH_BUILDER_H_ |
OLD | NEW |