HomeSort by relevance Sort by last modified time
    Searched refs:BasicBlock (Results 1 - 25 of 367) sorted by null

1 2 3 4 5 6 7 8 91011>>

  /external/llvm/include/llvm/Analysis/
BranchProbabilityInfo.h 36 typedef std::pair<const BasicBlock *, const BasicBlock *> Edge;
41 uint32_t getSumForBlock(const BasicBlock *BB) const;
56 uint32_t getEdgeWeight(const BasicBlock *Src, const BasicBlock *Dst) const;
59 void setEdgeWeight(const BasicBlock *Src, const BasicBlock *Dst,
63 bool isEdgeHot(const BasicBlock *Src, const BasicBlock *Dst) const;
66 BasicBlock *getHotSucc(BasicBlock *BB) const
    [all...]
LazyValueInfo.h 51 BasicBlock *FromBB, BasicBlock *ToBB);
56 Constant *getConstant(Value *V, BasicBlock *BB);
60 Constant *getConstantOnEdge(Value *V, BasicBlock *FromBB, BasicBlock *ToBB);
64 void threadEdge(BasicBlock *PredBB, BasicBlock *OldSucc, BasicBlock *NewSucc);
67 void eraseBlock(BasicBlock *BB);
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 of the subregion
    [all...]
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* getFirstBlockInPath() const
    [all...]
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 *findNearestCommonDominator(BasicBlock *A, BasicBlock *B)
    [all...]
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 *BB) const
    [all...]
