/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/lib/CodeGen/ |
D | TailDuplicator.cpp | 111 for (MachineBasicBlock *PredBB : Preds) { in VerifyPHIs() 115 if (PHIBB == PredBB) { in VerifyPHIs() 124 << printMBBReference(*PredBB) << '\n'; in VerifyPHIs() 346 MachineInstr *MI, MachineBasicBlock *TailBB, MachineBasicBlock *PredBB, in processPHI() argument 351 unsigned SrcOpIdx = getPHISrcRegOpIdx(MI, PredBB); in processPHI() 363 addSSAUpdateEntry(DefReg, NewDef, PredBB); in processPHI() 378 MachineInstr *MI, MachineBasicBlock *TailBB, MachineBasicBlock *PredBB, in duplicateInstruction() argument 383 BuildMI(*PredBB, PredBB->end(), PredBB->findDebugLoc(PredBB->begin()), in duplicateInstruction() 388 MachineInstr &NewMI = TII->duplicate(*PredBB, PredBB->end(), *MI); in duplicateInstruction() 403 addSSAUpdateEntry(Reg, NewReg, PredBB); in duplicateInstruction() [all …]
|
D | MachineDominators.cpp | 106 for (MachineBasicBlock *PredBB : Succ->predecessors()) { in applySplitCriticalEdges() 107 if (PredBB == Edge.NewBB) in applySplitCriticalEdges() 121 if (NewBBs.count(PredBB)) { in applySplitCriticalEdges() 122 assert(PredBB->pred_size() == 1 && "A basic block resulting from a " in applySplitCriticalEdges() 125 PredBB = *PredBB->pred_begin(); in applySplitCriticalEdges() 127 if (!DT->dominates(SuccDTNode, DT->getNode(PredBB))) { in applySplitCriticalEdges()
|
D | BranchFolding.cpp | 591 MachineBasicBlock *PredBB, in ProfitableToMerge() argument 629 if ((MBB1 == PredBB || MBB2 == PredBB) && in ProfitableToMerge() 632 unsigned NumTerms = CountTerminators(MBB1 == PredBB ? MBB2 : MBB1, I); in ProfitableToMerge() 677 if (SuccBB && MBB1 != PredBB && MBB2 != PredBB && in ProfitableToMerge() 703 MachineBasicBlock *PredBB) { in ComputeSameTails() argument 716 SuccBB, PredBB, in ComputeSameTails() 738 MachineBasicBlock *PredBB) { in RemoveBlocksWithHash() argument 745 if (SuccBB && CurMBB != PredBB) in RemoveBlocksWithHash() 755 bool BranchFolder::CreateCommonTailOnlyBlock(MachineBasicBlock *&PredBB, in CreateCommonTailOnlyBlock() argument 763 if (SameTails[i].getBlock() == PredBB) { in CreateCommonTailOnlyBlock() [all …]
|
D | BranchFolding.h | 164 MachineBasicBlock* PredBB, 191 MachineBasicBlock *PredBB); 196 MachineBasicBlock* PredBB); 200 bool CreateCommonTailOnlyBlock(MachineBasicBlock *&PredBB,
|
D | MachineSSAUpdater.cpp | 166 MachineBasicBlock *PredBB = *PI; in GetValueInMiddleOfBlock() local 167 unsigned PredVal = GetValueAtEndOfBlockInternal(PredBB); in GetValueInMiddleOfBlock() 168 PredValues.push_back(std::make_pair(PredBB, PredVal)); in GetValueInMiddleOfBlock()
|
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/lib/Analysis/ |
D | PHITransAddr.cpp | 144 BasicBlock *PredBB, in PHITranslateSubExpr() argument 169 return AddAsInput(PN->getIncomingValueForBlock(PredBB)); in PHITranslateSubExpr() 189 Value *PHIIn = PHITranslateSubExpr(Cast->getOperand(0), CurBB, PredBB, DT); in PHITranslateSubExpr() 207 (!DT || DT->dominates(CastI->getParent(), PredBB))) in PHITranslateSubExpr() 218 Value *GEPOp = PHITranslateSubExpr(GEP->getOperand(i), CurBB, PredBB, DT); in PHITranslateSubExpr() 244 (!DT || DT->dominates(GEPI->getParent(), PredBB))) { in PHITranslateSubExpr() 260 Value *LHS = PHITranslateSubExpr(Inst->getOperand(0), CurBB, PredBB, DT); in PHITranslateSubExpr() 296 (!DT || DT->dominates(BO->getParent(), PredBB))) in PHITranslateSubExpr() 312 bool PHITransAddr::PHITranslateValue(BasicBlock *CurBB, BasicBlock *PredBB, in PHITranslateValue() argument 317 if (DT && DT->isReachableFromEntry(PredBB)) in PHITranslateValue() [all …]
|
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/lib/Transforms/Scalar/ |
D | JumpThreading.cpp | 226 auto *PredBB = IncomingBB; in updatePredecessorProfileMetadata() local 230 BranchInst *PredBr = dyn_cast<BranchInst>(PredBB->getTerminator()); in updatePredecessorProfileMetadata() 232 return {PredBB, SuccBB}; in updatePredecessorProfileMetadata() 233 Visited.insert(PredBB); in updatePredecessorProfileMetadata() 234 auto *SinglePredBB = PredBB->getSinglePredecessor(); in updatePredecessorProfileMetadata() 243 SuccBB = PredBB; in updatePredecessorProfileMetadata() 244 PredBB = SinglePredBB; in updatePredecessorProfileMetadata() 264 BasicBlock *PredBB = PredOutEdge.first; in updatePredecessorProfileMetadata() local 265 BranchInst *PredBr = dyn_cast<BranchInst>(PredBB->getTerminator()); in updatePredecessorProfileMetadata() 787 BasicBlock *PredBB = PN->getIncomingBlock(i); in ComputeValueKnownInPredecessorsImpl() local [all …]
|
D | SpeculateAroundPHIs.cpp | 570 for (auto *PredBB : PredSet) { in speculatePHIs() local 572 PredBB, ParentBB, in speculatePHIs() 576 LLVM_DEBUG(dbgs() << " Split critical edge from: " << PredBB->getName() in speculatePHIs() 580 assert(PredBB->getSingleSuccessor() == ParentBB && in speculatePHIs() 582 assert(!isa<InvokeInst>(PredBB->getTerminator()) && in speculatePHIs() 586 SpecPreds.push_back(PredBB); in speculatePHIs() 647 for (auto *PredBB : SpecPreds) in speculatePHIs() local 648 SpeculatedVals.push_back(IncomingValueMap.find(PredBB)->second); in speculatePHIs() 653 auto *PredBB = SpecPreds[PredIdx]; in speculatePHIs() local 654 assert(PredBB->getSingleSuccessor() == ParentBB && in speculatePHIs() [all …]
|
D | SimpleLoopUnswitch.cpp | 1403 for (BasicBlock *PredBB : predecessors(BB)) { in buildClonedLoops() 1406 if (!UnloopedBlockSet.erase(PredBB)) { in buildClonedLoops() 1408 (BlocksInClonedLoop.count(PredBB) || ExitLoopMap.count(PredBB)) && in buildClonedLoops() 1416 bool Inserted = ExitLoopMap.insert({PredBB, ExitL}).second; in buildClonedLoops() 1421 Worklist.push_back(PredBB); in buildClonedLoops() 1802 for (BasicBlock *PredBB : predecessors(BB)) { in rebuildLoopAfterUnswitch() 1805 if (!UnloopedBlocks.erase(PredBB)) { in rebuildLoopAfterUnswitch() 1806 assert((NewExitLoopBlocks.count(PredBB) || in rebuildLoopAfterUnswitch() 1807 ExitL.contains(LI.getLoopFor(PredBB))) && in rebuildLoopAfterUnswitch() 1815 bool Inserted = NewExitLoopBlocks.insert(PredBB).second; in rebuildLoopAfterUnswitch() [all …]
|
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/lib/Transforms/Utils/ |
D | BasicBlockUtils.cpp | 179 BasicBlock *PredBB = BB->getUniquePredecessor(); in MergeBlockIntoPredecessor() local 180 if (!PredBB) return false; in MergeBlockIntoPredecessor() 183 if (PredBB == BB) return false; in MergeBlockIntoPredecessor() 185 if (PredBB->getTerminator()->isExceptionalTerminator()) in MergeBlockIntoPredecessor() 189 if (!PredecessorWithTwoSuccessors && PredBB->getUniqueSuccessor() != BB) in MergeBlockIntoPredecessor() 198 if (!(PredBB_BI = dyn_cast<BranchInst>(PredBB->getTerminator()))) in MergeBlockIntoPredecessor() 214 << PredBB->getName() << "\n"); in MergeBlockIntoPredecessor() 239 if (llvm::find(successors(PredBB), *I) == succ_end(PredBB)) in MergeBlockIntoPredecessor() 240 Updates.push_back({DominatorTree::Insert, PredBB, *I}); in MergeBlockIntoPredecessor() 243 Updates.push_back({DominatorTree::Delete, PredBB, BB}); in MergeBlockIntoPredecessor() [all …]
|
D | SSAUpdater.cpp | 115 BasicBlock *PredBB = SomePhi->getIncomingBlock(i); in GetValueInMiddleOfBlock() local 116 Value *PredVal = GetValueAtEndOfBlock(PredBB); in GetValueInMiddleOfBlock() 117 PredValues.push_back(std::make_pair(PredBB, PredVal)); in GetValueInMiddleOfBlock() 128 BasicBlock *PredBB = *PI; in GetValueInMiddleOfBlock() local 129 Value *PredVal = GetValueAtEndOfBlock(PredBB); in GetValueInMiddleOfBlock() 130 PredValues.push_back(std::make_pair(PredBB, PredVal)); in GetValueInMiddleOfBlock()
|
D | Local.cpp | 682 BasicBlock *PredBB = DestBB->getSinglePredecessor(); in MergeBasicBlockIntoOnlyPred() local 683 assert(PredBB && "Block doesn't have a single predecessor!"); in MergeBasicBlockIntoOnlyPred() 686 if (PredBB == &DestBB->getParent()->getEntryBlock()) in MergeBasicBlockIntoOnlyPred() 694 Updates.push_back({DominatorTree::Delete, PredBB, DestBB}); in MergeBasicBlockIntoOnlyPred() 695 for (auto I = pred_begin(PredBB), E = pred_end(PredBB); I != E; ++I) { in MergeBasicBlockIntoOnlyPred() 696 Updates.push_back({DominatorTree::Delete, *I, PredBB}); in MergeBasicBlockIntoOnlyPred() 715 PredBB->replaceAllUsesWith(DestBB); in MergeBasicBlockIntoOnlyPred() 718 PredBB->getTerminator()->eraseFromParent(); in MergeBasicBlockIntoOnlyPred() 719 DestBB->getInstList().splice(DestBB->begin(), PredBB->getInstList()); in MergeBasicBlockIntoOnlyPred() 720 new UnreachableInst(PredBB->getContext(), PredBB); in MergeBasicBlockIntoOnlyPred() [all …]
|
D | BreakCriticalEdges.cpp | 337 BasicBlock *PredBB = PN->getIncomingBlock(Pred); in findIBRPredecessor() local 338 Instruction *PredTerm = PredBB->getTerminator(); in findIBRPredecessor() 343 IBB = PredBB; in findIBRPredecessor() 347 OtherPreds.push_back(PredBB); in findIBRPredecessor()
|
D | CloneFunction.cpp | 836 BasicBlock *BB, BasicBlock *PredBB, Instruction *StopAt, in DuplicateInstructionsInSplitBetween() argument 839 assert(count(successors(PredBB), BB) == 1 && in DuplicateInstructionsInSplitBetween() 846 ValueMapping[PN] = PN->getIncomingValueForBlock(PredBB); in DuplicateInstructionsInSplitBetween() 848 BasicBlock *NewBB = SplitEdge(PredBB, BB); in DuplicateInstructionsInSplitBetween() 849 NewBB->setName(PredBB->getName() + ".split"); in DuplicateInstructionsInSplitBetween() 854 DTU.applyUpdates({{DominatorTree::Delete, PredBB, BB}, in DuplicateInstructionsInSplitBetween() 855 {DominatorTree::Insert, PredBB, NewBB}, in DuplicateInstructionsInSplitBetween()
|
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/include/llvm/Analysis/ |
D | PHITransAddr.h | 81 bool PHITranslateValue(BasicBlock *CurBB, BasicBlock *PredBB, 91 Value *PHITranslateWithInsertion(BasicBlock *CurBB, BasicBlock *PredBB, 103 Value *PHITranslateSubExpr(Value *V, BasicBlock *CurBB, BasicBlock *PredBB, 112 BasicBlock *PredBB, const DominatorTree &DT,
|
D | LoopInfoImpl.h | 429 BlockT *PredBB = ReverseCFGWorklist.back(); in discoverAndMapSubloop() local 432 LoopT *Subloop = LI->getLoopFor(PredBB); in discoverAndMapSubloop() 434 if (!DomTree.isReachableFromEntry(PredBB)) in discoverAndMapSubloop() 438 LI->changeLoopFor(PredBB, L); in discoverAndMapSubloop() 440 if (PredBB == L->getHeader()) in discoverAndMapSubloop() 444 InvBlockTraits::child_begin(PredBB), in discoverAndMapSubloop() 445 InvBlockTraits::child_end(PredBB)); in discoverAndMapSubloop() 459 PredBB = Subloop->getHeader(); in discoverAndMapSubloop() 464 for (const auto Pred : children<Inverse<BlockT *>>(PredBB)) { in discoverAndMapSubloop()
|
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/lib/Transforms/Vectorize/ |
D | VPlanPredicator.cpp | 37 VPValue *VPlanPredicator::getOrCreateNotPredicate(VPBasicBlock *PredBB, in getOrCreateNotPredicate() argument 39 VPValue *CBV = PredBB->getCondBit(); in getOrCreateNotPredicate() 43 EdgeType ET = getEdgeTypeBetween(PredBB, CurrBB); in getOrCreateNotPredicate() 58 VPValue *BP = PredBB->getPredicate(); in getOrCreateNotPredicate()
|
D | VPlan.cpp | 127 BasicBlock *PredBB = CFG.VPBB2IRBB[PredVPBB]; in createEmptyBasicBlock() local 135 if (!PredBB) { in createEmptyBasicBlock() 142 assert(PredBB && "Predecessor basic-block not found building successor."); in createEmptyBasicBlock() 143 auto *PredBBTerminator = PredBB->getTerminator(); in createEmptyBasicBlock() 144 LLVM_DEBUG(dbgs() << "LV: draw edge from" << PredBB->getName() << '\n'); in createEmptyBasicBlock() 149 BranchInst::Create(NewBB, PredBB); in createEmptyBasicBlock()
|
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/lib/Target/XCore/ |
D | XCoreLowerThreadLocal.cpp | 139 BasicBlock *PredBB = PN->getIncomingBlock(I); in replaceConstantExprOp() local 140 if (PredBB->getTerminator()->getNumSuccessors() > 1) in replaceConstantExprOp() 141 PredBB = SplitEdge(PredBB, PN->getParent()); in replaceConstantExprOp() 142 Instruction *InsertPos = PredBB->getTerminator(); in replaceConstantExprOp()
|
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/include/llvm/CodeGen/ |
D | TailDuplicator.h | 81 bool canTailDuplicate(MachineBasicBlock *TailBB, MachineBasicBlock *PredBB); 101 MachineBasicBlock *PredBB, 106 MachineBasicBlock *PredBB,
|
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/lib/Transforms/ObjCARC/ |
D | DependencyAnalysis.cpp | 244 BasicBlock *PredBB = *PI; in FindDependencies() local 245 if (Visited.insert(PredBB).second) in FindDependencies() 246 Worklist.push_back(std::make_pair(PredBB, PredBB->end())); in FindDependencies()
|
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/lib/Transforms/IPO/ |
D | HotColdSplitting.cpp | 423 BasicBlock &PredBB = **PredIt; in create() local 424 bool SinkPostDom = PDT.dominates(&SinkBB, &PredBB); in create() 428 if (SinkPostDom && pred_empty(&PredBB)) { in create() 435 if (!SinkPostDom || !mayExtractBlock(PredBB)) { in create() 443 unsigned PredScore = getEntryPointScore(PredBB, PredIt.getPathLength()); in create() 445 ColdRegion->SuggestedEntryPoint = &PredBB; in create() 449 addBlockToRegion(&PredBB, PredScore); in create()
|
D | BlockExtractor.cpp | 148 for (auto PredBB : predecessors(LPad)) { in splitLandingPadPreds() local 149 if (PredBB->isLandingPad() && PredBB != Parent && in splitLandingPadPreds()
|
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/include/llvm/Transforms/Scalar/ |
D | JumpThreading.h | 118 BasicBlock *PredBB); 164 void UpdateBlockFreqAndEdgeWeight(BasicBlock *PredBB, BasicBlock *BB,
|
/third_party/skia/third_party/externals/swiftshader/third_party/llvm-10.0/llvm/lib/IR/ |
D | BasicBlock.cpp | 256 const BasicBlock *PredBB = *PI; in getUniquePredecessor() local 259 if (*PI != PredBB) in getUniquePredecessor() 264 return PredBB; in getUniquePredecessor()
|