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.h" | 8 #include "src/ast.h" |
9 #include "src/compiler/js-graph.h" | 9 #include "src/compiler/js-graph.h" |
10 | 10 |
(...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
224 const VectorSlotPair& feedback, | 224 const VectorSlotPair& feedback, |
225 ContextualMode mode = CONTEXTUAL); | 225 ContextualMode mode = CONTEXTUAL); |
226 | 226 |
227 // Builders for accessing the function context. | 227 // Builders for accessing the function context. |
228 Node* BuildLoadBuiltinsObject(); | 228 Node* BuildLoadBuiltinsObject(); |
229 Node* BuildLoadGlobalObject(); | 229 Node* BuildLoadGlobalObject(); |
230 Node* BuildLoadGlobalProxy(); | 230 Node* BuildLoadGlobalProxy(); |
231 Node* BuildLoadClosure(); | 231 Node* BuildLoadClosure(); |
232 Node* BuildLoadObjectField(Node* object, int offset); | 232 Node* BuildLoadObjectField(Node* object, int offset); |
233 | 233 |
| 234 // Builders for accessing external references. |
| 235 Node* BuildLoadExternal(ExternalReference ref, MachineType type); |
| 236 Node* BuildStoreExternal(ExternalReference ref, MachineType type, Node* val); |
| 237 |
234 // Builders for automatic type conversion. | 238 // Builders for automatic type conversion. |
235 Node* BuildToBoolean(Node* value); | 239 Node* BuildToBoolean(Node* value); |
236 Node* BuildToName(Node* value, BailoutId bailout_id); | 240 Node* BuildToName(Node* value, BailoutId bailout_id); |
237 | 241 |
238 // Builder for adding the [[HomeObject]] to a value if the value came from a | 242 // Builder for adding the [[HomeObject]] to a value if the value came from a |
239 // function literal and needs a home object. Do nothing otherwise. | 243 // function literal and needs a home object. Do nothing otherwise. |
240 Node* BuildSetHomeObject(Node* value, Node* home_object, Expression* expr); | 244 Node* BuildSetHomeObject(Node* value, Node* home_object, Expression* expr); |
241 | 245 |
242 // Builders for error reporting at runtime. | 246 // Builders for error reporting at runtime. |
243 Node* BuildThrowError(Node* exception, BailoutId bailout_id); | 247 Node* BuildThrowError(Node* exception, BailoutId bailout_id); |
(...skipping 232 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
476 | 480 |
477 // Prepare environment to be used as loop header. | 481 // Prepare environment to be used as loop header. |
478 void PrepareForLoop(BitVector* assigned, bool is_osr = false); | 482 void PrepareForLoop(BitVector* assigned, bool is_osr = false); |
479 }; | 483 }; |
480 | 484 |
481 } // namespace compiler | 485 } // namespace compiler |
482 } // namespace internal | 486 } // namespace internal |
483 } // namespace v8 | 487 } // namespace v8 |
484 | 488 |
485 #endif // V8_COMPILER_AST_GRAPH_BUILDER_H_ | 489 #endif // V8_COMPILER_AST_GRAPH_BUILDER_H_ |
OLD | NEW |