/freebsd-10.0-release/contrib/llvm/include/llvm/Support/ |
H A D | PredIteratorCache.h | 38 /// for (BasicBlock **PI = PredCache->GetPreds(BB); *PI; ++PI) 41 /// for (pred_iterator PI = pred_begin(BB), E = pred_end(BB); PI != E; ++PI) 42 BasicBlock **GetPreds(BasicBlock *BB) { argument 43 BasicBlock **&Entry = BlockToPredsMap[BB]; 46 SmallVector<BasicBlock*, 32> PredCache(pred_begin(BB), pred_end(BB)); 49 BlockToPredCountMap[BB] = PredCache.size()-1; 56 unsigned GetNumPreds(BasicBlock *BB) { argument 57 GetPreds(BB); [all...] |
H A D | InstIterator.h | 37 _BB_i_t BB; // BasicBlocksType::iterator member in class:llvm::InstIterator 52 : BBs(II.BBs), BB(II.BB), BI(II.BI) {} 56 : BBs(II.BBs), BB(II.BB), BI(II.BI) {} 59 : BBs(&m.getBasicBlockList()), BB(BBs->begin()) { // begin ctor 60 if (BB != BBs->end()) { 61 BI = BB->begin(); 67 : BBs(&m.getBasicBlockList()), BB(BBs->end()) { // end ctor 71 inline BBIty &getBasicBlockIterator() { return BB; } [all...] |
/freebsd-10.0-release/contrib/llvm/include/llvm/Analysis/ |
H A D | BlockFrequencyImpl.h | 53 std::string getBlockName(BasicBlock *BB) const { 54 return BB->getName().str(); 60 ss << "BB#" << MBB->getNumber(); 62 if (const BasicBlock *BB = MBB->getBasicBlock()) 63 ss << " derived from LLVM BB " << BB->getName(); 68 void setBlockFreq(BlockT *BB, BlockFrequency Freq) { argument 69 Freqs[BB] = Freq; 70 DEBUG(dbgs() << "Frequency(" << getBlockName(BB) << ") = " << Freq << "\n"); 80 /// incBlockFreq - Increase BB bloc 82 incBlockFreq(BlockT *BB, BlockFrequency Freq) argument 90 divBlockFreq(BlockT *BB, BranchProbability Prob) argument 124 rpot_at(BlockT *BB) argument 137 isReachable(BlockT *BB) argument 155 getSingleBlockPred(BlockT *BB) argument 172 doBlock(BlockT *BB, BlockT *LoopHead, SmallPtrSet<BlockT *, 8> &BlocksInLoop) argument 228 BlockT *BB = *I; local 278 BlockT *BB = *I; local 285 BlockT *BB = *I; local 322 BlockT *BB = I++; local [all...] |
H A D | BranchProbabilityInfo.h | 76 BasicBlock *getHotSucc(BasicBlock *BB) const; 135 uint32_t getSumForBlock(const BasicBlock *BB) const; 137 bool calcUnreachableHeuristics(BasicBlock *BB); 138 bool calcMetadataWeights(BasicBlock *BB); 139 bool calcPointerHeuristics(BasicBlock *BB); 140 bool calcLoopBranchHeuristics(BasicBlock *BB); 141 bool calcZeroHeuristics(BasicBlock *BB); 142 bool calcFloatingPointHeuristics(BasicBlock *BB); 143 bool calcInvokeHeuristics(BasicBlock *BB);
|
H A D | LoopIterator.h | 84 bool hasPreorder(BasicBlock *BB) const { return PostNumbers.count(BB); } 87 bool hasPostorder(BasicBlock *BB) const { 88 DenseMap<BasicBlock*, unsigned>::const_iterator I = PostNumbers.find(BB); 93 unsigned getPostorder(BasicBlock *BB) const { 94 DenseMap<BasicBlock*, unsigned>::const_iterator I = PostNumbers.find(BB); 101 unsigned getRPO(BasicBlock *BB) const { 102 return 1 + PostBlocks.size() - getPostorder(BB); 118 void finishPostorder(BasicBlock *BB); 153 bool visitPreorder(BasicBlock *BB) { argument 162 finishPostorder(BasicBlock *BB) argument 175 finishPostorder(BasicBlock *BB) argument [all...] |
/freebsd-10.0-release/contrib/llvm/lib/Transforms/Utils/ |
H A D | InstructionNamer.cpp | 40 for (Function::iterator BB = F.begin(), E = F.end(); BB != E; ++BB) { 41 if (!BB->hasName()) 42 BB->setName("bb"); 44 for (BasicBlock::iterator I = BB->begin(), E = BB->end(); I != E; ++I)
|
H A D | BasicBlockUtils.cpp | 35 void llvm::DeleteDeadBlock(BasicBlock *BB) { argument 36 assert((pred_begin(BB) == pred_end(BB) || 38 BB->getSinglePredecessor() == BB) && "Block is not dead!"); 39 TerminatorInst *BBTerm = BB->getTerminator(); 44 BBTerm->getSuccessor(i)->removePredecessor(BB); 47 while (!BB->empty()) { 48 Instruction &I = BB->back(); 56 BB 67 FoldSingleEntryPHINodes(BasicBlock *BB, Pass *P) argument 97 DeleteDeadPHIs(BasicBlock *BB, const TargetLibraryInfo *TLI) argument 115 MergeBlockIntoPredecessor(BasicBlock *BB, Pass *P) argument 242 GetSuccessorNumber(BasicBlock *BB, BasicBlock *Succ) argument 256 SplitEdge(BasicBlock *BB, BasicBlock *Succ, Pass *P) argument 454 SplitBlockPredecessors(BasicBlock *BB, ArrayRef<BasicBlock*> Preds, const char *Suffix, Pass *P) argument 608 const BasicBlock *BB = &F.getEntryBlock(); local 652 FoldReturnIntoUncondBranch(ReturnInst *RI, BasicBlock *BB, BasicBlock *Pred) argument [all...] |
/freebsd-10.0-release/contrib/llvm/lib/Transforms/Instrumentation/ |
H A D | EdgeProfiling.cpp | 68 for (Function::iterator BB = F->begin(), E = F->end(); BB != E; ++BB) { 72 BlocksToInstrument.insert(BB); 73 NumEdges += BB->getTerminator()->getNumSuccessors(); 89 for (Function::iterator BB = F->begin(), E = F->end(); BB != E; ++BB) 90 if (BlocksToInstrument.count(BB)) { // Don't instrument inserted blocks 94 TerminatorInst *TI = BB [all...] |
/freebsd-10.0-release/contrib/llvm/lib/CodeGen/ |
H A D | MachineSSAUpdater.cpp | 62 bool MachineSSAUpdater::HasValueForBlock(MachineBasicBlock *BB) const { 63 return getAvailableVals(AV).count(BB); 68 void MachineSSAUpdater::AddAvailableValue(MachineBasicBlock *BB, unsigned V) { argument 69 getAvailableVals(AV)[BB] = V; 74 unsigned MachineSSAUpdater::GetValueAtEndOfBlock(MachineBasicBlock *BB) { argument 75 return GetValueAtEndOfBlockInternal(BB); 79 unsigned LookForIdenticalPHI(MachineBasicBlock *BB, argument 81 if (BB->empty()) 84 MachineBasicBlock::iterator I = BB->begin(); 91 while (I != BB 112 InsertNewDef(unsigned Opcode, MachineBasicBlock *BB, MachineBasicBlock::iterator I, const TargetRegisterClass *RC, MachineRegisterInfo *MRI, const TargetInstrInfo *TII) argument 140 GetValueInMiddleOfBlock(MachineBasicBlock *BB) argument 254 BlkSucc_begin(BlkT *BB) argument 255 BlkSucc_end(BlkT *BB) argument 284 FindPredecessorBlocks(MachineBasicBlock *BB, SmallVectorImpl<MachineBasicBlock*> *Preds) argument 293 GetUndefVal(MachineBasicBlock *BB, MachineSSAUpdater *Updater) argument 305 CreateEmptyPHI(MachineBasicBlock *BB, unsigned NumPreds, MachineSSAUpdater *Updater) argument 357 GetValueAtEndOfBlockInternal(MachineBasicBlock *BB) argument [all...] |
H A D | UnreachableBlockElim.cpp | 78 BasicBlock *BB = I; local 79 DeadBlocks.push_back(BB); 80 while (PHINode *PN = dyn_cast<PHINode>(BB->begin())) { 82 BB->getInstList().pop_front(); 84 for (succ_iterator SI = succ_begin(BB), E = succ_end(BB); SI != E; ++SI) 85 (*SI)->removePredecessor(BB); 86 BB->dropAllReferences(); 141 MachineBasicBlock *BB = I; local 144 if (!Reachable.count(BB)) { 177 MachineBasicBlock *BB = I; local [all...] |
H A D | IfConversion.cpp | 71 ICNotClassfied, // BB data valid, but not classified. 73 ICSimple, // BB is entry of an one split, no rejoin sub-CFG. 77 ICTriangle, // BB is entry of a triangle sub-CFG. 78 ICDiamond // BB is entry of a diamond sub-CFG. 88 /// IsDone - True if BB is not to be considered for ifcvt. 89 /// IsBeingAnalyzed - True if BB is currently being analyzed. 90 /// IsAnalyzed - True if BB has been analyzed (info is still valid). 91 /// IsEnqueued - True if BB has been enqueued to be ifcvt'ed. 93 /// HasFallThrough - True if BB may fallthrough to the following BB 117 MachineBasicBlock *BB; member in struct:__anon2157::IfConverter::BBInfo 209 MeetIfcvtSizeLimit(MachineBasicBlock &BB, unsigned Cycle, unsigned Extra, const BranchProbability &Prediction) const argument 424 findFalseBlock(MachineBasicBlock *BB, MachineBasicBlock *TrueBB) argument 450 getNextBlock(MachineBasicBlock *BB) argument 750 AnalyzeBlock(MachineBasicBlock *BB, std::vector<IfcvtToken*> &Tokens) argument 906 MachineBasicBlock *BB = I; local 917 canFallThroughTo(MachineBasicBlock *BB, MachineBasicBlock *ToBB) argument 935 InvalidatePreds(MachineBasicBlock *BB) argument 948 InsertUncondBranch(MachineBasicBlock *BB, MachineBasicBlock *ToBB, const TargetInstrInfo *TII) argument 968 InitPredRedefs(MachineBasicBlock *BB, SmallSet<unsigned,4> &Redefs, const TargetRegisterInfo *TRI) argument [all...] |
/freebsd-10.0-release/contrib/llvm/lib/Transforms/IPO/ |
H A D | PruneEH.cpp | 47 void DeleteBasicBlock(BasicBlock *BB); 103 for (Function::iterator BB = F->begin(), E = F->end(); BB != E; ++BB) { 104 if (CheckUnwind && isa<ResumeInst>(BB->getTerminator())) { 107 } else if (CheckReturn && isa<ReturnInst>(BB->getTerminator())) { 114 for (BasicBlock::iterator I = BB->begin(), E = BB->end(); I != E; ++I) 177 for (Function::iterator BB = F->begin(), E = F->end(); BB ! 237 DeleteBasicBlock(BasicBlock *BB) argument [all...] |
/freebsd-10.0-release/contrib/llvm/lib/Analysis/ |
H A D | CodeMetrics.cpp | 25 void CodeMetrics::analyzeBasicBlock(const BasicBlock *BB, argument 29 for (BasicBlock::const_iterator II = BB->begin(), E = BB->end(); 46 if (F == BB->getParent()) 78 if (isa<ReturnInst>(BB->getTerminator())) 92 notDuplicatable |= isa<IndirectBrInst>(BB->getTerminator()); 94 // Remember NumInsts for this BB. 95 NumBBInsts[BB] = NumInsts - NumInstsBeforeThisBB;
|
H A D | BranchProbabilityInfo.cpp | 101 static uint32_t getMaxWeightFor(BasicBlock *BB) { argument 102 return UINT32_MAX / BB->getTerminator()->getNumSuccessors(); 110 bool BranchProbabilityInfo::calcUnreachableHeuristics(BasicBlock *BB) { argument 111 TerminatorInst *TI = BB->getTerminator(); 114 PostDominatedByUnreachable.insert(BB); 121 for (succ_iterator I = succ_begin(BB), E = succ_end(BB); I != E; ++I) { 131 PostDominatedByUnreachable.insert(BB); 143 setEdgeWeight(BB, *I, UnreachableWeight); 153 setEdgeWeight(BB, * 160 calcMetadataWeights(BasicBlock *BB) argument 198 calcPointerHeuristics(BasicBlock *BB) argument 231 calcLoopBranchHeuristics(BasicBlock *BB) argument 285 calcZeroHeuristics(BasicBlock *BB) argument 345 calcFloatingPointHeuristics(BasicBlock *BB) argument 381 calcInvokeHeuristics(BasicBlock *BB) argument [all...] |
H A D | ProfileEstimatorPass.cpp | 69 virtual void recurseBasicBlock(BasicBlock *BB); 119 void ProfileEstimatorPass::recurseBasicBlock(BasicBlock *BB) { argument 122 if (BBToVisit.find(BB) == BBToVisit.end()) return; 125 bool BBisHeader = LI->isLoopHeader(BB); 126 Loop* BBLoop = LI->getLoopFor(BB); 131 for ( pred_iterator bbi = pred_begin(BB), bbe = pred_end(BB); 134 Edge edge = getEdge(*bbi,BB); 153 if (getExecutionCount(BB) != MissingValue) { 154 BBWeight = getExecutionCount(BB); 368 BasicBlock *BB = *BBI; local 402 const BasicBlock *BB = &(*FI); local [all...] |
H A D | ProfileInfoLoaderPass.cpp | 63 virtual void recurseBasicBlock(const BasicBlock *BB); 110 void LoaderPass::recurseBasicBlock(const BasicBlock *BB) { argument 113 if (BBisUnvisited.find(BB) == BBisUnvisited.end()) return; 114 BBisUnvisited.erase(BB); 115 if (!BB) return; 117 for (succ_const_iterator bbi = succ_begin(BB), bbe = succ_end(BB); 121 for (const_pred_iterator bbi = pred_begin(BB), bbe = pred_end(BB); 127 if (CalculateMissingEdge(BB, tocal [all...] |
H A D | ProfileInfo.cpp | 60 ProfileInfoT<Function,BasicBlock>::getExecutionCount(const BasicBlock *BB) { argument 62 BlockInformation.find(BB->getParent()); 64 BlockCounts::iterator I = J->second.find(BB); 71 const_pred_iterator PI = pred_begin(BB), PE = pred_end(BB); 75 Edge e = getEdge(0, BB); 85 double w = getEdgeWeight(getEdge(P, BB)); 98 succ_const_iterator SI = succ_begin(BB), SE = succ_end(BB); 102 Edge e = getEdge(BB, 168 setExecutionCount(const BasicBlock *BB, double w) argument 193 addExecutionCount(const BasicBlock *BB, double w) argument 202 removeBlock(const BasicBlock *BB) argument 240 const BasicBlock *BB = 0; local 294 const BasicBlock *BB = GetPath(newedge.second,oldedge.second,P,GetPathToExit | GetPathToDest); local 441 splitBlock(const BasicBlock *BB, const BasicBlock* NewBB, BasicBlock *const *Preds, unsigned NumPreds) argument 505 CalculateMissingEdge(const BasicBlock *BB, Edge &removed, bool assumeEmptySelf) argument 582 EstimateMissingEdges(const BasicBlock *BB) argument 675 const BasicBlock *BB = &(F->getEntryBlock()); local 728 const BasicBlock *BB = *FI; ++FI; local 746 const BasicBlock *BB = *FI; ++FI; local 774 const BasicBlock *BB = *FI; ++FI; local [all...] |
H A D | ProfileVerifierPass.cpp | 39 const BType *BB; member in struct:__anon2107::ProfileVerifierPassT::DetailedBlockInfo 58 void printDebugInfo(const BType *BB); 93 void ProfileVerifierPassT<FType, BType>::printDebugInfo(const BType *BB) { argument 95 if (BBisPrinted.find(BB) != BBisPrinted.end()) return; 97 double BBWeight = PI->getExecutionCount(BB); 102 for (const_pred_iterator bbi = pred_begin(BB), bbe = pred_end(BB); 105 typename ProfileInfoT<FType, BType>::Edge E = PI->getEdge(*bbi,BB); 117 for ( succ_const_iterator bbi = succ_begin(BB), bbe = succ_end(BB); 234 recurseBasicBlock(const BType *BB) argument [all...] |
/freebsd-10.0-release/contrib/llvm/lib/Target/Mips/ |
H A D | Mips16ISelLowering.h | 52 MachineBasicBlock *BB) const; 56 MachineBasicBlock *BB) const; 60 MachineBasicBlock *BB) const; 64 MachineBasicBlock *BB) const; 68 MachineInstr *MI, MachineBasicBlock *BB) const; 72 MachineInstr *MI, MachineBasicBlock *BB) const; 76 MachineInstr *MI, MachineBasicBlock *BB )const;
|
H A D | Mips16ISelLowering.cpp | 85 MachineBasicBlock *BB) const { 88 return MipsTargetLowering::EmitInstrWithCustomInserter(MI, BB); 90 return emitSel16(Mips::BeqzRxImm16, MI, BB); 92 return emitSel16(Mips::BnezRxImm16, MI, BB); 94 return emitSeliT16(Mips::BteqzX16, Mips::CmpiRxImmX16, MI, BB); 96 return emitSeliT16(Mips::BteqzX16, Mips::SltiRxImmX16, MI, BB); 98 return emitSeliT16(Mips::BteqzX16, Mips::SltiuRxImmX16, MI, BB); 100 return emitSeliT16(Mips::BtnezX16, Mips::CmpiRxImmX16, MI, BB); 102 return emitSeliT16(Mips::BtnezX16, Mips::SltiRxImmX16, MI, BB); 104 return emitSeliT16(Mips::BtnezX16, Mips::SltiuRxImmX16, MI, BB); [all...] |
/freebsd-10.0-release/contrib/llvm/lib/Transforms/Scalar/ |
H A D | BasicBlockPlacement.cpp | 74 void PlaceBlocks(BasicBlock *BB); 104 void BlockPlacement::PlaceBlocks(BasicBlock *BB) { argument 105 assert(!PlacedBlocks.count(BB) && "Already placed this block!"); 106 PlacedBlocks.insert(BB); 109 if (&*InsertPos != BB) { 113 Function::BasicBlockListType &Blocks = BB->getParent()->getBasicBlockList(); 114 Blocks.splice(InsertPos, Blocks, BB); 127 succ_iterator SI = succ_begin(BB), E = succ_end(BB);
|
H A D | SimplifyCFGPass.cpp | 73 BasicBlock *BB = I->getParent(); local 74 // Loop over all of the successors, removing BB's entry from any PHI 76 for (succ_iterator SI = succ_begin(BB), SE = succ_end(BB); SI != SE; ++SI) 77 (*SI)->removePredecessor(BB); 83 Intrinsic::getDeclaration(BB->getParent()->getParent(), Intrinsic::trap); 90 BasicBlock::iterator BBI = I, BBE = BB->end(); 94 BB->getInstList().erase(BBI++); 116 static bool markAliveBlocks(BasicBlock *BB, argument 120 Worklist.push_back(BB); 234 BasicBlock &BB = *BBI++; local [all...] |
H A D | JumpThreading.cpp | 116 bool ProcessBlock(BasicBlock *BB); 117 bool ThreadEdge(BasicBlock *BB, const SmallVectorImpl<BasicBlock*> &PredBBs, 119 bool DuplicateCondBranchOnPHIIntoPred(BasicBlock *BB, 122 bool ComputeValueKnownInPredecessors(Value *V, BasicBlock *BB, 125 bool ProcessThreadableEdges(Value *Cond, BasicBlock *BB, 160 BasicBlock *BB = I; local 162 while (ProcessBlock(BB)) 169 if (pred_begin(BB) == pred_end(BB) && 170 BB ! 220 getJumpThreadDuplicationCost(const BasicBlock *BB, unsigned Threshold) argument 325 ComputeValueKnownInPredecessors(Value *V, BasicBlock *BB, PredValueInfo &Result, ConstantPreference Preference) argument 608 GetBestDestForJumpOnUndef(BasicBlock *BB) argument 626 hasAddressTakenAndUsed(BasicBlock *BB) argument 638 ProcessBlock(BasicBlock *BB) argument 1004 FindMostPopularDest(BasicBlock *BB, const SmallVectorImpl<std::pair<BasicBlock*, BasicBlock*> > &PredToDestList) argument 1063 ProcessThreadableEdges(Value *Cond, BasicBlock *BB, ConstantPreference Preference) argument 1172 BasicBlock *BB = PN->getParent(); local 1202 BasicBlock *BB = BO->getParent(); local 1330 ThreadEdge(BasicBlock *BB, const SmallVectorImpl<BasicBlock*> &PredBBs, BasicBlock *SuccBB) argument 1370 << *BB << "\\n"); local 1479 DuplicateCondBranchOnPHIIntoPred(BasicBlock *BB, const SmallVectorImpl<BasicBlock *> &PredBBs) argument 1514 << DuplicationCost << " block is:" << *BB << "\\n"); local [all...] |
/freebsd-10.0-release/contrib/llvm/include/llvm/CodeGen/ |
H A D | MachineLoopInfo.h | 96 /// getLoopFor - Return the inner most loop that BB lives in. If a basic 99 inline MachineLoop *getLoopFor(const MachineBasicBlock *BB) const { 100 return LI.getLoopFor(BB); 105 inline const MachineLoop *operator[](const MachineBasicBlock *BB) const { 106 return LI.getLoopFor(BB); 111 inline unsigned getLoopDepth(const MachineBasicBlock *BB) const { 112 return LI.getLoopDepth(BB); 116 inline bool isLoopHeader(MachineBasicBlock *BB) const { 117 return LI.isLoopHeader(BB); 133 /// changeLoopFor - Change the top-level loop that contains BB t 136 changeLoopFor(MachineBasicBlock *BB, MachineLoop *L) argument 155 removeBlock(MachineBasicBlock *BB) argument [all...] |
/freebsd-10.0-release/contrib/llvm/lib/Target/R600/ |
H A D | AMDGPUConvertToISA.cpp | 52 for (MachineFunction::iterator BB = MF.begin(), BB_E = MF.end(); 53 BB != BB_E; ++BB) { 54 MachineBasicBlock &MBB = *BB;
|