Home
last modified time | relevance | path

Searched refs:first_merge (Results 1 – 1 of 1) sorted by relevance

/art/compiler/optimizing/
Dselect_generator.cc258 HBasicBlock* first_merge = single_goto->GetSingleSuccessor(); in TryFixupDoubleDiamondPattern() local
259 if (first_merge->GetNumberOfPredecessors() != 2 || in TryFixupDoubleDiamondPattern()
260 first_merge->GetPhis().CountSize() != 1 || in TryFixupDoubleDiamondPattern()
261 !first_merge->GetLastInstruction()->IsGoto() || in TryFixupDoubleDiamondPattern()
262 first_merge->GetFirstInstruction() != first_merge->GetLastInstruction()) { in TryFixupDoubleDiamondPattern()
266 HPhi* first_phi = first_merge->GetFirstPhi()->AsPhi(); in TryFixupDoubleDiamondPattern()
274 if (!BlocksMergeTogether(first_merge, merges_into_second_merge)) { in TryFixupDoubleDiamondPattern()
292 merges_into_second_merge->ReplaceSuccessor(second_merge, first_merge); in TryFixupDoubleDiamondPattern()
297 DCHECK_EQ(second_merge->GetSinglePredecessor(), first_merge); in TryFixupDoubleDiamondPattern()
299 second_merge->SetDominator(first_merge); in TryFixupDoubleDiamondPattern()
[all …]