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

1 2 3 4 5 6 7 8

  /external/llvm/lib/CodeGen/
LiveRangeCalc.h 78 // LI - The live range that is live-in to this block. The algorithms can
80 LiveInterval *LI;
83 // 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.
94 LiveInBlock(LiveInterval *li, MachineDomTreeNode *node, SlotIndex kill)
95 : LI(li), DomNode(node), Kill(kill), Value(0) {}
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 i
    [all...]
LiveRangeEdit.cpp 40 LiveInterval &LI = LIS.getOrCreateInterval(VReg);
41 NewRegs.push_back(&LI);
42 return LI;
95 LiveInterval &li = LIS.getInterval(MO.getReg()); local
96 const VNInfo *OVNI = li.getVNInfoAt(OrigIdx);
106 if (OVNI != li.getVNInfoAt(UseIdx))
160 bool LiveRangeEdit::foldAsLoad(LiveInterval *LI,
165 for (MachineRegisterInfo::reg_nodbg_iterator I = MRI.reg_nodbg_begin(LI->reg),
204 if (UseMI->readsWritesVirtualRegister(LI->reg, &Ops).second)
213 DefMI->addRegisterDead(LI->reg, 0)
    [all...]
LiveIntervalAnalysis.cpp 128 if (LiveInterval *LI = RegUnitIntervals[i])
129 OS << PrintRegUnit(i, TRI) << " = " << *LI << '\n';
165 void LiveIntervals::computeVirtRegInterval(LiveInterval *LI) {
167 assert(LI->empty() && "Should only compute empty intervals.");
169 LRCalc->createDeadDefs(LI);
170 LRCalc->extendToUses(LI);
178 LiveInterval *LI = createInterval(Reg);
179 VirtRegIntervals[Reg] = LI;
180 computeVirtRegInterval(LI);
220 void LiveIntervals::computeRegUnitInterval(LiveInterval *LI) {
331 << *li << '\\n'); local
    [all...]
LiveRangeCalc.cpp 39 void LiveRangeCalc::createDeadDefs(LiveInterval *LI, unsigned Reg) {
43 // LI->createDeadDef() will deduplicate.
57 // Create the def in LI. This may find an existing def.
58 LI->createDeadDef(Idx, *Alloc);
63 void LiveRangeCalc::extendToUses(LiveInterval *LI, unsigned Reg) {
102 extend(LI, Idx, Reg);
128 Updater.setDest(I->LI);
135 void LiveRangeCalc::extend(LiveInterval *LI,
138 assert(LI && "Missing live range");
147 if (LI->extendInBlock(Indexes->getMBBStartIdx(KillMBB), Kill)
    [all...]
MachineVerifier.cpp 212 const LiveInterval &LI);
214 const LiveInterval &LI);
413 const LiveInterval &LI) {
416 if (TargetRegisterInfo::isVirtualRegister(LI.reg))
417 *OS << PrintReg(LI.reg, TRI);
419 *OS << PrintRegUnit(LI.reg, TRI);
420 *OS << ' ' << LI << '\n';
424 const LiveInterval &LI) {
427 if (TargetRegisterInfo::isVirtualRegister(LI.reg))
428 *OS << PrintReg(LI.reg, TRI)
    [all...]
StrongPHIElimination.cpp 147 LiveIntervals *LI;
182 MIIndexCompare(LiveIntervals *LiveIntervals) : LI(LiveIntervals) { }
185 return LI->getInstructionIndex(LHS) < LI->getInstructionIndex(RHS);
188 LiveIntervals *LI;
237 LI = &getAnalysis<LiveIntervals>();
327 LI->RemoveMachineInstrFromMaps(PHI);
344 LiveInterval &DestLI = LI->getInterval(DestReg);
345 LiveInterval &NewLI = LI->getInterval(NewReg);
353 NewVNI = NewLI.createValueCopy(DestLR->valno, LI->getVNInfoAllocator())
    [all...]
LiveInterval.cpp 668 // 1. [begin; WriteI) at the front of LI.
669 // 2. [ReadI; end) at the back of LI.
672 // - LI.begin() <= WriteI <= ReadI <= LI.end().
687 if (LI)
688 OS << "Clean " << PrintReg(LI->reg) << " updater: " << *LI << '\n';
693 assert(LI && "Can't have null LI in dirty updater.");
694 OS << PrintReg(LI->reg) << " updater with gap = " << (ReadI - WriteI
    [all...]
RegAllocBase.h 83 virtual void enqueue(LiveInterval *LI) = 0;
  /external/llvm/include/llvm/CodeGen/
MachineLoopInfo.h 73 LoopInfoBase<MachineBasicBlock, MachineLoop> LI;
86 LoopInfoBase<MachineBasicBlock, MachineLoop>& getBase() { return LI; }
92 inline iterator begin() const { return LI.begin(); }
93 inline iterator end() const { return LI.end(); }
94 bool empty() const { return LI.empty(); }
100 return LI.getLoopFor(BB);
106 return LI.getLoopFor(BB);
112 return LI.getLoopDepth(BB);
117 return LI.isLoopHeader(BB);
124 virtual void releaseMemory() { LI.releaseMemory();
    [all...]
LiveIntervalAnalysis.h 106 LiveInterval *LI = VirtRegIntervals[Reg];
107 assert(LI && "Interval does not exist for virtual register");
108 return *LI;
146 bool shrinkToUses(LiveInterval *li,
149 /// extendToIndices - Extend the live range of LI to reach all points in
151 /// existing defs in LI. PHI-defs are added as needed to maintain SSA form.
153 /// If a SlotIndex in Indices is the end index of a basic block, LI will be
157 void extendToIndices(LiveInterval *LI, ArrayRef<SlotIndex> Indices);
159 /// pruneValue - If an LI value is live at Kill, prune its live range by
161 /// EndPoints such that extendToIndices(LI, EndPoints) will reconstruct th
    [all...]
  /external/llvm/include/llvm/Transforms/Utils/
UnrollLoop.h 26 unsigned TripMultiple, LoopInfo* LI, LPPassManager* LPM);
28 bool UnrollRuntimeLoopProlog(Loop *L, unsigned Count, LoopInfo *LI,
  /external/llvm/lib/TableGen/
StringMatcher.cpp 106 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/tools/llvm-diff/
DifferenceEngine.cpp 195 BasicBlock::iterator LI = L->begin(), LE = L->end();
201 assert(LI != LE && RI != R->end());
202 Instruction *LeftI = &*LI, *RightI = &*RI;
215 ++LI, ++RI;
216 } while (LI != LE); // This is sufficient: we can't get equality of
221 for (LI = L->begin(), RI = R->begin(); LI != LE; ++LI, ++RI)
222 unify(&*LI, &*RI);
226 void runBlockDiff(BasicBlock::iterator LI, BasicBlock::iterator RI)
    [all...]
  /external/llvm/lib/Transforms/Scalar/
LoopDeletion.cpp 112 for (Loop::block_iterator LI = L->block_begin(), LE = L->block_end();
113 LI != LE; ++LI) {
114 for (BasicBlock::iterator BI = (*LI)->begin(), BE = (*LI)->end();
205 for (Loop::block_iterator LI = L->block_begin(), LE = L->block_end();
206 LI != LE; ++LI) {
209 ChildNodes.insert(ChildNodes.begin(), DT[*LI]->begin(), DT[*LI]->end())
    [all...]
LowerAtomic.cpp 98 static bool LowerLoadInst(LoadInst *LI) {
99 LI->setAtomic(NotAtomic);
124 else if (LoadInst *LI = dyn_cast<LoadInst>(Inst)) {
125 if (LI->isAtomic())
126 LowerLoadInst(LI);
ScalarReplAggregates.cpp 182 void RewriteLoadUserOfWholeAlloca(LoadInst *LI, AllocaInst *AI,
472 if (LoadInst *LI = dyn_cast<LoadInst>(User)) {
474 if (!LI->isSimple())
477 if (LI->getType()->isX86_MMXTy())
480 MergeInTypeForLoadOrStore(LI->getType(), Offset);
627 if (LoadInst *LI = dyn_cast<LoadInst>(User)) {
631 = ConvertScalar_ExtractValue(LoadedVal, LI->getType(), Offset,
633 LI->replaceAllUsesWith(NewLoadVal);
634 LI->eraseFromParent();
    [all...]
  /external/clang/www/analyzer/scripts/
menu.js 6 if (node.nodeName=="LI") {
  /external/llvm/lib/Transforms/InstCombine/
InstCombineLoadStoreAlloca.cpp 57 if (LoadInst *LI = dyn_cast<LoadInst>(U)) {
59 if (!LI->isSimple()) return false;
282 static Instruction *InstCombineLoadCast(InstCombiner &IC, LoadInst &LI,
284 User *CI = cast<User>(LI.getOperand(0));
306 Idxs[0] = Constant::getNullValue(Type::getInt32Ty(LI.getContext()));
318 (SrcPTy->isPointerTy() == LI.getType()->isPointerTy()) &&
326 IC.Builder->CreateLoad(CastOp, LI.isVolatile(), CI->getName());
327 NewLoad->setAlignment(LI.getAlignment());
328 NewLoad->setAtomic(LI.getOrdering(), LI.getSynchScope())
    [all...]
  /external/llvm/lib/Transforms/Utils/
PromoteMemoryToRegister.cpp 90 if (const LoadInst *LI = dyn_cast<LoadInst>(U)) {
93 if (LI->isVolatile())
337 LoadInst *LI = cast<LoadInst>(User);
340 UsingBlocks.push_back(LI->getParent());
341 AllocaPointerVal = LI;
714 if (LoadInst *LI = dyn_cast<LoadInst>(I)) {
715 if (LI->getOperand(0) != AI) continue;
859 LoadInst *LI = cast<LoadInst>(UserInst);
866 if (LI->getParent() == StoreBB) {
    [all...]
  /external/llvm/include/llvm/Analysis/
LoopInfo.h 239 void addBasicBlockToLoop(BlockT *NewBB, LoopInfoBase<BlockT, LoopT> &LI);
559 LoopInfoBase<BasicBlock, Loop> LI;
571 LoopInfoBase<BasicBlock, Loop>& getBase() { return LI; }
578 inline iterator begin() const { return LI.begin(); }
579 inline iterator end() const { return LI.end(); }
580 inline reverse_iterator rbegin() const { return LI.rbegin(); }
581 inline reverse_iterator rend() const { return LI.rend(); }
582 bool empty() const { return LI.empty(); }
588 return LI.getLoopFor(BB);
594 return LI.getLoopFor(BB)
    [all...]
  /external/llvm/lib/Analysis/
Loads.cpp 113 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;
IVUsers.cpp 50 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))
165 if (!isSimplifiedLoopNest(UseBB, DT, LI, SimpleLoopNests))
175 if (LI->getLoopFor(User->getParent()) != L)
    [all...]
LoopInfo.cpp 386 LoopInfo *LI;
402 Unloop(UL), LI(LInfo), DFS(UL), FoundIB(false) {}
421 LoopBlocksTraversal Traversal(DFS, LI);
425 Loop *L = LI->getLoopFor(*POI);
432 LI->changeLoopFor(*POI, NL);
453 Loop *L = LI->getLoopFor(*POI);
458 LI->changeLoopFor(*POI, NL);
472 Loop *OuterParent = LI->getLoopFor(*BI);
499 LI->addTopLevelLoop(Subloop);
536 Loop *L = LI->getLoopFor(*I)
    [all...]
LoopPass.cpp 64 LI = NULL;
71 LI->updateUnloop(L);
102 LI->addTopLevelLoop(L);
180 LI = &getAnalysis<LoopInfo>();
191 for (LoopInfo::reverse_iterator I = LI->rbegin(), E = LI->rend(); I != E; ++I)
244 TimeRegion PassTimer(getPassTimer(LI));
  /external/llvm/lib/Target/R600/
AMDGPUIndirectAddressing.cpp 147 MachineBasicBlock::livein_iterator LI = MBB.livein_begin();
148 while (LI != MBB.livein_end()) {
152 if (RegisterAddressMap.find(*LI) == RegisterAddressMap.end()) {
153 ++LI;
157 unsigned Address = RegisterAddressMap[*LI];
158 LiveAddressRegisterMap[Address] = *LI;
159 PhiRegisters.push_back(*LI);
163 for (MachineBasicBlock::livein_iterator LJ = llvm::next(LI),
179 LiveAddressRegisterMap[Address] = *LI;
180 MBB.removeLiveIn(*LI);
    [all...]

Completed in 329 milliseconds

1 2 3 4 5 6 7 8