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

Unified Diff: src/compiler/pipeline.cc

Issue 2500143003: [turbofan] Make escape analysis fail silently for cyclic object states (Closed)
Patch Set: regolden Created 4 years, 1 month 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: src/compiler/pipeline.cc
diff --git a/src/compiler/pipeline.cc b/src/compiler/pipeline.cc
index 934f4be17df9ba94d75435a79e9d8e23e8d557cd..9d3c5dd0f7047bca3b816cc2b0b5ac06faf90f46 100644
--- a/src/compiler/pipeline.cc
+++ b/src/compiler/pipeline.cc
@@ -936,6 +936,10 @@ struct EscapeAnalysisPhase {
&escape_analysis, temp_zone);
AddReducer(data, &graph_reducer, &escape_reducer);
graph_reducer.ReduceGraph();
+ if (escape_reducer.compilation_failed()) {
+ data->set_compilation_failed();
+ return;
+ }
escape_reducer.VerifyReplacement();
}
};
@@ -1550,6 +1554,11 @@ bool PipelineImpl::CreateGraph() {
if (FLAG_turbo_escape) {
Run<EscapeAnalysisPhase>();
+ if (data->compilation_failed()) {
+ info()->AbortOptimization(kCyclicObjectStateDetectedInEscapeAnalysis);
+ data->EndPhaseKind();
+ return false;
+ }
RunPrintAndVerify("Escape Analysed");
}
}
« no previous file with comments | « src/compiler/escape-analysis-reducer.cc ('k') | test/cctest/interpreter/bytecode_expectations/Generators.golden » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698