Searched refs:BB (Results 1 - 25 of 322) sorted by relevance

1234567891011>>

/freebsd-10.0-release/contrib/llvm/include/llvm/Support/
H A DPredIteratorCache.h38 /// 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 DInstIterator.h37 _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 DBlockFrequencyImpl.h53 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 DBranchProbabilityInfo.h76 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 DLoopIterator.h84 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 DInstructionNamer.cpp40 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 DBasicBlockUtils.cpp35 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 DEdgeProfiling.cpp68 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 DMachineSSAUpdater.cpp62 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 DUnreachableBlockElim.cpp78 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 DIfConversion.cpp71 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 DPruneEH.cpp47 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 DCodeMetrics.cpp25 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 DBranchProbabilityInfo.cpp101 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 DProfileEstimatorPass.cpp69 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 DProfileInfoLoaderPass.cpp63 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 DProfileInfo.cpp60 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 DProfileVerifierPass.cpp39 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 DMips16ISelLowering.h52 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 DMips16ISelLowering.cpp85 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 DBasicBlockPlacement.cpp74 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 DSimplifyCFGPass.cpp73 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 DJumpThreading.cpp116 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 DMachineLoopInfo.h96 /// 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 DAMDGPUConvertToISA.cpp52 for (MachineFunction::iterator BB = MF.begin(), BB_E = MF.end();
53 BB != BB_E; ++BB) {
54 MachineBasicBlock &MBB = *BB;

Completed in 272 milliseconds

1234567891011>>