PHITransAddr.h 53 /// BasicBlock to its predecessors requires PHI translation.
54 bool NeedsPHITranslationFromBlock(BasicBlock *BB) const {
72 bool PHITranslateValue(BasicBlock *CurBB, BasicBlock *PredBB,
82 Value *PHITranslateWithInsertion(BasicBlock *CurBB, BasicBlock *PredBB,
93 Value *PHITranslateSubExpr(Value *V, BasicBlock *CurBB, BasicBlock *PredBB,
101 Value *InsertPHITranslatedSubExpr(Value *InVal, BasicBlock *CurBB,
102 BasicBlock *PredBB, const DominatorTree &DT
    [all...]
Loads.h 17 #include "llvm/BasicBlock.h"
44 Value *FindAvailableLoadedValue(Value *Ptr, BasicBlock *ScanBB,
45 BasicBlock::iterator &ScanFrom,
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 *B2) const
    [all...]
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*> Successors
    [all...]
  /external/llvm/include/llvm/Transforms/Utils/
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"
33 void DeleteDeadBlock(BasicBlock *BB);
40 void FoldSingleEntryPHINodes(BasicBlock *BB, Pass *P = 0);
47 bool DeleteDeadPHIs(BasicBlock *BB);
51 bool MergeBlockIntoPredecessor(BasicBlock *BB, Pass *P = 0);
56 void ReplaceInstWithValue(BasicBlock::InstListType &BIL,
57 BasicBlock::iterator &BI, Value *V);
63 void ReplaceInstWithInst(BasicBlock::InstListType &BIL
    [all...]
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; }
FunctionUtils.h 21 class BasicBlock;
30 ArrayRef<BasicBlock*> code,
41 Function* ExtractBasicBlock(ArrayRef<BasicBlock*> BBs,
Local.h 21 class BasicBlock;
49 bool ConstantFoldTerminator(BasicBlock *BB, bool DeleteDeadConditions = false);
79 bool SimplifyInstructionsInBlock(BasicBlock *BB, const TargetData *TD = 0);
85 /// RemovePredecessorAndSimplify - Like BasicBlock::removePredecessor, this
96 void RemovePredecessorAndSimplify(BasicBlock *BB, BasicBlock *Pred,
105 void MergeBasicBlockIntoOnlyPred(BasicBlock *BB, Pass *P = 0);
113 bool TryToSimplifyUncondBranchFromEmptyBlock(BasicBlock *BB);
120 bool EliminateDuplicatePHINodes(BasicBlock *BB);
128 bool SimplifyCFG(BasicBlock *BB, const TargetData *TD = 0)
    [all...]
  /external/llvm/include/llvm/Support/
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 *BB)
    [all...]
CFG.h 11 // BasicBlock graphs to be treated as proper graphs for generic algorithms.
25 // BasicBlock pred_iterator definition
76 typedef PredIterator<BasicBlock, Value::use_iterator> pred_iterator;
77 typedef PredIterator<const BasicBlock,
80 inline pred_iterator pred_begin(BasicBlock *BB) { return pred_iterator(BB); }
81 inline const_pred_iterator pred_begin(const BasicBlock *BB) {
84 inline pred_iterator pred_end(BasicBlock *BB) { return pred_iterator(BB, true);}
85 inline const_pred_iterator pred_end(const BasicBlock *BB) {
92 // BasicBlock succ_iterator definition
216 typedef SuccIterator<TerminatorInst*, BasicBlock> succ_iterator
    [all...]
  /external/llvm/include/llvm/
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
71 public ilist_node<BasicBlock> {
80 friend class SymbolTableListTraits<BasicBlock, Function>;
82 BasicBlock(const BasicBlock &); // Do not implemen
    [all...]
  /external/llvm/lib/VMCore/
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,
43 BasicBlock *InsertBefore
    [all...]
  /external/llvm/include/llvm/Assembly/
AssemblyAnnotationWriter.h 23 class BasicBlock;
41 virtual void emitBasicBlockStartAnnot(const BasicBlock *BB,
47 virtual void emitBasicBlockEndAnnot(const BasicBlock *BB,
  /external/llvm/lib/Transforms/Instrumentation/
ProfilingUtils.h 21 class BasicBlock;
30 void IncrementCounterInBlock(BasicBlock *BB, unsigned CounterNum,
  /external/webkit/Source/JavaScriptCore/dfg/
DFGGraph.h 43 struct BasicBlock {
44 BasicBlock(unsigned bytecodeBegin, NodeIndex begin, NodeIndex end)
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/lib/Transforms/Utils/
UnifyFunctionExitNodes.cpp 19 #include "llvm/BasicBlock.h"
43 // BasicBlock, and converting all returns to unconditional branches to this
52 std::vector<BasicBlock*> ReturningBlocks;
53 std::vector<BasicBlock*> UnwindingBlocks;
54 std::vector<BasicBlock*> UnreachableBlocks;
69 UnwindBlock = BasicBlock::Create(F.getContext(), "UnifiedUnwindBlock", &F);
72 for (std::vector<BasicBlock*>::iterator I = UnwindingBlocks.begin(),
74 BasicBlock *BB = *I;
86 UnreachableBlock = BasicBlock::Create(F.getContext(),
90 for (std::vector<BasicBlock*>::iterator I = UnreachableBlocks.begin()
    [all...]
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) {
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::InstListType &BIL
    [all...]
  /external/llvm/lib/Analysis/
BranchProbabilityInfo.cpp 39 typedef std::pair<const BasicBlock *, const BasicBlock *> Edge;
87 static bool isReturningBlock(BasicBlock *BB) {
88 SmallPtrSet<BasicBlock *, 8> Visited;
113 uint32_t getMaxWeightFor(BasicBlock *BB) const {
123 bool calcMetadataWeights(BasicBlock *BB);
126 bool calcReturnHeuristics(BasicBlock *BB);
129 bool calcPointerHeuristics(BasicBlock *BB);
132 bool calcLoopBranchHeuristics(BasicBlock *BB);
135 bool calcZeroHeuristics(BasicBlock *BB)
    [all...]
  /external/llvm/examples/BrainF/
BrainF.h 73 void readloop(PHINode *phi, BasicBlock *oldbb,
74 BasicBlock *testbb, LLVMContext &Context);
86 BasicBlock *endbb;
87 BasicBlock *aberrorbb;

Completed in 553 milliseconds

1 2 3 4 5 6 7 8 91011>>