Home
last modified time | relevance | path

Searched refs:Spill (Results 1 – 25 of 26) sorted by relevance

12

/freebsd/contrib/llvm-project/llvm/lib/CodeGen/
H A DRegAllocBasic.cpp227 for (const LiveInterval *Spill : Intfs) { in spillInterferences() local
229 if (!VRM->hasPhys(Spill->reg())) in spillInterferences()
234 Matrix->unassign(*Spill); in spillInterferences()
237 LiveRangeEdit LRE(Spill, SplitVRegs, *MF, *LIS, VRM, this, &DeadRemats); in spillInterferences()
H A DInlineSpiller.cpp143 void addToMergeableSpills(MachineInstr &Spill, int StackSlot,
145 bool rmFromMergeableSpills(MachineInstr &Spill, int StackSlot);
1127 MachineBasicBlock::iterator Spill = std::next(MI); in insertSpill() local
1128 LIS.InsertMachineInstrRangeInMaps(Spill, MIS.end()); in insertSpill()
1129 for (const MachineInstr &MI : make_range(Spill, MIS.end())) in insertSpill()
1133 dumpMachineInstrRangeWithSlotIndex(Spill, MIS.end(), LIS, "spill")); in insertSpill()
1138 if (IsRealSpill && std::distance(Spill, MIS.end()) <= 1) in insertSpill()
1139 HSpiller.addToMergeableSpills(*Spill, StackSlot, Original); in insertSpill()
1315 void HoistSpillHelper::addToMergeableSpills(MachineInstr &Spill, int StackSlot, in addToMergeableSpills() argument
1326 SlotIndex Idx = LIS.getInstructionIndex(Spill); in addToMergeableSpills()
[all …]
H A DStackFrameLayoutAnalysisPass.cpp53 Spill, // a Spill slot enumerator
76 SlotTy = SlotType::Spill; in SlotData()
137 case SlotType::Spill: in getTypeString()
H A DMachineCopyPropagation.cpp1212 for (const MachineInstr *Spill : drop_begin(SC)) in EliminateSpillageCopies() local
1213 if (CopySourceInvalid.count(Spill)) in EliminateSpillageCopies()
1278 auto IsSpillReloadPair = [&, this](const MachineInstr &Spill, in EliminateSpillageCopies()
1280 if (!IsFoldableCopy(Spill) || !IsFoldableCopy(Reload)) in EliminateSpillageCopies()
1283 isCopyInstr(Spill, *TII, UseCopyInstr); in EliminateSpillageCopies()
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DSIMachineFunctionInfo.h625 [&Reg](const auto &Spill) { return Spill.first == Reg; });
632 [&Reg](const auto &Spill) { return Spill.first == Reg; });
662 [&Reg](const auto &Spill) { return Spill.first == Reg; });
950 void setHasSpilledSGPRs(bool Spill = true) {
951 HasSpilledSGPRs = Spill;
958 void setHasSpilledVGPRs(bool Spill = true) {
959 HasSpilledVGPRs = Spill;
H A DSIFrameLowering.cpp106 LLVM_DEBUG(auto Spill = MFI->getSGPRSpillToPhysicalVGPRLanes(FI).front(); in getVGPRSpillLaneOrTempRegister()
108 << printReg(Spill.VGPR, TRI) << ':' << Spill.Lane in getVGPRSpillLaneOrTempRegister()
270 ArrayRef<SIRegisterInfo::SpilledReg> Spill = in saveToVGPRLane() local
272 assert(Spill.size() == NumSubRegs); in saveToVGPRLane()
279 Spill[I].VGPR) in saveToVGPRLane()
281 .addImm(Spill[I].Lane) in saveToVGPRLane()
282 .addReg(Spill[I].VGPR, RegState::Undef); in saveToVGPRLane()
316 ArrayRef<SIRegisterInfo::SpilledReg> Spill = in restoreFromVGPRLane() local
318 assert(Spill.size() == NumSubRegs); in restoreFromVGPRLane()
325 .addReg(Spill[I].VGPR) in restoreFromVGPRLane()
[all …]
H A DSIMachineFunctionInfo.cpp455 auto &Spill = VGPRToAGPRSpills[FI]; in allocateVGPRSpillToAGPR() local
458 if (!Spill.Lanes.empty()) in allocateVGPRSpillToAGPR()
459 return Spill.FullyAllocated; in allocateVGPRSpillToAGPR()
463 Spill.Lanes.resize(NumLanes, AMDGPU::NoRegister); in allocateVGPRSpillToAGPR()
471 Spill.FullyAllocated = true; in allocateVGPRSpillToAGPR()
499 Spill.FullyAllocated = false; in allocateVGPRSpillToAGPR()
506 Spill.Lanes[I] = *NextSpillReg++; in allocateVGPRSpillToAGPR()
509 return Spill.FullyAllocated; in allocateVGPRSpillToAGPR()
H A DSIInstrFormats.td50 field bit Spill = 0;
189 let TSFlags{26} = Spill;
H A DSIRegisterInfo.cpp1786 SpilledReg Spill = VGPRSpills[i]; in spillSGPR() local
1796 SB.TII.get(AMDGPU::SI_SPILL_S32_TO_VGPR), Spill.VGPR) in spillSGPR()
1798 .addImm(Spill.Lane) in spillSGPR()
1799 .addReg(Spill.VGPR); in spillSGPR()
1903 SpilledReg Spill = VGPRSpills[i]; in restoreSGPR() local
1906 .addReg(Spill.VGPR) in restoreSGPR()
1907 .addImm(Spill.Lane); in restoreSGPR()
H A DSIDefines.h92 Spill = 1 << 26, enumerator
H A DSIInstrInfo.h741 return get(Opcode).TSFlags & SIInstrFlags::Spill; in isSpill()
745 return MI.getDesc().TSFlags & SIInstrFlags::Spill; in isSpill()
H A DSIInstructions.td901 let UseNamedOperandTable = 1, Spill = 1, SALU = 1, Uses = [EXEC] in {
937 let Spill = 1, VALU = 1, isConvergent = 1 in {
957 } // End Spill = 1, VALU = 1, isConvergent = 1
963 let UseNamedOperandTable = 1, Spill = 1, VALU = 1,
989 } // End UseNamedOperandTable = 1, Spill = 1, VALU = 1, SchedRW = [WriteVMEM]
H A DSIInstrInfo.cpp5554 !(TID.TSFlags & SIInstrFlags::Spill)) || in adjustAllocatableRegClass()
/freebsd/contrib/llvm-project/compiler-rt/lib/xray/
H A Dxray_trampoline_powerpc64_asm.S8 # Spill r3-r10, f1-f13, and vsr34-vsr45, which are parameter registers.
149 # Spill r3-r4, f1-f8, and vsr34-vsr41, which are return registers.
/freebsd/contrib/llvm-project/lld/ELF/
H A DInputSection.h64 enum Kind { Regular, Synthetic, Spill, EHFrame, Merge, Output }; enumerator
408 s->kind() == SectionBase::Spill; in classof()
467 return sec->kind() == InputSectionBase::Spill; in classof()
H A DInputSection.cpp199 case Spill: in getOffset()
351 source.name, SectionBase::Spill),
H A DOptions.td202 …HelpText<"Spill input sections to later matching output sections to avoid memory region overflow">;
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/LiveDebugValues/
H A DInstrRefBasedImpl.h808 unsigned getLocID(SpillLocationNo Spill, unsigned SpillSubReg) {
811 return getLocID(Spill, {Size, Offs});
817 unsigned getLocID(SpillLocationNo Spill, StackSlotPos Idx) {
818 unsigned SlotNo = Spill.id() - 1;
828 unsigned getSpillIDWithIdx(SpillLocationNo Spill, unsigned Idx) {
829 unsigned SlotNo = Spill.id() - 1;
H A DInstrRefBasedImpl.cpp1264 const SpillLoc &Spill = SpillLocs[SpillID.id()]; in emitLoc() local
1265 unsigned Base = Spill.SpillBase; in emitLoc()
1295 TRI.getOffsetOpcodes(Spill.SpillOffset, OffsetOps); in emitLoc()
/freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DFunctionLoweringInfo.h105 Spill, enumerator
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/
H A DStatepointLowering.cpp184 if (Record.type != RecordType::Spill) in findPreviousSpillSlot()
926 Record.type = RecordType::Spill; in LowerAsSTATEPOINT()
1255 if (Record.type == RecordType::Spill) { in visitGCRelocate()
/freebsd/contrib/llvm-project/llvm/include/llvm/Target/
H A DTarget.td75 int SpillSize = SS; // Spill slot size in bits.
76 int SpillAlignment = SA; // Spill slot alignment in bits.
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64SMEInstrInfo.td152 // Spill + fill
/freebsd/contrib/llvm-project/clang/include/clang/Basic/
H A Darm_sme.td705 // Spill and fill of ZT0
/freebsd/contrib/llvm-project/llvm/include/llvm/IR/
H A DIntrinsicsAArch64.td2839 // Spill + fill

12