OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 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_BYTECODE_GRAPH_BUILDER_H_ | 5 #ifndef V8_COMPILER_BYTECODE_GRAPH_BUILDER_H_ |
6 #define V8_COMPILER_BYTECODE_GRAPH_BUILDER_H_ | 6 #define V8_COMPILER_BYTECODE_GRAPH_BUILDER_H_ |
7 | 7 |
8 #include "src/compiler.h" | 8 #include "src/compiler.h" |
9 #include "src/compiler/bytecode-branch-analysis.h" | 9 #include "src/compiler/bytecode-branch-analysis.h" |
10 #include "src/compiler/js-graph.h" | 10 #include "src/compiler/js-graph.h" |
(...skipping 22 matching lines...) Expand all Loading... |
33 | 33 |
34 // Get or create the node that represents the outer function closure. | 34 // Get or create the node that represents the outer function closure. |
35 Node* GetFunctionClosure(); | 35 Node* GetFunctionClosure(); |
36 | 36 |
37 // Get or create the node that represents the outer function context. | 37 // Get or create the node that represents the outer function context. |
38 Node* GetFunctionContext(); | 38 Node* GetFunctionContext(); |
39 | 39 |
40 // Get or create the node that represents the incoming new target value. | 40 // Get or create the node that represents the incoming new target value. |
41 Node* GetNewTarget(); | 41 Node* GetNewTarget(); |
42 | 42 |
43 // Builder for accessing a (potentially immutable) object field. | |
44 Node* BuildLoadImmutableObjectField(Node* object, int offset); | |
45 | |
46 // Builder for accessing type feedback vector. | |
47 Node* BuildLoadFeedbackVector(); | |
48 | |
49 // Builder for loading the a native context field. | 43 // Builder for loading the a native context field. |
50 Node* BuildLoadNativeContextField(int index); | 44 Node* BuildLoadNativeContextField(int index); |
51 | 45 |
52 // Helper function for creating a pair containing type feedback vector and | 46 // Helper function for creating a pair containing type feedback vector and |
53 // a feedback slot. | 47 // a feedback slot. |
54 VectorSlotPair CreateVectorSlotPair(int slot_id); | 48 VectorSlotPair CreateVectorSlotPair(int slot_id); |
55 | 49 |
56 void set_environment(Environment* env) { environment_ = env; } | 50 void set_environment(Environment* env) { environment_ = env; } |
57 const Environment* environment() const { return environment_; } | 51 const Environment* environment() const { return environment_; } |
58 Environment* environment() { return environment_; } | 52 Environment* environment() { return environment_; } |
(...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
253 ZoneVector<Node*> exit_controls_; | 247 ZoneVector<Node*> exit_controls_; |
254 | 248 |
255 DISALLOW_COPY_AND_ASSIGN(BytecodeGraphBuilder); | 249 DISALLOW_COPY_AND_ASSIGN(BytecodeGraphBuilder); |
256 }; | 250 }; |
257 | 251 |
258 } // namespace compiler | 252 } // namespace compiler |
259 } // namespace internal | 253 } // namespace internal |
260 } // namespace v8 | 254 } // namespace v8 |
261 | 255 |
262 #endif // V8_COMPILER_BYTECODE_GRAPH_BUILDER_H_ | 256 #endif // V8_COMPILER_BYTECODE_GRAPH_BUILDER_H_ |
OLD | NEW |