Index: runtime/vm/flow_graph_optimizer.cc |
diff --git a/runtime/vm/flow_graph_optimizer.cc b/runtime/vm/flow_graph_optimizer.cc |
index a3a6dea9707acf92d7e4090f28c74f6e803e7b52..137e63d73ad8e11e11f309d19b473889c7ba1423 100644 |
--- a/runtime/vm/flow_graph_optimizer.cc |
+++ b/runtime/vm/flow_graph_optimizer.cc |
@@ -4398,9 +4398,12 @@ void LICM::Optimize() { |
} |
if (inputs_loop_invariant && |
!current->IsAssertAssignable() && |
- !current->IsAssertBoolean()) { |
+ !current->IsAssertBoolean() && |
+ !current->IsGuardField()) { |
// TODO(fschneider): Enable hoisting of Assert-instructions |
// if it safe to do. |
+ // TODO(15652): Hoisting guard-field instructions causes the |
+ // optimizing compiler to crash. |
Hoist(&it, pre_header, current); |
} else if (current->IsCheckSmi() && |
current->InputAt(0)->definition()->IsPhi()) { |