Lines Matching refs:MFI

97   MachineFrameInfo &MFI = MF->getFrameInfo();
99 int64_t Offset = MFI.getObjectOffset(FI);
103 MFI.getObjectAlignment(FI));
145 MachineFrameInfo &MFI = MF->getFrameInfo();
146 int64_t Offset = MFI.getObjectOffset(FI);
150 MFI.getObjectAlignment(FI));
192 const SIMachineFunctionInfo *MFI = MF.getInfo<SIMachineFunctionInfo>();
210 MFI->getPreloadedReg(AMDGPUFunctionArgInfo::FLAT_SCRATCH_INIT);
219 unsigned ScratchWaveOffsetReg = MFI->getScratchWaveOffsetReg();
273 SIMachineFunctionInfo *MFI,
278 unsigned ScratchRsrcReg = MFI->getScratchRSrcReg();
298 unsigned NumPreloaded = (MFI->getNumPreloadedSGPRs() + 3) / 4;
309 MFI->setScratchRSrcReg(Reg);
321 SIMachineFunctionInfo *MFI, MachineFunction &MF) const {
323 unsigned ScratchWaveOffsetReg = MFI->getScratchWaveOffsetReg();
325 assert(MFI->isEntryFunction());
336 unsigned NumPreloaded = MFI->getNumPreloadedSGPRs();
375 if (MFI->getScratchWaveOffsetReg() == MFI->getStackPtrOffsetReg()) {
377 MFI->setStackPtrOffsetReg(Reg);
380 MFI->setScratchWaveOffsetReg(Reg);
381 MFI->setFrameOffsetReg(Reg);
396 SIMachineFunctionInfo *MFI = MF.getInfo<SIMachineFunctionInfo>();
419 if (MFI->hasFlatScratchInit())
423 = getReservedPrivateSegmentBufferReg(ST, TII, TRI, MFI, MF);
428 getReservedPrivateSegmentWaveByteOffsetReg(ST, TII, TRI, MFI, MF);
431 Register PreloadedScratchWaveOffsetReg = MFI->getPreloadedReg(
436 PreloadedPrivateBufferReg = MFI->getPreloadedReg(
493 unsigned SPReg = MFI->getStackPtrOffsetReg();
511 emitEntryFunctionScratchSetup(ST, MF, MBB, MFI, I,
523 .addReg(MFI->getScratchWaveOffsetReg());
526 .addReg(MFI->getScratchWaveOffsetReg())
534 MachineFunction &MF, MachineBasicBlock &MBB, SIMachineFunctionInfo *MFI,
552 if (MFI->getGITPtrHigh() != 0xffffffff) {
554 .addImm(MFI->getGITPtrHigh())
611 if (MFI->hasImplicitBufferPtr()) {
618 .addReg(MFI->getImplicitBufferPtrUserSGPR())
630 .addReg(MFI->getImplicitBufferPtrUserSGPR())
637 MF.getRegInfo().addLiveIn(MFI->getImplicitBufferPtrUserSGPR());
638 MBB.addLiveIn(MFI->getImplicitBufferPtrUserSGPR());
684 const MachineFrameInfo &MFI = MF.getFrameInfo();
698 uint32_t NumBytes = MFI.getStackSize();
754 assert(!MFI.isDeadObjectIndex(FI) &&
755 MFI.getStackID(FI) == TargetStackID::SGPRSpill);
771 const unsigned Alignment = MFI.getMaxAlignment();
835 const MachineFrameInfo &MFI = MF.getFrameInfo();
836 uint32_t NumBytes = MFI.getStackSize();
838 NumBytes + MFI.getMaxAlignment() : NumBytes;
911 static bool allStackObjectsAreDead(const MachineFrameInfo &MFI) {
912 for (int I = MFI.getObjectIndexBegin(), E = MFI.getObjectIndexEnd();
914 if (!MFI.isDeadObjectIndex(I))
922 static bool allSGPRSpillsAreDead(const MachineFrameInfo &MFI,
924 for (int I = MFI.getObjectIndexBegin(), E = MFI.getObjectIndexEnd();
926 if (!MFI.isDeadObjectIndex(I) &&
927 MFI.getStackID(I) == TargetStackID::SGPRSpill &&
948 MachineFrameInfo &MFI = MF.getFrameInfo();
954 FuncInfo->removeDeadFrameIndices(MFI);
955 assert(allSGPRSpillsAreDead(MFI, None) &&
961 if (!allStackObjectsAreDead(MFI)) {
965 int ScavengeFI = MFI.CreateFixedObject(
969 int ScavengeFI = MFI.CreateStackObject(
983 SIMachineFunctionInfo *MFI = MF.getInfo<SIMachineFunctionInfo>();
984 if (MFI->isEntryFunction())
1008 for (auto SSpill : MFI->getSGPRSpillVGPRs())
1015 if (MFI->haveFreeLanesForSGPRSpill(MF, 1)) {
1021 if (!MFI->allocateSGPRSpillToVGPR(MF, NewFI))
1024 MFI->FramePointerSaveIndex = NewFI;
1027 auto Spill = MFI->getSGPRToVGPRSpills(NewFI).front();
1033 MFI->SGPRForFPSaveRestoreCopy = findUnusedSGPRNonCalleeSaved(MF.getRegInfo());
1035 if (!MFI->SGPRForFPSaveRestoreCopy) {
1040 if (!MFI->allocateSGPRSpillToVGPR(MF, NewFI))
1042 MFI->FramePointerSaveIndex = NewFI;
1045 auto Spill = MFI->getSGPRToVGPRSpills(NewFI).front();
1050 printReg(MFI->SGPRForFPSaveRestoreCopy, TRI) << '\n');
1058 const SIMachineFunctionInfo *MFI = MF.getInfo<SIMachineFunctionInfo>();
1059 if (MFI->isEntryFunction())
1066 SavedRegs.reset(MFI->getStackPtrOffsetReg());
1111 const SIMachineFunctionInfo *MFI = MF.getInfo<SIMachineFunctionInfo>();
1112 unsigned SPReg = MFI->getStackPtrOffsetReg();
1126 const MachineFrameInfo &MFI = MF.getFrameInfo();
1127 if (MFI.hasCalls()) {
1133 if (MFI.getStackSize() != 0)
1142 return MFI.hasVarSizedObjects() || MFI.isFrameAddressTaken() ||
1143 MFI.hasStackMap() || MFI.hasPatchPoint() ||