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

Unified Diff: runtime/vm/flow_graph_builder.cc

Issue 2951053003: VM(RegExp): Allow OSR optimization of RegExp :matcher functions. (Closed)
Patch Set: Fix bugs with stack growing and block pruning Created 3 years, 6 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
Index: runtime/vm/flow_graph_builder.cc
diff --git a/runtime/vm/flow_graph_builder.cc b/runtime/vm/flow_graph_builder.cc
index e0e279513ee5fb8b9c5235ee4263df3145460bbe..625944169ffbaff84639f117060239afb209f29b 100644
--- a/runtime/vm/flow_graph_builder.cc
+++ b/runtime/vm/flow_graph_builder.cc
@@ -4471,7 +4471,7 @@ FlowGraph* FlowGraphBuilder::BuildGraph() {
// unreachable from the OSR entry. Catch entries are always considered
// reachable, even if they become unreachable after OSR.
if (osr_id_ != Compiler::kNoOSRDeoptId) {
- PruneUnreachable();
+ graph_entry_->PruneUnreachableForOSR(Z, last_used_block_id_);
}
FlowGraph* graph =
@@ -4486,15 +4486,6 @@ void FlowGraphBuilder::AppendAwaitTokenPosition(TokenPosition token_pos) {
}
-void FlowGraphBuilder::PruneUnreachable() {
- ASSERT(osr_id_ != Compiler::kNoOSRDeoptId);
- BitVector* block_marks = new (Z) BitVector(Z, last_used_block_id_ + 1);
- bool found =
- graph_entry_->PruneUnreachable(graph_entry_, NULL, osr_id_, block_marks);
- ASSERT(found);
-}
-
-
void FlowGraphBuilder::Bailout(const char* reason) const {
parsed_function_.Bailout("FlowGraphBuilder", reason);
}

Powered by Google App Engine
This is Rietveld 408576698