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 #include "src/compiler/liveness-analyzer.h" | 10 #include "src/compiler/liveness-analyzer.h" |
(...skipping 290 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
301 // Builders for accessing the function context. | 301 // Builders for accessing the function context. |
302 Node* BuildLoadGlobalObject(); | 302 Node* BuildLoadGlobalObject(); |
303 Node* BuildLoadNativeContextField(int index); | 303 Node* BuildLoadNativeContextField(int index); |
304 Node* BuildLoadGlobalProxy(); | 304 Node* BuildLoadGlobalProxy(); |
305 Node* BuildLoadFeedbackVector(); | 305 Node* BuildLoadFeedbackVector(); |
306 | 306 |
307 // Builder for accessing a (potentially immutable) object field. | 307 // Builder for accessing a (potentially immutable) object field. |
308 Node* BuildLoadObjectField(Node* object, int offset); | 308 Node* BuildLoadObjectField(Node* object, int offset); |
309 Node* BuildLoadImmutableObjectField(Node* object, int offset); | 309 Node* BuildLoadImmutableObjectField(Node* object, int offset); |
310 | 310 |
311 // Builders for accessing external references. | |
312 Node* BuildLoadExternal(ExternalReference ref, MachineType type); | |
313 Node* BuildStoreExternal(ExternalReference ref, MachineType type, Node* val); | |
314 | |
315 // Builders for automatic type conversion. | 311 // Builders for automatic type conversion. |
316 Node* BuildToBoolean(Node* input); | 312 Node* BuildToBoolean(Node* input); |
317 Node* BuildToName(Node* input, BailoutId bailout_id); | 313 Node* BuildToName(Node* input, BailoutId bailout_id); |
318 Node* BuildToObject(Node* input, BailoutId bailout_id); | 314 Node* BuildToObject(Node* input, BailoutId bailout_id); |
319 | 315 |
320 // Builder for adding the [[HomeObject]] to a value if the value came from a | 316 // Builder for adding the [[HomeObject]] to a value if the value came from a |
321 // function literal and needs a home object. Do nothing otherwise. | 317 // function literal and needs a home object. Do nothing otherwise. |
322 Node* BuildSetHomeObject(Node* value, Node* home_object, | 318 Node* BuildSetHomeObject(Node* value, Node* home_object, |
323 ObjectLiteralProperty* property, | 319 ObjectLiteralProperty* property, |
324 int slot_number = 0); | 320 int slot_number = 0); |
(...skipping 247 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
572 | 568 |
573 // Prepare environment to be used as loop header. | 569 // Prepare environment to be used as loop header. |
574 void PrepareForLoop(BitVector* assigned, bool is_osr = false); | 570 void PrepareForLoop(BitVector* assigned, bool is_osr = false); |
575 }; | 571 }; |
576 | 572 |
577 } // namespace compiler | 573 } // namespace compiler |
578 } // namespace internal | 574 } // namespace internal |
579 } // namespace v8 | 575 } // namespace v8 |
580 | 576 |
581 #endif // V8_COMPILER_AST_GRAPH_BUILDER_H_ | 577 #endif // V8_COMPILER_AST_GRAPH_BUILDER_H_ |
OLD | NEW |