/freebsd-11-stable/contrib/llvm-project/llvm/lib/FuzzMutate/ |
H A D | RandomIRBuilder.cpp | 21 Value *RandomIRBuilder::findOrCreateSource(BasicBlock &BB, argument 23 return findOrCreateSource(BB, Insts, {}, anyType()); 26 Value *RandomIRBuilder::findOrCreateSource(BasicBlock &BB, argument 38 return newSource(BB, Insts, Srcs, Pred); 41 Value *RandomIRBuilder::newSource(BasicBlock &BB, ArrayRef<Instruction *> Insts, argument 48 Value *Ptr = findPointer(BB, Insts, Srcs, Pred); 51 auto IP = BB.getFirstInsertionPt(); 54 assert(IP != BB.end() && "guaranteed by the findPointer"); 95 void RandomIRBuilder::connectToSink(BasicBlock &BB, argument 117 newSink(BB, Inst 120 newSink(BasicBlock &BB, ArrayRef<Instruction *> Insts, Value *V) argument 133 findPointer(BasicBlock &BB, ArrayRef<Instruction *> Insts, ArrayRef<Value *> Srcs, SourcePred Pred) argument [all...] |
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/Mips/ |
H A D | MipsSEISelLowering.h | 92 MachineBasicBlock *BB) const; 94 MachineBasicBlock *BB, 98 MachineBasicBlock *BB) const; 101 MachineBasicBlock *BB) const; 104 MachineBasicBlock *BB) const; 107 MachineBasicBlock *BB) const; 110 MachineBasicBlock *BB, 115 MachineBasicBlock *BB) const; 118 MachineBasicBlock *BB) const; 121 MachineBasicBlock *BB) cons [all...] |
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
H A D | SIAnnotateControlFlow.cpp | 84 bool isTopOfStack(BasicBlock *BB); 88 void push(BasicBlock *BB, Value *Saved); 104 void closeControlFlow(BasicBlock *BB); 168 /// Is BB the last block saved on the stack ? 169 bool SIAnnotateControlFlow::isTopOfStack(BasicBlock *BB) { argument 170 return !Stack.empty() && Stack.back().first == BB; 178 /// Push a BB and saved value to the control flow stack 179 void SIAnnotateControlFlow::push(BasicBlock *BB, Value *Saved) { argument 180 Stack.push_back(std::make_pair(BB, Saved)); 262 BasicBlock *BB 292 closeControlFlow(BasicBlock *BB) argument 333 BasicBlock *BB = *I; local [all...] |
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
H A D | SSAUpdater.cpp | 62 bool SSAUpdater::HasValueForBlock(BasicBlock *BB) const { 63 return getAvailableVals(AV).count(BB); 66 Value *SSAUpdater::FindValueForBlock(BasicBlock *BB) const { 67 AvailableValsTy::iterator AVI = getAvailableVals(AV).find(BB); 71 void SSAUpdater::AddAvailableValue(BasicBlock *BB, Value *V) { argument 75 getAvailableVals(AV)[BB] = V; 94 Value *SSAUpdater::GetValueAtEndOfBlock(BasicBlock *BB) { argument 95 Value *Res = GetValueAtEndOfBlockInternal(BB); 99 Value *SSAUpdater::GetValueInMiddleOfBlock(BasicBlock *BB) { argument 102 if (!HasValueForBlock(BB)) 228 BlkSucc_begin(BlkT *BB) argument 229 BlkSucc_end(BlkT *BB) argument 257 FindPredecessorBlocks(BasicBlock *BB, SmallVectorImpl<BasicBlock *> *Preds) argument 272 GetUndefVal(BasicBlock *BB, SSAUpdater *Updater) argument 278 CreateEmptyPHI(BasicBlock *BB, unsigned NumPreds, SSAUpdater *Updater) argument 323 GetValueAtEndOfBlockInternal(BasicBlock *BB) argument 368 BasicBlock *BB = User->getParent(); local [all...] |
H A D | SizeOpts.cpp | 63 static bool isColdBlock(const BasicBlock *BB, argument 66 return PSI->isColdBlock(BB, BFI); 69 const BasicBlock *BB, 72 return PSI->isHotBlockNthPercentile(CutOff, BB, BFI); 84 bool llvm::shouldOptimizeForSize(const BasicBlock *BB, ProfileSummaryInfo *PSI, argument 87 return shouldOptimizeForSizeImpl<BasicBlockBFIAdapter>(BB, PSI, BFI, 68 isHotBlockNthPercentile(int CutOff, const BasicBlock *BB, ProfileSummaryInfo *PSI, BlockFrequencyInfo *BFI) argument
|
H A D | SSAUpdaterBulk.cpp | 51 void SSAUpdaterBulk::AddAvailableValue(unsigned Var, BasicBlock *BB, Value *V) { argument 55 << BB->getName() << "\n"); 56 Rewrites[Var].Defines[BB] = V; 70 bool SSAUpdaterBulk::HasValueForBlock(unsigned Var, BasicBlock *BB) { 71 return (Var < Rewrites.size()) ? Rewrites[Var].Defines.count(BB) : false; 74 // Compute value at the given block BB. We either should already know it, or we 76 Value *SSAUpdaterBulk::computeValueAt(BasicBlock *BB, RewriteInfo &R, 78 if (!R.Defines.count(BB)) { 79 if (DT->isReachableFromEntry(BB) && PredCache.get(BB) [all...] |
H A D | LowerInvoke.cpp | 49 for (BasicBlock &BB : F) 50 if (InvokeInst *II = dyn_cast<InvokeInst>(BB.getTerminator())) { 68 II->getUnwindDest()->removePredecessor(&BB); 71 BB.getInstList().erase(II);
|
/freebsd-11-stable/contrib/llvm-project/llvm/lib/CodeGen/ |
H A D | UnreachableBlockElim.cpp | 113 for (MachineBasicBlock *BB : depth_first_ext(&F, Reachable)) 114 (void)BB/* Mark all reachable blocks */; 120 MachineBasicBlock *BB = &*I; local 123 if (!Reachable.count(BB)) { 124 DeadBlocks.push_back(BB); 127 if (MLI) MLI->removeBlock(BB); 128 if (MDT && MDT->getNode(BB)) MDT->eraseNode(BB); 130 while (BB->succ_begin() != BB 162 MachineBasicBlock *BB = &*I; local [all...] |
H A D | IfConversion.cpp | 100 ICNotClassfied, // BB data valid, but not classified. 102 ICSimple, // BB is entry of an one split, no rejoin sub-CFG. 106 ICTriangle, // BB is entry of a triangle sub-CFG. 107 ICDiamond, // BB is entry of a diamond sub-CFG. 108 ICForkedDiamond // BB is entry of an almost diamond sub-CFG, with a 119 /// IsDone - True if BB is not to be considered for ifcvt. 120 /// IsBeingAnalyzed - True if BB is currently being analyzed. 121 /// IsAnalyzed - True if BB has been analyzed (info is still valid). 122 /// IsEnqueued - True if BB has been enqueued to be ifcvt'ed. 124 /// HasFallThrough - True if BB ma 149 MachineBasicBlock *BB = nullptr; member in struct:__anon1726::IfConverter::BBInfo 285 MeetIfcvtSizeLimit(MachineBasicBlock &BB, unsigned Cycle, unsigned Extra, BranchProbability Prediction) const argument 618 findFalseBlock(MachineBasicBlock *BB, MachineBasicBlock *TrueBB) argument 1226 MachineBasicBlock *BB = State.MBB; local [all...] |
/freebsd-11-stable/contrib/llvm-project/llvm/lib/IR/ |
H A D | SafepointIRVerifier.cpp | 86 const BasicBlock* BB = PN->getParent(); local 88 for (const_pred_iterator PredIt(BB), End(BB, true); PredIt != End; ++PredIt) { 101 bool isDeadBlock(const BasicBlock *BB) const { 102 return DeadBlocks.count(BB); 115 bool hasLiveIncomingEdges(const BasicBlock *BB) const { 117 for (const_pred_iterator PredIt(BB), End(BB, true); PredIt != End; ++PredIt) { 130 for (const BasicBlock &BB : F) 131 if (!DT.isReachableFromEntry(&BB)) 159 addDeadBlock(const BasicBlock *BB) argument 562 getBasicBlockState(const BasicBlock *BB) argument 616 const BasicBlock *BB = Worklist.pop_back_val(); local 646 removeValidUnrelocatedDefs(const BasicBlock *BB, const BasicBlockState *BBS, AvailableValueSet &Contribution) argument 734 gatherDominatingDefs(const BasicBlock *BB, AvailableValueSet &Result, const DominatorTree &DT) argument 759 transferBlock(const BasicBlock *BB, BasicBlockState &BBS, bool ContributionChanged) argument [all...] |
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/CodeGen/ |
H A D | MachineSSAUpdater.h | 69 void AddAvailableValue(MachineBasicBlock *BB, unsigned V); 73 bool HasValueForBlock(MachineBasicBlock *BB) const; 77 unsigned GetValueAtEndOfBlock(MachineBasicBlock *BB); 84 /// 'use' in BB. Consider code like this: 97 unsigned GetValueInMiddleOfBlock(MachineBasicBlock *BB); 107 unsigned GetValueAtEndOfBlockInternal(MachineBasicBlock *BB);
|
H A D | MachineLoopInfo.h | 64 /// This looks for a BB terminating instruction with a known debug 116 /// Return the innermost loop that BB lives in. If a basic block is in no loop 118 inline MachineLoop *getLoopFor(const MachineBasicBlock *BB) const { 119 return LI.getLoopFor(BB); 123 inline const MachineLoop *operator[](const MachineBasicBlock *BB) const { 124 return LI.getLoopFor(BB); 128 inline unsigned getLoopDepth(const MachineBasicBlock *BB) const { 129 return LI.getLoopDepth(BB); 133 inline bool isLoopHeader(const MachineBasicBlock *BB) const { 134 return LI.isLoopHeader(BB); 152 changeLoopFor(MachineBasicBlock *BB, MachineLoop *L) argument 170 removeBlock(MachineBasicBlock *BB) argument [all...] |
H A D | LoopTraversal.h | 97 TraversedMBBInfo(MachineBasicBlock *BB = nullptr, bool Primary = true, 99 : MBB(BB), PrimaryPass(Primary), IsDone(Done) {}
|
H A D | MachinePostDominators.h | 44 MachineDomTreeNode *operator[](MachineBasicBlock *BB) const { 45 return PDT->getNode(BB); 48 MachineDomTreeNode *getNode(MachineBasicBlock *BB) const { 49 return PDT->getNode(BB);
|
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/Transforms/Utils/ |
H A D | SSAUpdater.h | 72 void AddAvailableValue(BasicBlock *BB, Value *V); 76 bool HasValueForBlock(BasicBlock *BB) const; 80 Value *FindValueForBlock(BasicBlock *BB) const; 84 Value *GetValueAtEndOfBlock(BasicBlock *BB); 91 /// after the 'use' in BB. Consider code like this: 106 Value *GetValueInMiddleOfBlock(BasicBlock *BB); 125 Value *GetValueAtEndOfBlockInternal(BasicBlock *BB);
|
/freebsd-11-stable/contrib/llvm-project/llvm/include/llvm/Analysis/ |
H A D | LoopIterator.h | 143 bool hasPreorder(BasicBlock *BB) const { return PostNumbers.count(BB); } 146 bool hasPostorder(BasicBlock *BB) const { 147 DenseMap<BasicBlock*, unsigned>::const_iterator I = PostNumbers.find(BB); 152 unsigned getPostorder(BasicBlock *BB) const { 153 DenseMap<BasicBlock*, unsigned>::const_iterator I = PostNumbers.find(BB); 160 unsigned getRPO(BasicBlock *BB) const { 161 return 1 + PostBlocks.size() - getPostorder(BB); 196 void finishPostorder(BasicBlock *BB); 231 bool visitPreorder(BasicBlock *BB) { argument 240 finishPostorder(BasicBlock *BB) argument 253 finishPostorder(BasicBlock *BB) argument [all...] |
H A D | RegionInfoImpl.h | 57 void RegionBase<Tr>::replaceEntry(BlockT *BB) { argument 58 this->entry.setPointer(BB); 62 void RegionBase<Tr>::replaceExit(BlockT *BB) { argument 64 exit = BB; 105 BlockT *BB = const_cast<BlockT *>(B); local 107 if (!DT->getNode(BB)) 116 return (DT->dominates(entry, BB) && 117 !(DT->dominates(exit, BB) && DT->dominates(entry, exit))); 134 for (BlockT *BB : ExitingBlocks) { 135 if (!contains(BB)) 279 verifyWalk(BlockT *BB, std::set<BlockT *> *visited) const argument 412 BlockT *BB = Element->template getNodeAs<BlockT>(); local 558 BlockT *BB = Element->template getNodeAs<BlockT>(); local 566 isCommonDomFrontier(BlockT *BB, BlockT *entry, BlockT *exit) const argument 633 BlockT *BB = e->second; local 750 BlockT *BB = N->getBlock(); local 825 setRegionFor(BlockT *BB, RegionT *R) argument 923 BlockT *BB = GraphTraits<FuncPtrT>::getEntryNode(&F); local [all...] |
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/Instrumentation/ |
H A D | CFGMST.h | 45 // This map records the auxiliary information for each BB. 80 // Give BB, return the auxiliary information. 81 BBInfo &getBBInfo(const BasicBlock *BB) const { 82 auto It = BBInfos.find(BB); 87 // Give BB, return the auxiliary information if it's available. 88 BBInfo *findBBInfo(const BasicBlock *BB) const { 89 auto It = BBInfos.find(BB); 112 // Special handling for single BB functions. 120 for (Function::iterator BB = F.begin(), E = F.end(); BB ! 239 const BasicBlock *BB = BI.first; local [all...] |
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Analysis/ |
H A D | MemorySSAUpdater.cpp | 42 BasicBlock *BB, 46 auto Cached = CachedPreviousDef.find(BB); 51 if (!MSSA->DT->isReachableFromEntry(BB)) 54 if (BasicBlock *Pred = BB->getUniquePredecessor()) { 55 VisitedBlocks.insert(BB); 58 CachedPreviousDef.insert({BB, Result}); 62 if (VisitedBlocks.count(BB)) { 66 MemoryAccess *Result = MSSA->createMemoryPhi(BB); 67 CachedPreviousDef.insert({BB, Result}); 71 if (VisitedBlocks.insert(BB) 41 getPreviousDefRecursive( BasicBlock *BB, DenseMap<BasicBlock *, TrackingVH<MemoryAccess>> &CachedPreviousDef) argument 177 getPreviousDefFromEnd( BasicBlock *BB, DenseMap<BasicBlock *, TrackingVH<MemoryAccess>> &CachedPreviousDef) argument 289 setMemoryPhiValueForBlock(MemoryPhi *MP, const BasicBlock *BB, MemoryAccess *NewDef) argument 582 cloneUsesAndDefs(BasicBlock *BB, BasicBlock *NewBB, const ValueToValueMapTy &VMap, PhiToDefMap &MPhiMap, bool CloneWasSimplified) argument 729 updateForClonedBlockIntoPred( BasicBlock *BB, BasicBlock *P1, const ValueToValueMapTy &VM) argument 915 BasicBlock *BB = Edge.getTo(); local 924 auto *BB = BBPredPair.first; local 961 BasicBlock *BB = Edge.getTo(); local 968 auto *BB = BBPredPair.first; local 1126 moveTo(MemoryUseOrDef *What, BasicBlock *BB, WhereType Where) argument 1160 moveToPlace(MemoryUseOrDef *What, BasicBlock *BB, MemorySSA::InsertionPlace Where) argument 1384 const BasicBlock *BB = I->getParent(); local 1406 const BasicBlock *BB = BI->getParent(); local 1420 createMemoryAccessInBB( Instruction *I, MemoryAccess *Definition, const BasicBlock *BB, MemorySSA::InsertionPlace Point) argument [all...] |
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/Vectorize/ |
H A D | VPlanHCFGBuilder.cpp | 63 void setVPBBPredsFromBB(VPBasicBlock *VPBB, BasicBlock *BB); 65 VPBasicBlock *getOrCreateVPBB(BasicBlock *BB); 70 void createVPInstructionsForVPBB(VPBasicBlock *VPBB, BasicBlock *BB); 81 // Set predecessors of \p VPBB in the same order as they are in \p BB. \p VPBB 83 void PlainCFGBuilder::setVPBBPredsFromBB(VPBasicBlock *VPBB, BasicBlock *BB) { argument 86 for (BasicBlock *Pred : predecessors(BB)) 109 VPBasicBlock *PlainCFGBuilder::getOrCreateVPBB(BasicBlock *BB) { argument 110 auto BlockIt = BB2VPBB.find(BB); 116 LLVM_DEBUG(dbgs() << "Creating VPBasicBlock for " << BB->getName() << "\n"); 117 VPBasicBlock *VPBB = new VPBasicBlock(BB 192 createVPInstructionsForVPBB(VPBasicBlock *VPBB, BasicBlock *BB) argument [all...] |
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
H A D | MergedLoadStoreMotion.cpp | 115 BasicBlock *getDiamondTail(BasicBlock *BB); 116 bool isDiamondHead(BasicBlock *BB); 118 StoreInst *canSinkFromBlock(BasicBlock *BB, StoreInst *SI); 119 PHINode *getPHIOperand(BasicBlock *BB, StoreInst *S0, StoreInst *S1); 123 void sinkStoresAndGEPs(BasicBlock *BB, StoreInst *SinkCand, 125 bool mergeStores(BasicBlock *BB); 132 BasicBlock *MergedLoadStoreMotion::getDiamondTail(BasicBlock *BB) { argument 133 assert(isDiamondHead(BB) && "Basic block is not head of a diamond"); 134 return BB->getTerminator()->getSuccessor(0)->getSingleSuccessor(); 138 /// True when BB i 140 isDiamondHead(BasicBlock *BB) argument 210 getPHIOperand(BasicBlock *BB, StoreInst *S0, StoreInst *S1) argument 243 sinkStoresAndGEPs(BasicBlock *BB, StoreInst *S0, StoreInst *S1) argument 358 BasicBlock *BB = &*FI++; local [all...] |
H A D | FlattenCFGPass.cpp | 63 for (auto &BB : F) 64 Blocks.push_back(&BB); 72 if (auto *BB = cast_or_null<BasicBlock>(BlockHandle)) 73 if (FlattenCFG(BB, AA))
|
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/ObjCARC/ |
H A D | ObjCARC.h | 87 auto *BB = PN.getParent(); local 88 for (auto &P : BB->phis()) { 93 auto *BB = PN.getIncomingBlock(I); local 95 auto *POpnd = P.getIncomingValueForBlock(BB)->stripPointerCasts();
|
/freebsd-11-stable/contrib/llvm-project/llvm/lib/Transforms/IPO/ |
H A D | HotColdSplitting.cpp | 96 bool blockEndsInUnreachable(const BasicBlock &BB) { argument 97 if (!succ_empty(&BB)) 99 if (BB.empty()) 101 const Instruction *I = BB.getTerminator(); 105 bool unlikelyExecuted(BasicBlock &BB) { argument 107 if (BB.isEHPad() || isa<ResumeInst>(BB.getTerminator())) 112 for (Instruction &I : BB) 119 if (blockEndsInUnreachable(BB)) { 121 dyn_cast_or_null<CallInst>(BB 131 mayExtractBlock(const BasicBlock &BB) argument 383 getEntryPointScore(BasicBlock &BB, unsigned Score) argument [all...] |
/freebsd-11-stable/contrib/llvm-project/llvm/tools/llvm-stress/ |
H A D | llvm-stress.cpp | 183 : BB(Block), PT(PT), Ran(R), Context(BB->getContext()) {} 327 BasicBlock *BB; member in struct:llvm::__anon2881::Modifier 340 LoadModifier(BasicBlock *BB, PieceTable *PT, Random *R) argument 341 : Modifier(BB, PT, R) {} 346 Value *V = new LoadInst(Ptr, "L", BB->getTerminator()); 352 StoreModifier(BasicBlock *BB, PieceTable *PT, Random *R) argument 353 : Modifier(BB, PT, R) {} 367 new StoreInst(Val, Ptr, BB->getTerminator()); 372 BinModifier(BasicBlock *BB, PieceTabl argument 416 ConstModifier(BasicBlock *BB, PieceTable *PT, Random *R) argument 467 AllocaModifier(BasicBlock *BB, PieceTable *PT, Random *R) argument 479 ExtractElementModifier(BasicBlock *BB, PieceTable *PT, Random *R) argument 493 ShuffModifier(BasicBlock *BB, PieceTable *PT, Random *R) argument 521 InsertElementModifier(BasicBlock *BB, PieceTable *PT, Random *R) argument 537 CastModifier(BasicBlock *BB, PieceTable *PT, Random *R) argument 617 SelectModifier(BasicBlock *BB, PieceTable *PT, Random *R) argument 641 CmpModifier(BasicBlock *BB, PieceTable *PT, Random *R) argument 673 BasicBlock *BB = BasicBlock::Create(F->getContext(), "BB", F); local [all...] |