Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(348)

Side by Side Diff: src/compiler/graph-builder.h

Issue 873423004: First stab at try-catch and try-finally in TurboFan. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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
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__
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698