Searched refs:BasicBlock (Results 51 - 75 of 398) sorted by relevance

1234567891011>>

/freebsd-11.0-release/contrib/llvm/include/llvm/IR/
H A DInstructions.h90 const Twine &Name, BasicBlock *InsertAtEnd);
93 AllocaInst(Type *Ty, const Twine &Name, BasicBlock *InsertAtEnd);
98 const Twine &Name, BasicBlock *InsertAtEnd);
188 LoadInst(Value *Ptr, const Twine &NameStr, BasicBlock *InsertAtEnd);
196 BasicBlock *InsertAtEnd);
204 unsigned Align, BasicBlock *InsertAtEnd);
217 BasicBlock *InsertAtEnd);
220 LoadInst(Value *Ptr, const char *NameStr, BasicBlock *InsertAtEnd);
229 BasicBlock *InsertAtEnd);
332 StoreInst(Value *Val, Value *Ptr, BasicBlock *InsertAtEn
[all...]
/freebsd-11.0-release/contrib/llvm/lib/Transforms/Utils/
H A DCloneFunction.cpp39 BasicBlock *llvm::CloneBasicBlock(const BasicBlock *BB,
43 BasicBlock *NewBB = BasicBlock::Create(BB->getContext(), "", F);
49 for (BasicBlock::const_iterator II = BB->begin(), IE = BB->end();
128 const BasicBlock &BB = *BI;
131 BasicBlock *CBB = CloneBasicBlock(&BB, VMap, NameSuffix, NewFunc, CodeInfo);
144 const_cast<BasicBlock*>(&BB));
156 cast<BasicBlock>(VMap[&OldFunc->front()])->getIterator(),
280 void CloneBlock(const BasicBlock *B
[all...]
H A DLoopSimplify.cpp80 static void placeSplitBlockCarefully(BasicBlock *NewBB,
81 SmallVectorImpl<BasicBlock *> &SplitPreds,
96 BasicBlock *FoundBB = nullptr;
117 BasicBlock *llvm::InsertPreheaderForLoop(Loop *L, DominatorTree *DT,
119 BasicBlock *Header = L->getHeader();
122 SmallVector<BasicBlock*, 8> OutsideBlocks;
125 BasicBlock *P = *PI;
138 BasicBlock *PreheaderBB;
158 static BasicBlock *rewriteLoopExitBlock(Loop *L, BasicBlock *Exi
[all...]
H A DCodeExtractor.cpp52 static bool isBlockValidForExtraction(const BasicBlock &BB) {
58 for (BasicBlock::const_iterator I = BB.begin(), E = BB.end(); I != E; ++I) {
72 static SetVector<BasicBlock *> buildExtractionBlockSet(IteratorT BBBegin,
74 SetVector<BasicBlock *> Result;
91 for (SetVector<BasicBlock *>::iterator I = std::next(Result.begin()),
105 static SetVector<BasicBlock *>
106 buildExtractionBlockSet(ArrayRef<BasicBlock *> BBs) {
111 static SetVector<BasicBlock *>
114 // Just a single BasicBlock.
115 return buildExtractionBlockSet(RN.getNodeAs<BasicBlock>());
[all...]
H A DSSAUpdater.cpp33 typedef DenseMap<BasicBlock*, Value*> AvailableValsTy;
54 bool SSAUpdater::HasValueForBlock(BasicBlock *BB) const {
58 void SSAUpdater::AddAvailableValue(BasicBlock *BB, Value *V) {
66 SmallDenseMap<BasicBlock*, Value*, 8> &ValueMapping) {
81 Value *SSAUpdater::GetValueAtEndOfBlock(BasicBlock *BB) {
86 Value *SSAUpdater::GetValueInMiddleOfBlock(BasicBlock *BB) {
94 SmallVector<std::pair<BasicBlock*, Value*>, 8> PredValues;
102 BasicBlock *PredBB = SomePhi->getIncomingBlock(i);
115 BasicBlock *PredBB = *PI;
139 SmallDenseMap<BasicBlock*, Valu
[all...]
/freebsd-11.0-release/contrib/llvm/lib/Transforms/Scalar/
H A DPartiallyInlineLibCalls.cpp45 BasicBlock &CurrBB, Function::iterator &BB);
70 for (BasicBlock::iterator II = CurrBB->begin(), IE = CurrBB->end();
106 BasicBlock &CurrBB,
131 BasicBlock *JoinBB = llvm::SplitBlock(&CurrBB, Call->getNextNode());
137 BasicBlock *LibCallBB = BasicBlock::Create(CurrBB.getContext(), "call.sqrt",
H A DLoopInstSimplify.cpp85 SmallVector<BasicBlock*, 8> ExitBlocks;
93 typedef PointerIntPair<BasicBlock*, 1> WorklistItem;
95 SmallPtrSet<BasicBlock*, 32> Visited;
109 BasicBlock *BB = Item.getPointer();
114 for (BasicBlock::iterator BI = BB->begin(), BE = BB->end(); BI != BE;) {
156 BasicBlock *SuccBB = *SI;
165 SmallVector<BasicBlock*, 8> SubLoopExitBlocks;
169 BasicBlock *ExitBB = SubLoopExitBlocks[i];
H A DSpeculativeExecution.cpp96 bool runOnBasicBlock(BasicBlock &B);
97 bool considerHoistingFromTo(BasicBlock &FromBlock, BasicBlock &ToBlock);
127 bool SpeculativeExecution::runOnBasicBlock(BasicBlock &B) {
134 BasicBlock &Succ0 = *BI->getSuccessor(0);
135 BasicBlock &Succ1 = *BI->getSuccessor(1);
194 bool SpeculativeExecution::considerHoistingFromTo(BasicBlock &FromBlock,
195 BasicBlock &ToBlock) {
H A DPlaceSafepoints.cpp63 #include "llvm/IR/BasicBlock.h"
215 static bool containsUnconditionalCallSafepoint(Loop *L, BasicBlock *Header,
216 BasicBlock *Pred,
230 BasicBlock *Current = Pred;
257 BasicBlock *Pred) {
283 std::set<BasicBlock *> &seen,
284 std::vector<BasicBlock *> &worklist) {
285 for (BasicBlock::iterator itr(start);
286 itr != start->getParent()->end() && itr != BasicBlock::iterator(end);
297 BasicBlock *B
[all...]
H A DLoopInterchange.cpp89 for (BasicBlock::iterator I = (*BB)->begin(), E = (*BB)->end(); I != E;
308 for (BasicBlock::iterator I = L->getHeader()->begin(); isa<PHINode>(I); ++I) {
351 bool containsUnsafeInstructionsInHeader(BasicBlock *BB);
353 bool containsUnsafeInstructionsInLatch(BasicBlock *BB);
394 BasicBlock *LoopNestExit,
414 void updateIncomingBlock(BasicBlock *CurrBlock, BasicBlock *OldPred,
415 BasicBlock *NewPred);
424 BasicBlock *LoopExit;
527 BasicBlock *OuterMostLoopLatc
[all...]
H A DReg2Mem.cpp21 #include "llvm/IR/BasicBlock.h"
50 const BasicBlock *BB = Inst->getParent();
75 BasicBlock *BBEntry = &F.getEntryBlock();
82 BasicBlock::iterator I = BBEntry->begin();
94 for (BasicBlock::iterator iib = ibb->begin(), iie = ibb->end();
113 for (BasicBlock::iterator iib = ibb->begin(), iie = ibb->end();
/freebsd-11.0-release/contrib/llvm/lib/Target/NVPTX/
H A DNVPTXLowerAggrCopies.cpp66 BasicBlock *OrigBB = ConvertedInst->getParent();
67 BasicBlock *NewBB =
69 BasicBlock *LoopBB = BasicBlock::Create(Context, "loadstoreloop", &F, NewBB);
136 BasicBlock *OrigBB = ConvertedInst->getParent();
155 BasicBlock *CopyBackwardsBB = ThenTerm->getParent();
157 BasicBlock *CopyForwardBB = ElseTerm->getParent();
159 BasicBlock *ExitBB = ConvertedInst->getParent();
169 BasicBlock *LoopBB =
170 BasicBlock
[all...]
/freebsd-11.0-release/contrib/llvm/lib/Transforms/ObjCARC/
H A DDependencyAnalysis.cpp225 BasicBlock *StartBB, Instruction *StartInst,
227 SmallPtrSetImpl<const BasicBlock *> &Visited,
229 BasicBlock::iterator StartPos = StartInst->getIterator();
231 SmallVector<std::pair<BasicBlock *, BasicBlock::iterator>, 4> Worklist;
234 std::pair<BasicBlock *, BasicBlock::iterator> Pair =
236 BasicBlock *LocalStartBB = Pair.first;
237 BasicBlock::iterator LocalStartPos = Pair.second;
238 BasicBlock
[all...]
H A DDependencyAnalysis.h29 class BasicBlock;
55 BasicBlock *StartBB, Instruction *StartInst,
57 SmallPtrSetImpl<const BasicBlock *> &Visited,
/freebsd-11.0-release/contrib/llvm/lib/Analysis/
H A DDominanceFrontier.cpp16 template class DominanceFrontierBase<BasicBlock>;
17 template class ForwardDominanceFrontierBase<BasicBlock>;
H A DIteratedDominanceFrontier.cpp21 void IDFCalculator::calculate(SmallVectorImpl<BasicBlock *> &PHIBlocks) {
37 for (BasicBlock *BB : *DefBlocks) {
63 BasicBlock *BB = Node->getBlock();
80 BasicBlock *SuccBB = SuccNode->getBlock();
H A DLazyValueInfo.cpp322 /// The entries are sorted by the BasicBlock* of the
326 typedef SmallDenseMap<AssertingVH<BasicBlock>, LVILatticeVal, 4>
335 typedef DenseMap<AssertingVH<BasicBlock>, SmallPtrSet<Value *, 4>>
341 DenseSet<AssertingVH<BasicBlock> > SeenBlocks;
346 std::stack<std::pair<BasicBlock*, Value*> > BlockValueStack;
349 DenseSet<std::pair<BasicBlock*, Value*> > BlockValueSet;
353 bool pushBlockValue(const std::pair<BasicBlock *, Value *> &BV) {
367 void insertResult(Value *Val, BasicBlock *BB, const LVILatticeVal &Result) {
378 LVILatticeVal getBlockValue(Value *Val, BasicBlock *BB);
379 bool getEdgeValue(Value *V, BasicBlock *
[all...]
/freebsd-11.0-release/contrib/llvm/lib/Transforms/IPO/
H A DCrossDSOCFI.cpp127 BasicBlock *BB = BasicBlock::Create(Ctx, "entry", F);
129 BasicBlock *TrapBB = BasicBlock::Create(Ctx, "trap", F);
137 BasicBlock *ExitBB = BasicBlock::Create(Ctx, "exit", F);
145 BasicBlock *TestBB = BasicBlock::Create(Ctx, "test", F);
H A DLoopExtractor.cpp115 SmallVector<BasicBlock*, 8> ExitBlocks;
129 SmallVector<BasicBlock*, 8> ExitBlocks;
177 std::vector<BasicBlock*> BlocksToNotExtract;
228 BasicBlock *Parent = II->getParent();
229 BasicBlock *LPad = II->getUnwindDest();
236 BasicBlock *BB = *PI;
246 SmallVector<BasicBlock*, 2> NewBBs;
252 std::set<BasicBlock*> TranslatedBlocksToNotExtract;
254 BasicBlock *BB = BlocksToNotExtract[i];
280 BasicBlock
[all...]
/freebsd-11.0-release/contrib/llvm/include/llvm/Analysis/
H A DLoopPass.h80 virtual void cloneBasicBlockAnalysis(BasicBlock *F, BasicBlock *T, Loop *L) {}
143 void cloneBasicBlockSimpleAnalysis(BasicBlock *From, BasicBlock *To, Loop *L);
H A DIntervalIterator.h14 // 1. A Function* object, composed of BasicBlock nodes.
46 // BasicBlock that is the header node. This is the opposite of
49 inline BasicBlock *getNodeHeader(BasicBlock *BB) { return BB; }
50 inline BasicBlock *getNodeHeader(Interval *I) { return I->getHeaderNode(); }
52 // getSourceGraphNode - Given a BasicBlock and the source graph, return the
53 // source graph node that corresponds to the BasicBlock. This is the opposite
56 inline BasicBlock *getSourceGraphNode(Function *, BasicBlock *BB) {
59 inline Interval *getSourceGraphNode(IntervalPartition *IP, BasicBlock *B
[all...]
/freebsd-11.0-release/contrib/llvm/include/llvm/Transforms/Utils/
H A DLocal.h28 class BasicBlock;
60 bool ConstantFoldTerminator(BasicBlock *BB, bool DeleteDeadConditions = false,
93 bool SimplifyInstructionsInBlock(BasicBlock *BB,
100 /// RemovePredecessorAndSimplify - Like BasicBlock::removePredecessor, this
111 void RemovePredecessorAndSimplify(BasicBlock *BB, BasicBlock *Pred);
118 void MergeBasicBlockIntoOnlyPred(BasicBlock *BB, DominatorTree *DT = nullptr);
125 bool TryToSimplifyUncondBranchFromEmptyBlock(BasicBlock *BB);
132 bool EliminateDuplicatePHINodes(BasicBlock *BB);
140 bool SimplifyCFG(BasicBlock *B
[all...]
H A DCloning.h36 class BasicBlock;
113 BasicBlock *CloneBasicBlock(const BasicBlock *BB, ValueToValueMapTy &VMap,
224 Loop *cloneLoopWithPreheader(BasicBlock *Before, BasicBlock *LoopDomBB,
228 SmallVectorImpl<BasicBlock *> &Blocks);
231 void remapInstructionsInBlocks(const SmallVectorImpl<BasicBlock *> &Blocks,
/freebsd-11.0-release/contrib/llvm/tools/clang/lib/CodeGen/
H A DCGCleanup.h24 class BasicBlock;
45 llvm::BasicBlock *CachedLandingPad;
46 llvm::BasicBlock *CachedEHDispatchBlock;
121 llvm::BasicBlock *getCachedLandingPad() const {
125 void setCachedLandingPad(llvm::BasicBlock *block) {
129 llvm::BasicBlock *getCachedEHDispatchBlock() const {
133 void setCachedEHDispatchBlock(llvm::BasicBlock *block) {
138 if (llvm::BasicBlock *block = getCachedEHDispatchBlock())
166 llvm::BasicBlock *Block;
197 void setCatchAllHandler(unsigned I, llvm::BasicBlock *Bloc
[all...]
/freebsd-11.0-release/contrib/llvm/tools/llvm-diff/
H A DDifferenceEngine.cpp122 DenseMap<BasicBlock*, BasicBlock*> Blocks;
126 unsigned getUnprocPredCount(BasicBlock *Block) const {
133 typedef std::pair<BasicBlock*, BasicBlock*> BlockPair;
156 bool tryUnify(BasicBlock *L, BasicBlock *R) {
157 BasicBlock *&Ref = Blocks[L];
192 void diff(BasicBlock *L, BasicBlock *
[all...]

Completed in 306 milliseconds

1234567891011>>