Searched refs:LI (Results 1 - 25 of 204) sorted by relevance

123456789

/external/llvm/include/llvm/CodeGen/
H A DMachineLoopInfo.h74 LoopInfoBase<MachineBasicBlock, MachineLoop> LI; member in class:llvm::MachineLoopInfo
87 LoopInfoBase<MachineBasicBlock, MachineLoop>& getBase() { return LI; }
93 inline iterator begin() const { return LI.begin(); }
94 inline iterator end() const { return LI.end(); }
95 bool empty() const { return LI.empty(); }
101 return LI.getLoopFor(BB);
107 return LI.getLoopFor(BB);
113 return LI.getLoopDepth(BB);
118 return LI.isLoopHeader(BB);
125 void releaseMemory() override { LI
[all...]
H A DLivePhysRegs.h116 for (MachineBasicBlock::livein_iterator LI = MBB->livein_begin(),
117 LE = MBB->livein_end(); LI != LE; ++LI)
118 addReg(*LI);
/external/llvm/include/llvm/Transforms/Utils/
H A DUnrollLoop.h27 unsigned TripMultiple, LoopInfo *LI, Pass *PP,
30 bool UnrollRuntimeLoopProlog(Loop *L, unsigned Count, LoopInfo *LI,
/external/llvm/lib/TableGen/
H A DStringMatcher.cpp106 for (std::map<char, std::vector<const StringPair*> >::iterator LI =
107 MatchesByLetter.begin(), E = MatchesByLetter.end(); LI != E; ++LI) {
109 OS << Indent << "case '" << LI->first << "':\t // "
110 << LI->second.size() << " string";
111 if (LI->second.size() != 1) OS << 's';
113 if (EmitStringMatcherForChar(LI->second, CharNo+1, IndentCount+1))
139 for (std::map<unsigned, std::vector<const StringPair*> >::iterator LI =
140 MatchesByLength.begin(), E = MatchesByLength.end(); LI != E; ++LI) {
[all...]
/external/llvm/lib/CodeGen/
H A DLiveRangeCalc.h83 // Cleared when the final value has been determined and LI has been updated.
88 // determined, the range from the block start to Kill will be added to LI.
104 /// Assuming that LI is live-in to KillMBB and killed at Kill, find the set
108 /// to LI, and the function returns true.
110 /// If multiple values can reach Kill, the blocks that need LI to be live in
155 /// extend - Extend the live range of LI to reach Kill.
157 /// The existing values in LI must be live so they jointly dominate Kill. If
165 /// createDeadDefs - Create a dead def in LI for every def operand of Reg.
170 /// createDeadDefs - Create a dead def in LI for every def of LI
171 createDeadDefs(LiveInterval &LI) argument
182 extendToUses(LiveInterval &LI) argument
[all...]
H A DLiveRangeEdit.cpp39 LiveInterval &LI = LIS.createEmptyInterval(VReg); local
40 return LI;
166 bool LiveRangeEdit::foldAsLoad(LiveInterval *LI, argument
171 for (MachineOperand &MO : MRI.reg_nodbg_operands(LI->reg)) {
208 if (UseMI->readsWritesVirtualRegister(LI->reg, &Ops).second)
217 DefMI->addRegisterDead(LI->reg, nullptr);
272 LiveInterval &LI = LIS.getInterval(Reg); local
280 LI.Query(Idx).isKill()))
281 ToShrink.insert(&LI);
285 if (VNInfo *VNI = LI
344 LiveInterval *LI = ToShrink.back(); local
375 DEBUG(dbgs() << NumComp << " components: " << *LI << '\\n'); local
412 LiveInterval &LI = LIS.getInterval(get(I)); local
[all...]
H A DLiveIntervalAnalysis.cpp183 void LiveIntervals::computeVirtRegInterval(LiveInterval &LI) { argument
185 assert(LI.empty() && "Should only compute empty intervals.");
187 LRCalc->createDeadDefs(LI);
188 LRCalc->extendToUses(LI);
189 computeDeadValues(&LI, LI, nullptr, nullptr);
465 void LiveIntervals::pruneValue(LiveInterval *LI, SlotIndex Kill, argument
467 LiveQueryResult LRQ = LI->Query(Kill);
478 LI->removeSegment(Kill, LRQ.endPoint());
484 LI
537 LiveInterval *LI = &getInterval(Reg); local
617 hasPHIKill(const LiveInterval &LI, const VNInfo *VNI) const argument
663 checkRegMaskInterference(LiveInterval &LI, BitVector &UsableRegs) argument
769 LiveInterval &LI = LIS.getInterval(Reg); local
1105 LiveInterval &LI = getInterval(Reg); local
[all...]
/external/llvm/tools/llvm-diff/
H A DDifferenceEngine.cpp195 BasicBlock::iterator LI = L->begin(), LE = L->end(); local
199 assert(LI != LE && RI != R->end());
200 Instruction *LeftI = &*LI, *RightI = &*RI;
213 ++LI, ++RI;
214 } while (LI != LE); // This is sufficient: we can't get equality of
219 for (LI = L->begin(), RI = R->begin(); LI != LE; ++LI, ++RI)
220 unify(&*LI, &*RI);
224 void runBlockDiff(BasicBlock::iterator LI, BasicBloc
277 InvokeInst *LI = cast<InvokeInst>(L); local
289 BranchInst *LI = cast<BranchInst>(L); local
307 SwitchInst *LI = cast<SwitchInst>(L); local
545 BasicBlock::iterator LI = LStart, RI = RStart; local
[all...]
/external/llvm/lib/Analysis/
H A DCFG.cpp112 static const Loop *getOutermostLoop(const LoopInfo *LI, const BasicBlock *BB) { argument
113 const Loop *L = LI->getLoopFor(BB);
122 static bool loopContainsBoth(const LoopInfo *LI, argument
124 const Loop *L1 = getOutermostLoop(LI, BB1);
125 const Loop *L2 = getOutermostLoop(LI, BB2);
132 const LoopInfo *LI) {
150 if (LI && loopContainsBoth(LI, BB, StopBB))
159 if (const Loop *Outer = LI ? getOutermostLoop(LI, B
129 isPotentiallyReachableInner(SmallVectorImpl<BasicBlock *> &Worklist, BasicBlock *StopBB, const DominatorTree *DT, const LoopInfo *LI) argument
174 isPotentiallyReachable(const BasicBlock *A, const BasicBlock *B, const DominatorTree *DT, const LoopInfo *LI) argument
186 isPotentiallyReachable(const Instruction *A, const Instruction *B, const DominatorTree *DT, const LoopInfo *LI) argument
[all...]
H A DLoads.cpp113 if (LoadInst *LI = dyn_cast<LoadInst>(BBI)) {
114 if (AreEquivalentAddressValues(LI->getOperand(0), V)) return true;
170 if (LoadInst *LI = dyn_cast<LoadInst>(Inst))
171 if (AreEquivalentAddressValues(LI->getOperand(0), Ptr)) {
172 if (TBAATag) *TBAATag = LI->getMetadata(LLVMContext::MD_tbaa);
173 return LI;
H A DIVUsers.cpp50 ScalarEvolution *SE, LoopInfo *LI) {
58 SE->getSCEVAtScope(AR, LI->getLoopFor(I->getParent())) != AR);
62 return isInteresting(AR->getStart(), I, L, SE, LI) &&
63 !isInteresting(AR->getStepRecurrence(*SE), I, L, SE, LI);
71 if (isInteresting(*OI, I, L, SE, LI)) {
86 const LoopInfo *LI,
92 Loop *DomLoop = LI->getLoopFor(DomBB);
142 if (!isInteresting(ISE, I, L, SE, LI))
164 if (!isSimplifiedLoopNest(UseBB, DT, LI, SimpleLoopNests))
174 if (LI
49 isInteresting(const SCEV *S, const Instruction *I, const Loop *L, ScalarEvolution *SE, LoopInfo *LI) argument
85 isSimplifiedLoopNest(BasicBlock *BB, const DominatorTree *DT, const LoopInfo *LI, SmallPtrSet<Loop*,16> &SimpleLoopNests) argument
[all...]
H A DLoopInfo.cpp423 LoopInfo *LI; member in class:__anon25690::UnloopUpdater
439 Unloop(UL), LI(LInfo), DFS(UL), FoundIB(false) {}
458 LoopBlocksTraversal Traversal(DFS, LI);
462 Loop *L = LI->getLoopFor(*POI);
469 LI->changeLoopFor(*POI, NL);
490 Loop *L = LI->getLoopFor(*POI);
495 LI->changeLoopFor(*POI, NL);
509 Loop *OuterParent = LI->getLoopFor(*BI);
536 LI->addTopLevelLoop(Subloop);
573 Loop *L = LI
720 perform(LoopInfo *LI) argument
[all...]
/external/llvm/lib/Transforms/Scalar/
H A DLoopDeletion.cpp115 for (Loop::block_iterator LI = L->block_begin(), LE = L->block_end();
116 LI != LE; ++LI) {
117 for (BasicBlock::iterator BI = (*LI)->begin(), BE = (*LI)->end();
211 for (Loop::block_iterator LI = L->block_begin(), LE = L->block_end();
212 LI != LE; ++LI) {
215 ChildNodes.insert(ChildNodes.begin(), DT[*LI]->begin(), DT[*LI]
[all...]
H A DLoadCombine.cpp92 PointerOffsetPair LoadCombine::getPointerOffsetPair(LoadInst &LI) { argument
94 POP.Pointer = LI.getPointerOperand();
241 LoadInst *LI = dyn_cast<LoadInst>(&I); local
242 if (!LI)
245 if (!LI->isSimple() || !LI->getType()->isIntegerTy())
247 auto POP = getPointerOffsetPair(*LI);
250 LoadMap[POP.Pointer].push_back(LoadPOPPair(LI, POP, Index++));
H A DLowerAtomic.cpp102 static bool LowerLoadInst(LoadInst *LI) { argument
103 LI->setAtomic(NotAtomic);
130 else if (LoadInst *LI = dyn_cast<LoadInst>(Inst)) {
131 if (LI->isAtomic())
132 LowerLoadInst(LI); variable
H A DScalarReplAggregates.cpp183 void RewriteLoadUserOfWholeAlloca(LoadInst *LI, AllocaInst *AI,
474 if (LoadInst *LI = dyn_cast<LoadInst>(UI)) {
476 if (!LI->isSimple())
479 if (LI->getType()->isX86_MMXTy())
482 MergeInTypeForLoadOrStore(LI->getType(), Offset);
629 if (LoadInst *LI = dyn_cast<LoadInst>(User)) {
633 = ConvertScalar_ExtractValue(LoadedVal, LI->getType(), Offset,
635 LI->replaceAllUsesWith(NewLoadVal);
636 LI->eraseFromParent();
1090 if (LoadInst *LI
1149 LoadInst *LI = dyn_cast<LoadInst>(U); local
1189 LoadInst *LI = dyn_cast<LoadInst>(U); local
1328 LoadInst *LI = cast<LoadInst>(SI->user_back()); local
1375 LoadInst *LI = cast<LoadInst>(PN->user_back()); local
2443 RewriteLoadUserOfWholeAlloca(LoadInst *LI, AllocaInst *AI, SmallVectorImpl<AllocaInst *> &NewElts) argument
2450 DEBUG(dbgs() << "PROMOTING LOAD OF WHOLE ALLOCA: " << *AI << '\\n' << *LI local
[all...]
/external/llvm/lib/Transforms/Utils/
H A DLCSSA.cpp236 for (Loop::iterator LI = L.begin(), LE = L.end(); LI != LE; ++LI)
237 Changed |= formLCSSARecursively(**LI, DT, SE);
252 LoopInfo *LI; member in struct:__anon26352::LCSSA
288 LI = &getAnalysis<LoopInfo>();
293 for (LoopInfo::iterator I = LI->begin(), E = LI->end(); I != E; ++I)
301 for (Loop::iterator LI = L.begin(), LE = L.end(); LI !
[all...]
H A DBreakCriticalEdges.cpp216 LoopInfo *LI = P->getAnalysisIfAvailable<LoopInfo>(); local
219 if (!DT && !LI)
278 if (LI) {
279 if (Loop *TIL = LI->getLoopFor(TIBB)) {
281 // either, and thus LI doesn't need to be updated.
282 if (Loop *DestLoop = LI->getLoopFor(DestBB)) {
285 DestLoop->addBasicBlockToLoop(NewBB, LI->getBase());
288 TIL->addBasicBlockToLoop(NewBB, LI->getBase());
291 DestLoop->addBasicBlockToLoop(NewBB, LI->getBase());
300 P->addBasicBlockToLoop(NewBB, LI
[all...]
H A DPromoteMemoryToRegister.cpp67 if (const LoadInst *LI = dyn_cast<LoadInst>(U)) {
70 if (LI->isVolatile())
143 LoadInst *LI = cast<LoadInst>(User); local
146 UsingBlocks.push_back(LI->getParent());
147 AllocaPointerVal = LI;
365 LoadInst *LI = cast<LoadInst>(UserInst); local
372 if (LI->getParent() == StoreBB) {
379 if (unsigned(StoreIndex) > LBI.getInstructionIndex(LI)) {
385 } else if (LI->getParent() != StoreBB &&
386 !DT.dominates(StoreBB, LI
467 LoadInst *LI = dyn_cast<LoadInst>(*UI++); local
[all...]
/external/llvm/include/llvm/Analysis/
H A DCFG.h61 /// Using DT or LI allows us to answer more quickly. LI reduces the cost of
65 /// on branchy code but not loops, and LI is most useful on code with loops but
69 const LoopInfo *LI = nullptr);
79 const LoopInfo *LI = nullptr);
H A DLoopInfo.h256 void addBasicBlockToLoop(BlockT *NewBB, LoopInfoBase<BlockT, LoopT> &LI);
630 LoopInfoBase<BasicBlock, Loop> LI; member in class:llvm::LoopInfo
642 LoopInfoBase<BasicBlock, Loop>& getBase() { return LI; }
649 inline iterator begin() const { return LI.begin(); }
650 inline iterator end() const { return LI.end(); }
651 inline reverse_iterator rbegin() const { return LI.rbegin(); }
652 inline reverse_iterator rend() const { return LI.rend(); }
653 bool empty() const { return LI.empty(); }
659 return LI.getLoopFor(BB);
665 return LI
[all...]
/external/llvm/lib/CodeGen/AsmPrinter/
H A DErlangGCPrinter.cpp112 for (GCFunctionInfo::live_iterator LI = MD.live_begin(PI),
114 LI != LE; ++LI) {
117 AP.EmitInt16(LI->StackOffset / IntPtrSize);
/external/llvm/lib/Target/R600/
H A DSIFixSGPRLiveRanges.cpp99 LiveInterval &LI = LIS->getInterval(Def.getReg()); local
100 for (unsigned i = 0, e = LI.size() - 1; i != e; ++i) {
101 LiveRange::Segment &Seg = LI.segments[i];
102 LiveRange::Segment &Next = LI.segments[i + 1];
/external/llvm/lib/Transforms/InstCombine/
H A DInstCombineLoadStoreAlloca.cpp66 if (LoadInst *LI = dyn_cast<LoadInst>(I)) {
68 if (!LI->isSimple()) return false;
295 static Instruction *InstCombineLoadCast(InstCombiner &IC, LoadInst &LI, argument
297 User *CI = cast<User>(LI.getOperand(0));
334 LI.getType()->isPtrOrPtrVectorTy()) &&
342 IC.Builder->CreateLoad(CastOp, LI.isVolatile(), CI->getName());
343 NewLoad->setAlignment(LI.getAlignment());
344 NewLoad->setAtomic(LI.getOrdering(), LI.getSynchScope());
347 PointerType *NewTy = dyn_cast<PointerType>(LI
360 visitLoadInst(LoadInst &LI) argument
[all...]
/external/llvm/lib/LineEditor/
H A DLineEditor.cpp141 const LineInfo *LI = ::el_line(EL); local
143 StringRef(LI->buffer, LI->lastchar - LI->buffer),
144 LI->cursor - LI->buffer);
180 << StringRef(LI->buffer, LI->lastchar - LI->buffer);
184 Data->PrevCount = LI
[all...]

Completed in 2872 milliseconds

123456789