| Index: runtime/vm/flow_graph_builder.h
|
| diff --git a/runtime/vm/flow_graph_builder.h b/runtime/vm/flow_graph_builder.h
|
| index ad595691629ddf39b438dfef904c4b1becc811d3..fe23674a8bc71b5bac5ebb0939efc3372414ee1a 100644
|
| --- a/runtime/vm/flow_graph_builder.h
|
| +++ b/runtime/vm/flow_graph_builder.h
|
| @@ -179,6 +179,13 @@ class FlowGraphBuilder: public ValueObject {
|
| void set_catch_try_index(intptr_t value) { catch_try_index_ = value; }
|
| intptr_t catch_try_index() const { return catch_try_index_; }
|
|
|
| + intptr_t next_await_counter() { return jump_cnt_++; }
|
| +
|
| + ZoneGrowableArray<intptr_t>* await_levels() const { return await_levels_; }
|
| + ZoneGrowableArray<JoinEntryInstr*>* await_joins() const {
|
| + return await_joins_;
|
| + }
|
| +
|
| void AddCatchEntry(CatchBlockEntryInstr* entry);
|
|
|
| intptr_t num_copied_params() const {
|
| @@ -267,6 +274,10 @@ class FlowGraphBuilder: public ValueObject {
|
| // Do not generate a different graph based on this flag.
|
| const bool is_optimizing_;
|
|
|
| + intptr_t jump_cnt_;
|
| + ZoneGrowableArray<JoinEntryInstr*>* await_joins_;
|
| + ZoneGrowableArray<intptr_t>* await_levels_;
|
| +
|
| DISALLOW_IMPLICIT_CONSTRUCTORS(FlowGraphBuilder);
|
| };
|
|
|
| @@ -457,6 +468,10 @@ class EffectGraphVisitor : public AstNodeVisitor {
|
|
|
| void BuildLetTempExpressions(LetNode* node);
|
|
|
| + void BuildAwaitJump(LocalScope* lookup_scope,
|
| + const intptr_t old_ctx_level,
|
| + JoinEntryInstr* target);
|
| +
|
| Isolate* isolate() const { return owner()->isolate(); }
|
|
|
| private:
|
|
|