Index: runtime/vm/flow_graph.cc |
diff --git a/runtime/vm/flow_graph.cc b/runtime/vm/flow_graph.cc |
index 89ed20d543d7e14270e73fe2030b534c03a773fc..f513b304c012f92220fa118ad8641bb91b59e133 100644 |
--- a/runtime/vm/flow_graph.cc |
+++ b/runtime/vm/flow_graph.cc |
@@ -2009,7 +2009,9 @@ void FlowGraph::EliminateEnvironments() { |
!block_it.Done(); |
block_it.Advance()) { |
BlockEntryInstr* block = block_it.Current(); |
- block->RemoveEnvironment(); |
+ if (!block->IsCatchBlockEntry()) { |
+ block->RemoveEnvironment(); |
+ } |
for (ForwardInstructionIterator it(block); !it.Done(); it.Advance()) { |
Instruction* current = it.Current(); |
if (!current->CanDeoptimize()) { |