/external/llvm/lib/CodeGen/ |
D | LiveRangeEdit.cpp | 39 LiveInterval &LI = LIS.createEmptyInterval(VReg); in createEmptyIntervalFrom() local 40 return LI; in createEmptyIntervalFrom() 164 bool LiveRangeEdit::foldAsLoad(LiveInterval *LI, in foldAsLoad() argument 169 for (MachineOperand &MO : MRI.reg_nodbg_operands(LI->reg)) { in foldAsLoad() 206 if (UseMI->readsWritesVirtualRegister(LI->reg, &Ops).second) in foldAsLoad() 215 DefMI->addRegisterDead(LI->reg, nullptr); in foldAsLoad() 263 LiveInterval &LI = LIS.getInterval(Reg); in eliminateDeadDef() local 271 LI.Query(Idx).isKill())) in eliminateDeadDef() 272 ToShrink.insert(&LI); in eliminateDeadDef() 276 if (TheDelegate && LI.getVNInfoAt(Idx) != nullptr) in eliminateDeadDef() [all …]
|
D | AtomicExpandPass.cpp | 47 bool expandAtomicLoad(LoadInst *LI); 48 bool expandAtomicLoadToLL(LoadInst *LI); 49 bool expandAtomicLoadToCmpXchg(LoadInst *LI); 86 auto LI = dyn_cast<LoadInst>(I); in runOnFunction() local 90 assert((LI || SI || RMWI || CASI || isa<FenceInst>(I)) && in runOnFunction() 96 if (LI && isAtLeastAcquire(LI->getOrdering())) { in runOnFunction() 97 FenceOrdering = LI->getOrdering(); in runOnFunction() 98 LI->setOrdering(Monotonic); in runOnFunction() 129 if (LI && TLI->shouldExpandAtomicLoadInIR(LI)) { in runOnFunction() 130 MadeChange |= expandAtomicLoad(LI); in runOnFunction() [all …]
|
D | LiveRangeCalc.cpp | 53 void LiveRangeCalc::calculate(LiveInterval &LI, bool TrackSubRegs) { in calculate() argument 60 unsigned Reg = LI.reg; in calculate() 66 if (LI.hasSubRanges() || (SubReg != 0 && TrackSubRegs)) { in calculate() 72 if (!LI.hasSubRanges() && !LI.empty()) { in calculate() 74 LI.createSubRangeFrom(*Alloc, ClassMask, LI); in calculate() 77 for (LiveInterval::SubRange &S : LI.subranges()) { in calculate() 88 CommonRange = LI.createSubRangeFrom(*Alloc, Common, S); in calculate() 99 LiveInterval::SubRange *NewRange = LI.createSubRange(*Alloc, Mask); in calculate() 107 if (MO.isDef() && !LI.hasSubRanges()) in calculate() 108 createDeadDef(*Indexes, *Alloc, LI, MO); in calculate() [all …]
|
D | LiveIntervalAnalysis.cpp | 198 void LiveIntervals::computeVirtRegInterval(LiveInterval &LI) { in computeVirtRegInterval() argument 200 assert(LI.empty() && "Should only compute empty intervals."); in computeVirtRegInterval() 202 LRCalc->calculate(LI, MRI->shouldTrackSubRegLiveness(LI.reg)); in computeVirtRegInterval() 203 computeDeadValues(LI, nullptr); in computeVirtRegInterval() 457 bool LiveIntervals::computeDeadValues(LiveInterval &LI, in computeDeadValues() argument 460 for (auto VNI : LI.valnos) { in computeDeadValues() 464 LiveRange::iterator I = LI.FindSegmentContaining(Def); in computeDeadValues() 465 assert(I != LI.end() && "Missing segment for VNI"); in computeDeadValues() 469 if (MRI->shouldTrackSubRegLiveness(LI.reg)) { in computeDeadValues() 470 if ((I == LI.begin() || std::prev(I)->end < Def) && !VNI->isPHIDef()) { in computeDeadValues() [all …]
|
/external/llvm/include/llvm/CodeGen/ |
D | MachineLoopInfo.h | 74 LoopInfoBase<MachineBasicBlock, MachineLoop> LI; variable 87 LoopInfoBase<MachineBasicBlock, MachineLoop>& getBase() { return LI; } in getBase() 93 inline iterator begin() const { return LI.begin(); } in begin() 94 inline iterator end() const { return LI.end(); } in end() 95 bool empty() const { return LI.empty(); } in empty() 101 return LI.getLoopFor(BB); in getLoopFor() 107 return LI.getLoopFor(BB); 113 return LI.getLoopDepth(BB); in getLoopDepth() 118 return LI.isLoopHeader(BB); in isLoopHeader() 125 void releaseMemory() override { LI.releaseMemory(); } in releaseMemory() [all …]
|
/external/llvm/lib/Transforms/InstCombine/ |
D | InstCombineLoadStoreAlloca.cpp | 68 if (LoadInst *LI = dyn_cast<LoadInst>(I)) { in isOnlyCopiedFromConstantGlobal() local 70 if (!LI->isSimple()) return false; in isOnlyCopiedFromConstantGlobal() 317 static LoadInst *combineLoadToNewType(InstCombiner &IC, LoadInst &LI, Type *NewTy) { in combineLoadToNewType() argument 318 Value *Ptr = LI.getPointerOperand(); in combineLoadToNewType() 319 unsigned AS = LI.getPointerAddressSpace(); in combineLoadToNewType() 321 LI.getAllMetadata(MD); in combineLoadToNewType() 325 LI.getAlignment(), LI.getName()); in combineLoadToNewType() 445 static Instruction *combineLoadToOperationType(InstCombiner &IC, LoadInst &LI) { in combineLoadToOperationType() argument 448 if (!LI.isSimple()) in combineLoadToOperationType() 451 if (LI.use_empty()) in combineLoadToOperationType() [all …]
|
/external/llvm/tools/llvm-diff/ |
D | DifferenceEngine.cpp | 195 BasicBlock::iterator LI = L->begin(), LE = L->end(); in diff() local 199 assert(LI != LE && RI != R->end()); in diff() 200 Instruction *LeftI = &*LI, *RightI = &*RI; in diff() 213 ++LI, ++RI; in diff() 214 } while (LI != LE); // This is sufficient: we can't get equality of in diff() 219 for (LI = L->begin(), RI = R->begin(); LI != LE; ++LI, ++RI) in diff() 220 unify(&*LI, &*RI); in diff() 224 void runBlockDiff(BasicBlock::iterator LI, BasicBlock::iterator RI); 277 InvokeInst *LI = cast<InvokeInst>(L); in diff() local 279 if (diffCallSites(CallSite(LI), CallSite(RI), Complain)) in diff() [all …]
|
/external/llvm/lib/TableGen/ |
D | StringMatcher.cpp | 106 for (std::map<char, std::vector<const StringPair*> >::iterator LI = in EmitStringMatcherForChar() local 107 MatchesByLetter.begin(), E = MatchesByLetter.end(); LI != E; ++LI) { in EmitStringMatcherForChar() 109 OS << Indent << "case '" << LI->first << "':\t // " in EmitStringMatcherForChar() 110 << LI->second.size() << " string"; in EmitStringMatcherForChar() 111 if (LI->second.size() != 1) OS << 's'; in EmitStringMatcherForChar() 113 if (EmitStringMatcherForChar(LI->second, CharNo+1, IndentCount+1)) in EmitStringMatcherForChar() 139 for (std::map<unsigned, std::vector<const StringPair*> >::iterator LI = in Emit() local 140 MatchesByLength.begin(), E = MatchesByLength.end(); LI != E; ++LI) { in Emit() 141 OS.indent(Indent*2+2) << "case " << LI->first << ":\t // " in Emit() 142 << LI->second.size() in Emit() [all …]
|
/external/llvm/lib/Analysis/ |
D | CFG.cpp | 112 static const Loop *getOutermostLoop(const LoopInfo *LI, const BasicBlock *BB) { in getOutermostLoop() argument 113 const Loop *L = LI->getLoopFor(BB); in getOutermostLoop() 122 static bool loopContainsBoth(const LoopInfo *LI, in loopContainsBoth() argument 124 const Loop *L1 = getOutermostLoop(LI, BB1); in loopContainsBoth() 125 const Loop *L2 = getOutermostLoop(LI, BB2); in loopContainsBoth() 132 const LoopInfo *LI) { in isPotentiallyReachableInner() argument 150 if (LI && loopContainsBoth(LI, BB, StopBB)) in isPotentiallyReachableInner() 159 if (const Loop *Outer = LI ? getOutermostLoop(LI, BB) : nullptr) { in isPotentiallyReachableInner() 175 const DominatorTree *DT, const LoopInfo *LI) { in isPotentiallyReachable() argument 183 DT, LI); in isPotentiallyReachable() [all …]
|
D | MemoryDependenceAnalysis.cpp | 127 if (const LoadInst *LI = dyn_cast<LoadInst>(Inst)) { in GetLocation() local 128 if (LI->isUnordered()) { in GetLocation() 129 Loc = AA->getLocation(LI); in GetLocation() 132 if (LI->getOrdering() == Monotonic) { in GetLocation() 133 Loc = AA->getLocation(LI); in GetLocation() 266 int64_t &MemLocOffs, const LoadInst *LI) { in isLoadLoadClobberIfExtendedToFullWidth() argument 267 const DataLayout &DL = LI->getModule()->getDataLayout(); in isLoadLoadClobberIfExtendedToFullWidth() 274 MemLocBase, MemLocOffs, MemLoc.Size, LI); in isLoadLoadClobberIfExtendedToFullWidth() 287 const LoadInst *LI) { in getLoadLoadClobberFullWidthSize() argument 289 if (!isa<IntegerType>(LI->getType()) || !LI->isSimple()) return 0; in getLoadLoadClobberFullWidthSize() [all …]
|
D | LoopInfo.cpp | 422 LoopInfo *LI; member in __anonbc5cd12b0111::UnloopUpdater 438 Unloop(UL), LI(LInfo), DFS(UL), FoundIB(false) {} in UnloopUpdater() 457 LoopBlocksTraversal Traversal(DFS, LI); in updateBlockParents() 461 Loop *L = LI->getLoopFor(*POI); in updateBlockParents() 468 LI->changeLoopFor(*POI, NL); in updateBlockParents() 489 Loop *L = LI->getLoopFor(*POI); in updateBlockParents() 494 LI->changeLoopFor(*POI, NL); in updateBlockParents() 508 Loop *OuterParent = LI->getLoopFor(*BI); in removeBlocksFromAncestors() 535 LI->addTopLevelLoop(Subloop); in updateSubloopParents() 572 Loop *L = LI->getLoopFor(*I); in getNearestLoop() [all …]
|
D | IVUsers.cpp | 51 ScalarEvolution *SE, LoopInfo *LI) { in isInteresting() argument 59 SE->getSCEVAtScope(AR, LI->getLoopFor(I->getParent())) != AR); in isInteresting() 63 return isInteresting(AR->getStart(), I, L, SE, LI) && in isInteresting() 64 !isInteresting(AR->getStepRecurrence(*SE), I, L, SE, LI); in isInteresting() 72 if (isInteresting(*OI, I, L, SE, LI)) { in isInteresting() 87 const LoopInfo *LI, in isSimplifiedLoopNest() argument 93 Loop *DomLoop = LI->getLoopFor(DomBB); in isSimplifiedLoopNest() 145 if (!isInteresting(ISE, I, L, SE, LI)) in AddUsersImpl() 167 if (!isSimplifiedLoopNest(UseBB, DT, LI, SimpleLoopNests)) in AddUsersImpl() 177 if (LI->getLoopFor(User->getParent()) != L) { in AddUsersImpl() [all …]
|
/external/llvm/lib/Transforms/Scalar/ |
D | LoopDeletion.cpp | 115 for (Loop::block_iterator LI = L->block_begin(), LE = L->block_end(); in isLoopDead() local 116 LI != LE; ++LI) { in isLoopDead() 117 for (BasicBlock::iterator BI = (*LI)->begin(), BE = (*LI)->end(); in isLoopDead() 211 for (Loop::block_iterator LI = L->block_begin(), LE = L->block_end(); in runOnLoop() local 212 LI != LE; ++LI) { in runOnLoop() 215 ChildNodes.insert(ChildNodes.begin(), DT[*LI]->begin(), DT[*LI]->end()); in runOnLoop() 222 DT.eraseNode(*LI); in runOnLoop() 226 (*LI)->dropAllReferences(); in runOnLoop() 233 for (Loop::block_iterator LI = L->block_begin(), LE = L->block_end(); in runOnLoop() local 234 LI != LE; ++LI) in runOnLoop() [all …]
|
D | LICM.cpp | 74 static bool inSubLoop(BasicBlock *BB, Loop *CurLoop, LoopInfo *LI); 77 static bool sink(Instruction &I, LoopInfo *LI, DominatorTree *DT, 89 PHINode &PN, LoopInfo *LI); 130 LoopInfo *LI; // Current LoopInfo member 179 LI = &getAnalysis<LoopInfoWrapperPass>().getLoopInfo(); in runOnLoop() 216 if (LI->getLoopFor(BB) == L) // Ignore blocks in subloops. in runOnLoop() 235 Changed |= sinkRegion(DT->getNode(L->getHeader()), AA, LI, DT, TLI, CurLoop, in runOnLoop() 238 Changed |= hoistRegion(DT->getNode(L->getHeader()), AA, LI, DT, TLI, in runOnLoop() 252 PIC, LI, DT, CurLoop, in runOnLoop() 262 formLCSSARecursively(*L, *DT, LI, in runOnLoop() [all …]
|
D | SROA.cpp | 747 void visitLoadInst(LoadInst &LI) { in visitLoadInst() argument 748 assert((!LI.isSimple() || LI.getType()->isSingleValueType()) && in visitLoadInst() 752 return PI.setAborted(&LI); in visitLoadInst() 754 const DataLayout &DL = LI.getModule()->getDataLayout(); in visitLoadInst() 755 uint64_t Size = DL.getTypeStoreSize(LI.getType()); in visitLoadInst() 756 return handleLoadOrStore(LI.getType(), LI, Offset, Size, LI.isVolatile()); in visitLoadInst() 912 if (LoadInst *LI = dyn_cast<LoadInst>(I)) { in hasUnsafePHIOrSelectUse() local 913 Size = std::max(Size, DL.getTypeStoreSize(LI->getType())); in hasUnsafePHIOrSelectUse() 1122 if (LoadInst *LI = dyn_cast<LoadInst>(I)) in isInstInList() local 1123 Ptr = LI->getOperand(0); in isInstInList() [all …]
|
D | ScalarReplAggregates.cpp | 184 void RewriteLoadUserOfWholeAlloca(LoadInst *LI, AllocaInst *AI, 479 if (LoadInst *LI = dyn_cast<LoadInst>(UI)) { in CanConvertToScalar() local 481 if (!LI->isSimple()) in CanConvertToScalar() 484 if (LI->getType()->isX86_MMXTy()) in CanConvertToScalar() 487 MergeInTypeForLoadOrStore(LI->getType(), Offset); in CanConvertToScalar() 634 if (LoadInst *LI = dyn_cast<LoadInst>(User)) { in ConvertUsesToScalar() local 638 = ConvertScalar_ExtractValue(LoadedVal, LI->getType(), Offset, in ConvertUsesToScalar() 640 LI->replaceAllUsesWith(NewLoadVal); in ConvertUsesToScalar() 641 LI->eraseFromParent(); in ConvertUsesToScalar() 1088 if (LoadInst *LI = dyn_cast<LoadInst>(I)) in isInstInList() local [all …]
|
/external/llvm/lib/Transforms/Utils/ |
D | LCSSA.cpp | 64 PredIteratorCache &PredCache, LoopInfo *LI) { in processInstruction() argument 144 if (auto *OtherLoop = LI->getLoopFor(ExitBB)) in processInstruction() 180 Loop *OtherLoop = LI->getLoopFor(PHIBB); in processInstruction() 189 processInstruction(*OtherLoop, *I, DT, EBs, PredCache, LI); in processInstruction() 215 bool llvm::formLCSSA(Loop &L, DominatorTree &DT, LoopInfo *LI, in formLCSSA() argument 248 Changed |= processInstruction(L, *I, DT, ExitBlocks, PredCache, LI); in formLCSSA() 264 bool llvm::formLCSSARecursively(Loop &L, DominatorTree &DT, LoopInfo *LI, in formLCSSARecursively() argument 270 Changed |= formLCSSARecursively(**I, DT, LI, SE); in formLCSSARecursively() 272 Changed |= formLCSSA(L, DT, LI, SE); in formLCSSARecursively() 285 LoopInfo *LI; member [all …]
|
D | BreakCriticalEdges.cpp | 48 auto *LI = LIWP ? &LIWP->getLoopInfo() : nullptr; in runOnFunction() local 50 SplitAllCriticalEdges(F, CriticalEdgeSplittingOptions(DT, LI)); in runOnFunction() 202 auto *LI = Options.LI; in SplitCriticalEdge() local 203 if (!DT && !LI) in SplitCriticalEdge() 262 if (LI) { in SplitCriticalEdge() 263 if (Loop *TIL = LI->getLoopFor(TIBB)) { in SplitCriticalEdge() 266 if (Loop *DestLoop = LI->getLoopFor(DestBB)) { in SplitCriticalEdge() 269 DestLoop->addBasicBlockToLoop(NewBB, *LI); in SplitCriticalEdge() 272 TIL->addBasicBlockToLoop(NewBB, *LI); in SplitCriticalEdge() 275 DestLoop->addBasicBlockToLoop(NewBB, *LI); in SplitCriticalEdge() [all …]
|
D | PromoteMemoryToRegister.cpp | 68 if (const LoadInst *LI = dyn_cast<LoadInst>(U)) { in isAllocaPromotable() local 71 if (LI->isVolatile()) in isAllocaPromotable() 144 LoadInst *LI = cast<LoadInst>(User); in AnalyzeAlloca() local 147 UsingBlocks.push_back(LI->getParent()); in AnalyzeAlloca() 148 AllocaPointerVal = LI; in AnalyzeAlloca() 370 LoadInst *LI = cast<LoadInst>(UserInst); in rewriteSingleStoreAlloca() local 377 if (LI->getParent() == StoreBB) { in rewriteSingleStoreAlloca() 384 if (unsigned(StoreIndex) > LBI.getInstructionIndex(LI)) { in rewriteSingleStoreAlloca() 390 } else if (LI->getParent() != StoreBB && in rewriteSingleStoreAlloca() 391 !DT.dominates(StoreBB, LI->getParent())) { in rewriteSingleStoreAlloca() [all …]
|
D | LoopSimplify.cpp | 123 auto *LI = LIWP ? &LIWP->getLoopInfo() : nullptr; in InsertPreheaderForLoop() local 145 AA, DT, LI, PreserveLCSSA); in InsertPreheaderForLoop() 165 LoopInfo *LI, Pass *PP) { in rewriteLoopExitBlock() argument 183 LI, PreserveLCSSA); in rewriteLoopExitBlock() 257 LoopInfo *LI, ScalarEvolution *SE, Pass *PP, in separateNestedLoop() argument 295 AA, DT, LI, PreserveLCSSA); in separateNestedLoop() 308 LI->changeTopLevelLoop(L, NewOuter); in separateNestedLoop() 346 if ((*LI)[BB] == L) in separateNestedLoop() 347 LI->changeLoopFor(BB, NewOuter); in separateNestedLoop() 363 DominatorTree *DT, LoopInfo *LI) { in insertUniqueBackedgeBlock() argument [all …]
|
D | BasicBlockUtils.cpp | 111 LoopInfo *LI, AliasAnalysis *AA, in MergeBlockIntoPredecessor() argument 177 if (LI) in MergeBlockIntoPredecessor() 178 LI->removeBlock(BB); in MergeBlockIntoPredecessor() 235 LoopInfo *LI) { in SplitEdge() argument 240 if (SplitCriticalEdge(LatchTerm, SuccNum, CriticalEdgeSplittingOptions(DT, LI) in SplitEdge() 251 return SplitBlock(Succ, Succ->begin(), DT, LI); in SplitEdge() 258 return SplitBlock(BB, BB->getTerminator(), DT, LI); in SplitEdge() 281 DominatorTree *DT, LoopInfo *LI) { in SplitBlock() argument 289 if (LI) in SplitBlock() 290 if (Loop *L = LI->getLoopFor(Old)) in SplitBlock() [all …]
|
/external/llvm/include/llvm/Transforms/Utils/ |
D | BasicBlockUtils.h | 56 LoopInfo *LI = nullptr, 85 LoopInfo *LI; member 91 : AA(nullptr), DT(nullptr), LI(nullptr), MergeIdenticalEdges(false), in CriticalEdgeSplittingOptions() 96 LoopInfo *LI = nullptr) 97 : AA(AA), DT(DT), LI(LI), MergeIdenticalEdges(false), in AA() 102 CriticalEdgeSplittingOptions(DominatorTree *DT, LoopInfo *LI) in CriticalEdgeSplittingOptions() 103 : AA(nullptr), DT(DT), LI(LI), MergeIdenticalEdges(false), in CriticalEdgeSplittingOptions() 195 DominatorTree *DT = nullptr, LoopInfo *LI = nullptr); 203 DominatorTree *DT = nullptr, LoopInfo *LI = nullptr); 225 LoopInfo *LI = nullptr, [all …]
|
/external/tcpdump/tests/ |
D | print-A.out | 72 <LI> 73 Configuration files can be found in <TT>/etc/apache</TT>.</LI> 75 <LI> 77 HTML files should exist, is set to <TT>/var/www</TT>.</LI> 79 <LI> 81 Debian packages will place their scripts.</LI> 83 <LI> 86 <TT>/etc/logrotate.d/apache</TT>.</LI> 88 <LI> 91 if it exists (assuming that <TT>/var/www</TT> is your <TT>DocumentRoot</TT>).</LI> [all …]
|
D | print-AA.out | 72 <LI> 73 Configuration files can be found in <TT>/etc/apache</TT>.</LI> 75 <LI> 77 HTML files should exist, is set to <TT>/var/www</TT>.</LI> 79 <LI> 81 Debian packages will place their scripts.</LI> 83 <LI> 86 <TT>/etc/logrotate.d/apache</TT>.</LI> 88 <LI> 91 if it exists (assuming that <TT>/var/www</TT> is your <TT>DocumentRoot</TT>).</LI> [all …]
|
/external/llvm/tools/llvm-cov/ |
D | SourceCoverageView.cpp | 167 for (line_iterator LI(File, /*SkipBlanks=*/false); !LI.is_at_eof(); ++LI) { in render() local 173 else if (LI.line_number() < FirstLine) in render() 181 while (NextSegment != EndSegment && NextSegment->Line == LI.line_number()) in render() 197 renderLineNumberColumn(OS, LI.line_number()); in render() 201 if (NextESV != EndESV && NextESV->getLine() == LI.line_number() && in render() 206 renderLine(OS, *LI, LI.line_number(), WrappedSegment, LineSegments, in render() 221 for (; NextESV != EndESV && NextESV->getLine() == LI.line_number(); in render() 231 renderLine(OS, *LI, LI.line_number(), WrappedSegment, LineSegments, in render() 244 for (; NextISV != EndISV && NextISV->Line == LI.line_number(); ++NextISV) { in render()
|