| Index: runtime/vm/flow_graph.cc
|
| ===================================================================
|
| --- runtime/vm/flow_graph.cc (revision 36573)
|
| +++ runtime/vm/flow_graph.cc (working copy)
|
| @@ -21,7 +21,8 @@
|
| FlowGraph::FlowGraph(const FlowGraphBuilder& builder,
|
| GraphEntryInstr* graph_entry,
|
| intptr_t max_block_id)
|
| - : parent_(),
|
| + : isolate_(Isolate::Current()),
|
| + parent_(),
|
| current_ssa_temp_index_(0),
|
| max_block_id_(max_block_id),
|
| builder_(builder),
|
| @@ -119,7 +120,7 @@
|
| }
|
| instr->InsertAfter(prev);
|
| ASSERT(instr->env() == NULL);
|
| - if (env != NULL) env->DeepCopyTo(instr);
|
| + if (env != NULL) env->DeepCopyTo(isolate(), instr);
|
| }
|
|
|
|
|
| @@ -132,7 +133,7 @@
|
| AllocateSSAIndexes(instr->AsDefinition());
|
| }
|
| ASSERT(instr->env() == NULL);
|
| - if (env != NULL) env->DeepCopyTo(instr);
|
| + if (env != NULL) env->DeepCopyTo(isolate(), instr);
|
| return prev->AppendInstruction(instr);
|
| }
|
|
|
| @@ -754,7 +755,8 @@
|
| void FlowGraph::AttachEnvironment(Instruction* instr,
|
| GrowableArray<Definition*>* env) {
|
| Environment* deopt_env =
|
| - Environment::From(*env,
|
| + Environment::From(isolate(),
|
| + *env,
|
| num_non_copied_params_,
|
| Code::Handle(parsed_function_.code()));
|
| // TODO(fschneider): Add predicates CanEagerlyDeoptimize and
|
| @@ -764,7 +766,8 @@
|
| // also don't have an eager deoptimziation point, so the environment attached
|
| // here is only used for after the call.
|
| if (instr->IsClosureCall()) {
|
| - deopt_env = deopt_env->DeepCopy(deopt_env->Length() - instr->InputCount());
|
| + deopt_env = deopt_env->DeepCopy(isolate(),
|
| + deopt_env->Length() - instr->InputCount());
|
| }
|
| instr->SetEnvironment(deopt_env);
|
| for (Environment::DeepIterator it(deopt_env); !it.Done(); it.Advance()) {
|
|
|