Home
last modified time | relevance | path

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

/external/llvm/lib/CodeGen/
DTailDuplication.cpp92 MachineBasicBlock *PredBB,
99 MachineBasicBlock *PredBB,
173 MachineBasicBlock *PredBB = *PI; in VerifyPHIs() local
177 if (PHIBB == PredBB) { in VerifyPHIs()
185 << PredBB->getNumber() << '\n'; in VerifyPHIs()
395 MachineInstr *MI, MachineBasicBlock *TailBB, MachineBasicBlock *PredBB, in ProcessPHI() argument
400 unsigned SrcOpIdx = getPHISrcRegOpIdx(MI, PredBB); in ProcessPHI()
411 AddSSAUpdateEntry(DefReg, NewDef, PredBB); in ProcessPHI()
427 MachineBasicBlock *PredBB, in DuplicateInstruction() argument
445 AddSSAUpdateEntry(Reg, NewReg, PredBB); in DuplicateInstruction()
[all …]
DMachineDominators.cpp83 for (MachineBasicBlock *PredBB : Succ->predecessors()) { in applySplitCriticalEdges()
84 if (PredBB == Edge.NewBB) in applySplitCriticalEdges()
98 if (NewBBs.count(PredBB)) { in applySplitCriticalEdges()
99 assert(PredBB->pred_size() == 1 && "A basic block resulting from a " in applySplitCriticalEdges()
102 PredBB = *PredBB->pred_begin(); in applySplitCriticalEdges()
104 if (!DT->dominates(SuccDTNode, DT->getNode(PredBB))) { in applySplitCriticalEdges()
DBranchFolding.cpp568 MachineBasicBlock *PredBB, in ProfitableToMerge() argument
589 if (MBB1 == PredBB || MBB2 == PredBB) { in ProfitableToMerge()
591 unsigned NumTerms = CountTerminators(MBB1 == PredBB ? MBB2 : MBB1, I); in ProfitableToMerge()
609 if (SuccBB && MBB1 != PredBB && MBB2 != PredBB && in ProfitableToMerge()
640 MachineBasicBlock *PredBB) { in ComputeSameTails() argument
653 SuccBB, PredBB, in ComputeSameTails()
676 MachineBasicBlock *PredBB) { in RemoveBlocksWithHash() argument
683 if (SuccBB && CurMBB != PredBB) in RemoveBlocksWithHash()
695 bool BranchFolder::CreateCommonTailOnlyBlock(MachineBasicBlock *&PredBB, in CreateCommonTailOnlyBlock() argument
703 if (SameTails[i].getBlock() == PredBB) { in CreateCommonTailOnlyBlock()
[all …]
DBranchFolding.h119 MachineBasicBlock* PredBB);
130 MachineBasicBlock *PredBB);
132 MachineBasicBlock* PredBB);
133 bool CreateCommonTailOnlyBlock(MachineBasicBlock *&PredBB,
DMachineSSAUpdater.cpp165 MachineBasicBlock *PredBB = *PI; in GetValueInMiddleOfBlock() local
166 unsigned PredVal = GetValueAtEndOfBlockInternal(PredBB); in GetValueInMiddleOfBlock()
167 PredValues.push_back(std::make_pair(PredBB, PredVal)); in GetValueInMiddleOfBlock()
/external/llvm/lib/Analysis/
DPHITransAddr.cpp146 BasicBlock *PredBB, in PHITranslateSubExpr() argument
172 return AddAsInput(PN->getIncomingValueForBlock(PredBB)); in PHITranslateSubExpr()
192 Value *PHIIn = PHITranslateSubExpr(Cast->getOperand(0), CurBB, PredBB, DT); in PHITranslateSubExpr()
210 (!DT || DT->dominates(CastI->getParent(), PredBB))) in PHITranslateSubExpr()
221 Value *GEPOp = PHITranslateSubExpr(GEP->getOperand(i), CurBB, PredBB, DT); in PHITranslateSubExpr()
246 (!DT || DT->dominates(GEPI->getParent(), PredBB))) { in PHITranslateSubExpr()
262 Value *LHS = PHITranslateSubExpr(Inst->getOperand(0), CurBB, PredBB, DT); in PHITranslateSubExpr()
299 (!DT || DT->dominates(BO->getParent(), PredBB))) in PHITranslateSubExpr()
315 bool PHITransAddr::PHITranslateValue(BasicBlock *CurBB, BasicBlock *PredBB, in PHITranslateValue() argument
320 if (DT && DT->isReachableFromEntry(PredBB)) in PHITranslateValue()
[all …]
DLazyValueInfo.cpp449 void threadEdge(BasicBlock *PredBB,BasicBlock *OldSucc,BasicBlock *NewSucc);
1104 void LazyValueInfoCache::threadEdge(BasicBlock *PredBB, BasicBlock *OldSucc, in threadEdge() argument
1371 BasicBlock *PredBB = PHI->getIncomingBlock(i); in getPredicateAt() local
1373 Tristate Result = getPredicateOnEdge(Pred, Incoming, C, PredBB, BB, in getPredicateAt()
1412 void LazyValueInfo::threadEdge(BasicBlock *PredBB, BasicBlock *OldSucc, in threadEdge() argument
1415 const DataLayout &DL = PredBB->getModule()->getDataLayout(); in threadEdge()
1416 getCache(PImpl, AC, &DL, DT).threadEdge(PredBB, OldSucc, NewSucc); in threadEdge()
/external/llvm/lib/Transforms/Scalar/
DJumpThreading.cpp170 void UpdateBlockFreqAndEdgeWeight(BasicBlock *PredBB, BasicBlock *BB,
556 BasicBlock *PredBB = PN->getIncomingBlock(i); in ComputeValueKnownInPredecessors() local
558 Value *RHS = Cmp->getOperand(1)->DoPHITranslation(BB, PredBB); in ComputeValueKnownInPredecessors()
567 cast<Constant>(RHS), PredBB, BB, in ComputeValueKnownInPredecessors()
575 Result.push_back(std::make_pair(KC, PredBB)); in ComputeValueKnownInPredecessors()
987 BasicBlock *PredBB = *PI; in SimplifyPartiallyRedundantLoad() local
990 if (!PredsScanned.insert(PredBB).second) in SimplifyPartiallyRedundantLoad()
994 BBIt = PredBB->end(); in SimplifyPartiallyRedundantLoad()
996 Value *PredAvailable = FindAvailableLoadedValue(LoadedPtr, PredBB, BBIt, in SimplifyPartiallyRedundantLoad()
1000 OneUnavailablePred = PredBB; in SimplifyPartiallyRedundantLoad()
[all …]
/external/llvm/include/llvm/Analysis/
DPHITransAddr.h82 bool PHITranslateValue(BasicBlock *CurBB, BasicBlock *PredBB,
92 Value *PHITranslateWithInsertion(BasicBlock *CurBB, BasicBlock *PredBB,
104 Value *PHITranslateSubExpr(Value *V, BasicBlock *CurBB, BasicBlock *PredBB,
113 BasicBlock *PredBB, const DominatorTree &DT,
DLoopInfoImpl.h357 BlockT *PredBB = ReverseCFGWorklist.back(); in discoverAndMapSubloop() local
360 LoopT *Subloop = LI->getLoopFor(PredBB); in discoverAndMapSubloop()
362 if (!DomTree.isReachableFromEntry(PredBB)) in discoverAndMapSubloop()
366 LI->changeLoopFor(PredBB, L); in discoverAndMapSubloop()
368 if (PredBB == L->getHeader()) in discoverAndMapSubloop()
372 InvBlockTraits::child_begin(PredBB), in discoverAndMapSubloop()
373 InvBlockTraits::child_end(PredBB)); in discoverAndMapSubloop()
388 PredBB = Subloop->getHeader(); in discoverAndMapSubloop()
394 InvBlockTraits::child_begin(PredBB), in discoverAndMapSubloop()
395 PE = InvBlockTraits::child_end(PredBB); PI != PE; ++PI) { in discoverAndMapSubloop()
DLazyValueInfo.h75 void threadEdge(BasicBlock *PredBB, BasicBlock *OldSucc, BasicBlock *NewSucc);
/external/llvm/lib/Transforms/Utils/
DBasicBlockUtils.cpp115 BasicBlock *PredBB = BB->getUniquePredecessor(); in MergeBlockIntoPredecessor() local
116 if (!PredBB) return false; in MergeBlockIntoPredecessor()
119 if (PredBB == BB) return false; in MergeBlockIntoPredecessor()
121 if (PredBB->getTerminator()->isExceptional()) in MergeBlockIntoPredecessor()
124 succ_iterator SI(succ_begin(PredBB)), SE(succ_end(PredBB)); in MergeBlockIntoPredecessor()
150 PredBB->getInstList().pop_back(); in MergeBlockIntoPredecessor()
154 BB->replaceAllUsesWith(PredBB); in MergeBlockIntoPredecessor()
157 PredBB->getInstList().splice(PredBB->end(), BB->getInstList()); in MergeBlockIntoPredecessor()
160 if (!PredBB->hasName()) in MergeBlockIntoPredecessor()
161 PredBB->takeName(BB); in MergeBlockIntoPredecessor()
[all …]
DLocal.cpp563 BasicBlock *PredBB = DestBB->getSinglePredecessor(); in MergeBasicBlockIntoOnlyPred() local
564 assert(PredBB && "Block doesn't have a single predecessor!"); in MergeBasicBlockIntoOnlyPred()
578 PredBB->replaceAllUsesWith(DestBB); in MergeBasicBlockIntoOnlyPred()
581 PredBB->getTerminator()->eraseFromParent(); in MergeBasicBlockIntoOnlyPred()
582 DestBB->getInstList().splice(DestBB->begin(), PredBB->getInstList()); in MergeBasicBlockIntoOnlyPred()
586 if (PredBB == &DestBB->getParent()->getEntryBlock()) in MergeBasicBlockIntoOnlyPred()
587 DestBB->moveAfter(PredBB); in MergeBasicBlockIntoOnlyPred()
590 BasicBlock *PredBBIDom = DT->getNode(PredBB)->getIDom()->getBlock(); in MergeBasicBlockIntoOnlyPred()
592 DT->eraseNode(PredBB); in MergeBasicBlockIntoOnlyPred()
595 PredBB->eraseFromParent(); in MergeBasicBlockIntoOnlyPred()
[all …]
DSSAUpdater.cpp102 BasicBlock *PredBB = SomePhi->getIncomingBlock(i); in GetValueInMiddleOfBlock() local
103 Value *PredVal = GetValueAtEndOfBlock(PredBB); in GetValueInMiddleOfBlock()
104 PredValues.push_back(std::make_pair(PredBB, PredVal)); in GetValueInMiddleOfBlock()
115 BasicBlock *PredBB = *PI; in GetValueInMiddleOfBlock() local
116 Value *PredVal = GetValueAtEndOfBlock(PredBB); in GetValueInMiddleOfBlock()
117 PredValues.push_back(std::make_pair(PredBB, PredVal)); in GetValueInMiddleOfBlock()
DSimplifyCFG.cpp1740 BasicBlock *PredBB = PN->getIncomingBlock(i); in FoldCondBranchOnPHI() local
1745 if (isa<IndirectBrInst>(PredBB->getTerminator())) continue; in FoldCondBranchOnPHI()
1766 TranslateMap[PN] = PN->getIncomingValueForBlock(PredBB); in FoldCondBranchOnPHI()
1795 TerminatorInst *PredBBTI = PredBB->getTerminator(); in FoldCondBranchOnPHI()
1798 BB->removePredecessor(PredBB); in FoldCondBranchOnPHI()
2429 for (BasicBlock *PredBB : predecessors(Succ)) in ensureValueAvailableInSuccessor()
2430 if (PredBB != BB) in ensureValueAvailableInSuccessor()
2432 PredBB); in ensureValueAvailableInSuccessor()
3371 BasicBlock *PredBB = *PI++; in SimplifyCleanupReturn() local
3373 removeUnwindEdge(PredBB); in SimplifyCleanupReturn()
[all …]
/external/llvm/lib/Target/XCore/
DXCoreLowerThreadLocal.cpp139 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()
/external/llvm/lib/Transforms/ObjCARC/
DDependencyAnalysis.cpp248 BasicBlock *PredBB = *PI; in FindDependencies() local
249 if (Visited.insert(PredBB).second) in FindDependencies()
250 Worklist.push_back(std::make_pair(PredBB, PredBB->end())); in FindDependencies()
/external/llvm/lib/IR/
DBasicBlock.cpp227 BasicBlock *PredBB = *PI; in getUniquePredecessor() local
230 if (*PI != PredBB) in getUniquePredecessor()
235 return PredBB; in getUniquePredecessor()
DValue.cpp521 const BasicBlock *PredBB) { in DoPHITranslation() argument
524 return PN->getIncomingValueForBlock(PredBB); in DoPHITranslation()
DVerifier.cpp2907 for (BasicBlock *PredBB : predecessors(BB)) { in visitEHPadPredecessors()
2908 const auto *II = dyn_cast<InvokeInst>(PredBB->getTerminator()); in visitEHPadPredecessors()
2925 for (BasicBlock *PredBB : predecessors(BB)) { in visitEHPadPredecessors()
2926 TerminatorInst *TI = PredBB->getTerminator(); in visitEHPadPredecessors()
/external/llvm/include/llvm/IR/
DValue.h507 Value *DoPHITranslation(const BasicBlock *CurBB, const BasicBlock *PredBB);
510 const BasicBlock *PredBB) const{ in DoPHITranslation() argument
511 return const_cast<Value*>(this)->DoPHITranslation(CurBB, PredBB); in DoPHITranslation()
/external/llvm/lib/Target/ARM/
DARMFrameLowering.cpp1880 for (MachineBasicBlock *PredBB : CurMBB->predecessors()) { in adjustForSegmentedStacks()
1881 if (BeforePrologueRegion.insert(PredBB).second) in adjustForSegmentedStacks()
1882 WalkList.push_back(PredBB); in adjustForSegmentedStacks()
1897 for (MachineBasicBlock *PredBB : BeforePrologueRegion) in adjustForSegmentedStacks()
1898 PredBB->addLiveIn(LI); in adjustForSegmentedStacks()
/external/llvm/lib/Transforms/InstCombine/
DInstructionCombining.cpp1994 BasicBlock *PredBB = FreeInstrBB->getSinglePredecessor(); in tryToMoveFreeBeforeNullTest() local
2000 if (!PredBB) in tryToMoveFreeBeforeNullTest()
2014 TerminatorInst *TI = PredBB->getTerminator(); in tryToMoveFreeBeforeNullTest()