Lines Matching refs:FalseMBB

254       MachineBasicBlock *TrueMBB, MachineBasicBlock *FalseMBB);
256 MachineBasicBlock *TrueMBB, MachineBasicBlock *FalseMBB);
258 MachineBasicBlock *TrueMBB, MachineBasicBlock *FalseMBB,
261 MachineBasicBlock *TrueMBB, MachineBasicBlock *FalseMBB,
270 MachineBasicBlock *FalseMBB, MachineBasicBlock *LandMBB);
927 MachineBasicBlock *FalseMBB = getFalseBranch(MBB, BranchMI); in ifPatternMatch() local
928 NumMatch += serialPatternMatch(FalseMBB); in ifPatternMatch()
929 NumMatch += ifPatternMatch(FalseMBB); in ifPatternMatch()
933 assert (!TrueMBB->succ_empty() || !FalseMBB->succ_empty()); in ifPatternMatch()
935 if (TrueMBB->succ_size() == 1 && FalseMBB->succ_size() == 1 in ifPatternMatch()
936 && *TrueMBB->succ_begin() == *FalseMBB->succ_begin()) { in ifPatternMatch()
939 } else if (TrueMBB->succ_size() == 1 && *TrueMBB->succ_begin() == FalseMBB) { in ifPatternMatch()
941 LandBlk = FalseMBB; in ifPatternMatch()
942 FalseMBB = nullptr; in ifPatternMatch()
943 } else if (FalseMBB->succ_size() == 1 in ifPatternMatch()
944 && *FalseMBB->succ_begin() == TrueMBB) { in ifPatternMatch()
947 std::swap(TrueMBB, FalseMBB); in ifPatternMatch()
949 LandBlk = FalseMBB; in ifPatternMatch()
950 FalseMBB = nullptr; in ifPatternMatch()
951 } else if (FalseMBB->succ_size() == 1 in ifPatternMatch()
952 && isSameloopDetachedContbreak(TrueMBB, FalseMBB)) { in ifPatternMatch()
953 LandBlk = *FalseMBB->succ_begin(); in ifPatternMatch()
955 && isSameloopDetachedContbreak(FalseMBB, TrueMBB)) { in ifPatternMatch()
958 return NumMatch + handleJumpintoIf(MBB, TrueMBB, FalseMBB); in ifPatternMatch()
966 || (FalseMBB && FalseMBB->pred_size() > 1))) { in ifPatternMatch()
967 Cloned += improveSimpleJumpintoIf(MBB, TrueMBB, FalseMBB, &LandBlk); in ifPatternMatch()
975 if (FalseMBB && FalseMBB->pred_size() > 1) { in ifPatternMatch()
976 FalseMBB = cloneBlockForPredecessor(FalseMBB, MBB); in ifPatternMatch()
980 mergeIfthenelseBlock(BranchMI, MBB, TrueMBB, FalseMBB, LandBlk); in ifPatternMatch()
1073 MachineBasicBlock *TrueMBB, MachineBasicBlock *FalseMBB) { in handleJumpintoIf() argument
1074 int Num = handleJumpintoIfImp(HeadMBB, TrueMBB, FalseMBB); in handleJumpintoIf()
1078 Num = handleJumpintoIfImp(HeadMBB, FalseMBB, TrueMBB); in handleJumpintoIf()
1084 MachineBasicBlock *TrueMBB, MachineBasicBlock *FalseMBB) { in handleJumpintoIfImp() argument
1094 << FalseMBB->getNumber() << "\n";); in handleJumpintoIfImp()
1099 if (singlePathTo(FalseMBB, DownBlk) == SinglePath_InPath) { in handleJumpintoIfImp()
1103 Num += cloneOnSideEntryTo(HeadMBB, FalseMBB, DownBlk); in handleJumpintoIfImp()
1123 MachineBasicBlock *FalseMBB, MachineBasicBlock *LandMBB, bool Detail) { in showImproveSimpleJumpintoIf() argument
1141 if (FalseMBB) { in showImproveSimpleJumpintoIf()
1142 dbgs() << ", false = BB" << FalseMBB->getNumber() << " size = " in showImproveSimpleJumpintoIf()
1143 << FalseMBB->size() << " numPred = " << FalseMBB->pred_size(); in showImproveSimpleJumpintoIf()
1146 FalseMBB->print(dbgs()); in showImproveSimpleJumpintoIf()
1165 MachineBasicBlock *TrueMBB, MachineBasicBlock *FalseMBB, in improveSimpleJumpintoIf() argument
1173 && (!FalseMBB || FalseMBB->succ_size() <= 1)); in improveSimpleJumpintoIf()
1175 if (TrueMBB == FalseMBB) in improveSimpleJumpintoIf()
1179 MigrateFalse = needMigrateBlock(FalseMBB); in improveSimpleJumpintoIf()
1189 if (!MigrateFalse && FalseMBB && FalseMBB->pred_size() > 1) in improveSimpleJumpintoIf()
1194 showImproveSimpleJumpintoIf(HeadMBB, TrueMBB, FalseMBB, LandBlk, 0);); in improveSimpleJumpintoIf()
1310 migrateInstruction(FalseMBB, LandBlk, I); in improveSimpleJumpintoIf()
1325 if (MBB != TrueMBB && MBB != FalseMBB) in improveSimpleJumpintoIf()
1331 showImproveSimpleJumpintoIf(HeadMBB, TrueMBB, FalseMBB, LandBlk, 0);); in improveSimpleJumpintoIf()
1355 MachineBasicBlock *FalseMBB, MachineBasicBlock *LandMBB) { in mergeIfthenelseBlock() argument
1360 dbgs() << "{ "; if (FalseMBB) { in mergeIfthenelseBlock()
1361 dbgs() << "BB" << FalseMBB->getNumber(); in mergeIfthenelseBlock()
1391 if (FalseMBB) { in mergeIfthenelseBlock()
1393 MBB->splice(I, FalseMBB, FalseMBB->begin(), in mergeIfthenelseBlock()
1394 FalseMBB->end()); in mergeIfthenelseBlock()
1395 MBB->removeSuccessor(FalseMBB, true); in mergeIfthenelseBlock()
1396 if (LandMBB && FalseMBB->succ_size() != 0) in mergeIfthenelseBlock()
1397 FalseMBB->removeSuccessor(LandMBB, true); in mergeIfthenelseBlock()
1398 retireBlock(FalseMBB); in mergeIfthenelseBlock()
1399 MLI->removeBlock(FalseMBB); in mergeIfthenelseBlock()
1405 if (LandMBB && TrueMBB && FalseMBB) in mergeIfthenelseBlock()