OLD | NEW |
---|---|
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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_GRAPH_BUILDER_H_ | 5 #ifndef V8_COMPILER_GRAPH_BUILDER_H_ |
6 #define V8_COMPILER_GRAPH_BUILDER_H_ | 6 #define V8_COMPILER_GRAPH_BUILDER_H_ |
7 | 7 |
8 #include "src/v8.h" | 8 #include "src/v8.h" |
9 | 9 |
10 #include "src/allocation.h" | 10 #include "src/allocation.h" |
(...skipping 217 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
228 | 228 |
229 Node* GetContext() { return builder_->current_context(); } | 229 Node* GetContext() { return builder_->current_context(); } |
230 | 230 |
231 protected: | 231 protected: |
232 Zone* zone() const { return builder_->local_zone(); } | 232 Zone* zone() const { return builder_->local_zone(); } |
233 Graph* graph() const { return builder_->graph(); } | 233 Graph* graph() const { return builder_->graph(); } |
234 StructuredGraphBuilder* builder() const { return builder_; } | 234 StructuredGraphBuilder* builder() const { return builder_; } |
235 CommonOperatorBuilder* common() { return builder_->common(); } | 235 CommonOperatorBuilder* common() { return builder_->common(); } |
236 NodeVector* values() { return &values_; } | 236 NodeVector* values() { return &values_; } |
237 | 237 |
238 // Friends using the values vector. | |
titzer
2015/02/02 09:47:29
What if instead of friending, you added public met
Michael Starzinger
2015/02/02 14:47:41
Acknowledged. Yeah, well, we could do that if Stru
Michael Starzinger
2015/02/03 09:35:18
Done. Now possible after rebasing.
| |
239 friend class TryCatchBuilder; | |
240 friend class TryFinallyBuilder; | |
241 | |
238 // Prepare environment to be used as loop header. | 242 // Prepare environment to be used as loop header. |
239 void PrepareForLoop(BitVector* assigned, bool is_osr = false); | 243 void PrepareForLoop(BitVector* assigned, bool is_osr = false); |
240 | 244 |
241 private: | 245 private: |
242 StructuredGraphBuilder* builder_; | 246 StructuredGraphBuilder* builder_; |
243 Node* control_dependency_; | 247 Node* control_dependency_; |
244 Node* effect_dependency_; | 248 Node* effect_dependency_; |
245 NodeVector values_; | 249 NodeVector values_; |
246 }; | 250 }; |
247 } | 251 } |
248 } | 252 } |
249 } // namespace v8::internal::compiler | 253 } // namespace v8::internal::compiler |
250 | 254 |
251 #endif // V8_COMPILER_GRAPH_BUILDER_H__ | 255 #endif // V8_COMPILER_GRAPH_BUILDER_H__ |
OLD | NEW |