Index: src/compiler/pipeline.cc |
diff --git a/src/compiler/pipeline.cc b/src/compiler/pipeline.cc |
index 723cb46159723d1e8b00128749404884850d2174..b3344d9a9e6d44259ccc6f94df183212cd83a5dd 100644 |
--- a/src/compiler/pipeline.cc |
+++ b/src/compiler/pipeline.cc |
@@ -767,6 +767,12 @@ |
data->source_positions()); |
lowering.LowerAllNodes(); |
+ // TODO(bmeurer): See comment on SimplifiedLowering::abort_compilation_. |
+ if (lowering.abort_compilation_) { |
+ data->set_compilation_failed(); |
+ return; |
+ } |
+ |
JSGraphReducer graph_reducer(data->jsgraph(), temp_zone); |
DeadCodeElimination dead_code_elimination(&graph_reducer, data->graph(), |
data->common()); |
@@ -1277,6 +1283,9 @@ |
// Kill the Typer and thereby uninstall the decorator (if any). |
typer.Reset(nullptr); |
+ // TODO(bmeurer): See comment on SimplifiedLowering::abort_compilation_. |
+ if (data.compilation_failed()) return Handle<Code>::null(); |
+ |
return ScheduleAndGenerateCode( |
Linkage::ComputeIncoming(data.instruction_zone(), info())); |
} |