Home
last modified time | relevance | path

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

/external/swiftshader/third_party/llvm-10.0/llvm/lib/CodeGen/
DTailDuplicator.cpp346 MachineInstr *MI, MachineBasicBlock *TailBB, MachineBasicBlock *PredBB, in processPHI() argument
362 if (isDefLiveOut(DefReg, TailBB, MRI) || RegsUsedByPhi.count(DefReg)) in processPHI()
378 MachineInstr *MI, MachineBasicBlock *TailBB, MachineBasicBlock *PredBB, in duplicateInstruction() argument
402 if (isDefLiveOut(Reg, TailBB, MRI) || UsedByPhi.count(Reg)) in duplicateInstruction()
550 MachineBasicBlock &TailBB) { in shouldTailDuplicate() argument
554 if (!LayoutMode && TailBB.canFallThrough()) in shouldTailDuplicate()
558 if (TailBB.isSuccessor(&TailBB)) in shouldTailDuplicate()
566 llvm::shouldOptimizeForSize(&TailBB, PSI, MBFI); in shouldTailDuplicate()
580 if (TII->analyzeBranch(TailBB, PredTBB, PredFBB, PredCond) && in shouldTailDuplicate()
581 TailBB.canFallThrough()) in shouldTailDuplicate()
[all …]
DIfConversion.cpp2050 MachineBasicBlock *TailBB = TrueBBI.TrueBB; in IfConvertDiamond() local
2053 if (!TailBB) { in IfConvertDiamond()
2055 TailBB = FalseBBI.TrueBB; in IfConvertDiamond()
2056 assert((TailBB || !TrueBBI.IsBrAnalyzable) && "Unexpected!"); in IfConvertDiamond()
2064 /* MergeAddEdges */ TailBB == nullptr)) in IfConvertDiamond()
2071 if (TailBB) { in IfConvertDiamond()
2077 BBInfo &TailBBI = BBAnalysis[TailBB->getNumber()]; in IfConvertDiamond()
2088 unsigned NumPreds = TailBB->pred_size(); in IfConvertDiamond()
2092 MachineBasicBlock::pred_iterator PI = TailBB->pred_begin(); in IfConvertDiamond()
2100 BBI.BB->addSuccessor(TailBB, BranchProbability::getOne()); in IfConvertDiamond()
[all …]
DMachineBlockPlacement.cpp2417 auto TailBB = *TailIter; in rotateLoopWithProfile() local
2431 if (TailBB != ExitWithFreq.first) in rotateLoopWithProfile()
2448 if (TailBB->isSuccessor(*Iter)) { in rotateLoopWithProfile()
2449 auto TailBBFreq = MBFI->getBlockFreq(TailBB); in rotateLoopWithProfile()
2450 if (TailBB->succ_size() == 1) in rotateLoopWithProfile()
2453 else if (TailBB->succ_size() == 2) { in rotateLoopWithProfile()
2454 auto TailToHeadProb = MBPI->getEdgeProbability(TailBB, *Iter); in rotateLoopWithProfile()
/external/llvm-project/llvm/lib/CodeGen/
DTailDuplicator.cpp348 MachineInstr *MI, MachineBasicBlock *TailBB, MachineBasicBlock *PredBB, in processPHI() argument
364 if (isDefLiveOut(DefReg, TailBB, MRI) || RegsUsedByPhi.count(DefReg)) in processPHI()
380 MachineInstr *MI, MachineBasicBlock *TailBB, MachineBasicBlock *PredBB, in duplicateInstruction() argument
404 if (isDefLiveOut(Reg, TailBB, MRI) || UsedByPhi.count(Reg)) in duplicateInstruction()
552 MachineBasicBlock &TailBB) { in shouldTailDuplicate() argument
556 if (!LayoutMode && TailBB.canFallThrough()) in shouldTailDuplicate()
560 if (TailBB.isSuccessor(&TailBB)) in shouldTailDuplicate()
568 llvm::shouldOptimizeForSize(&TailBB, PSI, MBFI); in shouldTailDuplicate()
582 if (TII->analyzeBranch(TailBB, PredTBB, PredFBB, PredCond) && in shouldTailDuplicate()
583 TailBB.canFallThrough()) in shouldTailDuplicate()
[all …]
DIfConversion.cpp2050 MachineBasicBlock *TailBB = TrueBBI.TrueBB; in IfConvertDiamond() local
2053 if (!TailBB) { in IfConvertDiamond()
2055 TailBB = FalseBBI.TrueBB; in IfConvertDiamond()
2056 assert((TailBB || !TrueBBI.IsBrAnalyzable) && "Unexpected!"); in IfConvertDiamond()
2064 /* MergeAddEdges */ TailBB == nullptr)) in IfConvertDiamond()
2071 if (TailBB) { in IfConvertDiamond()
2077 BBInfo &TailBBI = BBAnalysis[TailBB->getNumber()]; in IfConvertDiamond()
2088 unsigned NumPreds = TailBB->pred_size(); in IfConvertDiamond()
2092 MachineBasicBlock::pred_iterator PI = TailBB->pred_begin(); in IfConvertDiamond()
2100 BBI.BB->addSuccessor(TailBB, BranchProbability::getOne()); in IfConvertDiamond()
[all …]
DMachineBlockPlacement.cpp2449 auto TailBB = *TailIter; in rotateLoopWithProfile() local
2463 if (TailBB != ExitWithFreq.first) in rotateLoopWithProfile()
2480 if (TailBB->isSuccessor(*Iter)) { in rotateLoopWithProfile()
2481 auto TailBBFreq = MBFI->getBlockFreq(TailBB); in rotateLoopWithProfile()
2482 if (TailBB->succ_size() == 1) in rotateLoopWithProfile()
2485 else if (TailBB->succ_size() == 2) { in rotateLoopWithProfile()
2486 auto TailToHeadProb = MBPI->getEdgeProbability(TailBB, *Iter); in rotateLoopWithProfile()
/external/llvm/lib/CodeGen/
DTailDuplicator.cpp304 MachineInstr *MI, MachineBasicBlock *TailBB, MachineBasicBlock *PredBB, in processPHI() argument
320 if (isDefLiveOut(DefReg, TailBB, MRI) || RegsUsedByPhi.count(DefReg)) in processPHI()
336 MachineInstr *MI, MachineBasicBlock *TailBB, MachineBasicBlock *PredBB, in duplicateInstruction() argument
354 if (isDefLiveOut(Reg, TailBB, MRI) || UsedByPhi.count(Reg)) in duplicateInstruction()
508 MachineBasicBlock &TailBB) { in shouldTailDuplicate() argument
510 if (TailBB.canFallThrough()) in shouldTailDuplicate()
514 if (TailBB.isSuccessor(&TailBB)) in shouldTailDuplicate()
535 if (!TailBB.empty()) in shouldTailDuplicate()
536 HasIndirectbr = TailBB.back().isIndirectBranch(); in shouldTailDuplicate()
544 for (MachineInstr &MI : TailBB) { in shouldTailDuplicate()
[all …]
DIfConversion.cpp1348 MachineBasicBlock *TailBB = TrueBBI.TrueBB; in IfConvertDiamond() local
1350 if (!TailBB) { in IfConvertDiamond()
1352 TailBB = FalseBBI.TrueBB; in IfConvertDiamond()
1353 assert((TailBB || !TrueBBI.IsBrAnalyzable) && "Unexpected!"); in IfConvertDiamond()
1539 MergeBlocks(BBI, *BBI1, TailBB == nullptr); in IfConvertDiamond()
1540 MergeBlocks(BBI, *BBI2, TailBB == nullptr); in IfConvertDiamond()
1546 if (TailBB) { in IfConvertDiamond()
1547 BBInfo &TailBBI = BBAnalysis[TailBB->getNumber()]; in IfConvertDiamond()
1558 unsigned NumPreds = TailBB->pred_size(); in IfConvertDiamond()
1562 MachineBasicBlock::pred_iterator PI = TailBB->pred_begin(); in IfConvertDiamond()
[all …]
DMachineBlockPlacement.cpp1189 auto TailBB = *TailIter; in rotateLoopWithProfile() local
1203 if (TailBB != ExitWithFreq.first) in rotateLoopWithProfile()
1220 if (TailBB->isSuccessor(*Iter)) { in rotateLoopWithProfile()
1221 auto TailBBFreq = MBFI->getBlockFreq(TailBB); in rotateLoopWithProfile()
1222 if (TailBB->succ_size() == 1) in rotateLoopWithProfile()
1225 else if (TailBB->succ_size() == 2) { in rotateLoopWithProfile()
1226 auto TailToHeadProb = MBPI->getEdgeProbability(TailBB, *Iter); in rotateLoopWithProfile()
/external/swiftshader/third_party/llvm-10.0/llvm/include/llvm/CodeGen/
DTailDuplicator.h77 static bool isSimpleBB(MachineBasicBlock *TailBB);
78 bool shouldTailDuplicate(bool IsSimple, MachineBasicBlock &TailBB);
81 bool canTailDuplicate(MachineBasicBlock *TailBB, MachineBasicBlock *PredBB);
100 void processPHI(MachineInstr *MI, MachineBasicBlock *TailBB,
105 void duplicateInstruction(MachineInstr *MI, MachineBasicBlock *TailBB,
113 bool duplicateSimpleBB(MachineBasicBlock *TailBB,
118 MachineBasicBlock *TailBB,
/external/llvm-project/llvm/include/llvm/CodeGen/
DTailDuplicator.h78 static bool isSimpleBB(MachineBasicBlock *TailBB);
79 bool shouldTailDuplicate(bool IsSimple, MachineBasicBlock &TailBB);
82 bool canTailDuplicate(MachineBasicBlock *TailBB, MachineBasicBlock *PredBB);
103 void processPHI(MachineInstr *MI, MachineBasicBlock *TailBB,
108 void duplicateInstruction(MachineInstr *MI, MachineBasicBlock *TailBB,
116 bool duplicateSimpleBB(MachineBasicBlock *TailBB,
121 MachineBasicBlock *TailBB,
/external/llvm/include/llvm/CodeGen/
DTailDuplicator.h51 static bool isSimpleBB(MachineBasicBlock *TailBB);
53 MachineBasicBlock &TailBB);
62 void processPHI(MachineInstr *MI, MachineBasicBlock *TailBB,
67 void duplicateInstruction(MachineInstr *MI, MachineBasicBlock *TailBB,
75 bool duplicateSimpleBB(MachineBasicBlock *TailBB,
80 MachineBasicBlock *TailBB,
/external/llvm-project/llvm/lib/Transforms/Scalar/
DCallSiteSplitting.cpp308 BasicBlock *TailBB = CB.getParent(); in splitCallSite() local
330 TailBB, PredBB, &*std::next(CB.getIterator()), ValueToValueMaps[i], in splitCallSite()
339 for (PHINode &PN : TailBB->phis()) { in splitCallSite()
366 SmallVector<BasicBlock *, 2> Splits(predecessors((TailBB))); in splitCallSite()
370 DTU.applyUpdatesPermissive({{DominatorTree::Delete, Splits[i], TailBB}}); in splitCallSite()
374 DTU.deleteBB(TailBB); in splitCallSite()
378 auto *OriginalBegin = &*TailBB->begin(); in splitCallSite()
393 while (I != TailBB->rend()) { in splitCallSite()
405 NewPN->insertBefore(&*TailBB->begin()); in splitCallSite()
DMergedLoadStoreMotion.cpp286 BasicBlock *TailBB = getDiamondTail(HeadBB); in mergeStores() local
287 BasicBlock *SinkBB = TailBB; in mergeStores()
300 if (!SplitFooterBB && TailBB->hasNPredecessorsOrMore(3)) in mergeStores()
329 if (SinkBB == TailBB && TailBB->hasNPredecessorsOrMore(3)) { in mergeStores()
332 SinkBB = SplitBlockPredecessors(TailBB, {Pred0, Pred1}, ".sink.split"); in mergeStores()
/external/swiftshader/third_party/llvm-10.0/llvm/lib/Transforms/Scalar/
DCallSiteSplitting.cpp311 BasicBlock *TailBB = Instr->getParent(); in splitCallSite() local
333 TailBB, PredBB, &*std::next(Instr->getIterator()), ValueToValueMaps[i], in splitCallSite()
343 for (PHINode &PN : TailBB->phis()) { in splitCallSite()
370 SmallVector<BasicBlock *, 2> Splits(predecessors((TailBB))); in splitCallSite()
374 DTU.applyUpdatesPermissive({{DominatorTree::Delete, Splits[i], TailBB}}); in splitCallSite()
378 DTU.deleteBB(TailBB); in splitCallSite()
382 auto *OriginalBegin = &*TailBB->begin(); in splitCallSite()
397 while (I != TailBB->rend()) { in splitCallSite()
409 NewPN->insertBefore(&*TailBB->begin()); in splitCallSite()
DMergedLoadStoreMotion.cpp286 BasicBlock *TailBB = getDiamondTail(HeadBB); in mergeStores() local
287 BasicBlock *SinkBB = TailBB; in mergeStores()
300 if (!SplitFooterBB && TailBB->hasNPredecessorsOrMore(3)) in mergeStores()
329 if (SinkBB == TailBB && TailBB->hasNPredecessorsOrMore(3)) { in mergeStores()
332 SinkBB = SplitBlockPredecessors(TailBB, {Pred0, Pred1}, ".sink.split"); in mergeStores()
/external/llvm-project/llvm/test/Transforms/CallSiteSplitting/
Dcallsite-instructions-before-call.ll141 ; In this test case, we need to insert a new PHI node in TailBB to combine