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

Unified Diff: runtime/vm/flow_graph_optimizer.cc

Issue 1679373002: Disable reg-exp compilation in background via a flag (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Sync problem Created 4 years, 10 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.cc ('k') | runtime/vm/parser.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/flow_graph_optimizer.cc
diff --git a/runtime/vm/flow_graph_optimizer.cc b/runtime/vm/flow_graph_optimizer.cc
index f10954a2788c9bd3a9a0a15e3965681dcd5c3d79..eb3f61b5b794517a7248b6900d1dbe3d74f5c393 100644
--- a/runtime/vm/flow_graph_optimizer.cc
+++ b/runtime/vm/flow_graph_optimizer.cc
@@ -4643,6 +4643,13 @@ void FlowGraphOptimizer::VisitStoreInstanceField(
}
}
if (!unboxed_field) {
+ // TODO(srdjan): Instead of aborting pass this field to the mutator thread
+ // so that it can:
+ // - set it to unboxed
+ // - deoptimize dependent code.
+ if (Compiler::IsBackgroundCompilation()) {
+ Compiler::AbortBackgroundCompilation(Thread::kNoDeoptId);
+ }
if (FLAG_trace_optimization || FLAG_trace_field_guards) {
THR_Print("Disabling unboxing of %s\n", field.ToCString());
if (!setter.IsNull()) {
@@ -4654,10 +4661,7 @@ void FlowGraphOptimizer::VisitStoreInstanceField(
}
field.set_is_unboxing_candidate(false);
if (Compiler::IsBackgroundCompilation()) {
- // Delay deoptimization of dependent code to the code installation time.
- // The invalidation of the background compilation result occurs only
- // when the deoptimization is triggered at code installation.
- flow_graph()->deoptimize_dependent_code().Add(&field);
+ UNIMPLEMENTED();
} else {
field.DeoptimizeDependentCode();
}
« no previous file with comments | « runtime/vm/flow_graph.cc ('k') | runtime/vm/parser.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698