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

Unified Diff: runtime/vm/constant_propagator.cc

Issue 2896903002: Shuffle around deopt id allocation to give the flow graph builder a chance to record other data as … (Closed)
Patch Set: . Created 3 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/branch_optimizer.cc ('k') | runtime/vm/flow_graph.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/constant_propagator.cc
diff --git a/runtime/vm/constant_propagator.cc b/runtime/vm/constant_propagator.cc
index 050c0ba2a99606affbf530fab27dbd375b478f8f..244020589c3ecefde78449dcb73e3398be0049a1 100644
--- a/runtime/vm/constant_propagator.cc
+++ b/runtime/vm/constant_propagator.cc
@@ -1548,7 +1548,8 @@ void ConstantPropagator::EliminateRedundantBranches() {
// Drop the comparison, which does not have side effects
JoinEntryInstr* join = if_true->AsJoinEntry();
if (join->phis() == NULL) {
- GotoInstr* jump = new (Z) GotoInstr(if_true->AsJoinEntry());
+ GotoInstr* jump =
+ new (Z) GotoInstr(if_true->AsJoinEntry(), Thread::kNoDeoptId);
jump->InheritDeoptTarget(Z, branch);
Instruction* previous = branch->previous();
@@ -1691,16 +1692,16 @@ void ConstantPropagator::Transform() {
ASSERT(reachable_->Contains(if_false->preorder_number()));
ASSERT(if_false->parallel_move() == NULL);
ASSERT(if_false->loop_info() == NULL);
- join =
- new (Z) JoinEntryInstr(if_false->block_id(), if_false->try_index());
+ join = new (Z) JoinEntryInstr(
+ if_false->block_id(), if_false->try_index(), Thread::kNoDeoptId);
join->InheritDeoptTarget(Z, if_false);
if_false->UnuseAllInputs();
next = if_false->next();
} else if (!reachable_->Contains(if_false->preorder_number())) {
ASSERT(if_true->parallel_move() == NULL);
ASSERT(if_true->loop_info() == NULL);
- join =
- new (Z) JoinEntryInstr(if_true->block_id(), if_true->try_index());
+ join = new (Z) JoinEntryInstr(if_true->block_id(), if_true->try_index(),
+ Thread::kNoDeoptId);
join->InheritDeoptTarget(Z, if_true);
if_true->UnuseAllInputs();
next = if_true->next();
@@ -1711,7 +1712,7 @@ void ConstantPropagator::Transform() {
// Drop the comparison, which does not have side effects as long
// as it is a strict compare (the only one we can determine is
// constant with the current analysis).
- GotoInstr* jump = new (Z) GotoInstr(join);
+ GotoInstr* jump = new (Z) GotoInstr(join, Thread::kNoDeoptId);
jump->InheritDeoptTarget(Z, branch);
Instruction* previous = branch->previous();
« no previous file with comments | « runtime/vm/branch_optimizer.cc ('k') | runtime/vm/flow_graph.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698