Home
last modified time | relevance | path

Searched refs:DestBB (Results 1 – 25 of 32) sorted by relevance

12

/openbsd/src/gnu/llvm/llvm/lib/CodeGen/
DBranchRelaxation.cpp96 MachineBasicBlock *DestBB);
232 MachineBasicBlock *DestBB) { in splitBlockBeforeInstr() argument
254 OrigBB->addSuccessor(DestBB); in splitBlockBeforeInstr()
286 const MachineInstr &MI, const MachineBasicBlock &DestBB) const { in isBlockInRange()
288 int64_t DestOffset = BlockInfo[DestBB.getNumber()].Offset; in isBlockInRange()
294 << printMBBReference(DestBB) << " from " in isBlockInRange()
313 MachineBasicBlock *DestBB) { in fixupConditionalBranch() argument
316 TII->insertUnconditionalBranch(*MBB, DestBB, DL, &NewBrSize); in fixupConditionalBranch()
447 MachineBasicBlock *DestBB = TII->getBranchDestBlock(MI); in fixupUnconditionalBranch() local
449 int64_t DestOffset = BlockInfo[DestBB->getNumber()].Offset; in fixupUnconditionalBranch()
[all …]
DModuloSchedule.cpp1642 MachineBasicBlock *DestBB, MachineBasicBlock *SourceBB, unsigned Stage) { in moveStageBetweenBlocks() argument
1643 auto InsertPt = DestBB->getFirstNonPHI(); in moveStageBetweenBlocks()
1656 MachineInstr *NI = BuildMI(*DestBB, DestBB->getFirstNonPHI(), in moveStageBetweenBlocks()
1660 BlockMIs[{DestBB, CanonicalMIs[&MI]}] = NI; in moveStageBetweenBlocks()
1668 DestBB->insert(InsertPt, &MI); in moveStageBetweenBlocks()
1670 BlockMIs[{DestBB, KernelMI}] = &MI; in moveStageBetweenBlocks()
1674 for (MachineInstr &MI : DestBB->phis()) { in moveStageBetweenBlocks()
1689 InsertPt = DestBB->getFirstNonPHI(); in moveStageBetweenBlocks()
1694 DestBB->insert(InsertPt, NewMI); in moveStageBetweenBlocks()
1699 NewMI->getOperand(2).setMBB(*DestBB->pred_begin()); in moveStageBetweenBlocks()
[all …]
DCodeGenPrepare.cpp419 bool canMergeBlocks(const BasicBlock *BB, const BasicBlock *DestBB) const;
421 bool isMergingEmptyBlockProfitable(BasicBlock *BB, BasicBlock *DestBB,
828 BasicBlock *DestBB = BI->getSuccessor(0); in findDestBlockOfMergeableEmptyBlock() local
829 if (DestBB == BB) in findDestBlockOfMergeableEmptyBlock()
832 if (!canMergeBlocks(BB, DestBB)) in findDestBlockOfMergeableEmptyBlock()
833 DestBB = nullptr; in findDestBlockOfMergeableEmptyBlock()
835 return DestBB; in findDestBlockOfMergeableEmptyBlock()
864 BasicBlock *DestBB = findDestBlockOfMergeableEmptyBlock(BB); in eliminateMostlyEmptyBlocks() local
865 if (!DestBB || in eliminateMostlyEmptyBlocks()
866 !isMergingEmptyBlockProfitable(BB, DestBB, Preheaders.count(BB))) in eliminateMostlyEmptyBlocks()
[all …]
/openbsd/src/gnu/llvm/llvm/lib/Transforms/Utils/
DBreakCriticalEdges.cpp118 BasicBlock *DestBB = TI->getSuccessor(SuccNum); in SplitKnownCriticalEdge() local
122 if (DestBB->isEHPad()) return nullptr; in SplitKnownCriticalEdge()
125 isa<UnreachableInst>(DestBB->getFirstNonPHIOrDbgOrLifetime())) in SplitKnownCriticalEdge()
145 for (BasicBlock *P : predecessors(DestBB)) { in SplitKnownCriticalEdge()
173 DestBB->getName() + in SplitKnownCriticalEdge()
176 BranchInst *NewBI = BranchInst::Create(DestBB, NewBB); in SplitKnownCriticalEdge()
191 for (BasicBlock::iterator I = DestBB->begin(); isa<PHINode>(I); ++I) { in SplitKnownCriticalEdge()
213 if (TI->getSuccessor(i) != DestBB) continue; in SplitKnownCriticalEdge()
216 DestBB->removePredecessor(TIBB, Options.KeepOneInputPHIs); in SplitKnownCriticalEdge()
229 DestBB, NewBB, {TIBB}, Options.MergeIdenticalEdges); in SplitKnownCriticalEdge()
[all …]
DLocal.cpp349 BasicBlock *DestBB = IBI->getDestination(i); in ConstantFoldTerminator() local
350 if (DTU && DestBB != TheOnlyDest) in ConstantFoldTerminator()
351 RemovedSuccessors.insert(DestBB); in ConstantFoldTerminator()
355 DestBB->removePredecessor(BB); in ConstantFoldTerminator()
765 void llvm::MergeBasicBlockIntoOnlyPred(BasicBlock *DestBB, in MergeBasicBlockIntoOnlyPred() argument
769 while (PHINode *PN = dyn_cast<PHINode>(DestBB->begin())) { in MergeBasicBlockIntoOnlyPred()
777 BasicBlock *PredBB = DestBB->getSinglePredecessor(); in MergeBasicBlockIntoOnlyPred()
794 Updates.push_back({DominatorTree::Insert, PredOfPredBB, DestBB}); in MergeBasicBlockIntoOnlyPred()
799 Updates.push_back({DominatorTree::Delete, PredBB, DestBB}); in MergeBasicBlockIntoOnlyPred()
804 if (DestBB->hasAddressTaken()) { in MergeBasicBlockIntoOnlyPred()
[all …]
DBasicBlockUtils.cpp664 void llvm::updatePhiNodes(BasicBlock *DestBB, BasicBlock *OldPred, in updatePhiNodes() argument
667 for (PHINode &PN : DestBB->phis()) { in updatePhiNodes()
835 BasicBlock *SplitBB, BasicBlock *DestBB) { in createPHIsForSplitLoopExit() argument
842 for (PHINode &PN : DestBB->phis()) { in createPHIsForSplitLoopExit()
/openbsd/src/gnu/llvm/llvm/lib/Transforms/ObjCARC/
DObjCARC.cpp56 BasicBlock *DestBB = I->getNormalDest(); in insertAfterInvokes() local
58 if (!DestBB->getSinglePredecessor()) { in insertAfterInvokes()
59 assert(I->getSuccessor(0) == DestBB && in insertAfterInvokes()
61 DestBB = SplitCriticalEdge(I, 0, CriticalEdgeSplittingOptions(DT)); in insertAfterInvokes()
67 insertRVCall(&*DestBB->getFirstInsertionPt(), I); in insertAfterInvokes()
/openbsd/src/gnu/llvm/llvm/lib/Target/MSP430/
DMSP430BranchSelector.cpp128 MachineBasicBlock *DestBB = MI->getOperand(0).getMBB(); in expandBranches() local
133 BlockOffsets[DestBB->getNumber()] - BlockOffsets[MBB->getNumber()]; in expandBranches()
142 << printMBBReference(*DestBB) << ", Distance " in expandBranches()
161 if (Succ == DestBB) { in expandBranches()
204 MI = BuildMI(*MBB, MI, dl, TII->get(MSP430::Bi)).addMBB(DestBB); in expandBranches()
/openbsd/src/gnu/llvm/llvm/lib/Transforms/Instrumentation/
DCFGMST.h221 if (Ei->DestBB && Ei->DestBB->isLandingPad()) { in computeMinimumSpanningTree()
222 if (unionGroups(Ei->SrcBB, Ei->DestBB)) in computeMinimumSpanningTree()
235 if (unionGroups(Ei->SrcBB, Ei->DestBB)) in computeMinimumSpanningTree()
256 << getBBInfo(EI->DestBB).Index << EI->infoString() << "\n"; in dumpEdges()
DPGOInstrumentation.cpp472 const BasicBlock *DestBB; member
479 : SrcBB(Src), DestBB(Dest), Weight(W) {} in PGOEdge()
750 const BasicBlock *DestBB = E->DestBB; in getInstrumentBBs() local
752 BBInfo &DestInfo = getBBInfo(DestBB); in getInstrumentBBs()
766 BasicBlock *DestBB = const_cast<BasicBlock *>(E->DestBB); in getInstrBB() local
769 return DestBB; in getInstrBB()
770 if (DestBB == nullptr) in getInstrBB()
787 return canInstrument(DestBB); in getInstrBB()
791 unsigned SuccNum = GetSuccessorNumber(SrcBB, DestBB); in getInstrBB()
803 << " --> " << getBBInfo(DestBB).Index << "\n"); in getInstrBB()
[all …]
DGCOVProfiling.cpp182 const BasicBlock *DestBB; member
191 : SrcBB(Src), DestBB(Dest), Weight(W) {} in Edge()
712 BasicBlock *DestBB = const_cast<BasicBlock *>(E.DestBB); in getInstrBB() local
715 return DestBB; in getInstrBB()
716 if (DestBB == nullptr) in getInstrBB()
733 return CanInstrument(DestBB); in getInstrBB()
737 const unsigned SuccNum = GetSuccessorNumber(SrcBB, DestBB); in getInstrBB()
744 MST.addEdge(InstrBB, DestBB, 0).InMST = true; in getInstrBB()
755 GCOVBlock &Dst = E.DestBB ? GF.getBlock(E.DestBB) : GF.getReturnBlock(); in dumpEdges()
852 E.DestBB ? Func.getBlock(E.DestBB) : Func.getReturnBlock(); in emitProfileNotes()
[all …]
/openbsd/src/gnu/llvm/llvm/lib/Target/ARM/
DARMBasicBlockInfo.cpp94 MachineBasicBlock *DestBB, in isBBInRange() argument
98 unsigned DestOffset = BBInfo[DestBB->getNumber()].Offset; in isBBInRange()
100 LLVM_DEBUG(dbgs() << "Branch of destination " << printMBBReference(*DestBB) in isBBInRange()
DARMConstantIslandPass.cpp1693 MachineBasicBlock *DestBB = MI->getOperand(0).getMBB(); in fixupImmediateBr() local
1696 if (BBUtils->isBBInRange(MI, DestBB, Br.MaxDisp)) in fixupImmediateBr()
1737 MachineBasicBlock *DestBB = MI->getOperand(0).getMBB(); in fixupConditionalBr() local
1773 BMI->getOperand(0).setMBB(DestBB); in fixupConditionalBr()
1791 MBB->addSuccessor(DestBB); in fixupConditionalBr()
1792 std::next(MBB->getIterator())->removeSuccessor(DestBB); in fixupConditionalBr()
1798 LLVM_DEBUG(dbgs() << " Insert B to " << printMBBReference(*DestBB) in fixupConditionalBr()
1810 .addMBB(DestBB) in fixupConditionalBr()
1813 BuildMI(MBB, DebugLoc(), TII->get(Br.UncondBr)).addMBB(DestBB); in fixupConditionalBr()
1900 MachineBasicBlock *DestBB = Br.MI->getOperand(0).getMBB(); in optimizeThumb2Branches() local
[all …]
DARMBasicBlockInfo.h144 bool isBBInRange(MachineInstr *MI, MachineBasicBlock *DestBB,
DARMLowOverheadLoops.cpp1435 MachineBasicBlock *DestBB = getWhileLoopStartTargetBB(*MI); in RevertWhile() local
1436 unsigned BrOpc = BBUtils->isBBInRange(MI, DestBB, 254) ? in RevertWhile()
1470 MachineBasicBlock *DestBB = MI->getOperand(1).getMBB(); in RevertLoopEnd() local
1471 unsigned BrOpc = BBUtils->isBBInRange(MI, DestBB, 254) ? in RevertLoopEnd()
1493 MachineBasicBlock *DestBB = MI->getOperand(2).getMBB(); in RevertLoopEndDec() local
1495 BBUtils->isBBInRange(MI, DestBB, 254) ? ARM::tBcc : ARM::t2Bcc; in RevertLoopEndDec()
/openbsd/src/gnu/llvm/llvm/lib/Target/WebAssembly/
DWebAssemblyMachineFunctionInfo.cpp143 auto *DestBB = KV.second.get<MachineBasicBlock *>(); in WebAssemblyFunctionInfo() local
144 if (MBBs.count(SrcBB) && MBBs.count(DestBB)) in WebAssemblyFunctionInfo()
145 SrcToUnwindDest[SrcBB->getNumber()] = DestBB->getNumber(); in WebAssemblyFunctionInfo()
/openbsd/src/gnu/llvm/llvm/lib/Target/Mips/
DMipsConstantIslandPass.cpp1453 (MachineInstr *MI,MachineBasicBlock *DestBB, unsigned MaxDisp) { in isBBInRange() argument
1456 unsigned DestOffset = BBInfo[DestBB->getNumber()].Offset; in isBBInRange()
1458 LLVM_DEBUG(dbgs() << "Branch of destination " << printMBBReference(*DestBB) in isBBInRange()
1480 MachineBasicBlock *DestBB = MI->getOperand(TargetOperand).getMBB(); in fixupImmediateBr() local
1483 if (isBBInRange(MI, DestBB, Br.MaxDisp)) in fixupImmediateBr()
1499 MachineBasicBlock *DestBB = MI->getOperand(0).getMBB(); in fixupUnconditionalBr() local
1502 if (isBBInRange(MI, DestBB, BimmX16MaxDisp)) { in fixupUnconditionalBr()
1518 DestBB->setAlignment(Align(4)); in fixupUnconditionalBr()
1539 MachineBasicBlock *DestBB = MI->getOperand(TargetOperand).getMBB(); in fixupConditionalBr() local
1545 if (isBBInRange(MI, DestBB, LongFormMaxOff)) { in fixupConditionalBr()
[all …]
/openbsd/src/gnu/llvm/llvm/lib/Transforms/Scalar/
DGVNHoist.cpp507 BasicBlock *DestBB, bool MoveAccess);
1049 Instruction *Repl, BasicBlock *DestBB, in removeAndReplace() argument
1055 MSSAUpdater->moveToPlace(NewMemAcc, DestBB, MemorySSA::BeforeTerminator); in removeAndReplace()
1106 BasicBlock *DestBB = HP.first; in hoist() local
1110 if (I->getParent() == DestBB) in hoist()
1122 assert(allOperandsAvailable(Repl, DestBB) && in hoist()
1133 if (!allOperandsAvailable(Repl, DestBB)) { in hoist()
1140 if (!makeGepOperandsAvailable(Repl, DestBB, InstructionsToHoist)) in hoist()
1145 Instruction *Last = DestBB->getTerminator(); in hoist()
1154 NR += removeAndReplace(InstructionsToHoist, Repl, DestBB, MoveAccess); in hoist()
DJumpThreading.cpp1679 BasicBlock *DestBB; in processThreadableEdges() local
1681 DestBB = nullptr; in processThreadableEdges()
1684 DestBB = BI->getSuccessor(cast<ConstantInt>(Val)->isZero()); in processThreadableEdges()
1687 DestBB = SI->findCaseValue(cast<ConstantInt>(Val))->getCaseSuccessor(); in processThreadableEdges()
1692 DestBB = cast<BlockAddress>(Val)->getBasicBlock(); in processThreadableEdges()
1697 OnlyDest = DestBB; in processThreadableEdges()
1700 if (OnlyDest != DestBB) in processThreadableEdges()
1713 PredToDestList.emplace_back(Pred, DestBB); in processThreadableEdges()
/openbsd/src/gnu/llvm/llvm/include/llvm/Transforms/Utils/
DBasicBlockUtils.h195 BasicBlock *SplitBB, BasicBlock *DestBB);
260 void updatePhiNodes(BasicBlock *DestBB, BasicBlock *OldPred,
/openbsd/src/gnu/llvm/llvm/lib/Transforms/InstCombine/
DInstCombineLoadStoreAlloca.cpp1553 BasicBlock *DestBB = StoreBB->getTerminator()->getSuccessor(0); in mergeStoreIntoSuccessor() local
1554 if (!DestBB->hasNPredecessors(2)) in mergeStoreIntoSuccessor()
1558 pred_iterator PredIter = pred_begin(DestBB); in mergeStoreIntoSuccessor()
1565 if (StoreBB == DestBB || OtherBB == DestBB) in mergeStoreIntoSuccessor()
1635 MergedVal = InsertNewInstBefore(PN, DestBB->front()); in mergeStoreIntoSuccessor()
1640 BBI = DestBB->getFirstInsertionPt(); in mergeStoreIntoSuccessor()
/openbsd/src/gnu/llvm/llvm/include/llvm/CodeGen/
DModuloSchedule.h342 void moveStageBetweenBlocks(MachineBasicBlock *DestBB,
DTargetInstrInfo.h721 MachineBasicBlock *DestBB,
724 return insertBranch(MBB, DestBB, nullptr, ArrayRef<MachineOperand>(), DL,
/openbsd/src/gnu/llvm/llvm/lib/AsmParser/
DLLParser.cpp6582 BasicBlock *DestBB; in parseSwitch() local
6586 parseTypeAndBasicBlock(DestBB, PFS)) in parseSwitch()
6594 Table.push_back(std::make_pair(cast<ConstantInt>(Constant), DestBB)); in parseSwitch()
6624 BasicBlock *DestBB; in parseIndirectBr() local
6625 if (parseTypeAndBasicBlock(DestBB, PFS)) in parseIndirectBr()
6627 DestList.push_back(DestBB); in parseIndirectBr()
6630 if (parseTypeAndBasicBlock(DestBB, PFS)) in parseIndirectBr()
6632 DestList.push_back(DestBB); in parseIndirectBr()
6865 BasicBlock *DestBB; in parseCatchSwitch() local
6866 if (parseTypeAndBasicBlock(DestBB, PFS)) in parseCatchSwitch()
[all …]
/openbsd/src/gnu/llvm/llvm/lib/Target/AMDGPU/
DSILowerControlFlow.cpp324 MachineBasicBlock *DestBB = MI.getOperand(2).getMBB(); in emitElse() local
348 .addMBB(DestBB); in emitElse()

12