/freebsd-current/contrib/llvm-project/llvm/include/llvm/CodeGen/ |
H A D | LiveIntervalCalc.h | 29 /// Extend the live range of @p LR to reach all uses of Reg. 31 /// If @p LR is a main range, or if @p LI is null, then all uses must be 32 /// jointly dominated by the definitions from @p LR. If @p LR is a subrange 34 /// all uses must be jointly dominated by the definitions from @p LR 35 /// together with definitions of other lanes where @p LR becomes undefined 37 /// If @p LR is a main range, the @p LaneMask should be set to ~0, i.e. 39 void extendToUses(LiveRange &LR, Register Reg, LaneBitmask LaneMask, 48 void createDeadDefs(LiveRange &LR, Register Reg); 50 /// Extend the live range of @p LR t 54 extendToUses(LiveRange &LR, MCRegister PhysReg) argument [all...] |
H A D | LiveRangeCalc.h | 75 /// By convention, EntryInfoMap[&LR] = { Defined, Undefined }. 103 LiveRange &LR; member in struct:llvm::LiveRangeCalc::LiveInBlock 117 LiveInBlock(LiveRange &LR, MachineDomTreeNode *node, SlotIndex kill) argument 118 : LR(LR), DomNode(node), Kill(kill) {} 128 /// in @p LR. Return true if none of the defs reach the entry to @p MBB. 129 bool isDefOnEntry(LiveRange &LR, ArrayRef<SlotIndex> Undefs, 137 /// all paths from the def to @p UseMBB are added to @p LR, and the function 140 /// If multiple values can reach @p UseMBB, the blocks that need @p LR to be 143 /// The array @p Undef provides the locations where the range @p LR become 243 addLiveInBlock(LiveRange &LR, MachineDomTreeNode *DomNode, SlotIndex Kill = SlotIndex()) argument [all...] |
H A D | LiveIntervals.h | 177 /// Extend the live range \p LR to reach all points in \p Indices. The 179 /// of the existing defs in \p LR and points in \p Undefs. 183 /// If a SlotIndex in \p Indices is the end index of a basic block, \p LR 189 void extendToIndices(LiveRange &LR, ArrayRef<SlotIndex> Indices, 192 void extendToIndices(LiveRange &LR, ArrayRef<SlotIndex> Indices) { argument 193 extendToIndices(LR, Indices, /*Undefs=*/{}); 196 /// If \p LR has a live value at \p Kill, prune its live range by removing 203 void pruneValue(LiveRange &LR, SlotIndex Kill, 246 bool isLiveInToMBB(const LiveRange &LR, argument 248 return LR 251 isLiveOutOfMBB(const LiveRange &LR, const MachineBasicBlock *mbb) const argument 395 LiveRange *LR = RegUnitRanges[Unit]; local [all...] |
H A D | LiveIntervalUnion.h | 114 const LiveRange *LR = nullptr; member in class:llvm::LiveIntervalUnion::Query 115 LiveRange::const_iterator LRI; ///< current position in LR 132 Query(const LiveRange &LR, const LiveIntervalUnion &LIU) argument 133 : LiveUnion(&LIU), LR(&LR) {} 140 LR = &NewLR; 150 if (UserTag == NewUserTag && LR == &NewLR && LiveUnion == &NewLiveUnion &&
|
H A D | LivePhysRegs.h | 175 inline raw_ostream &operator<<(raw_ostream &OS, const LivePhysRegs& LR) { argument 176 LR.print(OS);
|
/freebsd-current/contrib/llvm-project/llvm/lib/CodeGen/ |
H A D | LiveRangeUtils.h | 21 /// corresponding segments of a primary live range \p LR to a list of newly 23 /// LR to 0 meaning it should stay or to 1..N meaning it should go to a specific 26 static void DistributeRange(LiveRangeT &LR, LiveRangeT *SplitLRs[], argument 29 typename LiveRangeT::iterator J = LR.begin(), E = LR.end(); 40 LR.segments.erase(J, E); 43 unsigned j = 0, e = LR.getNumValNums(); 47 VNInfo *VNI = LR.getValNumInfo(i); 53 LR.valnos[j++] = VNI; 56 LR [all...] |
H A D | LiveRangeCalc.cpp | 81 Updater.setDest(&I.LR); 87 void LiveRangeCalc::extend(LiveRange &LR, SlotIndex Use, unsigned PhysReg, argument 97 auto EP = LR.extendInBlock(Undefs, Indexes->getMBBStartIdx(UseMBB), Use); 105 if (findReachingDefs(LR, *UseMBB, Use, PhysReg, Undefs)) 122 bool LiveRangeCalc::isDefOnEntry(LiveRange &LR, ArrayRef<SlotIndex> Undefs, argument 156 // If LR has a segment S that starts at the next block, i.e. [End, ...), 159 LiveRange::iterator UB = upper_bound(LR, End.getPrevSlot()); 160 if (UB != LR.begin()) { 167 if (LR.isUndefIn(Undefs, Seg.end, End)) 175 if (UndefOnEntry[N] || LR 191 findReachingDefs(LiveRange &LR, MachineBasicBlock &UseMBB, SlotIndex Use, unsigned PhysReg, ArrayRef<SlotIndex> Undefs) argument 403 LiveRange &LR = I.LR; local [all...] |
H A D | LiveInterval.cpp | 67 LiveRange *LR; member in class:__anon1885::CalcLiveRangeUtilBase 70 CalcLiveRangeUtilBase(LiveRange *LR) : LR(LR) {} argument 94 VNInfo *VNI = ForVNI ? ForVNI : LR->getNextValue(Def, *VNInfoAllocator); 115 VNInfo *VNI = ForVNI ? ForVNI : LR->getNextValue(Def, *VNInfoAllocator); 142 return std::make_pair(nullptr, LR->isUndefIn(Undefs, StartIdx, BeforeUse)); 145 return std::make_pair(nullptr, LR->isUndefIn(Undefs, StartIdx, BeforeUse)); 147 if (LR->isUndefIn(Undefs, I->end, BeforeUse)) 288 CalcLiveRangeUtilVector(LiveRange *LR) argument 314 CalcLiveRangeUtilSet(LiveRange *LR) argument [all...] |
H A D | LiveIntervals.cpp | 112 for (LiveRange *LR : RegUnitRanges) 113 delete LR; 153 if (LiveRange *LR = RegUnitRanges[Unit]) 154 OS << printRegUnit(Unit, TRI) << ' ' << *LR << '\n'; 271 void LiveIntervals::computeRegUnitRange(LiveRange &LR, unsigned Unit) { argument 285 LICalc->createDeadDefs(LR, Reg); 296 // Now extend LR to reach all uses. 302 LICalc->extendToUses(LR, Reg); 309 LR.flushSegmentSet(); 333 LiveRange *LR local 353 createSegmentsForValues(LiveRange &LR, iterator_range<LiveInterval::vni_iterator> VNIs) argument 615 extendToIndices(LiveRange &LR, ArrayRef<SlotIndex> Indices, ArrayRef<SlotIndex> Undefs) argument 624 pruneValue(LiveRange &LR, SlotIndex Kill, SmallVectorImpl<SlotIndex> *EndPoints) argument 1064 updateRange(LiveRange &LR, Register Reg, LaneBitmask LaneMask) argument 1088 handleMoveDown(LiveRange &LR) argument 1261 handleMoveUp(LiveRange &LR, Register Reg, LaneBitmask LaneMask) argument 1553 repairOldRegInRange(const MachineBasicBlock::iterator Begin, const MachineBasicBlock::iterator End, const SlotIndex EndIdx, LiveRange &LR, const Register Reg, LaneBitmask LaneMask) argument [all...] |
H A D | LiveRegMatrix.cpp | 178 LiveIntervalUnion::Query &LiveRegMatrix::query(const LiveRange &LR, argument 181 Q.init(UserTag, LR, Matrix[RegUnit]); 201 [&](MCRegister Unit, const LiveRange &LR) { 202 return query(LR, Unit).checkInterference(); 215 LiveRange LR; local 216 LR.addSegment(Seg); 220 // LR is stack-allocated. LiveRegMatrix caches queries by a key that 224 // the cached query - the LR address seen the second time may well be the 233 Q.reset(UserTag, LR, Matrix[Unit]);
|
H A D | LiveIntervalUnion.cpp | 140 if (LR->empty() || LiveUnion->empty()) { 145 // In most cases, the union will start before LR. 146 LRI = LR->begin(); 151 LiveRange::const_iterator LREnd = LR->end(); 154 assert(LRI != LREnd && "Reached end of LR"); 178 LRI = LR->advanceTo(LRI, LiveUnionI.start());
|
H A D | LiveIntervalCalc.cpp | 33 LiveRange &LR, const MachineOperand &MO) { 38 // Create the def in LR. This may find an existing def. 39 LR.createDeadDef(DefIdx, Alloc); 123 void LiveIntervalCalc::createDeadDefs(LiveRange &LR, Register Reg) { argument 130 // LR.createDeadDef() will deduplicate. 132 createDeadDef(*Indexes, *Alloc, LR, MO); 135 void LiveIntervalCalc::extendToUses(LiveRange &LR, Register Reg, argument 193 extend(LR, UseIdx, Reg, Undefs); 32 createDeadDef(SlotIndexes &Indexes, VNInfo::Allocator &Alloc, LiveRange &LR, const MachineOperand &MO) argument
|
H A D | PHIElimination.cpp | 411 for (auto LR : ToUpdate) { 412 auto DestSegment = LR->find(MBBStartIndex); 413 assert(DestSegment != LR->end() && 416 if (LR->endIndex().isDead()) { 420 VNInfo *OrigDestVNI = LR->getVNInfoAt(DestSegment->start); 422 LR->removeSegment(DestSegment->start, DestSegment->start.getDeadSlot()); 423 LR->createDeadDef(NewStart, LIS->getVNInfoAllocator()); 424 LR->removeValNo(OrigDestVNI); 432 VNInfo *VNI = LR->getVNInfoAt(DestSegment->start); 434 LR [all...] |
/freebsd-current/contrib/llvm-project/llvm/lib/ExecutionEngine/Orc/ |
H A D | EPCGenericDylibManager.cpp | 49 static size_t size(const ExecutorProcessControl::LookupRequest &LR) { argument 50 return MemberSerialization::size(ExecutorAddr(LR.Handle), LR.Symbols); 54 const ExecutorProcessControl::LookupRequest &LR) { 55 return MemberSerialization::serialize(OB, ExecutorAddr(LR.Handle), 56 LR.Symbols); 53 serialize(SPSOutputBuffer &OB, const ExecutorProcessControl::LookupRequest &LR) argument
|
H A D | LookupAndRecordAddrs.cpp | 63 ExecutorProcessControl::LookupRequest LR(H, Symbols); 64 auto Result = EPC.lookupSymbols(LR);
|
/freebsd-current/contrib/llvm-project/llvm/lib/DebugInfo/GSYM/ |
H A D | LookupResult.cpp | 60 raw_ostream &llvm::gsym::operator<<(raw_ostream &OS, const LookupResult &LR) { argument 61 OS << HEX64(LR.LookupAddr) << ": "; 62 auto NumLocations = LR.Locations.size(); 69 OS << LR.Locations[I];
|
H A D | FunctionInfo.cpp | 184 LookupResult LR; local 185 LR.LookupAddr = Addr; 187 LR.FuncRange = {FuncAddr, FuncAddr + Data.getU32(&Offset)}; 198 if (LR.FuncRange.size() > 0 && !LR.FuncRange.contains(Addr)) 206 LR.FuncName = GR.getString(NameOffset); 250 SrcLoc.Name = LR.FuncName; 252 LR.Locations.push_back(SrcLoc); 253 return LR; 263 SrcLoc.Name = LR [all...] |
/freebsd-current/contrib/llvm-project/clang/include/clang/Sema/ |
H A D | RISCVIntrinsicManager.h | 35 virtual bool CreateIntrinsicIfFound(LookupResult &LR, IdentifierInfo *II,
|
/freebsd-current/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/ |
H A D | PointerSubChecker.cpp | 45 const MemRegion *LR = LV.getAsRegion(); local 48 if (!(LR && RR)) 51 const MemRegion *BaseLR = LR->getBaseRegion();
|
/freebsd-current/sys/arm/arm/ |
H A D | db_trace.c | 81 state->registers[LR]); 82 db_printsym(state->registers[LR], DB_STGY_PROC); 89 ~((1 << SP) | (1 << FP) | (1 << LR) | (1 << PC)); 146 state.registers[LR] = ctx->pcb_regs.sf_lr; 166 state.registers[LR] = (uint32_t)__builtin_return_address(0);
|
H A D | stack_machdep.c | 60 state.registers[LR] = (uint32_t)__builtin_return_address(0); 80 state.registers[LR] = td->td_pcb->pcb_regs.sf_lr;
|
/freebsd-current/sys/arm/include/ |
H A D | stack.h | 53 #define LR 14 macro
|
/freebsd-current/contrib/llvm-project/clang/lib/Sema/ |
H A D | SemaRISCVVectorLookup.cpp | 176 void CreateRVVIntrinsicDecl(LookupResult &LR, IdentifierInfo *II, 194 bool CreateIntrinsicIfFound(LookupResult &LR, IdentifierInfo *II, 403 void RISCVIntrinsicManagerImpl::CreateRVVIntrinsicDecl(LookupResult &LR, argument 426 SourceLocation Loc = LR.getNameLoc(); 459 LR.addDecl(RVVIntrinsicDecl); 462 bool RISCVIntrinsicManagerImpl::CreateIntrinsicIfFound(LookupResult &LR, argument 472 CreateRVVIntrinsicDecl(LR, II, PP, Index, 476 LR.resolveKind(); 483 CreateRVVIntrinsicDecl(LR, II, PP, Itr->second,
|
/freebsd-current/contrib/llvm-project/openmp/runtime/src/ |
H A D | z_AIX_asm.S | 85 std 0, 16(1) # Save LR to the linkage area 207 mtlr 0 # Restore LR from the linkage area 208 blr # Branch to LR 239 stw 0, 8(1) # Save LR to the linkage area 361 mtlr 0 # Restore LR from the linkage area 362 blr # Branch to LR
|
/freebsd-current/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
H A D | SILowerWWMCopies.cpp | 81 LiveRange &LR = 84 return LR.liveAt(Idx);
|