/external/llvm/include/llvm/Analysis/ |
H A D | BranchProbabilityInfo.h | 57 BranchProbability getEdgeProbability(const BasicBlock *Src, 63 BranchProbability getEdgeProbability(const BasicBlock *Src, 64 const BasicBlock *Dst) const; 70 bool isEdgeHot(const BasicBlock *Src, const BasicBlock *Dst) const; 76 BasicBlock *getHotSucc(BasicBlock *BB) const; 83 raw_ostream &printEdgeProbability(raw_ostream &OS, const BasicBlock *Src, 84 const BasicBlock *Dst) const; 92 uint32_t getEdgeWeight(const BasicBlock *Sr [all...] |
H A D | RegionInfo.h | 48 /// and the iteration returns every BasicBlock. If the Flat mode is not 54 /// @brief A RegionNode represents a subregion or a BasicBlock that is part of a 64 /// BasicBlock RegionNode, then entry is just the basic block, that this 70 /// The node can hold either a Region or a BasicBlock. 71 /// Use one bit to save, if this RegionNode is a subregion or BasicBlock 73 PointerIntPair<BasicBlock*, 1, bool> entry; 83 /// @param Entry The entry BasicBlock of the RegionNode. If this 84 /// RegionNode represents a BasicBlock, this is the 85 /// BasicBlock itself. If it represents a subregion, this 86 /// is the entry BasicBlock o [all...] |
H A D | PostDominators.h | 26 DominatorTreeBase<BasicBlock>* DT; 30 DT = new DominatorTreeBase<BasicBlock>(true); 41 inline const std::vector<BasicBlock*> &getRoots() const { 49 inline DomTreeNode *operator[](BasicBlock *BB) const { 53 inline DomTreeNode *getNode(BasicBlock *BB) const { 61 inline bool dominates(const BasicBlock* A, const BasicBlock* B) const { 69 inline bool properlyDominates(BasicBlock* A, BasicBlock* B) const { 73 inline BasicBlock *findNearestCommonDominato [all...] |
H A D | LazyValueInfo.h | 53 BasicBlock *FromBB, BasicBlock *ToBB); 58 Constant *getConstant(Value *V, BasicBlock *BB); 62 Constant *getConstantOnEdge(Value *V, BasicBlock *FromBB, BasicBlock *ToBB); 66 void threadEdge(BasicBlock *PredBB, BasicBlock *OldSucc, BasicBlock *NewSucc); 69 void eraseBlock(BasicBlock *BB);
|
H A D | PHITransAddr.h | 57 /// BasicBlock to its predecessors requires PHI translation. 58 bool NeedsPHITranslationFromBlock(BasicBlock *BB) const { 76 bool PHITranslateValue(BasicBlock *CurBB, BasicBlock *PredBB, 86 Value *PHITranslateWithInsertion(BasicBlock *CurBB, BasicBlock *PredBB, 97 Value *PHITranslateSubExpr(Value *V, BasicBlock *CurBB, BasicBlock *PredBB, 105 Value *InsertPHITranslatedSubExpr(Value *InVal, BasicBlock *CurBB, 106 BasicBlock *PredB [all...] |
H A D | Loads.h | 17 #include "llvm/BasicBlock.h" 49 Value *FindAvailableLoadedValue(Value *Ptr, BasicBlock *ScanBB, 50 BasicBlock::iterator &ScanFrom,
|
H A D | PathProfileInfo.h | 17 #include "llvm/BasicBlock.h" 29 typedef std::vector<BasicBlock*> ProfilePathBlockVector; 30 typedef std::vector<BasicBlock*>::iterator ProfilePathBlockIterator; 41 ProfilePathEdge(BasicBlock* source, BasicBlock* target, 45 inline BasicBlock* getSource() { return _source; } 46 inline BasicBlock* getTarget() { return _target; } 49 BasicBlock* _source; 50 BasicBlock* _target; 68 BasicBlock* getFirstBlockInPat [all...] |
H A D | Trace.h | 25 class BasicBlock; 31 typedef std::vector<BasicBlock *> BasicBlockListType; 39 Trace(const std::vector<BasicBlock *> &vBB) : BasicBlocks (vBB) {} 44 BasicBlock *getEntryBasicBlock () const { return BasicBlocks[0]; } 48 BasicBlock *operator[](unsigned i) const { return BasicBlocks[i]; } 49 BasicBlock *getBlock(unsigned i) const { return BasicBlocks[i]; } 62 int getBlockIndex(const BasicBlock *X) const { 72 bool contains(const BasicBlock *X) const { 79 bool dominates(const BasicBlock *B1, const BasicBlock *B [all...] |
H A D | LoopIterator.h | 42 typedef std::vector<BasicBlock*>::const_iterator POIterator; 43 typedef std::vector<BasicBlock*>::const_reverse_iterator RPOIterator; 53 DenseMap<BasicBlock*, unsigned> PostNumbers; 54 std::vector<BasicBlock*> PostBlocks; 85 bool hasPreorder(BasicBlock *BB) const { return PostNumbers.count(BB); } 88 bool hasPostorder(BasicBlock *BB) const { 89 DenseMap<BasicBlock*, unsigned>::const_iterator I = PostNumbers.find(BB); 94 unsigned getPostorder(BasicBlock *BB) const { 95 DenseMap<BasicBlock*, unsigned>::const_iterator I = PostNumbers.find(BB); 102 unsigned getRPO(BasicBlock *B [all...] |
H A D | Interval.h | 28 class BasicBlock; 38 /// HeaderNode - The header BasicBlock, which dominates all BasicBlocks in this 41 BasicBlock *HeaderNode; 43 typedef std::vector<BasicBlock*>::iterator succ_iterator; 44 typedef std::vector<BasicBlock*>::iterator pred_iterator; 45 typedef std::vector<BasicBlock*>::iterator node_iterator; 47 inline Interval(BasicBlock *Header) : HeaderNode(Header) { 54 inline BasicBlock *getHeaderNode() const { return HeaderNode; } 58 std::vector<BasicBlock*> Nodes; 64 std::vector<BasicBlock*> Successor [all...] |
/external/llvm/include/llvm/Transforms/Utils/ |
H A D | BasicBlockUtils.h | 1 //===-- Transform/Utils/BasicBlockUtils.h - BasicBlock Utils ----*- C++ -*-===// 18 // FIXME: Move to this file: BasicBlock::removePredecessor, BB::splitBasicBlock 20 #include "llvm/BasicBlock.h" 34 void DeleteDeadBlock(BasicBlock *BB); 41 void FoldSingleEntryPHINodes(BasicBlock *BB, Pass *P = 0); 48 bool DeleteDeadPHIs(BasicBlock *BB, const TargetLibraryInfo *TLI = 0); 52 bool MergeBlockIntoPredecessor(BasicBlock *BB, Pass *P = 0); 57 void ReplaceInstWithValue(BasicBlock::InstListType &BIL, 58 BasicBlock::iterator &BI, Value *V); 64 void ReplaceInstWithInst(BasicBlock [all...] |
H A D | UnifyFunctionExitNodes.h | 26 BasicBlock *ReturnBlock, *UnwindBlock, *UnreachableBlock; 40 BasicBlock *getReturnBlock() const { return ReturnBlock; } 41 BasicBlock *getUnwindBlock() const { return UnwindBlock; } 42 BasicBlock *getUnreachableBlock() const { return UnreachableBlock; }
|
H A D | CodeExtractor.h | 22 class BasicBlock; 52 SetVector<BasicBlock *> Blocks; 61 CodeExtractor(BasicBlock *BB, bool AggregateArgs = false); 69 CodeExtractor(ArrayRef<BasicBlock *> BBs, DominatorTree *DT = 0, 108 void severSplitPHINodes(BasicBlock *&Header); 113 BasicBlock *header, 114 BasicBlock *newRootNode, BasicBlock *newHeader, 120 BasicBlock *newHeader,
|
/external/llvm/include/llvm/Support/ |
H A D | PredIteratorCache.h | 29 DenseMap<BasicBlock*, BasicBlock**> BlockToPredsMap; 30 DenseMap<BasicBlock*, unsigned> BlockToPredCountMap; 38 /// for (BasicBlock **PI = PredCache->GetPreds(BB); *PI; ++PI) 42 BasicBlock **GetPreds(BasicBlock *BB) { 43 BasicBlock **&Entry = BlockToPredsMap[BB]; 46 SmallVector<BasicBlock*, 32> PredCache(pred_begin(BB), pred_end(BB)); 51 Entry = Memory.Allocate<BasicBlock*>(PredCache.size()); 56 unsigned GetNumPreds(BasicBlock *B [all...] |
/external/llvm/include/llvm/ |
H A D | BasicBlock.h | 1 //===-- llvm/BasicBlock.h - Represent a basic block in the VM ---*- C++ -*-===// 10 // This file contains the declaration of the BasicBlock class. 31 : public SymbolTableListTraits<Instruction, BasicBlock> { 59 /// tables. The type of a BasicBlock is "Type::LabelTy" because the basic block 65 /// terminate the blocks. The BasicBlock class allows malformed basic blocks to 70 class BasicBlock : public Value, // Basic blocks are data objects also class in namespace:llvm 71 public ilist_node<BasicBlock> { 80 friend class SymbolTableListTraits<BasicBlock, Function>; 82 BasicBlock(const BasicBlock [all...] |
/external/llvm/lib/VMCore/ |
H A D | BasicBlock.cpp | 1 //===-- BasicBlock.cpp - Implement BasicBlock related methods -------------===// 10 // This file implements the BasicBlock class for the VMCore library. 14 #include "llvm/BasicBlock.h" 27 ValueSymbolTable *BasicBlock::getValueSymbolTable() { 33 LLVMContext &BasicBlock::getContext() const { 39 template class llvm::SymbolTableListTraits<Instruction, BasicBlock>; 42 BasicBlock::BasicBlock(LLVMContext &C, const Twine &Name, Function *NewParent, function in class:BasicBlock 43 BasicBlock *InsertBefor [all...] |
/external/llvm/include/llvm/Assembly/ |
H A D | AssemblyAnnotationWriter.h | 23 class BasicBlock; 41 virtual void emitBasicBlockStartAnnot(const BasicBlock *, 47 virtual void emitBasicBlockEndAnnot(const BasicBlock *,
|
/external/webkit/Source/JavaScriptCore/dfg/ |
H A D | DFGGraph.h | 43 struct BasicBlock { struct in namespace:JSC::DFG 44 BasicBlock(unsigned bytecodeBegin, NodeIndex begin, NodeIndex end) function in struct:JSC::DFG::BasicBlock 51 static inline BlockIndex getBytecodeBegin(BasicBlock* block) 92 Vector<BasicBlock> m_blocks; 96 BasicBlock* begin = m_blocks.begin(); 97 BasicBlock* block = binarySearch<BasicBlock, unsigned, BasicBlock::getBytecodeBegin>(begin, m_blocks.size(), bytecodeBegin);
|
/external/llvm/examples/BrainF/ |
H A D | BrainF.h | 73 void readloop(PHINode *phi, BasicBlock *oldbb, 74 BasicBlock *testbb, LLVMContext &Context); 86 BasicBlock *endbb; 87 BasicBlock *aberrorbb;
|
/external/llvm/tools/bugpoint-passes/ |
H A D | TestPasses.cpp | 15 #include "llvm/BasicBlock.h" 36 bool runOnBasicBlock(BasicBlock &BB) { 37 for (BasicBlock::iterator I = BB.begin(), E = BB.end(); I != E; ++I) 59 bool runOnBasicBlock(BasicBlock &BB) { 60 for (BasicBlock::iterator I = BB.begin(), E = BB.end(); I != E; ++I)
|
/external/llvm/lib/Transforms/Utils/ |
H A D | LoopSimplify.cpp | 100 BasicBlock *RewriteLoopExitBlock(Loop *L, BasicBlock *Exit); 101 BasicBlock *InsertPreheaderForLoop(Loop *L); 103 BasicBlock *Preheader); 104 BasicBlock *InsertUniqueBackedgeBlock(Loop *L, BasicBlock *Preheader); 105 void PlaceSplitBlockCarefully(BasicBlock *NewBB, 106 SmallVectorImpl<BasicBlock*> &SplitPreds, 154 SmallPtrSet<BasicBlock*, 4> BadPreds; 157 BasicBlock * [all...] |
H A D | BasicBlockUtils.cpp | 1 //===-- BasicBlockUtils.cpp - BasicBlock Utilities -------------------------==// 35 void llvm::DeleteDeadBlock(BasicBlock *BB) { 67 void llvm::FoldSingleEntryPHINodes(BasicBlock *BB, Pass *P) { 97 bool llvm::DeleteDeadPHIs(BasicBlock *BB, const TargetLibraryInfo *TLI) { 101 for (BasicBlock::iterator I = BB->begin(); 115 bool llvm::MergeBlockIntoPredecessor(BasicBlock *BB, Pass *P) { 120 BasicBlock *PredBB = BB->getUniquePredecessor(); 129 BasicBlock *OnlySucc = BB; 140 for (BasicBlock::iterator BI = BB->begin(), BE = BB->end(); BI != BE; ++BI) { 196 void llvm::ReplaceInstWithValue(BasicBlock 606 FindFunctionBackedges(const Function &F, SmallVectorImpl<std::pair<const BasicBlock*,const BasicBlock*> > &Result) argument [all...] |
H A D | LowerSwitch.cpp | 52 BasicBlock* BB; 54 CaseRange(Constant *low = 0, Constant *high = 0, BasicBlock *bb = 0) : 63 BasicBlock* switchConvert(CaseItr Begin, CaseItr End, Value* Val, 64 BasicBlock* OrigBlock, BasicBlock* Default); 65 BasicBlock* newLeafBlock(CaseRange& Leaf, Value* Val, 66 BasicBlock* OrigBlock, BasicBlock* Default); 86 BasicBlock *Cur = I++; // Advance over block so we don't traverse new blocks 118 BasicBlock* LowerSwitc [all...] |
H A D | LoopUnrollRuntime.cpp | 26 #include "llvm/BasicBlock.h" 57 BasicBlock *LastPrologBB, BasicBlock *PrologEnd, 58 BasicBlock *OrigPH, BasicBlock *NewPH, 60 BasicBlock *Latch = L->getLoopLatch(); 70 for (BasicBlock::iterator BBI = (*SBI)->begin(); 112 BasicBlock *Exit = L->getUniqueExitBlock(); 115 SmallVector<BasicBlock*, 4> Preds(pred_begin(Exit), pred_end(Exit)); 119 SmallVector<BasicBlock*, [all...] |
/external/llvm/lib/Transforms/Instrumentation/ |
H A D | ProfilingUtils.h | 21 class BasicBlock; 30 void IncrementCounterInBlock(BasicBlock *BB, unsigned CounterNum,
|