diff options
Diffstat (limited to 'compiler/optimizing/nodes.cc')
-rw-r--r-- | compiler/optimizing/nodes.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/compiler/optimizing/nodes.cc b/compiler/optimizing/nodes.cc index d40ce7a717..841576a5e5 100644 --- a/compiler/optimizing/nodes.cc +++ b/compiler/optimizing/nodes.cc @@ -2885,7 +2885,10 @@ HInstruction* HGraph::InlineInto(HGraph* outer_graph, HInvoke* invoke) { // At this point we might either have: // A) Return/ReturnVoid/Throw as the last instruction // B) `Return/ReturnVoid->TryBoundary->Goto` as the last instruction chain - // C) `Throw->TryBoundary` as the last instruction chain + // C) `Return/ReturnVoid->Goto` as the last instruction chain. This exists when we added the + // extra Goto because we had a TryBoundary which we could eliminate in DCE after + // substituting arguments. + // D) `Throw->TryBoundary` as the last instruction chain const bool saw_goto = last->IsGoto(); if (saw_goto) { @@ -2903,7 +2906,6 @@ HInstruction* HGraph::InlineInto(HGraph* outer_graph, HInvoke* invoke) { } // Check that if we have an instruction chain, it is one of the allowed ones. - DCHECK_IMPLIES(saw_goto, saw_try_boundary); DCHECK_IMPLIES(saw_goto, last->IsReturnVoid() || last->IsReturn()); if (last->IsThrow()) { |