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

Unified Diff: runtime/vm/flow_graph_builder.cc

Issue 298913007: Use isolate when allocation Zone objects and handles: focus on FlowGraphOptimizer, next inliner. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 6 years, 7 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « runtime/vm/flow_graph_builder.h ('k') | runtime/vm/flow_graph_compiler.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/flow_graph_builder.cc
===================================================================
--- runtime/vm/flow_graph_builder.cc (revision 36573)
+++ runtime/vm/flow_graph_builder.cc (working copy)
@@ -291,7 +291,9 @@
// TODO(zerny): Avoid creating unnecessary environments. Note that some
// optimizations need deoptimization info for non-deoptable instructions,
// eg, LICM on GOTOs.
- if (instr->env() != NULL) call_->env()->DeepCopyToOuter(instr);
+ if (instr->env() != NULL) {
+ call_->env()->DeepCopyToOuter(callee_graph->isolate(), instr);
+ }
}
if (instr->IsGoto()) {
instr->AsGoto()->adjust_edge_weight(scale_factor);
@@ -348,7 +350,7 @@
caller_graph_->set_max_block_id(join_id);
JoinEntryInstr* join =
new JoinEntryInstr(join_id, CatchClauseNode::kInvalidTryIndex);
- join->InheritDeoptTargetAfter(call_);
+ join->InheritDeoptTargetAfter(isolate(), call_);
// The dominator set of the join is the intersection of the dominator
// sets of all the predecessors. If we keep the dominator sets ordered
@@ -367,7 +369,7 @@
for (intptr_t i = 0; i < num_exits; ++i) {
// Add the control-flow edge.
GotoInstr* goto_instr = new GotoInstr(join);
- goto_instr->InheritDeoptTarget(ReturnAt(i));
+ goto_instr->InheritDeoptTarget(isolate(), ReturnAt(i));
LastInstructionAt(i)->LinkTo(goto_instr);
ExitBlockAt(i)->set_last_instruction(LastInstructionAt(i)->next());
join->predecessors_.Add(ExitBlockAt(i));
@@ -452,7 +454,7 @@
TargetEntryInstr* false_block =
new TargetEntryInstr(caller_graph_->allocate_block_id(),
call_block->try_index());
- false_block->InheritDeoptTargetAfter(call_);
+ false_block->InheritDeoptTargetAfter(isolate(), call_);
false_block->LinkTo(call_->next());
call_block->ReplaceAsPredecessorWith(false_block);
@@ -463,7 +465,7 @@
new Value(true_const),
new Value(true_const),
false)); // No number check.
- branch->InheritDeoptTarget(call_);
+ branch->InheritDeoptTarget(isolate(), call_);
*branch->true_successor_address() = callee_entry;
*branch->false_successor_address() = false_block;
« no previous file with comments | « runtime/vm/flow_graph_builder.h ('k') | runtime/vm/flow_graph_compiler.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698